:root{--navy: #162440;--navy-text: #1a2840;--red: #b83030;--bg: #f7f8fa;--card: #ffffff;--border: #e2e5ea;--muted: #5b6472;--ok: #1f7a4d;--content-max: 1460px}*{box-sizing:border-box}.sandbox-banner{position:sticky;top:0;z-index:1000;background:#1a1a1a;color:#ffca28;border-bottom:3px solid #ffb300;text-align:center;font-weight:800;letter-spacing:.06em;font-size:13px;padding:8px 12px;text-transform:uppercase}html,body,#root{margin:0;height:100%}body{background:var(--bg);color:var(--navy-text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.4}.page{min-height:100%;display:flex;flex-direction:column}.app-header{background:var(--navy);color:#fff;padding:14px 20px;display:flex;flex-direction:column;gap:6px}.app-header-row{display:flex;align-items:baseline;gap:12px}.app-logo{height:32px;width:auto;align-self:center;flex-shrink:0;border-radius:4px}.app-title{font-size:18px;font-weight:600}.app-mission{font-size:13px;opacity:.75}.app-patient-row{display:flex;align-items:baseline;gap:12px;padding-top:4px;border-top:1px solid rgba(255,255,255,.15)}.app-patient-name{font-size:16px;font-weight:600}.app-patient-meta{font-size:13px;opacity:.85}.allergy-banner{background:var(--red);color:#fff;font-weight:600;text-align:center;padding:10px 16px}.content{padding:24px;display:flex;flex-direction:column;align-items:center;gap:16px}.card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:24px;width:100%;max-width:560px;box-shadow:0 1px 2px #1624400d}.screen-grid{display:flex;gap:16px;width:100%;max-width:min(var(--content-max),100%);align-items:flex-start;flex-wrap:wrap}.screen-grid .card{flex:1 1 560px;min-width:320px;max-width:1100px}.context-panel{flex:1;min-width:260px;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:20px;box-shadow:0 1px 2px #1624400d}.screen-grid>.context-panel,.screen-grid>.context-col{flex:0 1 340px;min-width:280px;align-self:flex-start;position:sticky;top:16px}.context-panel h2{padding-left:10px;border-left:3px solid var(--red);color:var(--navy)}.context-panel h2{font-size:14px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:16px 0 8px}.context-panel h2:first-child{margin-top:0}.context-panel dl{margin:0}.context-panel dt{font-size:12px;color:var(--muted);margin-top:8px}.context-panel dd{margin:2px 0 0;font-size:14px}.card h1{margin-top:0;font-size:20px}.muted{color:var(--muted)}.status{border-radius:8px;padding:14px 16px;margin:16px 0;border:1px solid var(--border)}.status-ok{background:#eef7f1;border-color:#bfe0cd}.status-bad{background:#fbeeee;border-color:#e6c4c4;color:var(--red)}.status-row{display:flex;justify-content:space-between;padding:4px 0}.tables summary{cursor:pointer;color:var(--muted)}.tables ul{columns:2;margin:8px 0 0;padding-left:18px;font-size:14px}.btn-primary{display:block;width:100%;margin-top:16px;padding:14px 18px;background:var(--navy);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer}.btn-primary:active{opacity:.9}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{display:block;width:100%;margin-top:12px;padding:14px 18px;background:var(--card);color:var(--navy-text);border:1px solid var(--border);border-radius:8px;font-size:16px;font-weight:600;cursor:pointer}.btn-link{display:block;margin-top:12px;padding:8px 0;background:none;border:none;color:var(--muted);font-size:14px;text-decoration:underline;cursor:pointer}.required{color:var(--red)}.choice-row{display:flex;flex-direction:column;gap:8px;margin-top:16px}.choice-row .btn-primary,.choice-row .btn-secondary{margin-top:0}.patient-form label,.card>label{display:block;margin-top:14px;font-size:14px;font-weight:600;color:var(--muted)}.form-row{display:flex;gap:16px}.form-row label{flex:1}.bmi-readout{margin-top:14px;font-weight:600}.pregnancy-field{margin-top:14px}.pregnancy-label{display:block;margin-bottom:6px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}input[type=text],input[type=date],.patient-form input,.card>label input{display:block;width:100%;margin-top:6px;padding:12px 14px;font-size:16px;border:1px solid var(--border);border-radius:8px;color:var(--navy-text);background:#fff}textarea{display:block;width:100%;margin-top:6px;padding:12px 14px;font-size:16px;border:1px solid var(--border);border-radius:8px;color:var(--navy-text);background:#fff;min-height:64px;font-family:inherit;resize:vertical}.dob-field{margin-top:6px}.dob-row{display:flex;gap:8px;align-items:stretch}.dob-row .dob-text{flex:1;margin-top:0}.dob-row .dob-text[aria-invalid=true]{border-color:var(--red)}.dob-cal{position:relative;flex:0 0 auto;width:52px;border:1px solid var(--border);border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}.dob-cal-icon{font-size:20px;line-height:1}.dob-cal .dob-native{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;padding:0;border:none;opacity:0;cursor:pointer}.dob-error{display:block;margin-top:6px;color:var(--red);font-size:13px;font-weight:600}.toggle-group{display:flex;gap:8px;margin-top:6px}.toggle-btn{padding:12px 16px;min-height:44px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--navy-text);font-size:15px;font-weight:600;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.toggle-btn:hover:not(.toggle-btn-active){border-color:var(--navy)}.toggle-btn-active{background:var(--navy);color:#fff;border-color:var(--navy)}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:8px 0 4px}.lookup-form{display:flex;gap:8px;margin-bottom:12px}.lookup-form input{flex:1;padding:12px 14px;font-size:16px;border:1px solid var(--border);border-radius:8px}.lookup-form .btn-secondary{width:auto;margin-top:0}.lookup-results{list-style:none;margin:0;padding:0}.lookup-result{display:block;width:100%;text-align:left;padding:12px 14px;margin-bottom:8px;border:1px solid var(--border);border-radius:8px;background:#fff;cursor:pointer}.lookup-result strong{display:block}.lookup-result .muted{font-size:13px}.medical-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.pediatric-indicator{background:#eef2fb;color:var(--navy);border:1px solid #cdd8f0;border-radius:999px;padding:4px 12px;font-size:13px;font-weight:600;white-space:nowrap}.section-heading{font-size:13px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:var(--navy);margin:26px 0 10px;padding-left:10px;border-left:3px solid var(--red)}.tag{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:999px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;vertical-align:middle;white-space:nowrap}.tag-high{background:#fbeeee;color:var(--red);border:1px solid #e6c4c4}.tag-low{background:#eef2fb;color:var(--navy);border:1px solid #cdd8f0}.tag-warn{background:#fff6e6;color:#7a5a12;border:1px solid #e8cf9a}.tag-ok{background:#eef7f1;color:var(--ok);border:1px solid #bfe0cd}.tag-normal{display:none}.vital-chips{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:6px}.vital-chip{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:#fff}.vital-chip--abnormal{border-color:#e6c4c4;background:#fdf6f6}.vital-chip-label{font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.vital-chip-value{font-size:15px;font-weight:700}.vital-chip--abnormal .vital-chip-value{color:var(--red)}.fact-alert{color:var(--red);font-weight:700}.cc-banner{display:flex;flex-direction:column;gap:2px;background:#f1f4f9;border:1px solid var(--border);border-radius:8px;padding:10px 14px;margin-top:12px}.cc-label{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.cc-value{font-size:15px;font-weight:600}.ros-help{font-size:13px;margin:4px 0 8px}.ros-list{display:flex;flex-direction:column;gap:6px}.ros-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ros-system{flex:0 0 130px;font-size:14px;font-weight:600}.ros-toggle{margin-top:0}.ros-toggle .toggle-btn{min-width:44px;padding:8px 12px;font-size:18px;line-height:1}.ros-pos.toggle-btn-active{background:var(--red);border-color:var(--red)}.ros-neg.toggle-btn-active{background:var(--ok);border-color:var(--ok)}.ros-detail{flex:1;min-width:160px;margin-top:0!important}.ros-block{border-bottom:1px solid var(--border);padding-bottom:6px}.ros-toggle .ros-neg{font-size:14px;white-space:nowrap}.ros-expand{font-size:13px;white-space:nowrap}.ros-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:4px 16px;padding:8px 0 4px 140px}.ros-item{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:400}.ros-item input[type=checkbox]{width:20px;height:20px;margin:0}.ros-narrative-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:10px}@media(max-width:900px){.ros-items{padding-left:0}}.eye-exam-header{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:none;padding:8px 0;margin-top:8px;cursor:pointer;text-align:left}.eye-exam-chevron{color:var(--navy);font-size:16px;transition:transform .15s ease}.eye-exam-chevron.open{transform:rotate(90deg)}.eye-exam-list{display:flex;flex-direction:column;gap:10px}.eye-exam-block{border-bottom:1px solid var(--border);padding-bottom:8px}.eye-exam-group-label{font-size:14px;font-weight:600;margin-bottom:6px}.eye-exam-eyes{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}.eye-exam-cell{display:flex;flex-direction:column;gap:4px}.eye-exam-cell-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.eye-exam-eye-label{flex:0 0 72px;font-size:13px;font-weight:600;color:var(--navy)}.eye-exam-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:4px 16px;padding:8px 0 4px 72px}@media(max-width:900px){.eye-exam-eyes{grid-template-columns:1fr}.eye-exam-items{padding-left:0}}.eye-diagram{margin-top:8px}.eye-diagram-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.eye-diagram-pens{display:flex;align-items:center;gap:8px}.pen-swatch{width:28px;height:28px;border-radius:50%;border:2px solid var(--border);padding:0;cursor:pointer}.pen-swatch-active{outline:3px solid var(--navy);outline-offset:1px}.width-btn{padding:6px 10px;font-size:13px}.eye-diagram-panels{display:flex;flex-wrap:wrap;gap:14px}.eye-diagram-panel{display:flex;flex-direction:column;gap:6px;flex:1 1 200px;max-width:240px}.eye-diagram-panel-label{font-size:13px;font-weight:600;color:var(--navy)}.eye-diagram-svg{width:100%;aspect-ratio:1 / 1;border:1px solid var(--border);border-radius:8px;background:#fff;display:block}.eye-diagram-panel-actions{display:flex;align-items:center;gap:12px}.eye-diagram-confirm{display:inline-flex;align-items:center;gap:8px;font-size:13px}.rx-card{border:1px solid var(--border);border-radius:10px;padding:16px;margin-top:12px;background:#fcfcfd}.rx-card-head{display:flex;align-items:center;justify-content:space-between}.rx-card-title{font-weight:700;font-size:14px}.rx-remove{margin-top:0;color:var(--red)}.rx-mode{margin-top:8px}.rx-instructions{font-size:13px;margin:6px 0 0}.formulary-picker{position:relative}.formulary-list{margin-top:6px;max-height:260px;overflow-y:auto;border:1px solid var(--border);border-radius:8px;background:#fff}.formulary-empty{padding:12px 14px;margin:0}.formulary-group-heading{position:sticky;top:0;background:#eef1f6;color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:6px 12px}.formulary-option{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;padding:10px 14px;border:none;border-bottom:1px solid var(--border);background:#fff;font-size:15px;cursor:pointer}.formulary-option:last-child{border-bottom:none}.formulary-selected{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:6px;padding:10px 14px;border:1px solid var(--border);border-radius:8px;background:#fff}.formulary-selected-name{font-weight:600}.formulary-selected .btn-link{margin-top:0}.chronic-badge{display:inline-block;margin-left:8px;background:#fbeeee;color:var(--red);border:1px solid #e6c4c4;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.sig-badge{display:inline-block;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.sig-badge-draft{background:#fff6e6;color:#8a5a00;border:1px solid #f0d39a}.sig-badge-ok{background:#eef6f0;color:var(--ok);border:1px solid #cfe6d7}.sig-unreviewed-flag{display:inline-block;margin-left:8px;background:#fff6e6;color:#8a5a00;border:1px solid #f0d39a;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.sig-unreviewed-note{margin:4px 0 0;color:#8a5a00;font-size:13px;font-weight:600}.toggle-group.wrap{flex-wrap:wrap}.acuity-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 16px}.acuity-field{display:block;margin-top:0;font-size:13px;font-weight:600;color:var(--muted)}.acuity-field select,.dispense-quick select,.inline-field select{display:block;width:100%;margin-top:6px;padding:12px 14px;font-size:16px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--navy-text)}.ar-eye{display:flex;align-items:flex-end;gap:12px;margin-top:10px}.ar-eye-label{flex:0 0 32px;font-weight:700;padding-bottom:12px}.ar-field{flex:1;margin-top:0!important;font-size:13px;font-weight:600;color:var(--muted)}.ar-field input:disabled{background:#f0f1f4;color:var(--muted);cursor:not-allowed}.dispensing{border:1px solid var(--border);border-radius:10px;padding:14px;background:#fcfcfd}.dispense-quick{display:flex;align-items:flex-end;gap:10px;margin-bottom:10px}.inline-field{flex:1;margin-top:0;font-size:13px;font-weight:600;color:var(--muted)}.inline-field.qty{flex:0 0 80px}.inline-field input{margin-top:6px}.inline-btn{width:auto;margin-top:0;padding:12px 20px}.dispense-rare{border-top:1px solid var(--border);margin-top:6px;padding-top:10px}.rare-block{margin-bottom:14px}.rare-title{display:block;font-weight:700;font-size:13px;margin-bottom:4px}.dispense-list{list-style:none;margin:12px 0 0;padding:0}.dispense-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:#fff;margin-bottom:8px;font-size:14px}.dispense-remove{margin-top:0;color:var(--red);flex:0 0 auto}.readonly-panel{display:flex;flex-direction:column;gap:2px;background:#f1f4f9;border:1px solid var(--border);border-radius:8px;padding:10px 14px;margin-top:8px}.readonly-label{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.consent-text{max-height:220px;overflow-y:auto;border:1px solid var(--border);border-radius:8px;padding:12px 14px;margin-top:8px;background:#fcfcfd}.consent-section{margin-bottom:12px}.consent-section:last-child{margin-bottom:0}.consent-section p{margin:4px 0 0;color:var(--muted);white-space:pre-wrap}.consent-indicator{margin-top:8px}.consent-none{background:#fff6e6;color:#8a5a00;border:1px solid #f0d39a}.problem-promote{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:8px}.problem-promote .btn-secondary{width:auto;margin-top:0}.problem-list{list-style:none;margin:8px 0 0;padding:0}.problem-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--border)}.problem-row:last-child{border-bottom:none}.problem-row .btn-link{margin-top:0}.problem-text{font-weight:600;color:var(--navy-text)}.problem-rail-list{list-style:disc;margin:4px 0 0;padding-left:18px}.problem-rail-list li{padding:2px 0}.prior-encounters summary{cursor:pointer;color:var(--navy);font-weight:600}.prior-encounters-list{list-style:none;margin:8px 0 0;padding:0}.prior-encounters-list li{display:flex;flex-wrap:wrap;gap:6px;padding:6px 0;border-bottom:1px solid var(--border)}.prior-encounters-list li:last-child{border-bottom:none}.prior-date{font-weight:700;color:var(--navy-text)}.prior-dx{color:var(--navy-text)}.med-flags{margin-top:8px}.med-flag-banner{background:#fff6e6;border:1px solid #e8cf9a;color:#7a5a12;border-radius:8px;padding:8px 12px;font-size:13px;font-weight:600}.med-flag-list{list-style:none;margin:8px 0 0;padding:0}.med-flag-list li{padding:8px 12px;border:1px solid #e6c4c4;background:#fbeeee;border-radius:8px;margin-bottom:6px;font-size:14px}.med-flag-cat{color:var(--muted);font-size:12px}.arch{margin-bottom:12px}.tooth{min-width:34px;min-height:40px;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--navy-text);font-size:13px;font-weight:600;cursor:pointer}.dental-grid{display:flex;flex-direction:column;gap:16px;width:100%;max-width:min(var(--content-max),100%)}.dental-top{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.dental-grid .dental-fields{max-width:none}.dental-grid .dental-context{align-self:start;position:sticky;top:16px}.dental-grid .dental-chart{max-width:none}@media(max-width:900px){.dental-top{display:contents}.dental-grid .dental-fields{order:1}.dental-grid .dental-chart{order:2}.dental-grid .dental-context{order:3;position:static;align-self:stretch;width:100%;min-width:0}}.odo-wrap{margin-top:8px;overflow-x:auto}.odo-svg{display:block;width:100%;min-width:620px;height:auto}.odo-outline{fill:#fff;stroke:#c4ccd8;stroke-width:1;cursor:pointer}.odo-surface{stroke:#c4ccd8;stroke-width:1}.odo-surface:not(.odo-readonly){cursor:pointer}.odo-surface:not(.odo-readonly):hover{stroke:var(--navy);stroke-width:1.5}.odo-surface-selected{stroke:var(--navy);stroke-width:2.5}.odo-readonly{cursor:default}.odo-tooth-extracted .odo-surface,.odo-tooth-extracted .odo-center{fill-opacity:.4}.odo-prior{opacity:.85}.odo-selected-whole .odo-outline{stroke:var(--navy);stroke-width:2.5}.odo-label{font-size:11px;font-weight:700;fill:var(--navy-text);cursor:pointer;-webkit-user-select:none;user-select:none}.odo-label-prior{fill:var(--muted);cursor:default}.odo-midline{stroke:#9aa4b5;stroke-width:1}.odo-midline-label{font-size:9px;letter-spacing:.12em;fill:var(--muted)}.odo-legend{display:flex;flex-wrap:wrap;gap:12px;margin:4px 0 6px;font-size:12px;color:var(--muted)}.odo-legend-item{display:inline-flex;align-items:center;gap:6px}.odo-legend-swatch{width:14px;height:14px;border-radius:3px;border:1px solid rgba(0,0,0,.15)}.odo-continued{fill:var(--navy);stroke:#fff;stroke-width:1;pointer-events:none}.odo-extracted-mark{pointer-events:none}.odo-extracted-mark line{stroke:var(--red);stroke-width:3.5;stroke-linecap:butt;filter:drop-shadow(0 0 1.5px rgba(255,255,255,.95))}.dental-returning-banner{display:block;background:#fdf3d8;border:1px solid #e6c14a;color:#6b4e00}.prior-day-notes{margin-top:14px;display:flex;flex-direction:column;gap:6px}.prior-day-note{display:flex;align-items:center;gap:8px;background:#f1f4f9;border:1px solid var(--border);border-radius:8px;padding:8px 12px;font-size:14px}.returning-list{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.returning-list li{padding:6px 0;border-bottom:1px solid var(--border)}.checkbox-label{display:flex;align-items:center;gap:8px;margin-top:14px}.checkbox-label input[type=checkbox]{width:auto;margin:0}.tooth-panel-surfaces{font-weight:700;color:var(--navy)}.tooth-surface-pick{margin-top:10px}.tooth-panel{border:1px solid var(--border);border-radius:10px;padding:14px;margin-top:10px;background:#fcfcfd}.tooth-panel-title{font-weight:700}.tooth-panel-actions{display:flex;align-items:center;gap:12px;margin-top:8px}.tooth-panel-actions .btn-secondary{width:auto;margin-top:0}.tooth-panel-actions .btn-link{margin-top:0}.tooth-panel select{display:block;width:100%;margin-top:6px;padding:12px 14px;font-size:16px;border:1px solid var(--border);border-radius:8px;background:#fff}.charted-list{list-style:none;margin:12px 0 0;padding:0}.charted-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:#fff;margin-bottom:8px;font-size:14px}.patient-form select{display:block;width:100%;margin-top:6px;padding:12px 14px;font-size:16px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--navy-text)}.slip-body{margin:16px 0}.slip-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border)}.slip-row:last-child{border-bottom:none}.report-card{max-width:min(1200px,100%)}.report-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.report-head h1{margin-bottom:0}.report-sub{margin:0 0 8px}.report-scopes{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-start}.report-scope{flex:1;min-width:260px;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:14px 16px}.report-scope-head{font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:8px}.report-bignum{font-size:30px;font-weight:700;color:var(--navy);line-height:1.1;margin-bottom:10px}.report-bignum-label{font-size:13px;font-weight:400;color:var(--muted);margin-left:8px;text-transform:none;letter-spacing:0}.report-table{width:100%;border-collapse:collapse;font-size:14px}.report-table th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);font-weight:600;padding:4px 0;border-bottom:1px solid var(--border)}.report-table td{padding:4px 0;border-bottom:1px solid var(--border)}.report-table tr:last-child td{border-bottom:none}.report-table .num{text-align:right;font-variant-numeric:tabular-nums;width:5.5em}.report-invgroup{margin-top:12px}.report-invgroup-head{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:2px}.small{font-size:13px}.btn-danger{display:block;width:100%;margin-top:12px;padding:14px 18px;background:var(--red);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer}.btn-danger:active{opacity:.9}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.danger-card{border-color:#e6c4c4}.choice-row .btn-danger{margin-top:0}.manage-service{border:1px solid var(--border);border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:6px}.manage-service-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.manage-service-status{font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.manage-service-status.status-complete{color:var(--ok);font-weight:700}.manage-service .inline-btn,.manage-service .btn-link{margin-top:0}.delete-dep-list{margin:8px 0;padding-left:20px}.delete-dep-list li{padding:2px 0}.state-badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.state-open{background:#eef7f1;color:var(--ok);border:1px solid #bfe0cd}.state-at_capacity{background:#fff6e6;color:#7a5a12;border:1px solid #e8cf9a}.state-closed{background:#fbeeee;color:var(--red);border:1px solid #e6c4c4}.capacity-board{display:flex;flex-direction:column;gap:8px;margin:8px 0 4px}.capacity-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:#fff}.capacity-name{font-weight:700;flex:0 0 80px}.capacity-count{font-size:14px;color:var(--muted);flex:0 0 auto}.capacity-action{margin-left:auto}.capacity-action .inline-btn{margin-top:0}.routed-tag{color:var(--ok);font-weight:700;font-size:14px}.station-control-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.station-state-toggle{margin-top:12px;flex-wrap:wrap}.screen-stack{display:flex;flex-direction:column;gap:16px}.screen-grid>.screen-stack{flex:1 1 560px;min-width:320px;max-width:1100px}@media(max-width:900px){.screen-grid{flex-direction:column;flex-wrap:nowrap}.screen-grid>.card,.screen-grid>.screen-stack,.screen-grid>.context-panel,.screen-grid>.context-col{flex:1 1 auto;width:100%;max-width:none;min-width:0;position:static}}.screen-grid>.screen-stack>.card{flex:0 0 auto;max-width:none;width:100%}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#16244073;display:flex;align-items:center;justify-content:center;padding:24px;z-index:50}.modal-card{background:#fff;border-radius:12px;padding:24px;max-width:440px;width:100%;box-shadow:0 10px 36px #00000040}.modal-actions{display:flex;gap:12px;margin-top:20px}.modal-actions button{flex:1;margin-top:0}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:24px}.auth-card{max-width:380px}.auth-card h1{margin-bottom:4px;text-align:center}.auth-subtitle{text-align:center}.auth-logo{height:60px;width:auto;display:block;margin:0 auto 12px}.auth-layout{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:center;gap:24px}.auth-layout>.auth-card{flex:0 0 380px}.sandbox-intro-panel{flex:0 0 420px;max-width:100%}@media(max-width:900px){.auth-layout{flex-direction:column;align-items:center}.auth-layout>.auth-card,.sandbox-intro-panel{flex:1 1 auto;width:100%;max-width:380px}}.sandbox-intro-panel h2{padding-left:10px;border-left:3px solid var(--navy);color:var(--navy);font-size:14px;text-transform:uppercase;letter-spacing:.04em;margin:16px 0 8px}.sandbox-intro-panel h2:first-child{margin-top:0}.sandbox-intro-panel .sandbox-pin{font-family:monospace;font-size:22px;font-weight:700;letter-spacing:.1em;margin:4px 0 8px;color:var(--navy)}.auth-bar{width:100%;max-width:min(var(--content-max),100%);margin:0 auto;display:flex;align-items:center;gap:12px;padding:6px 4px 0}.auth-who{margin-left:auto}.auth-logout,.nav-switch{margin-top:0}.nav-switch{font-weight:700;text-decoration:none}.launcher{width:100%;max-width:min(880px,100%);text-align:center}.launcher-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0 16px}.launcher-btn{position:relative;min-height:110px;border:1px solid var(--border);border-radius:12px;background:var(--card);color:var(--navy);font-size:18px;font-weight:700;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;box-shadow:0 1px 2px #1624400d;transition:border-color .12s ease,background .12s ease}.launcher-btn:hover{border-color:var(--navy)}.launcher-btn-mine{border-color:var(--navy);background:#eef2fb}.launcher-btn-admin{border-color:#e6c4c4}.launcher-mine-tag{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--navy);background:#fff;border:1px solid #cdd8f0;border-radius:999px;padding:1px 8px}@media(max-width:560px){.launcher-grid{grid-template-columns:repeat(2,1fr)}.form-row{flex-direction:column;gap:0}}.lock-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#1624408c;display:flex;align-items:center;justify-content:center;padding:24px}.lock-card{max-width:360px}.admin-screen{width:100%;max-width:min(1040px,100%);display:flex;flex-direction:column;gap:16px}.admin-screen .card{max-width:none}.admin-card-header{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:none;padding:4px 0;cursor:pointer;text-align:left}.admin-card-chevron{color:var(--navy);font-size:18px;transition:transform .15s ease}.admin-card-chevron.open{transform:rotate(90deg)}.admin-card-body{margin-top:8px}.user-list{list-style:none;margin:8px 0 0;padding:0}.user-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:#fff;margin-bottom:8px;flex-wrap:wrap}.user-inactive{opacity:.6}.user-info{display:flex;flex-direction:column}.user-name{font-weight:700}.user-actions{display:flex;gap:12px}.user-actions .btn-link{margin-top:0}.user-edit{display:flex;align-items:center;gap:8px;flex-wrap:wrap;width:100%}.user-edit input,.user-edit select{margin-top:0;width:auto;flex:1;min-width:120px}.user-edit .inline-btn,.user-edit .btn-link{margin-top:0}.context-col{flex:1;min-width:260px;display:flex;flex-direction:column;gap:16px}.context-col .context-panel{flex:0 0 auto}.routing-panel h2{margin-top:0}.routing-list{list-style:none;margin:8px 0 0;padding:0}.routing-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid var(--border)}.routing-item:last-child{border-bottom:none}.routing-name{font-weight:600}.routing-state{display:flex;align-items:center;gap:8px}.routing-panel .btn-link{margin-top:0}.routing-cancel{color:var(--red)}.reopen-actions{display:flex;flex-direction:column;gap:8px;margin-top:12px}@media print{.no-print,.app-header{display:none!important}body{background:#fff}.card{border:none}}.proto-banner{background:#fff6e6;border:1px solid #e8cf9a;color:#7a5a12;padding:10px 14px;border-radius:8px;font-weight:700;font-size:13px;margin-bottom:16px}.proto-section{border-bottom:1px solid var(--border)}.proto-section-locked .section-heading{color:var(--muted)}.proto-section-body{padding-bottom:10px}.proto-signed-line{margin:-4px 0 8px}.proto-edited-badge{margin-left:8px;font-size:11px;font-weight:700;color:var(--red);text-transform:none;letter-spacing:normal}.proto-sign-row{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-top:14px;padding-top:10px;border-top:1px dashed var(--border)}
