@font-face{font-family:Pretendard;src:url('./assets/Pretendard-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Pretendard;src:url('./assets/Pretendard-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{
  font-family:Pretendard,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-synthesis:none;color:#1c2431;background:#f6f7f9;
  --ink:#1c2431;--primary:#202a35;--muted:#697582;--line:#e7eaef;
  --green:#239c77;--amber:#dfa64a;--purple:#8185cc;--accent:#cbef87;
  --radius:14px;--shadow:0 3px 12px #1c243104;
}
*{box-sizing:border-box}
body{margin:0;font-size:1rem;line-height:1.6}
button,input,select{font:inherit}
button,a,input,select{-webkit-tap-highlight-color:transparent}
button{cursor:pointer;border:0}
button,a{touch-action:manipulation}
a{color:inherit;text-decoration:none}
button:disabled{cursor:default;opacity:.38}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #54af8d;outline-offset:3px}
svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
h1,h2,h3,p,figure{margin:0}
h1{font-size:2rem;letter-spacing:-1.05px;line-height:1.35;font-weight:700}
h2{font-size:1.0625rem;letter-spacing:-.35px;line-height:1.5}
h3{font-size:1rem;line-height:1.5}
small{font-size:.8125rem}
hr{border:0;border-top:1px solid var(--line);margin:26px 0}
.skip-link{position:fixed;top:-100px;left:16px;z-index:200;background:white;padding:12px 18px;border-radius:8px}
.skip-link:focus{top:16px}
.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;border:0;clip:rect(0,0,0,0);overflow:hidden}

/* Workspace */
.shell{display:grid;grid-template-columns:224px minmax(0,1fr);min-height:100vh}
.sidebar{background:white;border-right:1px solid var(--line);position:sticky;top:0;height:100vh;height:100dvh;display:flex;flex-direction:column;padding:28px 16px 20px;z-index:50;overflow-y:auto}
.brand{display:flex;align-items:center;gap:10px;padding:0 9px;margin-bottom:34px}
.brand-icon{width:36px;height:38px;display:grid;place-items:center;color:#263b24;background:var(--accent);border-radius:11px 11px 11px 3px}
.brand-icon svg{width:24px;height:24px;stroke-width:1.8}
.brand strong{font-size:1.125rem;letter-spacing:-.5px;line-height:1.25;display:block}
.brand small{display:block;color:#677382;font-size:.75rem;line-height:1.4;margin-top:3px}
.workspace-card{display:flex;align-items:center;gap:11px;padding:12px;margin:0 4px 28px;border:1px solid var(--line);border-radius:10px}
.workspace-symbol{display:grid;place-items:center;flex:0 0 32px;height:32px;font-size:.75rem;font-weight:700;background:#f0f2f5;border-radius:8px;color:#626f7d}
.workspace-card strong{display:block;font-size:.875rem;line-height:1.3}
.workspace-card small{display:block;font-size:.75rem;line-height:1.4;color:#677382;margin-top:3px}
.nav-label{font-size:.75rem;color:#677382;margin:0 14px 10px;font-weight:400}
.secondary-label{margin-top:30px}
.nav{display:flex;flex-direction:column;gap:5px}
.nav a{display:flex;align-items:center;gap:11px;min-height:45px;padding:11px 13px;border-radius:8px;color:#677382;font-size:.875rem;transition:background .18s,color .18s}
.nav a>svg{width:18px;height:18px;stroke-width:1.6}
.nav a>span{flex:1}
.nav a>span+svg{width:13px;height:13px;color:#a9c095}
.nav a:hover{background:#f5f6f8;color:#1f2937}
.nav a[aria-current=page]{background:#25302f;color:#f4f7f2;font-weight:700}
.nav a[aria-current=page]>svg:first-child{color:var(--accent)}
.sidebar-bottom{margin-top:auto;padding:35px 13px 0}
.sidebar-context{display:flex;align-items:center;gap:8px;font-size:.8125rem;color:#677382}
.sidebar-context svg{width:16px;height:16px;color:#677382}
.sidebar-bottom p{font-size:.75rem;color:#677382;margin-top:6px}
.version{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;margin-top:23px;font-size:.75rem;color:#677382;letter-spacing:.4px}
.workspace{min-width:0}
.topbar{min-height:72px;background:#ffffffc9;border-bottom:1px solid var(--line);padding:16px 34px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.breadcrumb{display:flex;align-items:center;gap:12px;font-size:.8125rem;color:#677382}
.breadcrumb b{font-weight:400;color:#485364;font-size:.875rem}
.breadcrumb svg{width:12px;height:12px;color:#677382}
.top-meta{display:flex;align-items:center;gap:13px}
.workspace-label{font-size:.8125rem;color:#677382}
.avatar{width:31px;height:31px;display:grid;place-items:center;border:1px solid #e0e5dc;background:#f1f6e9;border-radius:50%;font-size:.75rem;font-weight:700;color:#56664a}
.menu-button{display:none;padding:7px;background:transparent;color:#53606b}
.main{max-width:1560px;margin:0 auto;padding:32px 34px 24px;min-width:0}
.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:30px}
.subtitle{font-size:.9375rem;color:#677382;margin-top:7px;letter-spacing:-.15px}
.actions{display:flex;align-items:center;gap:14px;flex-shrink:0;flex-wrap:wrap}
.crop-tabs{display:inline-flex;align-items:center;padding:4px;background:#eceff2;border:1px solid #e4e8ed;border-radius:9px;gap:2px}
.crop-tabs button{background:transparent;color:#677382;font-size:.875rem;line-height:1.4;padding:8px 14px;border-radius:6px;min-height:35px;white-space:nowrap;transition:background .16s,color .16s}
.crop-tabs button:hover{color:#24372c}
.crop-tabs button[aria-pressed=true]{background:white;color:#25342c;box-shadow:0 1px 4px #21312212;font-weight:700}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 15px;min-height:43px;border:1px solid #e1e5eb;border-radius:8px;background:#fff;color:#526070;font-size:.875rem;font-weight:700;white-space:nowrap;transition:background .16s,border-color .16s,box-shadow .16s}
.btn:hover{background:#f9fafb;border-color:#c7ced7;box-shadow:0 2px 5px #1c243106}
.btn.primary{background:#25342e;border-color:#25342e;color:#fff;box-shadow:0 2px 4px #182d2010}
.btn.primary:hover{background:#354d3e;border-color:#354d3e}
.btn svg{width:16px;height:16px;stroke-width:1.8}
.btn.small{min-height:34px;padding:7px 10px;font-size:.8125rem;font-weight:400}
.btn.icon-only{padding:8px;min-height:34px}
.select{appearance:auto;border:1px solid #e2e6ec;border-radius:8px;min-height:43px;padding:10px 32px 10px 12px;font-size:.875rem;color:#596676;background:white;max-width:100%}
.text-button{display:inline-flex;align-items:center;gap:4px;border:0;padding:5px 0;background:transparent;color:#586c5a;font-size:.8125rem;white-space:nowrap;transition:color .16s}
.text-button:hover{color:#1b6a4e}
.text-button svg{width:13px;height:13px}

/* The four primary metrics share one surface. */
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:white;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:24px;box-shadow:var(--shadow);overflow:hidden}
.kpi{min-width:0;padding:23px 26px;border-right:1px solid var(--line)}
.kpi:last-child{border-right:0}
.kpi-top{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.875rem;color:#677382}
.kpi-top svg{width:17px;height:17px;color:#677382;stroke-width:1.5}
.kpi-value{display:flex;align-items:baseline;gap:6px;font-size:2.5rem;font-weight:700;letter-spacing:-1.3px;line-height:1.1;margin:17px 0 12px;font-variant-numeric:tabular-nums}
.kpi-value span{font-size:.9375rem;font-weight:400;color:#677382;letter-spacing:0}
.kpi-featured .kpi-value{color:#227657}
.kpi-featured .kpi-top svg{color:#677382}
.kpi-footer{font-size:.8125rem;color:#677382;line-height:1.6}

/* Analysis panels */
.grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,1fr);gap:24px;align-items:stretch}
.grid.equal{grid-template-columns:repeat(2,minmax(0,1fr))}
.section-gap{margin-top:24px}
.panel{min-width:0;background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:22px 24px 18px}
.panel-head>div{min-width:0}
.panel-head p{font-size:.8125rem;color:#677382;line-height:1.6;margin-top:4px}
.panel-head .text-button{flex-shrink:0}
.panel-body{padding:0 24px 22px}
.tag{display:inline-flex;align-items:center;padding:4px 8px;border:1px solid #e8ebf0;border-radius:5px;background:#f8f9fb;color:#677382;font-size:.75rem;line-height:1.5;white-space:nowrap}
.imaging-panel{display:flex;flex-direction:column;background:#1d282e;border-color:#1d282e;color:#eef3f4;min-height:342px;box-shadow:0 4px 12px #1d282e09}
.imaging-panel h2{color:#f0f4f2}
.imaging-panel .panel-head p{color:#83969d}
.imaging-panel .panel-head .btn{border-color:#405056;background:#29363c;color:#c0cfce}
.imaging-panel .panel-head .btn:hover{background:#36494d;border-color:#637674}
.signal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:5px 24px 18px;align-items:center;flex:1}
.signal-view{min-width:0}
.signal-image{position:relative;width:100%;aspect-ratio:1;overflow:hidden;border-radius:8px;background:#020506;border:1px solid #415157}
.signal-image img{position:absolute;width:437.6923077%;height:223.0769231%;max-width:none;display:block}
.signal-view figcaption{display:flex;justify-content:space-between;gap:6px;font-size:.75rem;color:#9eafb4;margin-top:9px}
.signal-number{color:#93a5aa;font-variant-numeric:tabular-nums}
.image-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 24px;padding:12px 0 14px;border-top:1px solid #36464b;font-size:.75rem;color:#9db0b4}
.image-caption>span:first-child{display:flex;align-items:center;gap:7px}
.image-caption svg{width:13px;height:13px}
.empty-image{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px;gap:10px;color:#8ba0a7;flex:1}
.empty-image>svg{width:34px;height:34px;color:#607e87;margin-bottom:10px}
.empty-image h3{color:#c5d4d6;font-weight:400}
.empty-image p{font-size:.875rem}
.distribution-panel .panel-body{display:flex;flex-direction:column}
.class-stack{display:flex;gap:4px;height:12px;border-radius:4px;overflow:hidden;margin:4px 0 15px}
.class-stack span{min-width:0}
.class-color-0{background:var(--green)}
.class-color-1{background:var(--amber)}
.class-color-2{background:var(--purple)}
.class-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:61px;border-bottom:1px solid #edf0f3}
.class-row:last-child{border-bottom:0}
.legend-label{display:flex;align-items:center;gap:9px;font-size:.875rem;color:#596572}
.legend-label i{display:inline-block;width:8px;height:8px;border-radius:2px;flex-shrink:0}
.class-quantity{display:flex;align-items:center;gap:20px;font-variant-numeric:tabular-nums}
.class-quantity strong{font-size:1.0625rem;letter-spacing:-.25px}
.class-quantity strong small{font-size:.75rem;margin-left:5px;color:#677382;font-weight:400}
.class-quantity>span{font-size:.8125rem;color:#677382;width:46px;text-align:right}
.distribution-foot{display:flex;justify-content:space-between;gap:10px;padding-top:14px;margin-top:10px;border-top:1px solid var(--line);font-size:.75rem;color:#677382}

/* Tables and filters */
.table-wrap{width:100%;overflow:auto}
table{border-collapse:collapse;width:100%;font-size:.875rem;text-align:left;white-space:nowrap}
th{font-weight:400}
thead{background:#f9fafb;color:#677382;font-size:.8125rem}
thead th{border-top:1px solid #edf0f4;border-bottom:1px solid #edf0f4;padding:12px 24px}
td,tbody th{padding:16px 24px;border-bottom:1px solid #eef0f4;color:#677382;font-weight:400}
tbody tr:last-child td,tbody tr:last-child th{border-bottom:0}
tbody tr.clickable:hover{background:#fafcfb}
td strong{font-weight:700;color:#495968}
.num{text-align:right;font-variant-numeric:tabular-nums}
.mono,td.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.8125rem;color:#586675}
.text-wrap{white-space:normal;min-width:160px}
.badge{display:inline-flex;align-items:center;font-size:.875rem;line-height:1.5;padding:4px 9px;border-radius:5px;white-space:nowrap;font-weight:400}
.badge.c0{color:#357963;background:#ecf6f2}
.badge.c1{color:#896514;background:#fcf6ea}
.badge.c2{color:#61649a;background:#f1f1f9}
.outcome{display:inline-flex;align-items:center;gap:5px;font-size:.8125rem;color:#677382}
.outcome svg{width:13px;height:13px}
.outcome.error{color:#896514}
.table-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--line);padding:15px 24px;color:#677382;font-size:.8125rem}
.pagination{display:flex;align-items:center;gap:14px}
.pagination button{display:grid;place-items:center;width:30px;height:30px;border-radius:6px;border:1px solid #e2e7ed;background:white;color:#677382}
.pagination button:hover:enabled{background:#f2f5f8}
.pagination svg{width:14px;height:14px}
.page-total{white-space:nowrap;font-variant-numeric:tabular-nums}
.filters{display:flex;gap:10px;flex-wrap:wrap;padding:3px 24px 22px}
.search{flex:1;min-width:190px;position:relative}
.search svg{position:absolute;top:13px;left:13px;width:17px;height:17px;color:#677382}
.search input{width:100%;min-height:43px;background:white;border:1px solid #e2e6ec;border-radius:8px;padding:10px 12px 10px 39px;font-size:.875rem;color:#576676}
.search input::placeholder{color:#677382}
.filter-context{padding:0 24px 18px;font-size:.875rem;color:#677382}
.filter-context button{margin-left:12px}
.no-results{padding:65px 24px;text-align:center;color:#677382}
.no-results h3{font-weight:400}
.no-results p{margin:8px 0 20px;font-size:.875rem}
.comparison-table th:first-child{width:30%}
.comparison-table td,.comparison-table tbody th{padding-top:17px;padding-bottom:17px}
.crop-cell{display:flex;align-items:center;gap:12px;color:#556273;font-weight:700}
.crop-cell>span:last-child small{display:block;font-size:.75rem;font-weight:400;color:#677382;line-height:1.3;margin-top:2px}
.crop-mark{display:grid;place-items:center;width:33px;height:36px;border:1px solid #ede5e2;border-radius:9px;font-size:.8125rem;color:#677382;background:#faf4f1;flex-shrink:0}
.crop-mark.lettuce{color:#677382;background:#f4f7ee;border-color:#e5ebda}
.table-unit{font-size:.75rem;color:#677382;margin-left:4px}
.accuracy-track{display:block;height:3px;max-width:66px;margin:6px 0 0 auto;background:#edf1ef;border-radius:3px;overflow:hidden}
.accuracy-track>span{display:block;height:100%;background:#87b197;border-radius:3px}
.stats-note{padding:12px 24px;border-top:1px solid var(--line);font-size:.75rem;color:#677382}
.mini-stat{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #edf0f3}
.mini-stat:last-of-type{border-bottom:0}
.error-pair{display:inline-flex;align-items:center;gap:6px}
.error-pair>svg{color:#677382;width:13px;height:13px}
.mini-stat b{font-size:1rem;line-height:1.5;font-variant-numeric:tabular-nums;color:#677382;white-space:nowrap}
.mini-stat b small{font-size:.75rem;margin-left:5px;font-weight:400;color:#677382}
.recall-note{display:flex;align-items:center;justify-content:space-between;padding:11px 13px;margin-top:14px;background:#f6f8fa;border-radius:6px;font-size:.8125rem;color:#677382}
.recall-note strong{color:#677382;font-variant-numeric:tabular-nums;font-weight:400}

/* Dataset and model */
.summary-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:var(--radius);background:white;overflow:hidden;margin-bottom:24px}
.summary-card{padding:24px 28px;border-right:1px solid var(--line)}
.summary-card:last-child{border-right:0}
.summary-card>span{font-size:.875rem;color:#677382}
.summary-card>strong{display:block;font-size:2.125rem;font-variant-numeric:tabular-nums;letter-spacing:-1px;line-height:1.3;margin:10px 0;color:#40534b}
.data-status{font-size:.8125rem;color:#677382}
.split-bar{height:14px;display:flex;gap:4px;border-radius:4px;overflow:hidden;margin:12px 0 15px}
.split-bar span:nth-child(1){width:70%;background:#4a977c}
.split-bar span:nth-child(2){width:15%;background:#aac8b6}
.split-bar span:nth-child(3){width:15%;background:#d6e5d0}
.split-legend{display:flex;justify-content:space-between;gap:10px;font-size:.8125rem;color:#677382}
.dataset-notes{display:flex;flex-direction:column;gap:20px}
.dataset-note{display:flex;align-items:flex-start;gap:11px;font-size:.875rem;color:#677382;line-height:1.7}
.dataset-note svg{width:17px;height:17px;color:#677382;margin-top:3px}
.model-card{background:#22312f;color:#e4eae4;border-radius:var(--radius);padding:28px;overflow:hidden}
.model-card .tag{color:#b4cd9e;background:#32443a;border-color:#4d614e}
.model-title{font-family:Pretendard,sans-serif;font-size:1.875rem;font-weight:700;letter-spacing:-1px;line-height:1.3;margin:27px 0 12px;overflow-wrap:anywhere}
.model-card>p{font-size:1rem;color:#9cafaa}
.model-info{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px;padding-top:24px;border-top:1px solid #3e5148}
.model-info small{display:block;font-size:.75rem;color:#a2b3ac;margin-bottom:6px}
.model-info b{font-weight:400;font-size:.875rem;color:#bac9bf}
.input-branch{display:flex;align-items:center;gap:16px;padding:19px 0;border-bottom:1px solid var(--line)}
.input-branch:last-child{border-bottom:0}
.branch-icon{width:40px;height:44px;flex-shrink:0;display:grid;place-items:center;background:#f3f6f3;border:1px solid #e8ede6;border-radius:9px;color:#677382}
.branch-icon svg{width:19px;height:19px}
.input-branch h3{font-size:.9375rem;font-weight:400;color:#5e6e6a}
.input-branch p{font-size:.8125rem;color:#677382;margin-top:4px}
.matrix-label{font-size:.8125rem;color:#677382;margin:5px 0 13px}
.matrix-table{border-collapse:separate;border-spacing:7px;table-layout:fixed;white-space:normal;text-align:center}
.matrix-table td,.matrix-table th{padding:13px 5px;border:0;border-radius:7px}
.matrix-table thead,.matrix-table thead th{background:white;font-size:.75rem;color:#677382}
.matrix-table th.row-label{font-size:.8125rem;text-align:left;background:white;color:#677382}
.matrix-table td{background:#f5f7f9;color:#677382;font-variant-numeric:tabular-nums;font-size:1.3125rem}
.matrix-table td.diag{background:#e3f0e6;color:#386a47;font-weight:700}
.matrix-table button{width:100%;padding:3px 1px;border-radius:5px;background:transparent;color:inherit;font:inherit;transition:background .16s}
.matrix-table button:hover{background:#ffffffa0}
.matrix-table button:focus-visible{outline-offset:0}
.metric-label{font-size:.875rem;color:#677382;margin:8px 0 26px;text-align:right}
.metric-label strong{color:#497253;margin-left:8px}
.metric-row{display:grid;grid-template-columns:78px minmax(0,1fr) 67px;gap:14px;align-items:center;font-size:.875rem;margin-bottom:22px;color:#677382}
.metric-row b{text-align:right;font-size:.875rem;font-weight:400;font-variant-numeric:tabular-nums;color:#677382}
.meter{height:7px;background:#f0f3f2;border-radius:4px;overflow:hidden}
.meter span{display:block;height:100%;border-radius:4px}
.footnote{font-size:.8125rem;color:#677382;line-height:1.7;margin-top:15px}
.model-example{margin-top:24px;border-left:2px solid #b1c99e;padding:4px 16px;font-size:.8125rem;color:#677382;line-height:1.8}

/* Development resources */
.download-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;border:1px solid #dce5d4;border-radius:var(--radius);background:#f0f5e9;margin-bottom:26px}
.download-panel-left{display:flex;align-items:center;gap:20px}
.download-panel-left>svg{width:32px;height:32px;color:#677382;stroke-width:1.3}
.download-panel h2{font-size:1.125rem;color:#506746}
.download-panel p{font-size:.875rem;color:#677382;margin-top:5px}
.artifact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.artifact{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:box-shadow .2s,border-color .2s}
.artifact:hover{box-shadow:0 6px 24px #1c243108;border-color:#d4ddcf}
.artifact>button{display:flex;width:100%;height:210px;align-items:center;justify-content:center;background:#f5f7f9;border-bottom:1px solid var(--line);padding:16px;overflow:hidden}
.artifact img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .25s}
.artifact>button:hover img{transform:scale(1.025)}
.artifact-copy{padding:20px 22px}
.artifact-copy .tag{border:0;padding:0;background:transparent;color:#677382;font-size:.75rem}
.artifact-copy h3{margin:7px 0;color:#677382;font-size:.9375rem;line-height:1.5}
.artifact-copy p{font-size:.8125rem;color:#677382;line-height:1.65}
.code-source{display:block;background:#1b2930;color:#a5c6b3;border:1px solid #364a4c;border-radius:9px;overflow:hidden;text-align:left;width:100%;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.code-toolbar{display:flex;justify-content:space-between;gap:16px;padding:12px 16px;background:#27373b;color:#bbcbc0;font-size:.8125rem;border-bottom:1px solid #354a48}
.code-toolbar span:last-child{color:#718e81}
.code-source pre{margin:0;max-height:60vh;overflow:auto;padding:18px 0;font-size:.875rem;line-height:1.8;tab-size:2}
.code-source code{display:block;width:max-content;min-width:100%;padding-right:20px;font:inherit}
.code-line{display:flex;white-space:pre;min-height:1.8em}
.line-number{display:inline-block;flex:0 0 48px;text-align:right;padding-right:16px;color:#54776b;user-select:none}
.artifact button.source-preview{padding:0;background:#1b2930;align-items:flex-start}
.source-preview .code-source{height:210px;border:0;border-radius:0;pointer-events:none}
.source-preview .code-excerpt{font-size:.8125rem;line-height:1.8;padding-top:10px;overflow:hidden}
.source-preview .line-number{flex-basis:38px;padding-right:10px}

/* Dialogs and supporting states */
dialog{padding:0;border:1px solid #e1e6ec;border-radius:16px;width:min(620px,calc(100vw - 32px));max-height:90vh;box-shadow:0 24px 100px #19283035;color:#4a6156}
dialog::backdrop{background:#18272b75;backdrop-filter:blur(5px)}
.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px;border-bottom:1px solid var(--line)}
.dialog-head .btn{flex-shrink:0}
.dialog-head .footnote{margin-top:4px}
.dialog-body{padding:26px}
.view-label{font-size:.8125rem;color:#677382;margin-bottom:5px}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin:0}
.detail-grid dt{font-size:.8125rem;color:#677382;margin-bottom:9px}
.detail-grid dd{margin:0;font-size:1rem;color:#5a6e5f;overflow-wrap:anywhere}
.image-dialog{width:min(1150px,calc(100vw - 32px))}
.image-dialog img{display:block;width:100%;max-height:68vh;object-fit:contain;background:#f9faf9}
.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 32px);padding:13px 20px;background:#263b30;color:#e3ecdf;box-shadow:0 8px 30px #193b2320;border:1px solid #526c57;border-radius:9px;font-size:.875rem;z-index:100}
.bottom-note{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:29px;padding-top:18px;color:#677382;font-size:.75rem;letter-spacing:.35px}
.footer-divider{padding:0 8px;color:#677382}
.mobile-shade{display:none}

/* Responsive layout */
@media(min-width:1600px){.main{padding:40px 42px 28px}.topbar{padding-left:42px;padding-right:42px}.kpi{padding:27px 30px}.kpi-value{font-size:2.75rem}.signal-grid{gap:16px;padding-top:8px;padding-bottom:22px}.panel-head{padding-top:24px;padding-bottom:22px}}
@media(max-width:1240px){.shell{grid-template-columns:204px minmax(0,1fr)}.sidebar{padding-left:12px;padding-right:12px}.brand{padding-left:6px;gap:8px}.brand strong{font-size:1.0625rem}.main{padding:28px 26px}.topbar{padding-left:26px;padding-right:26px}.page-heading{gap:18px;align-items:flex-start}.actions{gap:8px}.crop-tabs button{padding-left:10px;padding-right:10px}.kpi{padding:21px}.kpi-value{font-size:2.2rem}.grid{gap:20px;grid-template-columns:minmax(0,1.25fr) minmax(290px,1fr)}.section-gap{margin-top:20px}.panel-head{padding-left:20px;padding-right:20px}.panel-body{padding-left:20px;padding-right:20px}.signal-grid{padding-left:20px;padding-right:20px;gap:9px}.image-caption{margin-left:20px;margin-right:20px}.class-quantity{gap:11px}.comparison-table th,.comparison-table td{padding-left:15px;padding-right:15px}.artifact-grid{gap:20px}.model-title{font-size:1.625rem}}
@media(max-width:1100px) and (min-width:1001px){.page-heading{flex-direction:column;gap:18px}.actions{width:100%;justify-content:flex-end}.page-heading>.actions{margin-top:-4px}.kpi{padding:18px}.kpi-value{font-size:2rem}.kpi-top>svg{display:none}.grid{grid-template-columns:minmax(0,1fr) minmax(280px,1fr)}.signal-view figcaption{font-size:.75rem}.signal-number{display:none}.class-quantity strong small{display:none}.artifact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1000px){.shell{grid-template-columns:1fr}.sidebar{position:fixed;width:224px;inset:0 auto 0 0;transform:translateX(-100%);transition:transform .2s;z-index:90}.shell.menu-open .sidebar{transform:translateX(0)}.mobile-shade{position:fixed;inset:0;background:#23332b55;z-index:80}.shell.menu-open .mobile-shade{display:block}.menu-button{display:flex}.topbar{min-height:64px;padding-top:12px;padding-bottom:12px}.breadcrumb{margin-right:auto}.main{padding-top:26px}.kpi{padding:22px}.grid{grid-template-columns:minmax(0,1.4fr) minmax(300px,1fr)}}
@media(max-width:780px){.page-heading{flex-direction:column;align-items:flex-start;gap:20px}.actions{width:100%;justify-content:space-between}.grid,.grid.equal{grid-template-columns:1fr}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi{padding:22px 24px}.kpi:nth-child(2){border-right:0}.kpi:nth-child(-n+2){border-bottom:1px solid var(--line)}.kpi-value{font-size:2.4rem}.imaging-panel{min-height:0}.signal-grid{padding-top:10px;padding-bottom:22px;gap:14px}.image-caption{padding-top:14px;padding-bottom:17px}.class-row{min-height:61px}.distribution-foot{margin-top:8px}.model-title{font-size:1.875rem}.summary-card{padding:21px}.summary-card>strong{font-size:1.75rem}.artifact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.comparison-table th,.comparison-table td{padding-left:24px;padding-right:24px}}
@media(max-width:540px){.main{padding:24px 18px}.topbar{padding-left:13px;padding-right:18px;gap:7px}.breadcrumb{gap:7px}.breadcrumb>span{display:none}.breadcrumb>svg{display:none}.workspace-label{display:none}h1{font-size:1.75rem}.subtitle{font-size:.875rem}.page-heading{margin-bottom:24px}.crop-tabs{padding:3px;gap:0}.crop-tabs button{padding:8px 10px;font-size:.875rem;min-height:34px}.actions>.btn{font-size:.875rem;padding:10px 11px;gap:6px}.actions>.btn>svg{width:15px;height:15px}.kpi{padding:18px}.kpi-value{font-size:2.125rem;gap:4px;margin:15px 0 10px}.kpi-value span{font-size:.8125rem}.kpi-top{font-size:.875rem}.kpi-top svg{width:15px;height:15px}.kpi-footer{font-size:.75rem}.panel-head{padding:20px 18px 17px;gap:10px}.panel-head h2{font-size:1rem}.panel-head p{font-size:.75rem}.panel-head .text-button{font-size:.75rem}.panel-body{padding:0 18px 20px}.signal-grid{padding:4px 18px 18px;gap:8px}.signal-image{border-radius:5px}.signal-view figcaption{font-size:.75rem;gap:0;letter-spacing:-.3px}.signal-number{display:none}.image-caption{margin:0 18px}.image-caption>span{font-size:.75rem}.imaging-panel .btn{font-size:.75rem;min-height:32px;padding:7px}.imaging-panel .btn>svg{width:13px;height:13px}.class-row{min-height:58px}.class-quantity{gap:18px}.class-quantity strong small{display:inline}.comparison-table th,.comparison-table td{padding-left:12px;padding-right:12px}.comparison-table th:first-child{padding-left:18px}.comparison-table th:last-child,.comparison-table td:last-child{padding-right:18px}.comparison-table{font-size:.875rem}.comparison-table thead{font-size:.75rem}.crop-cell{gap:7px}.crop-mark{width:27px;height:31px;border-radius:7px;font-size:.75rem}.table-unit{display:none}.stats-note{padding:12px 18px;font-size:.75rem}.filters{padding:0 18px 20px;gap:9px}.filters .search{flex-basis:100%}.filters .select{flex:1;min-width:0;font-size:.875rem}.table-bottom{padding:14px 18px;justify-content:center;flex-wrap:wrap;gap:12px}.filter-context{padding-left:18px;padding-right:18px}.summary-cards{grid-template-columns:1fr}.summary-card{padding:20px 22px;border-right:0;border-bottom:1px solid var(--line)}.summary-card:last-child{border-bottom:0}.summary-card>strong{font-size:2rem;margin:7px 0}.model-card{padding:24px}.model-title{font-size:1.625rem}.model-info{gap:22px 16px}.model-info b{font-size:.8125rem}.matrix-table{border-spacing:5px}.matrix-table td,.matrix-table th{padding:12px 3px}.matrix-table td{font-size:1.1875rem}.matrix-table th.row-label{font-size:.75rem}.matrix-label{font-size:.75rem}.metric-row{grid-template-columns:71px minmax(0,1fr) 60px;gap:12px;font-size:.8125rem}.metric-row b{font-size:.8125rem}.artifact-grid{grid-template-columns:1fr;gap:20px}.artifact>button{height:220px}.artifact-copy{padding:19px 22px}.artifact-copy h3{font-size:1rem}.download-panel{padding:24px;align-items:flex-start;flex-direction:column;gap:23px}.download-panel-left{gap:15px}.download-panel h2{font-size:1rem}.download-panel p{font-size:.8125rem}.download-panel .btn{width:100%}.download-panel-left>svg{width:28px;height:28px}.source-preview .code-source{height:220px}.dialog-head,.dialog-body{padding:21px}.detail-grid{gap:23px 17px}.detail-grid dd{font-size:.875rem}.bottom-note{font-size:.75rem;flex-wrap:wrap;gap:6px;margin-top:24px}.bottom-note>span:last-child{font-size:.75rem}.toast{bottom:18px;font-size:.8125rem}}
@media(max-width:420px){.actions{align-items:stretch;flex-direction:column}.crop-tabs{justify-content:stretch}.crop-tabs button{flex:1}.kpi{padding:16px}.kpi-value{font-size:1.875rem}.kpi-top>svg{display:none}.class-quantity{gap:10px}.signal-view figcaption{font-size:.75rem}.image-caption>span:last-child{display:none}.error-pair{gap:4px}.error-pair .badge{padding:4px 7px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
