:root{color-scheme:light;--ivory:#f8f5ef;--paper:#fffdf8;--ink:#35281f;--walnut:#4b3328;--brass:#a7804a;--gold:#e5caa0;--muted:#776b5f;--line:#ddd4c7;--soft:#eee8dd;--forest:#253f32}
*{box-sizing:border-box}body{margin:0;background:var(--ivory);color:var(--ink);font:14px/1.5 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,input,select{font:inherit;color:inherit}button{cursor:pointer;transition:background .18s,border-color .18s,color .18s;border:1px solid var(--line);border-radius:3px 12px;background:transparent;padding:9px 13px}button:disabled{cursor:default;opacity:.38}button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--brass);outline-offset:4px}button:not(:disabled):hover{border-color:var(--brass);background:#efe7d9}button[aria-pressed=true]{background:var(--walnut);border-color:var(--walnut);color:var(--paper)}select{width:100%;appearance:auto;border:1px solid var(--line);border-radius:3px 9px;padding:10px 8px;background:var(--paper);margin-top:6px;min-height:41px}a{color:var(--walnut);text-underline-offset:3px}p,h1,h2{margin:0}
.site-header{height:98px;padding:0 4.1%;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);background:var(--paper)}.brand{display:block;line-height:0;flex-shrink:0}.brand img{width:228px;height:auto;max-width:100%;object-fit:contain}.studio-label{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-left:auto;margin-right:24px}.studio-label span{color:var(--brass);padding:0 10px}.share-button{font-size:12px;border-color:var(--brass);padding:11px 18px}.studio{max-width:1680px;margin:0 auto;padding:30px 4.1% 0}.intro{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:25px}.eyebrow{text-transform:uppercase;letter-spacing:2.2px;color:var(--brass);font-size:10px;font-weight:600;line-height:1.5}h1{font:normal clamp(38px,4vw,59px)/1.05 Georgia,'Times New Roman',serif;letter-spacing:-1.8px;margin-top:6px}.title-dot{color:var(--brass)}.intro-caption{text-align:right;color:var(--walnut);font-size:12px;line-height:1.7;padding-bottom:3px}.intro-caption span{font-size:11px;color:var(--muted)}
.workspace{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:34px;align-items:start}.model-area{min-width:0}.model-heading{display:flex;align-items:center;justify-content:space-between;padding:11px 18px;border:1px solid var(--line);border-bottom:0;border-radius:3px 16px 0 0;background:var(--paper);font-size:12px}#conversion-state{font-weight:600}.motion-label{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}#stage{height:550px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 47% 40%,#fffdf8 0%,#f2ede3 64%,#e9e1d4 100%);border:1px solid var(--line);border-top:0;border-bottom:0}#stage canvas{display:block;width:100%;height:100%;touch-action:none}#status{position:absolute;bottom:15px;left:18px;right:18px;pointer-events:none;font-size:10px;color:var(--muted);line-height:1.4;letter-spacing:.1px}.conversion-controls{border:1px solid var(--line);border-top:0;border-radius:0 0 3px 16px;background:var(--paper);padding:15px 18px 17px}.conversion-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.endpoint-switch{display:flex;margin-right:auto;gap:0}.endpoint-switch button{font-size:12px;border-radius:0;padding:9px 15px}.endpoint-switch button:first-child{border-radius:3px 0 0 9px}.endpoint-switch button:last-child{border-radius:0 9px 3px 0;border-left:0}.primary-button{background:var(--walnut);border-color:var(--walnut);color:var(--paper);min-width:157px;font-size:12px}.primary-button span{padding-left:12px;color:var(--gold)}.primary-button:not(:disabled):hover{background:#624532;border-color:#624532}.pause-button{font-size:12px;padding:9px 12px;min-width:59px}.motion-scrub{display:grid;grid-template-columns:auto minmax(90px,1fr) auto;gap:15px;align-items:center;margin-top:16px}.scrub-label{font-size:10px;color:var(--muted);white-space:nowrap}.scrub-label output{display:inline-block;margin-left:9px;color:var(--walnut);font-variant-numeric:tabular-nums;width:28px;text-align:right}#angle-range{width:100%;accent-color:var(--brass);height:20px;margin:0;cursor:ew-resize}.speed-control{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--muted)}.speed-control select{width:auto;font-size:11px;margin:0;padding:5px 4px;min-height:29px;border-color:transparent;background:transparent}.view-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:16px}.view-label{font-size:10px;text-transform:uppercase;letter-spacing:1.6px;color:var(--muted);margin-right:5px}.view-controls button{font-size:11px;padding:6px 10px;border-color:transparent}.view-controls button:hover{background:var(--soft)}.gesture-help{margin-top:10px;font-size:10px;color:var(--muted);letter-spacing:.1px}.gesture-help span{padding:0 8px;color:var(--brass)}
.design-panel{border-top:1px solid var(--brass);padding-top:20px}.design-panel h2{font:normal 27px/1.2 Georgia,'Times New Roman',serif;letter-spacing:-.5px;margin:5px 0 10px}.finish-description,.section-description{font-size:12px;color:var(--muted);line-height:1.75;max-width:275px}.finish-selects{display:grid;gap:13px;margin-top:19px}.finish-selects label,.field-label{display:block;font-size:10px;color:var(--muted);letter-spacing:.3px}.finish-selects select{font-size:12px;color:var(--ink)}.material-swatches{display:flex;gap:8px;margin-top:17px}.swatch{width:27px;height:27px;border-radius:50%;box-shadow:inset 0 0 0 1px #0000000c}.swatch.forest{background:var(--forest)}.construction-section{border-top:1px solid var(--line);margin-top:23px;padding-top:21px}.construction-section h2{font-size:25px}.assembly-buttons{display:flex;flex-wrap:wrap;gap:7px;margin:15px 0 17px}.assembly-buttons button{font-size:11px;padding:8px 10px}.check-control{display:flex;align-items:center;gap:9px;font-size:11px;color:var(--walnut);margin:12px 0;min-height:18px}.check-control input{accent-color:var(--brass);margin:0;width:15px;height:15px;flex-shrink:0}.detail-note{font-size:10px;color:var(--muted);line-height:1.6;margin-top:13px}.component-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 0;margin-top:21px;font-size:12px}.component-details summary{cursor:pointer;list-style-position:outside;margin-left:13px;color:var(--walnut)}.details-content{padding-top:15px}.details-content select{font-size:11px;max-width:100%}#part-info{font-size:10px;color:var(--muted);line-height:1.7;overflow-wrap:anywhere;margin:10px 0;min-height:34px}.part-actions{display:flex;gap:5px;flex-wrap:wrap}.part-actions button{font-size:10px;padding:6px 8px}.reset-button{font-size:10px;border-color:transparent;padding:10px 0;color:var(--muted);margin-top:7px}.reset-button:not(:disabled):hover{border-color:transparent;background:transparent;color:var(--walnut)}
.studio-footer{display:flex;gap:35px;align-items:flex-start;justify-content:space-between;border-top:1px solid var(--line);margin-top:32px;padding:20px 0 24px;color:var(--muted);font-size:10px}.footer-signature{flex-shrink:0}.footer-signature>span{font:normal 16px Georgia,'Times New Roman',serif;color:var(--walnut)}.footer-signature p{margin-top:4px;font-size:9px;letter-spacing:1.4px;text-transform:uppercase}.source-details{max-width:650px;text-align:right;line-height:1.7}.source-details summary{cursor:pointer;font-size:10px}.source-details div{padding-top:10px}.source-details p+p{margin-top:8px}.source-details a{display:inline-block;margin-left:12px;margin-bottom:4px}
@media(min-width:1550px){#stage{height:610px}.workspace{grid-template-columns:minmax(0,1fr) 340px;gap:45px}.studio{padding-top:40px}.intro{margin-bottom:30px}}
@media(max-width:1150px){.workspace{grid-template-columns:minmax(0,1fr) 265px;gap:24px}.studio-label{display:none}.motion-scrub{grid-template-columns:minmax(0,1fr) auto;gap:7px 12px}.scrub-label{grid-column:1/-1}#stage{height:530px}.conversion-actions{gap:7px}.endpoint-switch{margin-right:0}.primary-button{margin-left:auto;min-width:136px}.endpoint-switch button{padding:9px 10px}}
@media(max-width:850px){.site-header{height:84px;padding:0 24px}.brand img{width:205px}.studio{padding:26px 24px 0}.workspace{grid-template-columns:1fr;gap:28px}.intro-caption{font-size:11px}.intro-caption span{display:none}.design-panel{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-top:23px}.construction-section{border:0;margin:0;padding:0}.component-details{grid-column:1/-1;margin-top:0}.reset-button{justify-self:start;margin-top:-16px}#stage{height:540px}.motion-scrub{grid-template-columns:auto minmax(90px,1fr) auto;gap:15px}.scrub-label{grid-column:auto}.primary-button{margin-left:0}.endpoint-switch{margin-right:auto}.intro h1{font-size:46px}.studio-footer{margin-top:25px}}
@media(max-width:520px){.site-header{height:76px;padding:0 16px;gap:14px}.brand img{width:178px}.share-button{font-size:10px;padding:9px 11px;white-space:nowrap}.studio{padding:22px 14px 0}.intro{gap:12px;margin-bottom:19px}.intro h1{font-size:39px;letter-spacing:-1.4px}.eyebrow{font-size:9px;letter-spacing:1.8px}.intro-caption{font-size:10px;max-width:93px;line-height:1.6}.model-heading{padding:10px 12px;font-size:11px}.motion-label{font-size:8px;letter-spacing:1.1px}#stage{height:410px}#status{left:12px;right:12px;bottom:10px;font-size:9px}.conversion-controls{padding:13px 12px 15px}.conversion-actions{gap:8px}.endpoint-switch{flex:1;margin-right:0}.endpoint-switch button{flex:1;padding:9px 8px;font-size:10px}.primary-button{order:3;width:100%;padding:11px 12px;font-size:11px}.pause-button{font-size:10px;min-width:54px;padding:9px}.motion-scrub{grid-template-columns:minmax(0,1fr) auto;gap:5px 9px;margin-top:13px}.scrub-label{grid-column:1/-1;font-size:9px}.speed-control{font-size:9px}.view-controls{gap:3px;margin-top:13px}.view-label{display:block;width:100%;font-size:9px;margin-bottom:3px}.view-controls button{padding:6px 7px;font-size:10px}.gesture-help{font-size:9px;line-height:1.7}.gesture-help span{padding:0 3px}.design-panel{display:block;padding-top:21px}.design-panel h2{font-size:27px}.finish-description,.section-description{max-width:none}.finish-selects{grid-template-columns:1fr 1fr;gap:11px}.construction-section{border-top:1px solid var(--line);margin-top:21px;padding-top:20px}.component-details{margin-top:20px}.reset-button{margin-top:7px}.studio-footer{display:block;margin-top:22px;padding-top:18px}.source-details{text-align:left;margin-top:15px}.source-details a{margin:0 12px 5px 0}}
@media(min-width:1151px) and (max-width:1549px){#stage{height:600px}}
@media(prefers-reduced-motion:reduce){button{transition:none}}
.finish-selects{grid-template-columns:1fr;gap:11px}.material-swatches .swatch{background-size:cover;background-position:center}
#slope-labels{position:absolute;inset:0;pointer-events:none;z-index:2;overflow:hidden}.slope-label{position:absolute;transform:translate(-50%,-135%);display:block;background:#fffdf6eb;border:1px solid #b49b70;border-radius:3px 8px;padding:5px 8px;color:#5c4325;font-size:9px;font-weight:700;letter-spacing:.6px;white-space:nowrap;box-shadow:0 2px 10px #35281f12}.slope-label.low{color:#305941;border-color:#7d9b83}.slope-label[hidden]{display:none}.channel-profile{margin-top:14px;padding:14px 16px 8px;background:#fffaf1;border:1px solid var(--line);border-radius:3px 12px}.channel-profile[hidden]{display:none}.profile-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;color:var(--walnut)}.profile-heading strong{font:normal 15px Georgia,serif}.profile-heading span{font-size:10px;color:var(--muted);white-space:nowrap}.channel-profile svg{display:block;width:100%;height:auto;margin-top:11px;max-height:150px}.channel-profile svg text{font:10px Arial,Helvetica,sans-serif;fill:#776044;letter-spacing:.7px}.channel-profile svg text:last-child{font-size:9px;fill:#8b7b68;letter-spacing:0}
button[aria-pressed=true]:not(:disabled):hover{background:var(--walnut);border-color:var(--walnut);color:var(--paper)}
@media(max-width:850px){.finish-selects{grid-template-columns:1fr 1fr}.finish-selects label:last-child{grid-column:1/-1}}@media(max-width:520px){.finish-selects{gap:10px}.profile-heading{display:block}.profile-heading strong{display:block;font-size:14px}.profile-heading span{display:block;margin-top:4px}.channel-profile{padding:12px 10px 5px}.channel-profile svg{margin-top:8px}.slope-label{font-size:8px;padding:4px 6px;max-width:138px;white-space:normal;text-align:center}}

.finish-loading{font-size:11px;color:var(--muted);margin-top:12px;min-height:17px}.finish-loading[hidden]{display:none}@media(max-width:850px){.finish-selects label:last-child{grid-column:auto}}

/* Compact, touch-friendly studio layout. */
.workspace{gap:30px}.model-heading{border-radius:5px 20px 0 0}#stage{background:radial-gradient(ellipse at 50% 45%,#fffdf9,#f0eae0 84%);scroll-margin-top:20px}.finish-section{scroll-margin-top:20px}.finish-selects{grid-template-columns:1fr 1fr;gap:14px 12px}.finish-selects label{font-size:11px}.finish-selects select{min-height:46px;padding:10px 8px;border-radius:5px 10px}.material-swatches{gap:10px}.material-swatches .swatch{height:30px;width:30px;border:3px solid var(--paper);box-shadow:0 0 0 1px var(--line)}.finish-description{max-width:none}.construction-details{margin-top:23px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.construction-details>summary{cursor:pointer;padding:17px 22px 17px 0;position:relative;list-style:none;font:normal 20px/1.25 Georgia,serif;color:var(--walnut)}.construction-details>summary::-webkit-details-marker{display:none}.construction-details>summary:after{content:'+';position:absolute;right:2px;top:18px;font:22px Arial;color:var(--brass)}.construction-details[open]>summary:after{content:'−'}.construction-details>summary span{display:block;font:10px/1.5 Arial,Helvetica,sans-serif;color:var(--muted);margin-top:4px;letter-spacing:.3px}.construction-details .construction-section{margin:0;border:0;padding:0 0 18px}.construction-section .eyebrow,.construction-section h2{display:none}.construction-section .section-description{font-size:11px}.component-details{margin-top:0;border-top:0;padding:17px 0}.component-details summary{min-height:21px}.reset-button{min-height:44px;margin-top:5px}.view-controls button{min-height:36px}.mobile-studio-actions{display:none}.studio-footer{gap:25px}.source-details{max-width:570px}.source-details a{margin-left:5px}.motion-scrub input{min-height:32px}.check-control{min-height:32px}.check-control input{width:18px;height:18px}.part-actions button{min-height:40px}.finish-selects label:last-child{grid-column:auto}
@media(min-width:851px){.design-panel{padding-top:18px}.design-panel h2{margin-bottom:8px}.finish-selects{margin-top:17px}.construction-details>summary{font-size:18px}.design-panel .check-control{font-size:11px}.source-details{padding-top:1px}}
@media(max-width:850px){body{padding-bottom:78px}.site-header{height:70px;padding:0 22px}.brand img{width:196px}.share-button{min-height:42px;font-size:11px}.studio{padding:24px 22px 0}.intro{margin-bottom:20px}.workspace{gap:27px}.design-panel{display:block;padding-top:24px}.finish-section{scroll-margin-top:18px}.finish-section h2{font-size:29px}.finish-description{font-size:13px}.finish-selects{grid-template-columns:1fr 1fr;margin-top:18px;gap:15px}.finish-selects label{font-size:11px}.finish-selects select{min-height:48px;font-size:13px;padding:11px 9px}.construction-details{margin-top:24px}.construction-details>summary{padding:18px 25px 18px 0}.construction-details .construction-section{padding:0 0 20px}.construction-section .section-description{font-size:12px}.assembly-buttons button{min-height:44px;font-size:12px}.check-control{font-size:12px;min-height:35px}.mobile-studio-actions{position:fixed;display:grid;grid-template-columns:1fr 1.3fr 1fr;left:0;right:0;bottom:0;z-index:40;background:#fffdf8f7;border-top:1px solid #d8cebf;box-shadow:0 -5px 20px #35281f0a;padding:9px max(14px,env(safe-area-inset-right)) calc(9px + env(safe-area-inset-bottom));gap:8px}.mobile-studio-actions button{min-height:43px;padding:9px 8px;font-size:12px;border-radius:5px 10px}.mobile-studio-actions #mobile-flip{background:var(--walnut);border-color:var(--walnut);color:var(--paper)}.view-controls{display:flex;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;gap:5px;scrollbar-width:thin}.view-controls .view-label{display:none}.view-controls button{flex:0 0 auto;min-height:44px;border-color:var(--line);font-size:11px;padding:9px 12px}.conversion-actions button{min-height:44px}.conversion-controls{padding:13px 15px 15px}.motion-scrub{gap:10px}.motion-scrub input{min-height:35px}.speed-control select{min-height:36px}.studio-footer{margin-bottom:8px}.source-details{text-align:left}.footer-signature{max-width:230px}}
@media(max-width:520px){.site-header{height:65px;padding:0 15px}.brand img{width:171px}.share-button{font-size:10px;min-height:40px;padding:9px 10px}.studio{padding:20px 14px 0}.intro{display:block;margin-bottom:17px}.intro-caption{display:none}.intro h1{font-size:38px;margin-top:7px}.intro .eyebrow{font-size:9px;letter-spacing:1.7px}#stage{height:clamp(310px,48svh,420px)}.model-heading{padding:11px 12px}.conversion-controls{padding:12px}.conversion-actions{gap:7px}.endpoint-switch{flex:1}.endpoint-switch button{font-size:11px;padding:9px 8px;min-width:0}.pause-button{min-width:55px}.primary-button{margin:0;font-size:12px;min-height:44px}.motion-scrub{margin-top:11px;gap:4px 10px}.speed-control{font-size:10px}.scrub-label{font-size:10px}.gesture-help{font-size:9px;margin-top:8px}.design-panel{padding-top:21px}.finish-section h2{font-size:28px}.finish-description{font-size:12px;line-height:1.6}.finish-selects{gap:13px 11px}.finish-selects select{font-size:12px;min-height:47px}.material-swatches{margin-top:15px}.source-details summary{min-height:30px;padding-top:6px}.studio-footer{margin-top:20px}.construction-details>summary{font-size:20px}.component-details summary{font-size:13px}.part-actions button{min-height:44px;font-size:11px}.reset-button{font-size:11px}.slope-label{font-size:8px}.mobile-studio-actions button{font-size:11px}}

#stage[aria-busy=true] #status{top:50%;bottom:auto;left:50%;right:auto;transform:translate(-50%,-50%);padding:13px 19px;border:1px solid var(--line);border-radius:5px 12px;background:#fffdf8f2;font-size:12px;color:var(--walnut);white-space:nowrap;box-shadow:0 4px 22px #35281f08}.gesture-help>.desktop-gesture,.gesture-help>.mobile-gesture{padding:0}.gesture-help>.mobile-gesture{display:none}@media(max-width:850px){.gesture-help>.desktop-gesture{display:none}.gesture-help>.mobile-gesture{display:inline}}

.mix-finish-details{margin-top:14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.mix-finish-details>summary{position:relative;list-style:none;cursor:pointer;padding:13px 23px 13px 0;min-height:44px;font-size:11px;color:var(--walnut)}.mix-finish-details>summary::-webkit-details-marker{display:none}.mix-finish-details>summary:after{content:"+";position:absolute;right:2px;top:9px;font-size:19px;color:var(--brass)}.mix-finish-details[open]>summary:after{content:"−"}.mix-finish-details .finish-selects{margin:0 0 14px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.mix-finish-details .finish-selects label:last-child{grid-column:1/-1}.primary-finish-selects{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.finish-selects label{min-width:0}@media(max-width:850px){.mix-finish-details>summary{font-size:12px;min-height:46px;padding-top:14px;padding-bottom:14px}.mix-finish-details>summary:after{top:10px}}

/* Dark neutral product backdrop keeps fine surface detail legible. */
#stage{background:radial-gradient(ellipse at 50% 38%,#3b454b 0%,#293138 56%,#171c21 100%)}
#stage #status{color:#c5cdd2}

/* The exploded view labels follow the actual layers without obscuring controls. */
.layer-showcase{position:absolute;inset:0;pointer-events:none;z-index:3}.layer-showcase[hidden]{display:none}.layer-leaders{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.layer-leaders path{fill:none;stroke:#e4d1a6;stroke-width:1;opacity:.65}.layer-callout{position:absolute;right:12px;display:flex;align-items:center;gap:8px;min-width:150px;padding:7px 10px;background:#192126ed;color:#f8f1e3;border:1px solid #bea16b80;border-radius:4px 10px;box-shadow:0 2px 8px #0002}.layer-callout strong,.layer-callout small{display:block}.layer-callout strong{font-size:11px;font-weight:600;letter-spacing:.15px}.layer-callout small{font-size:9px;color:#c1c9cb;line-height:1.4;margin-top:1px}.layer-number{display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:#b38b4d;color:#172025;font-size:10px;font-weight:700;flex:none}.showing-layers #status{right:12px;max-width:65%;font-size:9px}@media(max-width:520px){.layer-callout{right:9px;min-width:123px;padding:5px 7px;gap:6px}.layer-callout strong{font-size:10px}.layer-callout small{font-size:8px}.layer-number{width:17px;height:17px;font-size:9px}.showing-layers #status{max-width:72%;font-size:8px}}
