:root{color-scheme:dark;--font-primary:'Be Vietnam Pro',Arial,sans-serif;--font-display:'Playfair Display',Georgia,serif;--font-code:'JetBrains Mono',monospace;--color-background:#0b1211;--color-surface:#111c19;--color-text-primary:#eee9dc;--color-text-secondary:#a3afa7;--color-accent:#d4b779;--color-border:#2b3830;--radius-card:7px;--radius-button:4px;--shadow-card:0 22px 45px #0003;--font-sans:var(--font-primary);--font-main:var(--font-primary);--font-serif:var(--font-display);--font-mono:var(--font-code);--bg:var(--color-background);--bg-deep:var(--bg);--bg-soft:var(--color-surface);--sidebar:var(--bg);--surface:var(--color-surface);--panel:var(--color-surface);--panel-2:#19271f;--panel-3:#203329;--raised:#19271f;--hover:#21372b;--hover-bright:#2b4434;--text:var(--color-text-primary);--paper:var(--text);--secondary:var(--color-text-secondary);--muted:var(--secondary);--gold:var(--color-accent);--gold-bright:#e9ce94;--gold-deep:#aa8f58;--line:var(--color-border);--line-strong:#72623e;--line-cyan:#4b6b5c;--cyan:#9bc6ba;--teal:#9bc6ba;--green:#9bc6ba;--green-soft:#b9d4be;--red:#bd675b;--rose-soft:#d69b8f;--orange:#d4b779;--purple:#b0a1bf;--ink:#172219;--radius:7px;--radius-sm:4px;--radius-lg:7px;--shadow:var(--shadow-card);--case-accent:var(--gold)}
html{background:var(--bg);scroll-padding-top:70px}body{background:var(--bg)!important;color:var(--text);overflow-x:clip}body:before{pointer-events:none}*{box-sizing:border-box}button,input,select,textarea{font:inherit}a,button{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}img{max-width:100%}svg{max-width:100%}
/* Icons injected by case-interface are inline symbols, never full-size artwork. */
svg.cd-inline-icon{display:inline-block!important;width:1.1em!important;height:1.1em!important;min-width:1.1em;max-width:1.1em!important;vertical-align:-.15em;flex:0 0 1.1em;overflow:visible}
#cdSuiteNav{position:relative;z-index:110;display:flex;align-items:center;flex-wrap:wrap;gap:6px 16px;padding:10px 24px;background:#0b1211;border-bottom:1px solid var(--line);font:500 11px/1.6 var(--font-sans,Arial,sans-serif)}#cdSuiteNav a{color:var(--muted);text-decoration:none;padding:6px 8px;white-space:nowrap}#cdSuiteNav a:hover,#cdSuiteNav a[aria-current=page]{color:var(--gold);background:var(--surface);border-radius:4px}#cdSuiteNav .cd-suite-admin{margin-left:auto;color:var(--teal)}#cdSuiteNav button,.cd-suite-btn{font:inherit;cursor:pointer;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:7px 12px}
#cdAdminGlobalBar{position:relative!important;z-index:120!important;display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:12px 24px!important;background:#15271d!important;border-bottom:1px solid #536b50!important;color:var(--text)!important;font:500 12px/1.6 var(--font-sans,Arial)!important}#cdAdminGlobalBar .cd-suite-actions{display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}#cdAdminGlobalBar a{color:var(--gold);text-decoration:none}#cdAdminGlobalBar button{min-height:34px}
.cd-suite-overlay{position:fixed;inset:0;z-index:200000;background:#050b09dc;display:flex;align-items:center;justify-content:center;padding:20px}.cd-suite-dialog{width:min(520px,100%);max-height:90dvh;overflow:auto;background:var(--surface);border:1px solid var(--line-strong);padding:26px;border-radius:7px;color:var(--text);font:14px/1.7 var(--font-sans,Arial)}.cd-suite-dialog h2{font:500 28px/1.3 var(--font-serif,Georgia);margin:0 0 18px}.cd-suite-dialog label{display:block;margin:18px 0}.cd-suite-dialog input{display:block;width:100%;background:var(--bg);color:var(--text);border:1px solid var(--line);padding:10px;margin-top:6px}.cd-suite-dialog .cd-suite-actions{display:flex;gap:10px;flex-wrap:wrap}.cd-suite-error{color:var(--rose-soft);min-height:1.7em}.cd-suite-status{position:fixed;right:16px;bottom:16px;z-index:200001;background:#15271d;color:var(--text);border:1px solid var(--line-strong);padding:14px 18px;border-radius:6px;max-width:min(450px,calc(100vw - 32px));font:13px/1.7 var(--font-sans,Arial)}.cd-suite-status button{margin-left:8px}
body[data-cd-case="003"] .main-content{min-width:0;max-width:1400px;width:100%;padding:28px clamp(16px,3vw,40px)}body[data-cd-case="003"] .app-container{min-width:0}body[data-cd-case="003"] .sidebar{width:230px}body[data-cd-case="003"] .main-content h1{font-family:var(--font-serif);font-size:clamp(32px,4vw,56px)!important;line-height:1.22!important;letter-spacing:-1px!important;color:var(--text)!important}body[data-cd-case="003"] .heading-content h2{font-family:var(--font-serif);font-weight:500}body[data-cd-case="003"] .card{box-shadow:none;border-radius:7px}body[data-cd-case="003"] .grid-3{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}body[data-cd-case="003"] .nav-item{font-size:12px}body[data-cd-case="003"] .main-content>div{min-width:0;max-width:100%}body[data-cd-case="003"] img{object-fit:contain!important;transform:none!important}body[data-cd-case="003"] img[data-cd-portrait]{object-fit:cover!important;object-position:center 25%}body[data-cd-case="003"] .main-content svg:not(.cd-inline-icon){display:block;max-width:100%;max-height:420px;margin:auto}body[data-cd-case="003"] .modal-box svg:not(.cd-inline-icon){max-width:100%;max-height:320px;display:block;margin:auto}
body[data-cd-case="004"] .shell{min-width:0}body[data-cd-case="004"] .main,body[data-cd-case="004"] main{min-width:0}body[data-cd-case="004"] .visual svg{width:100%;height:auto;max-height:440px;object-fit:contain}body[data-cd-case="004"] .portrait svg{width:100%;height:100%;max-height:130px}body[data-cd-case="004"] .empty>svg{width:44px;height:44px;margin:0 auto 16px}body[data-cd-case="004"] .nav button>svg,body[data-cd-case="004"] .iconbtn svg,body[data-cd-case="004"] .btn svg{width:18px;height:18px;flex:none}body[data-cd-case="004"] .studio-portal-actions{display:none}body[data-cd-case="004"] .case-portal-nav{position:relative}
body[data-cd-case="home"] .case-cover img{width:100%;height:100%;object-fit:contain}body[data-cd-case="home"] .case-cover svg{width:100%;height:100%;max-height:260px}
@media(max-width:960px){body[data-cd-case="003"] .app-container{flex-direction:column}body[data-cd-case="003"] .sidebar{width:100%;display:flex;flex-direction:row;overflow-x:auto;gap:6px;padding:10px}body[data-cd-case="003"] .nav-item{flex:0 0 auto;white-space:nowrap}body[data-cd-case="003"] .main-content [style*="grid-template-columns"]{grid-template-columns:minmax(0,1fr)!important}body[data-cd-case="003"] .main-content [style*="min-width:300px"]{min-width:0!important}body[data-cd-case="003"] .case-portal-nav{position:relative;flex-wrap:wrap;gap:14px}body[data-cd-case="003"] .main-content [style*="min-width:320px"]{min-width:0!important}}
@media(max-width:600px){#cdSuiteNav{padding:8px 12px;gap:2px 6px}#cdSuiteNav a{padding:6px}#cdSuiteNav .cd-suite-admin{margin-left:0}#cdAdminGlobalBar{padding:12px!important}#cdAdminGlobalBar .cd-suite-actions{margin-left:0}body[data-cd-case="003"] .modal-box{padding:18px}body[data-cd-case="003"] .main-content [style*="display:flex"]{flex-wrap:wrap}body[data-cd-case="003"] .main-content [style*="min-width:260px"]{min-width:0!important}body[data-cd-case="004"] .case-portal-nav{padding:12px 16px;flex-wrap:wrap;gap:10px}body[data-cd-case="004"] .studio-case-code{border:0;padding:0}body[data-cd-case="004"] .formgrid{grid-template-columns:minmax(0,1fr)}body[data-cd-case="004"] dialog{width:calc(100% - 24px);max-height:90dvh}body[data-cd-case="004"] .person{min-width:0}body[data-cd-case="004"] h1{font-size:clamp(30px,9vw,42px)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Components emitted by the VA004 renderer. */
body[data-cd-case="004"] .gold{color:var(--gold)}body[data-cd-case="004"] .row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}body[data-cd-case="004"] .panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}body[data-cd-case="004"] .panel-head h2{margin:0}body[data-cd-case="004"] .label{display:block;font-size:12px;font-weight:600;color:var(--text);margin-bottom:14px}body[data-cd-case="004"] .label input,body[data-cd-case="004"] .label select{display:block;width:100%;margin-top:7px}body[data-cd-case="004"] .formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}body[data-cd-case="004"] .formgrid>*{min-width:0}body[data-cd-case="004"] .visual{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--surface);margin:0}body[data-cd-case="004"] .scene-head,body[data-cd-case="004"] .scene-foot{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 16px;font:10px/1.7 var(--font-mono);color:var(--muted);border-bottom:1px solid var(--line)}body[data-cd-case="004"] .scene-foot{border-top:1px solid var(--line);border-bottom:0;font-size:9px}body[data-cd-case="004"] .scene-svg{background:var(--bg);padding:10px;min-width:0}body[data-cd-case="004"] .scene-svg>svg{display:block;width:100%;height:auto;max-height:430px}body[data-cd-case="004"] .status{display:inline-flex;gap:6px;align-items:center;font-size:9px;letter-spacing:.06em}body[data-cd-case="004"] .dot{width:5px;height:5px;background:var(--teal);border-radius:50%}body[data-cd-case="004"] .stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}body[data-cd-case="004"] .stat{padding:18px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}body[data-cd-case="004"] .stat strong{font:36px/1.3 var(--font-serif);color:var(--gold)}body[data-cd-case="004"] .stat span{display:block;font:10px/1.7 var(--font-mono);color:var(--muted)}body[data-cd-case="004"] .mission{padding:26px;background:var(--surface);border:1px solid var(--line);border-radius:7px}body[data-cd-case="004"] .feature{display:block;text-align:left;padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:7px;color:var(--text)}body[data-cd-case="004"] .feature>svg{width:30px;height:30px;color:var(--gold);margin-bottom:18px}body[data-cd-case="004"] .feature h3{margin:0 0 8px}body[data-cd-case="004"] .feature p{font-size:12px;color:var(--muted)}body[data-cd-case="004"] .toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}body[data-cd-case="004"] .tool{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;background:var(--surface);border:1px solid var(--line);border-radius:4px;color:var(--text)}body[data-cd-case="004"] .tool svg{width:18px;height:18px;flex:none}body[data-cd-case="004"] .tool.active{border-color:var(--gold);color:var(--gold)}body[data-cd-case="004"] .timeline-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:10px;margin-top:22px}body[data-cd-case="004"] .timeline-list button{padding:14px;text-align:left;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:4px;font-size:12px}body[data-cd-case="004"] .timeline-list b{display:block;color:var(--gold);font:14px var(--font-mono);margin-bottom:8px}body[data-cd-case="004"] .timeline-list button.active{border-color:var(--gold);background:var(--panel-2);color:var(--text)}body[data-cd-case="004"] .evidence-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:18px}body[data-cd-case="004"] .evidence-card{min-width:0}body[data-cd-case="004"] .evidence-art{display:flex;align-items:center;justify-content:center;min-height:110px;background:var(--bg);border-radius:4px;padding:18px;margin-bottom:14px}body[data-cd-case="004"] .evidence-art>svg{width:60px;height:60px;color:var(--teal)}body[data-cd-case="004"] .person{display:flex;align-items:center;gap:18px;margin-bottom:18px}body[data-cd-case="004"] .portrait{width:84px;height:96px;flex:none;border:1px solid var(--line);border-radius:6px;background:var(--bg);overflow:hidden}body[data-cd-case="004"] .quote{padding:16px 0 16px 18px;border-left:2px solid var(--gold);font-style:italic;color:var(--text);font-size:14px}body[data-cd-case="004"] .hypothesis{margin-bottom:18px}body[data-cd-case="004"] .links{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}body[data-cd-case="004"] .links button{padding:7px 10px;border:1px solid var(--line);border-radius:4px;background:var(--bg);color:var(--muted);font:11px var(--font-mono)}body[data-cd-case="004"] .links button.active,body[data-cd-case="004"] .links button.selected{color:var(--gold);border-color:var(--gold)}body[data-cd-case="004"] .result{margin-top:18px;padding:18px;background:var(--panel-2);border:1px solid var(--line);border-left:3px solid var(--teal);border-radius:4px}body[data-cd-case="004"] .solution{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}body[data-cd-case="004"] .solution input{flex:none;width:18px;height:18px;margin:0}body[data-cd-case="004"] .solution span{flex:1}body[data-cd-case="004"] .solution b{color:var(--gold)}body[data-cd-case="004"] .table-wrap{overflow-x:auto;width:100%;margin-top:18px}body[data-cd-case="004"] table{width:100%;border-collapse:collapse;font-size:12px}body[data-cd-case="004"] th,body[data-cd-case="004"] td{padding:12px;text-align:left;border-bottom:1px solid var(--line)}body[data-cd-case="004"] th{color:var(--gold);font-weight:500}body[data-cd-case="004"] .notearea{min-height:260px}body[data-cd-case="004"] .questions{list-style:none;padding:0}body[data-cd-case="004"] .questions li{padding:12px 0;border-bottom:1px solid var(--line)}body[data-cd-case="004"] .num{color:var(--gold);font-family:var(--font-mono);margin-right:12px}body[data-cd-case="004"] .rail{padding:18px;border:1px solid var(--line);background:var(--surface);border-radius:7px}body[data-cd-case="004"] .btn-ghost{background:transparent;color:var(--muted);border:1px solid var(--line)}
@media(max-width:600px){body[data-cd-case="004"] .formgrid{grid-template-columns:1fr}body[data-cd-case="004"] .stats{gap:8px}body[data-cd-case="004"] .stat{padding:12px 8px}body[data-cd-case="004"] .stat strong{font-size:26px}body[data-cd-case="004"] .stat span{font-size:8px}body[data-cd-case="004"] .mission{padding:20px}body[data-cd-case="004"] .timeline-list{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-cd-case="004"] .panel-head{flex-wrap:wrap}body[data-cd-case="004"] .toolbar .tool{flex:1 1 135px}body[data-cd-case="home"] .filters{flex-wrap:wrap;gap:8px 20px}body[data-cd-case="home"] .filter-line{align-items:flex-start}}

body[data-cd-case="home"] .scene{overflow:hidden}body[data-cd-case="home"] .scene-image{inset:0;width:100%;height:100%;object-fit:contain;object-position:center}body[data-cd-case="home"] .case-cover .cover-drawing{right:0;top:0;width:100%;height:100%;object-fit:contain}
