/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--canvas:#f4f7fa;--surface:#fff;--raised:#f8fafc;--border:#d9e1e8;--border-strong:#b8c7d6;--text:#17212b;--muted:#637282;--blue:#1e63d7;--blue-hover:#184fae;--blue-soft:#edf4ff;--green:#1e9a67;--green-soft:#ecf8f3;--red:#d94b45;--red-soft:#fff2f1;--amber:#f2a33a;--amber-soft:#fff7e8;--focus:#a9c5f6}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--canvas);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px}.settings-load-state{text-align:center;place-content:center;justify-items:center;gap:8px;min-height:100vh;padding:32px;display:grid}.settings-load-state svg{color:var(--blue)}.settings-load-state h1{margin:4px 0 0;font-size:20px}.settings-load-state p{max-width:560px;color:var(--muted);margin:0;line-height:1.55}.settings-load-state code{color:#24496f;background:var(--blue-soft);border-radius:4px;padding:2px 5px}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.45}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{background:var(--canvas);height:100vh;min-height:660px;overflow:hidden}.app-shell.exploded-view-active{background:#fff4f5}.app-shell.exploded-view-active .input-panel,.app-shell.exploded-view-active .settings-panel{opacity:.58;filter:saturate(.72)}.topbar{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:20;background:#fffffff0;grid-template-columns:minmax(220px,auto) minmax(420px,760px) minmax(150px,auto);align-items:center;gap:16px;height:82px;padding:0 20px;display:grid;position:relative}.brand{letter-spacing:-.025em;white-space:nowrap;align-items:center;gap:10px;font-size:22px;font-weight:730;display:flex}.brand-mark{color:#fff;background:linear-gradient(145deg,#2c78eb,#1554bb);border-radius:9px;place-items:center;width:34px;height:34px;display:grid;box-shadow:0 5px 12px #1e63d72e}.header-help-button{min-height:30px;color:var(--blue);background:var(--blue-soft);letter-spacing:0;border:1px solid #cbdcf5;border-radius:7px;align-items:center;gap:5px;padding:0 9px;font-size:10.5px;font-weight:720;text-decoration:none;display:inline-flex}.header-help-button:hover{color:#fff;background:var(--blue);border-color:var(--blue)}.header-project-button{color:#405b76;letter-spacing:0;cursor:pointer;background:#fff;border:1px solid #cbd8e4;border-radius:7px;align-items:center;gap:5px;min-height:30px;padding:0 9px;font-size:10.5px;font-weight:700;display:inline-flex}.header-project-button:hover:not(:disabled){color:var(--blue);background:#f7faff;border-color:#9ebce2}.beta-badge,.count-badge{text-transform:uppercase;letter-spacing:.06em;color:var(--blue);background:var(--blue-soft);border:1px solid #d5e4fb;border-radius:99px;padding:0 8px;font-size:11px;font-weight:700;line-height:20px}.header-mode-picker{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-width:0;display:grid}.header-mode-label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;font-size:9px;font-weight:750}.header-mode-options{border:1px solid var(--border-strong);background:#f4f7fa;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;min-width:0;padding:4px;display:grid}.header-mode-options button{color:#405365;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;min-width:0;min-height:52px;padding:6px 10px;transition:all .12s ease-out;display:flex}.header-mode-options button:hover{color:var(--text);background:#fff}.header-mode-options button.active{color:#fff;background:linear-gradient(#2672e6,#1459c5);box-shadow:0 2px 6px #1e63d738}.header-mode-options strong,.header-mode-options small{text-overflow:ellipsis;white-space:nowrap;width:100%;overflow:hidden}.header-mode-options strong{font-size:11px}.header-mode-options small{color:#718192;font-size:8.5px}.header-mode-options button.active small{color:#dce9ff}.topbar-actions{justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.topbar-button{color:var(--blue);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:7px;align-items:center;gap:7px;padding:8px 10px;font-weight:650;display:flex}.topbar-button:hover{background:var(--blue-soft)}.app-status{color:#344251;justify-content:flex-end;align-items:center;gap:8px;min-width:76px;font-size:13px;display:flex}.app-status>span{background:var(--green);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #1e9a671a}.status-stack{justify-items:end;gap:7px;min-width:132px;display:grid}.gpu-status{color:#566779;min-width:0;font-size:10px}.gpu-status.checking>span{background:var(--amber);box-shadow:0 0 0 4px #f2a33a1f}.gpu-status.available>span{background:var(--green);box-shadow:0 0 0 4px #1e9a671f}.gpu-status.blocked>span{background:var(--amber);box-shadow:0 0 0 4px #f2a33a1f}.gpu-status.unavailable>span{background:var(--red);box-shadow:0 0 0 4px #d94b451f}@media (max-width:1480px){.header-project-button{justify-content:center;width:31px;padding:0}.header-project-button span{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.header-mode-picker{grid-template-columns:minmax(0,1fr);gap:0}.header-mode-label{display:none}}.workbench-grid{grid-template-columns:280px minmax(540px,1fr) 340px;gap:14px;height:calc(100vh - 82px);padding:14px;display:grid}.panel,.viewport-panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;min-width:0;box-shadow:0 1px 3px #17212b0a}.panel{scrollbar-width:thin;scrollbar-color:#c8d2dc transparent;padding:18px;overflow-y:auto}.panel-heading{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.panel-heading h1{letter-spacing:-.015em;margin:1px 0 0;font-size:18px;line-height:24px}.model-inputs-note{max-width:205px;color:var(--muted);margin:3px 0 0;font-size:8.5px;line-height:12px}.panel-heading>svg{color:var(--muted)}.eyebrow{color:var(--blue);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:10px;font-weight:750;line-height:15px}.panel-section+.panel-section{margin-top:16px}.drop-zone{background:var(--raised);border:1px dashed #a9bdd0;border-radius:11px;transition:all .12s ease-out;position:relative;overflow:hidden}.drop-zone:hover,.drop-zone.is-dragging{border-color:var(--blue);background:#f2f7ff;box-shadow:inset 0 0 0 1px #1e63d714}.drop-zone-button{cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:7px;width:100%;min-height:134px;padding:18px 12px 14px;display:flex}.drop-zone-button svg{color:#42566a}.drop-zone-button strong{font-size:14px;font-weight:680}.drop-zone-button span{color:var(--muted);font-size:11.5px}.model-list{border-top:1px dashed #c6d3df;display:grid}.model-row{background:#fff;border-top:1px solid #e5ebf0;flex-wrap:wrap;align-items:center;min-width:0;padding:8px;transition:all .12s ease-out;display:flex}.drop-zone>.model-row{border-top:1px dashed #c6d3df}.model-list .model-row:first-child{border-top:0}.model-row.is-selected{background:var(--blue-soft);box-shadow:inset 3px 0 var(--blue)}.model-row-main{text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:8px;min-width:0;padding:2px;display:flex}.model-copy{flex-direction:column;min-width:0;display:flex}.model-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;font-weight:650;overflow:hidden}.model-copy small{color:var(--muted);font-size:9.5px;line-height:15px}.model-status{color:#fff;border-radius:50%;flex:none;place-items:center;width:18px;height:18px;display:grid}.model-status.valid{background:var(--green)}.model-status.invalid{background:var(--red)}.model-status.neutral{background:#8291a0}.icon-button{cursor:pointer;border:0;border-radius:6px;place-items:center;width:28px;height:28px;display:grid}.icon-button.subtle{color:var(--muted);background:0 0}.icon-button.subtle:hover{color:var(--text);background:#eef2f6}.model-size-editor{background:#f7faff;border:1px solid #bfd2eb;border-radius:8px;flex:0 0 100%;margin-top:8px;padding:10px}.model-size-editor-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.model-size-editor-title>strong{color:#2b4663;font-size:10.5px}.model-size-editor-title label{color:#415d7b;cursor:pointer;align-items:center;gap:5px;font-size:9.5px;display:flex}.model-size-editor-title input{accent-color:var(--blue)}.model-size-editor-grid{gap:7px;margin-top:9px;display:grid}.model-size-editor-grid .number-field{grid-template-columns:66px minmax(0,1fr);align-items:center;gap:7px;font-size:9px;display:grid}.model-size-editor-grid .input-with-unit input{height:34px;padding:0 9px;font-size:10.5px}.model-size-editor-hint{color:#587395;margin:8px 0 0;font-size:9px;line-height:13px}.model-size-editor-actions{justify-content:flex-end;gap:6px;margin-top:9px;display:flex}.model-size-editor-actions button{border:1px solid var(--border-strong);color:#435365;cursor:pointer;background:#fff;border-radius:6px;min-height:30px;padding:0 9px;font-size:9.5px;font-weight:650}.model-size-editor-actions button.save{color:#fff;border-color:var(--blue);background:var(--blue)}.model-appearance-editor{border-top:1px solid #d5e2f1;gap:6px;margin-top:9px;padding-top:9px;display:grid}.model-appearance-label{color:#415d7b;font-size:9px;font-weight:650}.model-color-trigger{color:#40546a;border:1px solid var(--border-strong);cursor:pointer;text-align:left;background:#fff;border-radius:7px;grid-template-columns:22px minmax(0,1fr) auto auto;align-items:center;gap:7px;min-width:0;min-height:34px;padding:4px 7px;display:grid}.model-color-trigger:hover,.model-color-trigger[aria-expanded=true]{box-shadow:0 0 0 2px var(--focus);border-color:#7da8df}.model-color-swatch,.model-color-preview{border:2px solid #fff;border-radius:5px;display:block;box-shadow:0 0 0 1px #aebfce}.model-color-swatch{width:20px;height:20px}.model-color-trigger code{color:#31485f;min-width:0;font:650 9px/1.2 var(--font-mono,monospace);text-overflow:ellipsis;overflow:hidden}.model-color-trigger small{color:var(--muted);font-size:8.5px}.model-color-trigger>span:last-child{color:var(--blue);font-size:9px;font-weight:700}.model-color-picker{background:#fff;border:1px solid #a9c5e8;border-radius:8px;gap:9px;padding:9px;display:grid;box-shadow:0 7px 18px #1c43711c}.model-color-picker-heading{color:#2b4663;justify-content:space-between;align-items:center;gap:8px;font-size:10px;display:flex}.model-color-preview{background-image:linear-gradient(45deg,#dce2e8 25%,#0000 25%),linear-gradient(-45deg,#dce2e8 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#dce2e8 75%),linear-gradient(-45deg,#0000 75%,#dce2e8 75%);background-position:0 0,0 4px,4px -4px,-4px 0;background-size:8px 8px;width:28px;height:20px}.model-color-palette{grid-template-columns:repeat(8,1fr);gap:5px;display:grid}.model-color-palette button{aspect-ratio:1;cursor:pointer;border:2px solid #fff;border-radius:5px;min-width:0;padding:0;box-shadow:0 0 0 1px #b9c7d3}.model-color-palette button:hover,.model-color-palette button.active{box-shadow:0 0 0 2px var(--blue);transform:scale(1.06)}.model-color-fields{grid-template-columns:minmax(0,1fr) 82px;gap:8px;display:grid}.model-color-fields .text-field,.model-color-fields .number-field{gap:4px;font-size:8.5px}.model-color-fields .input-with-unit input,.model-color-fields .text-field input{height:34px;font-size:10px}.model-hex-input{border:1px solid var(--border-strong);background:#fff;border-radius:7px;grid-template-columns:34px minmax(0,1fr);display:grid;overflow:hidden}.model-hex-input:focus-within{border-color:var(--blue);box-shadow:0 0 0 2px var(--focus)}.model-hex-input input[type=color]{border:0;border-right:1px solid var(--border);cursor:pointer;background:#fff;width:34px;height:34px;padding:3px}.model-hex-input input[type=text]{min-width:0;height:34px;font:650 9px/1 var(--font-mono,monospace);border:0;border-radius:0;padding:0 7px}.model-hex-input input:focus{box-shadow:none;outline:none}.model-color-picker-actions{margin-top:0}.info-card{border:1px solid var(--border);color:#33475a;background:#f8fafc;border-radius:9px;align-items:flex-start;gap:10px;margin-top:18px;padding:12px;display:flex}.info-card svg{flex:none;margin-top:1px}.info-card p{flex-direction:column;gap:3px;margin:0;font-size:11px;line-height:16px;display:flex}.info-card p span{color:var(--muted)}.registration-card{color:#66410d;background:var(--amber-soft);border:1px solid #efd19f;border-radius:9px;margin-top:10px;padding:12px}.registration-title{align-items:center;gap:7px;display:flex}.registration-title strong{font-size:11.5px}.registration-card p{color:#85643b;margin:6px 0 10px;font-size:10px;line-height:15px}.coordinate-grid{background:#fff;border:1px solid #ecd5b1;border-radius:6px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.coordinate-grid span{border-left:1px solid #eee0c9;flex-direction:column;gap:1px;padding:6px 7px;display:flex}.coordinate-grid span:first-child{border-left:0}.coordinate-grid small{color:#a17330;font-size:8px}.coordinate-grid strong{color:#5e3a08;font-variant-numeric:tabular-nums;font-size:10.5px}.normal-readout{color:#99713a;font-variant-numeric:tabular-nums;margin-top:7px;font-size:8.5px;display:block}.viewport-panel{background:#f8fafc;position:relative;overflow:hidden}.viewport-panel.exploded-view{background:#fff0f2;border-color:#e3adb6;box-shadow:0 0 0 1px #c4506214,0 8px 28px #822c391a}.viewport-panel canvas{inset:0;position:absolute!important}.viewport-panel.index-mode canvas{cursor:crosshair}.empty-viewport{z-index:5;text-align:center;pointer-events:none;background:radial-gradient(circle,#f8fafcf2 0,#f8fafcc2 36%,#f8fafc00 70%);flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.empty-viewport>*{pointer-events:auto}.empty-icon{width:62px;height:62px;color:var(--blue);background:#fff;border:1px solid #d5e4fb;border-radius:17px;place-items:center;display:grid;box-shadow:0 8px 24px #1e63d71a}.empty-viewport h2{margin:18px 0 6px;font-size:20px}.empty-viewport p{max-width:350px;color:var(--muted);margin:0 0 18px;line-height:21px}.webgl-fallback{z-index:7;color:#7d3f12;background:#fff7e8f5;border:1px solid #f0c984;border-radius:10px;align-items:flex-start;gap:11px;width:min(420px,100% - 90px);padding:16px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 10px 30px #5f3f101f}.webgl-fallback svg{flex:none}.webgl-fallback div{flex-direction:column;gap:3px;display:flex}.webgl-fallback strong{font-size:13px}.webgl-fallback span{color:#8c6748;font-size:11px;line-height:16px}.viewport-tools{z-index:10;border:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;border-radius:9px;flex-direction:column;gap:3px;padding:5px;display:flex;position:absolute;top:14px;left:14px;box-shadow:0 4px 14px #1c2a3817}.viewport-tools button{color:#415365;cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;width:34px;height:34px;transition:all .12s ease-out;display:grid;position:relative}.viewport-tools button:hover:not(:disabled){color:var(--text);background:#edf2f7}.viewport-tools button.active{color:var(--blue);background:var(--blue-soft);box-shadow:inset 0 0 0 1px #c8dcfb}.viewport-tools button.active.amber{color:#a86000;background:var(--amber-soft);box-shadow:inset 0 0 0 1px #f7d69e}.viewport-tool-tooltip{z-index:30;color:#fff;text-align:left;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;background:#263544;border-radius:6px;width:max-content;max-width:230px;padding:7px 9px;font-size:10.5px;font-weight:620;line-height:15px;transition:opacity .11s ease-out,transform .11s ease-out,visibility .11s;position:absolute;top:50%;left:calc(100% + 11px);transform:translate(-3px,-50%);box-shadow:0 5px 16px #141f2a2e}.viewport-tool-tooltip:before{content:"";border-top:5px solid #0000;border-bottom:5px solid #0000;border-right:5px solid #263544;width:0;height:0;position:absolute;top:50%;right:100%;transform:translateY(-50%)}.viewport-tools button:hover .viewport-tool-tooltip,.viewport-tools button:focus-visible .viewport-tool-tooltip,.viewport-tools button:disabled:hover .viewport-tool-tooltip{opacity:1;visibility:visible;transform:translateY(-50%)}.tool-divider{background:var(--border);height:1px;margin:3px 4px}.exploded-view-controls{z-index:13;gap:7px;width:206px;display:grid;position:absolute;top:14px;left:62px}.exploded-view-controls.active{left:14px}.exploded-view-toggle{color:#8f2637;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffafbf5;border:1px solid #d8909c;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:39px;padding:0 13px;font-size:11px;font-weight:760;display:flex;box-shadow:0 4px 14px #64222e1f}.exploded-view-toggle:hover{color:#fff;background:#b93850;border-color:#a52d43}.exploded-view-toggle[aria-pressed=true]{color:#fff;background:#a92f45;border-color:#93263a}.explosion-distance-control{color:#6e2c38;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff8f9f5;border:1px solid #dda5ae;border-radius:8px;gap:7px;padding:10px 11px;display:grid;box-shadow:0 4px 14px #64222e1a}.explosion-distance-control>span{justify-content:space-between;align-items:center;gap:8px;font-size:9px;display:flex}.explosion-distance-control strong{font-size:10px}.explosion-distance-control output{color:#a22f43;font-variant-numeric:tabular-nums;font-weight:760}.explosion-distance-control input{accent-color:#b93850;cursor:ew-resize;width:100%}.viewport-help{z-index:10;color:#526475;border:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);white-space:nowrap;background:#ffffffe6;border-radius:8px;align-items:center;gap:12px;height:38px;padding:0 10px 0 14px;font-size:10.5px;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%);box-shadow:0 3px 12px #17212b0f}.viewport-help span{align-items:center;gap:6px;display:flex}.viewport-help i{background:var(--border);width:1px;height:18px}.viewport-help button{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;padding:0;display:grid}.index-instruction{z-index:11;color:#7c4b06;background:#fff7e8f2;border:1px solid #f5cd8e;border-radius:8px;align-items:center;gap:8px;padding:9px 13px;font-size:12px;font-weight:650;display:flex;position:absolute;top:14px;left:50%;transform:translate(-50%);box-shadow:0 5px 18px #8e57091f}.viewport-lower-left-stack{z-index:12;scrollbar-width:thin;pointer-events:none;flex-direction:column;gap:9px;width:286px;max-height:calc(100% - 36px);display:flex;position:absolute;bottom:18px;left:18px;overflow-y:auto}.viewport-lower-left-stack.with-help{max-height:calc(100% - 80px);bottom:62px}.viewport-lower-left-stack>*{pointer-events:auto;flex:none}.index-reference-overlay{color:#69420a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffbf2f5;border:1px solid #f0d09c;border-radius:9px;width:286px;padding:10px;box-shadow:0 5px 18px #68420a1f}.index-reference-heading{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.index-reference-heading>span{align-items:center;gap:6px;display:flex}.index-reference-heading strong{font-size:11px}.index-reference-heading>small{color:#7d5319;text-align:center;background:#f7e8cf;border-radius:999px;min-width:22px;padding:2px 6px;font-size:9px;font-weight:800}.index-reference-list{gap:5px;display:grid}.index-reference-row{background:#ffffffad;border:1px solid #debe89a8;border-radius:7px;grid-template-columns:10px minmax(0,1fr) 25px;align-items:center;gap:7px;min-width:0;padding:6px 5px 6px 7px;display:grid}.index-color-swatch{border:1px solid #3c2a102e;border-radius:5px;width:9px;height:32px}.index-reference-values{gap:1px;min-width:0;display:grid}.index-reference-values strong{font-size:10px}.index-reference-values small{color:#863;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.index-reference-row button{color:#8c5522;cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;width:25px;height:25px;padding:0;display:grid}.index-reference-row button:hover{color:#a52d2d;background:#f9e2dc}.index-label{color:#8b5509;white-space:nowrap;background:#fffbf2f0;border:1px solid #f2cf95;border-radius:5px;padding:4px 7px;font:650 11px/15px Inter,sans-serif;display:block}.gem-transform-overlay{color:#263f5b;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#f8fcfff5;border:1px solid #a9c4e7;border-radius:10px;width:286px;padding:10px;box-shadow:0 7px 22px #1b406c2b}.gem-transform-heading{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.gem-transform-heading>span{align-items:center;gap:6px;min-width:0;display:flex}.gem-transform-heading strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.gem-transform-heading button{color:#496783;cursor:pointer;background:0 0;border:0;border-radius:5px;flex:none;place-items:center;width:22px;height:22px;padding:0;display:grid}.gem-transform-heading button:hover{background:#e7f0fb}.gem-transform-group+.gem-transform-group{margin-top:7px}.gem-transform-group>strong{color:#58718b;letter-spacing:.06em;text-transform:uppercase;margin-bottom:3px;font-size:8px;display:block}.gem-transform-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.live-transform-field{color:#60778e;grid-template-columns:12px minmax(0,1fr);align-items:center;gap:3px;min-width:0;font-size:8px;font-weight:720;display:grid}.live-transform-field>span:last-child{min-width:0;position:relative}.live-transform-field input{color:#24384c;font-variant-numeric:tabular-nums;background:#fff;border:1px solid #bdccda;border-radius:5px;width:100%;height:29px;padding:0 20px 0 5px;font-size:9px}.live-transform-field input:focus{border-color:var(--blue);outline:2px solid var(--focus)}.live-transform-field input:disabled{color:#8a9baa;cursor:not-allowed;background:#edf1f4}.live-transform-field small{color:#8799a9;pointer-events:none;font-size:7px;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.gem-transform-note{color:#7a5b19;margin-top:6px;font-size:8px;display:block}.plane-badge{width:27px;height:27px;color:var(--blue);border:2px solid var(--blue);background:#fff;border-radius:50%;place-items:center;font:700 12px/1 Inter,sans-serif;display:grid;box-shadow:0 2px 6px #17212b1f}.plane-badge.active{color:#fff;background:var(--blue);transform:scale(1.08)}.inclusion-label{color:#8c1856;white-space:nowrap;background:#fff5fbf2;border:1px solid #e88bbb;border-radius:5px;padding:4px 7px;font:650 10.5px/15px Inter,sans-serif;display:block;box-shadow:0 2px 7px #8b15541a}.settings-section{border-bottom:1px solid var(--border);margin-bottom:18px;padding-bottom:18px}.section-label{font-size:13px;font-weight:680;display:block}.section-hint{color:var(--muted);margin:7px 0 0;font-size:10.5px;line-height:16px}.segmented{border:1px solid var(--border-strong);background:#f7f9fb;border-radius:8px;grid-template-columns:1fr 1fr;margin-top:9px;padding:3px;display:grid}.segmented.three-options{grid-template-columns:repeat(3,1fr)}.segmented button{color:#415365;cursor:pointer;background:0 0;border:0;border-radius:5px;height:36px;font-size:11.5px;font-weight:640;transition:all .12s ease-out}.segmented.three-options button{padding:0 5px;font-size:10.5px}.segmented button.active{color:#fff;background:var(--blue);box-shadow:0 2px 5px #1e63d733}.section-title-row{justify-content:space-between;align-items:center;display:flex}.section-title-row>div{flex-direction:column;gap:2px;min-width:0;display:flex}.section-title-row small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.color-dot{border:2px solid #fff;border-radius:50%;flex:none;width:12px;height:12px;box-shadow:0 0 0 1px #b8c7d6}.dimension-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;display:grid}.copy-count-control{background:var(--blue-soft);border:1px solid #d4e3fa;border-radius:8px;grid-template-columns:1fr 1.35fr;align-items:end;gap:10px;margin-top:12px;padding:10px;display:grid}.copy-count-control>small{color:#527092;align-self:center;font-size:9.5px;line-height:14px}.number-field{color:#435365;flex-direction:column;gap:5px;min-width:0;font-size:10.5px;display:flex}.number-field-label{align-items:center;gap:5px;min-width:0;display:inline-flex}.field-tooltip{color:#71869b;cursor:help;border-radius:50%;outline:none;flex:none;justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex;position:relative}.field-tooltip:hover,.field-tooltip:focus-visible{color:var(--blue);box-shadow:0 0 0 2px var(--focus)}.field-tooltip-popover{z-index:1000;color:#fff;pointer-events:none;background:#263544;border-radius:7px;padding:8px 10px;font-size:10px;font-weight:520;line-height:14px;position:fixed;transform:translateY(-50%);box-shadow:0 7px 20px #141f2a3d}.field-tooltip-popover:after{content:"";border-top:5px solid #0000;border-bottom:5px solid #0000;position:absolute;top:50%;transform:translateY(-50%)}.field-tooltip-popover[data-side=left]:after{border-left:5px solid #263544;left:100%}.field-tooltip-popover[data-side=right]:after{border-right:5px solid #263544;right:100%}.input-with-unit{display:block;position:relative}.input-with-unit input{width:100%;height:40px;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);font-variant-numeric:tabular-nums;border-radius:7px;padding:0 9px;font-size:12px}.input-with-unit input.has-unit{padding-right:40px}.input-with-unit input:hover{border-color:#8ea4b8}.input-with-unit small{color:var(--muted);pointer-events:none;font-size:9px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.compact-settings{gap:12px;display:grid}.compact-settings .number-field{grid-template-columns:1fr 102px;align-items:center;display:grid}.compact-settings .input-with-unit input{height:38px}.optimizer-engine-toggle{color:#24496f;cursor:pointer;background:#f1f7ff;border:1px solid #bcd2f1;border-radius:8px;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:9px;padding:10px;display:grid}.optimizer-engine-toggle input{width:15px;height:15px;accent-color:var(--blue);margin:2px 0 0}.optimizer-engine-toggle>span{flex-direction:column;gap:2px;min-width:0;display:flex}.optimizer-engine-toggle strong{font-size:11px}.optimizer-engine-toggle small{color:#5b7595;font-size:9.5px;line-height:13px}.optimizer-engine-toggle .engine-toggle-heading{align-items:center;gap:5px;display:inline-flex}.optimizer-engine-select{color:#24496f;background:#f1f7ff;border:1px solid #bcd2f1;border-radius:8px;gap:7px;padding:10px;display:grid}.optimizer-engine-select>span{flex-direction:column;gap:2px;min-width:0;display:flex}.optimizer-engine-select strong{font-size:11px}.optimizer-engine-select small{color:#5b7595;font-size:9.5px;line-height:13px}.optimizer-engine-select select{color:#24496f;background:#fff;border:1px solid #9dbce2;border-radius:6px;width:100%;min-height:34px;padding:0 8px;font-size:10px;font-weight:680}.cut-settings-hint{margin:-3px 0 0}.collapsible-settings{gap:8px;display:grid}.settings-accordion{border:1px solid var(--border);background:#fbfcfd;border-radius:9px;overflow:hidden}.settings-accordion[open]{background:#fff;border-color:#c4d2df;overflow:visible}.settings-accordion summary{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:8px 10px 8px 12px;list-style:none;display:flex}.settings-accordion summary::-webkit-details-marker{display:none}.settings-accordion summary:hover{background:#f5f8fb}.settings-accordion summary:focus-visible{outline:3px solid var(--focus);outline-offset:-3px}.settings-accordion summary>span{flex-direction:column;gap:2px;min-width:0;display:flex}.settings-accordion summary strong{font-size:11.5px;font-weight:680}.settings-accordion summary small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9.5px;overflow:hidden}.settings-accordion summary>svg{color:var(--muted);flex:none;transition:transform .14s ease-out}.settings-accordion[open] summary>svg{transform:rotate(180deg)}.accordion-content{border-top:1px solid var(--border);padding:11px 12px 13px}.accordion-hint{margin:-2px 0 0}.basic-optimization-accordion{background:#f7faff;border-color:#bad0ee}.basic-optimization-accordion[open]{border-color:#8eb4e8}.basic-optimization-content{gap:6px;display:grid}.quality-profile-slider{color:#314d6b;gap:8px;display:grid}.quality-profile-slider.is-disabled{opacity:.48}.quality-profile-title{font-size:10.5px;font-weight:700}.quality-profile-slider input[type=range]{width:100%;height:22px;accent-color:var(--blue);cursor:pointer;margin:0}.quality-profile-slider input[type=range]:disabled{cursor:not-allowed}.quality-profile-labels{grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;display:grid}.quality-profile-labels button{color:#65788c;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:4px;min-width:0;padding:3px 1px;font-size:8.5px;font-weight:650;overflow:hidden}.quality-profile-labels button.active{color:var(--blue);background:var(--blue-soft)}.inclusion-import-accordion{background:#fffafd;border-color:#e4bbcf}.inclusion-import-accordion[open]{border-color:#d8649c}.inclusion-import-accordion summary:hover{background:#fff4f9}.inclusion-settings{gap:11px;display:grid}.inclusion-toolbar{justify-content:space-between;align-items:center;gap:8px;display:flex}.inclusion-toolbar>div{flex-direction:column;gap:2px;min-width:0;display:flex}.inclusion-toolbar strong{font-size:10.5px}.inclusion-toolbar small{color:#8f4b70;font-size:8.5px}.inclusion-toolbar button{color:#a51f66;cursor:pointer;background:#fff5fa;border:1px solid #e59abc;border-radius:6px;flex:none;min-height:30px;padding:0 9px;font-size:9.5px;font-weight:700}.inclusion-toolbar button:hover:not(:disabled){background:#fde5f1}.inclusion-empty{color:#765568;background:#fff8fb;border:1px dashed #e5b5cd;border-radius:7px;margin:0;padding:10px}.inclusion-list{scrollbar-width:thin;gap:4px;max-height:132px;display:grid;overflow-y:auto}.inclusion-list>div{border:1px solid var(--border);background:#fff;border-radius:7px;grid-template-columns:minmax(0,1fr) 26px 26px;align-items:center;min-width:0;display:grid}.inclusion-list>div.active{background:#fff6fa;border-color:#d8649c;box-shadow:inset 3px 0 #d72d82}.inclusion-list .icon-button{width:24px;height:24px}.inclusion-select{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:9px minmax(0,1fr);align-items:center;gap:7px;min-width:0;padding:7px 5px 7px 8px;display:grid}.inclusion-select>span:first-child{background:#d72d82;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 3px #d72d821f}.inclusion-select>span:last-child{flex-direction:column;gap:1px;min-width:0;display:flex}.inclusion-select strong,.inclusion-select small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inclusion-select strong{font-size:9.5px}.inclusion-select small{color:var(--muted);font-size:8.5px}.inclusion-editor{border-top:1px solid #ead2df;gap:9px;padding-top:11px;display:grid}.text-field,.select-field{color:#435365;flex-direction:column;gap:5px;font-size:10.5px;display:flex}.text-field input,.select-field select{width:100%;height:36px;color:var(--text);border:1px solid var(--border-strong);background:#fff;border-radius:7px;padding:0 9px;font-size:11px}.mini-heading{color:#7c4562;text-transform:uppercase;letter-spacing:.055em;margin:2px 0 -5px;font-size:9px;font-weight:720}.inclusion-grid{gap:5px;margin-top:0}.inclusion-grid .number-field{gap:3px;font-size:8.5px}.inclusion-grid .input-with-unit input{height:34px;padding-left:6px;padding-right:28px;font-size:10px}.inclusion-options{background:#fbf7f9;border:1px solid #ead8e1;border-radius:7px;gap:6px;padding:8px;display:grid}.inclusion-options label{cursor:pointer;grid-template-columns:14px minmax(0,1fr);align-items:start;gap:7px;display:grid}.inclusion-options input{accent-color:#c52678;width:13px;height:13px;margin:2px 0 0}.inclusion-options span{flex-direction:column;gap:1px;display:flex}.inclusion-options strong{font-size:9.5px}.inclusion-options small{color:var(--muted);font-size:8.5px;line-height:12px}.action-stack{gap:9px;margin-bottom:14px;display:grid}.optimization-progress-overlay{z-index:16;color:#163f78;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f5f9fff7;border:1px solid #8fb8f1;border-radius:12px;gap:10px;width:min(410px,100% - 36px);padding:15px 16px;display:grid;position:absolute;bottom:18px;right:18px;box-shadow:0 14px 38px #1a44803d}.optimization-progress-heading{grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;display:grid}.optimization-progress-heading>span:nth-child(2){flex-direction:column;gap:2px;min-width:0;display:flex}.optimization-progress-heading strong,.optimization-progress-heading small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.optimization-progress-heading strong{font-size:13px}.optimization-progress-heading small{color:#5d7696;font-size:9.5px}.optimization-progress-heading b{color:var(--blue);font-variant-numeric:tabular-nums;font-size:18px}.optimization-progress-overlay>p{color:#345b8b;margin:0;font-size:11px;line-height:16px}.optimization-progress-overlay>small{color:#66809f;font-size:9px;line-height:13px}.optimization-progress-overlay .progress-track{background:#d7e5f8;height:7px}.progress-track{background:#dfe9f7;border-radius:99px;height:4px;overflow:hidden}.progress-track span{border-radius:inherit;background:var(--blue);height:100%;transition:width .14s ease-out;display:block}.primary,.secondary{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:44px;font-weight:690;transition:all .12s ease-out;display:flex}.primary{color:#fff;background:linear-gradient(#2672e6,#1459c5);border:1px solid #1459c5;box-shadow:0 3px 8px #1e63d729}.primary:hover:not(:disabled){background:linear-gradient(#1f66d5,#104da9);box-shadow:0 5px 12px #1e63d738}.primary.compact{min-height:38px;padding:0 14px;font-size:12px}.secondary{color:var(--blue);border:1px solid var(--blue);background:#fff}.secondary:hover:not(:disabled){background:var(--blue-soft)}.validation-card{border:1px solid var(--border);background:var(--raised);border-radius:9px;align-items:flex-start;gap:10px;padding:13px;transition:all .18s ease-out;display:flex}.validation-card.success{color:#116a48;background:var(--green-soft);border-color:#7ac9a8}.validation-card.error{color:#a52721;background:var(--red-soft);border-color:#ef9d99}.validation-card.working{color:#174d9f;background:var(--blue-soft);border-color:#aac8f4}.validation-icon{flex:none;place-items:center;width:22px;height:22px;display:grid}.validation-card>div{min-width:0}.validation-card strong{font-size:12.5px;display:block}.validation-card p{color:var(--muted);margin:3px 0 0;font-size:10.5px;line-height:16px}.validation-card.success p{color:#397e64}.validation-card.error p{color:#a84d48}.result-summary-card{background:#f8fbff;border:1px solid #b7cae4;border-radius:9px;margin-top:12px;overflow:hidden}.result-summary-heading{background:#fff;border-bottom:1px solid #d6e2f1;flex-wrap:wrap;align-items:center;gap:6px 8px;min-height:38px;padding:8px 10px;display:flex}.result-completion-time{color:#57708b;font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:4px;min-width:0;font-size:9px;font-weight:650;display:inline-flex}.result-completion-time svg{color:var(--blue)}.result-engine-badge{color:#245184;white-space:nowrap;background:#eef5ff;border:1px solid #b9cff0;border-radius:99px;align-items:center;gap:3px;padding:3px 6px;font-size:8.5px;font-weight:720;display:inline-flex}.result-engine-badge.wasm_sdf{color:#5b4b20;background:#fff7dd;border-color:#e7cf7e}.result-engine-badge.webgpu_aco_sdf{color:#245b46;background:#e9fbf3;border-color:#92d8bb}.result-engine-badge.random_sampler{color:#69438b;background:#f6edff;border-color:#d1b3e8}.result-engine-badge .field-tooltip{width:13px;height:13px}.result-fit-count{color:#116a48;background:var(--green-soft);font-variant-numeric:tabular-nums;border:1px solid #9dd8bd;border-radius:99px;align-items:center;gap:4px;margin-left:auto;padding:3px 7px;font-size:9.5px;font-weight:750;display:inline-flex}.result-metric-grid{border-bottom:1px solid #d6e2f1;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.result-metric{flex-direction:column;gap:2px;min-width:0;padding:8px 9px;display:flex}.result-metric+.result-metric{border-left:1px solid #536e8d26}.result-metric span,.result-gem-heading>span{align-items:center;gap:3px;min-width:0;font-size:8.5px;font-weight:680;display:inline-flex}.result-metric strong{font-variant-numeric:tabular-nums;font-size:15px;line-height:19px}.result-metric.filled{color:#116a48;background:var(--green-soft)}.result-metric.saw-loss{color:#ae352f;background:var(--red-soft)}.result-metric.unallocated{color:#94620a;background:#fff5cf}.result-gem-section{background:linear-gradient(145deg,#f6faff,#edf4ff);padding:8px 9px 9px}.result-gem-heading{color:#1f578f;justify-content:space-between;align-items:center;gap:8px;display:flex}.result-gem-heading small{color:#4c6e94;text-transform:uppercase;letter-spacing:.04em;font-size:8px;font-weight:700}.gem-volume-list{scrollbar-width:thin;gap:3px;max-height:150px;margin-top:6px;display:grid;overflow-y:auto}.gem-volume-list button{color:#30465d;text-align:left;cursor:pointer;background:#ffffffc2;border:1px solid #0000;border-radius:6px;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-width:0;padding:6px 7px;display:grid}.gem-volume-list button:hover,.gem-volume-list button.active{background:#fff;border-color:#a9c5ea}.gem-volume-list button>span:nth-child(2){flex-direction:column;gap:1px;min-width:0;display:flex}.gem-volume-list strong,.gem-volume-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gem-volume-list strong{font-size:9.5px}.gem-volume-list small{color:var(--muted);font-variant-numeric:tabular-nums;font-size:8.5px}.gem-volume-list b{color:#1f578f;font-variant-numeric:tabular-nums;font-size:9.5px}.spinner{border:2px solid #aac8f4;border-top-color:var(--blue);border-radius:50%;width:17px;height:17px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.saw-plan-section{border:1px solid var(--border);background:#fff;border-radius:8px;margin-top:10px;padding:9px 10px}.saw-plan-section .section-title-row{gap:8px}.export-button{height:28px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #bcd1f1;border-radius:6px;align-items:center;gap:4px;padding:0 8px;font-size:9.5px;font-weight:650;display:flex}.export-button:hover{background:var(--blue-soft)}.no-cuts-card{background:#f2fbf7;border:1px solid #b9e3cf;border-radius:8px;padding:11px}@media (max-width:1180px){.workbench-grid{grid-template-columns:240px minmax(440px,1fr) 300px;gap:10px;padding:10px}.panel{padding:14px}.drop-zone-button{min-height:118px}.brand{font-size:20px}.header-mode-options button{padding-inline:7px}.viewport-help span{gap:0;font-size:0}.viewport-help span svg{width:16px;height:16px}}@media (max-width:900px){.app-shell{height:auto;min-height:100vh;overflow:visible}.topbar{grid-template-columns:minmax(0,1fr) auto;gap:7px 10px;height:auto;min-height:108px;padding:8px 12px}.brand{font-size:18px}.brand-mark{width:31px;height:31px}.beta-badge{display:none}.topbar-button{font-size:0}.topbar-button svg{width:18px;height:18px}.header-mode-picker{grid-area:2/1/auto/-1}.header-mode-options button{text-align:center;align-items:center;min-height:43px}.workbench-grid{flex-direction:column;height:auto;min-height:calc(100vh - 108px);padding:10px;display:flex}.viewport-panel{order:1;height:58vh;min-height:440px}.input-panel{order:2;overflow:visible}.settings-panel{order:3;overflow:visible}.panel-section{vertical-align:top;width:calc(50% - 6px);display:inline-block}.panel-section+.panel-section{margin:0 0 0 8px}}@media (max-width:560px){.app-status{display:none}.header-mode-options button{min-height:34px}.header-mode-options button small{display:none}.panel-section{width:100%;display:block}.panel-section+.panel-section{margin:12px 0 0}.viewport-panel{height:52vh;min-height:390px}.viewport-help{display:none}.viewport-lower-left-stack{width:min(286px,100% - 20px);bottom:10px;left:10px}.viewport-lower-left-stack.with-help{max-height:calc(100% - 20px);bottom:10px}.index-reference-overlay,.gem-transform-overlay{width:100%}.optimization-progress-overlay{width:calc(100% - 20px);padding:12px;bottom:10px;right:10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
