:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#17201c;background:#ece8dc;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--surface: #f8f5ec;--surface-strong: #fffdf6;--ink: #17201c;--muted: #59635b;--line: #d9d0bf;--accent: #1f6f56;--accent-strong: #164d3d;--focus-ring: #2f65c8;--line-soft: rgb(217 208 191 / 54%);--line-medium: rgb(217 208 191 / 76%);--surface-overlay: rgb(255 253 246 / 72%);--accent-line: rgb(31 111 86 / 34%);--accent-line-strong: rgb(31 111 86 / 52%);--accent-wash: rgb(31 111 86 / 8%);--wood: #be8d55;--shadow: 0 20px 70px rgb(51 42 27 / 12%)}html{font-size:16px}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;min-width:320px;min-height:100svh;background:linear-gradient(90deg,rgb(23 32 28 / 5%) 1px,transparent 1px),linear-gradient(rgb(23 32 28 / 4%) 1px,transparent 1px),var(--surface);background-size:42px 42px}button,input,select{font:inherit}button{border:0}.app-shell{min-height:100svh;padding:24px clamp(28px,3vw,44px)}.app-footer{width:100%;max-width:1440px;margin:28px auto 0;padding:20px 0 0;border-top:1px solid var(--line-soft);color:var(--muted);font-size:.82rem}.app-footer p{margin:12px 0 0;max-width:80ch}.cc-badge{display:inline-flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink);font-weight:600}.cc-badge img{display:block;height:31px;width:auto}.cc-badge:hover{opacity:.85}.topbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;width:100%;max-width:1440px;margin:0 auto 14px}.topbar h1,.section-heading h2{margin:0;letter-spacing:0}.topbar h1{font-size:clamp(1.9rem,3vw,3.65rem);line-height:1}.eyebrow{margin:0 0 4px;color:var(--accent-strong);font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.topbar-actions,.mobile-action-bar{display:flex;align-items:center;gap:10px}.fabrication-method-field{min-width:250px;margin:0;padding:0;border:0}.fabrication-method-field legend{margin-bottom:6px;color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase}.fabrication-method-field div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;border:1px solid var(--line-medium);background:var(--surface-overlay)}.fabrication-method-field label{position:relative}.fabrication-method-field input{position:absolute;opacity:0;pointer-events:none}.fabrication-method-field span{display:grid;place-items:center;min-height:34px;padding:0 14px;color:var(--ink);font-weight:800;white-space:nowrap;cursor:pointer}.fabrication-method-field input:checked+span{background:var(--ink);color:#fff}.fabrication-method-field input:focus-visible+span,.segmented-field input:focus-visible+span{outline:2px solid var(--focus-ring);outline-offset:2px}.primary-button,.ghost-button,.mode-button{min-height:42px;border-radius:999px;padding:0 18px;white-space:nowrap;cursor:pointer;transition:transform .16s ease,background .16s ease,color .16s ease,border-color .16s ease}.primary-button{background:var(--accent);color:#fff}a.ghost-button{display:inline-flex;align-items:center;text-decoration:none}.ghost-button,.mode-button{border:1px solid var(--line);background:#ffffff9e;color:var(--ink)}.primary-button:hover,.ghost-button:hover,.mode-button:hover{transform:translateY(-1px)}.icon-link{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:999px;border:1px solid var(--line);background:#ffffff9e;color:var(--ink);transition:transform .16s ease,color .16s ease,border-color .16s ease}.icon-link:hover{transform:translateY(-1px);color:var(--accent-strong)}.icon-link svg{width:20px;height:20px}.method-workbench{display:grid;grid-template-rows:auto minmax(0,1fr);gap:6px;width:100%;max-width:1440px;min-height:0;margin:0 auto;padding:8px;border-top:1px solid rgb(217 208 191 / 70%);background:#f8f5ec75;box-shadow:none}.method-workbench>.fabrication-method-field{justify-self:start;min-width:min(420px,100%)}.workspace{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:100%;min-height:0;margin:0;align-items:stretch}.preview-pane,.controls-pane{border:1px solid rgb(217 208 191 / 72%);background:#f8f5ecdb}.preview-pane{min-width:0;height:100%;padding:14px}.preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:42px;margin-bottom:10px}.preview-mode-group{display:inline-flex;min-width:0;gap:2px;padding:2px;border-bottom:1px solid rgb(217 208 191 / 82%);background:transparent}.mode-button{min-width:0;min-height:30px;border-radius:0;border-color:transparent;background:transparent;padding-inline:12px;color:var(--muted);font-size:.9rem;font-weight:750}.mode-button.is-active{background:transparent;color:var(--ink);box-shadow:inset 0 -2px 0 var(--ink)}.preview-toolbar-action-slot{display:flex;flex:0 0 clamp(138px,11vw,168px);justify-content:flex-end}.preview-large-view-button{width:100%;padding-inline:12px}.preview-large-view-button[disabled]{visibility:hidden;pointer-events:none}[data-method-preview][hidden]{display:none}.preview-stage{position:relative;display:grid;place-items:center;min-height:460px;overflow:hidden;background:radial-gradient(circle at 50% 18%,rgb(31 111 86 / 14%),transparent 34%),linear-gradient(135deg,#fffdf6,#e4dece)}.preview-stage.is-three-preview,.preview-stage.is-print-sheet-three-preview{min-height:clamp(420px,54svh,720px);background:radial-gradient(circle at 50% 34%,rgb(31 111 86 / 18%),transparent 38%),linear-gradient(135deg,#f9f5ea,#e1dbcb)}.three-preview-host,.print-sheet-three-host{width:100%;height:clamp(420px,54svh,720px);animation:settle-in .52s cubic-bezier(.2,.8,.2,1)}.three-preview-host canvas,.print-sheet-three-host canvas,.print-sheet-dialog-host canvas{display:block;width:100%;height:100%}.preview-loading-overlay{position:absolute;inset:0;z-index:3;display:grid;place-content:center;justify-items:center;gap:12px;color:var(--muted);font-size:.95rem;font-weight:800;pointer-events:none}.preview-loading-spinner{width:30px;height:30px;border:3px solid var(--line);border-top-color:var(--accent);border-radius:999px;animation:preview-loading-spin .9s linear infinite}@keyframes preview-loading-spin{to{transform:rotate(360deg)}}.preview-updating-indicator{position:absolute;right:14px;bottom:12px;z-index:3;padding:5px 13px;border:1px solid var(--line);border-radius:999px;background:#fffdf6e0;color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.01em;box-shadow:0 10px 28px #332a1b1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none}.preview-update-failed{display:inline-flex;align-items:center;gap:10px;border-color:#a0662873;background:#a066281a;color:#8a5520;pointer-events:auto}.preview-retry-button{padding:1px 10px;border:1px solid currentcolor;border-radius:999px;background:transparent;color:inherit;font:inherit;cursor:pointer}.preview-retry-button:hover{background:#a066281f}.preview-view-controls{position:absolute;top:2px;left:12px;right:auto;z-index:3;display:flex;align-items:center;gap:5px;flex-wrap:wrap;max-width:calc(100% - 24px);pointer-events:none}.preview-view-controls>*{pointer-events:auto}.preview-toggle-field,.preview-color-field,.preview-rotation-button{display:grid;place-items:center;min-height:36px;border:1px solid var(--line);border-radius:999px;background:#fffdf6e0;color:var(--ink);font-weight:800;box-shadow:0 10px 28px #332a1b1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.preview-toggle-strip{display:flex;align-items:center;gap:5px;flex:0 1 auto;flex-wrap:wrap}.toggle-field.preview-toggle-field{position:relative;display:inline-flex;grid-template-columns:none;justify-content:center;gap:0;flex:0 0 34px;width:34px;min-width:34px;min-height:32px;margin:0;padding:0;color:var(--ink);font-size:.72rem;line-height:1;white-space:nowrap}.toggle-field.preview-toggle-field input{position:absolute;display:grid;place-content:center;width:13px;height:13px;flex:0 0 auto;opacity:0;pointer-events:none;appearance:none;border:1.5px solid currentColor;border-radius:3px;background:#fffdf6;color:var(--accent)}.toggle-field.preview-toggle-field input:before{content:"";width:4px;height:8px;margin-top:-1px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) scale(0);transition:transform .12s ease}.toggle-field.preview-toggle-field input:checked:before{transform:rotate(45deg) scale(1)}.preview-control-icon{display:none;place-items:center;width:18px;height:18px;flex:0 0 auto}.preview-control-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.preview-control-icon .preview-icon-soft-fill{fill:currentColor;fill-opacity:.18}.preview-control-icon .preview-icon-solid-fill{fill:currentColor;stroke:none}.preview-control-glyph{display:grid;place-items:center;width:100%;height:100%;font-size:.62rem;font-weight:950;letter-spacing:0;line-height:1;text-transform:uppercase}.preview-control-glyph-wide{font-size:.58rem}.preview-control-label{display:inline-block;flex:0 0 auto}.toggle-field.preview-control-main{flex:0 0 auto;width:auto;min-width:max-content;gap:6px;padding:0 11px 0 8px}.preview-control-spatial .preview-control-label{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.preview-toggle-field:has(input:focus-visible){outline:2px solid var(--focus-ring);outline-offset:2px}.preview-toggle-field:has(input:checked){border-color:var(--accent);background:var(--accent);color:#fffdf6}.preview-toolbar-primary-break,.preview-toolbar-row-break{display:none}.preview-color-field{display:inline-flex;gap:4px;min-height:32px;padding:0 7px}.preview-color-field button,.fan-color-options button{display:grid;place-items:center;width:24px;height:24px;border:1px solid rgb(17 24 23 / 28%);border-radius:999px;background:transparent;padding:0;cursor:pointer}.preview-color-field button span,.fan-color-options button span{width:16px;height:16px;border-radius:999px;background:var(--swatch-color);box-shadow:inset 0 0 0 1px #ffffff5c}.preview-color-field button.active-color,.fan-color-options button.active-color{border-color:var(--accent);box-shadow:0 0 0 2px #1f6f5629}.preview-control-icon{display:grid}.preview-rotation-button{position:relative;width:32px;min-width:32px;height:32px;min-height:32px;padding:0;border-color:var(--ink);background:var(--ink);color:#fff;cursor:pointer}.preview-rotation-button svg{width:14px;height:14px;fill:currentColor}.preview-rotation-button:after{content:attr(data-tooltip);position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-3px);opacity:0;pointer-events:none;border:1px solid rgb(217 208 191 / 82%);border-radius:999px;background:#111817f0;color:#fff;padding:6px 10px;font-size:.72rem;font-weight:800;white-space:nowrap;transition:opacity .14s ease,transform .14s ease}.preview-rotation-button:hover:after,.preview-rotation-button:focus-visible:after{transform:translateY(0);opacity:1}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.sheet-preview{display:grid;place-items:start center;width:100%;height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;padding:12px;border:1px solid var(--line);background:#fbfaf6}.sheet-preview svg{display:block;width:100%;max-width:100%;max-height:none;height:auto}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1px;border:1px solid var(--line);border-top:0;background:var(--line)}.summary-grid div{min-width:0;padding:10px 12px;background:var(--surface-strong)}.summary-grid span{display:block;margin-bottom:4px;color:var(--muted);font-size:.76rem}.summary-grid strong{display:block;overflow-wrap:anywhere;font-size:.92rem}.controls-pane{position:sticky;top:24px;align-self:stretch;padding:14px}.controls-sections{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2px 18px;align-items:start}.controls-sections.laser-columns{display:block;column-count:2;column-gap:18px}.controls-sections.laser-columns>.control-section{break-inside:avoid;margin:0 0 18px}.controls-sections.laser-columns>.joint-tuning-section,.controls-sections.laser-columns>.parts-list-section{column-span:all}.parts-section{grid-column:1}.geometry-section,.print-volume-section,.laser-output-section{grid-column:2}.joint-tuning-section,.tempest-advanced-section{grid-column:1 / -1}.advanced-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 18px;align-items:start}.advanced-group{display:grid;gap:2px;align-content:start}.advanced-columns-flow{display:block;column-count:2;column-gap:18px}.advanced-columns-flow .advanced-group{break-inside:avoid;margin-bottom:14px}.advanced-columns-flow .advanced-group:last-child{margin-bottom:0}.advanced-group-label{margin:0 0 2px}.parts-list-section{grid-column:1 / -1}.advanced-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px}.advanced-accordion-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;margin:12px 0 4px;padding:8px 0;background:none;border:0;border-top:1px solid var(--line-soft);color:var(--accent-strong);cursor:pointer}.advanced-accordion-toggle .eyebrow{margin:0}.advanced-accordion-chevron{width:18px;height:18px;fill:var(--accent-strong);transition:transform .15s ease}.advanced-accordion-chevron.is-open{transform:rotate(180deg)}.fan-placement-field{margin:0;padding:0;border:0}.fan-placement-field legend{padding:0;margin:0 0 3px;color:var(--muted);font-size:.85rem;font-weight:600}.fan-placement-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px}.control-section{min-width:0;padding:0;border-top:0}.print-volume-section{margin-top:0;padding-top:0;padding-left:0;border-top:0;border-left:0}.layout-section{margin-top:0;padding-top:0;border-top:0}.geometry-section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px;align-items:start}.geometry-section .section-heading{grid-column:1 / -1}.geometry-section [data-nukit-panel-fit-controls]:not([hidden]){display:contents}.section-heading{margin-bottom:2px}.section-heading h2{font-size:1.08rem}.field,.toggle-field{display:grid;gap:2px;margin:1px 0;color:var(--muted);font-size:.88rem;font-weight:700;line-height:1.2}.field input,.field select{width:100%;min-height:26px;border:1px solid var(--line);border-radius:0;background:var(--surface-strong);color:var(--ink);padding:0 12px}.field select option:disabled{color:#6671698a}.input-shell{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;border:1px solid var(--line);background:var(--surface-strong)}.input-shell input{border:0;min-width:0}.input-shell input[type=number]{appearance:textfield;-moz-appearance:textfield}.input-shell input[type=number]::-webkit-outer-spin-button,.input-shell input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.input-shell small{padding-right:12px;color:var(--muted);font-weight:700}.parts-list-card{display:grid;gap:10px;margin:0 0 10px;padding:10px 0 0;border-top:1px solid var(--line-medium);background:transparent;font-size:.8rem;line-height:1.25}.parts-list-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.parts-list-heading strong{color:var(--ink);font-size:1rem}.parts-list-heading span{color:var(--muted);font-weight:800;text-transform:uppercase}.parts-list-card ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none}.parts-list-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;min-width:0;padding:8px 0;border-top:1px solid var(--line-soft)}.parts-list-row:first-child{border-top:0}.parts-list-row div{display:grid;gap:2px;min-width:0}.parts-list-row small{color:var(--muted);font-size:.68rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.parts-list-row strong{overflow-wrap:anywhere;color:var(--ink);font-size:.86rem;font-weight:850}.parts-list-row>a{display:grid;min-height:30px;place-items:center;border:1px solid var(--accent-line);border-radius:999px;padding:0 12px;color:var(--accent-strong);font-size:.78rem;font-weight:850;text-decoration:none;white-space:nowrap}.parts-list-row>a:hover{background:var(--accent-wash)}.parts-list-row>a:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.parts-list-row span{color:var(--muted);font-weight:750;overflow-wrap:anywhere}.section-note{margin:-2px 0 12px;color:var(--muted);font-size:.74rem;font-weight:700;line-height:1.35}.guides-card{display:grid;gap:8px;margin:0 0 10px;padding:10px 0 0;border-top:1px solid var(--line-medium);font-size:.8rem;line-height:1.25}.guides-card strong{color:var(--ink);font-size:1rem}.guides-card ul{display:grid;gap:6px;margin:0;padding:0;list-style:none}.guides-card a{color:var(--accent-strong);font-weight:750;text-decoration:none}.guides-card a:hover{text-decoration:underline}.guides-card a:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.custom-dimensions[hidden],[data-custom-fan-size][hidden],[data-print-volume-section][hidden],[data-print-volume-control][hidden],[data-rectangular-filter-controls][hidden],[data-donut-filter-controls][hidden],[data-nukit-fan-placement][hidden],[data-donut-layout][hidden],[data-generated-layout-controls][hidden],[data-generated-part-controls][hidden],[data-generated-geometry-controls][hidden],[data-generated-advanced-controls][hidden],[data-nukit-filter-count][hidden],[data-nukit-panel-fit-controls][hidden],[data-laser-output-controls][hidden]{display:none}.custom-dimensions{display:flex;flex-wrap:wrap;align-items:end;gap:6px;margin:0 0 10px}.dimension-swap-row{display:flex;align-items:end;gap:6px;flex:2 1 200px;min-width:min-content}.dimension-swap-row .field{flex:1 1 0;min-width:64px}.custom-dimensions>.field{flex:1 1 92px;min-width:78px}.filter-swap{flex:0 0 auto;align-self:end;display:grid;place-items:center;width:30px;height:34px;padding:0;border:1px solid var(--line);border-radius:6px;background:var(--surface-strong);color:var(--accent-strong);cursor:pointer}.filter-swap:hover{border-color:var(--accent)}.filter-swap svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.donut-filter-controls{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;margin:0 0 10px}.donut-filter-dimensions{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:6px}.custom-dimensions .field,.donut-filter-dimensions .field{grid-template-rows:1fr auto;gap:5px;margin:0;font-size:.78rem}.custom-dimensions .input-shell input,.donut-filter-dimensions .input-shell input{padding:0 8px}.custom-dimensions .input-shell small,.donut-filter-dimensions .input-shell small{padding-right:8px;font-size:.7rem}.persistent-output-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid rgb(217 208 191 / 78%)}.export-readiness-summary .diagnostic-item{padding:0 0 0 10px;background:transparent}.export-readiness-summary .diagnostic-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.persistent-export-actions{display:grid;grid-column:2;align-self:center}.export-action-menu{display:grid;grid-template-columns:minmax(0,1fr);min-width:min(100%,240px)}.export-action-menu .primary-button{width:auto;min-height:42px;padding-inline:22px}.diagnostic-item{display:grid;gap:3px;padding:8px 10px;border-left:3px solid rgb(31 111 86 / 45%);background:#1f6f5612;color:var(--muted);font-size:.78rem;line-height:1.28}.diagnostic-item strong{color:var(--ink);font-size:.82rem}.diagnostic-item.warning{border-left-color:#a06628;background:#a066281a}.diagnostic-item.error{border-left-color:#a32f26;background:#a32f261a}.export-diagnostics-list{display:grid;grid-column:1 / -1;gap:6px;margin:0;padding:0;list-style:none}.segmented-field{margin:1px 0;padding:0;border:0}.segmented-field legend{margin-bottom:3px;color:var(--muted);font-size:.88rem;font-weight:700}.legend-row{display:inline-flex;align-items:center;gap:6px}.info-tip{position:relative;display:inline-block;margin-left:6px;vertical-align:middle}.info-tip button{position:relative;display:grid;place-items:center;width:20px;height:20px;padding:0;border:1px solid var(--line);border-radius:999px;background:var(--surface-overlay);color:var(--accent-strong);font-size:.68rem;font-style:italic;font-weight:800;cursor:help;-webkit-user-select:none;user-select:none}.info-tip button:before{content:"";position:absolute;inset:-2px}.info-tip:hover button,.info-tip:focus-within button,.info-tip.is-open button{background:var(--accent-wash);border-color:var(--accent-line-strong)}.info-tip p{position:fixed;z-index:50;top:-9999px;left:0;display:none;width:max-content;max-width:min(320px,calc(100vw - 16px));margin:0;padding:10px 12px;border:1px solid var(--line-medium);background:var(--surface-strong);box-shadow:var(--shadow);color:var(--ink);font-size:.74rem;font-weight:600;line-height:1.45;text-transform:none;letter-spacing:0}.info-tip:hover p,.info-tip:focus-within p,.info-tip.is-open p{display:block}.info-tip-more{display:inline-block;margin-left:4px;white-space:nowrap;font-weight:800;text-decoration:underline;color:var(--accent-strong)}.info-tip-more:after{content:" →";text-decoration:none}.segmented-field div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.segmented-field-three div{grid-template-columns:repeat(3,minmax(0,1fr))}.segmented-field label{position:relative;display:grid}.segmented-field input{position:absolute;opacity:0;pointer-events:none}.segmented-field label>span{display:grid;place-items:center;min-height:36px;min-width:0;padding:0 6px;border:1px solid var(--line);background:var(--surface-strong);font-size:.78rem;font-weight:800;line-height:1.12;text-align:center;overflow-wrap:break-word;cursor:pointer}.segmented-field input:checked+span{border-color:var(--accent);background:#1f6f561f;color:var(--accent-strong)}.fan-grid{display:grid;gap:10px}.fan-column{grid-column:1 / -1;display:grid;gap:4px}.fan-selection{display:grid;gap:4px;margin:1px 0 4px}.fan-column .fan-selection,.fan-selection .segmented-field,.fan-selection .field{margin:0}.fan-color-options{display:inline-flex;gap:4px;justify-self:start}.fan-grid>[data-nukit-fan-placement]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.fan-grid>[data-donut-layout]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.fan-grid>[data-tempest-layout]{display:grid;gap:8px}.fan-grid>[data-donut-layout] .field:first-child{grid-column:1 / -1}.compact-field{margin:0}.toggle-field{grid-template-columns:auto 1fr;align-items:center;color:var(--ink);cursor:pointer}.toggle-field input{width:20px;height:20px;accent-color:var(--accent)}.mobile-action-bar{display:none}.sheet-dialog{width:min(96vw,1600px);height:min(92svh,980px);padding:0;border:1px solid var(--line);background:transparent;color:var(--ink);box-shadow:0 28px 90px #00000047}.sheet-dialog::backdrop{background:#17201c6b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.sheet-dialog-surface{display:grid;grid-template-rows:auto minmax(0,1fr);height:100%;padding:18px;background:linear-gradient(90deg,rgb(23 32 28 / 5%) 1px,transparent 1px),linear-gradient(rgb(23 32 28 / 4%) 1px,transparent 1px),var(--surface);background-size:42px 42px}.sheet-dialog-bar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:14px}.sheet-dialog-bar h2{margin:0;font-size:1.45rem;letter-spacing:0}.sheet-dialog-preview{min-height:0;overflow-x:hidden;overflow-y:auto;padding:24px;border:1px solid var(--line);background:#fbfaf6}.sheet-dialog-preview svg{display:block;width:100%;max-width:none;min-width:0;height:auto;margin:0 auto}.print-sheet-dialog-host{width:100%;height:100%;min-height:680px}@keyframes settle-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.three-preview-host,.print-sheet-three-host,.preview-loading-spinner{animation:none}.primary-button:hover,.ghost-button:hover,.mode-button:hover,.icon-link:hover{transform:none}.preview-rotation-button:after{transition:none}}@media(min-width:1241px){html,body,#app{height:100%;overflow:hidden}.app-shell{display:grid;grid-template-rows:auto minmax(0,1fr);height:100svh;min-height:0;overflow:hidden;padding:14px clamp(32px,3vw,46px)}.topbar{margin-bottom:10px}.topbar h1{font-size:clamp(1.8rem,2.65vw,3.15rem)}.method-workbench{grid-template-columns:minmax(300px,420px) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:8px 12px;height:100%;overflow:hidden}.method-workbench>.fabrication-method-field{grid-column:1;grid-row:1;align-self:end;min-width:0;width:100%}.workspace{grid-column:1 / -1;grid-row:2}.preview-pane,.controls-pane{padding:12px}.section-heading{margin-bottom:10px}.section-heading h2{font-size:1.08rem}.field,.toggle-field{gap:6px;margin:8px 0}.field input,.field select{min-height:38px}.workspace{min-height:0;height:100%}.preview-pane{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:0}.preview-stage,.preview-stage.is-three-preview,.preview-stage.is-print-sheet-three-preview{min-height:0}.three-preview-host,.print-sheet-three-host{height:100%;min-height:0}.summary-grid div{padding:8px 12px}.controls-pane{max-height:100%;overflow:auto}.persistent-output-panel{position:sticky;top:-12px;z-index:4;margin:-12px -12px 10px;padding:10px 12px 12px;background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 -14px 0 var(--surface)}}@media(max-width:1240px){.app-shell{padding:16px 16px 88px}.topbar{align-items:flex-start;grid-template-columns:minmax(0,1fr) auto}.topbar-actions{flex-wrap:wrap;justify-content:flex-end}.topbar-actions .topbar-copy{display:none}.workspace{grid-template-columns:1fr;max-width:980px;align-items:start}.controls-pane{position:static}}@media(max-width:1240px){.controls-sections,.advanced-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-action-bar{position:fixed;left:12px;right:12px;bottom:12px;z-index:5;display:grid;grid-template-columns:1fr 1fr;padding:8px;border:1px solid var(--line);background:#fffdf6f0;box-shadow:0 18px 48px #0000002e;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mobile-action-bar button{width:100%}}@media(max-width:860px){.controls-sections,.advanced-field-grid,.advanced-columns{grid-template-columns:1fr}.controls-sections.laser-columns,.advanced-columns-flow{column-count:1}.parts-section,.geometry-section,.print-volume-section,.laser-output-section,.joint-tuning-section,.parts-list-section{grid-column:auto;grid-row:auto}.parts-list-card ul{grid-template-columns:1fr}.fan-grid>[data-nukit-fan-placement]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.app-shell{padding:10px 10px 86px}.topbar{grid-template-columns:1fr;margin-bottom:10px}.topbar-actions{justify-content:flex-start}.method-workbench{padding:10px}.method-workbench>.fabrication-method-field{width:100%;min-width:0}.topbar h1{font-size:2.2rem}.preview-pane,.controls-pane{padding:12px}.preview-toolbar{flex-wrap:wrap}.preview-toolbar-action-slot{flex-basis:138px}.preview-stage{min-height:300px}.preview-stage.is-three-preview,.preview-stage.is-print-sheet-three-preview,.three-preview-host,.print-sheet-three-host{min-height:330px;height:330px}.preview-view-controls{top:2px;left:8px;right:8px;gap:6px;flex-wrap:wrap}.preview-toggle-strip{flex:1 1 auto;flex-wrap:wrap;min-width:0}.preview-toggle-field,.preview-color-field{min-height:34px;padding:0 10px;font-size:.82rem}.preview-rotation-button{width:34px;min-width:34px;height:34px;min-height:34px}.fan-grid>[data-nukit-fan-placement]{grid-template-columns:1fr}.segmented-field-three div{grid-template-columns:1fr}}
