:root{--background:#f4f7fb;--surface:#fff;--surface-soft:#f8fafc;--ink:#172033;--muted:#607086;--line:#dbe3ee;--teal:#0f766e;--teal-dark:#115e59;--blue:#2563eb;--amber:#b7791f;--red:#c2410c;--green:#16803c;--nav:#173f3f;--nav-soft:#e7f5f2;--shadow:0 16px 40px #1720331a}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--background);color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.login-shell{background:linear-gradient(135deg, #0f766e14, #f8c35129), var(--background);place-items:center;min-height:100vh;padding:24px;display:grid}.login-panel{grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);align-items:stretch;gap:18px;width:min(1060px,100%);display:grid}.login-summary,.login-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px}.login-summary{align-content:space-between;gap:26px;min-height:540px;padding:28px;display:grid}.login-brand{margin-bottom:0}.login-summary h1,.login-card h2{letter-spacing:0;margin:0}.login-summary h1{max-width:620px;font-size:42px;line-height:1.08}.login-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.login-stats .metric{min-height:112px;box-shadow:none}.login-card{align-content:center;gap:18px;padding:28px;display:grid}.login-card .primary-action{width:100%;min-height:44px}.field-control{border:1px solid var(--line);min-height:44px;color:var(--muted);background:#fff;border-radius:8px;align-items:center;gap:9px;padding:0 12px;display:flex}.field-control input{border:0;outline:0;width:100%;min-height:42px;padding:0}.form-error{min-height:22px;color:var(--red);margin:-4px 0 0;font-size:13px;font-weight:700}.app-shell{grid-template-columns:278px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--nav);color:#ecfeff;padding:24px 18px}.brand{align-items:center;gap:12px;min-height:48px;margin-bottom:28px;display:flex}.brand-mark{color:#173f3f;background:#f8c351;border-radius:8px;place-items:center;width:44px;height:44px;display:grid}.brand strong,.brand span{display:block}.brand strong{letter-spacing:0;font-size:17px}.brand span{color:#bae6e1;margin-top:2px;font-size:13px}.nav-list{gap:6px;display:grid}.nav-list button{color:#d9fffb;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;width:100%;min-height:42px;padding:0 12px;display:flex}.nav-list button:hover,.nav-list button.is-active{color:#fff;background:#ffffff21}.workspace{align-content:start;gap:18px;min-width:0;padding:24px;display:grid}.topbar,.section-head,.panel-title,.activity-panel .compact{justify-content:space-between;align-items:center;gap:16px;display:flex}.topbar{min-height:72px}.topbar h1,.section-head h2,.modal-head h2{letter-spacing:0;margin:0}.topbar h1{font-size:28px}.section-head h2,.modal-head h2{font-size:22px}.eyebrow{color:var(--muted);letter-spacing:0;text-transform:uppercase;margin:0 0 5px;font-size:12px;font-weight:700}.topbar-actions,.section-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.status-pill{border:1px solid var(--line);background:var(--surface);min-height:38px;color:var(--ink);white-space:nowrap;border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-size:14px;display:inline-flex}.user-pill{text-overflow:ellipsis;max-width:260px;overflow:hidden}.logout-action{color:var(--red)}.overview-grid,.metrics-grid,.plan-grid{gap:14px;display:grid}.overview-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.metric,.data-panel,.side-panel,.activity-panel,.plan-card{border:1px solid var(--line);background:var(--surface);border-radius:8px}.metric{align-items:center;gap:12px;min-height:92px;padding:18px;display:flex}.metric-icon{background:var(--nav-soft);width:42px;height:42px;color:var(--teal-dark);border-radius:8px;flex:none;place-items:center;display:grid}.metric span,td span,.plan-card p{color:var(--muted);font-size:13px;display:block}.metric strong{margin-top:4px;font-size:24px;line-height:1.1;display:block}.content-stack{gap:14px;display:grid}.segmented{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-auto-flow:column;align-items:center;min-height:38px;display:inline-grid;overflow:hidden}.segmented button{border:0;border-right:1px solid var(--line);min-width:92px;height:38px;color:var(--muted);background:0 0;padding:0 14px}.segmented button:last-child{border-right:0}.segmented button.is-selected{background:var(--teal);color:#fff}.primary-action,.secondary-action,.icon-text,.icon-button{white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:38px;display:inline-flex}.primary-action{background:var(--teal);color:#fff;border-color:var(--teal);padding:0 14px;font-weight:700}.primary-action:hover{background:var(--teal-dark)}.secondary-action{background:var(--surface);color:var(--ink);border-color:var(--line);padding:0 14px}.icon-text{border-color:var(--line);background:var(--surface);color:var(--teal-dark);padding:0 12px;font-size:13px}.icon-button{border-color:var(--line);background:var(--surface);width:36px;height:36px;color:var(--ink);padding:0}.icon-button:hover,.icon-text:hover,.secondary-action:hover{background:var(--surface-soft)}.search-box{border:1px solid var(--line);background:var(--surface);width:min(360px,100%);min-height:40px;color:var(--muted);border-radius:8px;align-items:center;gap:9px;padding:0 12px;display:flex}.search-box.wide{width:min(520px,100%)}.search-box input{width:100%;color:var(--ink);background:0 0;border:0;outline:0}.data-panel{min-width:0;overflow:hidden}.panel-title{border-bottom:1px solid var(--line);min-height:54px;padding:0 18px}.panel-title h3,.side-panel h3,.plan-card h3{letter-spacing:0;margin:0;font-size:16px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:820px}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:14px 16px}th{color:var(--muted);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:800}td{font-size:14px}td strong{margin-bottom:3px;display:block}td .badge{margin-top:4px;display:inline-flex}tr:last-child td{border-bottom:0}select,input,textarea{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;min-height:38px;padding:0 10px}textarea{resize:vertical;min-height:112px;padding:10px}.badge{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:24px;padding:0 9px;font-size:12px;font-weight:800;display:inline-flex}.is-green{color:var(--green);background:#e8f7ed}.is-amber{color:var(--amber);background:#fff4db}.is-red{color:var(--red);background:#fff1ec}.is-blue{color:var(--blue);background:#eaf1ff}.is-neutral{color:#475569;background:#eef2f7}.amount-due{color:var(--red);font-weight:800}.plan-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.plan-card{align-content:start;gap:10px;min-height:210px;padding:16px;display:grid}.plan-scope{min-height:24px;color:var(--blue);background:#eff6ff;border-radius:999px;align-items:center;padding:0 9px;font-size:12px;font-weight:800;display:inline-flex}.plan-card strong{font-size:22px}.plan-card ul{color:var(--muted);gap:7px;margin:0;padding-left:18px;font-size:13px;display:grid}.patient-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:14px;display:grid}.check-column{width:48px}.side-panel{padding:18px}.side-panel-head{align-items:center;gap:10px;margin-bottom:16px;display:flex}.side-panel-head span{background:var(--nav-soft);width:30px;height:30px;color:var(--teal-dark);border-radius:999px;justify-content:center;align-items:center;margin-left:auto;font-weight:800;display:inline-flex}.form-stack,.modal-form,.form-grid{gap:14px;display:grid}label{color:var(--muted);gap:6px;font-size:13px;font-weight:700;display:grid}label input,label select,label textarea{width:100%;color:var(--ink);font-weight:500}.activity-panel{padding:18px}.activity-panel ul{gap:10px;margin:12px 0 0;padding:0;list-style:none;display:grid}.activity-panel li{border-left:3px solid var(--teal);color:var(--muted);padding:2px 0 2px 10px;font-size:14px}.modal-backdrop{z-index:20;background:#0f172a80;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal{background:var(--surface);width:min(760px,100%);max-height:calc(100vh - 36px);box-shadow:var(--shadow);border-radius:8px;overflow:auto}.modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;min-height:64px;padding:0 18px;display:flex}.modal-form{padding:18px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-actions{justify-content:flex-end;gap:10px;padding-top:4px;display:flex}@media (max-width:1180px){.overview-grid,.plan-grid,.login-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-layout{grid-template-columns:1fr}}@media (max-width:920px){.login-panel{grid-template-columns:1fr}.login-summary{min-height:auto}.app-shell{grid-template-columns:1fr}.sidebar{z-index:10;padding:14px;position:sticky;top:0}.brand{margin-bottom:12px}.nav-list{padding-bottom:2px;display:flex;overflow-x:auto}.nav-list button{flex:none;width:auto}.workspace{padding:18px}}@media (max-width:720px){.login-shell{padding:14px}.login-summary,.login-card{padding:18px}.login-summary h1{font-size:31px}.topbar,.section-head{flex-direction:column;align-items:stretch}.topbar-actions,.section-actions{justify-content:flex-start}.overview-grid,.metrics-grid,.plan-grid,.login-stats,.form-grid{grid-template-columns:1fr}.metric{min-height:78px}.metric strong{font-size:21px}.segmented{width:100%}.segmented button{width:100%;min-width:0}.primary-action,.secondary-action{width:100%}.modal-actions{flex-direction:column-reverse}}
