:root{color-scheme:dark;--bg:#0b1118;--panel:#111a24;--line:#253140;--muted:#8795a6;--text:#e5edf6;--accent:#6edacb;--blue:#82b8fa}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif}button,input,select{font:inherit}button,a.button,.upload{cursor:pointer;transition:background .15s,border-color .15s}button,.button{border:1px solid var(--line);background:#17222f;color:var(--text);border-radius:7px;padding:8px 12px;text-decoration:none}button:hover,.button:hover{background:#243445;border-color:#527083}button:disabled{opacity:.4;cursor:wait}input,select{width:100%;border:1px solid #304051;background:#0d151e;border-radius:6px;color:var(--text);padding:8px;margin-top:6px;outline:none}input:focus,select:focus{border-color:var(--accent)}label{font-size:12px;color:#a8b8c9}h1,h2,p{margin:0}h1{font-size:24px;letter-spacing:-.6px}h2{font-size:15px;font-weight:600}.muted{color:var(--muted)}.tiny{font-size:11px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2px;color:var(--accent);margin-bottom:6px}.primary{background:var(--accent);border-color:var(--accent);color:#092620;font-weight:700}.primary:hover{background:#9ce8dc;border-color:#9ce8dc}.wide{width:100%;margin-top:15px}.quiet{border:0;background:none;color:var(--muted);padding:3px 8px}.pill{font-size:10px;padding:3px 7px;border:1px solid #344656;border-radius:5px;color:#a9bbcc;white-space:nowrap}.brandmark{width:48px;height:48px;display:grid;place-items:center;background:var(--accent);color:#0d302a;font-size:29px;font-weight:800;border-radius:12px;transform:rotate(-5deg)}.brandmark.small{width:33px;height:33px;border-radius:8px;font-size:22px}.brand{display:flex;gap:13px;align-items:center}.brand strong{font-size:15px;letter-spacing:.3px}.brand small{display:block;font-size:8px;letter-spacing:2.6px;color:var(--muted);margin-top:2px}header{height:74px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 28px;background:#0e161f}.header-right{display:flex;gap:12px;align-items:center;font-size:11px;color:#a3b4c5}.status-light{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px #6edacb55}.workspace{display:grid;grid-template-columns:290px minmax(0,1fr)}aside{border-right:1px solid var(--line);background:#0e161f;height:calc(100vh - 74px);overflow:auto;position:sticky;top:0}aside section{padding:20px;border-bottom:1px solid var(--line)}.section-title{font-size:10px;font-weight:700;letter-spacing:1.4px;color:#99aebf;display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.slide-list{display:grid;gap:8px;max-height:260px;overflow:auto}.slide{display:flex;align-items:center;text-align:left;gap:10px;padding:9px;background:#131e29;width:100%}.slide.selected{border-color:var(--accent);background:#172d32}.slide img{width:49px;height:46px;object-fit:contain;background:#f2f2ef;border-radius:3px}.slide strong{font-size:12px;overflow-wrap:anywhere}.slide small{display:block;font-size:10px;color:var(--muted)}.upload{display:block;text-align:center;border:1px dashed #3b5364;color:var(--accent);border-radius:6px;padding:10px;margin-top:12px}.upload:hover{background:#182a32}#uploadStatus{margin-top:7px}details{margin-top:12px}summary{cursor:pointer;color:#9fb0bf;font-size:11px}details input{margin:9px 0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:15px}.model-name{font-weight:600;color:#d5e4ef}.model-name span{color:var(--accent);padding:0 8px}.steps{list-style:none;margin:0;padding:0}.steps li{display:flex;gap:10px;align-items:center;padding:9px 0;color:#9aabba;position:relative}.steps b{display:grid;place-items:center;width:25px;height:25px;border:1px solid #344452;border-radius:50%;font:11px monospace}.steps small{display:block;font-size:9px;color:#62788a}.steps li.done b{color:var(--accent);border-color:#3a7f75;background:#19302e}.steps li.running{color:var(--accent)}.steps li.running b{border-color:var(--accent);box-shadow:0 0 12px #6edacb33}.steps li.failed b{color:#fa9d9b;border-color:#bb5252}.steps li span{margin-left:auto}.danger{color:#f7a09a;background:#30202a}.history{display:grid;gap:7px}.history button{text-align:left;font-size:11px;background:#111c27}.history button.active{border-color:#6895b8}.history small{color:var(--muted);display:block}.case-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.case-heading .muted{font-size:11px;margin-top:5px}main{min-width:0;padding:25px 28px 0}.viewer-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#0a1017}.toolbar{display:flex;justify-content:space-between;align-items:center;background:#141e29;padding:10px 12px;border-bottom:1px solid var(--line);gap:12px}nav{display:flex;gap:3px;flex-wrap:wrap}nav button{border-color:transparent;background:none;color:#9bafc0;font-size:12px;padding:7px 10px}nav button.active{background:#223b40;color:#95eadd;border-color:#355d61}.tools{display:flex;gap:4px}.tools button{padding:3px 8px;font-size:18px;background:#17232f}.canvas-wrap{height:min(52vh,620px);min-height:370px;position:relative;display:flex;background:#080d13;background-image:radial-gradient(#1e2a36 1px,transparent 1px);background-size:18px 18px}#viewer,#viewerCompare{width:100%;height:100%;min-width:0}#viewerCompare{border-left:1px solid #607889}.canvas-label{position:absolute;top:16px;left:16px;font:9px monospace;letter-spacing:1px;padding:6px 9px;border:1px solid #35455188;background:#111d29c9;border-radius:4px;color:#b6c8d8;pointer-events:none}.viewer-hint{position:absolute;bottom:13px;left:16px;color:#9baabb;font-size:10px;background:#0b1118b0;padding:3px 6px;pointer-events:none}.empty{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;pointer-events:none;background:#0a1017}.empty span{font-size:64px;color:#4b766f}.empty h2{font-size:17px;color:#b4c5d0;margin:16px}.empty p{font-size:12px;color:#788d9d}.viewer-footer{display:flex;align-items:center;justify-content:space-between;min-height:47px;padding:8px 17px;border-top:1px solid var(--line);font-size:10px;color:#8ca1b1;gap:12px}#opacityControl{display:flex;align-items:center;gap:8px;font-size:10px;white-space:nowrap}input[type=range]{width:80px;padding:0;margin:0;accent-color:var(--accent)}#legend{display:flex;align-items:center;gap:7px}#legend i{display:block;width:90px;height:5px;background:linear-gradient(90deg,#3b4cc0,#ddd,#b40426);border-radius:3px}.results{display:grid;grid-template-columns:1.7fr repeat(4,1fr);align-items:center;padding:22px 0;border-bottom:1px solid var(--line);margin-bottom:24px}.results>div{padding:0 22px;border-right:1px solid var(--line)}.results>div:first-child{padding-left:0}.results>div:last-child{border:0}.results h2{font-size:19px;margin:3px 0}.metric{display:block;font:24px/1.5 ui-monospace,SFMono-Regular,monospace;letter-spacing:-.8px}.results small{color:var(--muted);font-size:10px}.lower-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:20px}.panel{background:#111a24;border:1px solid var(--line);border-radius:9px;padding:17px;min-width:0}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}.panel-heading h2{font-size:13px}.patch-gallery{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:14px;max-height:285px;overflow:auto}.patch-card{padding:0;overflow:hidden;border-radius:5px}.patch-card img{display:block;width:100%;aspect-ratio:1;object-fit:cover}.patch-card small{display:block;font:9px monospace;padding:5px}.placeholder{grid-column:1/-1;color:#708596;font-size:12px;padding:25px 0}.log-panel pre{height:230px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font:10px/1.7 ui-monospace,monospace;color:#9aafbf;background:#0b131c;border-radius:5px;padding:12px;margin:12px 0 0}footer{padding:19px 0;color:#536b7f;display:flex;gap:20px;font-size:9px;letter-spacing:1px}footer span:last-child{margin-left:auto}.notice{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:#243849;border:1px solid #52758e;box-shadow:0 10px 50px #0009;border-radius:8px;padding:15px 24px;max-width:700px;z-index:50}.login-screen{position:fixed;inset:0;display:grid;place-items:center;background:radial-gradient(ellipse at 30% 20%,#173335 0,transparent 55%),#0b1118;z-index:100}.login-card{width:390px;background:#111c27;border:1px solid #2c414b;padding:38px;border-radius:17px;box-shadow:0 30px 100px #0005}.login-card .eyebrow{margin-top:30px}.login-card h1{font-size:26px}.login-card .muted{margin:10px 0 28px;font-size:12px}.login-card label{display:block}.login-card .primary{width:100%;margin:15px 0;display:flex;justify-content:space-between}.login-card small{color:#698293;font-size:10px}.error{color:#faa6a0;font-size:12px;margin-bottom:12px}[hidden]{display:none!important}@media(min-width:1700px){main{padding:30px 40px}.workspace{grid-template-columns:310px 1fr}}@media(max-width:1150px){.workspace{grid-template-columns:255px minmax(0,1fr)}main{padding:20px 16px}.toolbar{flex-wrap:wrap}.results>div{padding:0 10px}.metric{font-size:19px}.lower-grid{grid-template-columns:1fr}.canvas-wrap{min-height:350px}.viewer-footer{flex-wrap:wrap}}@media(max-width:760px){header{padding:0 15px}.header-right #gpuSummary{display:none}.workspace{display:block}aside{position:static;height:auto;display:grid;grid-template-columns:1fr 1fr;border-right:0}.slide-list{max-height:180px}aside section{padding:15px}.case-heading h1{font-size:20px}.results{grid-template-columns:repeat(4,1fr);gap:15px}.results>div:first-child{grid-column:1/-1;border:0}.results>div{padding:0 8px}.canvas-wrap{height:420px}.login-card{width:calc(100% - 40px);max-width:390px}.header-right{gap:5px}.brand strong{font-size:12px}} 

progress{width:100%;height:5px;margin:10px 0;accent-color:var(--accent);border:0;border-radius:4px}progress::-webkit-progress-bar{background:#253440;border-radius:4px}progress::-webkit-progress-value{background:var(--accent);border-radius:4px}
/* Explorer v2: a large reading surface with a compact library and inspector. */
body{font-size:14px}header{height:64px;padding:0 22px}.brand small{font-size:10px}.header-right{font-size:12px}.tiny{font-size:12px}.eyebrow{font-size:11px}label,summary{font-size:13px}button:focus-visible,select:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.workspace{grid-template-columns:260px minmax(0,1fr)}.library{height:calc(100vh - 64px);top:0}.library section{padding:17px}.section-title{font-size:12px;letter-spacing:.5px}.filter-row{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:6px 0 10px}.filter-row select{font-size:12px;padding:7px 5px}#slideCount{margin-bottom:10px}.slide-list{max-height:min(50vh,560px)}.slide{border-radius:7px}.slide img{width:52px;height:60px}.slide strong{font-size:13px}.slide small,.slide-status{font-size:11px}.slide-status{display:inline-block;color:#9bb1c3;margin-top:3px}.slide-status.completed{color:var(--accent)}.slide-status.failed{color:#f7a09a}.slide-status.running{color:#86bdff}.fields{gap:9px}.history button{font-size:12px}.steps small{font-size:10px}.steps li{font-size:13px}#analysisSettings{margin:0}#analysisSettings>summary{color:#dce7f3;font-weight:600}#analysisSettings .section-title{display:none}#analysisSettings .model-name{margin-top:16px}main{padding:20px 22px 0}.case-heading{margin-bottom:16px;gap:12px}.case-heading h1{font-size:25px}.case-heading .muted{font-size:12px}.reading-grid{display:grid;grid-template-columns:minmax(0,1fr) 246px;gap:16px;align-items:start}.visual-column{min-width:0}.inspector{position:static;height:auto;overflow:visible;border:1px solid var(--line);border-radius:9px;background:var(--panel)}.inspector section{padding:18px}.inspector section:last-child{border-bottom:0}.inspector h2{font-size:14px;margin-bottom:14px}.inspector #prediction{font-size:20px}.primary-prob{margin:15px 0}.primary-prob span{font:32px ui-monospace,monospace;letter-spacing:-1px;color:#e7f1f9}.primary-prob small{display:block;font-size:12px;color:var(--muted);margin-top:4px}.class-row{display:grid;grid-template-columns:1fr auto;font-size:12px;margin-bottom:10px}.class-row b{font-weight:500;color:#b9cbd9}.class-row progress{grid-column:1/-1;margin:5px 0}.facts{display:grid;grid-template-columns:auto minmax(0,1fr);font-size:12px;gap:10px;margin:0}.facts dt{color:var(--muted)}.facts dd{margin:0;text-align:right;overflow-wrap:anywhere;font-family:ui-monospace,monospace}.patch-detail{font-size:12px}.patch-detail img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:5px;margin-bottom:14px}.patch-detail .tiny{margin-top:12px}.toolbar{flex-wrap:wrap;padding:8px;gap:8px}nav button{font-size:13px;padding:7px 9px}.tools{margin-left:auto}.tools button{font-size:12px;padding:5px 8px}.canvas-wrap{height:56vh;min-height:410px;max-height:740px}.canvas-wrap #viewerCompare{border-left:1px solid #526b7d}.canvas-wrap.curtain #viewerCompare{position:absolute;inset:0;pointer-events:none;border:0;z-index:2}.canvas-label{z-index:3;top:12px;left:12px;font-size:11px}.right-label{left:auto;right:12px}#curtainLine{position:absolute;top:0;bottom:0;width:2px;transform:translateX(-1px);background:var(--accent);z-index:4;pointer-events:none}#curtainLine:before{content:'↔';position:absolute;top:48%;left:-15px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:#092620;font-weight:700}.curtain-control{display:flex;align-items:center;gap:14px;background:#142530;padding:10px 15px;font-size:12px}.curtain-control input{flex:1;min-width:50px}.viewer-hint{z-index:5;bottom:10px;font-size:11px;max-width:65%;overflow:hidden;white-space:nowrap}.heat-controls{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:10px 14px;background:#121e29;border-top:1px solid var(--line)}.heat-controls label{display:flex;align-items:center;gap:7px;font-size:12px}.heat-controls select{width:auto;font-size:12px;padding:5px;margin:0}#opacityControl{font-size:12px}#opacityControl input{width:70px}.viewer-footer{font-size:11px;min-height:40px;padding:8px 14px;flex-wrap:wrap}#legend{font-size:11px}#legend i{width:90px;height:7px}.action-bar{display:flex;align-items:center;gap:7px;padding:10px 12px;border-top:1px solid var(--line);flex-wrap:wrap}.action-bar button{font-size:12px;padding:6px 9px}.action-bar select{width:auto;max-width:200px;flex:1;font-size:12px;margin:0;padding:6px}#snapshot{margin-left:auto}.gallery-panel{margin-top:16px}.panel-heading h2{font-size:14px}.segmented{display:flex;gap:4px}.segmented button{font-size:12px;padding:5px 8px;background:transparent;border-color:transparent}.segmented button.active{border-color:#3d685e;background:#1d3936;color:var(--accent)}.patch-gallery{display:flex;gap:10px;overflow-x:auto;max-height:none;padding:4px 0 8px}.patch-card{flex:0 0 115px;text-align:left}.patch-card small{font-size:11px;padding:7px}.patch-card:hover{border-color:var(--accent)}.selected-patch{border:2px solid #6edacb;box-shadow:0 0 0 1px #001a13;pointer-events:none}.log-panel{margin-top:16px}.log-panel summary{font-size:13px;display:list-item}.log-panel summary span{float:right}.log-panel pre{font-size:12px;height:260px}footer{font-size:10px;flex-wrap:wrap}#scaleBar{position:absolute;left:15px;bottom:42px;z-index:5;color:white;font-size:11px;pointer-events:none;text-shadow:0 1px 3px #000}#scaleBar i{display:block;height:6px;border:2px solid white;border-top:0;box-shadow:0 1px 2px #000}#scaleBar span{display:block;margin-top:3px}.viewer-card:fullscreen{width:100vw;height:100vh;display:flex;flex-direction:column;background:var(--bg)}.viewer-card:fullscreen .canvas-wrap{flex:1;max-height:none;min-height:0}.login-card .muted{font-size:14px}.login-card label{font-size:14px}.login-card small{font-size:12px}
@media(min-width:1800px){.workspace{grid-template-columns:285px minmax(0,1fr)}.reading-grid{grid-template-columns:minmax(0,1fr) 275px}.canvas-wrap{height:62vh}}
@media(max-width:1350px){.workspace{grid-template-columns:235px minmax(0,1fr)}main{padding:18px 14px 0}.reading-grid{grid-template-columns:minmax(0,1fr) 215px;gap:12px}.inspector section{padding:14px}.canvas-wrap{min-height:370px}.heat-controls{gap:8px}.patch-card{flex-basis:105px}}
@media(max-width:1100px){.reading-grid{grid-template-columns:minmax(0,1fr)}.inspector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.inspector section{border-bottom:1px solid var(--line);min-width:0}.inspector section:nth-child(odd){border-right:1px solid var(--line)}.patch-detail img{max-width:160px}.canvas-wrap{height:54vh}.case-heading h1{font-size:22px}}
@media(max-width:760px){.workspace{display:block}.library{height:auto;position:static;display:block}.library>section:not(:first-of-type){display:none}.library>section:first-of-type{padding:14px}.slide-list{display:flex;max-height:none;overflow-x:auto}.slide{flex:0 0 200px}.filter-row{max-width:450px}.library .upload,.library details,#uploadStatus{display:none}.header-right #gpuSummary{display:none}header{height:60px;padding:0 15px}.canvas-wrap{min-height:350px;height:52vh}main{padding:16px 12px}.case-heading .muted{font-size:11px}.inspector{grid-template-columns:1fr 1fr}.toolbar{gap:4px}.toolbar nav{gap:0}nav button{font-size:12px;padding:7px}.panel-heading{flex-wrap:wrap}.notice{width:calc(100% - 24px);font-size:13px}.action-bar{gap:6px}.action-bar select{max-width:150px}.right-label{max-width:45%;font-size:10px}.canvas-label{font-size:10px}#viewDescription{max-width:100%}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
#mobileTools{display:none}#curtainLine{pointer-events:auto;cursor:ew-resize;touch-action:none;width:16px;margin-left:-7px;background:linear-gradient(90deg,transparent 7px,var(--accent) 7px,var(--accent) 9px,transparent 9px)}#curtainLine:before{left:-8px}
@media(max-width:760px){#mobileTools{display:block;width:calc(100% - 28px);margin:12px 14px}.library.expanded>section:not(:first-child){display:block}.library.expanded .upload,.library.expanded details,.library.expanded #uploadStatus{display:block}}
.compare-controls{display:flex;align-items:center;gap:16px;padding:9px 14px;background:#111d28;border-bottom:1px solid var(--line);font-size:12px;flex-wrap:wrap}.compare-controls label{display:flex;align-items:center;gap:8px;font-size:12px}.compare-controls select{width:auto;min-width:110px;margin:0;padding:5px;font-size:12px}.compare-controls span{color:var(--muted);margin-left:auto}
#overviewViewer{width:100%;height:100%;min-width:0}

.checkbox-label{display:flex;align-items:flex-start;gap:8px;line-height:1.5}.checkbox-label input[type=checkbox]{width:auto;margin:3px 0 0;flex:none}

.original-label{display:grid;gap:5px;padding:12px;margin:10px 0 18px;border:1px solid var(--line);border-radius:8px}.original-label small{color:var(--muted);font-size:11px;overflow-wrap:anywhere}.original-label strong{font-size:16px}

/* Theme colors affect interface chrome only; slide and heatmap pixels are unchanged. */
.theme-toggle{white-space:nowrap;font-size:12px;padding:6px 10px}
.login-theme{position:absolute;right:20px;top:20px}
#prediction{color:var(--accent)}
:root[data-theme=light]{color-scheme:light;--bg:#f3f6f9;--panel:#fff;--line:#d5dfe7;--muted:#526578;--text:#1d3042;--accent:#087d72;--blue:#2868b2}
[data-theme=light] header,[data-theme=light] .library{background:#fff}
[data-theme=light] button,[data-theme=light] .button{background:#edf2f6;color:var(--text)}
[data-theme=light] button:hover,[data-theme=light] .button:hover{background:#e0eaf1;border-color:#889dac}
[data-theme=light] input,[data-theme=light] select{background:#fff;border-color:#b8c8d5;color:var(--text)}
[data-theme=light] label,[data-theme=light] summary,[data-theme=light] .section-title,[data-theme=light] .header-right,[data-theme=light] .steps li,[data-theme=light] .model-name,[data-theme=light] #analysisSettings>summary,[data-theme=light] .class-row b{color:#40586c}
[data-theme=light] .primary{background:var(--accent);color:#fff;border-color:var(--accent)}
[data-theme=light] .primary:hover{background:#06665e;border-color:#06665e}
[data-theme=light] .brandmark{background:var(--accent);color:#fff}
[data-theme=light] .quiet{background:transparent;color:var(--muted)}
[data-theme=light] .pill{border-color:var(--line);color:#40586c}
[data-theme=light] .slide,[data-theme=light] .history button{background:#f6f9fb}
[data-theme=light] .slide.selected,[data-theme=light] nav button.active,[data-theme=light] .segmented button.active{background:#e0f2ee;border-color:var(--accent);color:#086c63}
[data-theme=light] .history button.active{border-color:var(--accent);background:#eaf5f2}
[data-theme=light] .slide-status{color:var(--muted)}
[data-theme=light] .slide-status.completed,[data-theme=light] .steps li.running{color:var(--accent)}
[data-theme=light] .slide-status.running{color:#245dab}
[data-theme=light] .steps small{color:#596e80}
[data-theme=light] .steps b{border-color:#b6c6d2}
[data-theme=light] .steps li.done b{background:#e0f2ee;border-color:#5da298}
[data-theme=light] .danger{background:#fff0ef;color:#ab3632}
[data-theme=light] .error,[data-theme=light] .slide-status.failed{color:#b4332c}
[data-theme=light] .panel,[data-theme=light] .viewer-card{background:#fff}
[data-theme=light] .toolbar,[data-theme=light] .heat-controls,[data-theme=light] .compare-controls,[data-theme=light] .curtain-control{background:#edf3f7}
[data-theme=light] nav button,[data-theme=light] .segmented button{background:transparent;color:#40586c}
[data-theme=light] .viewer-footer,[data-theme=light] footer,[data-theme=light] .placeholder{color:var(--muted)}
[data-theme=light] .primary-prob span{color:var(--text)}
[data-theme=light] .log-panel pre{background:#f0f4f8;color:#344d62}
[data-theme=light] .notice{background:#fff;border-color:#b2c5d2;box-shadow:0 8px 30px #1c344322}
[data-theme=light] .upload:hover{background:#e6f5f1}
[data-theme=light] .login-screen{background:radial-gradient(ellipse at 30% 20%,#d9f2eb 0,transparent 60%),#f3f6f9}
[data-theme=light] .login-card{background:#fff;border-color:var(--line);box-shadow:0 20px 70px #27405218}
[data-theme=light] .login-card small{color:var(--muted)}
[data-theme=light] progress::-webkit-progress-bar{background:#dce5ec}
@media(max-width:760px){.theme-toggle{padding:6px;font-size:11px}.header-right .pill{display:none}}

/* Dragging the card's bottom edge resizes only the image viewport. */
.canvas-wrap{height:var(--viewer-height,56vh);min-height:280px;max-height:1200px}
@media(min-width:1800px){.canvas-wrap{height:var(--viewer-height,62vh)}}
@media(max-width:1100px){.canvas-wrap{height:var(--viewer-height,54vh)}}
@media(max-width:760px){.canvas-wrap{height:var(--viewer-height,52vh)}}
.viewer-resize{height:22px;display:flex;align-items:center;justify-content:center;gap:9px;cursor:ns-resize;touch-action:none;user-select:none;border-top:1px solid var(--line);color:var(--muted);background:var(--panel);font-size:10px}
.viewer-resize:before,.viewer-resize:after{content:'';width:32px;border-top:2px solid currentColor;opacity:.6}
.viewer-resize:hover,.viewer-resize.dragging,.viewer-resize:focus-visible{color:var(--accent);background:var(--bg)}
.viewer-resize:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}
.viewer-card:fullscreen .viewer-resize{display:none}
