/* A quiet workspace: 8 / 16 / 24 / 32 / 48 spacing; 12 / 16 / 24 type. */
.preview-workspace{grid-column:1/-1;display:flex;flex-direction:column;gap:32px;padding:32px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line);border-radius:var(--radius);min-width:0}
.preview-workspace p{max-width:36em;overflow-wrap:anywhere}
.preview-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}.viewer-stack{display:flex;flex-direction:column;gap:8px}.preview-local{font-size:12px;line-height:20px;color:var(--muted)}
.viewer-upload-group{display:flex;flex-direction:column;gap:8px}.viewer-upload-group .upload-zone{min-height:96px}.viewer-upload-group>p{font-size:12px;line-height:20px;color:var(--muted)}
.viewer-upload-group>.layer-color-intro{font-size:16px;line-height:28px;color:var(--ink);letter-spacing:-.02em}.viewer-upload-group .upload-zone{margin-top:8px;flex-direction:row;text-align:left}.viewer-upload-group .upload-zone>span:nth-child(2){flex:1}.viewer-upload-group .upload-zone .upload-icon{flex:0 0 32px}
.preview-grid{display:grid;grid-template-columns:minmax(0,1fr) 352px;gap:32px;align-items:start}.preview-main{min-width:0;display:flex;flex-direction:column;gap:16px}.model-viewport{height:448px;position:relative;background:linear-gradient(150deg,#f2f4f2,#e9eeea);overflow:hidden;border-radius:8px;color:#343d37;touch-action:none}.model-viewport>canvas{display:block;width:100%;height:100%;position:absolute;inset:0}.viewer-empty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px;text-align:center}.viewer-empty svg{width:64px;height:64px;fill:#b3bbb5}.viewer-empty strong{font-size:16px;line-height:24px}.viewer-empty>span{font-size:12px;line-height:20px;color:#56635b}
.preview-workspace button{min-height:48px;min-width:48px;padding:8px 16px;border-radius:4px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line);font-size:12px;line-height:16px;letter-spacing:-.02em}.preview-workspace button:hover:not(:disabled){background:var(--soft)}.preview-workspace button[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--accent)}
.viewer-toolbar{display:flex;align-items:center;gap:16px}.viewer-toolbar button{flex:none;width:80px;white-space:nowrap}
.preview-workspace fieldset{border:0;padding:0;margin:0;min-width:0}.preview-workspace fieldset:disabled input,.preview-workspace fieldset:disabled select{opacity:.45}
.preview-controls{display:flex;flex-direction:column}
.preview-workspace h3{font-size:16px;line-height:24px;letter-spacing:-.02em}.preview-workspace label{font-size:12px;line-height:16px;display:flex;flex-direction:column;gap:8px;min-width:0}.preview-workspace select,.preview-workspace input[type=number]{min-width:0;width:100%;height:48px;background:var(--page);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line);border:0;border-radius:4px;padding:8px 16px;font:16px/24px Arial,sans-serif;letter-spacing:0}.preview-workspace select{font-family:inherit;font-size:12px}
.preview-controls .viewer-stack>span,.preview-controls .viewer-stack>p,.preview-controls output,.viewer-caption{font-size:12px;line-height:20px;color:var(--muted);letter-spacing:-.02em}
.layer-number-row{display:grid;grid-template-columns:1fr 96px;align-items:center;gap:16px}.layer-number-row input{text-align:center}.preview-workspace input[type=range]{display:block;width:100%;height:48px;margin:0;accent-color:var(--accent);cursor:ew-resize}.preview-controls output{letter-spacing:0}
.viewer-actions,.transform-fields,.range-fields{display:grid;grid-template-columns:repeat(2,round(down,calc((100% - 8px)/2),4px));gap:8px}.range-shortcuts{display:grid;grid-template-columns:repeat(3,round(down,calc((100% - 16px)/3),4px));gap:8px}.range-shortcuts button{padding:8px 4px}
.filament-palette{display:grid;grid-template-columns:repeat(4,round(down,calc((100% - 24px)/4),4px));gap:8px}.filament-palette button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;padding:8px 4px;min-height:80px}.filament-palette i{width:24px;height:24px;border-radius:50%;background:var(--filament);box-shadow:inset 0 0 0 1px #0002;display:block}
#model-transform{display:flex;flex-direction:column;gap:16px}.height-field{display:grid;grid-template-columns:1fr 144px;gap:8px;align-items:end}.height-field>button{height:48px}
.printer-envelope{margin-top:16px;padding-top:32px;box-shadow:0 -1px var(--line);display:flex;flex-direction:column;gap:16px}.printer-envelope .viewer-stack strong{font-size:16px;line-height:24px}.printer-envelope .viewer-stack span{font-size:24px;line-height:28px;letter-spacing:0}.printer-envelope>p{font-size:12px;line-height:20px}.printer-envelope select{max-width:256px}.printer-envelope [data-fits=false]{color:#ab382e}.toolbar-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.toolbar-text>span{font-size:12px;line-height:20px;letter-spacing:0}#support-status{margin:0;max-width:40em;font-size:12px;line-height:20px;color:var(--muted);word-break:keep-all}#support-status:empty{display:none}#support-status[data-support=true]{color:#995b1c}
#band-strip{height:8px;display:flex;overflow:hidden;border-radius:4px}#band-strip:empty{display:none}#band-strip span{min-width:0;flex-basis:0}#color-ranges{display:flex;flex-direction:column;gap:8px;max-height:320px;overflow-y:auto;padding:0}#color-ranges:empty{display:none}.band-card{display:flex;gap:16px;align-items:center;text-align:left;width:100%;padding:16px!important}.band-card>i{width:16px;height:32px;flex:none;background:var(--filament);border-radius:4px}.band-card>span{display:flex;flex-direction:column;gap:8px}.band-card span span{font-size:12px;line-height:16px}.band-card small{font-size:12px;line-height:16px;color:var(--muted);letter-spacing:0}
.preview-workspace select:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.object-separation{display:flex;flex-direction:column;gap:8px}.band-card>span{min-width:0;overflow-wrap:anywhere}.band-card span span{line-height:20px}.preview-workspace select#object-layer{font-size:16px;line-height:24px}
.filament-palette{grid-template-columns:repeat(2,round(down,calc((100% - 8px)/2),4px))}.filament-palette button{min-height:112px;flex-direction:column;gap:8px}.filament-stock{font-size:12px;line-height:20px;letter-spacing:-.02em;color:var(--muted)}[data-stock=order]>.filament-stock{color:#945819}.stock-quote-note{font-size:12px;line-height:20px;color:var(--muted);max-width:32em}.stock-quote-note[data-stock=order]{color:#945819}.stock-quote-note[data-stock=available]{color:var(--accent)}.stock-quote-note{padding:16px;background:var(--soft);border-radius:4px}
body[data-theme=b] .stock-quote-note[data-stock=order],body[data-theme=b] [data-stock=order]>.filament-stock{color:#e9bb7d}
.model-source-note{display:grid;grid-template-columns:minmax(0,1fr) 256px;gap:32px;align-items:center;padding:24px;background:var(--soft);border-radius:4px}.model-source-copy{display:flex;flex-direction:column;gap:8px}.model-source-copy>p{font-size:16px;line-height:28px;letter-spacing:-.02em;max-width:36em}.model-source-copy>p.viewer-caption{font-size:12px;line-height:20px}.makerworld-link{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 16px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line);border-radius:4px;font-size:12px;line-height:20px}.makerworld-link>span[aria-hidden]{font-size:16px}
@media(max-width:960px){.model-source-note{grid-template-columns:1fr;gap:16px}.makerworld-link{width:256px;max-width:100%}}
@media(max-width:640px){.model-source-note{padding:16px}.model-source-copy>p br{display:none}}
/* Direction A: an architectural studio, with objects and drawings doing the talking. */
body[data-theme=a] .concept-bar{background:#f5f5f5;border:0;box-shadow:0 1px #e4e5e6;padding:8px 0}
body[data-theme=a] .concept-caption{display:none}body[data-theme=a] .theme-tabs{margin-left:0}body[data-theme=a] .theme-tab{box-shadow:none;color:#686d70}body[data-theme=a] .theme-tab.active{color:#252628;background:#fff;box-shadow:inset 0 -2px #343b40}body[data-theme=a] .theme-dot{display:none}body[data-theme=a] .choose-button{background:#fff;color:#343b40;box-shadow:inset 0 0 0 1px #dce0e2;margin-left:auto}
body[data-theme=a] .hero{padding:48px 0;gap:48px;align-items:center}body[data-theme=a] .hero-copy{gap:32px}body[data-theme=a] .hero h1{font-weight:500;line-height:1.1666667;letter-spacing:-.04em}body[data-theme=a] .hero h1 em{color:var(--ink);font-weight:750}body[data-theme=a] .status-dot{display:none}body[data-theme=a] .hero-kicker{color:var(--muted)}body[data-theme=a] .hero-actions .primary-button{border-radius:4px}body[data-theme=a] .hero-facts{display:none}body[data-theme=a] .hero-art{height:480px;border-radius:0;box-shadow:none;background:var(--art)}body[data-theme=a] .hero-art:before,body[data-theme=a] .hero-art:after{content:'';position:absolute;pointer-events:none;z-index:1;border-color:#b6bdc1;border-style:solid}body[data-theme=a] .hero-art:before{width:32px;height:32px;top:24px;right:24px;border-width:1px 1px 0 0}body[data-theme=a] .hero-art:after{height:32px;width:32px;bottom:24px;left:24px;border-width:0 0 1px 1px}body[data-theme=a] .art-top{top:24px;left:24px;right:72px}body[data-theme=a] .art-index{display:none}body[data-theme=a] .art-bottom{left:48px;bottom:48px}body[data-theme=a] .art-bottom .eyebrow{display:none}body[data-theme=a] .art-bottom strong{font-size:12px;line-height:16px;font-weight:400;color:var(--muted)}body[data-theme=a] .round-arrow{display:none}body[data-theme=a] .art-caption{left:48px;bottom:24px}body[data-theme=a] .feature-strip{grid-template-columns:repeat(3,round(down,calc((100% - 64px)/3),4px));gap:32px;padding:24px 0}body[data-theme=a] .feature-strip b{color:#979da0}
body[data-theme=a] .service-choice{border-radius:4px;box-shadow:inset 0 0 0 1px var(--line)}body[data-theme=a] .service-choice.selected{background:var(--page)!important;box-shadow:inset 0 0 0 2px var(--ink)!important}body[data-theme=a] .service-symbol{display:none}body[data-theme=a] .preview-workspace{border-radius:0;box-shadow:0 -1px var(--ink);padding:32px 0}body[data-theme=a] .model-viewport{background:linear-gradient(145deg,#f6f6f5,#eceeed);border-radius:0}body[data-theme=a] .preview-controls{padding:0 0 0 32px;box-shadow:-1px 0 var(--line)}body[data-theme=a] .preview-grid{grid-template-columns:minmax(0,1fr) 384px}body[data-theme=a] .config-panel,body[data-theme=a] .quote-summary,body[data-theme=a] .modeling-guide{border-radius:4px}body[data-theme=a] .concept-footer{background:#f6f6f5;border-radius:0}
@media(max-width:960px){.preview-grid,body[data-theme=a] .preview-grid{grid-template-columns:1fr}.preview-controls{padding-top:32px!important;box-shadow:0 -1px var(--line)!important}body[data-theme=a] .preview-controls{padding-left:0}.model-viewport{height:416px}body[data-theme=a] .hero{gap:32px}body[data-theme=a] .hero-art{height:448px}body[data-theme=a] .hero-copy{max-width:none}.preview-heading{align-items:flex-start}body[data-theme=a] .feature-strip{grid-template-columns:1fr;gap:16px}}
@media(max-width:640px){.preview-workspace{padding:16px;gap:32px}.preview-heading{flex-direction:column;gap:16px}.preview-grid{gap:32px}.model-viewport{height:320px}.preview-workspace .upload-zone{padding:16px}.preview-workspace .upload-icon{display:none}.preview-workspace .upload-zone strong{font-size:16px;line-height:24px}.viewer-toolbar{align-items:flex-start}.viewer-workspace h2{font-size:24px}.height-field{grid-template-columns:1fr;gap:8px}.height-field button{width:100%}.preview-main{gap:16px}.filament-palette{grid-template-columns:repeat(2,round(down,calc((100% - 8px)/2),4px))}.filament-palette button{flex-direction:row;gap:8px;min-height:48px}.printer-envelope .viewer-stack span{font-size:16px;line-height:24px}body[data-theme=a] .hero{padding:32px 0;gap:32px}body[data-theme=a] .hero h1{font-size:48px;line-height:56px}body[data-theme=a] .hero-copy>p{max-width:22em}body[data-theme=a] .hero-art{height:352px}body[data-theme=a] .art-top{right:48px}body[data-theme=a] .art-top .eyebrow{font-size:12px;letter-spacing:.05em}body[data-theme=a] .art-bottom{left:24px}body[data-theme=a] .art-caption{left:24px;bottom:16px}body[data-theme=a] .hero-art:after{display:none}body[data-theme=a] .preview-workspace{padding:24px 0}body[data-theme=a] .theme-tabs{margin:0}body[data-theme=a] .concept-inner{gap:8px}}
@media(max-width:640px){.filament-palette button{flex-direction:column;min-height:112px}}
.band-card{flex:0 0 auto}.model-source-copy>p.viewer-caption{max-width:28em}

/* Show editing tools when a model is ready, instead of a wall of disabled controls. */
.preview-workspace[data-loaded=false] .preview-grid{grid-template-columns:1fr}
.preview-workspace[data-loaded=false] :is(.preview-controls,.viewer-toolbar,.view-buttons){display:none}
.preview-workspace[data-loaded=false] .model-viewport{height:256px}
#file-status:empty,#viewer-status:empty{display:none}
.hero .text-link,.hero .art-caption,.service-choice>span:nth-child(2)>span,.preview-local,.upload-help,.site-footer,.makerworld-link{letter-spacing:-.02em}
.model-source-copy h3{line-height:20px}
.slice-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;line-height:20px;letter-spacing:-.02em}
.slice-legend>span{display:flex;align-items:center;gap:8px}
.slice-legend i{width:12px;height:12px;border-radius:4px}
.slice-wall{background:#c86632}.slice-infill{background:#287d7a}.slice-skin{background:#bd942d}
#slice-status:empty{display:none}
.solid-color-field{display:flex;flex-direction:column;gap:8px;font-size:12px;line-height:16px;letter-spacing:-.02em}
.solid-color-field select,.preview-workspace input[type=search]{height:48px;min-width:0;width:100%;padding:8px 16px;border:1px solid var(--line);border-radius:4px;background:var(--surface);color:var(--ink);font-family:inherit;font-size:16px;line-height:24px;letter-spacing:-.02em}
.material-option-other{grid-column:1/-1}
.other-color-note{display:none}.preview-workspace[data-material=other] .other-color-note{display:block}
.preview-workspace[data-material=other] :is(.filament-search-field,.selected-filament,.filament-palette){display:none}
.material-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.filament-palette{max-height:384px;overflow:auto;padding:4px;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start}
.filament-palette button{min-height:112px;flex-shrink:0}.filament-palette button>span{font-size:12px;line-height:20px;overflow-wrap:anywhere;letter-spacing:-.02em}
@media(max-width:640px){.material-grid{grid-template-columns:1fr}.filament-palette{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Official sample photography */
.material-sample{display:flex;align-items:center;gap:16px;margin-top:24px}.material-sample>img{width:128px;height:128px;object-fit:cover;border-radius:4px;flex:none}.sample-selection{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1}.sample-credit{font-size:12px;line-height:20px;letter-spacing:-.02em;margin:16px 0 24px;max-width:36em}.filament-palette{grid-template-columns:repeat(2,round(down,calc((100% - 8px)/2),4px))}.filament-palette button{padding:8px;gap:8px;box-shadow:inset 0 0 0 1px var(--line);border:0}.filament-palette img{width:96px;height:96px;object-fit:cover;border-radius:4px}.filament-palette button[hidden]{display:none}.material-grid{grid-template-columns:repeat(3,round(down,calc((100% - 16px)/3),4px))}
@media(max-width:640px){.material-grid{grid-template-columns:1fr}.material-sample>img{width:80px;height:80px}.material-sample{gap:16px}.filament-palette img{width:64px;height:64px}}
#materials{gap:24px}#materials .material-sample{margin:0}#materials .sample-credit{margin:0}#materials .small{line-height:20px;letter-spacing:-.02em}#materials .solid-color-field{font-size:12px;line-height:16px;letter-spacing:-.02em}#materials .solid-color-field select{font-size:16px;line-height:24px;letter-spacing:-.02em}
.filament-palette{gap:16px;grid-template-columns:repeat(2,round(down,calc((100% - 16px)/2),4px))}.material-grid{gap:16px;grid-template-columns:repeat(2,round(down,calc((100% - 16px)/2),4px))}@media(max-width:640px){.material-grid{grid-template-columns:repeat(2,round(down,calc((100% - 16px)/2),4px))}}

/* Circular filament swatches share one interaction model. */
.color-swatches,.filament-palette.color-swatches{display:flex;flex-wrap:wrap;gap:8px;padding:4px;max-height:none;overflow:visible;align-content:start}
.color-swatches .color-swatch{position:relative;display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;min-height:48px;min-width:48px;padding:4px;border:0;border-radius:50%;background:transparent;box-shadow:inset 0 0 0 1px var(--line)}
.color-swatches .color-swatch i{display:block;width:32px;height:32px;border-radius:50%;background:var(--filament);box-shadow:inset 0 0 0 1px #0002}
.color-swatches .color-swatch[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--ink)}
.color-swatches .color-swatch:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.color-swatches .color-swatch[data-stock=order] i:after{content:'';display:block;width:32px;height:1px;background:#fff;transform:translateY(16px) rotate(-45deg);box-shadow:0 0 0 1px #0002}
.color-swatches .filament-stock{display:none}.selected-filament{display:flex;align-items:center;gap:16px}.selected-filament img{width:80px;height:80px;object-fit:cover;border-radius:4px}.selected-filament strong,#selected-solid-name{font-size:16px;line-height:20px;letter-spacing:-.02em}.selected-filament strong{min-width:0}
@media(min-width:961px){.preview-main{position:sticky;top:16px;align-self:start}}
.paint-group label{letter-spacing:-.02em}
