@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&display=swap";:root{--bg: #eef4f7;--surface: #ffffff;--surface-soft: #f4f9fc;--ink: #153039;--ink-muted: #48616a;--brand: #0f6e79;--brand-strong: #0c5962;--line: #c8dce2;--error-bg: #fff2f2;--error-line: #de6a6a;--shadow: 0 20px 50px rgba(16, 62, 76, .12)}*{box-sizing:border-box}html{scrollbar-width:thin;scrollbar-color:#9db6c0 transparent}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#9db6c0;border-radius:999px}html,body,#root{min-height:100%;width:100%}html{font-size:clamp(16px,.35vw + 14px,18px)}body{margin:0;color:var(--ink);font-family:DM Sans,sans-serif;overflow-x:hidden;background:radial-gradient(circle at 15% 20%,rgba(15,110,121,.12),transparent 35%),radial-gradient(circle at 82% 8%,rgba(51,134,198,.12),transparent 30%),linear-gradient(180deg,#f4f9fc,#ecf3f6)}h1,h2,h3{margin:0;letter-spacing:-.02em}p{margin:0}button,input,textarea{font:inherit}.app-shell{width:100%;max-width:none;margin:0;padding:clamp(.8rem,1.2vw,1.25rem) clamp(.8rem,1.6vw,1.5rem);height:100dvh;min-height:100dvh;display:flex;flex-direction:column;position:relative}.top-bar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.9rem;background:var(--surface);border:1px solid var(--line);border-radius:1rem;padding:1rem 1.25rem;box-shadow:var(--shadow)}.app-disclaimer-banner{margin:.7rem 0 0;padding:.6rem .85rem;border-radius:.7rem;border:1px solid #f4b6bd;background:#fde8ea;color:#89282c;font-size:.9rem;font-weight:700}.top-bar-left{display:flex;align-items:center;gap:.72rem;justify-self:start;min-width:0}.brand-link{display:inline-flex;align-items:center;justify-content:center;color:inherit;text-decoration:none;min-width:0;justify-self:center}.brand-mark-link{display:inline-flex;align-items:center;min-width:0;border-radius:.5rem}.brand-link:focus-visible,.brand-mark-link:focus-visible{outline:2px solid var(--brand);outline-offset:4px;border-radius:.5rem}.top-bar-title-link{max-width:min(100%,36rem)}.top-bar h1{font-size:clamp(1.05rem,1.6vw,1.45rem);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.eyebrow{text-transform:uppercase;color:var(--brand);letter-spacing:.12em;font-size:.72rem;font-weight:700}.user-block{text-align:right;display:flex;align-items:center;justify-content:flex-end;justify-self:end;gap:.55rem;min-width:0}.user-name{margin:0;white-space:nowrap;font-weight:600}.sidebar-toggle-btn{width:2.6rem;height:2.6rem;border-radius:.72rem;border:1px solid var(--line);background:#f3f9fc;color:var(--brand-strong);display:grid;place-items:center;flex-shrink:0}.sidebar-toggle-btn:hover{border-color:var(--brand);background:#e6f4f8}.sidebar-toggle-btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.sidebar-toggle-bars{display:inline-flex;flex-direction:column;gap:.24rem}.sidebar-toggle-bars>span{width:1.08rem;height:2px;border-radius:999px;background:currentColor}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;margin:0;padding:0;border:0;background:#0c242a5c;opacity:0;pointer-events:none;transition:opacity .18s ease;z-index:28}.sidebar-backdrop.is-open{opacity:1;pointer-events:auto}.app-sidebar{position:fixed;top:0;left:0;bottom:0;width:min(290px,84vw);background:var(--surface);border-right:1px solid var(--line);box-shadow:0 28px 52px #0b2b3542;padding:1rem;display:flex;flex-direction:column;gap:1rem;transform:translate(-100%);transition:transform .2s ease;z-index:30}.app-sidebar.is-open{transform:translate(0)}.app-sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.app-sidebar-head h2{font-size:1.02rem}.sidebar-close-btn{padding:.38rem .62rem}.app-sidebar-nav{display:flex;flex-direction:column;gap:.52rem}.app-sidebar-link{display:block;border:1px solid #d2e4ea;border-radius:.72rem;background:#f8fcfe;color:var(--ink);text-decoration:none;padding:.62rem .72rem;font-weight:600}.app-sidebar-link:hover{border-color:var(--brand)}.app-sidebar-link.is-active{background:#dff3f8;border-color:#98cdd9;color:#0c4f58}.app-sidebar-link:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.company-logo{width:clamp(118px,8.6vw,148px);max-height:38px;object-fit:contain;object-position:left center;display:block}.muted-text{color:var(--ink-muted);font-size:.86rem}.layout-grid{margin-top:1.1rem;display:grid;grid-template-columns:clamp(240px,18vw,300px) minmax(0,1fr) clamp(220px,16vw,280px);gap:1rem;align-items:start;flex:1;min-height:0}.workspace-main{margin-top:1.1rem;display:flex;flex-direction:column;gap:1rem;flex:1;min-height:0;overflow-x:hidden;overflow-y:auto}.layout-grid>*{min-width:0}.patients-page{margin-top:1.1rem}.panel-upload-placeholder{min-height:240px}.panel-upload-workflow{display:flex;flex-direction:column;gap:.9rem}.panel-not-available{min-height:clamp(220px,36vh,360px);display:flex;flex-direction:column;justify-content:center;gap:.8rem}.panel-not-available .panel-head{margin-bottom:.2rem}.upload-slot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.upload-slot-card{border:1px solid var(--line);border-radius:.85rem;background:#f7fcff;padding:.85rem;display:flex;flex-direction:column;gap:.5rem}.upload-slot-card h3{font-size:.96rem}.upload-slot-input-label{color:var(--ink-muted);font-size:.84rem;font-weight:600}.upload-slot-card input[type=file]{max-width:100%}.upload-slot-file-name{font-size:.84rem;color:var(--ink-muted);word-break:break-all}.panel{background:var(--surface);border:1px solid var(--line);border-radius:1rem;box-shadow:var(--shadow);padding:1rem}.panel-head{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem}.panel-head p{color:var(--ink-muted);font-size:.9rem}.panel-head-row{flex-direction:row;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem 1rem}.panel-controls{position:sticky;top:1rem}.panel-viewer{display:flex;flex-direction:column;min-height:0}.panel-patients{grid-column:1 / -1;overflow:hidden}.panel-patients-full{display:flex;flex-direction:column;flex:1;min-height:0}.workspace-header{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem 1rem}.workspace-header p{color:var(--ink-muted);font-size:.9rem}.patient-source{margin-bottom:.75rem}.patient-search-controls{margin-bottom:.65rem;display:flex;flex-wrap:nowrap;gap:.6rem;align-items:flex-start}.patient-search-field{display:flex;flex-direction:column;gap:.3rem;flex:0 1 min(50%,560px);min-width:min(260px,100%)}.patient-search-field span{font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.patient-search-field input{min-height:2.3rem;border:1px solid var(--line);border-radius:.64rem;padding:.45rem .62rem;background:var(--surface);color:var(--ink)}.patient-search-field input:focus-visible{outline:2px solid var(--brand);outline-offset:1px;border-color:var(--brand)}.patient-search-summary{margin-bottom:.7rem}.info-box{margin-bottom:.85rem;border:1px solid rgba(13,110,126,.18);border-radius:.8rem;background:#0d6e7e14;padding:.75rem;display:flex;flex-direction:column;gap:.35rem;font-size:.9rem}.patient-table-wrap{overflow:auto;max-height:min(42vh,460px);border:1px solid var(--line);border-radius:.8rem}.panel-patients-full .patient-table-wrap{flex:1;min-height:0;max-height:none}.patient-table{width:100%;border-collapse:collapse;min-width:860px;font-size:.9rem}.patient-table th,.patient-table td{padding:.62rem .68rem;border-bottom:1px solid var(--line);text-align:left}.patient-table thead th{position:sticky;top:0;background:#eef6fa;color:#1b3b45;z-index:1}.patient-table tbody tr:nth-child(2n){background:#fafdff}.patient-row{cursor:pointer}.patient-empty-cell{text-align:center!important;color:var(--ink-muted);font-style:italic;background:#fbfeff}.patient-row.is-selected{background:#dff2f7!important}.patient-action-cell{width:1%;white-space:nowrap}.panel-workspace{--clinical-eye-column-gap: .7rem;display:flex;flex-direction:column;flex:1;min-height:0;overflow:auto}.workspace-actions{display:flex;gap:.7rem;flex-wrap:wrap;justify-content:flex-end;margin-bottom:.35rem}.overlay-global-controls{margin-top:.08rem;display:flex;flex-direction:column;align-items:flex-start;gap:.18rem;width:100%;max-width:100%;margin-left:0;margin-right:0}.overlay-toggle-row-center{justify-content:center;width:100%}.workspace-note{margin-top:.2rem}.patient-exam-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"patient overlay" "exam slider" ". compare";column-gap:var(--clinical-eye-column-gap);row-gap:.12rem;margin-top:.04rem;padding-left:0}.patient-toolbar-row{display:flex;align-items:center;gap:.45rem .85rem;flex-wrap:wrap}.patient-toolbar-row-top{grid-area:patient;width:100%;max-width:100%;margin-left:0;justify-content:flex-start}.patient-toolbar-row-bottom{grid-area:exam;width:100%;max-width:100%;margin-left:0;justify-content:flex-start}.patient-meta-group{display:flex;align-items:center;gap:.28rem;min-width:0}.compare-open-row{grid-area:compare;display:flex;justify-content:flex-end;width:max-content;margin-top:.16rem;margin-left:auto}.compare-open-btn{margin-left:auto}.patient-id-chip{margin:0;display:inline-flex;align-items:center;gap:.38rem;font-size:.82rem;color:#244650;font-weight:600;letter-spacing:.01em}.patient-id-chip strong{margin-left:.18rem}.patient-meta-info{position:relative;display:inline-flex;align-items:center}.patient-meta-info-trigger{border:1px solid #8eb4c2;border-radius:999px;background:linear-gradient(180deg,#f6fcff,#e5f2f8);color:#185267;font-size:.76rem;font-weight:800;line-height:1;width:1.22rem;height:1.22rem;padding:0;display:inline-grid;place-items:center;cursor:help}.patient-meta-info-trigger:hover{border-color:#7ca7b7;background:#dff0f8}.patient-meta-info-trigger:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.patient-meta-info-popover{position:absolute;top:calc(100% + .35rem);right:0;z-index:8;display:none;min-width:13.6rem;border:1px solid #b9d3dd;border-radius:.58rem;padding:.45rem .5rem;background:#f8fcfe;box-shadow:0 8px 18px #092e3a29;font-size:.72rem;color:#214854}.patient-meta-info-popover span{display:block;margin-bottom:.26rem;font-weight:700}.patient-meta-info-popover input{width:100%;border:1px solid #bdd5de;border-radius:.42rem;background:#fff;padding:.26rem .35rem;color:#173a44;font-size:.74rem}.patient-meta-info:hover .patient-meta-info-popover,.patient-meta-info:focus-within .patient-meta-info-popover{display:block}.overlay-toggle-row-with-exam{grid-area:overlay;width:max-content;max-width:100%;align-items:center;justify-content:flex-end;gap:.65rem;margin-left:auto;margin-right:0}.overlay-toggle-row-with-exam .overlay-toggle:first-child{margin-left:0}.exam-select-with-info{display:inline-flex;align-items:center;gap:.38rem;max-width:100%}.exam-select-field{display:inline-flex;align-items:center;gap:.45rem;flex-wrap:nowrap}.exam-select-field span{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted)}.exam-select-field select{min-height:1.85rem;border:1px solid var(--line);border-radius:.55rem;padding:.2rem .42rem;width:clamp(156px,14vw,184px);min-width:0;background:var(--surface);color:var(--ink)}.exam-select-field select:focus-visible{outline:2px solid var(--brand);outline-offset:1px;border-color:var(--brand)}.eye-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.clinical-viewer-layout{margin-top:.14rem;display:flex;flex-direction:column;gap:.4rem}.eye-column{border:0;border-radius:0;padding:0;background:transparent;display:flex;flex-direction:column;gap:.4rem;min-width:0}.eye-section-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.eye-section-tabs{display:inline-flex;gap:.35rem;align-self:auto}.section-tab{border:1px solid #bfd7e0;border-bottom:0;border-radius:.7rem .7rem 0 0;background:#edf6fa;color:#1b4f5b;font-weight:700;padding:.45rem .9rem;cursor:pointer;line-height:1.1}.section-tab.is-active{background:#fff;border-color:#a9c8d3}.clinical-summary-bottom{margin-top:.42rem}.clinical-summary-bottom .panel-head h2{font-size:1.16rem}.clinical-summary-disclaimer{margin:0 0 .65rem;padding:.5rem .7rem;border-radius:.62rem;border:1px solid rgba(180,83,9,.35);background:#b4530914;color:#7c2d12;font-size:.85rem;line-height:1.4;font-weight:600}.clinical-summary-loading-text{margin:0;color:#0a4a54;font-size:.95rem;font-weight:600}.clinical-summary-loading{margin:0 0 .6rem;display:inline-flex;align-items:center;gap:.55rem}.clinical-summary-loading-spinner{width:.95rem;height:.95rem;border-radius:999px;border:2px solid #c5dde4;border-top-color:#1f6f83;flex:0 0 auto;animation:clinical-summary-loading-spin .75s linear infinite}.summary-eye-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.summary-eye-grid .eye-summary-panel{border:0;border-radius:0;padding:0;background:transparent;display:flex;align-items:stretch;flex-direction:column;gap:.6rem}.eye-summary-panel h3{margin:0;font-size:.98rem}.eye-summary-row-wrap{position:relative}.eye-summary-row{margin-top:0;display:grid;grid-template-columns:1fr;align-items:stretch;gap:.46rem}.summary-inline-item{border:1px solid #d6e6ec;border-radius:.62rem;background:#fff;padding:.38rem .56rem;display:flex;flex-direction:column;gap:.12rem;min-width:0}.summary-inline-item span{color:var(--ink-muted);font-size:.92rem;font-weight:600;line-height:1.22}.summary-inline-item strong{font-size:1.02rem;font-variant-numeric:tabular-nums;line-height:1.18}.summary-inline-item-risk{gap:.18rem}.eye-summary-panel-loading .summary-inline-item{overflow:hidden}.summary-skeleton-line{display:block;border-radius:999px;background:linear-gradient(90deg,#e6eff4 20%,#f5f9fc,#e6eff4 80%);background-size:220% 100%;animation:summary-skeleton-shimmer 1.2s linear infinite}.summary-skeleton-line-label{width:52%;height:.54rem}.summary-skeleton-line-value{width:78%;height:.78rem}.summary-skeleton-line-bar{width:100%;height:.38rem}.risk-line-head{width:100%}.summary-label-value-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.56rem}.summary-label-value-row span{text-align:left}.summary-label-value-row strong{text-align:right}.summary-inline-item-severity{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,47%);align-items:center;column-gap:.72rem;row-gap:.18rem}.severity-text-block{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:.56rem;width:100%;min-width:0}.severity-text-block span{text-align:left}.summary-inline-item-value{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;width:100%;gap:.56rem}.summary-inline-item-value span{text-align:left}.summary-inline-item-value strong{text-align:right}.summary-inline-item-softmax{gap:.26rem}.dr-softmax-thermometer{display:flex;flex-direction:column;gap:.22rem;width:100%}.dr-softmax-track{display:flex;width:100%;height:.95rem;border-radius:999px;overflow:hidden;background:#d7e5eb;box-shadow:inset 0 0 0 1px #0e27321f}.dr-softmax-segment{display:block;height:100%;min-width:0}.dr-softmax-level-row{display:flex;flex-wrap:wrap;gap:.22rem .34rem;align-items:center}.dr-softmax-level-chip{display:inline-flex;align-items:center;gap:.36rem;max-width:100%;text-align:left;white-space:normal;border:1px solid #d7e4ea;border-radius:999px;background:#f3f8fb;color:var(--ink-muted);font-size:.74rem;font-variant-numeric:tabular-nums;line-height:1.1;padding:.16rem .5rem}.dr-softmax-level-chip-dot{width:.52rem;height:.52rem;border-radius:999px;box-shadow:inset 0 0 0 1px #0c1f2633;flex-shrink:0}.severity-gauge{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:.38rem;width:100%;margin-left:auto}.severity-gauge-track{position:relative;display:flex;height:.95rem;border-radius:999px;background:#d7e5eb;box-shadow:inset 0 0 0 1px #0e27321f;overflow:visible}.severity-gauge-band{display:block;height:100%;min-width:0}.severity-gauge-band-red{background:#c8483f;border-radius:0 999px 999px 0}.severity-gauge-band-orange{background:#e18438}.severity-gauge-band-yellow{background:#dfc45a}.severity-gauge-band-green{background:#5ca56a;border-radius:999px 0 0 999px}.severity-gauge-marker{position:absolute;bottom:calc(100% + .08rem);transform:translate(-50%);display:inline-flex;align-items:center;z-index:3}.severity-gauge-marker-caret{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:7px solid #607682}.severity-gauge-scale{display:none}.severity-gauge-edge{color:var(--ink-muted);font-size:.78rem;font-variant-numeric:tabular-nums;line-height:1;font-weight:700}.severity-gauge-edge-min{text-align:left}.severity-gauge-edge-max{text-align:right}.severity-threshold-text{margin:0;color:#2e4a56;font-size:.76rem;font-weight:600}.risk-line-head span{color:var(--ink-muted);font-size:.94rem}.risk-line-head strong{font-size:.92rem;font-variant-numeric:tabular-nums}.risk-bar{height:.48rem;width:100%;border-radius:999px;background:#d7e5eb;overflow:hidden}.risk-bar-compact{height:.38rem}.risk-bar-fill{display:block;height:100%;border-radius:inherit}.risk-bar-fill-any{background:linear-gradient(90deg,#6ba6b4,#1f6f83)}@keyframes summary-skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes clinical-summary-loading-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.risk-bar-fill-referable{background:linear-gradient(90deg,#f6be63,#da5b49)}.risk-bar-fill-weighted{background:linear-gradient(90deg,#63b6b1,#f3bc6f,#d45e4a)}.annotation-panel{margin-top:.42rem}.annotation-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.annotation-toggle-btn{border:0;background:transparent;color:var(--ink);padding:0;font-size:1.08rem;font-weight:700;cursor:pointer}.annotation-toggle-btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:.3rem}.annotation-toggle-icon{color:var(--ink-muted);font-size:.95rem;line-height:1}.annotation-panel-body{margin-top:.65rem;display:flex;flex-direction:column;gap:.7rem}.annotation-question-block{display:flex;flex-direction:column;gap:.35rem}.annotation-question-label{font-size:.86rem;font-weight:700;color:#244650}.annotation-question-block select,.annotation-question-block textarea{width:100%;border:1px solid #c6dbe3;border-radius:.58rem;background:#fff;color:var(--ink);padding:.45rem .56rem}.annotation-question-block textarea{min-height:4.9rem;resize:vertical}.annotation-choice-list{display:flex;flex-wrap:wrap;gap:.35rem .75rem}.annotation-choice-list-vertical{flex-direction:column;flex-wrap:nowrap;align-items:flex-start;gap:.35rem}.annotation-choice-item{display:inline-flex;align-items:center;gap:.38rem;font-size:.86rem;color:var(--ink)}.annotation-choice-item input{margin:0}.annotation-help-text{margin:0;font-size:.8rem;color:var(--ink-muted)}.annotation-actions{display:flex;justify-content:flex-start}.annotation-status-text{margin:0;font-size:.82rem;color:var(--ink-muted)}.annotation-status-error{margin:0;font-size:.82rem;color:#8f2f31}.eye-section{border:0;border-radius:0;background:transparent;padding:0;display:flex;flex-direction:column;gap:.35rem}.eye-section-head{display:flex;justify-content:flex-start;gap:.7rem;align-items:center;flex-wrap:wrap}.eye-section-head-end{justify-content:flex-end}.eye-section-head h4{margin:0;font-size:.95rem}.section-nav{display:inline-flex;align-items:center;gap:.45rem}.section-nav span{font-size:.82rem;color:var(--ink-muted)}.section-nav .ghost-btn{padding:.3rem .5rem;border-radius:.55rem}.section-nav .nav-symbol-btn{width:1.9rem;min-width:1.9rem;height:1.85rem;padding:0;display:inline-grid;place-items:center;line-height:1;font-size:.95rem}.image-card{border:0;border-radius:0;padding:0;background:transparent;display:flex;flex-direction:column;gap:.35rem;min-width:0}.image-card-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.image-card-head-end{justify-content:flex-end}.image-preview-shell{border:1px solid #d9e9ef;border-radius:.72rem;background:#0a1f27;aspect-ratio:4 / 3;min-height:clamp(250px,24vw,420px);padding:.4rem;display:flex;align-items:center;justify-content:center;overflow:hidden}.image-preview-shell-hidden{display:none}.image-preview{display:block;max-width:100%;height:auto;max-height:100%;object-fit:contain;border-radius:.56rem}.image-preview-placeholder{color:#d3e9f0}.image-preview-error{margin:0;color:#ffd5d5;font-size:.84rem;text-align:center}.iqa-badge{display:inline-flex;align-items:center;border-radius:999px;border:1px solid transparent;padding:.2rem .56rem;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.iqa-badge-pass{color:#0f5f3a;background:#dcf7e8;border-color:#a6e4c4}.iqa-badge-fail{color:#89282c;background:#fde8ea;border-color:#f4b6bd}.iqa-badge-unknown{color:#6b4b11;background:#fef3c7;border-color:#f8d98f}.iqa-fail-overlay{position:absolute;top:0;right:0;bottom:0;left:0;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background:#fff4f580;display:flex;align-items:center;justify-content:center;border-radius:.62rem;z-index:4}.iqa-fail-overlay-badge{background:#ffffffeb;border:1px solid #f4b6bd;color:#89282c;font-size:.82rem;font-weight:600;padding:.35rem .85rem;border-radius:999px;letter-spacing:.01em;white-space:nowrap}.image-meta-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:.56rem}.image-meta-grid>div{border:1px solid #e5eff3;border-radius:.65rem;padding:.55rem;background:#fff;display:flex;flex-direction:column;gap:.22rem;min-width:0}.image-meta-grid span{color:var(--ink-muted);font-size:.75rem}.image-meta-grid strong{font-size:.84rem}.downstream-state{border:1px solid #c8dce2;border-radius:.65rem;padding:.56rem .6rem;background:#e7f6fb}.downstream-state strong{font-size:.82rem}.downstream-state p{margin-top:.3rem;font-size:.82rem;color:var(--ink-muted)}.downstream-state-skipped{border-color:#eab0b5;background:#fff2f3}.prediction-panels{display:flex;flex-direction:column;gap:.3rem}.prediction-panels .panel{border:0;background:transparent;padding:0;box-shadow:none}.prediction-panels .viewer-canvas{min-height:clamp(176px,15vw,272px)}.prediction-panels .viewer-image{max-height:100%}.compare-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;padding:clamp(.45rem,1.6vw,.9rem);display:flex;align-items:center;justify-content:center;background:#071a228f}.compare-modal{width:min(96vw,1760px);height:min(94dvh,1300px);max-height:min(94dvh,1300px);overflow:hidden;border:1px solid var(--line);border-radius:.92rem;background:#fff;box-shadow:0 24px 46px #0926304d;padding:.9rem;display:flex;flex-direction:column;gap:.66rem}.compare-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}.compare-modal-head h2{font-size:1.04rem}.compare-modal-head p{margin-top:.25rem;color:var(--ink-muted);font-size:.86rem}.compare-modal-close-btn{flex-shrink:0}.compare-modal-select-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.62rem}.compare-modal-select-grid label{display:flex;flex-direction:column;gap:.3rem;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted)}.compare-modal-select-grid select{min-height:2.2rem;border:1px solid var(--line);border-radius:.58rem;background:#fff;color:var(--ink);padding:.42rem .52rem;font-size:.84rem;font-weight:500;text-transform:none;letter-spacing:normal}.compare-modal-select-grid select:focus-visible{outline:2px solid var(--brand);outline-offset:1px;border-color:var(--brand)}.compare-side-filter-row{display:flex;flex-wrap:wrap;align-items:center;gap:.52rem .7rem}.compare-side-filter-title{font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.compare-side-filter-toggle{display:inline-flex;align-items:center;gap:.42rem;border:1px solid #c2d8e0;border-radius:999px;background:#f2f8fb;color:#1f4f5a;padding:.36rem .78rem;min-height:2rem;font-size:.88rem;font-weight:700;cursor:pointer}.compare-side-filter-toggle input{margin:0;width:.96rem;height:.96rem;accent-color:#0f6e79}.compare-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.68rem;flex:1;min-height:0;overflow:hidden}.compare-modal-image-card{border:1px solid #d4e4ea;border-radius:.72rem;background:#f7fcff;padding:.45rem;display:flex;flex-direction:column;gap:.32rem;min-width:0;min-height:0;overflow:hidden}.compare-modal-status{font-size:.78rem}.compare-modal-viewer{flex:1;min-height:0}.compare-modal-viewer .panel{border:0;box-shadow:none;background:transparent;padding:0}.compare-modal-viewer .panel-viewer{height:100%}.compare-modal-viewer .viewer-canvas{height:100%;min-height:clamp(300px,58vh,1100px);aspect-ratio:auto}.compare-modal-viewer .viewer-stage{width:100%;height:100%;max-width:100%;max-height:100%}.compare-modal-viewer .viewer-image,.compare-modal-viewer .viewer-overlay{width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}.patient-table tbody tr:hover{background:#f1f8fc}.patient-select-btn{border:0;background:transparent;color:var(--brand-strong);cursor:pointer;font-weight:700;text-decoration:underline;text-underline-offset:2px;padding:0}.patient-select-btn:hover{color:var(--brand)}.patient-select-btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:.2rem}.primary-btn,.ghost-btn{border-radius:.75rem;border:1px solid transparent;cursor:pointer;transition:transform .12s ease,background-color .12s ease,border-color .12s ease}.primary-btn{background:var(--brand);color:#fff;padding:.7rem .95rem;font-weight:600}.primary-btn:hover:not(:disabled){background:var(--brand-strong);transform:translateY(-1px)}.ghost-btn{background:transparent;color:var(--brand-strong);border-color:var(--line);padding:.55rem .85rem;font-weight:600}.ghost-btn:hover:not(:disabled){border-color:var(--brand)}button:disabled{opacity:.6;cursor:not-allowed}.actions-row{margin-top:.85rem;display:flex;gap:.7rem}.panel-admin{display:flex;flex-direction:column;gap:1rem;overflow:auto}.admin-config-actions{margin-top:0;flex-wrap:wrap;justify-content:flex-end}.admin-config-summary-bar{display:flex;flex-direction:column;gap:.28rem;padding:.85rem .95rem;border:1px solid var(--line);border-radius:.85rem;background:var(--surface-soft)}.admin-config-root-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:.9rem}.admin-config-section-card,.admin-config-entry{border:1px solid var(--line);border-radius:.85rem;background:#f8fcfe;padding:.85rem;display:flex;flex-direction:column;gap:.75rem}.admin-config-section-body,.admin-config-list,.admin-config-entry-body{display:flex;flex-direction:column;gap:.75rem}.admin-config-entry-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.65rem .85rem}.admin-config-entry-title-wrap{min-width:min(100%,220px);flex:1 1 280px;display:flex;flex-direction:column;gap:.26rem}.admin-config-entry-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:flex-start;justify-content:flex-end}.admin-config-entry-meta{color:var(--ink-muted);font-size:.82rem}.admin-config-array-index{font-weight:700;color:#114c58}.admin-config-key-input,.admin-config-text-input,.admin-config-textarea,.admin-config-number-input,.admin-config-type-field select{width:100%;border:1px solid var(--line);border-radius:.7rem;background:#fff;color:var(--ink);padding:.52rem .68rem}.admin-config-key-input{min-height:2.5rem;font-size:.98rem;font-weight:700}.admin-config-text-input,.admin-config-number-input,.admin-config-type-field select{min-height:2.35rem}.admin-config-textarea{min-height:7rem;resize:vertical}.admin-config-key-input:focus-visible,.admin-config-text-input:focus-visible,.admin-config-textarea:focus-visible,.admin-config-number-input:focus-visible,.admin-config-type-field select:focus-visible{outline:2px solid var(--brand);outline-offset:1px;border-color:var(--brand)}.admin-config-type-field{min-width:11rem;display:flex;flex-direction:column;gap:.28rem}.admin-config-type-field span{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.admin-config-boolean-field{min-height:2.35rem;width:fit-content;display:inline-flex;align-items:center;gap:.55rem;padding:.55rem .75rem;border:1px solid var(--line);border-radius:.7rem;background:#fff;font-weight:600}.admin-config-boolean-field input{width:1rem;height:1rem;margin:0}.admin-config-null-value{margin:0;padding:.8rem;border:1px dashed #b8d0da;border-radius:.75rem;background:#fff;color:var(--ink-muted);font-style:italic}.admin-config-add-btn{align-self:flex-start}.admin-config-mini-btn{border-radius:.65rem;padding:.42rem .68rem;font-size:.82rem}.admin-config-danger-btn{color:#9c3d3d;border-color:#dfb9b9}.admin-config-danger-btn:hover:not(:disabled){background:#fff4f4;border-color:#cd7c7c}.admin-config-loading{border:1px dashed var(--line);border-radius:.85rem;background:#f9fcfd;padding:1rem;color:var(--ink-muted)}.panel-admin-v2{display:flex;flex-direction:column;gap:1rem;overflow:auto}.admin-page-actions{margin-top:0;flex-wrap:wrap;justify-content:flex-end}.admin-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}.admin-kpi-card{padding:.9rem 1rem;border-radius:.95rem;border:1px solid #c7dde3;background:linear-gradient(180deg,#fffffffa,#f1f8fafa),radial-gradient(circle at top right,rgba(15,110,121,.14),transparent 45%);box-shadow:0 10px 24px #11394414}.admin-kpi-card strong{display:block;margin-top:.4rem;font-size:1.8rem;line-height:1}.admin-kpi-card p{margin-top:.45rem;color:var(--ink-muted)}.admin-kpi-label{color:var(--brand-strong);font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.admin-status-card{padding:.95rem 1rem;border-radius:.95rem;border:1px solid var(--line);background:linear-gradient(180deg,#f7fbfc,#eef6f8);display:flex;align-items:center;justify-content:space-between;gap:.9rem}.admin-status-card strong{display:block;margin-bottom:.2rem}.admin-status-card p{color:var(--ink-muted)}.admin-status-card.is-dirty{border-color:#e3c57b;background:linear-gradient(180deg,#fffaf0,#fff4d8)}.admin-status-pill{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:5rem;padding:.48rem .72rem;border-radius:999px;background:#dff1f3;color:#0a5a63;font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.admin-status-pill.is-dirty{background:#fff0c4;color:#8a5a03}.admin-layout-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.85fr);gap:1rem;align-items:start}.admin-editor-stack{min-width:0;display:flex;flex-direction:column;gap:1rem}.admin-preview-panel{position:sticky;top:0;align-self:start}.admin-section-card,.admin-preview-card{border:1px solid var(--line);border-radius:1rem;background:#fffffff0;box-shadow:0 18px 38px #11394414;padding:1rem}.admin-preview-card{display:flex;flex-direction:column;gap:1rem}.admin-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.85rem}.admin-section-head p,.admin-section-head-inline p{color:var(--ink-muted)}.admin-section-head-inline{align-items:center}.admin-card-list{display:flex;flex-direction:column;gap:.9rem}.admin-entity-card{border:1px solid #d6e6eb;border-radius:.95rem;background:linear-gradient(180deg,#fcfeff,#f3fafc);padding:.95rem;display:flex;flex-direction:column;gap:.85rem}.admin-entity-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.85rem}.admin-entity-title-group{display:flex;align-items:center;gap:.8rem;min-width:0}.admin-entity-title-group h4,.admin-section-head h3,.admin-preview-card h3,.admin-preview-group h4{margin:0}.admin-entity-title-group p{margin-top:.22rem;color:var(--ink-muted);font-size:.84rem;letter-spacing:.03em}.admin-entity-actions,.admin-option-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.admin-mini-btn{border-radius:.68rem;padding:.44rem .7rem;font-size:.82rem}.admin-danger-btn{color:#9a4040;border-color:#e2b4b4}.admin-danger-btn:hover:not(:disabled){background:#fff4f4;border-color:#cb7b7b}.admin-fields-grid{display:grid;gap:.8rem}.admin-fields-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-fields-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-fields-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-field{min-width:0;display:flex;flex-direction:column;gap:.35rem}.admin-field>span{color:var(--ink-muted);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.admin-field-wide{grid-column:1 / -1}.admin-text-input,.admin-select,.admin-textarea{width:100%;border:1px solid var(--line);border-radius:.72rem;background:#fff;color:var(--ink);padding:.58rem .72rem}.admin-textarea{resize:vertical;min-height:6rem}.admin-text-input:focus-visible,.admin-select:focus-visible,.admin-textarea:focus-visible{outline:2px solid var(--brand);outline-offset:1px;border-color:var(--brand)}.admin-input-invalid{border-color:#c76060;background:#fff4f4}.admin-field-note{color:var(--ink-muted);font-size:.77rem}.admin-combobox,.admin-combobox-input-row{position:relative}.admin-combobox-input{padding-right:5rem}.admin-combobox-clear,.admin-combobox-toggle{position:absolute;top:50%;transform:translateY(-50%);width:2rem;height:2rem;border:0;border-radius:.55rem;background:transparent;color:var(--ink-muted);cursor:pointer}.admin-combobox-clear{right:2.45rem;font-size:1.1rem;line-height:1}.admin-combobox-toggle{right:.45rem}.admin-combobox-clear:hover:not(:disabled),.admin-combobox-toggle:hover:not(:disabled){background:#eef6f6;color:var(--ink)}.admin-combobox-clear:focus-visible,.admin-combobox-toggle:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.admin-combobox-clear:disabled,.admin-combobox-toggle:disabled{cursor:default;opacity:.45}.admin-combobox-chevron{display:inline-block;transition:transform .16s ease}.admin-combobox-chevron.is-open{transform:rotate(180deg)}.admin-combobox-menu{position:absolute;top:calc(100% + .4rem);left:0;right:0;z-index:20;max-height:15rem;overflow-y:auto;border:1px solid var(--line);border-radius:.9rem;background:#fff;box-shadow:0 18px 36px #122e361f;padding:.35rem}.admin-combobox-option,.admin-combobox-empty{width:100%;display:block;padding:.7rem .8rem;border:0;border-radius:.7rem;background:transparent;color:var(--ink);text-align:left;font:inherit}.admin-combobox-option{cursor:pointer}.admin-combobox-option:hover,.admin-combobox-option:focus-visible,.admin-combobox-option.is-active{background:#eef6f6;outline:none}.admin-combobox-empty{color:var(--ink-muted)}.admin-inline-toggle-row{display:flex;flex-wrap:wrap;gap:.7rem}.admin-toggle-pill{width:fit-content;display:inline-flex;align-items:center;gap:.55rem;padding:.52rem .8rem;border:1px solid var(--line);border-radius:999px;background:#fff;font-weight:600}.admin-toggle-pill input{width:1rem;height:1rem;margin:0}.admin-color-grid{display:grid;grid-template-columns:minmax(0,1.2fr) repeat(3,minmax(0,1fr));gap:.8rem;align-items:end}.admin-color-preview{min-height:100%;border:1px solid var(--line);border-radius:.85rem;background:#fff;padding:.8rem;display:flex;align-items:center;gap:.7rem}.admin-color-preview p{color:var(--ink-muted)}.admin-color-swatch{width:1rem;height:1rem;border-radius:999px;border:1px solid rgba(18,46,54,.18);display:inline-block;flex-shrink:0}.admin-color-swatch.is-large{width:2rem;height:2rem}.admin-option-block{display:flex;flex-direction:column;gap:.8rem}.admin-option-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:.75rem;align-items:end;padding:.8rem;border:1px solid var(--line);border-radius:.85rem;background:#fff}.admin-empty-note{margin:0;padding:.82rem .9rem;border:1px dashed #c8dce2;border-radius:.85rem;background:#f8fcfd;color:var(--ink-muted)}.admin-preview-group{display:flex;flex-direction:column;gap:.7rem}.admin-preview-group+.admin-preview-group{padding-top:.95rem;border-top:1px solid #d8e7ec}.admin-preview-copy{color:var(--ink-muted)}.admin-preview-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.admin-preview-summary-grid>div{padding:.75rem;border-radius:.8rem;background:#f4fafc;border:1px solid #d6e7ec}.admin-preview-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.admin-preview-list li{display:flex;justify-content:space-between;gap:.6rem;flex-wrap:wrap;padding:.7rem .8rem;border-radius:.8rem;border:1px solid #dbe9ed;background:#fff}.admin-preview-list li small{color:var(--ink-muted)}.admin-preview-chip-list{display:flex;flex-wrap:wrap;gap:.5rem}.admin-preview-chip{display:inline-flex;align-items:center;gap:.45rem;padding:.38rem .65rem;border-radius:999px;background:#e6f4f7;color:#0d5a64;font-weight:700}.admin-preview-chip.is-neutral{background:#eef4f6;color:var(--ink)}.admin-preview-chip-dot{width:.55rem;height:.55rem;border-radius:999px;display:inline-block}.admin-preview-question-list{display:flex;flex-direction:column;gap:.75rem}.admin-preview-question{border:1px solid #dbe9ed;border-radius:.85rem;background:#fff;padding:.8rem;display:flex;flex-direction:column;gap:.55rem}.admin-preview-question-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.6rem}.admin-preview-question-head span{color:var(--ink-muted);font-size:.8rem;text-transform:capitalize}.admin-json-preview{padding-top:.1rem}.admin-json-preview summary{cursor:pointer;font-weight:700}.admin-json-preview pre{margin:.75rem 0 0;padding:.85rem;max-height:22rem;overflow:auto;border-radius:.85rem;background:#0f2026;color:#e7f4f6;font-size:.8rem;line-height:1.45}.file-meta{margin-top:.9rem;background:var(--surface-soft);border:1px solid var(--line);border-radius:.75rem;padding:.8rem;font-size:.92rem;word-break:break-all}.error-box{margin-top:.85rem;border:1px solid var(--error-line);border-radius:.8rem;background:var(--error-bg);padding:.75rem;display:flex;flex-direction:column;gap:.35rem;font-size:.9rem}.warning-text{margin-top:.7rem;color:#89282c;font-size:.85rem}.hidden-input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.viewer-canvas{position:relative;background:#0f252d;border-radius:.75rem;min-height:clamp(220px,20vw,360px);width:100%;max-width:min(1280px,100%);margin-inline:auto;padding:clamp(.2rem,.7vw,.45rem);border:1px solid rgba(39,69,81,.72);display:flex;align-items:center;justify-content:center;overflow:hidden}.viewer-top-left-stack{position:absolute;top:clamp(.55rem,1.5vw,.8rem);left:clamp(.55rem,1.5vw,.8rem);z-index:5;display:inline-flex;flex-direction:column;align-items:flex-start;gap:.45rem}.viewer-zoom-toolbar{display:inline-flex;flex-direction:column;gap:.45rem}.viewer-floating-badge{position:absolute;top:clamp(.55rem,1.5vw,.8rem);right:clamp(.55rem,1.5vw,.8rem);z-index:5;pointer-events:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.viewer-floating-meta{position:static;pointer-events:none;display:inline-flex;flex-direction:column;align-items:flex-start;gap:.08rem;border-radius:.58rem;padding:.32rem .48rem;border:1px solid rgba(145,184,196,.52);background:#091c249e;color:#deeff5;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.viewer-floating-meta strong{font-size:.78rem;letter-spacing:.03em}.viewer-floating-meta span{font-size:.72rem}.viewer-zoom-btn{width:2.15rem;height:2.15rem;border:1px solid #355662;border-radius:.65rem;background:#0e2630eb;color:#d9eef5;cursor:pointer;display:grid;place-items:center;transition:background-color .12s ease,border-color .12s ease,transform .12s ease}.viewer-zoom-btn:hover:not(:disabled){background:#143e4cf5;border-color:#4b7b8c;transform:translateY(-1px)}.viewer-zoom-btn:disabled{opacity:.45;cursor:not-allowed}.viewer-zoom-btn svg{width:1.12rem;height:1.12rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.viewer-canvas.is-pannable{cursor:grab;touch-action:none}.viewer-canvas.is-pannable.is-dragging{cursor:grabbing}.viewer-stage{position:relative;object-fit:cover;max-width:100%;transform-origin:center;transition:transform .15s ease}.viewer-stage.is-dragging{transition:none}.viewer-image,.viewer-overlay{display:block;object-fit:contain}.viewer-image{width:auto;max-width:min(100%,1320px);height:auto;max-height:100%}.viewer-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.viewer-empty{color:#c8d8de;text-align:center;font-size:1rem;max-width:380px}.viewer-pan-hint{margin-top:.4rem;color:var(--ink-muted);text-align:center;font-size:.78rem}.controls-grid{margin-top:1rem;display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:.8rem;max-width:none;margin-inline:auto}.controls-grid label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;color:var(--ink-muted)}.controls-grid input[type=range]{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:4px;border-radius:999px;background:#c7d7df;outline:none}.controls-grid input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;border:0;border-radius:50%;background:var(--brand);cursor:pointer}.controls-grid input[type=range]::-moz-range-track{height:4px;border:0;border-radius:999px;background:#c7d7df}.controls-grid input[type=range]::-moz-range-thumb{width:12px;height:12px;border:0;border-radius:50%;background:var(--brand);cursor:pointer}.overlay-global-controls .overlay-global-opacity-grid{margin-top:0;width:auto;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.35rem .55rem}.patient-exam-toolbar .overlay-global-controls{grid-area:slider;width:max-content;margin-left:auto;justify-self:end;align-items:flex-end}.overlay-global-controls .overlay-global-opacity-grid label{font-size:.76rem;gap:.2rem;text-align:right;align-items:flex-end}.overlay-global-controls .overlay-global-opacity-grid input[type=range]{width:clamp(104px,9vw,144px);height:4px;max-width:100%;border-radius:999px;background:transparent;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.overlay-global-controls .overlay-global-opacity-grid input[type=range]::-webkit-slider-runnable-track{height:4px;border:0;border-radius:999px;background:linear-gradient(90deg,#d4e8ef,#9dc4d2)}.overlay-global-controls .overlay-global-opacity-grid input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;margin-top:-4px;border:2px solid #fff;border-radius:50%;background:#0f6e79;box-shadow:0 0 0 1px #0d455133,0 2px 5px #0a364038;cursor:pointer}.overlay-global-controls .overlay-global-opacity-grid input[type=range]::-moz-range-track{height:4px;border:0;border-radius:999px;background:linear-gradient(90deg,#d4e8ef,#9dc4d2)}.overlay-global-controls .overlay-global-opacity-grid input[type=range]::-moz-range-thumb{width:12px;height:12px;border:2px solid #fff;border-radius:50%;background:#0f6e79;box-shadow:0 0 0 1px #0d455133,0 2px 5px #0a364038;cursor:pointer}.overlay-global-controls .overlay-global-opacity-grid input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 1px #0d455140,0 0 0 3px #0f6e794d}.overlay-global-controls .overlay-global-opacity-grid input[type=range]:focus-visible::-moz-range-thumb{box-shadow:0 0 0 1px #0d455140,0 0 0 3px #0f6e794d}.overlay-toggle{display:inline-flex;gap:.5rem;align-items:center;font-size:.88rem}.overlay-toggle-pill{min-width:0}.overlay-toggle-row{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.metric-grid{margin-top:.85rem;display:grid;grid-template-columns:1fr;gap:.65rem}.metric-grid>div{border:1px solid var(--line);border-radius:.75rem;padding:.7rem;background:#f8fcfe;display:flex;flex-direction:column;gap:.25rem}.metric-grid span{color:var(--ink-muted);font-size:.82rem}.metric-grid strong{font-size:.96rem}.risk-gauge{margin-top:.85rem;border:1px solid var(--line);border-radius:.75rem;padding:.75rem;background:#f8fcfe}.risk-gauge-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:.55rem}.risk-gauge-head span{color:var(--ink-muted);font-size:.82rem}.risk-gauge-head strong{font-size:.96rem}.risk-gauge-track{position:relative;display:grid;grid-template-columns:1fr 1fr 1fr;border-radius:999px;overflow:hidden;height:16px}.risk-gauge-band{display:block;height:100%}.risk-gauge-band-green{background:#2e7d32}.risk-gauge-band-orange{background:#ef6c00}.risk-gauge-band-red{background:#c62828}.risk-gauge-marker{position:absolute;top:-4px;bottom:-4px;width:2px;transform:translate(-1px);background:#fff;box-shadow:0 0 0 1px #0c203059}.risk-gauge-scale{margin-top:.4rem;display:flex;justify-content:space-between;color:var(--ink-muted);font-size:.75rem}.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.audit-block{margin-top:1rem;border-top:1px solid var(--line);padding-top:.85rem}.audit-block h3{margin-bottom:.5rem;font-size:.95rem}.placeholder-text{color:var(--ink-muted)}.login-shell{min-height:100dvh;display:grid;place-items:center;padding:1.5rem}.login-card{width:min(680px,100%);background:var(--surface);border-radius:1rem;border:1px solid var(--line);box-shadow:var(--shadow);padding:2rem;display:flex;flex-direction:column;gap:1rem}.login-card h1{font-size:clamp(1.6rem,2.3vw,2.2rem)}.login-card p{font-size:1.02rem;line-height:1.55}.login-card .primary-btn{align-self:flex-start;min-height:2.9rem;padding:.8rem 1.2rem;font-size:1rem}.login-research-banner{margin:0;padding:.65rem .85rem;border-radius:.65rem;border:1px solid #f4b6bd;background:#fde8ea;color:#89282c;font-weight:700;letter-spacing:.01em}.login-acknowledgement{display:flex;align-items:flex-start;gap:.65rem;font-size:.95rem;line-height:1.45;color:var(--ink-muted)}.login-acknowledgement input{margin-top:.2rem}.login-card .warning-text{font-size:.95rem}@media (max-width: 1360px){.layout-grid{grid-template-columns:minmax(260px,1fr) minmax(0,1.8fr)}.panel-summary{grid-column:span 2}}@media (max-width: 880px){.app-shell{padding-inline:.8rem}.top-bar{grid-template-columns:auto minmax(0,1fr) auto;gap:.6rem;padding:.82rem .92rem}.top-bar-left{gap:.5rem}.brand-mark-link{display:none}.top-bar h1{font-size:clamp(.95rem,2.2vw,1.1rem)}.user-block{gap:.4rem}.user-name{max-width:8.8rem;overflow:hidden;text-overflow:ellipsis}.layout-grid{grid-template-columns:1fr}.panel-summary{grid-column:auto}.panel-controls{position:static}.upload-slot-grid,.controls-grid{grid-template-columns:1fr}.overlay-toggle-row{width:100%;justify-content:flex-start}.prediction-panels .viewer-canvas{min-height:clamp(220px,62vw,360px);max-height:none}.prediction-panels .viewer-image{max-height:100%}.workspace-actions{width:100%;justify-content:flex-start}.admin-config-actions,.admin-config-entry-actions{justify-content:flex-start}.admin-config-type-field{width:100%;min-width:0}.admin-config-boolean-field{width:100%;justify-content:flex-start}.patient-exam-toolbar{grid-template-columns:1fr;grid-template-areas:"patient" "overlay" "compare" "exam" "slider"}.patient-toolbar-row-top,.patient-toolbar-row-bottom{grid-column:1;width:100%;max-width:100%;margin-left:0;justify-content:flex-start}.patient-toolbar-row-bottom{justify-content:flex-start;align-items:flex-start}.patient-meta-group{width:100%;margin-left:0;align-items:flex-start}.compare-open-row{width:100%;margin-left:0;justify-content:flex-start}.compare-open-btn{margin-left:0}.overlay-toggle-row-with-exam{grid-column:auto;width:100%;margin-left:0;margin-right:0;justify-content:flex-start}.overlay-global-controls{grid-column:auto;width:100%;max-width:100%;margin-left:0;margin-right:0;align-items:flex-start}.patient-exam-toolbar .overlay-global-controls{grid-column:auto;width:100%;margin-left:0;justify-self:stretch;align-items:flex-start}.exam-select-field{width:auto;max-width:100%}.exam-select-field select{width:min(100%,184px)}.eye-columns,.summary-eye-grid,.eye-summary-row,.summary-inline-item-severity{grid-template-columns:1fr}.dr-softmax-level-row{gap:.2rem .3rem}.dr-softmax-level-chip{font-size:.7rem;padding:.08rem .34rem}.severity-gauge{margin-left:0}.summary-eye-grid .eye-summary-panel{align-items:flex-start;gap:.3rem;flex-direction:column}.image-meta-grid{grid-template-columns:1fr}.compare-modal{width:min(98vw,720px);height:min(96dvh,980px);max-height:min(96dvh,980px);overflow:auto;padding:.82rem}.compare-modal-select-grid,.compare-modal-grid{grid-template-columns:1fr}.compare-modal-grid{overflow:visible}.compare-side-filter-row{align-items:flex-start;flex-direction:column;gap:.42rem}.compare-modal-viewer .viewer-canvas{min-height:clamp(240px,54vw,430px)}.compare-modal-head{flex-direction:column}}@media (max-width: 1180px){.admin-layout-grid{grid-template-columns:minmax(0,1fr)}.admin-preview-panel{position:static}.admin-kpi-grid,.admin-fields-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 820px){.admin-kpi-grid,.admin-fields-grid-2,.admin-fields-grid-3,.admin-fields-grid-4,.admin-color-grid,.admin-preview-summary-grid,.admin-option-row{grid-template-columns:minmax(0,1fr)}.admin-status-card,.admin-page-head,.admin-section-head,.admin-entity-head,.admin-preview-question-head{flex-direction:column;align-items:stretch}.admin-page-actions,.admin-entity-actions,.admin-option-actions{justify-content:flex-start}.admin-toggle-pill{width:100%;justify-content:flex-start}}
