:root{color:#171717;font-synthesis:none;text-rendering:optimizelegibility;background:#fff;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif,Apple Color Emoji,Segoe UI Emoji}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}body{min-width:320px;min-height:100vh}button,select,input,textarea{font:inherit}button{color:inherit;cursor:pointer;background:0 0;border:0}button:disabled{cursor:default;opacity:.36}select,input[type=text],input[type=number]{color:#18181b;background:#fff;border:1px solid #d4d4d8;border-radius:6px;min-height:32px;padding:0 8px}.ui-icon{width:var(--icon-size);height:var(--icon-size);flex:0 0 var(--icon-size);font-family:ui-sans-serif,system-ui,sans-serif;font-size:calc(var(--icon-size) * .92);place-items:center;font-weight:500;line-height:1;display:inline-grid}.app-shell{color:#18181b;background:#fff;grid-template-columns:256px minmax(0,1fr);width:100%;height:100dvh;font-size:14px;display:grid;overflow:hidden}.app-loading{color:#52525b;background:#fafafa;justify-content:center;align-items:center;gap:10px;width:100%;height:100%;font-size:13px;display:flex}.template-picker,.share-boot{background:#fafafa;flex-direction:column;gap:28px;width:100%;height:100%;min-height:100dvh;padding:48px 24px 40px;display:flex;overflow:auto}.share-boot{text-align:center;justify-content:center;align-items:center;gap:12px}.share-boot p{color:#52525b;margin:0;font-size:15px}.share-boot button{margin-top:8px}.readonly-fields{min-inline-size:0;border:0;width:100%;margin:0;padding:0}.brand-row .viewer-badge{color:#3f3f46;letter-spacing:.04em;text-transform:uppercase;background:#e4e4e7;border-radius:999px;margin-top:0;padding:1px 6px;font-size:10px;font-weight:700;line-height:1.4;display:inline-block}.template-picker-brand{align-items:center;gap:10px;width:min(920px,100%);margin:0 auto;display:flex}.template-picker-brand .dieline-unit-toggle{margin-left:auto}.template-picker-brand .brand-logo{object-fit:cover;background:#fff;border-radius:50%;flex-basis:36px;width:36px;height:36px}.template-picker-brand strong{font-size:20px;font-weight:650;line-height:1.2;display:block}.template-picker-brand span{color:#71717a;font-size:13px}.template-card-button{color:#fff;white-space:nowrap;background:#18181b;border:1px solid #18181b;border-radius:8px;flex:0 0 34px;justify-content:center;align-items:center;width:100%;height:34px;min-height:34px;padding:0 10px;font-size:13px;font-weight:600;display:inline-flex}@media (hover:hover){.template-card-button:hover:not(:disabled){background:#27272a}}.name-dialog{background:#fff;border-radius:12px;width:min(420px,100vw - 32px);padding:16px 16px 14px;box-shadow:0 18px 50px #18181b2e}.name-dialog label{color:#3f3f46;gap:6px;margin:12px 0 16px;font-size:12px;font-weight:600;display:grid}.name-dialog input{width:100%;height:36px;font:inherit;border:1px solid #d4d4d8;border-radius:8px;padding:0 10px;font-weight:400}.name-dialog .dialog-actions{justify-content:flex-end;gap:8px;display:flex}.name-dialog .dialog-actions .template-card-button{width:auto;min-width:96px;padding:0 14px}.share-link-dialog p{color:#52525b;margin:12px 0 10px;font-size:13px;font-weight:400;line-height:1.45}.share-link-dialog>input{margin-bottom:16px}.dieline-generator{background:#fafafa;flex-direction:column;gap:24px;width:100%;height:100%;min-height:100dvh;padding:32px 24px 40px;display:flex;overflow:auto}.dieline-generator-header{gap:16px;width:min(1100px,100%);margin:0 auto;display:grid}.dieline-generator-header .template-picker-brand{width:100%;margin:0}.dieline-back{color:#52525b;border-radius:6px;align-items:center;gap:4px;width:fit-content;min-height:32px;padding:0 4px;font-size:13px;display:inline-flex}@media (hover:hover){.dieline-back:hover{color:#18181b;background:#f4f4f5}}.dieline-generator-layout{grid-template-columns:minmax(240px,300px) minmax(0,1fr);align-items:start;gap:20px;width:min(1100px,100%);margin:0 auto;display:grid}.dieline-generator-form,.dieline-generator-preview{background:#fff;border:1px solid #dedee3;border-radius:12px;padding:16px}.dieline-generator-form{flex-direction:column;gap:10px;display:flex}.dieline-generator-form label{color:#52525b;flex-direction:column;gap:4px;font-size:12px;display:flex}.dieline-generator-form input[type=number]{width:100%}.dieline-unit-toggle{gap:4px;display:inline-flex}.dieline-unit-toggle button{color:#52525b;background:#fff;border:1px solid #d4d4d8;border-radius:6px;min-height:24px;padding:0 8px;font-size:11px}.dieline-unit-toggle button.active{color:#fff;background:#18181b;border-color:#18181b}.dieline-generator-summary{color:#18181b;margin:4px 0 0;font-size:13px;font-weight:600}.dieline-generator-hint{color:#71717a;margin:0 0 6px;font-size:12px;line-height:1.4}.dieline-generator-preview{flex-direction:column;gap:10px;min-height:520px;display:flex}.dieline-preview-mode{color:#71717a;letter-spacing:.04em;font-size:11px;font-weight:600}.dieline-preview-frame{background:#f2f2f3;border:1px solid #eee;border-radius:8px;flex:1;min-height:480px;position:relative;overflow:hidden}.dieline-preview-frame .viewport-pane{background:#f2f2f3;width:100%;height:100%;position:absolute;inset:0}@media (width<=800px){.dieline-generator-layout{grid-template-columns:1fr}}.brand-logo{object-fit:cover;background:#fff;border-radius:50%;flex:0 0 28px;width:28px;height:28px;display:block}.sidebar{background:#fbfbfb;border-right:1px solid #e5e5e5;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden auto}.brand-row{border-bottom:1px solid #e5e5e5;flex:none;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;min-height:36px;padding:0 12px 0 14px;display:grid}.brand-row>div{align-items:baseline;gap:6px;min-width:0;display:flex}.brand-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:650;line-height:1;overflow:hidden}.brand-row span:not(.brand-logo){color:#71717a;font-size:12px;line-height:1}.workflow,.draft-section,.control-section{padding:8px 12px}.workflow,.draft-section{border-bottom:1px solid #e5e5e5}.section-title,.source-section-title{color:#71717a;text-transform:uppercase;justify-content:space-between;align-items:center;min-height:18px;padding:0 0 6px;font-size:10px;font-weight:500;line-height:1.2;display:flex}.section-actions{align-items:center;gap:4px;display:inline-flex}.workflow-item,.add-step{color:#18181b;text-align:left;border-radius:8px;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;width:100%;min-height:34px;padding:6px 4px;font-size:14px;display:grid}.workflow-item .ui-icon,.add-step .ui-icon,.step-select .ui-icon{color:#71717a}.workflow-item.open{background:#f4f4f5}@media (hover:hover){.workflow-item:hover,.add-step:hover,.step-row:hover,.icon-button:hover,.topbar button:hover{background:#f4f4f5}}.workflow-panel{flex-direction:column;gap:8px;padding:7px 3px 10px 28px;display:flex}.workflow-panel label{color:#52525b;flex-direction:column;gap:4px;font-size:12px;display:flex}.workflow-panel select,.workflow-panel input[type=number],.workflow-panel input[type=range]{width:100%}.sample-library{gap:5px;padding-left:0}.sample-card{background:linear-gradient(145deg,#fff 0%,#faf7f2 100%);border:1px solid #dedee3;border-radius:8px;padding:6px 7px;position:relative}.sample-card-heading{grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:6px;display:grid}.sample-card-copy{gap:1px;min-width:0;display:grid}.sample-card-copy strong{color:#18181b;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.2;overflow:hidden}.sample-card-copy small{color:#71717a;text-overflow:ellipsis;white-space:nowrap;font-size:9px;line-height:1.2;overflow:hidden}.sample-card-icon{color:#7c4a22;background:#efe6d7;border-radius:6px;place-items:center;width:25px;height:25px;display:grid}.sample-card-actions{align-items:center;gap:3px;display:flex}.sample-card-info{display:inline-flex;position:relative}.sample-info-button,.sample-load-button{border-radius:6px;place-items:center;height:25px;display:inline-grid}.sample-info-button{color:#52525b;background:#fff;border:1px solid #d4d4d8;width:25px}.sample-load-button{color:#fff;background:#18181b;border:1px solid #18181b;min-width:38px;padding:0 7px;font-size:10px;font-weight:600}.sample-info-tooltip{z-index:30;visibility:hidden;opacity:0;color:#f4f4f5;pointer-events:none;text-align:left;background:#18181b;border:1px solid #d4d4d8;border-radius:8px;gap:5px;width:185px;padding:9px;transition:opacity .12s,transform .12s,visibility .12s;display:grid;position:absolute;top:calc(100% + 6px);right:-42px;transform:translateY(-2px);box-shadow:0 8px 24px #00000038}.sample-info-tooltip:before{content:"";background:#18181b;width:9px;height:9px;position:absolute;top:-5px;right:50px;transform:rotate(45deg)}.sample-info-tooltip strong{font-size:11px;line-height:1.2}.sample-info-tooltip span{color:#e4e4e7;font-size:10px;line-height:1.4}.sample-info-tooltip small{color:#a1a1aa;font-size:9px;line-height:1.3}.sample-card-info:hover .sample-info-tooltip,.sample-card-info:focus-within .sample-info-tooltip{visibility:visible;opacity:1;transform:translateY(0)}@media (hover:hover){.sample-load-button:hover{background:#27272a}.sample-info-button:hover{color:#18181b;background:#f4f4f5;border-color:#a1a1aa}}.offset-direction{color:#52525b;flex-direction:column;gap:4px;font-size:12px;display:flex}.offset-direction-buttons{gap:4px;display:flex}.offset-direction-buttons button{background:#fff;border:1px solid #d4d4d8;border-radius:6px;flex:1;min-height:28px;font-size:11px}.offset-direction-buttons button.active{border-color:#18181b;box-shadow:inset 0 0 0 1px #18181b}.artwork-upload{cursor:pointer;background:#fff;border:1px dashed #d4d4d8;border-radius:8px;grid-template-columns:minmax(0,1fr);gap:6px;min-height:48px;padding:8px;position:relative;overflow:hidden;display:grid!important}.artwork-upload>span:first-child{font-weight:600}.artwork-preview{gap:4px;min-width:0;display:grid}.artwork-preview-frame{position:relative}.artwork-preview img{object-fit:contain;background-color:#fff;background-image:linear-gradient(45deg,#e4e4e7 25%,#0000 25%),linear-gradient(-45deg,#e4e4e7 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#e4e4e7 75%),linear-gradient(-45deg,#0000 75%,#e4e4e7 75%);background-position:0 0,0 6px,6px -6px,-6px 0;background-size:12px 12px;border-radius:6px;width:100%;height:96px}.artwork-remove{z-index:2;color:#52525b;cursor:pointer;background:#ffffffeb;border:1px solid #e4e4e7;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex;position:absolute;top:6px;right:6px}.artwork-remove:hover{color:#b42318;background:#fff;border-color:#d4d4d8}.artwork-preview small{color:#71717a;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.artwork-upload input{z-index:0;opacity:0;cursor:pointer;position:absolute;inset:0}.artwork-upload-empty{color:#71717a;background:#fafafa;border-radius:6px;justify-content:center;align-items:center;min-height:72px;font-size:12px;display:flex}.artwork-upload-error{color:#b42318;margin:0;font-size:11px}.artwork-flip{color:#52525b;background:#fff;border:1px solid #e4e4e7;border-radius:6px;justify-content:center;align-items:center;gap:6px;width:100%;min-height:28px;font-size:11px;display:inline-flex}.artwork-flip:disabled{opacity:.45;cursor:not-allowed}.draft-list{gap:4px;display:grid}.draft-list p{color:#71717a;margin:0;padding:6px 4px;font-size:12px}.draft-item{border-radius:6px;grid-template-columns:minmax(0,1fr) 28px;align-items:center;gap:3px;display:grid}.draft-item.active{background:#eef4ff}.draft-item>button:first-child{text-align:left;border-radius:6px;min-width:0;min-height:36px;padding:4px 6px;display:grid}.draft-item span,.draft-item small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.draft-item span{font-size:12px;font-weight:600}.draft-item small{color:#71717a;font-size:10px}.control-section{border-top:0}.step-row{border-radius:8px;align-items:center;gap:2px;min-height:30px;display:flex}.step-row .step-select{color:#18181b;text-align:left;flex:1;align-items:center;gap:8px;width:auto;min-width:0;min-height:30px;padding:6px 4px;font-size:14px;display:flex}.step-row .step-select>span:not(.ui-icon):not(.step-status){text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.step-select strong{color:#71717a;font-size:10px;font-weight:500}.step-status{border-radius:50%;width:7px;height:7px;flex:0 0 7px!important}.step-status.solved{background:#16a34a}.step-status.non-rigid{color:#eab308;border-radius:0;justify-content:center;align-items:center;width:13px;height:13px;display:inline-flex;position:relative;flex-basis:13px!important}.step-row .step-status.non-rigid .ui-icon{color:#eab308;stroke-width:2.2px}.step-status.non-rigid:after{color:#b77900;content:"!";font-size:7px;font-weight:800;line-height:1;position:absolute;top:2px;left:5px}.step-row[data-playback-active=true]{background:#eef4ff;position:relative}.step-row[data-playback-active=true]:before{content:"";background:#2f6fed;border-radius:999px;width:3px;position:absolute;top:6px;bottom:6px;left:-8px}.step-row[data-playback-active=true] .step-select{color:#174ea6;font-weight:600}.step-row[data-playback-active=true] .ui-icon{color:#2f6fed}.step-row[data-playback-active=true][data-playback-playing=true] .step-select:after{content:"";background:#2f6fed;border-radius:999px;flex:0 0 6px;width:6px;height:6px}.add-step{margin-top:2px}.keyframe-actions{flex-direction:column;gap:2px;display:flex}.add-step.remove-step:hover:not(:disabled){color:#b42318}.step-remove{color:#71717a;flex:0 0 28px;width:28px;min-width:28px;min-height:28px}.step-remove:hover:not(:disabled){color:#b42318}footer{color:#71717a;text-transform:uppercase;align-items:center;gap:7px;margin-top:auto;padding:8px 14px 10px;font-size:10px;font-weight:500;line-height:12px;display:flex}footer a{color:inherit;text-decoration:none}.workspace{grid-template-rows:36px minmax(0,1fr);min-width:0;min-height:0;display:grid;position:relative}.project-drop-overlay{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:none;background:#18181b47;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.project-drop-card{color:#18181b;background:#fffffff5;border:2px dashed #71717a;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:min(420px,100%);min-height:210px;display:flex;box-shadow:0 24px 64px #00000038}.project-drop-card strong{margin-top:4px;font-size:16px}.project-drop-card span{color:#71717a;font-size:12px}.topbar{z-index:20;background:#fff;border-bottom:1px solid #e5e5e5;grid-template-columns:minmax(0,1fr);align-items:center;height:36px;display:grid;position:relative}.menu-group{align-items:center;gap:4px;width:100%;min-width:0;padding:0 12px;display:flex}.topbar-trailing{align-items:center;gap:8px;margin-left:auto;display:flex}.topbar-trailing .dieline-unit-toggle button{border-radius:6px;min-height:22px;padding:0 7px}.render-button{color:#18181b;background:#fff;border:1px solid #d4d4d8;font-weight:600}.render-button small,.render-beta-badge{color:#4338ca;letter-spacing:.04em;text-transform:uppercase;background:#eef2ff;border-radius:999px;padding:1px 5px;font-size:9px;font-weight:700;line-height:1.4}.topbar button,.icon-button{border-radius:999px;justify-content:center;align-items:center;gap:6px;min-height:24px;padding:0 8px;display:inline-flex}.icon-button{width:28px;padding:0}.topbar .icon-button{width:24px}.topbar .icon-button.selected{color:#fff;background:#18181b}.sidebar-edge-toggle{z-index:25;color:#71717a;background:#fff;border:1px solid #e5e5e5;border-radius:999px;justify-content:center;align-items:center;width:20px;height:20px;padding:0;display:flex;position:absolute;top:18px;left:0;transform:translate(-50%,-50%)}.menu-host{position:relative}.topbar [role=menuitem]{border-radius:6px;font-weight:500}.dropdown-menu{z-index:30;background:#fff;border:1px solid #d8d8d8;border-radius:8px;gap:2px;min-width:218px;padding:6px;display:grid;position:absolute;top:30px;left:0;box-shadow:0 12px 30px #00000026}.dropdown-menu button{text-align:left;border-radius:5px;justify-content:flex-start;align-items:center;gap:8px;width:100%;min-height:30px;padding:0 8px;display:flex}@media (hover:hover){.dropdown-menu button:hover:not(:disabled){background:#ededed}}.dropdown-menu button>span:not(.ui-icon){text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.dropdown-menu kbd{color:#71717a;margin-left:auto;font-family:inherit;font-size:11px}.file-menu{min-width:250px}.menu-label{color:#777;letter-spacing:.08em;padding:9px 8px 4px;font-size:10px;font-weight:700}.menu-empty{color:#a1a1aa;padding:6px 8px;font-size:12px}.menu-draft-row{grid-template-columns:minmax(0,1fr) 28px;gap:2px;display:grid}.menu-draft-row>button:first-child{grid-template-columns:minmax(0,1fr) auto;display:grid}.menu-draft-row>button:first-child.active{color:#174ea6;background:#eef4ff}.menu-draft-row small{color:#71717a;font-size:10px}.menu-separator{background:#e5e5e5;height:1px;margin:4px -6px;display:block}.view-settings-menu{min-width:244px}.menu-submenu{position:relative}.menu-sub-trigger>.ui-icon:last-child{color:#71717a;margin-left:auto}.menu-sub-content{min-width:200px;display:none;top:-6px;left:calc(100% - 2px);box-shadow:0 12px 30px #0000002e}.menu-submenu:focus-within>.menu-sub-content,.menu-submenu.open>.menu-sub-content{display:grid}@media (hover:hover){.menu-submenu:hover>.menu-sub-content{display:grid}}.menu-check-slot{flex:0 0 16px;width:16px;height:16px}.menu-color-row{cursor:pointer;border-radius:5px;align-items:center;gap:8px;min-height:30px;padding:0 8px;display:flex;position:relative}@media (hover:hover){.menu-color-row:hover{background:#ededed}}.menu-color-row input{opacity:0;cursor:pointer;position:absolute;inset:0}.menu-color-swatch{border:1px solid #d4d4d4;width:16px;height:12px;flex:0 0 16px!important}.viewport{background:#fff;grid-row:2;min-width:0;min-height:0;position:relative;overflow:hidden}.viewport>.viewport-pane,.viewport-pane-host>.viewport-pane{position:absolute;inset:0}.viewport-pane{background:#fff;min-width:0;min-height:0;overflow:hidden}.viewport-canvas,.viewport-canvas>canvas{width:100%;height:100%;display:block}.viewport-canvas canvas{outline:none}.viewport-pane[data-view-mode="2d"] .viewport-canvas canvas{cursor:grab}.viewport-pane[data-view-mode="2d"] .viewport-canvas canvas:active{cursor:grabbing}.viewport-toolbar{z-index:8;gap:0;display:flex;position:absolute;top:4px;left:4px}.viewport-toolbar .icon-button{color:#18181b;background:0 0;border-radius:8px;width:36px;height:36px}@media (hover:hover){.viewport-toolbar .icon-button:hover{background:#ffffffc2}}.viewport-toolbar .icon-button.selected{color:#18181b}.inset{z-index:7;color:#18181b;width:192px;height:144px;text-align:initial;background:#fbfbfb;border:0;border-radius:0;outline:1px solid #18181b2e;padding:0;position:absolute;bottom:16px;left:16px;overflow:hidden;box-shadow:0 6px 18px #0000001a}@media (hover:hover){.inset:hover{outline-color:#18181b6b;box-shadow:0 8px 24px #00000026}}.inset>.viewport-pane{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.inset-label,.pane-label,.corner-mode{z-index:4;color:#18181b;background:#ffffffdb;border-radius:3px;padding:1px 5px;font-size:12px;line-height:16px;position:absolute;bottom:4px;right:6px}.corner-mode{background:0 0;padding:0;right:8px}.split-view{background:#f2f2f3;min-width:0;min-height:0;display:grid;position:absolute;inset:0}.split-view[data-split-orientation=horizontal]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.split-view[data-split-orientation=vertical]{grid-template-rows:minmax(0,1fr) minmax(0,1fr)}.viewport-pane-host{background:#fff;min-width:0;min-height:0;position:relative;overflow:hidden}.split-view[data-split-orientation=horizontal] .viewport-pane-host:first-child{border-right:1px solid #18181b29}.split-view[data-split-orientation=vertical] .viewport-pane-host:first-child{border-bottom:1px solid #18181b29}.status-pill{z-index:8;color:#4b4b4b;text-overflow:ellipsis;white-space:nowrap;background:#ffffffe6;border:1px solid #d5d5d5;border-radius:999px;max-width:min(38vw,420px);padding:4px 10px;font-size:12px;position:absolute;bottom:24px;right:10px;overflow:hidden}.inspector{z-index:12;align-content:start;gap:10px;width:min(320px,100% - 24px);max-height:calc(100dvh - 60px);padding-right:2px;display:none;position:absolute;top:48px;bottom:12px;right:12px;overflow:hidden auto}.inspector.open{display:grid}.inspector .readonly-fields{align-content:start;gap:10px;display:grid}.inspector-save-template{width:100%;margin-top:12px}.card-heading{align-items:center;gap:8px;margin-bottom:10px;display:flex}.card-heading .icon-button{margin-left:auto}.inspector dl{gap:8px;margin:0;display:grid}.inspector dl div{justify-content:space-between;gap:14px;display:flex}.inspector dt{color:#666}.inspector dd{text-overflow:ellipsis;white-space:nowrap;max-width:190px;margin:0;font-weight:600;overflow:hidden}.inspector-card label{color:#444;gap:6px;margin-bottom:12px;font-size:13px;display:grid}.inspector-card label>span,.inspector-card p{color:#606060;margin:0;font-size:12px}.inspector-card select,.inspector-card input[type=range],.inspector-card input[type=number]{width:100%}.secondary-action{color:#444;background:#fff;border:1px solid #d4d4d4;border-radius:6px;min-height:30px;padding:0 8px;font-size:13px}@media (hover:hover){.secondary-action:hover{background:#ededed}}.viewport-controls{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;margin-bottom:12px;display:grid}.viewport-controls label{margin-bottom:0}.checkbox-label{background:#fff;border:1px solid #d4d4d4;border-radius:6px;justify-content:center;align-items:center;min-height:32px;padding:0 8px;gap:6px!important;display:inline-flex!important}.material-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px;display:grid}.material-swatch{text-align:left;background:#fff;border:1px solid #d8d8d8;border-radius:6px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:8px;min-width:0;min-height:52px;padding:6px;display:grid}@media (hover:hover){.material-swatch:hover{background:#f8f8f8;border-color:#a9a9a9}}.material-swatch.selected{border-color:#1f1f1f;box-shadow:inset 0 0 0 1px #1f1f1f}.swatch-chip{background-position:50%;background-size:cover;border:1px solid #0000002e;border-radius:5px;width:34px;height:34px}.material-swatch strong,.material-swatch em{text-overflow:ellipsis;white-space:nowrap;line-height:1.2;display:block;overflow:hidden}.material-swatch strong{font-size:12px;font-weight:650}.material-swatch em{color:#686868;margin-top:2px;font-size:10px;font-style:normal}.material-facts{background:#fafafa;border:1px solid #e3e3e3;border-radius:6px;padding:8px;font-size:12px;gap:4px!important;margin:0 0 12px!important}.compact-grid{grid-template-columns:1fr 1fr;gap:8px 10px;display:grid}.compact-grid label{margin-bottom:0}.reset-artwork{width:100%;margin-top:12px}.solver-summary{color:#52525b;border-top:1px solid #e4e4e7;justify-content:space-between;margin-top:12px;padding-top:9px;font-size:12px;display:flex}.folding-setup .hint{line-height:1.4}.keyframe-status,.keyframe-toggle-row{justify-content:space-between;align-items:center;gap:8px;margin-top:7px;font-size:12px;display:flex}.keyframe-constraints{flex-direction:column;gap:5px;margin-top:8px;display:flex}.constraints-label{color:#71717a;font-size:11px}.constraint-row{align-items:center;gap:6px;font-size:12px;display:flex}.constraint-row>:first-child{flex:1}.constraint-row input{width:60px}.constraint-row .deg{color:#71717a;flex:0}.constraint-row .crease-select{text-align:left;border-radius:5px;min-width:0;padding:4px 6px}.constraint-row .crease-select:hover{background:#18181b0f}.crease-list{flex-direction:column;gap:5px;max-height:min(40vh,320px);padding-right:2px;display:flex;overflow-y:auto}.constraint-row.has-angle .crease-select{font-weight:600}.keyframe-warning{background:#f59e0b1f;border:1px solid #f59e0b66;border-radius:7px;padding:7px 8px;line-height:1.35;color:#b45309!important}.constraint-row.selected-crease{background:#ff7a4524;border:1px solid #ff7a4580;border-radius:7px;padding:5px 6px}.constraint-row.active-group{background:#ff7a4514;border-radius:6px;box-shadow:inset 0 0 0 1px #ff7a4559}.solve-badge{white-space:nowrap;border-radius:999px;padding:2px 6px;font-size:10px}.solve-badge.solved{color:#166534;background:#dcfce7}.solve-badge.non-rigid{color:#92400e;background:#fef3c7}.ui-switch{background:#78788266;border-radius:999px;flex:0 0 34px;width:34px;height:19px;padding:0;position:relative}.ui-switch.on{background:#2f6fed}.ui-switch-thumb{background:#fff;border-radius:50%;width:15px;height:15px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0000004d}.ui-switch.on .ui-switch-thumb{transform:translate(15px)}.keyframe-hint{line-height:1.35;margin-top:6px!important}.locked-panel-list,.operation-list{flex-direction:column;gap:4px;margin:5px 0 0;padding:0;list-style:none;display:flex}.locked-panel-list li{background:#2d9d781f;border:1px solid #2d9d7852;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:5px 6px;font-size:12px;display:flex}.glue-panel-list li{background:repeating-linear-gradient(-45deg,#f59e0b29 0 5px,#f59e0b0f 5px 10px);border-color:#d9770661}.link-button{color:#2f6fed;padding:0;font-size:11px}.operation-pipeline h2{margin:0;font-size:14px}.operation-pipeline .hint{margin:4px 0 9px;line-height:1.35}.operation{border:1px solid #0000001f;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:5px 6px;display:flex}.operation.disabled{opacity:.45}.operation.active{background:#eef4ff;border-color:#b9cdfb;box-shadow:inset 3px 0 #2f6fed}.operation-toggle{cursor:pointer;flex:1;align-items:center;min-width:0;flex-direction:row!important;gap:7px!important;margin:0!important;display:flex!important}.operation-toggle>span{flex-direction:column;min-width:0;line-height:1.15;display:flex}.operation-toggle strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.operation-toggle em{color:#71717a;font-size:9px;font-style:normal}.operation-actions{gap:2px;display:flex}.operation-actions button{background:#fff;border:1px solid #d4d4d8;border-radius:4px;width:24px;height:24px}.modifier-toggles{flex-wrap:wrap;gap:7px;margin-top:9px;display:flex}.dialog-backdrop{z-index:50;background:#00000038;place-items:center;display:grid;position:fixed;inset:0}.preferences-dialog{color:#18181b;background:#fff;border:1px solid #e5e5e5;border-radius:10px;width:min(448px,100vw - 32px);max-height:calc(100dvh - 64px);padding:24px;overflow-y:auto;box-shadow:0 18px 55px #0000002e}.render-dialog{color:#18181b;background:#fff;border:1px solid #e5e5e5;border-radius:12px;grid-template-rows:auto minmax(0,1fr) auto auto;width:min(1240px,100vw - 32px);height:min(820px,100dvh - 40px);padding:0;display:grid;overflow:hidden;box-shadow:0 18px 55px #0000002e}.render-dialog>.dialog-header{border-bottom:1px solid #e4e4e7;padding:14px 18px}.render-layout{grid-template-columns:320px minmax(0,1fr);min-height:0;display:grid}.render-settings{background:#fff;border-right:1px solid #e4e4e7;min-height:0;overflow-y:auto}.render-section{border-bottom:1px solid #e4e4e7}.render-section summary{cursor:pointer;color:#52525b;letter-spacing:.055em;text-transform:uppercase;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;min-height:42px;padding:0 16px;font-size:11px;font-weight:650;list-style:none;display:flex}.render-section summary::-webkit-details-marker{display:none}.render-section summary:after{content:"⌄";color:#71717a;font-size:15px;transition:transform .15s;transform:rotate(-90deg)}.render-section[open] summary:after{transform:rotate(0)}.render-section-body{gap:12px;padding:4px 16px 16px;display:grid}.render-control,.render-select-control,.render-color-control{color:#27272a;grid-template-columns:minmax(0,1fr) 92px;align-items:center;gap:8px 10px;font-size:12px;display:grid}.render-control.with-slider{grid-template-columns:minmax(76px,1fr) minmax(70px,1fr) 72px}.render-control input[type=number],.render-select-control select{color:#18181b;width:100%;min-height:32px;font:inherit;background:#fff;border:1px solid #d4d4d8;border-radius:6px;padding:0 8px}.render-control input[type=range]{accent-color:#3b82f6;width:100%}.render-color-control{grid-template-columns:minmax(0,1fr) auto 34px}.render-color-control code{color:#71717a;font-family:inherit;font-size:11px}.render-color-control input[type=color]{cursor:pointer;background:#fff;border:1px solid #d4d4d8;border-radius:6px;width:34px;height:30px;padding:2px}.render-color-control.compact{color:#52525b;padding-left:24px}.render-toggle{color:#27272a;align-items:center;gap:8px;font-size:12px;display:flex}.render-toggle input{accent-color:#18181b}.render-reset-view{color:#3f3f46;background:#fafafa;border:1px solid #d4d4d8;border-radius:6px;min-height:32px;font-size:12px}.render-workspace{background:#f7f7f8;grid-template-rows:44px minmax(0,1fr) 36px;min-width:0;min-height:0;padding:18px 24px 0;display:grid}.render-preview-tabs{align-items:end;gap:4px;display:flex}.render-preview-tabs button{color:#71717a;background:0 0;border:1px solid #0000;border-bottom:0;border-radius:7px 7px 0 0;align-items:center;gap:7px;min-height:34px;padding:0 12px;font-size:12px;display:inline-flex}.render-preview-tabs button[aria-selected=true]{color:#18181b;background:#fff;border-color:#d4d4d8;box-shadow:0 -2px 8px #00000008}.live-dot{background:#22c55e;border-radius:50%;width:7px;height:7px}.render-preview-stage{background:#eee;border:1px solid #d4d4d8;min-height:0;position:relative;overflow:hidden}.render-preview-stage canvas,.render-preview-stage>img{width:100%;height:100%;display:none;position:absolute;inset:0}.render-preview-stage canvas{cursor:grab;touch-action:none}.render-preview-stage canvas:active{cursor:grabbing}.render-preview-stage>img{object-fit:contain;background:#fff}.render-preview-stage canvas.active,.render-preview-stage>img.active{display:block}.render-preview-empty{color:#a1a1aa;place-items:center;gap:8px;font-size:12px;display:grid}.render-preview-footer{color:#71717a;justify-content:space-between;align-items:center;font-size:11px;display:flex}.render-progress{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#18181be0;border:1px solid #ffffff73;border-radius:8px;grid-template-columns:1fr auto;gap:5px 10px;padding:10px;font-size:12px;display:grid;position:absolute;bottom:12px;left:12px;right:12px}.render-progress progress{accent-color:#818cf8;grid-column:1/-1;width:100%;height:5px}.render-progress small{grid-area:1/2}.render-dialog>.render-message{margin:0 18px 10px}.render-dialog>.render-actions{border-top:1px solid #e4e4e7;min-height:62px;margin:0;padding:12px 18px}.render-message{border-radius:6px;margin:12px 0 0;padding:8px 10px;font-size:12px;line-height:1.4}.render-message.error{color:#b91c1c;background:#fef2f2}.render-message.warning{color:#92400e;background:#fffbeb}.render-actions button{align-items:center;gap:6px;display:inline-flex}.dialog-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.dialog-header>div{align-items:center;gap:10px;min-width:0;display:flex}.dialog-header h2{margin:0;font-size:18px;line-height:1}.restore-defaults{color:#71717a;background:#fff;border:1px solid #e5e5e5;border-radius:6px;align-items:center;gap:6px;min-height:24px;padding:0 8px;font-size:12px;display:inline-flex}.dialog-close{color:#71717a;border-radius:4px;width:24px;min-height:24px}.artwork-align-dialog{color:#18181b;background:#fff;border:1px solid #e5e5e5;border-radius:12px;grid-template-rows:auto minmax(0,1fr);width:min(1180px,100vw - 32px);height:min(800px,100dvh - 40px);display:grid;overflow:hidden;box-shadow:0 18px 55px #0000002e}.artwork-align-dialog>.dialog-header{border-bottom:1px solid #e4e4e7;padding:12px 16px}.artwork-align-layout{grid-template-columns:minmax(0,1fr) 300px;min-height:0;display:grid}.artwork-align-hint{color:#71717a;margin:0 0 12px;font-size:12px;line-height:1.45}.artwork-align-stage{background-color:#fafafa;background-image:linear-gradient(45deg,#f4f4f5 25%,#0000 25%),linear-gradient(-45deg,#f4f4f5 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#f4f4f5 75%),linear-gradient(-45deg,#0000 75%,#f4f4f5 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-repeat:repeat,repeat,repeat,repeat;background-size:16px 16px;background-attachment:scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box;min-height:0;display:grid;position:relative;overflow:hidden}.artwork-align-svg{touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%}.artwork-align-zoom{z-index:2;flex-direction:column;gap:6px;display:flex;position:absolute;bottom:10px;left:10px}.artwork-align-zoom .icon-button{color:#18181b;background:#fff;border:1px solid #d4d4d8;border-radius:8px;width:32px;height:32px;min-height:32px;box-shadow:0 4px 12px #18181b1f}.artwork-align-empty{color:#71717a;margin:auto;padding:24px;font-size:14px}.artwork-align-face{fill:#f3efe4}.artwork-align-outline{fill:none;stroke:#3f3f46;stroke-width:.7px;vector-effect:non-scaling-stroke;pointer-events:none}.artwork-align-sheet{pointer-events:none}.artwork-align-hit{fill:#0000;stroke:#18181b;stroke-dasharray:5 4;stroke-width:1.1px;vector-effect:non-scaling-stroke;cursor:move}.artwork-align-rotate-arm{stroke:#18181b;stroke-width:1.25px;vector-effect:non-scaling-stroke;pointer-events:none}.artwork-align-handle{fill:#fff;stroke:#18181b;stroke-width:1.25px;vector-effect:non-scaling-stroke;cursor:nwse-resize}.artwork-align-handle-x{cursor:ew-resize}.artwork-align-handle-y{cursor:ns-resize}.artwork-align-handle-nwse{cursor:nwse-resize}.artwork-align-handle-nesw{cursor:nesw-resize}.artwork-align-controls{background:#fff;border-left:1px solid #e4e4e7;flex-direction:column;min-height:0;padding:14px 16px 16px;display:flex;overflow:hidden}.artwork-align-sides{grid-template-columns:1fr 1fr;gap:6px;margin-bottom:10px;display:grid}.artwork-align-sides button{color:#52525b;background:#fff;border:1px solid #e4e4e7;border-radius:6px;min-height:32px;padding:0 10px;font-size:12px}.artwork-align-sides button.active{color:#fff;background:#18181b;border-color:#18181b}.artwork-align-fields{flex:1;min-height:0;padding-right:2px;overflow-y:auto}.artwork-align-sliders{gap:12px;display:grid}.artwork-align-sliders label{color:#52525b;grid-template-columns:minmax(0,1fr) 4.75rem;grid-template-areas:"name value""slider slider";gap:4px 8px;font-size:11px;display:grid}.artwork-align-sliders label>span{grid-area:name;align-self:center}.artwork-align-sliders input[type=number]{color:#18181b;border:1px solid #e4e4e7;border-radius:6px;grid-area:value;width:100%;min-height:28px;padding:0 6px;font-size:12px}.artwork-align-sliders input[type=range]{grid-area:slider;width:100%}.artwork-align-face-target{fill:#e6ecfb}.artwork-align-hit-idle{stroke:#0000}.artwork-align-hit-idle:hover{stroke:#71717a}.artwork-align-layers{margin-bottom:14px}.artwork-align-layers h3,.artwork-align-text h3{color:#71717a;letter-spacing:.055em;text-transform:uppercase;margin:0 0 8px;font-size:10px;font-weight:650}.artwork-align-add{grid-template-columns:1fr 1fr;gap:6px;margin-bottom:8px;display:grid}.artwork-align-add-button{color:#18181b;cursor:pointer;background:#fff;border:1px solid #e4e4e7;border-radius:6px;justify-content:center;align-items:center;gap:6px;min-height:30px;padding:0 8px;font-size:12px;display:inline-flex;position:relative}.artwork-align-add-button:hover:not(:disabled):not(.disabled){border-color:#a1a1aa}.artwork-align-add-button.disabled,.artwork-align-add-button:disabled{opacity:.5;cursor:default}.artwork-align-add-button input[type=file]{opacity:0;cursor:pointer;position:absolute;inset:0}.artwork-align-placement{gap:12px;display:grid}.artwork-align-layer-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.artwork-align-layer-list li{background:#fff;border:1px solid #e4e4e7;border-radius:6px;grid-template-columns:minmax(0,1fr) repeat(4,26px);align-items:center;gap:2px;padding:3px;display:grid}.artwork-align-layer-list li.selected{background:#f4f4f5;border-color:#18181b}.artwork-align-layer-list .icon-button{color:#3f3f46;background:0 0;border:0;border-radius:4px;width:26px;height:26px;min-height:26px}.artwork-align-layer-list .icon-button:disabled{opacity:.3}.artwork-align-layer-name{color:#18181b;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;min-width:0;padding:0;font-size:12px;display:flex}.artwork-align-layer-name>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.artwork-align-layer-name .muted{color:#a1a1aa;text-decoration:line-through}.artwork-align-layer-thumb{background:#f4f4f5;border-radius:4px;flex:none;place-items:center;width:26px;height:26px;display:grid;overflow:hidden}.artwork-align-layer-thumb img{object-fit:contain;max-width:100%;max-height:100%}.artwork-align-text{gap:8px;margin-bottom:14px;display:grid}.artwork-align-text label{color:#52525b;gap:4px;font-size:11px;display:grid}.artwork-align-text textarea{resize:vertical;color:#18181b;width:100%;font:inherit;border:1px solid #e4e4e7;border-radius:6px;padding:6px 8px;font-size:13px}.artwork-align-text-row{align-items:end;gap:12px;display:flex}.artwork-align-text-row input[type=color]{background:#fff;border:1px solid #e4e4e7;border-radius:6px;width:44px;height:28px;padding:2px}.artwork-align-text .artwork-align-check{align-items:center;gap:6px;min-height:28px;display:flex}.artwork-align-size{grid-template-columns:1fr 1fr;gap:10px;display:grid}.artwork-align-size label{color:#52525b;gap:4px;font-size:11px;display:grid}.artwork-align-size input{color:#18181b;border:1px solid #e4e4e7;border-radius:6px;width:100%;min-height:28px;padding:0 6px;font-size:12px}.artwork-align-box{border-top:1px solid #e4e4e7;margin-top:16px;padding-top:12px}.artwork-align-box h3{color:#71717a;letter-spacing:.055em;text-transform:uppercase;margin:0 0 10px;font-size:10px;font-weight:650}.artwork-align-box-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.artwork-align-box-grid label{color:#52525b;gap:4px;font-size:11px;display:grid}.artwork-align-box-grid input{color:#18181b;border:1px solid #e4e4e7;border-radius:6px;width:100%;min-height:32px;padding:0 8px;font-size:13px}.artwork-align-controls .dialog-actions{border-top:1px solid #e4e4e7;margin:12px 0 0;padding-top:12px}@media (width<=860px){.artwork-align-layout{grid-template-rows:minmax(220px,1fr) minmax(240px,46%);grid-template-columns:1fr}.artwork-align-controls{border-top:1px solid #e4e4e7;border-left:0}}.dialog-copy{margin:14px 0 10px;font-size:14px;line-height:1.45}.info-bubble{color:#1f2937;background:#dbeafe8c;border:1px solid #3b82f64d;border-radius:8px;align-items:flex-start;gap:8px;margin-bottom:14px;padding:8px 10px;font-size:12px;line-height:1.35;display:flex}.preference-section{border-top:1px solid #e5e5e5;padding:10px 0}.preference-section h3{color:#71717a;letter-spacing:.02em;text-transform:uppercase;margin:0 0 8px;font-size:10px;font-weight:600}.preference-row{justify-content:space-between;align-items:center;gap:14px;min-height:36px;font-size:14px;display:flex}.preference-row>span:first-child{flex:1;min-width:0}.preference-row select{width:fit-content;max-width:210px}.preference-row input[type=number]{width:96px}.preference-row input[type=checkbox]{accent-color:#18181b;width:32px;height:18px}.preference-row input[type=color]{background:#fff;border:1px solid #d4d4d8;border-radius:6px;width:42px;height:28px;padding:2px}.segmented-icons{gap:2px;display:flex}.segmented-icons button{color:#71717a;text-transform:capitalize;border-radius:6px;min-height:32px;padding:0 8px;font-size:12px}.segmented-icons button.selected{color:#18181b;background:#f4f4f5;box-shadow:inset 0 0 0 1px #d4d4d8}.dialog-actions{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.dialog-actions button{background:#fff;border:1px solid #d4d4d8;border-radius:6px;min-height:34px;padding:0 10px}.dialog-actions button:last-child{color:#fff;background:#18181b}.restore-notice,.import-notice{z-index:40;color:#3f3f46;background:#fffffff5;border:1px solid #d4d4d8;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-size:12px;display:flex;position:fixed;top:48px;box-shadow:0 8px 24px #0000001f}.restore-notice{max-width:calc(100vw - 24px);left:50%;transform:translate(-50%)}.import-notice{max-width:min(440px,100vw - 24px);right:12px}.import-notice.success{color:#166534;background:#f0fdf4;border-color:#86efac}.import-notice.error{color:#991b1b;background:#fef2f2;border-color:#fca5a5}.restore-notice button,.import-notice button{border-radius:5px;min-height:24px;padding:0 6px}.mobile-screen-notice,.hidden-file{display:none}.app-shell.sidebar-collapsed{grid-template-columns:49px minmax(0,1fr)}.app-shell.sidebar-collapsed .sidebar{background:#fff;overflow:hidden}.app-shell.sidebar-collapsed .brand-row{grid-template-columns:1fr;justify-items:center;padding:0}.app-shell.sidebar-collapsed .brand-row>div,.app-shell.sidebar-collapsed .section-title,.app-shell.sidebar-collapsed .workflow-panel,.app-shell.sidebar-collapsed .draft-section,.app-shell.sidebar-collapsed footer,.app-shell.sidebar-collapsed .workflow-item>span:not(.ui-icon),.app-shell.sidebar-collapsed .step-select>span:not(.ui-icon):not(.step-status),.app-shell.sidebar-collapsed .step-select strong,.app-shell.sidebar-collapsed .section-actions,.app-shell.sidebar-collapsed .step-remove,.app-shell.sidebar-collapsed .add-step>span:not(.ui-icon){display:none!important}.app-shell.sidebar-collapsed .workflow,.app-shell.sidebar-collapsed .control-section{justify-items:center;gap:2px;width:100%;padding:8px 7px;display:grid}.app-shell.sidebar-collapsed .control-section{border-top:1px solid #e5e5e5}.app-shell.sidebar-collapsed .workflow-item,.app-shell.sidebar-collapsed .step-row,.app-shell.sidebar-collapsed .step-row .step-select,.app-shell.sidebar-collapsed .add-step{justify-content:center;align-items:center;gap:0;width:34px;min-width:34px;min-height:34px;margin:0;padding:0;font-size:0;display:inline-flex}.app-shell.sidebar-collapsed .keyframe-actions{flex-direction:column;align-items:center;gap:2px;width:34px;display:flex}.app-shell.sidebar-collapsed .step-status{position:absolute;top:5px;right:4px}.app-shell.sidebar-collapsed .step-row[data-playback-active=true]:before{top:5px;bottom:5px;left:-7px}@media (width<=767px){.app-shell{height:calc(100dvh - var(--mobile-notice-height,0px));grid-template-columns:49px minmax(0,1fr)}.app-shell:not(.sidebar-collapsed){grid-template-columns:0 minmax(0,1fr)}.app-shell:not(.sidebar-collapsed) .sidebar{z-index:70;top:0;bottom:var(--mobile-notice-height,0px);width:min(288px,80vw);position:fixed;left:0;box-shadow:0 12px 40px #0000003d}.sidebar-edge-toggle{display:none}.sidebar-scrim{z-index:65;background:#18181b52;position:fixed;inset:0}.topbar{align-items:center;display:flex}.topbar .menu-group{gap:2px;min-width:0;padding:0 4px}.topbar .menu-host>button{padding:0 6px;font-size:13px}.inspector.open{width:min(320px,100% - 16px);max-height:calc(100dvh - 112px);top:44px;bottom:8px;right:8px}.mobile-screen-notice{z-index:60;color:#18181b;background:#dbeafe;border-top:1px solid #bfdbfe;grid-template-columns:28px minmax(0,1fr) 28px;align-items:center;gap:8px;min-height:52px;padding:8px 14px;font-size:14px;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-screen-notice button{justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}}@media (width<=640px){.render-dialog{border:0;border-radius:0;width:100%;height:100dvh}.render-layout{grid-template-columns:1fr;overflow-y:auto}.render-settings{border-bottom:1px solid #e4e4e7;border-right:0;max-height:42dvh}.render-workspace{min-height:420px;padding:12px 12px 0}}@media (width<=639px){.dialog-backdrop{place-items:end stretch}.preferences-dialog{width:100%;max-height:100dvh;box-shadow:none;border:0;border-radius:8px 8px 0 0;animation:.2s ease-out dialog-sheet-in}}@keyframes dialog-sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}.yield-estimate{color:#18181b;background:#fafafa;border:1px solid #e4e4e7;border-radius:6px;flex-direction:column;gap:6px;margin-top:4px;padding:8px 10px;font-size:12px;display:flex}.yield-estimate-title{color:#18181b;font-weight:600}.yield-estimate dl{grid-template-columns:auto minmax(0,1fr);gap:4px 10px;margin:0;display:grid}.yield-estimate dt{color:#52525b;white-space:nowrap}.yield-estimate dd small,.yield-estimate-load small{color:#a1a1aa;font-size:11px}.yield-estimate dd{text-align:right;font-variant-numeric:tabular-nums;flex-direction:column;align-items:flex-end;margin:0;display:flex}.yield-estimate .yield-estimate-container{color:#52525b;flex-direction:column;gap:4px;display:flex}.yield-estimate-load{color:#18181b;font-variant-numeric:tabular-nums;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.yield-estimate-warning{color:#b45309;font-weight:600}.yield-estimate-note{color:#71717a;margin:0;font-size:11px;line-height:1.4}.dieline-review-dialog{color:#18181b;background:#fff;border:1px solid #e5e5e5;border-radius:12px;grid-template-rows:auto minmax(0,1fr) auto;width:min(1040px,100vw - 32px);max-height:calc(100dvh - 40px);padding:14px 18px;display:grid;overflow:hidden;box-shadow:0 18px 55px #0000002e}.dieline-review-file{color:#71717a;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.dieline-review-body{grid-template-columns:minmax(0,1fr) 360px;gap:16px;min-height:0;margin-top:12px;display:grid}.dieline-review-preview{background:#fafafa;border:1px solid #e4e4e7;border-radius:8px;place-items:stretch stretch;min-height:320px;padding:12px;display:grid}.dieline-review-preview svg{width:100%;height:100%;max-height:60dvh}.dieline-review-side{flex-direction:column;gap:10px;min-height:0;display:flex;overflow-y:auto}.dieline-review-hint{color:#52525b;margin:0;font-size:12px;line-height:1.45}.dieline-review-strokes{gap:6px;margin:0;padding:0;list-style:none;display:grid}.dieline-review-strokes li{border:1px solid #e4e4e7;border-radius:8px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 8px;display:grid}.dieline-review-strokes li:hover{border-color:#a1a1aa}.dieline-review-swatch{border-top:3px solid;height:0}.dieline-review-swatch.dashed{border-top-style:dashed}.dieline-review-stroke-meta{gap:2px;min-width:0;display:grid}.dieline-review-stroke-meta strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.dieline-review-stroke-meta small{color:#71717a;font-size:11px}.dieline-review-roles{border:1px solid #d4d4d8;border-radius:6px;display:inline-flex;overflow:hidden}.dieline-review-roles button{color:#52525b;background:#fff;border-left:1px solid #e4e4e7;min-height:28px;padding:0 8px;font-size:12px}.dieline-review-roles button:first-child{border-left:0}.dieline-review-roles button.selected{color:#fff;background:#18181b}.dieline-review-roles button.role-ignore.selected{background:#71717a}.dieline-review-reset{color:#2563eb;background:0 0;border:0;align-self:flex-start;padding:0;font-size:12px;text-decoration:underline}.dieline-review-status{color:#166534;background:#f0fdf4;border-radius:6px;margin:0;padding:8px 10px;font-size:13px}.dieline-review-status.error{color:#b91c1c;background:#fef2f2}.dieline-review-dialog .dialog-actions button:disabled{opacity:.45;cursor:not-allowed}@media (width<=760px){.dieline-review-body{grid-template-columns:minmax(0,1fr)}.dieline-review-preview{min-height:200px}.dieline-review-preview svg{max-height:32dvh}}.yield-estimate select{width:100%;min-width:0}.auth-screen,.home{--home-ink:#18181b;--home-muted:#71717a;--home-line:#e4e4e7;--home-surface:#fff;--home-canvas:#f7f7f8;--home-kraft:#b88a5a;--home-kraft-soft:#f3ebe1;--home-crease:#e5484d;--home-focus:0 0 0 3px #18181b1f;color:var(--home-ink);font-size:14px}@keyframes home-spin{to{transform:rotate(360deg)}}@keyframes home-shimmer{0%{background-position:-320px 0}to{background-position:320px 0}}.auth-screen{background:var(--home-surface);grid-template-columns:minmax(0,1.05fr) minmax(360px,1fr);width:100%;height:100%;min-height:100dvh;display:grid;overflow:auto}.auth-showcase{color:#fafafa;background:linear-gradient(#ffffff0a 1px,#0000 1px) 0 0/24px 24px,linear-gradient(90deg,#ffffff0a 1px,#0000 1px) 0 0/24px 24px,radial-gradient(120% 90% at 20% 0,#2a2a30 0%,#141417 60%);flex-direction:column;justify-content:space-between;gap:32px;min-height:100%;padding:40px 48px;display:flex;position:relative;overflow:hidden}.auth-showcase-brand{align-items:center;gap:10px;font-size:18px;display:flex}.auth-showcase-brand img{object-fit:cover;background:#fff;border-radius:50%;width:34px;height:34px}.auth-art{align-self:center;width:min(460px,100%)}.auth-art path{fill:none;stroke-linecap:round;stroke-linejoin:round}.auth-art-cut path{stroke:#fafafad9;stroke-width:1.4px}.auth-art-crease path{stroke:var(--home-crease);stroke-dasharray:5 4;stroke-width:1.2px}.auth-art-dims path{stroke:#fafafa59;stroke-width:1px}.auth-showcase-copy h2{letter-spacing:-.02em;max-width:420px;margin:0 0 10px;font-size:28px;font-weight:650;line-height:1.15}.auth-showcase-copy p{color:#fafafaa6;max-width:420px;margin:0;font-size:14px;line-height:1.55}.auth-panel{flex-direction:column;min-height:100%;padding:24px 32px 28px;display:flex}.auth-panel-top{justify-content:flex-end;align-items:center;gap:12px;display:flex}.auth-panel-mobile-brand{align-items:center;gap:8px;margin-right:auto;font-size:16px;display:none}.auth-panel-mobile-brand img{object-fit:cover;border-radius:50%;width:30px;height:30px}.auth-form{gap:16px;width:min(380px,100%);margin:auto;padding:24px 0;display:grid}.auth-form header{margin-bottom:8px}.auth-form h1{letter-spacing:-.02em;margin:0 0 6px;font-size:26px;font-weight:650}.auth-form header p{color:var(--home-muted);margin:0}.auth-field{color:#3f3f46;gap:6px;font-size:12px;font-weight:600;display:grid}.auth-input{background:var(--home-surface);height:44px;color:var(--home-muted);border:1px solid #d4d4d8;border-radius:10px;align-items:center;gap:10px;padding:0 6px 0 12px;transition:border-color .12s,box-shadow .12s;display:flex}.auth-input:focus-within{border-color:var(--home-ink);box-shadow:var(--home-focus);color:var(--home-ink)}.auth-input input{width:100%;min-width:0;height:100%;color:var(--home-ink);background:0 0;border:0;outline:none;padding:0;font-size:14px;font-weight:400}.auth-reveal{width:32px;height:32px;color:var(--home-muted);border-radius:8px;flex:0 0 32px;place-items:center;display:grid}.auth-reveal:hover{color:var(--home-ink);background:#f4f4f5}.auth-reveal:focus-visible,.auth-submit:focus-visible{box-shadow:var(--home-focus);outline:none}.auth-error{color:#b42318;background:#fef3f2;border:1px solid #fecdca;border-radius:10px;align-items:flex-start;gap:8px;margin:0;padding:10px 12px;font-size:13px;line-height:1.4;display:flex}.auth-submit{background:var(--home-ink);color:#fff;border-radius:10px;justify-content:center;align-items:center;gap:8px;height:44px;margin-top:4px;font-size:14px;font-weight:600;transition:background .12s;display:inline-flex}.auth-submit:hover:not(:disabled){background:#27272a}.auth-submit:disabled{opacity:.8}.auth-submit .ui-icon:first-child:not(:last-child){animation:.9s linear infinite home-spin}.auth-footnote{color:var(--home-muted);text-align:center;margin:0;font-size:12px}@media (width<=860px){.auth-screen{grid-template-columns:minmax(0,1fr)}.auth-showcase{display:none}.auth-panel{padding:20px 16px 24px}.auth-panel-mobile-brand{display:flex}}.home{background:var(--home-canvas);flex-direction:column;width:100%;height:100%;min-height:100dvh;display:flex;overflow:auto}.home-topbar{z-index:5;border-bottom:1px solid var(--home-line);-webkit-backdrop-filter:saturate(160%)blur(10px);backdrop-filter:saturate(160%)blur(10px);background:#ffffffe0;justify-content:space-between;align-items:center;gap:12px;min-height:60px;padding:10px max(16px,50% - 560px);display:flex;position:sticky;top:0}.home-brand{align-items:center;gap:10px;font-size:17px;display:flex}.home-brand img{object-fit:cover;background:#fff;border-radius:50%;width:32px;height:32px}.home-topbar-actions{align-items:center;gap:10px;min-width:0;display:flex}.home-user{border-left:1px solid var(--home-line);align-items:center;gap:8px;min-width:0;padding-left:10px;font-size:13px;font-weight:600;display:flex}.home-user-name{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.home-avatar{background:var(--home-kraft-soft);color:#7c4a22;border-radius:50%;flex:0 0 30px;place-items:center;width:30px;height:30px;font-size:13px;font-weight:700;display:grid}.home-ghost-button{border:1px solid var(--home-line);background:var(--home-surface);color:#3f3f46;border-radius:8px;align-items:center;gap:6px;height:32px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.home-ghost-button:hover{color:var(--home-ink);background:#f4f4f5}.home-content{gap:36px;width:min(1120px,100%);margin:0 auto;padding:32px 16px 56px;display:grid}.home-hero{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;display:grid}.home-hero h1{letter-spacing:-.02em;margin:0 0 6px;font-size:30px;font-weight:650;line-height:1.15}.home-hero p{max-width:560px;color:var(--home-muted);margin:0;font-size:15px;line-height:1.5}.home-quick-actions{gap:10px;display:flex}.home-quick-action{border:1px solid var(--home-line);background:var(--home-surface);text-align:left;border-radius:12px;align-items:center;gap:12px;min-width:210px;padding:12px 14px;transition:border-color .12s,box-shadow .12s,transform .12s;display:flex}.home-quick-action:hover{border-color:#d4d4d8;transform:translateY(-1px);box-shadow:0 6px 18px #18181b12}.home-quick-action>span:last-child{gap:2px;display:grid}.home-quick-action strong{font-size:14px;font-weight:600}.home-quick-action small{color:var(--home-muted);font-size:12px}.home-quick-icon{background:var(--home-ink);color:#fff;border-radius:10px;flex:0 0 38px;place-items:center;width:38px;height:38px;display:grid}.home-alert{color:#b42318;background:#fef3f2;border:1px solid #fecdca;border-radius:10px;align-items:center;gap:10px;margin:0;padding:10px 12px;font-size:13px;display:flex}.home-alert span{flex:auto}.home-alert button{border-radius:6px;place-items:center;width:26px;height:26px;display:grid}.home-alert button:hover{background:#b4231814}.home-section{gap:14px;display:grid}.home-section-heading{justify-content:space-between;align-items:center;gap:12px;min-height:34px;display:flex}.home-section-heading h2{align-items:center;gap:8px;margin:0;font-size:17px;font-weight:650;display:flex}.home-count{color:#3f3f46;background:#e4e4e7;border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600}.home-empty{color:var(--home-muted);margin:0;font-size:13px}.home-empty-projects{background:#fff9;border:1px dashed #d4d4d8;border-radius:12px;align-items:center;gap:14px;padding:18px 20px;display:flex}.home-empty-projects>span{gap:3px;display:grid}.home-empty-projects strong{color:var(--home-ink);font-size:14px;font-weight:600}.home-empty-projects small{font-size:12px}.home-project-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.home-project-card{border:1px solid var(--home-line);background:var(--home-surface);border-radius:12px;align-items:center;min-width:0;transition:border-color .12s,box-shadow .12s;display:flex;position:relative}.home-project-card:hover{border-color:#d4d4d8;box-shadow:0 6px 18px #18181b0f}.home-project-open{text-align:left;border-radius:12px;flex:auto;align-items:center;gap:12px;min-width:0;padding:12px;display:flex}.home-project-icon{background:var(--home-kraft-soft);color:#7c4a22;border-radius:10px;flex:0 0 40px;place-items:center;width:40px;height:40px;display:grid}.home-project-copy{gap:3px;min-width:0;display:grid}.home-project-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.home-project-copy small{color:var(--home-muted);font-size:12px}.home-project-actions{background:var(--home-surface);box-shadow:-12px 0 12px var(--home-surface);opacity:0;border-radius:10px;gap:2px;padding:3px;transition:opacity .12s;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.home-project-card:hover .home-project-actions,.home-project-card:focus-within .home-project-actions{opacity:1}@media (hover:none){.home-project-actions{opacity:1}}.home-icon-button{width:30px;height:30px;color:var(--home-muted);border-radius:8px;place-items:center;display:grid}.home-icon-button:hover{color:var(--home-ink);background:#f4f4f5}.home-icon-button-danger:hover{color:#b42318;background:#fef3f2}.home-section-heading-tools{flex-wrap:wrap}.home-template-tools{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.home-filter{border:1px solid var(--home-line);background:var(--home-surface);border-radius:10px;gap:2px;padding:3px;display:inline-flex}.home-filter button{color:#52525b;white-space:nowrap;border-radius:7px;align-items:center;gap:6px;height:28px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.home-filter button span{color:#a1a1aa;font-weight:500}.home-filter button:hover{color:var(--home-ink)}.home-filter button.active{background:var(--home-ink);color:#fff}.home-filter button.active span{color:#ffffffa6}.home-search{border:1px solid var(--home-line);background:var(--home-surface);width:220px;height:36px;color:var(--home-muted);border-radius:10px;align-items:center;gap:8px;padding:0 10px;display:flex}.home-search:focus-within{border-color:var(--home-ink);box-shadow:var(--home-focus)}.home-search input{width:100%;min-width:0;height:100%;color:var(--home-ink);background:0 0;border:0;outline:none;padding:0;font-size:13px}.home-template-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;display:grid}.home-template-card{min-width:0}.home-template-open{border:1px solid var(--home-line);background:var(--home-surface);text-align:left;border-radius:14px;flex-direction:column;width:100%;height:100%;transition:border-color .14s,box-shadow .14s,transform .14s;display:flex;overflow:hidden}.home-template-open:hover:not(:disabled){border-color:#d4d4d8;transform:translateY(-2px);box-shadow:0 10px 28px #18181b17}.home-template-open:focus-visible,.home-quick-action:focus-visible,.home-project-open:focus-visible,.home-filter button:focus-visible{box-shadow:var(--home-focus);outline:none}.home-template-open:disabled{opacity:.6}.home-template-thumb{border-bottom:1px solid var(--home-line);color:#a1a1aa;background:linear-gradient(#eeeef0 1px,#0000 1px) 0 0/16px 16px,linear-gradient(90deg,#eeeef0 1px,#0000 1px) 0 0/16px 16px,#fbfbfb;grid-template:minmax(0,1fr)/minmax(0,1fr);place-items:center;height:160px;padding:14px;display:grid;overflow:hidden}.home-template-thumb img{object-fit:contain;width:100%;height:100%;min-height:0;transition:transform .2s;display:block}.home-template-open:hover:not(:disabled) .home-template-thumb img{transform:scale(1.03)}.home-template-body{flex:auto;align-content:start;gap:6px;padding:14px 16px 8px;display:grid}.home-template-meta{justify-content:space-between;align-items:center;gap:8px;display:flex}.home-template-code{text-overflow:ellipsis;white-space:nowrap;color:#7c4a22;letter-spacing:.05em;text-transform:uppercase;min-width:0;font-size:11px;font-weight:700;overflow:hidden}.home-material{white-space:nowrap;border-radius:999px;flex:none;padding:2px 8px;font-size:11px;font-weight:600}.home-material-corrugated{background:var(--home-kraft-soft);color:#7c4a22}.home-material-card{color:#3e5368;background:#eef2f6}.home-template-body strong{font-size:15px;font-weight:650;line-height:1.25}.home-template-body p{color:#52525b;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12.5px;line-height:1.45;display:-webkit-box;overflow:hidden}.home-template-cta{color:var(--home-ink);align-items:center;gap:6px;padding:6px 16px 16px;font-size:13px;font-weight:600;display:inline-flex}.home-template-cta .ui-icon{transition:transform .14s}.home-template-open:hover:not(:disabled) .home-template-cta .ui-icon{transform:translate(3px)}.home-template-cta .ui-icon:first-child{animation:none}.home-template-open:disabled .home-template-cta .ui-icon:first-child{animation:.9s linear infinite home-spin}.home-skeleton{background:linear-gradient(90deg,#ededf0 0%,#f6f6f7 50%,#ededf0 100%) 0 0/640px 100%;border-radius:12px;animation:1.2s ease-in-out infinite home-shimmer}.home-skeleton-project{height:66px}.home-skeleton-template{border-radius:14px;height:290px}@media (width<=860px){.home-hero{grid-template-columns:minmax(0,1fr);align-items:start}.home-quick-actions{flex-wrap:wrap}.home-quick-action{flex:220px;min-width:0}}@media (width<=560px){.home-content{gap:28px;padding-top:24px}.home-hero h1{font-size:24px}.home-user-name,.home-ghost-button span{display:none}.home-template-tools,.home-search{width:100%}.home-filter{overflow-x:auto}}@media (prefers-reduced-motion:reduce){.home *,.auth-screen *{transition:none!important;animation:none!important}}.board-engineering label{color:#52525b;flex-direction:column;gap:2px;min-width:0;font-size:11px;display:flex}.board-engineering input,.board-engineering select{width:100%;min-width:0}.board-section-title{color:#18181b;border-top:1px solid #e4e4e7;margin-top:4px;padding-top:6px;font-weight:600}.board-field-row{grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:6px;display:grid}.board-fields,.board-custom-grade{flex-direction:column;gap:4px;display:flex}.board-paper-head,.board-paper-row{grid-template-columns:minmax(0,1fr) 58px 58px;align-items:end;gap:4px;display:grid}.board-paper-row input{padding-left:4px;padding-right:2px}.board-paper-head{color:#71717a;font-size:10px}.board-link{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.board-engineering dt.board-sub{color:#a1a1aa;padding-left:10px}.board-plans{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px;display:grid}.board-plan{background:#fff;border:1px solid #e4e4e7;border-radius:6px;flex-direction:column;gap:4px;padding:6px;display:flex}.board-plan-head{justify-content:space-between;align-items:center;gap:4px;display:flex}.board-badge{white-space:nowrap;border-radius:999px;padding:1px 6px;font-size:10px;font-weight:600}.board-badge.ok{color:#166534;background:#dcfce7}.board-badge.fail{color:#991b1b;background:#fee2e2}.board-layer-svg{width:100%;height:auto;max-height:160px}.board-layer-pallet{fill:#e7d9c4;stroke:#a08060}.board-layer-box{fill:#c89c66;fill-opacity:.85;stroke:#6b4a26}.board-layer-box.rotated{fill:#b5844f}.board-layer-even{fill:none;stroke:#1d4ed8;stroke-opacity:.7}.job-ticket-dialog{color:#18181b;background:#fff;border-radius:12px;width:min(560px,100vw - 32px);max-height:calc(100dvh - 48px);padding:16px 16px 14px;overflow-y:auto;box-shadow:0 18px 50px #18181b2e}.job-ticket-heading{flex-direction:column;align-items:flex-start!important;gap:4px!important}.job-ticket-heading p{color:#71717a;margin:0;font-size:12px}.job-ticket-fields{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px;margin:14px 0 0;padding:0;display:grid}.job-ticket-fields>label{color:#3f3f46;gap:5px;font-size:12px;font-weight:600;display:grid}.job-ticket-fields input:not([type=checkbox]),.job-ticket-fields textarea{width:100%;min-height:34px;font:inherit;background:#fff;border:1px solid #d4d4d8;border-radius:8px;padding:0 10px;font-weight:400}.job-ticket-fields textarea{resize:vertical;padding:8px 10px}.job-ticket-wide{grid-column:1/-1}.job-ticket-route{color:#3f3f46;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:12px;display:flex}.job-ticket-route>span{flex-basis:100%;font-weight:600}.job-ticket-route label{align-items:center;gap:6px;font-size:13px;display:inline-flex}.job-ticket-figures{background:#fafafa;border:1px solid #e4e4e7;border-radius:8px;margin-top:14px;padding:8px 10px;font-size:12px}.job-ticket-figures>span{color:#52525b;font-weight:600}.job-ticket-figures dl{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;margin:6px 0 0;display:grid}.job-ticket-figures dt{color:#52525b}.job-ticket-figures dd{text-align:right;font-variant-numeric:tabular-nums;margin:0;font-weight:600}.job-ticket-figures p{color:#b45309;margin:6px 0 0}@media (width<=639px){.job-ticket-dialog{border-radius:12px 12px 0 0;width:100%;max-height:100dvh}.job-ticket-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}.auth-guest{gap:14px;display:grid}.auth-divider{color:var(--home-muted);align-items:center;gap:12px;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--home-line);flex:1;height:1px}.auth-guest-button{border:1px solid var(--home-line);background:var(--home-surface);color:var(--home-ink);text-align:left;border-radius:10px;align-items:center;gap:12px;padding:11px 14px;transition:border-color .12s,box-shadow .12s;display:flex}.auth-guest-button:hover{border-color:var(--home-kraft);box-shadow:0 6px 18px #18181b12}.auth-guest-button:focus-visible{box-shadow:var(--home-focus);outline:none}.auth-guest-button>span{flex:1;gap:2px;display:grid}.auth-guest-button strong{font-size:14px;font-weight:600}.auth-guest-button small{color:var(--home-muted);font-size:12px}.auth-guest-button>.ui-icon:first-child{color:var(--home-kraft)}.home-guest-steps{gap:8px;margin:0;padding:0;list-style:none;display:grid}.home-guest-steps li{color:#3f3f46;align-items:center;gap:10px;font-size:13px;font-weight:600;display:flex}.home-guest-steps li>span{background:var(--home-kraft-soft);color:#7c4a22;border-radius:50%;flex:0 0 24px;place-items:center;width:24px;height:24px;font-size:12px;font-weight:700;display:grid}.topbar .quote-button{color:#fff;background:#18181b;border:0;border-radius:8px;align-items:center;gap:6px;width:auto;height:32px;padding:0 14px;font-weight:600;display:inline-flex}.topbar .quote-button:hover{background:#27272a}.quote-summary{margin-top:12px}.quote-summary dl{grid-template-columns:auto minmax(0,1fr)}.quote-summary dt{white-space:nowrap}.quote-summary dd{overflow-wrap:anywhere}.quote-quantity input{font-size:15px!important;font-weight:600!important}.quote-presets{flex-wrap:wrap;gap:6px;display:flex}.quote-presets button{color:#3f3f46;font-variant-numeric:tabular-nums;background:#fff;border:1px solid #d4d4d8;border-radius:999px;min-height:28px;padding:0 10px;font-size:12px;font-weight:600}.quote-presets button.active{color:#fff;background:#18181b;border-color:#18181b}.quote-fields input[aria-invalid=true]{background:#fff7f7!important;border-color:#e5484d!important}.quote-fields>label.quote-consent{align-items:flex-start;gap:8px;font-weight:400;line-height:1.4;display:flex}.quote-consent input{margin-top:2px}.quote-consent.invalid{color:#b42318}.quote-honeypot{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.quote-errors{color:#b42318;background:#fef3f2;border:1px solid #fecdca;border-radius:8px;margin:12px 0 0;padding:8px 12px 8px 28px;font-size:12px;line-height:1.5}p.quote-errors{padding-left:12px}.quote-success{text-align:center;justify-items:center;gap:8px;max-width:440px;padding:28px 24px 18px;display:grid}.quote-success h2{margin:4px 0 0;font-size:18px}.quote-success p{color:#52525b;margin:0;font-size:13px;line-height:1.5}.quote-success .dialog-actions{justify-content:center;width:100%}.quote-success-icon{color:#15803d;background:#dcfce7;border-radius:50%;place-items:center;width:52px;height:52px;display:grid}.quote-reference strong{color:#18181b;letter-spacing:.02em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.quote-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.quote-card{border:1px solid var(--home-line);border-left:3px solid var(--home-kraft);background:var(--home-surface);border-radius:12px;justify-content:space-between;align-items:flex-start;gap:16px;padding:12px 14px;display:flex}.quote-card.quote-status-quoted{border-left-color:#22c55e}.quote-card-main{gap:6px;min-width:0;display:grid}.quote-card-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.quote-card-head strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.quote-card-head small{color:var(--home-muted);font-size:12px}.quote-badge{background:var(--home-kraft-soft);color:#7c4a22;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:700}.quote-status-quoted .quote-badge{color:#15803d;background:#dcfce7}.quote-card-contact,.quote-card-design{flex-wrap:wrap;gap:4px 14px;font-size:13px;display:flex}.quote-card-contact a{color:#3f3f46}.quote-card-design{color:var(--home-muted)}.quote-card-qty{color:var(--home-ink);font-weight:700}.quote-card-notes{color:#52525b;white-space:pre-wrap;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.quote-card-actions{flex-direction:column;flex:none;gap:6px;display:flex}.quote-status-select{border:1px solid var(--home-line);background:var(--home-surface);color:#3f3f46;height:32px;font:inherit;border-radius:8px;padding:0 8px;font-size:12px;font-weight:600}.quote-card.quote-status-closed{opacity:.75;border-left-color:#a1a1aa}.quote-status-closed .quote-badge{color:#52525b;background:#f4f4f5}@media (width<=767px){.topbar .quote-button{padding:0 10px}.quote-card{flex-direction:column}.quote-card-actions{flex-direction:row}}.home-tabs{border-bottom:1px solid var(--home-line);scrollbar-width:none;gap:4px;margin-bottom:-16px;display:flex;overflow-x:auto}.home-tabs button{height:40px;color:var(--home-muted);white-space:nowrap;border-bottom:2px solid #0000;flex:none;align-items:center;gap:8px;margin-bottom:-1px;padding:0 12px;font-size:14px;font-weight:600;display:inline-flex}.home-tabs button:hover{color:var(--home-ink)}.home-tabs button.active{border-bottom-color:var(--home-ink);color:var(--home-ink)}.home-tabs button:focus-visible{box-shadow:var(--home-focus);outline:none}.home-tab-count{color:#52525b;background:#f4f4f5;border-radius:999px;padding:1px 7px;font-size:11px;font-weight:700}.home-tab-count-alert{background:var(--home-crease);color:#fff}.home-load-more{color:var(--home-muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:16px;font-size:12px;display:flex}.home-refreshing{opacity:.55;transition:opacity .12s}.guest-mobile-bar,.sheet-header,.topbar-brand{display:none}@media (width<=767px){.app-shell.guest-mobile{--guest-bar-h:calc(68px + env(safe-area-inset-bottom,0px));--guest-sheet-h:46dvh;height:calc(100dvh - var(--guest-bar-h))}.app-shell.guest-mobile:not(.sidebar-collapsed){height:calc(100dvh - var(--guest-bar-h) - var(--guest-sheet-h))}.app-shell.guest-mobile,.app-shell.guest-mobile:not(.sidebar-collapsed){grid-template-columns:0 minmax(0,1fr)}.app-shell.guest-mobile.sidebar-collapsed .sidebar{display:none}.app-shell.guest-mobile .workspace{grid-column:2}.app-shell.guest-mobile:not(.sidebar-collapsed) .sidebar.sheet{z-index:70;top:auto;right:0;bottom:var(--guest-bar-h);width:auto;height:var(--guest-sheet-h);overscroll-behavior:contain;background:#fff;border-top:1px solid #e4e4e7;border-radius:18px 18px 0 0;padding:0 16px 16px;animation:.2s ease-out dialog-sheet-in;position:fixed;left:0;overflow-y:auto;box-shadow:0 -12px 40px #18181b2e}.sidebar.sheet .brand-row,.sidebar.sheet .section-title,.sidebar.sheet .workflow-item,.sidebar.sheet .control-section,.sidebar.sheet footer{display:none}.sidebar.sheet .workflow{border:0;padding:0}.sidebar.sheet .workflow-panel{gap:14px;padding:6px 0 4px}.sidebar.sheet .workflow-panel label{color:#3f3f46;gap:6px;font-size:14px;font-weight:600}.sidebar.sheet input:not([type=range],[type=checkbox],[type=file],[type=color]),.sidebar.sheet select{border-radius:10px;min-height:44px;padding:0 12px;font-size:16px}.sidebar.sheet input[type=range]{height:32px}.sidebar.sheet .offset-direction-buttons button,.sidebar.sheet .artwork-flip{min-height:44px;font-size:14px}.sidebar.sheet .artwork-upload{min-height:120px}.sheet-header{z-index:2;background:#fff;justify-content:space-between;align-items:center;margin:0 -16px 4px;padding:18px 16px 10px;display:flex;position:sticky;top:0}.sheet-header strong{font-size:17px}.sheet-grabber{background:#d4d4d8;border-radius:999px;width:40px;height:4px;position:absolute;top:7px;left:50%;transform:translate(-50%)}.sheet-close{color:#fff;background:#18181b;border-radius:999px;align-items:center;gap:6px;min-height:40px;padding:0 14px;font-size:14px;font-weight:600;display:inline-flex}.guest-mobile-bar{z-index:75;height:var(--guest-bar-h);padding:8px 12px env(safe-area-inset-bottom,0px);background:#fff;border-top:1px solid #e4e4e7;align-items:flex-start;gap:10px;display:flex;position:fixed;bottom:0;left:0;right:0}.guest-mobile-tabs{flex:1;gap:2px;display:flex}.guest-mobile-tabs button{color:#52525b;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;min-width:0;height:52px;font-size:12px;font-weight:600;display:flex}.guest-mobile-tabs button.active{color:#18181b;background:#f4f4f5}.guest-mobile-quote{color:#fff;background:#18181b;border-radius:14px;flex:none;align-items:center;gap:8px;height:52px;padding:0 18px;font-size:16px;font-weight:700;display:inline-flex;box-shadow:0 6px 18px #18181b38}.guest-mobile .topbar{height:48px}.guest-mobile .topbar-brand{align-items:center;gap:8px;margin-right:4px;font-size:15px;display:inline-flex}.guest-mobile .topbar-brand img{border-radius:50%;width:28px;height:28px}.guest-mobile .topbar .menu-host>button{min-height:40px;font-size:15px}.guest-mobile .viewport-toolbar .icon-button{width:44px;height:44px}.guest-mobile .inset{width:104px;height:78px;bottom:10px;left:10px}.artwork-align-dialog{border:0;border-radius:0;width:100vw;height:100dvh}.guest-mobile .dialog-backdrop{z-index:90}.guest-mobile .status-pill,.app-shell.guest-mobile:not(.sidebar-collapsed) .inset{display:none}.dieline-generator-form input[type=number],.home-search input{min-height:44px;font-size:16px}.dieline-generator-form .template-card-button{z-index:3;bottom:calc(12px + env(safe-area-inset-bottom,0px));min-height:52px;font-size:16px;position:sticky;box-shadow:0 10px 24px #18181b38}}@media (width<=639px){.quote-dialog{flex-direction:column;max-height:calc(100dvh - 24px);padding-bottom:0;display:flex}.quote-fields{grid-template-columns:minmax(0,1fr);gap:14px}.quote-fields input:not([type=checkbox]),.quote-fields textarea{min-height:46px!important;font-size:16px!important}.quote-fields>label{font-size:14px}.quote-presets button{min-height:40px;padding:0 14px;font-size:14px}.quote-fields>label.quote-consent{font-size:14px}.quote-consent input{flex:0 0 22px;width:22px;height:22px}.quote-dialog>.dialog-actions{padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid #e4e4e7;margin:12px -16px 0;position:sticky;bottom:0}.quote-dialog>.dialog-actions button{min-height:48px;font-size:16px}.quote-dialog>.dialog-actions button[type=submit]{flex:1}.quote-success .dialog-actions{flex-direction:column-reverse}.quote-success .dialog-actions button{width:100%;min-height:48px}}
