.commercial-bar{display:flex;align-items:center;gap:var(--s-4);padding:calc(var(--s-1) * 1.75) calc(var(--s-1) * 4.5);border-bottom:var(--stroke) solid var(--border-subtle);background:var(--bg-panel);font-size:calc(var(--s-1) * 2.75);min-height:calc(var(--s-1) * 9)}.commercial-bar span{flex:1;color:var(--text-secondary)}.commercial-bar button{background:none;border:0;color:var(--text-primary);cursor:pointer;max-width:38%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.commercial-overlay{position:fixed;inset:0;background:var(--surface-0);z-index:1500;display:grid;place-items:center;padding:var(--s-5)}.commercial-modal{width:min(calc(var(--s-1) * 165),100%);max-height:90vh;overflow:auto;background:var(--bg-panel);border:var(--stroke) solid var(--border-medium);border-radius:calc(var(--s-1) * 3.5);padding:var(--s-6);box-shadow:0 var(--s-6) calc(var(--s-1) * 20) var(--surface-0);user-select:text}.commercial-title{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);margin-bottom:var(--s-3)}.commercial-title h2{font-size:var(--s-5)}.commercial-title h3,.configuration-picker h3{font-size:var(--s-3)}.commercial-modal button,.configuration-picker button{background:var(--bg-card);border:var(--stroke) solid var(--border-medium);border-radius:calc(var(--s-1) * 1.5);padding:var(--s-2) var(--s-3);cursor:pointer}.commercial-modal button:hover,.configuration-picker button:hover{border-color:var(--brand-accent)}.commercial-modal p{line-height:1.65;margin:calc(var(--s-1) * 2.5) 0}.commercial-note{color:var(--text-secondary);font-size:var(--s-3)}.commercial-modal label{display:grid;gap:var(--s-2);margin:calc(var(--s-1) * 3.5) 0}.commercial-modal input,.commercial-modal select,.configuration-picker input,.configuration-picker select{background:var(--bg-input);color:var(--text-primary);border:var(--stroke) solid var(--border-medium);padding:calc(var(--s-1) * 2.25);border-radius:calc(var(--s-1) * 1.5);width:100%;min-width:0}.commercial-modal label.commercial-check{display:flex;align-items:center}.commercial-check input{width:auto}.commercial-actions{display:flex;flex-wrap:wrap;gap:var(--s-2);margin:var(--s-3) 0}.commercial-message{color:var(--issue-warning);min-height:var(--s-6)}.commercial-list{list-style:none;display:grid;gap:var(--s-2);margin:calc(var(--s-1) * 3.5) 0}.commercial-list li{display:flex;align-items:center;gap:calc(var(--s-1) * 1.75);border-bottom:var(--stroke) solid var(--border-subtle);padding:calc(var(--s-1) * 2.5) 0}.commercial-list li>span{flex:1;overflow-wrap:anywhere}.commercial-list small{display:block;color:var(--text-secondary);font-size:calc(var(--s-1) * 2.5);margin-top:calc(var(--s-1) * 1.5)}.configuration-picker{padding:var(--s-4) 0;margin-bottom:var(--s-4);border-bottom:var(--stroke) solid var(--border-subtle);display:grid;gap:var(--s-2)}.configuration-picker small{color:var(--text-secondary);line-height:1.6}.configuration-picker button{padding:calc(var(--s-1) * 1.25) calc(var(--s-1) * 1.75);font-size:calc(var(--s-1) * 2.5)}.configuration-picker .commercial-actions{margin:0;gap:calc(var(--s-1) * 1.25)}@media (max-width:600px){.commercial-bar{gap:var(--s-2);padding:calc(var(--s-1) * 1.75) calc(var(--s-1) * 2.5)}.commercial-bar span{display:none}.commercial-bar button{max-width:49%;flex:1}.commercial-list li{flex-wrap:wrap}.commercial-list li>span{flex-basis:100%}.commercial-modal{padding:var(--s-4)}}.app-shell{grid-template-rows:calc(var(--s-1) * 20) calc(var(--s-1) * 9) minmax(0,1fr)}@media (max-height:680px){.app-shell{grid-template-rows:calc(var(--s-1) * 16) calc(var(--s-1) * 9) minmax(0,1fr)}}@media (max-width:800px){.app-shell{grid-template-rows:calc(var(--s-1) * 28) calc(var(--s-1) * 9) minmax(0,1fr)}}.stripe-checkout{border-top:var(--stroke) solid var(--border-subtle);margin-top:calc(var(--s-1) * 4.5);padding-top:var(--s-4)}.stripe-checkout #checkout-form{background:var(--fg-1);border-radius:calc(var(--s-1) * 1.5);padding:var(--s-3);margin-bottom:var(--s-3)}.feedback-stack{position:fixed;z-index:25;bottom:calc(var(--s-10) * 4 + var(--s-6));left:50%;transform:translate(-50%);width:min(calc(var(--s-10) * 13),calc(100vw - var(--s-6)));max-height:45dvh;overflow-y:auto;display:grid;gap:var(--s-2);padding:var(--s-1);pointer-events:none}.feedback-toast{--toast-tone: var(--info);display:flex;align-items:center;gap:var(--s-2);padding:var(--s-3);background:var(--surface-3);border:var(--stroke) solid var(--line-3);border-left:var(--focus-width) solid var(--toast-tone);border-radius:var(--r-lg);box-shadow:var(--shadow-pop);color:var(--fg-1);font-size:var(--text-sm);pointer-events:auto;animation:feedback-enter var(--dur-2) var(--ease-out)}.feedback-toast[data-tone=success]{--toast-tone: var(--success)}.feedback-toast[data-tone=warning]{--toast-tone: var(--warning)}.feedback-toast[data-tone=danger]{--toast-tone: var(--danger)}.toast-symbol{color:var(--toast-tone);font-family:var(--font-mono);flex:none}.toast-copy{flex:1;min-width:0;overflow-wrap:anywhere;line-height:1.5}.feedback-toast button{flex:none;border:0;border-radius:var(--r-sm);background:transparent;color:var(--fg-1);font-size:var(--text-sm);min-height:var(--s-10);padding:0 var(--s-2);cursor:pointer}.feedback-toast button:hover:not(:disabled){background:var(--surface-4)}.feedback-toast button:disabled{color:var(--fg-2);cursor:default}.feedback-toast .toast-action{text-decoration:underline;text-underline-offset:var(--s-1)}.feedback-toast .toast-dismiss{width:var(--s-10);padding:0;font-size:var(--text-lg)}.notification-trigger{position:relative}.notification-count{position:absolute;top:calc(-1 * var(--s-1));right:calc(-1 * var(--s-1));min-width:var(--s-4);padding:0 var(--s-1);border-radius:var(--r-full);background:var(--surface-4);border:var(--stroke) solid var(--accent-ring);color:var(--fg-1);font:var(--text-xs)/1.4 var(--font-mono)}.notification-menu-anchor .shell-menu{max-height:min(65dvh,calc(var(--s-10) * 13));overflow-y:auto}.notification-menu-anchor .shell-menu [role=menuitem]{display:grid;align-items:start;gap:var(--s-1);padding:var(--s-3);white-space:normal;overflow-wrap:anywhere;font-size:var(--text-sm)}.notification-menu-anchor .shell-menu [role=menuitem] strong{color:var(--warning);overflow-wrap:anywhere;font-weight:500}.notification-menu-anchor .shell-menu [data-severity=error] strong{color:var(--danger)}.inbox-code{font:var(--text-xs) var(--font-mono);color:var(--fg-2)}.inbox-empty{padding:var(--s-3);color:var(--fg-2);font-size:var(--text-sm)}.notification-menu-anchor .inbox-link{text-decoration:underline;text-underline-offset:var(--s-1)}.report-actions .report-email{display:inline-flex;align-items:center;min-height:var(--s-10);padding:var(--s-2) var(--s-3);border:var(--stroke) solid var(--line-3);border-radius:var(--r-md);background:var(--surface-3);color:var(--fg-1);text-decoration:none}.report-actions button,.report-heading button{min-height:var(--s-10)}.report-heading button{min-width:var(--s-10)}@keyframes feedback-enter{0%{opacity:0;transform:translateY(var(--s-2))}to{opacity:1;transform:translateY(0)}}@media (max-width: 800px){.feedback-stack{bottom:calc(var(--s-10) * 2 + var(--s-4));max-height:40dvh}.app-shell[data-inspector=open] .feedback-stack{bottom:calc(var(--inspector-action-height) + var(--s-6))}.feedback-toast{flex-wrap:wrap}.toast-copy{min-width:45%}}@media (prefers-reduced-motion: reduce){.feedback-toast{animation:none}}.report-overlay{position:fixed;inset:0;z-index:1000;background:var(--surface-0);display:grid;place-items:center;padding:var(--s-5)}.report-dialog{background:var(--bg-panel,var(--surface-2));border:var(--stroke) solid var(--border-medium);border-radius:calc(var(--s-1) * 3.5);padding:var(--s-6);width:min(calc(var(--s-1) * 155),100%);max-height:85vh;overflow:auto;color:var(--text-primary);font-size:calc(var(--s-1) * 3.25)}.report-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4)}.report-heading h2{font-size:var(--s-5)}.report-dialog p{line-height:1.6;margin:calc(var(--s-1) * 3.5) 0}.report-dialog label{display:block;margin-bottom:var(--s-2)}.report-dialog textarea{width:100%;padding:calc(var(--s-1) * 2.5);background:var(--bg-input);border:var(--stroke) solid var(--border-medium);border-radius:calc(var(--s-1) * 1.5);color:var(--text-primary);resize:vertical}.report-dialog button{padding:calc(var(--s-1) * 2.25) var(--s-3);border:var(--stroke) solid var(--border-medium);border-radius:calc(var(--s-1) * 1.5);background:var(--bg-card);color:var(--text-primary);cursor:pointer}.report-actions{display:flex;gap:calc(var(--s-1) * 2.5);flex-wrap:wrap}.report-note{color:var(--text-secondary)}.report-message{color:var(--issue-warning);overflow-wrap:anywhere}.report-history{list-style:none;padding:0;display:grid;gap:calc(var(--s-1) * 2.5)}.report-history li{display:flex;align-items:center;justify-content:space-between;gap:calc(var(--s-1) * 2.5);border-bottom:var(--stroke) solid var(--border-subtle);padding:calc(var(--s-1) * 2.5) 0}.report-history small{display:block;overflow-wrap:anywhere;color:var(--text-secondary);margin:calc(var(--s-1) * 1.5) 0}.report-history li>span{min-width:0;overflow-wrap:anywhere}.report-dialog button:disabled{opacity:.45;cursor:default}:root{--shell-bar-height: calc(var(--s-10) + var(--s-3));--shell-control-size: calc(var(--s-10) - var(--s-1));--shell-menu-width: calc(var(--s-10) * 7)}.app-shell.shell-v2{grid-template-rows:var(--shell-bar-height) minmax(0,1fr)}.shell-v2 .shell-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:var(--s-4);padding:0 var(--s-4);min-width:0;align-items:center;background:var(--surface-1);border-bottom:var(--stroke) solid var(--line-2)}.toolbar-identity{display:flex;align-items:center;gap:var(--s-4);min-width:0}.shell-toolbar .toolbar-brand{gap:var(--s-2);width:auto}.shell-toolbar .brand-sigil{width:var(--s-8);height:var(--s-8);border-radius:var(--r-md);background:var(--accent-soft)}.shell-toolbar .brand-sigil svg{width:var(--s-6);height:var(--s-6);stroke:var(--accent-ring);stroke-width:var(--stroke)}.shell-toolbar .brand-sigil circle{fill:var(--accent-ring)}.shell-toolbar .brand-title{font-size:var(--text-sm);font-weight:600;letter-spacing:var(--tracking-label)}.project-title{position:relative;min-width:0;width:calc(var(--s-10) * 4);padding-left:var(--s-4);border-left:var(--stroke) solid var(--line-2)}.project-name{display:flex;align-items:center;gap:var(--s-1);max-width:100%;min-height:var(--s-5);color:var(--fg-1);background:transparent;border:0;border-radius:var(--r-sm);cursor:text;text-align:left}.project-name>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm)}.project-name>svg{width:var(--s-3);height:var(--s-3);flex:none;fill:none;stroke:var(--fg-2);stroke-width:var(--stroke);opacity:0;transition:opacity var(--dur-1) var(--ease-out)}.project-name:hover>svg,.project-name:focus-visible>svg{opacity:1}.project-name-input{width:100%;min-width:0;height:var(--s-5);padding:0 var(--s-1);font-size:var(--text-sm);border:var(--stroke) solid var(--line-3);border-radius:var(--r-sm);background:var(--surface-2);color:var(--fg-1)}.project-save-status{display:flex;align-items:center;gap:var(--s-1);min-width:0;color:var(--fg-2);font-size:var(--text-xs);line-height:1.4;white-space:nowrap}.project-save-status i{width:var(--s-1);height:var(--s-1);background:var(--fg-3);border-radius:var(--r-full);flex:none}.project-title[data-status=savedLocal] i,.project-title[data-status=savedCloud] i{background:var(--success)}.project-title[data-status=savingLocal] i{background:var(--info)}.project-title[data-status=unsavedChanges] i{background:var(--warning)}.project-name-error{position:absolute;left:0;top:calc(100% + var(--s-2));z-index:40;width:var(--shell-menu-width);padding:var(--s-3);background:var(--surface-2);color:var(--danger);border:var(--stroke) solid var(--danger);border-radius:var(--r-md);box-shadow:var(--shadow-pop)}.workflow-stepper{min-width:0}.workflow-stepper ol{display:flex;align-items:center;list-style:none}.workflow-stepper li{display:flex;align-items:center;min-width:0}.workflow-stepper button{display:flex;align-items:center;gap:var(--s-2);min-height:var(--shell-control-size);padding:var(--s-1) var(--s-2);border:var(--stroke) solid transparent;border-radius:var(--r-md);background:transparent;color:var(--fg-2);font-size:var(--text-sm);cursor:pointer;white-space:nowrap;transition:background var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.workflow-stepper button:hover:not(:disabled){color:var(--fg-1);background:var(--surface-3)}.step-index{width:var(--s-5);height:var(--s-5);display:grid;place-items:center;flex:none;font:var(--text-xs) var(--font-mono);font-variant-numeric:tabular-nums;border:var(--stroke) solid var(--line-3);border-radius:var(--r-full)}.step-index svg{width:var(--s-3);height:var(--s-3);fill:none;stroke:var(--success);stroke-width:var(--focus-width)}[data-state=stepCurrent] button{color:var(--fg-1)}[data-state=stepCurrent] .step-index{background:var(--accent-soft);border-color:var(--accent-ring)}[data-state=stepDone] .step-index{background:var(--surface-3)}.step-connector{width:var(--s-3);height:var(--stroke);background:var(--line-2)}.shell-toolbar .toolbar-actions{justify-self:end;display:flex;width:auto;min-width:0;gap:var(--s-2);margin-left:0;align-items:center}.shell-toolbar .toolbar-actions>.btn,.shell-toolbar .shell-menu-anchor>.btn{height:var(--shell-control-size);min-width:var(--shell-control-size);padding:0 var(--s-3);font-size:var(--text-sm);gap:var(--s-2)}.shell-toolbar .toolbar-actions svg{width:var(--s-4);height:var(--s-4);stroke-width:var(--stroke)}.shell-toolbar .btn-primary{background:var(--accent);color:var(--fg-inverse);border-color:var(--accent-ring)}.shell-toolbar .btn-primary:hover:not(:disabled){background:var(--accent-hover);color:var(--fg-inverse);box-shadow:0 0 0 var(--s-1) var(--accent-soft)}.shell-toolbar .btn-danger{background:var(--surface-4);border-color:var(--danger);color:var(--danger)}.shell-toolbar .shell-run{min-width:calc(var(--s-10) * 2)}.shell-toolbar .shell-account{width:var(--shell-control-size);padding:0;border:var(--stroke) solid var(--line-3);border-radius:var(--r-full);background:var(--surface-3);color:var(--fg-1);font:var(--text-sm) var(--font-mono)}.shell-menu-anchor{position:relative}.shell-toolbar .file-trigger{font-size:var(--text-xl);padding:0}.shell-menu{position:absolute;z-index:40;right:0;top:calc(100% + var(--s-2));width:var(--shell-menu-width);max-height:calc(100dvh - var(--shell-bar-height) - var(--s-6));overflow-y:auto;padding:var(--s-2);border:var(--stroke) solid var(--line-3);border-radius:var(--r-lg);background:var(--surface-2);box-shadow:var(--shadow-pop);transform-origin:top right;animation:shell-menu-fade var(--dur-1) var(--ease-out)}.shell-menu:before{content:"";position:absolute;left:0;right:0;bottom:100%;height:var(--s-2)}.shell-menu [role^=menuitem]{width:100%;min-height:var(--shell-control-size);padding:var(--s-2);display:flex;align-items:center;justify-content:space-between;gap:var(--s-2);text-align:left;border:0;border-radius:var(--r-sm);background:transparent;color:var(--fg-1);cursor:pointer;font-size:var(--text-sm)}.shell-menu [role^=menuitem]:hover:not(:disabled),.shell-menu [role^=menuitem]:focus-visible{background:var(--surface-4)}.shell-menu-heading{padding:var(--s-2);color:var(--fg-3);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase}.shell-menu-divider{height:var(--stroke);margin:var(--s-2) 0;background:var(--line-2)}.menu-current-language{margin-left:auto;color:var(--fg-2);font-size:var(--text-xs)}.shell-menu [role=menuitemradio]{padding-left:var(--s-4)}.shell-menu [aria-checked=true]{background:var(--surface-3)}.shell-menu .file-format{flex:none;padding:var(--s-1);border:var(--stroke) solid var(--line-3);border-radius:var(--r-sm);color:var(--fg-2);font:var(--text-xs) var(--font-mono)}.shell-menu small{display:block;margin-top:var(--s-1);color:var(--fg-2);font-size:var(--text-xs)}.sr-only{position:absolute;width:var(--stroke);height:var(--stroke);padding:0;margin:calc(var(--stroke) * -1);overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@keyframes shell-menu-fade{0%{opacity:0}to{opacity:1}}@media (max-width: 1250px){.shell-toolbar .action-label{display:none}.shell-toolbar .toolbar-actions>.btn,.shell-toolbar .shell-menu-anchor>.btn{padding:0 var(--s-2)}.workflow-stepper button{gap:var(--s-1);padding:var(--s-1);font-size:var(--text-xs)}.project-title{width:calc(var(--s-10) * 3);padding-left:var(--s-2)}.toolbar-identity{gap:var(--s-2)}}@media (max-width: 800px){.app-shell.shell-v2{grid-template-rows:calc(var(--shell-bar-height) + var(--s-10)) minmax(0,1fr)}.shell-v2 .shell-toolbar{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:var(--shell-bar-height) var(--s-10);gap:0 var(--s-2);padding:0 var(--s-2)}.workflow-stepper{grid-row:2;grid-column:1 / -1;justify-self:center}.shell-toolbar .toolbar-actions{grid-column:2;grid-row:1;gap:var(--s-1)}.shell-toolbar .toolbar-actions>.btn,.shell-toolbar .shell-menu-anchor>.btn{height:var(--s-10);min-width:var(--s-10);padding:0 var(--s-2)}.shell-toolbar .shell-run{min-width:calc(var(--s-10) + var(--s-6))}.workflow-stepper button{min-height:var(--s-10)}.step-connector{width:var(--s-2)}.shell-menu{position:fixed;right:var(--s-2);top:calc(var(--shell-bar-height) + var(--s-1));width:min(var(--shell-menu-width),calc(100vw - var(--s-4)))}.shell-menu [role^=menuitem]{min-height:var(--s-10)}.project-save-status{font-size:var(--text-xs)}.project-title{width:100%}.project-name,.project-name-input{min-height:var(--s-10);padding-top:var(--s-1);padding-bottom:var(--s-4);margin-bottom:calc(var(--s-4) * -1)}.project-name{align-items:flex-start;width:100%}.project-save-status{pointer-events:none}}@media (max-width: 600px){.shell-toolbar .run-label,.shell-toolbar .export-trigger .menu-chevron{display:none}.shell-toolbar .brand-title{position:absolute;width:var(--stroke);height:var(--stroke);overflow:hidden;clip-path:inset(50%)}.project-name>svg{display:none}.project-save-status{overflow:hidden;text-overflow:ellipsis;display:block}.project-save-status i{display:inline-block;margin-right:var(--s-1);vertical-align:middle}.shell-toolbar .shell-account{width:var(--s-10)}}@media (prefers-reduced-motion: reduce){.shell-menu{animation:none}.project-name>svg,.workflow-stepper button{transition:none}}.app-shell.inspector-v3{position:relative;--inspector-dock-width: calc(var(--s-10) * 8);--inspector-action-height: calc(var(--s-10) * 4)}.inspector-v3 .workspace-body{--inspector-width: var(--inspector-dock-width)}.app-shell.inspector-v3[data-inspector=closed] .workspace-body{--inspector-width: 0}.inspector-v3 .inspector-panel{padding:0 0 var(--inspector-action-height);overflow:hidden}.inspector-scroll{height:100%;overflow-y:auto;padding:var(--s-4)}.inspector-v3 .dock-heading{margin-bottom:var(--s-4)}.inspector-v3 .inspector-title{margin-bottom:var(--s-5)}.inspector-v3 .inspector-title h2{font-size:var(--text-xl)}.inspector-v3 .inspector-title p{max-width:none}.inspector-settings{gap:var(--s-3)}.inspector-accordion{border:var(--stroke) solid var(--line-2);border-radius:var(--r-lg);background:var(--surface-1);min-width:0;overflow:hidden}.inspector-accordion h3{margin:0;font-weight:500}.inspector-accordion h3>button{position:relative;width:100%;display:grid;grid-template-columns:minmax(0,1fr) var(--s-4);align-items:center;gap:var(--s-1) var(--s-2);min-height:calc(var(--s-10) + var(--s-4));padding:var(--s-3);color:var(--fg-1);background:transparent;border:0;text-align:left;cursor:pointer}.inspector-accordion h3>button:hover{background:var(--surface-2)}.accordion-title{grid-column:1;font-size:var(--text-sm)}.accordion-summary{grid-column:1;font:var(--text-xs)/1.5 var(--font-mono);font-variant-numeric:tabular-nums;color:var(--fg-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inspector-accordion h3 svg{grid-column:2;grid-row:1 / 3;width:var(--s-4);height:var(--s-4);fill:none;stroke:var(--fg-3);stroke-width:var(--stroke);transition:transform var(--dur-2) var(--ease-out)}.inspector-accordion.is-open h3 svg{transform:rotate(180deg)}.inspector-accordion-grid{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--dur-2) var(--ease-out)}.inspector-accordion.is-open .inspector-accordion-grid{grid-template-rows:1fr}.inspector-accordion-clip{min-height:0;overflow:hidden}.inspector-accordion-content{padding:var(--s-1) var(--s-3) var(--s-4)}.inspector-accordion:focus-within{overflow:visible}.inspector-accordion .panel-heading{font-size:var(--text-xs);color:var(--fg-3);letter-spacing:var(--tracking-label);text-transform:uppercase}.inspector-settings .panel-header-row{margin-bottom:var(--s-3)}.inspector-settings .field-label{font-size:var(--text-xs);min-height:0;color:var(--fg-2)}.field-info{font-size:var(--text-xs);color:var(--fg-3)}.inspector-settings .cutting-fields .field-label{min-height:var(--s-8)}.inspector-settings .cutting-fields .form-field:last-child .field-label{min-height:0}.sheet-presets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-2)}.preset-chip{min-width:0;min-height:var(--s-8);padding:var(--s-2) var(--s-1);border:var(--stroke) solid var(--line-2);border-radius:var(--r-sm);background:var(--surface-2);color:var(--fg-2);font:var(--text-xs) var(--font-mono);font-variant-numeric:tabular-nums;cursor:pointer}.preset-chip:hover:not(:disabled){background:var(--surface-3);color:var(--fg-1)}.preset-chip[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent-ring);color:var(--fg-1)}.inspector-settings .material-preview{padding-top:var(--s-4)}.sheet-preview-swap{transform-box:fill-box;transform-origin:center;animation:sheet-preview-turn var(--dur-3) var(--ease-out)}.inspector-settings .sheet-dimensions{margin-bottom:0}.gravity-previews{margin-bottom:var(--s-3);padding:var(--s-1);background:var(--surface-0)}.inspector-settings .gravity-field{margin-top:0}.gravity-choice{display:flex;flex-direction:column;padding:var(--s-2) var(--s-1);font-size:var(--text-xs)}.gravity-choice svg{width:100%;height:calc(var(--s-10) + var(--s-4))}.gravity-boundary{stroke:var(--fg-3);stroke-width:var(--stroke);fill:none}.gravity-pieces{fill:var(--surface-4);stroke:var(--fg-3);stroke-width:var(--stroke);transition:transform var(--dur-3) var(--ease-out)}.selected .gravity-preview-x .gravity-pieces{transform:translate(calc(var(--s-4) * -1));fill:var(--accent-soft)}.selected .gravity-preview-y .gravity-pieces{transform:translateY(var(--s-2));fill:var(--accent-soft)}.inspector-settings .permission-button{font-size:var(--text-xs);gap:var(--s-2)}.inspector-settings .permission-label{max-width:none}.rotation-field{margin-top:var(--s-3)}.quality-segments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-1);padding:var(--s-1);border-radius:var(--r-md);background:var(--surface-0);border:var(--stroke) solid var(--line-2)}.quality-segments button{min-width:0;min-height:var(--s-10);padding:var(--s-1);border:var(--stroke) solid transparent;border-radius:var(--r-sm);background:transparent;color:var(--fg-2);font-size:var(--text-xs);cursor:pointer;overflow-wrap:anywhere}.quality-segments [aria-checked=true]{color:var(--fg-1);background:var(--surface-4);border-color:var(--line-3)}.quality-time{margin-top:var(--s-3);color:var(--fg-2);font-size:var(--text-xs);line-height:1.6}.inspector-help{margin:var(--s-2) 0 var(--s-3);color:var(--fg-3);font-size:var(--text-xs);line-height:1.7}.advanced-link,.saved-configurations-login{display:flex;align-items:center;justify-content:space-between;gap:var(--s-2);min-height:var(--s-10);width:100%;background:transparent;color:var(--fg-2);border:0;border-radius:var(--r-sm);font-size:var(--text-xs);cursor:pointer;text-align:left}.advanced-link:hover,.saved-configurations-login:hover{color:var(--fg-1);background:var(--surface-2)}.saved-configurations-login{justify-content:flex-start;padding:var(--s-2);border:var(--stroke) dashed var(--line-2)}.inspector-settings .configuration-picker{padding:0;margin:0;border:0}.inspector-settings .configuration-picker .commercial-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-2)}.inspector-settings .configuration-picker button{min-height:var(--s-8);font-size:var(--text-xs)}.inspector-actions{z-index:25;display:flex;flex-direction:column;justify-content:center;gap:var(--s-2);padding:var(--s-3) var(--s-4);color:var(--fg-1);background:var(--surface-1);border-top:var(--stroke) solid var(--line-3)}.inspector-v3[data-inspector=open] .inspector-actions{position:absolute;bottom:0;right:0;width:var(--inspector-dock-width);height:var(--inspector-action-height);border-left:var(--stroke) solid var(--line-2)}.actionbar-copy{display:flex;flex-direction:column;gap:var(--s-1);min-width:0}.actionbar-status{color:var(--fg-1);font-size:var(--text-sm)}.actionbar-help{font-size:var(--text-xs);line-height:1.5;color:var(--fg-2)}.actionbar-buttons{display:flex;flex-direction:column;gap:var(--s-1)}.inspector-actions .btn{width:100%;min-height:var(--s-10);height:auto;justify-content:space-between;gap:var(--s-2);font-size:var(--text-sm);white-space:normal;text-align:left}.inspector-actions .btn-primary{background:var(--accent);border-color:var(--accent-ring);color:var(--fg-inverse)}.inspector-actions .btn-primary:hover:not(:disabled){background:var(--accent-hover);color:var(--fg-inverse)}.inspector-actions .btn-danger{background:var(--surface-3);border-color:var(--danger);color:var(--danger)}.inspector-actions kbd{flex:none;padding:var(--s-1);border:var(--stroke) solid var(--line-3);border-radius:var(--r-sm);box-shadow:var(--inner-highlight);font:var(--text-xs) var(--font-mono)}.actionbar-rerun{color:var(--fg-2)}.actionbar-progress{height:var(--s-1);background:var(--surface-4);overflow:hidden;border-radius:var(--r-full)}.actionbar-progress span{display:block;height:100%;background:var(--info);transition:width var(--dur-2) var(--ease-out)}.inspector-actions[data-status=stale] .actionbar-status{color:var(--warning)}.inspector-actions[data-status=stale] .actionbar-primary{animation:stale-action-hint var(--dur-4) var(--ease-out)}.actionbar-error{color:var(--danger);font-size:var(--text-xs);line-height:1.5;overflow-wrap:anywhere}.app-shell.inspector-v3[data-inspector=closed]{grid-template-rows:var(--shell-bar-height) minmax(0,1fr) auto}.inspector-v3[data-inspector=closed] .inspector-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}.inspector-v3[data-inspector=closed] .actionbar-buttons{flex-direction:row;min-width:calc(var(--s-10) * 7)}.inspector-v3[data-inspector=closed] .actionbar-buttons>.btn{width:auto;flex:1}.inspector-v3[data-inspector=closed] .actionbar-progress{grid-column:1 / -1;grid-row:2}@keyframes sheet-preview-turn{0%{transform:rotate(-90deg);opacity:.6}to{transform:rotate(0);opacity:1}}@keyframes stale-action-hint{0%{box-shadow:0 0 0 var(--s-1) var(--accent-soft)}to{box-shadow:0 0 0 0 var(--accent-soft)}}@media (min-width: 1700px){.app-shell.inspector-v3{--inspector-dock-width: calc(var(--s-10) * 8 + var(--s-4))}}@media (max-width: 800px){.app-shell.inspector-v3{--inspector-dock-width: min(calc(var(--s-10) * 8),85vw)}.inspector-v3 .inspector-panel{width:var(--inspector-dock-width);padding-bottom:var(--inspector-action-height)}.inspector-v3[data-inspector=open] .inspector-actions{bottom:var(--s-3);right:var(--s-2);border-radius:0 0 var(--r-lg) var(--r-lg)}.app-shell.inspector-v3[data-inspector=closed]{grid-template-rows:calc(var(--shell-bar-height) + var(--s-10)) minmax(0,1fr) auto}.inspector-v3[data-inspector=closed] .inspector-actions{display:flex;padding:var(--s-2) var(--s-4)}.inspector-v3[data-inspector=closed] .actionbar-buttons{min-width:0;width:100%}.inspector-v3[data-inspector=closed] .actionbar-help{display:none}.inspector-v3 .preset-chip,.inspector-v3 .configuration-picker button,.inspector-v3 .number-field-control,.inspector-v3 .form-field select{min-height:var(--s-10)}}@media (prefers-reduced-motion: reduce){.inspector-accordion-grid,.inspector-accordion h3 svg,.gravity-pieces,.actionbar-progress span{transition:none}.sheet-preview-swap,.inspector-actions[data-status=stale] .actionbar-primary{animation:none}}.library-v4 .sr-only{position:absolute;width:var(--stroke);height:var(--stroke);padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.app-shell.library-v4-shell .workspace-body{--library-width: calc(var(--s-10) * 7)}.app-shell.library-v4-shell[data-library=closed] .workspace-body{--library-width: 0}.library-v4-shell .library-panel{padding:var(--s-4) var(--s-3) var(--s-3)}.library-v4{gap:var(--s-2);overflow:hidden}.library-v4 .panel-header-row{margin:0;gap:var(--s-1)}.library-v4 .panel-heading{font-size:var(--text-md)}.library-v4 .parts-total-badge{font:var(--text-xs) var(--font-mono);color:var(--fg-2);padding:var(--s-1)}.library-search{display:flex;align-items:center;gap:var(--s-2);padding:0 var(--s-2);background:var(--surface-2);border:var(--stroke) solid var(--line-2);border-radius:var(--r-md);min-width:0}.library-search svg{width:var(--s-4);height:var(--s-4);fill:none;stroke:var(--fg-2);stroke-width:var(--focus-width);flex:none}.library-search input{min-width:0;width:100%;height:var(--s-10);border:0;background:transparent;color:var(--fg-1);font-size:var(--text-sm)}.library-search input::placeholder{color:var(--fg-2)}.library-selection-tools{display:flex;align-items:center;justify-content:space-between;gap:var(--s-1);color:var(--fg-2);font-size:var(--text-xs)}.library-selection-tools span{max-width:60%}.library-v4 button{cursor:pointer}.library-selection-tools button,.library-batch>div button,.library-no-results button{border:0;background:transparent;color:var(--fg-2);font-size:var(--text-xs);border-radius:var(--r-sm);padding:var(--s-1)}.library-selection-tools button:hover,.library-batch>div button:hover,.library-no-results button:hover{background:var(--surface-3);color:var(--fg-1)}.library-v4 .parts-list{gap:var(--s-2);padding:var(--s-1);margin:calc(-1 * var(--s-1));overflow-x:hidden;overscroll-behavior:contain;flex:1}.library-v4 .part-card{display:block;padding:0;flex:none;border-radius:var(--r-md);background:var(--surface-2);box-shadow:none;animation:none;position:relative}.library-v4 .part-card[data-highlighted=true]{background:var(--accent-soft);border-color:var(--accent-ring)}.library-v4 .part-card[data-selected=true]{border-color:var(--accent)}.library-v4 .part-card[data-selected=true] .part-name{color:var(--accent-hover)}.library-v4 .part-card[data-severity]{border-color:var(--line-2);border-left:var(--focus-width) solid var(--part-issue-color)}.library-v4 .part-card[data-severity][data-highlighted=true],.library-v4 .part-card[data-severity][data-selected=true]{border-top-color:var(--accent-ring);border-right-color:var(--accent-ring);border-bottom-color:var(--accent-ring)}.part-card-row{position:relative;display:grid;grid-template-columns:var(--s-10) minmax(0,1fr) calc(var(--s-10) + var(--s-6)) var(--s-5);align-items:center;gap:var(--s-1);height:calc(var(--s-10) + var(--s-4) - var(--stroke) * 2);padding:calc(var(--s-2) - var(--stroke)) var(--s-2)}.library-v4 .part-thumb{width:var(--s-10);height:var(--s-10);padding:var(--s-1);background:var(--surface-1);border:0;border-radius:var(--r-sm)}.library-v4 .part-select{display:flex;flex-direction:column;gap:0;height:var(--s-10);min-width:0;padding:0 0 var(--s-3);text-align:left;border:0;border-radius:var(--r-sm);background:transparent;color:var(--fg-1)}.library-v4 .part-name{display:block;width:100%;line-height:1.1;font-size:var(--text-sm)}.library-v4 .part-meta{display:block;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--fg-2);font:var(--text-xs)/1.1 var(--font-mono);font-variant-numeric:tabular-nums}.library-v4 .qty-pill{display:grid;grid-template-columns:var(--s-5) minmax(0,1fr) var(--s-5);gap:0;width:100%;height:var(--s-8);border-radius:var(--r-sm);background:var(--surface-1);border:var(--stroke) solid var(--line-2)}.library-v4 .qty-pill button,.library-v4 .qty-pill input{min-width:0;width:100%;height:100%;border:0;border-radius:var(--r-sm);color:var(--fg-1);background:transparent;text-align:center;font:var(--text-xs) var(--font-mono);font-variant-numeric:tabular-nums;padding:0}.library-v4 .qty-pill button:hover:not(:disabled){background:var(--surface-4)}.library-v4 .qty-pill input{appearance:textfield}.library-v4 .qty-pill input::-webkit-inner-spin-button,.library-v4 .qty-pill input::-webkit-outer-spin-button{appearance:none;margin:0}.library-v4 .qty-pill input[data-editing=true]{background:var(--surface-4)}.library-v4 .qty-pill button:disabled{opacity:.4;cursor:default}.library-v4 .btn-icon-delete{width:var(--s-5);height:var(--s-8);display:grid;place-items:center;background:transparent;color:var(--fg-2);opacity:0;pointer-events:none;transition:opacity var(--dur-1) var(--ease-out)}.library-v4 .btn-icon-delete svg{width:var(--s-5);height:var(--s-5);fill:none;stroke:currentColor;stroke-width:var(--focus-width)}.library-v4 .part-card:hover .btn-icon-delete,.library-v4 .part-card:focus-within .btn-icon-delete{opacity:1;pointer-events:auto}.library-v4 .btn-icon-delete:focus-visible{opacity:1;pointer-events:auto}.library-v4 .btn-icon-delete:hover:not(:disabled){color:var(--danger)}.part-details-toggle{position:absolute;left:calc(var(--s-10) + var(--s-3));right:calc(var(--s-10) * 2 + var(--s-6));bottom:calc(var(--s-2) - var(--focus-width));display:flex;align-items:center;justify-content:space-between;min-width:0;gap:var(--s-1);padding:0;border:0;border-radius:var(--r-sm);background:transparent;color:var(--fg-2);font:var(--text-xs)/1.2 var(--font-mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.part-card[data-severity] .part-details-toggle{color:var(--part-issue-color)}.part-details-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.part-details{display:flex;flex-direction:column;gap:var(--s-2);padding:var(--s-3);border-top:var(--stroke) solid var(--line-2);color:var(--fg-2);font-size:var(--text-xs);overflow-wrap:anywhere}.part-details[hidden]{display:none}.part-details p{color:var(--part-issue-color, var(--fg-2))}.part-details strong{display:block;font-family:var(--font-mono)}.library-batch{border:var(--stroke) solid var(--accent-ring);border-radius:var(--r-md);background:var(--surface-2);padding:var(--s-2);display:grid;gap:var(--s-2);flex:none}.library-batch>div{display:flex;align-items:center;justify-content:space-between;gap:var(--s-2);font-size:var(--text-xs)}.library-batch label{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:var(--s-1);color:var(--fg-2);font-size:var(--text-xs)}.library-batch .number-field-control,.library-batch select{width:100%;min-width:0;height:var(--s-8);background:var(--surface-1);border:var(--stroke) solid var(--line-2);border-radius:var(--r-sm);color:var(--fg-1);font-size:var(--text-xs)}.batch-mixed{grid-row:2;font-size:var(--text-xs);color:var(--fg-2)}.library-batch label .number-field-control{grid-column:2;grid-row:1 / 3}.library-filter-count{font-size:var(--text-xs);color:var(--fg-2)}.library-no-results{padding:var(--s-5);text-align:center;color:var(--fg-2);font-size:var(--text-sm)}.library-v4 .diagnostic-card{border:var(--stroke) solid var(--warning);border-left-width:var(--focus-width);border-radius:var(--r-md);padding:var(--s-2);color:var(--fg-2);font-size:var(--text-xs)}.library-v4 .diagnostic-card[data-severity=error]{border-color:var(--danger)}.library-v4 .diagnostic-card summary{display:flex;align-items:center;gap:var(--s-2);cursor:pointer}.library-v4 .diagnostic-card small{display:block;overflow-wrap:anywhere}.library-v4 .diagnostic-card p{padding-top:var(--s-2)}.library-v4-shell .library-import{border-style:dashed;flex-wrap:wrap;margin-top:var(--s-4)}.library-v4-shell .library-import .drop-copy{color:var(--fg-2);font:var(--text-xs) var(--font-sans);display:inline}.library-v4-shell .library-import strong{color:var(--fg-1);font-weight:500}.library-v4-shell .library-footnote{padding-top:var(--s-2)}@media (min-width: 1700px){.app-shell.library-v4-shell .workspace-body{--library-width: calc(var(--s-10) * 7.5)}}@media (max-width: 800px){.library-v4-shell .library-panel{width:min(calc(var(--s-10) * 8),calc(100vw - var(--s-4)))}.library-v4 .part-card-row{grid-template-columns:var(--s-10) minmax(0,1fr) calc(var(--s-10) * 3 + var(--stroke) * 2);min-height:calc(var(--s-10) + var(--s-4));height:auto}.library-v4 .btn-icon-delete{grid-column:1;grid-row:2;width:var(--s-10);height:var(--s-10)}.library-v4 .qty-pill{height:var(--s-10);grid-template-columns:repeat(3,minmax(0,1fr))}.part-details-toggle{right:calc(var(--s-10) * 3 + var(--s-4))}.library-v4 .part-details-toggle{min-height:var(--s-10);position:static;grid-column:2 / -1;grid-row:2;white-space:normal}.library-selection-tools button,.library-batch>div button,.library-batch select,.library-batch .number-field-control{min-height:var(--s-10)}.library-v4-shell .library-footnote{display:none}}@media (hover: none){.library-v4 .part-card-row{grid-template-columns:var(--s-10) minmax(0,1fr) calc(var(--s-10) * 3 + var(--stroke) * 2);height:auto}.library-v4 .qty-pill{height:var(--s-10);grid-template-columns:repeat(3,minmax(0,1fr))}.library-v4 .btn-icon-delete{grid-column:1;grid-row:2;width:var(--s-10);height:var(--s-10);opacity:1;pointer-events:auto}.library-v4 .part-details-toggle{position:static;grid-column:2 / -1;grid-row:2;min-height:var(--s-10)}}@media (prefers-reduced-motion: reduce){.library-v4 .part-card,.library-v4 .btn-icon-delete{transition:none;animation:none}}.viewer-wrapper.viewer-v5{flex-direction:column}.viewer-v5 .canvas-stage canvas{width:100%;height:100%}.viewer-v5 .stage-sr-only{position:absolute;width:var(--stroke);height:var(--stroke);overflow:hidden;clip-path:inset(50%);white-space:nowrap}.viewer-v5 .sheet-tabs-bar{height:auto;min-height:calc(var(--s-10) + var(--s-3));padding:var(--s-2);border-top:0;border-bottom:var(--stroke) solid var(--line-2);gap:var(--s-1);flex-wrap:nowrap}.viewer-v5 .sheet-tabs-list{flex:1;padding:var(--s-1);scrollbar-width:thin;overscroll-behavior-x:contain}.viewer-v5 .sheet-tab{position:relative;height:var(--s-10);min-height:var(--s-10);flex:none;border-radius:var(--r-full);padding:0 var(--s-3);color:var(--fg-2);box-shadow:none;overflow:hidden}.viewer-v5 .sheet-tab.active{background:var(--surface-3);color:var(--fg-1);border-color:var(--line-3)}.viewer-v5 .sheet-tab-eff,.viewer-v5 .sheet-tab-count{font:var(--text-xs) var(--font-mono);font-variant-numeric:tabular-nums}.sheet-utilization{position:absolute;bottom:var(--s-1);left:var(--s-3);right:var(--s-3);height:var(--focus-width);background:var(--line-2);border-radius:var(--r-full);overflow:hidden}.sheet-utilization i{display:block;height:100%;background:var(--danger)}.sheet-utilization[data-level=high] i{background:var(--success)}.sheet-utilization[data-level=medium] i{background:var(--warning)}.sheet-scroll{flex:none;width:var(--s-10);height:var(--s-10);border:var(--stroke) solid var(--line-2);border-radius:var(--r-full);color:var(--fg-1);background:var(--surface-2);font-size:var(--text-xl);cursor:pointer}.viewer-v5 .canvas-stage[data-grid=false]{background-image:none}.viewer-v5 .stage-hud-stack{position:absolute;z-index:4;bottom:var(--s-3);left:var(--s-3);right:var(--s-3);display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s-3);pointer-events:none}.viewer-v5 .stage-glass{background:var(--surface-glass);backdrop-filter:blur(var(--s-3));border:var(--stroke) solid var(--line-3);border-radius:var(--r-lg);box-shadow:var(--shadow-pop);pointer-events:auto}.viewer-v5 .viewport-controls{position:static;transform:none;left:auto;bottom:auto;margin:0;display:flex;gap:0;padding:var(--s-1);flex:none}.viewer-v5 .btn-vp{height:var(--s-10);min-height:var(--s-10);min-width:var(--s-10);padding:0 var(--s-2);border:0;border-radius:var(--r-md);color:var(--fg-1);background:transparent;font-size:var(--text-xs);cursor:pointer;transition:background var(--dur-1) var(--ease-out)}.viewer-v5 .btn-vp:hover{background:var(--surface-3)}.viewer-v5 .btn-vp[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-hover)}.viewer-v5 .vp-zoom-readout{font-family:var(--font-mono);font-variant-numeric:tabular-nums;min-width:calc(var(--s-10) + var(--s-3))}.viewer-v5 .btn-vp svg{width:var(--s-4);height:var(--s-4);fill:none;stroke:currentColor;stroke-width:var(--focus-width);vertical-align:middle}.viewer-v5 .stats-bar{display:block;min-height:0;padding:var(--s-3);width:min(100%,calc(var(--s-10) * 9));gap:0}.stats-primary{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.7fr) minmax(0,1.2fr) minmax(0,.8fr);gap:var(--s-2)}.viewer-v5 .stat-item{padding:0;min-width:0;border:0;gap:var(--s-1)}.viewer-v5 .stat-label{color:var(--fg-2);font-size:var(--text-xs);line-height:1.4;overflow-wrap:anywhere}.viewer-v5 .stat-value,.viewer-v5 .stat-item:first-child .stat-value{color:var(--fg-1);font:var(--text-lg)/1.4 var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}.stats-details{padding-top:var(--s-2);font-size:var(--text-xs);color:var(--fg-2)}.stats-details summary{cursor:pointer;border-radius:var(--r-sm)}.stats-details>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-3);margin-top:var(--s-2)}.viewer-v5 .stage-hud-stack[data-empty=true] .stats-bar{display:none}.viewer-v5 .stage-hud-stack[data-empty=true]{justify-content:flex-end}.unplaced-tray{border-top:var(--stroke) solid var(--line-2);background:var(--surface-1);flex:none;max-height:40%;overflow-y:auto}.unplaced-trigger{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:var(--s-10);padding:var(--s-2) var(--s-3);border:0;color:var(--warning);background:transparent;text-align:left;font-size:var(--text-sm);cursor:pointer}.unplaced-tray p{font-size:var(--text-xs);color:var(--fg-2);padding:0 var(--s-3) var(--s-2)}.unplaced-list{display:flex;gap:var(--s-2);padding:var(--s-2) var(--s-3);overflow-x:auto}.unplaced-card{display:flex;align-items:center;gap:var(--s-2);flex:none;max-width:100%;min-width:calc(var(--s-10) * 5);padding:var(--s-2);border:var(--stroke) solid var(--line-2);border-radius:var(--r-md);background:var(--surface-2);text-align:left;color:var(--fg-1);cursor:pointer}.unplaced-card[data-highlighted=true]{border-color:var(--accent-ring);background:var(--accent-soft)}.unplaced-card>span{min-width:0;display:grid;gap:var(--s-1)}.unplaced-card strong{font-size:var(--text-sm);overflow-wrap:anywhere}.unplaced-card small{color:var(--fg-2);font:var(--text-xs) var(--font-mono)}@container stage (max-width: 760px){.viewer-v5 .stage-hud-stack{flex-direction:column-reverse;align-items:flex-end}.viewer-v5 .stats-bar{width:100%}}@container stage (max-width: 400px){.stats-primary{grid-template-columns:repeat(2,minmax(0,1fr))}.viewer-v5 .viewport-controls{width:100%;justify-content:space-between}.viewer-v5 .btn-vp{padding:0 var(--s-1)}.viewer-v5 .stat-value,.viewer-v5 .stat-item:first-child .stat-value{font-size:var(--text-md)}}@media (prefers-reduced-motion: reduce){.viewer-v5 .btn-vp,.viewer-v5 .sheet-tab{transition:none}}@font-face{font-family:Inter;src:url(/fonts/Inter-Variable.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Geist Mono;src:url(/fonts/GeistMono-Variable.ttf) format("truetype");font-weight:100 900;font-display:swap}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--surface-0: #050607;--surface-1: #0a0b0d;--surface-2: #111316;--surface-3: #181a1e;--surface-4: #1f2227;--surface-glass: color-mix(in srgb, var(--surface-1) 72%, transparent);--line-1: rgba(255,255,255,.06);--line-2: rgba(255,255,255,.1);--line-3: rgba(255,255,255,.16);--fg-1: #f4f4f5;--fg-2: #a1a1aa;--fg-3: #80808a;--fg-inverse: #0a0a0a;--accent: #ff6363;--accent-hover: #ff7a7a;--accent-soft: rgba(255,99,99,.12);--accent-ring: rgba(255,99,99,.45);--accent-gradient: linear-gradient(135deg,#ff6363 0%,#ff8a5c 100%);--success: #4ade80;--warning: #e6bd79;--danger: #ff9b9b;--info: #7cb7ff;--font-sans: "Inter", "Segoe UI", sans-serif;--font-mono: "Geist Mono", Consolas, monospace;--text-xs: 11px;--text-sm: 12px;--text-base: 13px;--text-md: 14px;--text-lg: 16px;--text-xl: 20px;--text-2xl: 28px;--tracking-label: .06em;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--r-sm:6px;--r-md:8px;--r-lg:12px;--r-xl:16px;--r-full:999px;--shadow-pop: 0 8px 24px -6px rgba(0,0,0,.6), 0 0 0 1px var(--line-2);--shadow-modal: 0 24px 64px -12px rgba(0,0,0,.75), 0 0 0 1px var(--line-2);--inner-highlight: inset 0 1px 0 rgba(255,255,255,.05);--ease-out: cubic-bezier(.16,1,.3,1);--ease-in-out: cubic-bezier(.65,0,.35,1);--spring: cubic-bezier(.34,1.56,.64,1);--dur-1: .12s;--dur-2: .2s;--dur-3: .32s;--dur-4: .48s;--bg-root: var(--surface-0);--bg-panel: var(--surface-1);--bg-card: var(--surface-2);--bg-card-hover: var(--surface-3);--bg-input: var(--surface-2);--border-subtle: var(--line-2);--border-medium: var(--line-3);--text-primary: var(--fg-1);--text-secondary: var(--fg-2);--text-muted: var(--fg-3);--brand-accent: var(--accent);--issue-warning: var(--warning);--issue-error: var(--danger);--key-shadow: var(--inner-highlight);--stroke: calc(var(--s-1) / 4);--focus-width: calc(var(--stroke) * 2);--canvas-min-height: 50dvh;--ease-spring: var(--spring);color-scheme:dark;font-family:var(--font-sans);font-feature-settings:"calt","kern","liga","cv11","ss01","tnum";font-size:var(--text-base);color:var(--fg-1);background:var(--surface-0)}html,body,#root{width:100%;height:100%;overflow:hidden;user-select:none;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.38}:focus-visible{outline:var(--focus-width) solid var(--accent-ring);outline-offset:var(--focus-width)}[hidden]{display:none!important}::selection{background:var(--accent-soft);color:var(--fg-1)}::-webkit-scrollbar{width:var(--s-1);height:var(--s-1)}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--surface-4);border-radius:var(--r-md)}::-webkit-scrollbar-thumb:hover{background:var(--fg-3)}input[type=number],.stat-value,.part-meta,.sheet-tab-eff,.sheet-tab-count,.vp-zoom-readout{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.toolbar-overflow,.toolbar-overflow-content{display:flex;align-items:center;gap:var(--s-3);min-width:0}.toolbar .toolbar-more-trigger{display:none}.app-shell{display:grid;grid-template-rows:calc(var(--s-1) * 20) calc(var(--s-1) * 9) minmax(0,1fr);height:100dvh;background:var(--bg-root)}.toolbar{display:flex;align-items:center;gap:var(--s-6);padding:0 calc(var(--s-1) * 7);border-bottom:var(--stroke) solid var(--border-subtle);background:var(--surface-1);backdrop-filter:blur(calc(var(--s-1) * 12));z-index:30}.toolbar-brand{display:flex;align-items:center;gap:var(--s-3);flex:none}.brand-sigil{display:grid;place-items:center;width:var(--s-10);height:var(--s-10);border:var(--stroke) solid var(--accent-ring);border-radius:var(--r-lg);background:linear-gradient(145deg,var(--accent-soft),var(--accent-soft));box-shadow:var(--key-shadow)}.brand-text-group{display:grid;gap:calc(var(--s-1) * .75)}.brand-title{font-size:var(--text-xl);font-weight:600;letter-spacing:.01em;line-height:1.1}.brand-period{color:var(--brand-accent)}.brand-subtitle{color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.02em}.toolbar-context{display:flex;align-items:center;gap:var(--s-4);color:var(--text-secondary);font-size:var(--text-sm);white-space:nowrap}.context-divider{color:var(--fg-inverse);font-size:var(--text-xl);font-weight:300}.studio-badge{font:calc(var(--s-1) * 2.5) var(--font-mono);padding:var(--s-1) calc(var(--s-1) * 1.5);border:var(--stroke) solid var(--border-medium);border-radius:calc(var(--s-1) * 1.25);color:var(--fg-2)}.toolbar-actions{margin-left:auto;display:flex;align-items:center;gap:var(--s-3)}.toolbar-group{display:flex;align-items:center;gap:var(--s-1)}.toolbar-group+.toolbar-group{border-left:var(--stroke) solid var(--border-subtle);padding-left:var(--s-3)}.btn{height:calc(var(--s-1) * 9.5);padding:0 calc(var(--s-1) * 3.5);display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);border:var(--stroke) solid transparent;border-radius:var(--r-md);background:transparent;font-size:var(--text-sm);font-weight:500;white-space:nowrap;cursor:pointer;transition:background var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out)}.btn svg{width:calc(var(--s-1) * 4.25);height:calc(var(--s-1) * 4.25);flex:none}.btn:hover:not(:disabled){transform:translateY(calc(var(--s-1) * -.25))}.btn:active:not(:disabled){transform:translateY(0) scale(.98)}.btn-primary,.btn-danger{background:var(--fg-1);color:var(--fg-inverse);border-color:var(--line-3);box-shadow:var(--key-shadow);min-width:calc(var(--s-1) * 26)}.btn-primary:hover:not(:disabled),.btn-danger:hover:not(:disabled){background:var(--fg-1);color:var(--surface-2)}.btn-danger svg{animation:running-pulse var(--dur-4) var(--ease-in-out) infinite}.btn-secondary{background:var(--surface-2);border-color:var(--border-medium);color:var(--fg-1);box-shadow:var(--key-shadow)}.btn-secondary:hover:not(:disabled){background:var(--surface-3);border-color:var(--fg-3)}.btn-ghost{color:var(--text-secondary);padding:0 var(--s-2)}.btn-ghost:hover:not(:disabled){background:var(--surface-3);color:var(--fg-1)}.language-picker{width:calc(var(--s-1) * 29.5);height:var(--s-8);background:transparent;border:0;border-radius:var(--r-sm);color:var(--text-secondary);font-size:var(--text-xs);cursor:pointer;padding:0 var(--s-1)}.language-picker option,select option{background:var(--surface-2);color:var(--fg-1)}.export-anchor{position:relative}.menu-chevron{font-size:var(--text-md);margin-left:var(--s-1)}.export-menu{position:absolute;right:0;top:calc(100% + var(--s-2));width:calc(var(--s-1) * 52.5);padding:calc(var(--s-1) * 1.5);background:var(--surface-2);border:var(--stroke) solid var(--border-medium);border-radius:var(--r-lg);box-shadow:var(--key-shadow);animation:panel-arrive var(--dur-2) var(--ease-out)}.export-menu:before{content:"";position:absolute;height:var(--s-3);bottom:100%;width:100%;left:0}.export-menu button{display:flex;gap:var(--s-3);align-items:center;width:100%;padding:var(--s-3) var(--s-2);border:0;border-radius:var(--r-sm);background:transparent;text-align:left;cursor:pointer;font-size:var(--text-sm)}.export-menu button span{font:calc(var(--s-1) * 2.5) var(--font-mono);color:var(--fg-2);border:var(--stroke) solid var(--border-medium);border-radius:var(--s-1);padding:var(--s-1)}.export-menu button small{margin-left:auto;color:var(--text-secondary);font-size:var(--text-xs);white-space:nowrap}.export-menu button:hover:not(:disabled){background:var(--surface-4)}.workspace-body{--library-width: calc(var(--s-1) * 68);--inspector-width: calc(var(--s-1) * 76);display:grid;grid-template-columns:var(--library-width) minmax(0,1fr) var(--inspector-width);min-height:0;position:relative}.app-shell[data-library=closed] .workspace-body{--library-width: 0}.app-shell[data-inspector=closed] .workspace-body{--inspector-width: 0}.library-panel{grid-column:1;display:flex;flex-direction:column;min-height:0;border-right:var(--stroke) solid var(--border-subtle);background:var(--surface-1);padding:var(--s-6) var(--s-4) var(--s-4);overflow:hidden;animation:panel-arrive var(--dur-3) var(--ease-out)}.inspector-panel{grid-column:3;min-height:0;border-left:var(--stroke) solid var(--border-subtle);background:var(--surface-1);padding:var(--s-6) var(--s-5);overflow-y:auto;animation:panel-arrive var(--dur-3) var(--ease-out)}.dock-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--s-6);padding:0 var(--s-1)}.dock-heading svg{width:var(--s-4);height:var(--s-4);color:var(--fg-3)}.eyebrow{font:calc(var(--s-1) * 2.5)/1.4 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.inspector-title{margin-bottom:var(--s-6);padding:0 var(--s-1)}.inspector-title h2{font-size:var(--text-xl);font-weight:500;letter-spacing:.01em;margin-bottom:var(--s-2)}.inspector-title p{font-size:var(--text-xs);color:var(--text-secondary);line-height:1.7;max-width:calc(var(--s-1) * 55)}.main-stage{grid-column:2;display:flex;flex-direction:column;min-width:0;min-height:0;padding:0 var(--s-6)}.stage-heading{flex:none;height:calc(var(--s-1) * 26);display:flex;align-items:center;justify-content:space-between;gap:var(--s-3)}.stage-title{display:grid;gap:calc(var(--s-1) * 1.5)}.stage-title h2{font-size:var(--text-2xl);font-weight:400;letter-spacing:.01em;line-height:1.2}.stage-tools{display:flex;gap:calc(var(--s-1) * 1.5);align-items:center}.workspace-status{display:inline-flex;align-items:center;gap:calc(var(--s-1) * 1.75);border:var(--stroke) solid var(--border-subtle);border-radius:var(--r-full);padding:calc(var(--s-1) * 1.5) calc(var(--s-1) * 2.25);color:var(--text-secondary);font:calc(var(--s-1) * 2.5) var(--font-mono);margin-right:var(--s-2);white-space:nowrap}.workspace-status i{width:calc(var(--s-1) * 1.25);height:calc(var(--s-1) * 1.25);border-radius:50%;background:var(--fg-2)}.workspace-status.running i{background:var(--fg-1);animation:running-pulse var(--dur-4) infinite}.dock-toggle{width:var(--s-8);height:var(--s-8);display:grid;place-items:center;border-radius:var(--r-md);border:var(--stroke) solid transparent;color:var(--text-muted);background:transparent;cursor:pointer;transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.dock-toggle svg{width:var(--s-4);height:var(--s-4)}.dock-toggle[aria-pressed=true]{background:var(--surface-2);color:var(--fg-1);border-color:var(--border-subtle)}.dock-toggle:hover{background:var(--surface-3);color:var(--fg-1)}.parts-section{min-height:0;display:flex;flex-direction:column;flex:1}.panel-header-row{display:flex;justify-content:space-between;align-items:center;gap:var(--s-2);margin-bottom:var(--s-4)}.panel-heading{font-size:var(--text-base);font-weight:500;color:var(--fg-1)}.parts-total-badge{font:calc(var(--s-1) * 2.5) var(--font-mono);padding:var(--s-1) calc(var(--s-1) * 1.5);background:var(--surface-3);color:var(--fg-2);border-radius:calc(var(--s-1) * 1.25);white-space:nowrap}.parts-list{display:flex;flex-direction:column;gap:var(--s-2);overflow-y:auto;padding:var(--stroke);min-height:0}.part-card{display:grid;grid-template-columns:calc(var(--s-1) * 11) minmax(0,1fr);align-items:center;gap:var(--s-3);padding:var(--s-3);border:var(--stroke) solid var(--border-subtle);background:var(--surface-1);border-radius:var(--r-lg);box-shadow:var(--key-shadow);transition:background var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out);animation:panel-arrive var(--dur-3) var(--ease-out)}.part-card:hover{background:var(--surface-2);border-color:var(--border-medium)}.part-card[data-severity]{border-color:var(--part-issue-color)}.part-card[data-severity=warning]{--part-issue-color: var(--issue-warning)}.part-card[data-severity=error]{--part-issue-color: var(--issue-error)}.part-thumb{width:calc(var(--s-1) * 11);height:calc(var(--s-1) * 11);padding:var(--s-1);background:var(--surface-1);border:var(--stroke) solid var(--border-subtle);border-radius:var(--r-md)}.part-card[data-severity] .part-thumb{border-color:var(--part-issue-color)}.part-info{min-width:0;display:flex;flex-direction:column;gap:calc(var(--s-1) * 1.25)}.part-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s-1);min-width:0}.part-name{font-size:var(--text-sm);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.part-meta{color:var(--text-muted);font:calc(var(--s-1) * 2.25)/1.5 var(--font-mono);overflow-wrap:anywhere}.hole-badge{font:calc(var(--s-1) * 2.25) var(--font-mono);padding:calc(var(--s-1) * .75) var(--s-1);background:var(--surface-3);color:var(--fg-2);border-radius:var(--s-1)}.part-actions-col{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;padding-top:var(--s-2);border-top:var(--stroke) solid var(--border-subtle)}.qty-pill{display:flex;align-items:center;gap:var(--s-2);color:var(--text-secondary);font-size:var(--text-xs)}.qty-pill .number-field-control{height:calc(var(--s-1) * 7);width:calc(var(--s-1) * 19.5)}.qty-pill .number-field-control input{font-size:var(--text-xs)}.btn-icon-delete{width:calc(var(--s-1) * 6.5);height:calc(var(--s-1) * 6.5);background:transparent;border:0;border-radius:var(--r-sm);color:var(--text-muted);font-size:var(--text-xl);cursor:pointer}.btn-icon-delete:hover:not(:disabled){color:var(--issue-error);background:var(--accent-soft)}.part-issue-note,.part-warning-hint{font-size:var(--text-xs);color:var(--part-issue-color,var(--issue-warning))}.import-diagnostics{margin-top:var(--s-3);display:grid;gap:var(--s-2);overflow-y:auto;max-height:35%;flex-shrink:0}.empty-parts{flex:1;min-height:calc(var(--s-1) * 47.5);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;padding:calc(var(--s-1) * 14) var(--s-3) var(--s-6)}.empty-parts>svg{width:var(--s-8);height:var(--s-8);color:var(--fg-inverse);margin-bottom:var(--s-5)}.empty-parts strong{font-size:var(--text-sm);font-weight:500;color:var(--fg-2)}.empty-parts p{font-size:var(--text-xs);line-height:1.8;color:var(--text-muted);margin-top:var(--s-2)}.file-types{display:flex;gap:calc(var(--s-1) * 1.5);margin-top:var(--s-5)}.file-types span{font:calc(var(--s-1) * 2.5) var(--font-mono);padding:calc(var(--s-1) * 1.25) calc(var(--s-1) * 1.75);border:var(--stroke) solid var(--border-subtle);color:var(--text-muted);border-radius:calc(var(--s-1) * 1.25)}.library-import{margin-top:var(--s-4);display:flex;align-items:center;justify-content:center;gap:var(--s-2);padding:var(--s-3) var(--s-2);background:var(--surface-2);border:var(--stroke) solid var(--border-medium);border-radius:var(--r-md);box-shadow:var(--key-shadow);font-size:var(--text-xs);cursor:pointer;transition:background var(--dur-2) var(--ease-out);flex:none}.library-import svg{width:calc(var(--s-1) * 3.75);height:calc(var(--s-1) * 3.75)}.library-import span{font:calc(var(--s-1) * 2.25) var(--font-mono);color:var(--text-muted)}.library-import:hover:not(:disabled){background:var(--surface-3)}.library-footnote{padding-top:var(--s-4);display:flex;justify-content:center;gap:calc(var(--s-1) * 1.5);align-items:center;color:var(--text-muted);font-size:var(--text-xs);flex:none}.local-dot{width:var(--s-1);height:var(--s-1);border-radius:50%;background:var(--fg-3);flex:none}.settings-section{display:grid;gap:var(--s-4)}.settings-group{padding:var(--s-4);border:var(--stroke) solid var(--border-subtle);border-radius:var(--r-xl);background:var(--surface-1);box-shadow:var(--key-shadow)}.settings-group .panel-heading{font-size:var(--text-sm)}.unit-picker{display:flex;align-items:center;gap:calc(var(--s-1) * 1.5);font-size:var(--text-xs);color:var(--text-muted)}.unit-picker select{font:calc(var(--s-1) * 2.5) var(--font-mono);padding:var(--s-1);color:var(--fg-1);background:var(--surface-3);border:var(--stroke) solid var(--border-subtle);border-radius:calc(var(--s-1) * 1.25)}.material-preview{display:flex;flex-direction:column;align-items:center;padding:var(--s-1) 0 var(--s-4)}.material-preview span{font:calc(var(--s-1) * 2.5) var(--font-mono);color:var(--text-muted)}.material-preview svg{width:100%;max-height:calc(var(--s-1) * 16);margin-top:var(--s-2)}.material-preview svg rect:first-child{stroke:var(--fg-3);fill:var(--surface-2)}.material-preview svg rect:nth-child(2){stroke:var(--fg-inverse)}.material-preview svg path{stroke:var(--line-3)}.form-field{display:flex;flex-direction:column;min-width:0;gap:var(--s-2)}.field-label{font-size:var(--text-xs);color:var(--text-secondary);line-height:1.5}.sheet-dimensions{display:grid;grid-template-columns:minmax(0,1fr) var(--s-6) minmax(0,1fr);grid-template-areas:"width swap height";gap:calc(var(--s-1) * 1.5);align-items:end;margin-bottom:var(--s-4)}.field-sheetWidth{grid-area:width}.field-sheetHeight{grid-area:height}.swap-dimensions{grid-area:swap;width:var(--s-6);height:calc(var(--s-1) * 9);padding:0;border:0;box-shadow:none;background:transparent;color:var(--text-muted)}.swap-dimensions svg{width:calc(var(--s-1) * 3.5)}.form-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:var(--s-2)}.cutting-fields .field-label,.quality-fields .field-label{min-height:calc(var(--s-1) * 7.5);display:flex;align-items:end;font-size:var(--text-xs)}.cutting-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.cutting-fields .form-field:last-child{grid-column:1 / -1;display:grid;grid-template-columns:1fr calc(var(--s-1) * 20);align-items:center;margin-top:var(--s-1)}.cutting-fields .form-field:last-child .field-label{min-height:0;font-size:var(--text-xs)}.quality-fields{grid-template-columns:1fr;gap:var(--s-3)}.quality-fields .form-field{display:grid;grid-template-columns:minmax(0,1fr) calc(var(--s-1) * 20);align-items:center}.quality-fields .field-label{min-height:0;font-size:var(--text-xs)}.form-field select{width:100%;min-width:0;height:calc(var(--s-1) * 9);padding:0 calc(var(--s-1) * 1.5);background:var(--surface-3);border:var(--stroke) solid var(--border-medium);border-radius:var(--r-md);color:var(--fg-1);font:calc(var(--s-1) * 2.75) var(--font-mono)}.number-field-control{display:flex;height:calc(var(--s-1) * 9);min-width:0;border:var(--stroke) solid var(--border-medium);border-radius:var(--r-md);overflow:hidden;background:var(--surface-3);transition:border-color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}.number-field-control:focus-within{border-color:var(--fg-2);box-shadow:0 0 0 var(--focus-width) var(--line-1)}.number-field-control input[type=number]{width:100%;min-width:0;padding:0 var(--s-2);border:0;outline:0;background:transparent;color:var(--fg-1);font:var(--s-3) var(--font-mono);appearance:textfield;-moz-appearance:textfield}.number-field-control input::-webkit-inner-spin-button,.number-field-control input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.number-steppers{display:grid;grid-template-rows:1fr 1fr;width:calc(var(--s-1) * 4.5);flex:0 0 calc(var(--s-1) * 4.5);border-left:var(--stroke) solid var(--border-subtle)}.number-steppers button{background:transparent;border:0;color:var(--fg-3);display:grid;place-items:center;cursor:pointer}.number-steppers button+button{border-top:var(--stroke) solid var(--border-subtle)}.number-steppers button:hover:not(:disabled){background:var(--surface-4);color:var(--fg-1)}.number-steppers svg{width:var(--s-2);height:calc(var(--s-1) * 1.5);fill:none;stroke:currentColor;stroke-width:1.5}.gravity-field{margin-top:var(--s-5);display:grid;gap:var(--s-2)}.gravity-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-1);padding:var(--s-1);background:var(--surface-0);border:var(--stroke) solid var(--border-subtle);border-radius:calc(var(--s-1) * 2.5)}.choice-button{display:flex;align-items:center;justify-content:center;gap:calc(var(--s-1) * 1.5);min-height:calc(var(--s-1) * 8.5);background:transparent;border:var(--stroke) solid transparent;border-radius:calc(var(--s-1) * 1.75);color:var(--text-muted);font-size:var(--text-xs);cursor:pointer;transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out)}.choice-button svg{width:var(--s-4);height:var(--s-4);flex:none}.choice-button.selected{color:var(--fg-1);background:var(--surface-4);border-color:var(--line-3);box-shadow:var(--key-shadow)}.choice-button:hover:not(:disabled){color:var(--fg-1)}.permission-options{display:grid;gap:var(--s-1)}.permission-button,.permission-button.selected{min-height:calc(var(--s-1) * 9.5);justify-content:space-between;padding:var(--s-1) 0;border:0;box-shadow:none;background:transparent;font-size:var(--text-xs);text-align:left}.permission-label{max-width:calc(var(--s-1) * 42.5)}.permission-switch{display:flex;align-items:center;padding:calc(var(--s-1) * .75);width:calc(var(--s-1) * 7);height:var(--s-4);background:var(--surface-4);border-radius:var(--r-full);flex:none;transition:background var(--dur-2) var(--ease-out)}.permission-switch i{width:calc(var(--s-1) * 2.5);height:calc(var(--s-1) * 2.5);border-radius:50%;background:var(--fg-2);transition:transform var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out)}.permission-button.selected .permission-switch{background:var(--fg-1)}.permission-button.selected .permission-switch i{background:var(--fg-inverse);transform:translate(var(--s-3))}.cutting-surface{display:flex;flex-direction:column;flex:1;min-height:0;border:var(--stroke) solid var(--border-medium);border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--key-shadow);background:var(--surface-1)}.surface-meta{display:flex;align-items:center;justify-content:space-between;gap:var(--s-2);height:var(--s-10);padding:0 var(--s-4);flex:none;border-bottom:var(--stroke) solid var(--border-subtle);background:var(--surface-1);color:var(--text-muted);font:calc(var(--s-1) * 2.25) var(--font-mono)}.surface-meta span:first-child{display:flex;align-items:center;gap:var(--s-2);color:var(--text-secondary)}.surface-meta svg{width:calc(var(--s-1) * 3.5);height:calc(var(--s-1) * 3.5)}.optimization-track{height:var(--focus-width);background:var(--surface-4);flex:none;overflow:hidden}.optimization-track span{display:block;height:100%;min-width:var(--focus-width);background:var(--fg-1);transition:width var(--dur-3) var(--ease-out)}.viewer-wrapper{position:relative;flex:1;min-height:0;display:flex;flex-direction:column-reverse}.canvas-stage{position:relative;flex:1;min-height:0;overflow:hidden;background-color:var(--surface-1);background-image:radial-gradient(var(--line-1) calc(var(--s-1) * .15),transparent calc(var(--s-1) * .15));background-size:var(--s-5) var(--s-5);cursor:grab;container-type:size;container-name:stage}.canvas-stage:active{cursor:grabbing}.canvas-stage canvas{position:absolute;inset:0;z-index:1}.is-empty .canvas-stage canvas{opacity:0;pointer-events:none}.sheet-tabs-bar{height:calc(var(--s-1) * 11.5);flex:none;padding:0 var(--s-3);display:flex;align-items:center;gap:var(--s-3);border-top:var(--stroke) solid var(--border-subtle);background:var(--surface-1);z-index:5}.sheet-tabs-list{display:flex;gap:var(--s-1);min-width:0;overflow-x:auto;align-items:center}.sheet-tab{height:calc(var(--s-1) * 7.5);display:inline-flex;align-items:center;gap:var(--s-2);padding:0 calc(var(--s-1) * 2.5);border:var(--stroke) solid transparent;border-radius:var(--r-sm);color:var(--text-muted);background:transparent;font-size:var(--text-xs);white-space:nowrap;cursor:pointer;transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.sheet-tab.active{background:var(--surface-3);color:var(--fg-1);border-color:var(--border-medium);box-shadow:var(--key-shadow)}.sheet-tab:hover{color:var(--fg-1)}.sheet-tab-eff,.sheet-tab-count{color:var(--fg-2);font:calc(var(--s-1) * 2.25) var(--font-mono)}.viewport-controls{position:absolute;bottom:calc(var(--s-1) * 15.5);left:50%;transform:translate(-50%);display:flex;align-items:center;gap:var(--focus-width);background:var(--surface-2);backdrop-filter:blur(var(--s-4));border:var(--stroke) solid var(--fg-inverse);border-radius:calc(var(--s-1) * 2.5);padding:var(--s-1);box-shadow:var(--key-shadow)}.btn-vp{min-width:calc(var(--s-1) * 7);height:calc(var(--s-1) * 7);padding:0 var(--s-2);color:var(--fg-1);border:0;border-radius:var(--r-sm);background:transparent;cursor:pointer;font-size:var(--text-xs)}.btn-vp:hover{background:var(--surface-4)}.btn-vp:last-child{border-left:var(--stroke) solid var(--line-3);margin-left:var(--s-1);border-radius:0 calc(var(--s-1) * 1.5) calc(var(--s-1) * 1.5) 0}.vp-zoom-readout{min-width:calc(var(--s-1) * 11);text-align:center;color:var(--fg-2);font:calc(var(--s-1) * 2.5) var(--font-mono)}.is-empty .viewport-controls{position:static;transform:none;margin-left:auto;border:0;padding:0;background:transparent;flex-shrink:0}.canvas-welcome{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;cursor:default;padding:var(--s-6);background:radial-gradient(ellipse at 50% 40%,var(--accent-soft),transparent 65%),var(--surface-1);overflow-y:auto}.welcome-composition{position:relative;width:calc(var(--s-1) * 75);height:calc(var(--s-1) * 51.25);margin-bottom:var(--s-6);flex:none}.drawing-card{position:absolute;border:var(--stroke) solid var(--fg-inverse);background:var(--surface-2);border-radius:calc(var(--s-1) * 3.5);box-shadow:var(--key-shadow)}.drawing-card-front{width:calc(var(--s-1) * 51.5);height:calc(var(--s-1) * 44);top:calc(var(--s-1) * 4.25);left:calc(var(--s-1) * 18);transform:rotate(6deg);transition:transform var(--dur-4) var(--ease-out)}.welcome-composition:hover .drawing-card-front{transform:translate(var(--s-1),calc(var(--s-1) * -1.5)) rotate(3deg)}.drawing-card-back{width:calc(var(--s-1) * 41.5);height:calc(var(--s-1) * 37);top:calc(var(--s-1) * 7);left:calc(var(--s-1) * 2.25);transform:rotate(-13deg);border-color:var(--accent-soft);background:var(--accent-soft)}.drawing-card-back>span{display:block;text-align:left;margin:calc(var(--s-1) * 3.5);font:calc(var(--s-1) * 2.25) var(--font-mono);color:var(--fg-2)}.drawing-card-back svg{width:calc(var(--s-1) * 32.5);height:calc(var(--s-1) * 21.5);fill:var(--accent-soft);stroke:var(--accent-ring);stroke-width:1}.drawing-topline,.drawing-bottomline{display:flex;align-items:center;font:var(--s-2) var(--font-mono);color:var(--fg-3);padding:var(--s-3) calc(var(--s-1) * 3.5) 0;gap:calc(var(--s-1) * 1.5)}.drawing-topline>span:last-child,.drawing-bottomline>span:last-child{margin-left:auto}.drawing-dot{width:var(--s-1);height:var(--s-1);background:var(--fg-2);border-radius:50%}.drawing-card-front svg{width:calc(var(--s-1) * 45.5);height:calc(var(--s-1) * 29.5);margin-top:var(--s-1);fill:none;stroke:var(--fg-2);stroke-width:1}.drawing-pieces{fill:var(--surface-4);stroke:var(--fg-2)}.drawing-guides{stroke:var(--line-3);stroke-dasharray:2 4}.drawing-dimension{stroke:var(--fg-3)}.drawing-bottomline{padding-top:0;font-size:var(--text-xs);letter-spacing:.1em}.drawing-cross{position:absolute;color:var(--fg-inverse);font:calc(var(--s-1) * 4.5) var(--font-mono)}.cross-one{top:var(--s-2);right:calc(var(--s-1) * 1.5)}.cross-two{bottom:0;left:calc(var(--s-1) * 7.5)}.welcome-eyebrow{margin-bottom:var(--s-3)}.canvas-welcome h3{max-width:calc(var(--s-1) * 105);font-size:clamp(calc(var(--s-1) * 6.5),2.3vw,calc(var(--s-1) * 9));font-weight:400;line-height:1.2;letter-spacing:.004em}.canvas-welcome>p{max-width:calc(var(--s-1) * 85);margin-top:var(--s-4);color:var(--text-secondary);font-size:var(--text-sm);line-height:1.8}.welcome-import{margin-top:var(--s-6);height:calc(var(--s-1) * 11);padding:0 var(--s-4);background:var(--fg-1);color:var(--fg-inverse);border-color:var(--line-3);box-shadow:var(--key-shadow)}.welcome-import:hover:not(:disabled){background:var(--fg-1)}.welcome-import svg:last-child{margin-left:var(--s-3)}.welcome-drop{margin-top:var(--s-3);font-size:var(--text-xs);color:var(--text-muted)}.welcome-steps{margin-top:var(--s-8);display:flex;gap:var(--s-3);align-items:center;font-size:var(--text-xs);color:var(--text-muted)}.welcome-steps span{display:flex;align-items:center;gap:calc(var(--s-1) * 1.5)}.welcome-steps b{font:calc(var(--s-1) * 2.25) var(--font-mono);color:var(--fg-2)}.welcome-steps i{width:var(--s-5);height:var(--stroke);background:var(--line-3)}.canvas-welcome>*{flex-shrink:0}.canvas-welcome{justify-content:safe center}@container stage (max-height: 600px){.welcome-composition{zoom:.7;margin-bottom:var(--s-3)}.welcome-eyebrow,.welcome-steps{display:none}.canvas-welcome h3{font-size:var(--text-2xl)}}@container stage (max-height: 480px){.welcome-steps,.welcome-composition{display:none}.canvas-welcome h3{font-size:var(--text-2xl)}}@container stage (max-height: 320px){.canvas-welcome>p,.welcome-drop{display:none}.canvas-welcome h3{font-size:var(--text-xl)}.welcome-import{margin-top:var(--s-4)}}.stats-bar{display:grid;grid-template-columns:1.2fr .65fr 1fr 1.1fr 1.35fr .7fr;flex:none;min-height:calc(var(--s-1) * 24);padding:var(--s-5) 0;gap:0}.stat-item{min-width:0;display:flex;flex-direction:column;justify-content:flex-start;gap:var(--s-2);padding:0 var(--s-3);border-right:var(--stroke) solid var(--border-subtle)}.stat-item:first-child{padding-left:0}.stat-item:last-child{padding-right:0;border:0}.stat-label{color:var(--text-muted);font-size:var(--text-xs);line-height:1.5}.stat-value{font:calc(var(--s-1) * 3.75)/1.4 var(--font-mono);color:var(--fg-1);overflow-wrap:anywhere}.stat-item:first-child .stat-value{font-size:var(--text-xl);line-height:1}.stat-item:nth-child(5) .stat-value{font-size:var(--text-xs);color:var(--text-secondary)}.warnings-panel{max-height:calc(var(--s-1) * 24);flex:none;overflow-y:auto;display:grid;gap:var(--s-1);padding-top:var(--s-2)}.warning-banner{font-size:var(--text-xs);padding:var(--s-2) var(--s-3);border:var(--stroke) solid;border-radius:var(--r-md);line-height:1.6}.warning-banner.warning{color:var(--issue-warning);background:var(--surface-2);border-color:var(--warning)}.warning-banner.error{color:var(--issue-error);background:var(--surface-2);border-color:var(--danger)}.warning-code{font:calc(var(--s-1) * 2.5) var(--font-mono)}.global-tooltip,.canvas-tooltip{pointer-events:none;background:var(--surface-3);color:var(--fg-1);border:var(--stroke) solid var(--fg-inverse);border-radius:calc(var(--s-1) * 2.5);padding:var(--s-3);font-size:var(--text-xs);line-height:1.6;box-shadow:var(--key-shadow);animation:tooltipFadeIn var(--dur-1) var(--ease-out)}.global-tooltip{position:fixed;z-index:9999;max-width:calc(var(--s-1) * 67.5)}.global-tooltip-title,.tt-title{color:var(--fg-1);font-weight:500;margin-bottom:var(--s-1)}.global-tooltip-desc,.tt-row{color:var(--text-secondary)}.canvas-tooltip{position:absolute;z-index:10}.tt-id,.tt-hole-tag{font:calc(var(--s-1) * 2.5) var(--font-mono);color:var(--text-muted)}.drop-overlay{position:fixed;z-index:10000;inset:var(--s-4);display:grid;place-items:center;pointer-events:none;border:var(--stroke) dashed var(--fg-2);border-radius:var(--s-5);background:var(--surface-0);backdrop-filter:blur(var(--s-3));color:var(--fg-1);font-size:var(--text-xl)}.import-error{position:fixed;right:var(--s-6);top:calc(var(--s-1) * 24);max-width:min(calc(var(--s-1) * 100),90vw);padding:var(--s-4);z-index:10001;background:var(--surface-2);border:var(--stroke) solid var(--danger);border-radius:var(--r-lg);color:var(--issue-error);cursor:pointer;font-size:var(--text-sm)}@keyframes tooltipFadeIn{0%{opacity:0}to{opacity:1}}@keyframes panel-arrive{0%{opacity:0;transform:translateY(calc(var(--s-1) * 1.5))}to{opacity:1;transform:translateY(0)}}@keyframes running-pulse{50%{opacity:.35}}@media (min-width: 1700px){.workspace-body{--library-width: calc(var(--s-1) * 75);--inspector-width: calc(var(--s-1) * 84)}.main-stage{padding:0 var(--s-8)}.stage-heading{height:calc(var(--s-1) * 30)}.canvas-welcome h3{font-size:var(--text-2xl)}.welcome-composition{margin-bottom:var(--s-8)}.stats-bar{min-height:calc(var(--s-1) * 28)}}@media (max-width: 1250px){.toolbar{gap:var(--s-4);padding:0 var(--s-5)}.toolbar-context{display:none}.workspace-body{--library-width: calc(var(--s-1) * 59);--inspector-width: calc(var(--s-1) * 70)}.main-stage{padding:0 var(--s-4)}.inspector-panel{padding:var(--s-6) var(--s-3)}.stage-title h2{font-size:var(--text-xl)}.workspace-status{display:none}.library-panel{padding-right:var(--s-3);padding-left:var(--s-3)}.welcome-composition{width:calc(var(--s-1) * 70);height:calc(var(--s-1) * 43.75);margin-bottom:var(--s-4)}.drawing-card-front{top:0}.drawing-card-back{top:var(--s-2)}.welcome-steps{margin-top:var(--s-6);gap:var(--s-2)}.welcome-steps i{width:var(--s-2)}.stats-bar{grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(var(--s-1) * 3.5) 0;padding:var(--s-4) 0}.stat-item{padding:0 var(--s-3)}.stat-item:nth-child(4){padding-left:0}.stat-item:nth-child(3){border-right:0}.stat-label{font-size:var(--text-xs)}.stat-value{font-size:var(--text-sm)}.stat-item:first-child .stat-value{font-size:var(--text-lg)}}@media (max-width: 1000px){.workspace-body{--library-width: calc(var(--s-1) * 52.5);--inspector-width: calc(var(--s-1) * 64)}.inspector-panel{padding:var(--s-5) var(--s-2)}.settings-group{padding:var(--s-3)}.toolbar{gap:var(--s-3)}.toolbar-actions{gap:calc(var(--s-1) * 1.5)}.toolbar-group+.toolbar-group{padding-left:calc(var(--s-1) * 1.5)}.btn{padding:0 calc(var(--s-1) * 2.5);font-size:var(--text-xs)}.language-picker{width:calc(var(--s-1) * 20.5)}.brand-subtitle{display:none}.brand-title{font-size:var(--text-lg)}.welcome-composition{display:none}.canvas-welcome h3{font-size:var(--text-2xl)}.canvas-welcome{padding:var(--s-5)}.welcome-steps{display:none}.stage-heading{height:calc(var(--s-1) * 22)}.stage-title h2{font-size:var(--text-xl)}.stage-tools{gap:var(--focus-width)}.dock-toggle{width:calc(var(--s-1) * 7)}.library-import{font-size:var(--text-xs)}.library-import span{display:none}.library-footnote{font-size:var(--text-xs)}}@media (max-height: 850px) and (min-width: 1001px){.welcome-composition{height:calc(var(--s-1) * 38.75);width:calc(var(--s-1) * 65);margin-bottom:var(--s-4)}.drawing-card-front{width:calc(var(--s-1) * 44);height:calc(var(--s-1) * 37.5);left:calc(var(--s-1) * 16.25);top:0}.drawing-card-front svg{width:calc(var(--s-1) * 38.5);height:calc(var(--s-1) * 23.5)}.drawing-card-back{width:calc(var(--s-1) * 36);height:calc(var(--s-1) * 32.5);top:calc(var(--s-1) * 2.5)}.drawing-card-back svg{width:calc(var(--s-1) * 27.5);height:calc(var(--s-1) * 17.5)}.canvas-welcome h3{font-size:var(--text-2xl)}.welcome-steps{margin-top:var(--s-5)}.canvas-welcome>p{margin-top:var(--s-3)}.welcome-import{margin-top:var(--s-5)}.stage-heading{height:calc(var(--s-1) * 22)}}@media (max-height: 680px){.welcome-composition,.welcome-steps{display:none}.canvas-welcome{padding:var(--s-4)}.canvas-welcome h3{font-size:var(--text-2xl)}.canvas-welcome>p{margin-top:var(--s-2)}.welcome-import{margin-top:var(--s-4)}.stage-heading{height:calc(var(--s-1) * 19)}.app-shell{grid-template-rows:calc(var(--s-1) * 16) calc(var(--s-1) * 9) minmax(0,1fr)}.stats-bar{min-height:calc(var(--s-1) * 20)}}@media (max-width: 800px){.app-shell{grid-template-rows:calc(var(--s-1) * 28) calc(var(--s-1) * 9) minmax(0,1fr)}.toolbar{flex-wrap:wrap;align-content:center;gap:calc(var(--s-1) * 2.5);padding:var(--s-3) var(--s-4)}.toolbar-brand{width:100%}.brand-sigil{width:calc(var(--s-1) * 7);height:calc(var(--s-1) * 7);border-radius:var(--r-md)}.brand-sigil svg{width:var(--s-5)}.brand-title{font-size:var(--text-lg)}.toolbar-actions{margin-left:0;width:100%;gap:var(--s-1)}.btn{height:calc(var(--s-1) * 7.5);padding:0 var(--s-2);font-size:var(--text-xs);gap:var(--s-1)}.btn-primary,.btn-danger{min-width:calc(var(--s-1) * 16.5)}.btn svg{width:calc(var(--s-1) * 3.5);height:calc(var(--s-1) * 3.5)}.language-picker{margin-left:auto;width:calc(var(--s-1) * 15);font-size:var(--text-xs)}.workspace-body{display:flex}.main-stage{width:100%}.library-panel,.inspector-panel{position:absolute;top:calc(var(--s-1) * 19);bottom:var(--s-3);width:min(calc(var(--s-1) * 70),75vw);z-index:20;border:var(--stroke) solid var(--border-medium);border-radius:var(--r-lg)}.library-panel{left:var(--s-2)}.inspector-panel{right:var(--s-2)}.stage-heading{height:calc(var(--s-1) * 19)}.surface-meta{font-size:var(--text-xs);padding:0 calc(var(--s-1) * 2.5)}.sheet-tabs-bar{gap:var(--s-1);padding:0 calc(var(--s-1) * 1.5)}.is-empty .viewport-controls{gap:0}.vp-zoom-readout{min-width:calc(var(--s-1) * 9)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media (max-width: 800px){.app-shell{grid-template-rows:calc(var(--s-10) * 2 + var(--s-8)) auto minmax(0,1fr)}.toolbar,.toolbar-actions{min-width:0}.toolbar-overflow{margin-left:auto}.toolbar .toolbar-more-trigger{display:inline-flex;min-width:var(--s-10);min-height:var(--s-10)}.toolbar-overflow-content{display:none}.toolbar-overflow.is-open .toolbar-overflow-content{display:flex;flex-direction:column;align-items:stretch;position:fixed;top:calc(var(--s-10) * 3);right:var(--s-4);width:min(calc(var(--s-10) * 8),calc(100vw - var(--s-8)));max-height:calc(100dvh - var(--s-10) * 4);overflow-y:auto;padding:var(--s-3);background:var(--surface-2);border:var(--stroke) solid var(--line-3);border-radius:var(--r-lg);box-shadow:var(--shadow-pop)}.toolbar-overflow-content .export-anchor{display:block}.toolbar-overflow-content .btn,.toolbar-overflow-content .language-picker{width:100%;min-height:var(--s-10)}.toolbar-overflow-content .export-menu{position:static;width:100%;margin-top:var(--s-2)}.toolbar-overflow-content .export-menu:before{display:none}.toolbar-overflow-content .language-picker{margin-left:0;font-size:var(--text-sm)}.toolbar-actions>.toolbar-group .btn{min-height:var(--s-10)}.workspace-body{overflow:hidden}.main-stage{overflow-y:auto}.cutting-surface{flex:none;min-height:calc(var(--canvas-min-height) + var(--s-10) * 2 + var(--s-2))}.canvas-stage{min-height:var(--canvas-min-height)}.sheet-tabs-bar{height:auto;min-height:var(--s-10);flex-wrap:wrap;padding:var(--s-2)}.viewport-controls,.is-empty .viewport-controls{position:static;transform:none;margin-left:auto}.btn-vp,.sheet-tab,.dock-toggle{min-height:var(--s-10);min-width:var(--s-10)}.stats-bar{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-4) 0}.stat-item,.stat-item:nth-child(4){padding:0 var(--s-3);border-right:var(--stroke) solid var(--line-2)}.stat-item:nth-child(odd){padding-left:0}.stat-item:nth-child(2n){border-right:0}.stat-label{font-size:var(--text-xs)}.commercial-bar{gap:var(--s-2);padding:var(--s-2) var(--s-4)}.commercial-bar>span{position:absolute;width:var(--stroke);height:var(--stroke);overflow:hidden;clip-path:inset(50%)}.commercial-bar button{max-width:55%;min-height:var(--s-10)}.commercial-bar button:last-child{margin-left:auto;max-width:45%}}.number-field-control:has(input:focus-visible){outline:var(--focus-width) solid var(--accent-ring);outline-offset:var(--focus-width)}.motion-v7 button{transition:background var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out),box-shadow var(--dur-1) var(--ease-out),transform var(--dur-1) var(--ease-out)}.motion-v7 button:not(:disabled):active{transform:scale(.97)}.motion-v7 .btn-primary:hover:not(:disabled){box-shadow:var(--inner-highlight),0 0 0 var(--s-1) var(--accent-soft)}.motion-v7 .btn:not(.btn-primary):not(.btn-danger):hover:not(:disabled){background:var(--surface-3)}.motion-v7 .workspace-body{transition:grid-template-columns var(--dur-3) var(--ease-out)}.motion-v7 .workspace-status.running i,.motion-v7 .btn-danger svg{animation:none}.motion-v7 .action-progress-ring{width:var(--s-5);height:var(--s-5);flex:none;overflow:visible}.action-progress-ring circle{fill:none;stroke-width:var(--focus-width)}.action-progress-ring .ring-track{stroke:var(--line-3)}.action-progress-ring .ring-value{stroke:currentColor;stroke-dasharray:100;transform:rotate(-90deg);transform-origin:center;transition:stroke-dashoffset var(--dur-2) var(--ease-out)}.motion-v7 .workflow-stepper [data-state=stepDone] .step-index svg{animation:workflow-check var(--dur-2) var(--ease-out)}.motion-v7 .library-v4 .part-card.part-arrive{animation:part-enter var(--dur-2) var(--ease-out) both;animation-delay:calc(var(--dur-1) / 4 * var(--entry-order))}.motion-v7 .part-exit{height:var(--exit-height);overflow:hidden;flex:none;pointer-events:none;animation:part-exit-collapse var(--dur-2) var(--ease-out) both}.part-exit-row{display:grid;grid-template-columns:var(--s-10) minmax(0,1fr) var(--s-8);gap:var(--s-2);align-items:center;min-height:calc(var(--s-10) + var(--s-4));padding:var(--s-2);background:var(--surface-2);border:var(--stroke) solid var(--line-2);border-radius:var(--r-md);color:var(--fg-2);font:var(--text-xs) var(--font-mono)}.part-exit-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.motion-v7 .qty-pill input,.motion-v7 .quantity-roll{grid-column:2;grid-row:1}.motion-v7 .qty-pill>button:first-child{grid-column:1;grid-row:1}.motion-v7 .qty-pill>button:last-child{grid-column:3;grid-row:1}.motion-v7 .qty-pill input[data-editing=false]{color:transparent;caret-color:transparent}.quantity-roll{align-self:center;text-align:center;color:var(--fg-1);font:var(--text-xs) var(--font-mono);font-variant-numeric:tabular-nums;pointer-events:none}.quantity-roll.is-changing{animation:quantity-up var(--dur-1) var(--ease-out)}.quantity-roll.is-changing[data-direction=down]{animation-name:quantity-down}[data-numeric-scrub=true]{cursor:ew-resize}.numeric-scrubbing{user-select:none}.motion-v7 .welcome-composition{transform:translate(var(--parallax-x,0px),var(--parallax-y,0px));transition:transform var(--dur-3) var(--ease-out)}.motion-v7 .welcome-composition:hover .drawing-card-front{transform:rotate(3deg)}.motion-v7 .sheet-tabs-list{position:relative}.sheet-tab-indicator{position:absolute;left:0;bottom:0;height:var(--focus-width);border-bottom:var(--focus-width) solid var(--accent-ring);pointer-events:none;transition:transform calc(var(--dur-3) / 2) var(--ease-out),width calc(var(--dur-3) / 2) var(--ease-out)}.stage-crossfade{position:absolute;z-index:2;opacity:0;pointer-events:none}.motion-v7 .shell-menu{animation:motion-menu-in var(--dur-1) var(--ease-out)}.motion-overlay{background:color-mix(in srgb,var(--surface-0) 80%,transparent);backdrop-filter:blur(var(--s-2));animation:motion-backdrop-in var(--dur-2) var(--ease-out)}.motion-overlay .motion-dialog{animation:motion-dialog-in var(--dur-2) var(--ease-out)}.motion-overlay.is-closing{animation:motion-backdrop-out var(--dur-1) var(--ease-out) both}.motion-overlay.is-closing .motion-dialog{animation:motion-dialog-out var(--dur-1) var(--ease-out) both}.motion-skeleton{display:grid;gap:var(--s-2);padding:var(--s-3) 0}.skeleton-line{position:relative;display:block;overflow:hidden;height:var(--s-10);border:var(--stroke) solid var(--line-2);border-radius:var(--r-md);background:var(--surface-3)}.skeleton-line:after{position:absolute;inset:0;content:"";background:linear-gradient(90deg,transparent,var(--line-3),transparent);animation:skeleton-pass var(--dur-4) var(--ease-in-out);transform:translate(100%)}.motion-v7 .motion-drop{border:0;animation:motion-drop-in var(--dur-2) var(--ease-out)}.drop-border{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:var(--fg-2);stroke-width:var(--focus-width);stroke-dasharray:8 6;pointer-events:none}.drop-border rect{animation:drop-dash var(--dur-4) var(--ease-out)}@keyframes part-enter{0%{opacity:0;transform:translateY(calc(var(--s-3) / 2))}to{opacity:1;transform:translateY(0)}}@keyframes part-exit-collapse{0%{height:var(--exit-height);opacity:1;margin-bottom:0}to{height:0;opacity:0;margin-bottom:calc(var(--s-2) * -1)}}@keyframes quantity-up{0%{opacity:.4;transform:translateY(var(--s-2))}to{opacity:1;transform:translateY(0)}}@keyframes quantity-down{0%{opacity:.4;transform:translateY(calc(var(--s-2) * -1))}to{opacity:1;transform:translateY(0)}}@keyframes workflow-check{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes motion-menu-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes motion-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes motion-backdrop-out{0%{opacity:1}to{opacity:0}}@keyframes motion-dialog-in{0%{opacity:0;transform:scale(.96) translateY(var(--s-2))}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes motion-dialog-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.96)}}@keyframes skeleton-pass{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes motion-drop-in{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes drop-dash{0%{stroke-dashoffset:28}to{stroke-dashoffset:0}}@media (prefers-reduced-motion: reduce){.motion-v7 .welcome-composition{transform:none}.motion-v7 .welcome-composition:hover .drawing-card-front{transform:rotate(6deg)}.motion-v7 button:hover,.motion-v7 button:active{transform:none!important}.motion-v7 .part-exit,.motion-v7 .stage-crossfade{display:none}.motion-v7 .cutting-surface:not(.is-empty) .canvas-stage canvas{opacity:1!important}.motion-v7 *,.motion-overlay,.motion-overlay *,.skeleton-line:after{animation:none!important;transition:none!important}}
