:root{--bg:#edf4fb;--surface:#ffffff;--surface-soft:#f5f8fc;--line:#d4e0ee;--ink:#17324d;--muted:#60748a;--brand:#0d6f9f;--brand-dark:#0a5175;--accent:#23a56f;--danger:#b23a48;--shadow:0 22px 58px rgba(15,40,61,0.12)}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,Helvetica Neue,Arial,sans-serif;color:var(--ink);background:radial-gradient(circle at top right,rgba(13,111,159,.12),transparent 24%),linear-gradient(180deg,#edf4fb,#e9f1f8)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.guest-page{min-height:100vh;padding:2rem;display:grid;place-items:center;background:radial-gradient(circle at 12% 18%,rgba(30,170,255,.14),transparent 24%),radial-gradient(circle at 84% 16%,rgba(15,116,191,.1),transparent 22%),linear-gradient(140deg,#f6fbff,#eaf3fb 46%,#e3eef8)}.login-page-shell{width:min(980px,100%)}.login-brand{margin-bottom:1.5rem}.login-brand h1{margin:0;color:#0b3d5e;font-size:clamp(2rem,3.2vw,2.8rem)}.login-brand p{margin:.45rem 0 0;color:rgba(11,61,94,.78)}.login-shell{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);grid-gap:1.25rem;gap:1.25rem}.login-card,.panel,.side-card,.stat-card,.user-panel{background:var(--surface);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}.login-card{background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 42%),linear-gradient(145deg,#0f6d9e,#0c4f73);color:#edf7ff}.login-card,.side-card{padding:1.8rem}.eyebrow{margin:0;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:#73d4ff}.login-card .eyebrow{color:#b8ebff}.login-card h2,.panel h3,.topbar h2{margin:.35rem 0 0}.login-intro,.muted,.page-subtitle{color:var(--muted)}.login-card .login-intro{color:rgba(237,247,255,.84)}.stack-list{display:grid;grid-gap:.75rem;gap:.75rem;margin-top:1rem}.list-row{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border-radius:16px;background:var(--surface-soft);border:1px solid var(--line)}.list-row-actions{align-items:center}.form-grid{display:grid;grid-gap:1rem;gap:1rem;margin-top:1.2rem}.form-grid.two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.full-width{grid-column:1/-1}fieldset,label{display:flex;flex-direction:column;gap:.45rem;margin:0;border:0;padding:0}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:14px;padding:.85rem .95rem;background:#fff}.button,button{border:0;border-radius:14px;padding:.85rem 1.15rem;cursor:pointer;background:var(--brand);color:#fff}.button.secondary{background:#dfeaf8;color:var(--brand-dark)}.button.danger{background:#cc4b4b;color:#fff}.button.ghost{background:transparent;color:var(--brand-dark);border:1px solid var(--line)}.button-small{padding:.65rem .9rem;border-radius:12px}.app-shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh}.sidebar{display:flex;flex-direction:column;gap:1.4rem;padding:1.5rem;background:linear-gradient(180deg,#102a40,#143a5b);color:#edf7ff}.brand-block h1{margin:.25rem 0 0}.sidebar-copy{color:rgba(237,247,255,.76);line-height:1.5}.user-panel{padding:1rem;color:var(--ink)}.user-panel small,.user-panel strong{display:block;margin-top:.2rem}.role-pill{display:inline-flex;align-items:center;padding:.35rem .8rem;border-radius:999px;font-size:.76rem;background:rgba(13,111,159,.1);color:var(--brand-dark);text-transform:capitalize}.sidebar-nav{display:grid;grid-gap:.65rem;gap:.65rem}.logout-link,.sidebar-nav a{padding:.9rem 1rem;border-radius:16px;background:rgba(255,255,255,.07)}.sidebar-nav a.active{background:rgba(102,211,255,.18)}.logout-link{margin-top:auto}.main-shell{padding:1.5rem}.card-actions,.panel-header,.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem}.page-shell{display:grid;grid-gap:1.25rem;gap:1.25rem}.grid-two,.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1rem;gap:1rem}.stats-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.panel,.stat-card{padding:1.25rem}.compact-panel{padding:.9rem 1rem}.stat-card span{display:block;color:var(--muted)}.stat-card strong{display:block;margin-top:.5rem;font-size:1.9rem}.choice-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.65rem;gap:.65rem}.choice-pill{display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:.85rem .95rem;border:1px solid var(--line);border-radius:14px;background:#fff;font-weight:600;color:var(--brand-dark);cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease}.choice-pill input{position:absolute;opacity:0;pointer-events:none}.choice-pill.selected{background:rgba(16,102,150,.1);border-color:#0f6d9e;box-shadow:inset 0 0 0 1px rgba(15,109,158,.14)}.sex-fieldset{align-self:end}.doctor-patient-summary{margin-top:.35rem}.doctor-patient-edit{margin-top:.85rem}.diagnosis-grid{align-items:stretch;gap:.7rem}.diagnosis-field{gap:.4rem;padding:.65rem .75rem;border:1px solid var(--line);border-radius:16px;background:var(--surface-soft)}.diagnosis-field span{font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.diagnosis-field select,.diagnosis-field textarea{min-height:40px;border-radius:12px;background:#fff}.diagnosis-field textarea{min-height:58px;resize:vertical}.diagnosis-card-head{display:flex;align-items:center;justify-content:space-between;gap:.65rem}.procedure-code-row{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end}.procedure-code-chip{min-height:28px;padding:.3rem .58rem;border-radius:999px;background:#eaf2fb;color:var(--brand-dark);font-size:.76rem;font-weight:800}.procedure-code-chip.active{background:var(--brand);color:#fff}.prescription-panel .panel-header{align-items:center}.prescription-page-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.7fr);grid-gap:.9rem;gap:.9rem;align-items:start}.prescription-drug-panel{order:-1}.prescription-panel{padding:1rem}.prescription-body{max-width:1120px}.prescription-drug-body{display:grid;grid-gap:.4rem;gap:.4rem}.prescription-layout{align-items:start;grid-template-columns:minmax(250px,.72fr) minmax(0,1.55fr);gap:.9rem}.prescription-column{display:grid;grid-gap:.5rem;gap:.5rem}.prescription-card{display:grid;grid-gap:.4rem;gap:.4rem;padding:.65rem;border:1px solid var(--line);border-radius:16px;background:#f8fbff}.prescription-drug-card{align-self:start;background:#fff;box-shadow:inset 0 0 0 1px rgba(13,111,159,.04)}.prescription-subgroup{display:grid;grid-gap:.35rem;gap:.35rem}.prescription-column-head{display:flex;align-items:center;justify-content:space-between;gap:.45rem;min-height:34px}.prescription-column-head h4{margin:0;font-size:.95rem;color:var(--brand-dark)}.prescription-column-head .button-small{min-width:auto;min-height:30px;padding:.35rem .62rem;border-radius:999px;font-size:.78rem;font-weight:700}.manual-order-list,.pill-row,.table-list{display:grid;grid-gap:.75rem;gap:.75rem}.patient-pill{display:inline-flex;gap:.35rem;align-items:center;padding:.32rem .58rem;border-radius:999px;background:var(--surface-soft);border:1px solid var(--line);font-size:.82rem}.pill-row{grid-auto-flow:column;grid-auto-columns:max-content;overflow-x:auto}.manual-order-list-shell{border:1px solid var(--line);border-radius:14px;background:#fff;padding:.15rem}.manual-order-list{gap:0}.empty-note{padding:.65rem .75rem;color:var(--muted);font-size:.82rem}.manual-order-row{padding:.28rem}.manual-order-row+.manual-order-row{border-top:1px solid rgba(187,208,227,.85)}.manual-order-grid{display:grid;grid-template-columns:minmax(170px,1fr) 62px minmax(210px,auto) 30px;grid-gap:.35rem;gap:.35rem;align-items:center}.injection-order-grid{grid-template-columns:minmax(0,1fr) 58px 30px}.manual-order-field{gap:0}.manual-order-field input,.manual-order-field select{min-height:34px;border-radius:10px;padding:.4rem .62rem;background:#fff;font-size:.88rem;font-weight:600}.manual-order-field select{padding-right:1.8rem}.manual-order-qty input{text-align:center;padding-left:.35rem;padding-right:.35rem;font-weight:600}.dose-toggle-group{display:flex;gap:.25rem;flex-wrap:wrap;align-items:center;min-height:34px}.dose-toggle{background:#eaf2fb;color:var(--brand-dark);min-height:32px;padding:.35rem .58rem;border-radius:999px;font-size:.78rem;font-weight:700}.dose-toggle.active{background:var(--brand);color:#fff}.danger-chip{background:var(--danger);color:#fff;border-radius:6px;width:16px;height:16px;padding:0;display:inline-flex;align-items:center;justify-content:center;align-self:center;font-size:.58rem;font-weight:700}.prescription-actions{justify-content:flex-start;gap:.5rem;flex-wrap:wrap;margin-top:.75rem}.prescription-actions .button{min-height:38px;padding:.55rem .95rem;border-radius:12px;font-weight:600}.print-sheet{display:none}.print-letterhead{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding-bottom:.75rem;margin-bottom:.75rem;border-bottom:2px solid var(--brand-dark)}.print-letterhead h2{margin:.25rem 0 0}.print-letterhead-meta{display:grid;grid-gap:.25rem;gap:.25rem;text-align:right}.print-support-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1rem;gap:1rem;margin-top:1rem}.alert{padding:.95rem 1rem;border-radius:16px}.alert.error{background:rgba(178,58,72,.12);color:var(--danger)}.alert.success{background:rgba(35,165,111,.12);color:var(--accent)}@media (max-width:960px){.app-shell,.form-grid.two-column,.grid-two,.login-shell,.manual-order-grid,.prescription-page-grid,.stats-grid.four{grid-template-columns:1fr}.guest-page{padding:1rem}.card-actions,.panel-header,.topbar{flex-direction:column;align-items:stretch}}@media print{@page{size:A4;margin:12mm}:root{--bg:#ffffff;--surface:#ffffff;--surface-soft:#ffffff;--line:#9aaabd;--ink:#111827;--muted:#4b5563;--brand:#0a5175;--brand-dark:#0a5175;--shadow:none}body,html{width:210mm;min-height:297mm;background:#ffffff!important}body{color:var(--ink);print-color-adjust:exact;-webkit-print-color-adjust:exact}.screen-only,.sidebar{display:none!important}.app-shell,.main-shell,.page-shell{display:block!important;min-height:0;padding:0;background:#ffffff!important}.print-sheet{display:block}.panel,.print-panel{page-break-inside:avoid;break-inside:avoid;box-shadow:none!important;border:1px solid var(--line);border-radius:8px;padding:10px 12px}.grid-two,.print-grid{display:grid;grid-template-columns:1fr;grid-gap:8px;gap:8px}.print-support-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}.pill-row,.print-patient-grid{display:flex;flex-wrap:wrap;gap:6px;overflow:visible}.patient-pill,.role-pill{border:1px solid var(--line);background:#ffffff;color:var(--ink)}.print-order-list{gap:4px;margin-top:8px}.list-row,.print-order-row{padding:6px 8px;border-radius:6px;background:#ffffff}.eyebrow{color:var(--brand-dark)}p{margin:.45rem 0}}