:root{--brand-purple:#353182;--brand-orange:#ff7401;--brand-pink:#ff92ff;--brand-sky:#afc7ea;--ink:#172033;--muted:#667085;--line:#d9e0ea;--surface:#fff;--soft:#f4f6f8;--success:#16a34a;--danger:#dc2626;--warning:#f59e0b;--info:#2563eb;--shadow:0 16px 34px #252d521c}*{box-sizing:border-box;scrollbar-color:var(--brand-purple) #eef2f7;scrollbar-width:thin}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:#eef2f7}::-webkit-scrollbar-thumb{background:var(--brand-purple);border:2px solid #eef2f7;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#28246d}body{background:var(--soft);color:var(--ink);letter-spacing:0;margin:0;font-family:Montserrat,Segoe UI,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.screen-loader{min-height:220px;color:var(--muted);place-items:center;font-weight:700;display:grid}.login-page{background:linear-gradient(135deg,#353182eb,#191b3af0),linear-gradient(90deg,#ff740126,#ff92ff21);place-items:center;min-height:100vh;padding:32px;display:grid}.login-panel{background:var(--surface);width:min(980px,100%);min-height:560px;box-shadow:var(--shadow);border:1px solid #ffffff2e;border-radius:8px;grid-template-columns:1.08fr .92fr;display:grid;overflow:hidden}.login-brand{background:linear-gradient(145deg,#ff740114,#ff92ff1f),#fff;flex-direction:column;justify-content:center;min-width:0;padding:46px;display:flex}.login-brand img{object-fit:contain;width:min(390px,100%);height:auto;max-height:210px;margin-bottom:36px}.login-brand h1{max-width:540px;color:var(--brand-purple);margin:0;font-size:34px;line-height:1.12}.login-brand p{max-width:440px;color:var(--muted);margin:18px 0 0;line-height:1.6}.login-form{border-left:1px solid var(--line);background:#fbfcff;flex-direction:column;justify-content:center;gap:18px;padding:54px 44px;display:flex}.login-hint{color:var(--muted);border:1px solid #e8edf5;border-radius:8px;padding:12px 14px;font-size:13px}.app-shell{grid-template-columns:296px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{height:100vh;color:var(--ink);border-right:1px solid var(--line);background:#fff;position:sticky;top:0;overflow-y:auto;box-shadow:10px 0 28px #252d520d}.brand-block{border-bottom:1px solid var(--line);background:#fff;gap:12px;padding:20px 18px 16px;display:grid}.brand-identity{justify-items:center;gap:10px;display:grid}.brand-mark{background-position:top;background-repeat:no-repeat;background-size:250px;width:112px;height:112px;display:block}.brand-wordmark{color:var(--brand-purple);text-transform:uppercase;justify-items:center;gap:3px;line-height:1;display:grid}.brand-wordmark span{letter-spacing:0;font-size:18px;font-weight:700}.brand-wordmark strong{color:var(--brand-purple);font-size:42px;font-weight:500}.brand-block>div:not(.brand-identity){background:#fbfcff;border:1px solid #e8edf5;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;display:flex}.brand-block>div:not(.brand-identity) strong{color:var(--brand-purple);font-size:12px}.brand-block>div:not(.brand-identity) span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.side-nav{padding:16px 12px 26px}.side-section{margin-bottom:18px}.side-section p{color:#7a8192;text-transform:uppercase;margin:12px 12px 7px;font-size:11px;font-weight:800}.side-link{color:#344054;border:1px solid #0000;border-radius:8px;align-items:center;gap:11px;min-height:39px;padding:9px 12px;font-size:14px;font-weight:700;display:flex}.side-link:hover,.side-link.active{color:var(--brand-purple);background:#f2f1ff;border-color:#dddafb}.side-link.active svg{color:var(--brand-orange)}.main-shell{min-width:0}.topbar{z-index:6;border-bottom:1px solid var(--line);background:#fffffff5;justify-content:space-between;align-items:center;gap:18px;min-height:72px;padding:12px 28px;display:flex;position:sticky;top:0}.topbar-title p,.page-heading p,.panel-header p{color:var(--muted);text-transform:uppercase;margin:0 0 4px;font-size:12px;font-weight:800}.topbar-title strong{color:var(--brand-purple);font-size:18px}.topbar-actions{align-items:center;gap:10px;min-width:0;display:flex}.cash-pill,.date-pill,.user-chip{border:1px solid var(--line);min-height:38px;color:var(--muted);white-space:nowrap;background:#fff;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:700;display:flex}.cash-pill{justify-content:center;min-width:128px}.cash-pill.open{color:var(--success);background:#ecfdf3;border-color:#bbf7d0}.cash-pill.closed{color:#92400e;background:#fff7ed;border-color:#fed7aa}.user-chip{color:var(--ink)}.user-chip span{color:var(--muted);font-size:11px;display:block}.avatar{color:#fff;background:var(--brand-purple);border-radius:50%;place-items:center;width:30px;height:30px;font-weight:900;display:grid}.icon-button{border:1px solid var(--line);width:38px;height:38px;color:var(--brand-purple);background:#fff;border-radius:8px;place-items:center;display:inline-grid}.icon-button.danger{color:var(--danger);background:#fff5f5;border-color:#fecaca}.icon-button:disabled{opacity:.55;cursor:not-allowed}.mobile-menu{display:none}.page-container{width:min(1500px,100%);margin:0 auto;padding:28px}.page-stack{flex-direction:column;gap:22px;display:flex}.page-heading{justify-content:space-between;align-items:flex-start;gap:22px;display:flex}.page-heading h1{color:var(--brand-purple);margin:0;font-size:30px;line-height:1.16}.heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.action-grid{grid-template-columns:repeat(3,minmax(168px,1fr));align-items:stretch;width:min(690px,100%);display:grid}.button,.quick-button{white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 14px;font-weight:800;display:inline-flex}.button-primary{background:var(--brand-orange);color:#fff}.button-secondary,.quick-button{color:var(--brand-purple);border-color:var(--line);background:#fff}.button-danger{background:var(--danger);color:#fff}.button-full{width:100%}.quick-button{min-height:38px;font-size:13px}.action-grid .quick-button{width:100%}.stats-grid,.module-stats{grid-template-columns:repeat(6,minmax(184px,1fr));gap:14px;display:grid}.module-stats{grid-template-columns:repeat(4,minmax(190px,1fr))}.stat-card{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;gap:12px;min-width:0;min-height:96px;padding:16px;display:flex;box-shadow:0 8px 20px #252d520f}.stat-card>div:last-child{min-width:0}.stat-card p{color:var(--muted);margin:0 0 7px;font-size:11.5px;font-weight:800}.stat-card strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--ink);font-variant-numeric:tabular-nums;font-size:clamp(16px,1.02vw,20px);line-height:1.1;display:block;overflow:hidden}.stat-money strong{font-size:clamp(14px,.92vw,18px)}.stat-icon{border-radius:8px;flex:0 0 42px;place-items:center;width:42px;height:42px;display:grid}.stat-brand .stat-icon{color:var(--brand-purple);background:#efefff}.stat-success .stat-icon{color:var(--success);background:#ecfdf3}.stat-warning .stat-icon{color:#b45309;background:#fff7ed}.stat-info .stat-icon{color:var(--info);background:#eff6ff}.stat-pink .stat-icon{color:#be185d;background:#fdf2f8}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:0;padding:20px;box-shadow:0 8px 20px #252d520f}.panel-wide{grid-column:1/-1}.panel-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.panel-header h2{color:var(--ink);margin:0;font-size:19px}.cash-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.cash-summary div,.report-list{background:#fbfcff;border:1px solid #e8edf5;border-radius:8px;padding:14px}.cash-summary span,.report-list span{color:var(--muted);font-size:12px;font-weight:800;display:block}.cash-summary strong,.report-list strong{color:var(--brand-purple);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:15px;display:block;overflow:hidden}.bar-chart{gap:14px;display:grid}.bar-row{background:#fbfcff;border:1px solid #e8edf5;border-radius:8px;gap:8px;padding:12px;display:grid}.bar-row strong,.bar-row span{display:block}.bar-row strong{color:var(--ink)}.bar-row span{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.35}.bar-track span{border-radius:inherit;background:linear-gradient(90deg, var(--brand-orange), var(--brand-pink));height:100%;display:block}.compact-list{flex-direction:column;gap:10px;display:flex}.compact-item{background:#fbfcff;border:1px solid #e8edf5;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:12px;display:flex}.compact-item strong,.compact-item span{display:block}.compact-item span{color:var(--muted);margin-top:4px;font-size:13px}.pipeline-bars{flex-direction:column;gap:14px;display:flex}.pipeline-row{grid-template-columns:minmax(160px,1fr) minmax(130px,220px) auto;align-items:center;gap:14px;display:grid}.pipeline-row span{color:var(--muted);font-size:13px;display:block}.bar-track{background:#e8edf5;border-radius:999px;height:10px;overflow:hidden}.bar-fill{background:var(--brand-orange);height:100%}.module-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.module-toolbar select,.search-box{border:1px solid var(--line);background:#fff;border-radius:8px;min-height:42px}.search-box{flex:1;align-items:center;gap:8px;padding:0 12px;display:flex}.search-box input{border:0;outline:0;width:100%}.module-toolbar select{padding:0 12px}.table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:860px}.data-table th,.data-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #e8edf5;padding:13px 12px;font-size:13px}.data-table td small{color:var(--muted);margin-top:4px;font-size:11px;font-weight:700;display:block}.data-table th{color:var(--muted);text-transform:uppercase;background:#fbfcff;font-size:12px;font-weight:900}.code-cell{color:var(--brand-purple);font-weight:900}.table-actions{text-align:right;white-space:nowrap;width:146px}.table-actions .icon-button{vertical-align:middle;margin-left:6px;display:inline-grid}.compact-table-wrap .data-table{min-width:720px}.audit-toolbar{grid-template-columns:minmax(220px,1fr) minmax(180px,260px)}.positive-money{color:#166534;font-weight:900}.negative-money{color:#991b1b;font-weight:900}.empty-cell{color:var(--muted);text-align:center}.status{border-radius:999px;align-items:center;min-height:26px;padding:0 9px;font-size:12px;font-weight:900;display:inline-flex}.status-success{color:#166534;background:#dcfce7}.status-info{color:#1d4ed8;background:#dbeafe}.status-brand{color:var(--brand-purple);background:#efefff}.status-pink{color:#be185d;background:#fce7f3}.status-warning{color:#92400e;background:#fef3c7}.status-danger{color:#991b1b;background:#fee2e2}.status-muted{color:#475467;background:#eef2f7}.field{flex-direction:column;gap:7px;display:flex}.field>small{color:var(--muted);font-size:12px;line-height:1.35}.field span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.field input,.field select,.field textarea{border:1px solid var(--line);width:100%;min-height:42px;color:var(--ink);outline-color:var(--brand-sky);background:#fff;border-radius:8px;padding:10px 12px}.field textarea{resize:vertical}.field-inline{grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:8px;display:grid}.field-inline .icon-button{width:42px;height:42px;margin:0}.file-upload-field{gap:6px;display:grid}.file-upload-field input{min-height:42px;padding:8px}.file-upload-field small{color:var(--muted);overflow-wrap:anywhere;font-size:12px;line-height:1.35}.field-wide{grid-column:1/-1}.entity-form{flex-direction:column;gap:16px;display:flex}.config-section{background:#fbfcff;border:1px solid #e8edf5;border-radius:8px;gap:12px;padding:14px;display:grid}.config-section h2{color:var(--brand-purple);text-transform:capitalize;margin:0;font-size:15px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.sales-grid{grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr)}.role-heading{align-items:center}.role-stats{grid-template-columns:repeat(4,minmax(170px,1fr))}.role-list-panel{min-height:320px}.cash-open-form{background:#fbfcff;border:1px solid #e8edf5;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px;padding:14px;display:grid}.cash-open-form .button{align-self:end}.cash-open-guidance{color:#92400e;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;align-items:flex-start;gap:11px;padding:12px;display:flex}.cash-open-guidance strong,.cash-open-guidance span{display:block}.cash-open-guidance strong{color:var(--brand-purple);font-size:13px}.cash-open-guidance span{margin-top:4px;font-size:12px;font-weight:700;line-height:1.45}.cash-opening-modal-body{gap:14px;padding:20px;display:grid}.cash-opening-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.cash-opening-summary span{color:var(--muted);background:#fbfcff;border:1px solid #e8edf5;border-radius:8px;padding:12px;font-size:12px;font-weight:800;display:block}.cash-opening-summary strong{color:var(--brand-purple);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:15px;display:block;overflow:hidden}.cash-state-inline{background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;grid-template-columns:1fr auto;gap:12px;margin-bottom:12px;padding:12px;display:grid}.cash-state-inline span{color:#92400e;text-transform:uppercase;font-size:12px;font-weight:900}.cash-state-inline strong{color:var(--brand-purple)}.line-editor{background:#fbfcff;border:1px solid #e8edf5;border-radius:8px;grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:10px;padding:12px;display:grid}.line-editor .field:first-child{grid-column:1/span 2}.line-editor .field:nth-child(2){grid-column:3/span 3}.line-editor .field:nth-child(3){grid-column:1/span 2}.line-editor .field:nth-child(4){grid-column:3/span 2}.line-editor .field:nth-child(5){grid-column:5/span 1}.line-editor .add-line-button{grid-column:6/span 1}.compact-field input{text-align:right}.add-line-button{width:42px;height:42px}.sale-lines{flex-direction:column;gap:9px;display:flex}.sale-line{background:#fff;border:1px solid #e8edf5;border-radius:8px;grid-template-columns:minmax(0,1fr) auto 38px;align-items:center;gap:12px;padding:10px 12px;display:grid}.sale-line strong,.sale-line span{display:block}.sale-line span{color:var(--muted);margin-top:4px;font-size:12px}.empty-inline{border:1px dashed var(--line);color:var(--muted);text-align:center;border-radius:8px;padding:12px;font-weight:800}.sale-total-box{background:#fbfcff;border:1px solid #e8edf5;border-radius:8px;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;padding:12px;display:grid}.sale-total-box div{flex-direction:column;justify-content:center;gap:5px;display:flex}.sale-total-box span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.sale-total-box strong{color:var(--brand-purple);font-size:18px}.sale-item{grid-template-columns:minmax(0,1fr) auto auto auto auto;display:grid}.client-search-box{background:#fbfcff;border:1px solid #e8edf5;border-radius:8px;padding:12px;position:relative}.client-results{z-index:10;border:1px solid var(--line);max-height:260px;box-shadow:var(--shadow);background:#fff;border-radius:8px;gap:7px;padding:8px;display:grid;position:absolute;top:calc(100% - 8px);left:12px;right:12px;overflow:auto}.client-results button{text-align:left;background:#fbfcff;border:1px solid #e8edf5;border-radius:8px;gap:3px;padding:10px;display:grid}.client-results strong,.client-results span{display:block}.client-results span{color:var(--muted);font-size:12px}.check-field{min-height:42px;color:var(--muted);text-transform:uppercase;background:#fff;border:1px solid #e8edf5;border-radius:8px;align-items:center;gap:9px;padding:10px 12px;font-size:12px;font-weight:900;display:flex}.check-field input{width:16px;height:16px;accent-color:var(--brand-purple)}.inline-action{color:var(--brand-purple);background:0 0;border:0;margin-left:10px;font-weight:900;text-decoration:underline}.sale-confirm-box{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:12px;display:grid}.sale-confirm-box strong,.sale-confirm-box span{display:block}.sale-confirm-box span{color:var(--muted);margin-top:4px;font-size:12px}.cash-reconcile{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.cash-reconcile div,.method-summary div,.cash-movements-mini{background:#fbfcff;border:1px solid #e8edf5;border-radius:8px}.cash-reconcile div,.method-summary div{gap:5px;padding:11px;display:grid}.cash-reconcile span,.method-summary span,.cash-movements-mini h3{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.cash-reconcile strong,.method-summary strong{color:var(--brand-purple);font-size:17px}.method-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px;display:grid}.cash-movements-mini{gap:8px;margin-top:16px;padding:12px;display:grid}.cash-movements-mini h3{margin:0}.mini-row{color:var(--muted);grid-template-columns:minmax(0,1fr) auto;gap:10px;font-size:13px;display:grid}.mini-row strong{color:var(--ink)}.clinical-grid{grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr)}.clinical-grid.single-column{grid-template-columns:1fr}.vitals-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.patient-strip{color:#1d4ed8;background:#eff6ff;border:1px solid #dbeafe;border-radius:8px;align-items:center;gap:12px;padding:12px;display:flex}.clinical-context-box{background:#fbfcff;border:1px solid #e8edf5;border-radius:8px;gap:12px;padding:12px;display:grid}.clinical-context-grid{grid-template-columns:repeat(2,minmax(0,1fr)) auto;align-items:stretch;gap:10px;display:grid}.clinical-context-grid div{background:#fff;border:1px solid #e8edf5;border-radius:8px;gap:5px;padding:11px;display:grid}.clinical-context-grid span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.clinical-context-grid strong,.clinical-context-grid small{display:block}.clinical-context-grid small{color:var(--muted);line-height:1.45}.clinical-context-grid .button{align-self:center;min-height:46px}.patient-strip span,.clinical-item small,.portal-record small{display:block}.patient-strip strong{color:#1e3a8a;display:block}.patient-strip small,.clinical-item small{color:var(--muted);font-size:12px}.clinical-list{max-height:760px;padding-right:4px;overflow:auto}.clinical-item{grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;display:grid}.template-row{flex-wrap:wrap;gap:9px;display:flex}.template-button{border:1px solid var(--line);min-height:36px;color:var(--brand-purple);background:#fff;border-radius:8px;padding:0 11px;font-size:12px;font-weight:900}.template-button.active{border-color:var(--brand-orange);color:#9a3412;background:#fff7ed}.prospect-layout,.service-layout{grid-template-columns:minmax(0,1.04fr) minmax(360px,.96fr)}.segment-filter{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.segment-filter button{border:1px solid var(--line);min-height:34px;color:var(--brand-purple);background:#fff;border-radius:8px;padding:0 11px;font-size:12px;font-weight:900}.segment-filter button.active{background:#f2f1ff;border-color:#dddafb}.prospect-list{margin-top:14px}.prospect-item{grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;display:grid}.prospect-item small,.service-card span,.service-price small{color:var(--muted);font-size:12px;line-height:1.45;display:block}.service-card-grid{gap:10px;display:grid}.service-card{background:#fbfcff;border:1px solid #e8edf5;border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:13px;display:grid}.service-card strong{color:var(--ink);display:block}.service-price{text-align:right}.service-price b{color:var(--brand-purple);font-size:18px;display:block}.role-layout{grid-template-columns:minmax(280px,.42fr) minmax(0,1fr)}.role-side{align-self:start}.role-list{gap:10px;display:grid}.role-card{width:100%;color:var(--ink);text-align:left;background:#fff;border:1px solid #e8edf5;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;display:grid}.role-card.active{background:#f5f3ff;border-color:#dddafb}.role-card strong,.role-card small{display:block}.role-card small,.panel-note{color:var(--muted);font-size:13px;line-height:1.45}.role-card b{width:32px;height:32px;color:var(--brand-purple);background:#eef2ff;border-radius:8px;place-items:center;display:grid}.panel-note{margin:-6px 0 14px}.permission-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:18px;display:grid}.permission-cell{min-height:42px;color:var(--muted);background:#fbfcff;border:1px solid #e8edf5;border-radius:8px;align-items:center;gap:8px;padding:10px;font-size:13px;font-weight:800;display:flex}.permission-cell.allowed{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.matrix-table{border:1px solid #e8edf5;border-radius:8px;overflow-x:auto}.matrix-row{grid-template-columns:190px repeat(8,96px);min-width:958px;display:grid}.matrix-row>*{color:var(--muted);border-bottom:1px solid #e8edf5;padding:10px;font-size:12px}.matrix-row strong{color:var(--ink)}.matrix-head>*{color:var(--brand-purple);background:#fbfcff;font-weight:900}.matrix-row .ok{color:#166534;font-weight:900}.matrix-row .no{color:#991b1b}.portal-page{background:var(--soft);min-height:100vh}.portal-topbar{z-index:5;border-bottom:1px solid var(--line);background:#fffffff5;justify-content:space-between;align-items:center;gap:16px;min-height:74px;padding:12px 28px;display:flex;position:sticky;top:0}.portal-topbar img{width:290px;max-width:62vw;height:auto;display:block}.portal-content{width:min(1180px,100%);margin:0 auto;padding:28px}.portal-record{background:#fbfcff;border:1px solid #e8edf5;border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px;display:grid}.portal-record strong,.portal-record span,.portal-record small{display:block}.portal-record span,.portal-record small{color:var(--muted);margin-top:5px;line-height:1.45}.portal-results-grid{grid-template-columns:minmax(0,1fr)}.portal-result-record{min-height:94px}.portal-status{text-align:center;white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-width:96px;min-height:30px;padding:0 12px;font-size:12px;font-weight:900;display:inline-flex}.portal-record .portal-status{display:inline-flex}.portal-status.available{color:#047857;background:#d1fae5;border-color:#a7f3d0}.portal-status.pending{color:#92400e;background:#fef3c7;border-color:#fde68a}.portal-status.muted{color:#475467;background:#eef2f7;border-color:#d8e0eb}.lab-matrix{gap:14px;display:grid}.lab-section{background:#fff;border:1px solid #e8edf5;border-radius:8px;overflow:hidden}.lab-section-header{color:var(--brand-purple);background:#f5f7fb;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.lab-section-header strong{font-size:13px;font-weight:900}.lab-table{overflow-x:auto}.lab-row{border-top:1px solid #eef2f7;grid-template-columns:minmax(168px,1.25fr) minmax(110px,.85fr) minmax(158px,1fr) minmax(126px,.9fr) 42px;align-items:center;gap:8px;min-width:720px;padding:8px 10px;display:grid}.lab-row input{border:1px solid var(--line);width:100%;min-height:36px;color:var(--ink);border-radius:8px;padding:8px 7px;font-size:12px}.lab-head{color:var(--muted);text-transform:uppercase;background:#fbfcff;font-size:11px;font-weight:900}.student-portal-page{background:#f4f6f8;min-height:100vh}.student-topbar{border-bottom:1px solid var(--line);background:#fffffff5;justify-content:center;align-items:center;gap:16px;min-height:108px;padding:12px 24px;display:flex}.student-topbar img{object-fit:contain;width:156px;max-width:52vw;height:auto;max-height:92px}.student-portal-shell{grid-template-columns:minmax(320px,430px) minmax(0,610px);justify-content:center;align-items:start;gap:22px;width:min(1120px,100%);margin:0 auto;padding:34px 24px 18px;display:grid}.student-query-panel,.student-result-panel{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:0;padding:22px;box-shadow:0 8px 20px #252d520f}.student-result-panel{background:#fbfcff}.student-query-heading{margin-bottom:22px}.student-query-heading p{color:var(--muted);text-transform:uppercase;margin:0 0 6px;font-size:12px;font-weight:900}.student-query-heading h1{color:var(--brand-purple);margin:0;font-size:30px;line-height:1.08}.student-query-heading span{color:var(--muted);margin-top:10px;font-size:14px;font-weight:700;line-height:1.5;display:block}.student-empty-state{min-height:360px;color:var(--brand-purple);text-align:center;align-content:center;place-items:center;gap:12px;display:grid}.student-empty-state span{color:var(--muted);font-weight:700}.student-result-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:14px;display:grid}.student-result-header p{color:var(--muted);text-transform:uppercase;margin:0 0 5px;font-size:12px;font-weight:900}.student-result-header h2{color:var(--brand-purple);margin:0;font-size:24px}.student-result-header span{color:var(--muted);margin-top:8px;font-weight:700;display:block}.student-meta-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.student-meta-grid div{background:#fff;border:1px solid #e8edf5;border-radius:8px;padding:12px}.student-meta-grid span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900;display:block}.student-meta-grid strong{color:var(--brand-purple);margin-top:5px;display:block}.student-report{box-shadow:none}.student-section{gap:8px;margin-bottom:16px;display:grid}.student-section h3{color:var(--brand-purple);margin:0;font-size:14px}.student-table{background:#fff;border:1px solid #e8edf5;border-radius:8px;overflow-x:auto}.student-table-row{min-width:560px;color:var(--muted);border-bottom:1px solid #eef2f7;grid-template-columns:minmax(130px,1fr) minmax(110px,.8fr) minmax(140px,1fr) minmax(110px,.8fr);gap:10px;padding:10px 12px;font-size:13px;display:grid}.student-table-row:last-child{border-bottom:0}.student-table-head{color:var(--brand-purple);text-transform:uppercase;background:#fbfcff;font-size:11px}.student-table-row b{color:var(--ink)}.student-summary{color:#1d4ed8;background:#eff6ff;border:1px solid #dbeafe;border-radius:8px;gap:5px;margin-bottom:14px;padding:12px;display:grid}.student-summary span{color:#475467;font-size:13px}.student-footer{width:min(1120px,100%);color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin:0 auto;padding:6px 24px 28px;font-size:12px;font-weight:700;line-height:1.5;display:flex}.student-footer a{color:var(--brand-purple);font-weight:900}.modal-backdrop{z-index:20;background:#14162794;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.modal-panel{width:min(860px,100%);max-height:min(820px,92vh);box-shadow:var(--shadow);background:#fff;border-radius:8px;overflow:auto}.compact-modal{width:min(520px,100%)}.lab-preview-modal{width:min(980px,100%)}.modal-header,.modal-footer{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.modal-footer{border-top:1px solid var(--line);border-bottom:0;justify-content:flex-end}.modal-header p{color:var(--muted);text-transform:uppercase;margin:0 0 3px;font-size:12px;font-weight:900}.modal-header h2{color:var(--brand-purple);margin:0;font-size:21px}.modal-panel .entity-form{padding:20px}.delete-code-box{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;gap:6px;margin:20px 20px 14px;padding:14px;display:grid}.delete-code-box span{color:#92400e;text-transform:uppercase;font-size:11px;font-weight:900}.delete-code-box strong{color:var(--ink);letter-spacing:.08em;font-variant-numeric:tabular-nums;font-size:30px}.delete-code-box small{color:var(--muted);line-height:1.45}.compact-modal>.field{margin:0 20px 20px}.lab-report-preview{gap:14px;padding:20px;display:grid}.preview-letterhead{border-bottom:2px solid var(--brand-purple);justify-content:space-between;align-items:center;gap:14px;padding-bottom:12px;display:flex}.preview-letterhead strong,.preview-letterhead span{display:block}.preview-letterhead strong{color:var(--brand-purple);font-size:22px}.preview-letterhead span{color:var(--muted);margin-top:4px;font-size:13px}.preview-meta-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.preview-meta-grid div,.preview-section{background:#fbfcff;border:1px solid #e8edf5;border-radius:8px;padding:12px}.preview-meta-grid span,.preview-section span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900;display:block}.preview-meta-grid strong,.preview-section strong{color:var(--ink);overflow-wrap:anywhere;margin-top:5px;display:block}.preview-section p{color:var(--muted);margin:8px 0 0;line-height:1.55}.preview-lab-table{gap:14px;display:grid}.preview-lab-table h3{color:var(--brand-purple);margin:0 0 8px;font-size:14px}.preview-lab-table div{overflow-x:auto}.preview-lab-table table{border-collapse:collapse;border:1px solid #e8edf5;width:100%;min-width:640px}.preview-lab-table th,.preview-lab-table td{text-align:left;border:1px solid #e8edf5;padding:9px 10px;font-size:12px}.preview-lab-table th{color:var(--brand-purple);background:#f5f7fb;font-weight:900}.alert{border-radius:8px;padding:12px 14px;font-size:13px;font-weight:800}.alert-danger{color:#991b1b;background:#fee2e2}.alert-success{color:#166534;background:#dcfce7}.alert-warning{color:#92400e;background:#fef3c7}.alert-info{color:#1e3a8a;background:#dbeafe}.kanban{grid-template-columns:repeat(6,minmax(210px,1fr));gap:14px;padding-bottom:4px;display:grid;overflow-x:auto}.kanban-column{border:1px solid var(--line);background:#fff;border-radius:8px;min-height:260px;padding:12px}.kanban-column header{color:var(--brand-purple);justify-content:space-between;margin-bottom:12px;font-weight:900;display:flex}.kanban-column header span{background:#efefff;border-radius:999px;place-items:center;width:25px;height:25px;display:grid}.kanban-card{background:#fbfcff;border:1px solid #e8edf5;border-radius:8px;flex-direction:column;gap:8px;margin-bottom:10px;padding:12px;display:flex}.kanban-card h3,.kanban-card p{margin:0}.kanban-card h3{font-size:15px}.kanban-card p{color:var(--muted);font-size:13px}.kanban-meta{color:var(--brand-purple);justify-content:space-between;gap:10px;font-size:13px;font-weight:900;display:flex}.report-list{grid-template-columns:1fr auto;gap:12px;display:grid}.not-found{min-height:100vh;color:var(--brand-purple);text-align:center;align-content:center;place-items:center;gap:18px;display:grid}.not-found h1{margin:0}.sidebar-scrim{display:none}@media (width<=1240px){.stats-grid,.module-stats{grid-template-columns:repeat(3,minmax(170px,1fr))}.action-grid{grid-template-columns:repeat(2,minmax(168px,1fr));width:min(460px,100%)}.topbar-actions .date-pill{display:none}}@media (width<=980px){.app-shell{grid-template-columns:1fr}.sidebar{z-index:30;width:min(312px,86vw);transition:transform .2s;position:fixed;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-scrim.show{z-index:25;background:#14162738;display:block;position:fixed;inset:0}.mobile-menu{display:inline-grid}.topbar{padding:12px 18px}.topbar-title p{display:none}.dashboard-grid{grid-template-columns:1fr}.student-portal-shell{grid-template-columns:1fr;width:min(640px,100%);padding-top:24px}.sales-grid,.clinical-grid,.role-layout,.prospect-layout,.service-layout,.line-editor,.sale-total-box{grid-template-columns:1fr}.line-editor .field,.line-editor .add-line-button{grid-column:auto}.vitals-grid,.permission-grid,.clinical-context-grid,.cash-open-form{grid-template-columns:repeat(2,minmax(0,1fr))}.page-heading{flex-direction:column}.heading-actions{justify-content:flex-start}.action-grid{width:100%}.login-panel{grid-template-columns:1fr}.login-form{border-left:0;border-top:1px solid var(--line)}}@media (width<=720px){.page-container{padding:18px}.stats-grid,.module-stats,.cash-summary,.form-grid,.cash-open-form,.vitals-grid,.cash-reconcile,.method-summary,.permission-grid,.preview-meta-grid,.clinical-context-grid,.action-grid{grid-template-columns:1fr}.clinical-item,.prospect-item,.service-card,.sale-item{grid-template-columns:minmax(0,1fr) auto}.topbar-actions .cash-pill,.topbar-actions .user-chip{display:none}.page-heading h1{font-size:25px}.module-toolbar{flex-direction:column;align-items:stretch}.login-page{padding:16px}.login-brand,.login-form{padding:28px}.login-brand h1{font-size:26px}.compact-item,.pipeline-row,.sale-item,.portal-record{flex-direction:column;grid-template-columns:1fr;align-items:flex-start}.portal-status{width:fit-content;min-width:0}.sale-line{grid-template-columns:1fr auto}.portal-content,.portal-topbar,.student-portal-shell,.student-topbar{padding:18px}.student-meta-grid{grid-template-columns:1fr}.student-query-panel,.student-result-panel{padding:18px}.student-portal-shell{gap:14px;padding-top:18px}.student-topbar{min-height:94px}.student-topbar img{width:138px;max-height:82px}.student-query-heading h1,.student-result-header h2{font-size:24px}.student-footer{text-align:center;flex-direction:column;align-items:center}}
