:root{color-scheme:dark;--bg:#0b1619;--panel:#102023;--panel2:#14282b;--line:#2e4445;--line-light:#385150;--text:#e9e6d9;--muted:#92aaa5;--quiet:#718a85;--accent:#dab783;--accent-bright:#f5d5a1;--teal:#94c9bf;--radius:11px;font-family:Inter,"Segoe UI",Arial,sans-serif;font-synthesis:none}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text)}body{background:radial-gradient(ellipse at 42% 3%,#203033 0,transparent 44%),var(--bg)}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:2px solid var(--accent-bright);outline-offset:3px}button:disabled{opacity:.5;cursor:default}[hidden]{display:none!important}
.app-shell{max-width:1760px;margin:auto}.site-header{height:73px;border-bottom:1px solid #314246;display:flex;justify-content:space-between;align-items:center;padding:0 clamp(22px,3.6vw,60px)}.identity,.top-actions{display:flex;align-items:center}.identity{gap:13px}.brand-mark{border:1px solid var(--accent);height:38px;width:38px;border-radius:50%;display:grid;place-items:center;position:relative}.mark-ring{height:27px;width:27px;border:2px solid var(--accent);border-radius:50%}.mark-ring:before,.mark-ring:after{content:"";position:absolute;background:var(--accent)}.mark-ring:before{height:2px;width:25px;left:5px;top:17px;transform:rotate(48deg)}.mark-ring:after{height:2px;width:25px;left:5px;top:17px;transform:rotate(-48deg)}.mark-spoke{position:absolute;width:6px;height:6px;background:var(--accent);border-radius:50%}.brand-copy{display:flex;flex-direction:column;gap:4px}.brand-copy strong{font-size:11px;letter-spacing:.17em}.brand-copy small{font-size:8px;color:var(--muted);letter-spacing:.16em}.slim-slash{color:var(--accent);padding:0 5px}.top-actions{gap:14px}.release-badge,.plain-button,.icon-button{font-size:10px;letter-spacing:.12em;font-weight:700}.release-badge{display:flex;align-items:center;gap:9px;color:var(--muted);padding-right:15px}.live-dot,.render-light{display:inline-block;width:6px;height:6px;background:#a7d9c4;box-shadow:0 0 14px #98d4b5aa;border-radius:50%}.plain-button,.icon-button{background:transparent;color:var(--text);padding:9px 12px;border:1px solid var(--line)}.plain-button:hover,.icon-button:hover{border-color:var(--accent);color:var(--accent)}.icon-button{display:flex;gap:10px;align-items:center}.title-band{display:flex;justify-content:space-between;align-items:end;gap:28px;padding:33px clamp(22px,3.6vw,60px) 30px}.eyebrow,.micro-label,.mono-label,.section-heading,.edition-id{font-size:10px;letter-spacing:.17em;font-weight:700}.eyebrow{color:var(--accent)}.accent-rule{display:inline-block;width:20px;height:2px;background:var(--accent);margin:0 9px 3px 0}.title-band h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(38px,4.1vw,69px);line-height:1.06;letter-spacing:-.044em;font-weight:400;margin:12px 0 10px}.title-band h1 em{font-weight:400;color:var(--accent);font-style:normal}.title-slash{font-family:Arial,sans-serif;color:#6c8582;font-size:.7em;font-weight:200;vertical-align:6px}.tagline{color:#b8c3bb;letter-spacing:.012em;margin:0;font-size:14px}.title-aside{padding-bottom:8px;display:flex;flex-direction:column;gap:9px;text-align:right}.title-aside>span,.title-aside small{font-size:9px;letter-spacing:.14em;color:var(--quiet)}.title-aside strong{color:#e4d9be;letter-spacing:.13em;font-size:12px}.title-aside strong span{color:var(--accent)}
.workspace{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;padding:0 clamp(22px,3.6vw,60px)}.primary{min-width:0}.viewer{position:relative;height:clamp(470px,57vw,690px);max-height:74vh;min-height:490px;overflow:hidden;border:1px solid #435250;border-radius:10px;background:radial-gradient(ellipse at 55% 42%,#466263 0%,#2c474b 32%,#152a30 72%,#0e1d23 100%)}.viewer:before{content:"";position:absolute;left:14%;right:14%;bottom:14%;height:29%;border-radius:50%;background:#07151c9e;filter:blur(45px);pointer-events:none}.viewer:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#92afb206 0,transparent 45%,#06131788 100%);pointer-events:none}#viewport{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:grab}#viewport:active{cursor:grabbing}.viewer-grain{position:absolute;inset:0;pointer-events:none;opacity:.32;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.1'/%3E%3C/svg%3E")}.viewer-topline{position:absolute;top:20px;left:25px;right:25px;z-index:2;display:flex;align-items:center;justify-content:space-between}.mono-label{color:#d8e3d9}.separator{color:var(--accent);margin:0 5px}.render-status{font-size:10px;letter-spacing:.14em;color:#a8c7bf;display:flex;align-items:center;gap:9px}.view-side-mark{position:absolute;top:47%;left:22px;z-index:1;transform:rotate(-90deg) translateX(-50%);transform-origin:left center;font-size:9px;letter-spacing:.3em;color:#bed9cc66;pointer-events:none}.view-side-mark span{color:var(--accent)}.viewer-bottom{z-index:4;position:absolute;bottom:22px;left:22px;right:22px;display:flex;justify-content:space-between;align-items:center;gap:12px}.view-preset{display:flex;gap:3px;border:1px solid #75918a55;padding:4px;background:#102429d9;backdrop-filter:blur(5px);border-radius:5px}.cam-button{border:0;background:transparent;color:#acbeb8;font-size:9px;letter-spacing:.12em;font-weight:700;padding:10px 13px;border-radius:3px}.cam-button.selected,.cam-button:hover{color:#152124;background:#dec293}.nav-hint{font-size:9px;letter-spacing:.1em;color:#b8cec7}.dotsep{color:var(--accent)}.hotspot-layer{position:absolute;inset:0;z-index:3;pointer-events:none}.hotspot{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;border:1px solid #b8d9c1a8;background:#173336da;box-shadow:0 4px 30px #0007;color:#f5ebd8;border-radius:50%;width:18px;height:18px;padding:0;transition:background .15s,transform .15s}.hotspot:after{content:"";position:absolute;inset:-7px;border:1px solid #a3cfb080;border-radius:50%}.hotspot.active,.hotspot:hover{background:var(--accent);border-color:var(--accent-bright);transform:translate(-50%,-50%) scale(1.2)}.hotspot span{position:absolute;left:calc(100% + 12px);top:-4px;white-space:nowrap;padding:6px 8px;font-size:9px;letter-spacing:.09em;background:#102226ec;border:1px solid #617c74b0;border-radius:3px;color:#e8e9d5;pointer-events:none}.hotspot:nth-child(2) span,.hotspot:nth-child(5) span{left:auto;right:calc(100% + 12px)}.hotspot:hover span,.hotspot.active span{border-color:var(--accent);color:var(--accent-bright)}.viewer-error{position:absolute;inset:22%;z-index:10;display:grid;place-content:center;border:1px solid #c77d66;color:#fff;background:#3b2527;line-height:1.65;padding:20px;font-size:15px}.metric-strip{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #344747;border-top:0;border-radius:0 0 9px 9px;margin:-1px 0 0;background:linear-gradient(95deg,#17292d,#112226)}.metric{padding:24px 14px 20px 23px;border-right:1px solid #3a504e}.metric:last-child{border-right:0}.metric small{font-size:9px;letter-spacing:.13em;font-weight:700;color:var(--quiet);white-space:nowrap}.metric div{display:flex;align-items:baseline;gap:8px;margin-top:10px}.metric strong{font-size:clamp(23px,2.1vw,31px);font-weight:400;font-family:Georgia,serif;font-variant-numeric:tabular-nums}.metric span{font-size:9px;font-weight:700;color:var(--accent);letter-spacing:.11em}.bottom-info{display:grid;grid-template-columns:1.35fr .9fr;gap:40px;border-bottom:1px solid var(--line);padding:30px 4px 36px}.micro-label{color:var(--accent)}.bottom-info h2{font:400 26px/1.3 Georgia,serif;margin:13px 0 9px}.bottom-info p{font-size:12px;line-height:1.9;color:#aebcb5;margin:0}.info-secondary{border-left:1px solid var(--line);padding-left:30px}.formula{display:block;font:17px Georgia,serif;letter-spacing:.025em;color:#e0d9c7;margin:24px 0 15px}.formula sub{font:10px Arial,sans-serif}.info-secondary p{font-size:11px}
.sidebar{background:linear-gradient(140deg,#142527,#0e1e22);border:1px solid #345052;border-radius:10px;overflow:hidden;height:fit-content}.sidebar-head{display:flex;justify-content:space-between;align-items:center;padding:25px 23px;border-bottom:1px solid var(--line)}.sidebar-head h2{font:400 24px Georgia,serif;letter-spacing:-.02em;margin:8px 0 0}.edition-id{color:#849d98;writing-mode:vertical-rl}.run-row{display:flex;gap:9px;padding:19px 20px 4px}.run-button{padding:14px 12px;background:var(--accent);color:#1b2524;border:1px solid #efc993;border-radius:5px;font-size:10px;font-weight:800;letter-spacing:.11em;flex:1;display:flex;gap:10px;align-items:center;justify-content:center}.run-button:hover{background:var(--accent-bright)}.run-icon{font-size:13px;font-weight:800}.reset-button{min-width:83px;background:#1b3033;color:var(--text);border:1px solid #466060;border-radius:5px;font-size:10px;letter-spacing:.08em;font-weight:700}.reset-button:hover{border-color:var(--accent)}.sidebar-section{padding:25px 22px 12px}.sidebar-section+.sidebar-section{border-top:1px solid var(--line)}.section-heading{display:flex;gap:10px;align-items:center;margin:0 0 26px}.section-heading>span{color:var(--accent);font-family:Georgia,serif;font-size:12px;font-weight:400}.section-heading h3{font-size:10px;white-space:nowrap;letter-spacing:.14em;margin:0}.section-heading>div{height:1px;background:#45615c;flex:1}.control-field{margin:0 0 26px}.control-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:10px}.control-label label{font-size:12px;color:#d3ded5}.control-label output{font-size:11px;color:var(--accent);white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:700}input[type=range]{width:100%;accent-color:var(--accent);height:5px;cursor:pointer;margin:0;display:block}input[type=range]::-webkit-slider-runnable-track{background:#375353;height:4px;border-radius:8px}input[type=range]::-webkit-slider-thumb{appearance:none;background:#f1d4a3;border:3px solid #1c3031;border-radius:50%;width:17px;height:17px;margin-top:-7px}input[type=range]{appearance:none}.range-endpoints{display:flex;justify-content:space-between;margin-top:10px;font-size:9px;letter-spacing:.07em;color:#77938b}.whorl-field{margin-bottom:16px}.segmented{display:flex;gap:3px;background:#0b1b1e;border:1px solid #345050;padding:4px;border-radius:5px}.segmented button{flex:1;padding:11px 0;color:#a6bcb3;background:transparent;border:1px solid transparent;border-radius:3px;font-size:11px}.segmented button.active{background:#2d4949;border-color:#a8c4aa;color:#f3dfb6}.segmented button:hover{border-color:#99a9a1}.advisory{display:flex;gap:10px;align-items:start;font-size:10px;line-height:1.6;border:1px solid #395b58;background:#1a3133;padding:11px 12px;border-radius:4px;color:#a9c9bd}.advisory span:first-child{font-size:15px;color:var(--accent)}.advisory.warning{border-color:#966c51;background:#372a27;color:#efc59b}.finish-row{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:6px 0 23px}.finish-button{border:1px solid #3d5452;background:#122428;border-radius:5px;padding:10px 6px 12px;display:flex;flex-direction:column;align-items:center;gap:8px;color:#a9bfb6;font-size:9px;letter-spacing:.12em;font-weight:800}.finish-button.active,.finish-button:hover{border-color:var(--accent);color:var(--accent-bright);background:#273733}.swatch{width:24px;height:24px;border-radius:50%;box-shadow:inset 0 2px 2px #fff5,inset 0 -2px 2px #0006}.toggle-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 0;border-top:1px solid #304649}.toggle-row>div{display:flex;flex-direction:column;gap:6px}.toggle-row strong{font-size:11px;font-weight:600}.toggle-row small{font-size:10px;color:#819d95}.switch{width:43px;height:25px;flex-shrink:0;background:#354d4c;border:1px solid #5b7270;border-radius:20px;padding:3px;display:flex;align-items:center;justify-content:flex-start}.switch span{width:17px;height:17px;background:#c5d1c9;border-radius:50%;transition:transform .18s}.switch.on{background:#92784f;border-color:#d6ac72}.switch.on span{transform:translateX(17px);background:#ffe4b7}.inspect-section{padding-bottom:23px}.part-card{border:1px solid #41615d;background:radial-gradient(ellipse at right bottom,#20403d,#15282a 65%);padding:17px;border-radius:5px;min-height:156px}.part-card-top{display:flex;justify-content:space-between;color:var(--accent);font-size:9px;letter-spacing:.12em}.part-card h4{font:400 24px Georgia,serif;margin:14px 0 8px}.part-card p{font-size:11px;line-height:1.7;color:#b8cdc0;margin:0}.part-select{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.part-select button{border:1px solid #445d5a;background:transparent;color:#a9c5b8;padding:7px 9px;font-size:9px;letter-spacing:.02em;border-radius:3px}.part-select button.active,.part-select button:hover{color:#202926;background:var(--accent);border-color:var(--accent)}.export-section{padding-bottom:25px}.export-intro,.export-footnote{font-size:11px;line-height:1.7;color:#9cb7ae}.export-intro{margin:-7px 0 17px}.export-button,.photo-button{display:flex;gap:10px;align-items:center;justify-content:center;width:100%;padding:13px 12px;font-size:10px;font-weight:800;letter-spacing:.09em;border-radius:5px}.export-button{color:#edd6ad;border:1px solid #bba17a;background:#2b3430}.export-button:hover{background:#4a4839}.photo-button{margin-top:8px;border:1px solid #496362;color:#bdd6c9;background:#1c3033}.photo-button:hover{border-color:var(--accent)}.export-footnote{font-size:9px;color:#7f9b93;margin-top:14px;text-align:center}.site-footer{display:flex;justify-content:space-between;gap:15px;margin:35px clamp(22px,3.6vw,60px) 0;padding:25px 0 35px;border-top:1px solid var(--line);font-size:9px;letter-spacing:.11em;color:#71918b}
dialog{width:min(660px,calc(100vw - 30px));max-height:calc(100vh - 30px);overflow:auto;background:#142528;color:var(--text);border:1px solid #8d907b;border-radius:10px;box-shadow:0 35px 120px #000b;padding:0}dialog::backdrop{background:#020f13dd;backdrop-filter:blur(5px)}.dialog-inner{padding:30px 32px}.modal-head{display:flex;justify-content:space-between;align-items:center}.modal-close{background:transparent;color:var(--text);font-size:26px;border:0}.dialog-inner h2{font:400 34px Georgia,serif;margin:14px 0}.dialog-inner>p{font-size:13px;line-height:1.8;color:#b5c8bc}.guide-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px;margin:25px 0}.guide-grid>div{border-top:1px solid #45605a;padding-top:15px}.guide-grid strong{font-size:10px;color:var(--accent);letter-spacing:.14em}.guide-grid p{font-size:12px;color:#afc6bb;line-height:1.8}.dialog-inner>.run-button{width:100%;flex:none}
@media(max-width:1100px){.workspace{grid-template-columns:minmax(0,1fr) 315px;gap:12px}.sidebar-head{padding:23px 16px}.sidebar-section{padding-left:16px;padding-right:16px}.metric{padding-left:14px}.nav-hint{display:none}}
@media(max-width:820px){.workspace{grid-template-columns:1fr}.viewer{height:62vh;max-height:none;min-height:460px}.sidebar{display:grid;grid-template-columns:1fr 1fr}.sidebar-head,.run-row{grid-column:1/-1}.sidebar-section+.sidebar-section{border-top:1px solid var(--line)}.sidebar-section:nth-of-type(even){border-right:1px solid var(--line)}.info-secondary{padding-left:22px}}
@media(max-width:590px){.site-header{padding:0 17px;height:63px}.brand-copy strong{font-size:9px}.brand-copy small{font-size:7px}.brand-mark{width:33px;height:33px}.release-badge{display:none}.top-actions{gap:6px}.icon-button,.plain-button{padding:9px 7px;font-size:9px}.top-help span{display:none}.title-band{padding:28px 20px 25px;display:block}.title-band h1{font-size:clamp(34px,8vw,48px)}.title-aside{display:none}.tagline{font-size:12px}.workspace{padding:0 12px}.viewer{min-height:390px;height:50svh}.viewer-topline{left:14px;right:14px;top:16px}.mono-label,.render-status{font-size:8px}.viewer-bottom{left:10px;right:10px;bottom:12px}.cam-button{padding:9px 10px;font-size:9px}.hotspot span{display:none}.metric-strip{grid-template-columns:1fr 1fr}.metric{padding:16px;border-bottom:1px solid var(--line)}.metric:nth-child(2){border-right:0}.metric:nth-child(3),.metric:nth-child(4){border-bottom:0}.metric strong{font-size:27px}.bottom-info{grid-template-columns:1fr;gap:18px;padding:24px 10px}.info-secondary{border-left:0;border-top:1px solid var(--line);padding:20px 0 0}.formula{margin:12px 0}.sidebar{display:block}.sidebar-section:nth-of-type(even){border-right:0}.site-footer{display:block;line-height:2.2;text-align:center;margin:25px 18px}.site-footer span{display:block}.guide-grid{grid-template-columns:1fr;gap:8px}.dialog-inner{padding:22px}.viewer-grain{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}
