/* CataMind 2.5 visual system: local CJK fonts, quiet surfaces and coherent controls. */
:root{
 --sans:"Inter","Noto Sans CJK SC","PingFang SC","Microsoft YaHei",-apple-system,"Segoe UI",sans-serif;
 --serif:var(--sans);--mono:"JetBrains Mono","Cascadia Code","Noto Sans Mono",Consolas,monospace;
 --bg:#f7f3ed;--panel:#fff;--card:#fff;--card-hover:#f5eee4;--panel2:#f7f3ed;--surface-2:#f7f3ed;
 --text:#352e27;--dim:#635447;--faint:#776555;--border:#ded2c3;--border2:#c7b7a4;
 --cyan:#98502e;--teal:#9a5834;--emerald:#37674d;--amber:#8a5b17;--rose:#b84e56;
 --topbar-bg:rgba(255,255,255,.96);--surface-glass:#fff;--grad-surface:linear-gradient(180deg,#fff,#faf7f1);
 --border-accent:#cfb79c;--nav-active-bg:#f5e9db;--grad1:linear-gradient(135deg,#a56339,#8d472b);
 --grad2:linear-gradient(135deg,#9c5c37,#71563e);--grad-brand:linear-gradient(135deg,#a15d32,#88502f);
 --grad3:linear-gradient(135deg,#21918c,#3e7a8f);--sh-1:0 1px 3px #352e2705;
 --sh-2:0 5px 20px #352e2708;--sh-3:0 20px 70px #352e2720;--sh-focus:0 0 0 3px #a563391a;
 --chart-1:#440154;--chart-2:#46327e;--chart-3:#365c8d;--chart-4:#277f8e;
 --chart-5:#1fa187;--chart-6:#4ac16d;--chart-7:#a0da39;--chart-8:#fde725;
}
body{font-family:var(--sans);font-size:15px;letter-spacing:.01em;background:#f7f3ed;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body::before,.orb{display:none}#main{background:linear-gradient(140deg,#f6f0e7 0%,#faf7f2 42%,#f7f3ed 100%);padding-top:28px}
h1,h2,h3,h4{font-family:var(--sans);font-weight:600;letter-spacing:-.015em;line-height:1.45}
.brand-name{font-family:var(--sans);font-size:16px;letter-spacing:.01em;font-weight:650}.brand-sub{font-family:var(--sans);letter-spacing:.02em;font-size:11px}
#topbar{box-shadow:0 1px 8px #352e2704;gap:12px}.logo{box-shadow:none;border-color:var(--border)}
#sidebar{background:#fff;border-color:var(--border)}.nav-group-label{font-family:var(--sans);font-size:11px;letter-spacing:.08em;color:#776555}
.nav-item{border-radius:9px;font-weight:500;min-height:42px}.nav-item.active{background:#f5e9db;border-color:#e2c9ae;color:#844627}.nav-item.active::before{background:#9e5d36;box-shadow:none}.nav-item span{font-size:14px}.nav-item svg,.icon-btn svg{stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.nav-tools summary{font-weight:500;color:#655647}.nav-group-icon{background:#f2ebe1;color:#735a43}.nav-tools{border-color:#e9dfd2}.side-footer{border-color:var(--border)}
.btn{min-height:36px;border-radius:8px;padding:8px 14px;font-size:14px;font-weight:500;box-shadow:none;line-height:1.4}.btn:hover{border-color:#c29f7c;box-shadow:0 2px 7px #352e2708;transform:none}.btn.primary{background:var(--grad1);border-color:transparent;box-shadow:0 3px 8px #98502e18}.btn.primary:hover{filter:brightness(1.04)}.btn svg{width:17px;height:17px;flex:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn.sm{font-size:12px;min-height:29px}.icon-btn{border-radius:9px;box-shadow:none}
.card{border-color:var(--border);border-radius:12px;box-shadow:var(--sh-1);background:#fff}.card:hover{border-color:#d4c2ae;box-shadow:var(--sh-1)}.card-hd{padding:17px 20px}.card-hd h4{font-family:var(--sans);font-weight:600;letter-spacing:0}.card-hd h4::before{background:#277f8e;box-shadow:none}.card-bd{padding:20px}
.field{margin-bottom:17px}.field label,.rw-workbench label{font-size:14px;font-weight:500;color:#4b382a;line-height:1.6}.field .hint,.hint{font-size:12px;line-height:1.7;color:#776555}
input,select,textarea{border-color:#c8b7a4;border-radius:8px;background:#fff;box-shadow:none;font-size:14px;line-height:1.55}input:focus,select:focus,textarea:focus{border-color:#a16a40;box-shadow:0 0 0 3px #a5633912}input::placeholder,textarea::placeholder{color:#7b6a59;font-size:13px}input[type=checkbox],input[type=radio]{accent-color:#99562e;box-shadow:none}
.rw-workbench textarea{padding:13px 14px;line-height:1.8;font-size:14px;border-color:#c8b7a4;resize:vertical}.rw-workbench textarea:focus,.rw-workbench input:focus{outline:none;border-color:#a56339;box-shadow:0 0 0 3px #a5633912}
.rw-intake{display:grid;grid-template-columns:1fr 1fr;gap:24px}.rw-intake textarea{min-height:145px;margin-bottom:12px}.rw-workbench>h2{font-size:28px;font-weight:650;color:#3d2d21;margin-bottom:8px}.rw-workbench>p{font-size:14px;line-height:1.9;margin-bottom:20px;max-width:1000px}.rw-eyebrow{font-size:10px;font-weight:600;letter-spacing:.16em;color:#806046;margin-bottom:10px}.rw-workflow-guide{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 0 24px;color:#786653;font-size:12px}.rw-workflow-guide span{padding:6px 11px;border:1px solid #ddcebc;background:#fcf9f4;border-radius:20px;color:#705b47}.rw-workbench>.card{padding:25px 28px}.rw-workbench details summary{cursor:pointer;color:#735e4b;line-height:1.8;font-size:13px}.rw-workbench>.card>details{border-top:1px solid #e9dfd2;padding-top:14px;margin:5px 0 19px}
#rw-message{font-size:13px;margin:12px 0;color:#7a634e}#rw-list:empty{display:none}#rw-detail{font-size:14px;line-height:1.8;border-radius:12px}#rw-detail.rw-empty{background:transparent;border:1px dashed #ccb8a0;box-shadow:none;text-align:center;padding:30px;color:#78614c}#rw-detail h3{font-size:21px}#rw-detail h4{font-size:15px;color:#65462c}#rw-detail pre{font-family:var(--mono);font-size:12px;background:#f7f1e8;border-radius:8px;padding:12px}.rw-alert{border-radius:8px;background:#fff8ea;border-left:3px solid #c7a04c;color:#806627;font-size:13px}.rw-steps{font-size:12px;background:#f4ebdf}.rw-steps .current{background:#277f8e}.rw-cards .card{box-shadow:none}.rw-cards .card b{font-size:12px;font-weight:500;color:#75604c}#obs-cards .card p{font-variant-numeric:tabular-nums;font-size:21px;color:#69472c}
.tbl th,.rw-scroll th{font-size:12px;font-weight:600;color:#745e48;background:#f7f1e8}.tbl td,.rw-scroll td{font-size:13px;padding:12px 14px;line-height:1.6}.tbl tr:hover td,.rw-scroll tbody tr:hover{background:#faf3e9}.tbl td.num{font-variant-numeric:tabular-nums}.chip{font-family:var(--sans);font-size:11px}.terminal,.terminal pre{font-size:12px;line-height:1.7}
#modal-bg{background:rgba(29,49,61,.32);backdrop-filter:blur(5px)}#modal{border:1px solid #ddd0c1;border-radius:16px;box-shadow:0 24px 85px #1d313d30;background:#fff;max-height:90vh}.modal-hd{padding:20px 24px;background:#fff;position:sticky;top:0;z-index:3;gap:16px}.modal-hd h3{font-size:18px;font-weight:600;line-height:1.5}.modal-bd{padding:24px;font-size:14px;line-height:1.7}.modal-ft{padding:16px 24px;background:#fcf9f4;position:sticky;bottom:0;z-index:3;flex-wrap:wrap}.toast{font-family:var(--sans);font-size:13px;box-shadow:var(--sh-2);border-radius:10px}
#mod-codex .chat-page-hd{background:#faf6ef}#mod-codex .chat-bubble{font-size:14px;line-height:1.8;box-shadow:none}#mod-codex .chat-msg.user .chat-bubble{background:#f4e9db;border-color:#decaaf}#mod-codex .chat-avatar{background:#f3e7d7;color:#8a5b36}#mod-codex .chat-page-input textarea{font-size:14px;line-height:1.7}body.codex-float-open #mod-codex{box-shadow:0 16px 65px #1d313d25}.site-footer{font-family:var(--sans);font-size:11px;opacity:.8}#codex-fab{background:var(--grad1);box-shadow:0 6px 20px #98502e28}
@media(max-width:1120px){.rw-intake{gap:16px}#sidebar .nav-item span{display:none}.rw-workbench>.card{padding:20px}.brand-name{font-size:14px}}
@media(max-width:760px){.rw-intake{grid-template-columns:1fr;gap:2px}.rw-intake textarea{min-height:105px}.rw-workbench>h2{font-size:24px}.rw-workbench>.card{padding:17px}.rw-workflow-guide{gap:5px;font-size:10px;margin-bottom:16px}.rw-workflow-guide span{padding:4px 8px}.rw-workbench>p{font-size:13px}#modal-bg{padding:10px}#modal{width:100%;max-height:94vh}.modal-hd{padding:16px}.modal-bd{padding:16px}.modal-ft{padding:13px 16px}#obs-cards .card p{font-size:16px}}
.obs-gpu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:14px 0 25px}.obs-gpu-card{border:1px solid var(--border);background:#fff;border-radius:13px;padding:22px;min-width:0}.obs-gpu-title{display:flex;gap:12px;align-items:center;margin-bottom:15px}.obs-gpu-title svg{width:37px;height:37px;stroke-width:1.5;color:#277f8e;flex:none}.obs-gpu-title>div{flex:1;min-width:0}.obs-gpu-title p{font-size:12px;color:var(--faint);overflow-wrap:anywhere;margin-top:4px}.obs-gpu-title strong{font-size:29px;color:#8c532c;font-variant-numeric:tabular-nums}.obs-meter{height:6px;border-radius:8px;background:#edf3f5;overflow:hidden}.obs-meter i{display:block;height:100%;background:linear-gradient(90deg,#31688e,#21918c);border-radius:8px;transition:width .3s}.obs-meter.memory i{background:linear-gradient(90deg,#21918c,#8fca4c)}.obs-gpu-memory{display:flex;justify-content:space-between;font-size:12px;margin:18px 0 8px}.obs-gpu-memory b{font-variant-numeric:tabular-nums}.obs-gpu-vitals{display:flex;gap:15px;flex-wrap:wrap;margin:18px 0;font-size:11px;color:#7a6551}.obs-gpu-vitals b{display:block;color:#604a36;margin-top:4px;font-size:13px;font-weight:500}.obs-gpu-card small{font-size:10px;color:#7a6552}.obs-gpu-card table{width:100%;font-size:11px;text-align:left;overflow-wrap:anywhere}.obs-gpu-card td{padding:6px 2px}
#auth-chip .chip-ico{width:29px;height:29px;flex:0 0 29px;border-radius:10px;overflow:hidden}#auth-chip .chip-ico svg,#auth-chip .chip-ico img{width:100%;height:100%;object-fit:cover}#auth-chip{gap:9px;padding:4px 10px 4px 4px;border-color:var(--border)}.user-avatar{display:inline-flex;width:54px;height:54px;flex:none;border-radius:17px;overflow:hidden}.user-avatar img,.user-avatar svg{width:100%;height:100%;object-fit:cover}.avatar-editor{text-align:center;max-width:470px;margin:auto}.avatar-preview{width:112px;height:112px;border-radius:32px;overflow:hidden;margin:0 auto 20px;border:4px solid #fff;box-shadow:0 4px 24px #1d313d16}.avatar-preview img,.avatar-preview svg{width:100%;height:100%;object-fit:cover}.avatar-presets{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:22px 0}.avatar-option{border:2px solid transparent;background:transparent;padding:2px;border-radius:16px;cursor:pointer}.avatar-option svg{width:100%;display:block}.avatar-option:hover,.avatar-option:focus-visible{border-color:#a56339}.avatar-colors{display:flex;justify-content:center;gap:12px;margin:10px 0 24px}.avatar-colors button{width:23px;height:23px;border:3px solid white;border-radius:50%;outline:1px solid #d3c1ac;cursor:pointer}.avatar-colors button:focus-visible{outline:2px solid #a56339}.avatar-editor .hint{margin:14px 0;max-width:380px;margin-inline:auto}#avatar-error{font-size:13px;color:#956b2c;margin-top:12px}.rw-monitor-link{display:flex;gap:12px;align-items:center;margin:10px 0 20px;padding:12px 15px;background:#f5ede2;border:1px solid #decebb;border-radius:9px;font-size:12px;color:#79614c}.rw-monitor-link button{margin-left:auto}#obs-legacy-tools>details{border:1px solid var(--border);border-radius:10px;margin:12px 0;padding:12px}#obs-legacy-tools summary{cursor:pointer;font-size:13px;color:#775536}#obs-legacy-tools .card{margin-top:14px}.obs-log{max-height:50vh;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}
@media(max-width:760px){.obs-gpu-grid{grid-template-columns:1fr}.obs-gpu-card{padding:17px}.avatar-presets{grid-template-columns:repeat(3,1fr);max-width:280px;margin-inline:auto}.rw-monitor-link{align-items:flex-start;flex-direction:column}.rw-monitor-link button{margin-left:0}}

/* Warm palette and stronger text contrast; data colors remain viridis. */
body{color:#352e27}#main{background:linear-gradient(135deg,#f5eee3,#faf7f1 60%)}.brand-name{color:#764528}.brand-sub{color:#79634e}.rw-workbench>p{color:#65513e}.rw-eyebrow{font-size:11px}.rw-workbench label{font-size:15px}.rw-workbench textarea{font-size:15px}.hint,.field .hint{color:#78624d;font-size:13px}.rw-workbench small,.obs-gpu-card small{font-size:12px;color:#79634d}.tbl th,.rw-scroll th{font-size:13px;color:#6b523b}.tbl td,.rw-scroll td{font-size:14px;color:#493829}.nav-tools summary{font-size:13px}.nav-group-label{color:#7c654f}.nav-tools-heading{color:#7c654f}.obs-gpu-title p{font-size:13px;color:#725e49}.obs-gpu-vitals{font-size:12px;color:#79624a}.obs-gpu-title svg{color:#8e5a33}.rw-alert{color:#77501b;background:#fbf0d9}.rw-steps .current{background:#92532f;color:white}.rw-workflow-guide span{font-size:12px}.site-footer{opacity:1;color:#7d6a56}.site-footer a{color:#7d6a56}#mod-codex .chat-page-hd{background:#faf5ed}.node-badge{color:#3c6545;background:#edf2e8;border-color:#c3d0b6}.m-label{color:#725f4b}.avatar-option:focus-visible{border-color:#995e33}
/* Compact density, while preserving readable text and usable controls. */
#main{padding-top:18px}.page-head{margin-bottom:14px}.card-hd{padding:12px 16px}.card-bd{padding:15px 16px}.field{margin-bottom:12px}.grid{gap:14px}.rw-eyebrow{margin-bottom:5px}.rw-workbench>h2{font-size:25px;margin-bottom:5px}.rw-workbench>p{margin-bottom:12px;line-height:1.7}.rw-workflow-guide{margin-bottom:14px}.rw-workbench>.card{padding:17px 20px}.rw-intake{gap:18px}.rw-intake textarea{min-height:100px;margin:6px 0 10px;padding:10px 12px}.rw-workbench>.card>details{padding-top:9px;margin:2px 0 12px}.rw-workbench .rw-actions{margin:10px 0;gap:9px}#rw-detail{margin-top:12px;padding:17px 20px}#rw-detail.rw-empty{padding:17px}#rw-list{margin:8px 0;padding:6px 0}#rw-message{margin:8px 0}.rw-workbench h4{margin:15px 0 7px}.rw-workbench details{margin:8px 0}.rw-steps{padding:7px;gap:5px}#obs-cards .card{padding:12px 15px}#obs-cards .card p{margin-top:5px;font-size:19px}.obs-gpu-grid{gap:13px;margin:10px 0 17px}.obs-gpu-card{padding:16px 18px}.obs-gpu-title{margin-bottom:11px}.obs-gpu-memory{margin-top:13px}.obs-gpu-vitals{margin:12px 0}.obs-gpu-title strong{font-size:25px}#obs-trend{margin:10px 0 14px;max-height:210px}.modal-hd{padding:15px 20px}.modal-bd{padding:18px 20px}.modal-ft{padding:12px 20px}.avatar-preview{width:94px;height:94px;margin-bottom:13px}.avatar-presets{margin:15px 0}.avatar-colors{margin:9px 0 16px}.rw-monitor-link{margin:8px 0 14px;padding:9px 12px}#obs-legacy-tools>details{margin:8px 0;padding:9px 12px}.site-footer{padding-top:14px}
@media(max-width:760px){#main{padding-top:14px}.rw-intake{gap:0}.rw-intake textarea{min-height:82px}.rw-workbench>.card,#rw-detail{padding:14px}.rw-workbench>h2{font-size:22px}.obs-gpu-card{padding:14px}.modal-bd{padding:14px}.modal-hd,.modal-ft{padding:12px 14px}}
/* Readability pass: larger type without restoring oversized whitespace. */
:root{--fs-2xs:12px;--fs-xs:14px;--fs-sm:15px;--fs-base:16px;--fs-md:16px;--fs-lg:18px;--fs-xl:22px;--fs-2xl:27px}
body{font-size:16px}.nav-item span{font-size:15px}.nav-tools .nav-item span{font-size:14px}.nav-tools summary{font-size:14px}.nav-group-label,.nav-tools-heading{font-size:12px}.brand-name{font-size:17px}.brand-sub{font-size:12px}.btn{font-size:15px;min-height:37px}.btn.sm{font-size:14px;min-height:33px}.field label,.rw-workbench label{font-size:16px}input,select,textarea,.rw-workbench textarea{font-size:16px}input::placeholder,textarea::placeholder{font-size:14px}.hint,.field .hint,#main .hint{font-size:14px;line-height:1.65}.rw-workbench>p{font-size:16px}.rw-workbench>h2{font-size:27px}.rw-eyebrow{font-size:12px}.rw-workflow-guide,.rw-workflow-guide span{font-size:14px}#rw-message{font-size:14px}#rw-detail{font-size:16px}#rw-detail h3{font-size:23px}#rw-detail h4{font-size:17px}.rw-workbench details summary{font-size:15px}.rw-steps{font-size:14px}.rw-workbench small,.obs-gpu-card small{font-size:13px}.tbl td,.rw-scroll td{font-size:15px}.tbl th,.rw-scroll th{font-size:14px}.tbl td.num{font-size:14px}.chip{font-size:13px}#obs-cards .card b{font-size:14px}#obs-cards .card p{font-size:21px}.obs-gpu-title p{font-size:14px}.obs-gpu-title b{font-size:17px}.obs-gpu-memory{font-size:14px}.obs-gpu-vitals{font-size:14px}.obs-gpu-vitals b{font-size:15px}.obs-gpu-card table{font-size:14px}.rw-alert,.rw-monitor-link{font-size:14px}.modal-hd h3{font-size:20px}.modal-bd{font-size:16px;line-height:1.7}.toast{font-size:15px}#mod-codex .chat-bubble,#mod-codex .chat-page-input textarea{font-size:16px}.terminal,.terminal pre,#rw-detail pre{font-size:14px}.m-label{font-size:12px}.m-val{font-size:13px}.m-val small{font-size:12px}.site-footer,.site-footer a{font-size:12px}#obs-legacy-tools summary{font-size:15px}.avatar-editor .hint{font-size:14px}.avatar-editor p{font-size:16px}
@media(max-width:760px){.rw-workbench>h2{font-size:23px}.rw-workbench>p{font-size:15px}.rw-workflow-guide span{font-size:12px}.rw-intake textarea{font-size:16px}.rw-workbench .hint{font-size:14px}.obs-gpu-vitals{font-size:13px}.brand-name{font-size:15px}.brand-sub{font-size:11px}.nav-group-icon{font-size:12px}.modal-bd{font-size:15px}}
/* Final alignment fixes after desktop/mobile rendering. */
.brand{flex:0 0 235px;min-width:0;max-width:235px}.brand>div:last-child{min-width:0}.brand-name{white-space:nowrap;line-height:1.3;font-size:16px}.brand-sub{font-size:12px}.node-badge{max-width:185px;white-space:nowrap;overflow:hidden;line-height:16px;font-size:11px;margin-left:0;padding:1px 7px}.node-badge #conn-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-right{flex-shrink:0;gap:9px}#metrics{min-width:0;gap:7px}.rw-workbench .obs-gpu-card{padding:15px 17px;border:1px solid var(--border);margin:0}.obs-filterbar{display:flex;flex-wrap:wrap}.obs-filterbar input{flex:1;min-width:190px;width:auto}.obs-filterbar select{width:190px}.obs-filterbar button{flex:none}.obs-gpu-title strong{flex:none}
@media(max-width:1120px){.brand{flex-basis:190px;max-width:190px}.brand-sub{display:none}.node-badge{max-width:150px}}
@media(max-width:760px){.brand{flex:1;max-width:210px}.brand-name{font-size:15px}.node-badge{max-width:170px}.obs-filterbar input{flex-basis:100%}.obs-filterbar select{flex:1;min-width:0;width:auto}.rw-workbench .obs-gpu-card{padding:13px 15px}}
@media(max-width:1120px){#sidebar .side-status>span:last-child{display:none}#sidebar .side-status{justify-content:center}}
@media(max-width:760px){.node-badge{max-width:130px}.top-right{gap:7px}}

/* Navigation hierarchy and consistent module pictograms. */
#sidebar{width:248px}
#main{left:248px}
#sidebar .nav-group-label,#sidebar .nav-tools-heading{
 position:relative;flex:none;margin:4px 0 8px;padding:8px 12px 8px 15px;
 color:#794522;background:#f7eee2;border-radius:7px;
 font-family:var(--sans);font-size:16px;font-weight:700;line-height:1.5;letter-spacing:.04em;
}
#sidebar .nav-tools-heading{margin-top:18px}
#sidebar .nav-group-label::before,#sidebar .nav-tools-heading::before{
 content:"";position:absolute;left:5px;top:50%;width:3px;height:17px;
 border-radius:2px;background:#a56339;transform:translateY(-50%);
}
#sidebar .nav-item{gap:10px;flex-shrink:0}
#sidebar .nav-item>svg{width:20px;height:20px;flex:0 0 20px}
#sidebar .nav-item>span:not(.badge){min-width:0;white-space:normal;line-height:1.5}
#sidebar .nav-item .badge{flex:none;font-size:12px;line-height:1.5}
#sidebar .nav-item .badge[hidden]{display:none}
.nav-tools-scroll{flex:0 1 auto;overflow-x:hidden}
.nav-tools summary{gap:8px;min-height:44px}
.nav-group-icon{width:30px;height:30px;border:1px solid #e7d6c1;border-radius:8px}
.nav-group-icon svg{width:20px;height:20px;display:block}
.nav-group-name{min-width:0;line-height:1.5}
.nav-chevron{display:flex;flex:none}
.nav-chevron svg{width:14px;height:14px}
#sidebar .side-footer{flex-shrink:0}
.nav-item:focus-visible,.nav-tools summary:focus-visible{outline-color:#98502e}

/* Allow larger text to reflow instead of squeezing panels and controls. */
.section{min-width:0;flex-shrink:0}
.card,.grid>*,.form-grid>*,.rw-intake>*{min-width:0}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.g23{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}
.g32{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}
.form-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.field label,.page-desc,.card-hd h3,.card-hd h4{overflow-wrap:anywhere}
.card-hd .btn,.head-actions .btn{flex-shrink:0;white-space:normal}
.rw-monitor-link>span{min-width:0;overflow-wrap:anywhere}
.rw-monitor-link button{flex-shrink:0}
.obs-gpu-memory{flex-wrap:wrap;gap:4px 12px}
.params-layout{display:flex;gap:14px;align-items:flex-start}
.params-tree-card{flex:0 0 300px;position:sticky;top:16px;max-height:calc(100vh - 150px);display:flex;flex-direction:column}

/* A separate resource row at laptop widths keeps every value legible. */
@media(min-width:821px) and (max-width:1399px){
 #topbar{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:44px 52px;height:106px;gap:0 12px;padding:5px 14px}
 #topbar .brand{grid-column:1;grid-row:1;max-width:none}
 #topbar .brand-sub{display:none}
 #topbar .top-right{grid-column:2;grid-row:1}
 #metrics{grid-column:1 / -1;grid-row:2;width:100%;margin:0;gap:8px;justify-content:stretch}
 #metrics .metric{flex:1 1 0;min-width:0;min-height:44px;overflow:visible;padding:4px 8px}
 #metrics .m-body{flex:1;line-height:1.25}
 #metrics .m-val{white-space:normal;overflow-wrap:anywhere}
 #sidebar,#main{top:106px}
 body.codex-float-open #mod-codex{height:min(720px,calc(100dvh - 206px));min-height:min(360px,calc(100dvh - 206px))}
}
@media(max-width:1280px){
 .g3,.g4{grid-template-columns:repeat(2,minmax(0,1fr))}
 .g23,.g32{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:1120px){
 #sidebar{width:64px}
 #main{left:64px}
 #sidebar .nav-group-label,#sidebar .nav-tools-heading,.nav-chevron{display:none}
 #sidebar .nav-item{justify-content:center;padding-left:6px;padding-right:6px}
 #sidebar .nav-item .badge:not([hidden]){display:block;font-size:10px;padding:0 4px}
 .g2,.g3,.g4{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:1000px){
 .params-layout{flex-direction:column;align-items:stretch}
 .params-layout>.card{width:100%;flex:auto}
 .params-tree-card{position:static;max-height:360px}
}
@media(max-width:640px){
 #sidebar,#main{top:52px}
}

/* Canvas display dimensions are independent of its high-DPI backing bitmap. */
#obs-trend{display:block;box-sizing:content-box;width:calc(100% - 2px);height:clamp(240px,22vw,300px);max-height:none}
