:root{--s0:#101114;--s1:#17181c;--s2:#1d1e23;--s3:#25262c;--t1:#f7f6f2;--t2:#c1c0bb;--t3:#96958f;--t4:#777771;--sidebar-w:360px;--topbar-h:68px;--status-h:42px}
body{font-size:14px}.shell{grid-template-rows:54px var(--topbar-h) 1fr var(--status-h)}
.projectbar{padding:0 22px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--b2);background:#101114;gap:16px}.project-identity,.project-actions{display:flex;align-items:center;gap:10px}.studio-mark{display:grid;place-items:center;width:28px;height:28px;background:var(--accent);color:#151515;border-radius:7px;font-weight:800}.project-identity input{background:transparent;border:1px solid transparent;border-radius:5px;font-size:14px;width:180px;padding:5px 8px}.project-identity input:focus{border-color:var(--accent);outline:none}.local-label{font:11px var(--mono);letter-spacing:.1em;color:var(--t3)}
.btn{height:36px;font-size:14px}.btn-sm{height:30px;font-size:13px}.topbar{padding-left:22px}.brand{font-family:var(--sans);font-size:21px;font-weight:850;letter-spacing:-1px}.brand small{font-size:11px;letter-spacing:.13em}.panel{padding:20px}.panel-label,.big-field-label{font-size:12px;letter-spacing:.1em}.field-label,.check,.pill-toggle label,.mode-pills label{font-size:14px}.sidebar input[type=text],.sidebar input[type=number],.sidebar select{height:36px;font-size:14px}.drop{padding:22px 12px;border-radius:10px}.drop strong{font-size:15px}.drop small,.muted-tip,.filename{font-size:12px}.source-actions{gap:8px}.icon-btn{height:32px}.big-field-value{font-size:26px}.canvas{background:radial-gradient(ellipse at 55% 45%,#29292c 0%,#101114 75%)}.canvas-hint{top:56px;right:16px;font-size:11px}.canvas-meta{font-size:12px}.hm-mini{width:154px}.status-strip .k{font-size:11px}.status-strip .v{font-size:12px}.stat-cell{min-width:0}.status-right{margin-left:auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.mode-pills input:focus-visible+label,.orient-pills input:focus-visible+label{outline:2px solid var(--accent)}
dialog.product-dialog{background:#1a1b20;color:var(--t1);border:1px solid var(--b3);border-radius:16px;width:min(680px,calc(100vw - 32px));padding:28px;max-height:85vh;overflow:auto;box-shadow:0 30px 100px #0008}dialog::backdrop{background:#000a;backdrop-filter:blur(6px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.dialog-heading h2{font-size:24px;letter-spacing:-.03em;margin:0}.product-dialog p,.product-dialog li{font-size:15px;line-height:1.7;color:var(--t2)}.product-dialog h3{font-size:16px;margin:24px 0 6px}.product-dialog .guide-kicker{color:var(--accent);font:12px var(--mono);letter-spacing:.1em}.product-dialog li{margin-bottom:8px}.product-dialog code{color:var(--t1)}.save-state{font-size:12px;color:var(--t3)}
@media(min-width:1100px){.topbar{grid-template-columns:240px 1fr auto}.hm-mini{width:168px}}
@media(max-width:900px){.local-label{display:none}.projectbar{padding:0 12px}.project-identity input{width:145px}.project-actions{gap:5px}.project-actions .btn{font-size:12px;padding:0 8px}.topbar{gap:8px;padding:8px 12px;grid-template-columns:1fr auto}.brand small{display:none}.mode-pills{grid-row:2;grid-column:1/-1}.shell{grid-template-rows:54px 104px 1fr 42px}.top-actions kbd{display:none}.canvas-hint{display:none}.status-strip .stat-cell:nth-child(2),.status-strip .stat-cell:nth-child(4),.status-strip .stat-cell:nth-child(7){display:none}}
@media(max-width:640px){.project-identity input{width:110px;font-size:12px}.studio-mark{display:none}.projectbar{gap:4px}.project-actions .btn{font-size:12px;height:32px;padding:0 6px}.canvas-meta{top:12px;left:12px}.hm-mini{width:100px}.status-strip .stat-cell:nth-child(3),.status-strip .stat-cell:nth-child(5){display:none}.status-strip{padding:0 10px}.status-right{gap:6px}.tips-link{font-size:12px}.sidebar{top:158px!important;bottom:42px!important}.axis-legend{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
.preview-unavailable{position:absolute;bottom:20px;left:20px;max-width:400px;padding:16px;background:var(--s2);border:1px solid var(--b2);border-radius:8px;font-size:14px;color:var(--t2);z-index:10}
@media(max-width:900px){.sidebar{top:158px!important;bottom:42px!important}.topbar{grid-template-rows:44px 40px}}
@media(max-height:760px){.hm-mini{width:100px}}
