:root{--bg: #f3f4f7;--surface: #ffffff;--surface-2: #f8f9fb;--line: #e3e6ec;--line-strong: #cfd4dd;--text: #1c2433;--muted: #687385;--accent: var(--accent);--accent-soft: #e7ecfd;--danger: #d6336c;--sheet: #ffffff;--radius: 8px;font-family:Be Vietnam Pro,system-ui,-apple-system,Segoe UI,sans-serif;font-size:var(--fs-13);color:var(--text);background:var(--bg)}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden}button,input,select{font:inherit;color:inherit}svg{stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.topbar{height:48px;display:flex;align-items:center;gap:16px;padding:0 14px;background:var(--surface);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:8px;font-weight:700;font-size:var(--fs-16);color:var(--accent)}.brand span{color:var(--text)}.project-name{border:1px solid transparent;background:transparent;border-radius:var(--r-sm);padding:5px 8px;font-weight:500;min-width:220px}.project-name:hover,.project-name:focus{border-color:var(--line);outline:none;background:var(--surface-2)}.top-actions{margin-left:auto;display:flex;align-items:center;gap:4px}.sep{width:1px;height:20px;background:var(--line);margin:0 6px}.grow{flex:1}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:30px;padding:0 12px;border-radius:var(--r-sm);border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;white-space:nowrap}.btn:hover{background:var(--surface-2);border-color:#b7bdc9}.btn.ghost:hover{background:var(--surface-2)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.btn.primary:hover{background:#2f4bc0}.btn.icon{width:30px;padding:0}.btn svg,.tool svg{width:17px;height:17px}.tool{display:inline-flex;align-items:center;gap:5px;height:30px;min-width:30px;padding:0 7px;border:1px solid transparent;border-radius:var(--r-sm);background:transparent;cursor:pointer;color:var(--text)}.tool:hover{background:var(--surface-2);border-color:var(--line)}.tool.danger:hover{color:var(--danger)}.field-check{padding:2px 0 6px;font-size:var(--fs-13)}.dim-edit{position:absolute;z-index:5;width:64px;transform:translate(-50%,-50%);padding:3px 6px;border:1.5px solid #0093d0;border-radius:var(--r-sm);background:var(--surface);color:#0b4f6c;font:600 var(--fs-13) var(--font-ui);text-align:center;box-shadow:0 4px 14px #0000002e;outline:none}.toggle{display:inline-flex;align-items:center;gap:5px;cursor:pointer;-webkit-user-select:none;user-select:none;padding:0 6px}.app{height:calc(100% - 48px);display:grid;grid-template-columns:290px minmax(0,1fr) minmax(0,1fr);gap:10px;padding:10px}.sidebar{overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding-right:2px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px 14px}.card h2{margin:0 0 10px;font-size:var(--fs-12);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.field{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.field>span{font-size:var(--fs-12);color:var(--muted)}select,input[type=number],input[type=text]{height:30px;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);padding:0 8px;min-width:0}input.invalid{border-color:var(--danger);background:var(--danger-soft)}input.warn{border-color:#f59f00}.issues{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.issues:empty{display:none}.issues li{font-size:var(--fs-12);line-height:1.45;padding:6px 9px;border-radius:var(--r-sm)}.issues li.error{background:var(--danger-soft);color:var(--danger-ink)}.issues li.warn{background:var(--warn-soft);color:var(--warn-ink)}select:focus,input:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}[hidden]{display:none!important}input[type=color].wide{width:100%;height:30px}.dims{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 8px}.unit{position:relative;display:flex}.unit input{width:100%;padding-right:30px}.unit i{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-style:normal;font-size:var(--fs-11);color:var(--muted);pointer-events:none}.unit.small input{width:78px}details{margin-top:2px}summary{cursor:pointer;color:var(--accent);font-size:var(--fs-12);margin-bottom:8px}.hint{margin:6px 0 0;font-size:var(--fs-12);color:var(--muted);line-height:1.45}.stat{margin:8px 0 0;padding:8px 10px;background:var(--surface-2);border-radius:var(--r-sm);font-size:var(--fs-13);line-height:1.5}.stat .sub{font-size:var(--fs-12);color:var(--muted)}.stat b{color:var(--accent)}.color-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 0}.color-row .swatch-actions{display:flex;align-items:center;gap:4px}input[type=color]{width:34px;height:26px;padding:0;border:1px solid var(--line-strong);border-radius:var(--r-xs);background:none;cursor:pointer}input[type=color]::-webkit-color-swatch-wrapper{padding:2px}input[type=color]::-webkit-color-swatch{border:none;border-radius:3px}.color-row.unset input[type=color]{opacity:.35}.clear-btn{border:none;background:none;cursor:pointer;color:var(--muted);width:22px;height:22px;border-radius:var(--r-xs);font-size:var(--fs-16);line-height:1}.clear-btn:hover{background:var(--surface-2);color:var(--danger)}.btn-stack{display:flex;flex-direction:column;gap:6px}.btn-stack .btn{justify-content:flex-start}.imp-preview{margin-top:4px;border-radius:var(--r-sm);background:var(--surface-2);padding:8px}.imp-preview svg{display:block;width:100%;height:auto;max-height:180px}.pane{display:flex;flex-direction:column;min-height:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.pane-head{display:flex;align-items:center;gap:10px;padding:6px 8px 6px 14px;border-bottom:1px solid var(--line);min-height:44px}.pane-head h3{margin:0;font-size:var(--fs-13);font-weight:700;white-space:nowrap}.toolbar{flex:1;display:flex;align-items:center;gap:2px;flex-wrap:wrap;justify-content:flex-end}.toolbar select{height:28px}.toolbar .sep{margin:0 4px}.props{display:flex;align-items:center;gap:8px;padding:6px 12px;border-bottom:1px solid var(--line);background:var(--surface-2);flex-wrap:wrap}.props[hidden]{display:none}.props .text-only,.prop{display:inline-flex;align-items:center;gap:6px}.prop.range input{width:90px}.stage{position:relative;flex:1;min-height:0;overflow:hidden}.stage canvas{display:block}.pane-foot{padding:6px 12px;border-top:1px solid var(--line);font-size:var(--fs-12);color:var(--muted);display:flex;align-items:center;gap:6px;flex-wrap:wrap}kbd{font:inherit;font-size:var(--fs-11);padding:0 4px;border:1px solid var(--line-strong);border-radius:3px;background:var(--surface)}.legend{display:inline-block;width:16px;height:0;border-top:2px solid;margin-left:8px}.legend.cut{border-color:#ed1c24}.legend.crease{border-color:#00a651;border-top-style:dashed}.legend.bleed{border-color:#00aeef;border-top-style:dotted}.fold-bar{display:flex;align-items:center;gap:8px;padding:8px 10px;border-top:1px solid var(--line);font-size:var(--fs-12);color:var(--muted)}.fold-bar>span{white-space:nowrap}.fold-bar input[type=range]{width:130px;min-width:60px;accent-color:var(--accent)}.fold-bar .btn svg{fill:currentColor;stroke:none}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%) translateY(20px);background:#1c2433;color:#fff;padding:9px 16px;border-radius:var(--radius);font-size:var(--fs-13);opacity:0;pointer-events:none;transition:.2s;z-index:10}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}@media(max-width:1280px){.app{grid-template-columns:270px minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr)}.sidebar{grid-row:span 2}}.btn.ai-toggle{border-color:#c9d3fb;color:var(--accent);font-weight:600}.btn.ai-toggle.active,.btn.ai-toggle:hover{background:var(--accent-soft);border-color:var(--accent)}.app.ai-open{grid-template-columns:290px minmax(0,1fr) 360px;grid-template-rows:minmax(0,1fr) minmax(0,1fr)}.app.ai-open>.sidebar{grid-row:span 2}.app.ai-open>.pane{grid-column:2}.app.ai-open>.ai{grid-column:3;grid-row:1 / span 2}@media(min-width:1800px){.app.ai-open{grid-template-columns:290px minmax(0,1fr) minmax(0,1fr) 380px;grid-template-rows:minmax(0,1fr)}.app.ai-open>.sidebar{grid-row:auto}.app.ai-open>.pane,.app.ai-open>.ai{grid-column:auto;grid-row:auto}}.ai{position:relative;display:flex;flex-direction:column;min-height:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.ai-head{display:flex;align-items:center;gap:4px;padding:6px 6px 6px 14px;min-height:44px;border-bottom:1px solid var(--line)}.ai-head h3{margin:0;display:flex;align-items:center;gap:6px;font-size:var(--fs-13);font-weight:700}.ai-head h3 svg{width:16px;height:16px;color:var(--accent)}.ai-credits{margin-left:auto;font-size:var(--fs-12);color:var(--muted);padding:2px 8px;border-radius:var(--r-md);background:var(--surface-2)}.ai-credits:empty{display:none}.ai-credits.low{color:var(--danger);background:var(--danger-soft)}.ai-head .btn.active{background:var(--accent-soft);color:var(--accent)}.ai-settings{padding:12px 14px;border-bottom:1px solid var(--line);background:var(--surface-2)}.ai-settings input{width:100%}.ai-row{display:flex;align-items:center;gap:6px;margin:8px 0}.ai-row.wrap{flex-wrap:wrap}.ai-row select{flex:1}.ai-link{color:var(--accent);font-size:var(--fs-12);text-decoration:none}.ai-link:hover{text-decoration:underline}.ai-msg{margin:0;font-size:var(--fs-12);color:var(--muted)}.ai-msg:empty{display:none}.ai-msg.ok{color:#2b8a3e}.ai-msg.err{color:var(--danger)}.ai-tabs{display:flex;gap:2px;padding:6px 8px 0;border-bottom:1px solid var(--line)}.ai-tabs button{flex:1;border:none;background:none;padding:7px 2px 8px;font-size:var(--fs-12);font-weight:500;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap}.ai-tabs button:hover{color:var(--text)}.ai-tabs button.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.ai-status{display:flex;align-items:center;gap:8px;padding:8px 10px 8px 14px;font-size:var(--fs-12);background:var(--accent-soft);color:var(--accent);border-bottom:1px solid var(--line)}.ai-status span:nth-child(2){flex:1}.ai-status.err{background:var(--danger-soft);color:var(--danger)}.ai-status.err .spin{display:none}.ai:not(.busy) .ai-status:not(.err) .clear-btn{display:none}.spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ai-spin .8s linear infinite;flex:none}@keyframes ai-spin{to{transform:rotate(360deg)}}.ai-body{flex:1;min-height:0;overflow-y:auto;padding:12px 14px 16px}.ai.busy .ai-go,.ai.busy .ai-action,.ai.busy .ai-link-btn{opacity:.5;pointer-events:none}.ai-body h4{margin:14px 0 8px;font-size:var(--fs-12);font-weight:700}.ai-body h4:first-child{margin-top:0}.ai-body h4 small{font-weight:500;color:#2b8a3e;margin-left:4px}.hint.top{margin:0 0 10px}textarea{font:inherit;color:inherit;border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:7px 8px;resize:vertical;min-height:60px;background:var(--surface)}textarea:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.ai-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 8px}.ai-chips{display:flex;flex-wrap:wrap;gap:5px;margin:2px 0 8px}.ai-chip{border:1px solid var(--line-strong);background:var(--surface);border-radius:var(--r-xl);padding:3px 10px;font-size:var(--fs-12);cursor:pointer}.ai-chip:hover{border-color:var(--accent);color:var(--accent)}.ai-chip.active{background:var(--accent);border-color:var(--accent);color:#fff}.ai-link-btn{display:block;border:none;background:none;padding:2px 0;margin:0 0 10px;color:var(--accent);font-size:var(--fs-12);cursor:pointer;text-align:left}.ai-link-btn:hover{text-decoration:underline}.ai-link-btn i,.ai-action i{font-style:normal;font-size:var(--fs-11);color:var(--muted);margin-left:4px}.ai-check{padding:0;margin:2px 0 10px;font-size:var(--fs-13)}.ai-mini-pal{display:inline-flex;gap:2px;margin-left:4px}.ai-mini-pal i{width:12px;height:12px;border-radius:3px;box-shadow:inset 0 0 0 1px #0000001f}.ai-note{margin:0 0 10px;padding:7px 9px;border-radius:var(--r-sm);font-size:var(--fs-12);line-height:1.45}.ai-note:empty{display:none}.ai-note.good{background:var(--success-soft);color:var(--success-ink)}.ai-note.warn{background:var(--warn-soft);color:var(--warn-ink)}.ai-note.bad{background:var(--danger-soft);color:var(--danger)}.ai-go{width:100%;height:36px;font-size:var(--fs-14)}.ai-cost{margin:6px 0 12px;font-size:var(--fs-12);color:var(--muted);text-align:center}.ai-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ai-cards:empty{display:none}.ai-card{position:relative;padding:0;border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden;cursor:pointer;aspect-ratio:1;background:repeating-conic-gradient(#f1f3f6 0 25%,#fff 0 50%) 0 0 / 14px 14px}.ai-card img{width:100%;height:100%;object-fit:contain;display:block}.ai-card:hover{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.ai-card .badge{position:absolute;top:5px;left:5px;font-size:var(--fs-10);font-weight:700;padding:1px 5px;border-radius:var(--r-xs);background:var(--accent);color:#fff}.ai-source{display:flex;gap:10px;align-items:center;padding:8px;border-radius:var(--r-sm);background:var(--surface-2);font-size:var(--fs-12);line-height:1.5}.ai-source img{width:64px;height:64px;object-fit:contain;border-radius:var(--r-xs);background:repeating-conic-gradient(#e9ecf1 0 25%,#fff 0 50%) 0 0 / 10px 10px;flex:none}.ai-source .empty{color:var(--muted);padding:14px 4px}.ai-source .ai-link-btn{margin:0}.dpi.good{color:#2b8a3e}.dpi.warn{color:#e67700}.dpi.bad{color:var(--danger);font-weight:600}.ai-actions{display:flex;flex-direction:column;gap:6px;margin:10px 0 14px}.ai-action{display:grid;grid-template-columns:1fr auto;gap:2px 8px;text-align:left;border:1px solid var(--line-strong);background:var(--surface);border-radius:var(--r-sm);padding:8px 10px;cursor:pointer}.ai-action:hover{border-color:var(--accent);background:var(--surface)}.ai-action b{font-weight:600;font-size:var(--fs-13)}.ai-action span{grid-column:1;font-size:var(--fs-12);color:var(--muted);line-height:1.4}.ai-action i{grid-column:2;grid-row:1;align-self:center}.ai-sub{margin:-2px 0 4px 10px;font-size:var(--fs-12);color:var(--muted);align-items:flex-start}.ai-palette{display:flex;flex-direction:column;gap:4px}.ai-pal-row{display:grid;grid-template-columns:28px 64px 1fr auto;align-items:center;gap:8px;font-size:var(--fs-12)}.ai-pal-row .code{font-family:ui-monospace,Menlo,monospace;font-size:var(--fs-12)}.ai-pal-row .cmyk{color:var(--muted);font-size:var(--fs-11)}.ai-swatch{width:28px;height:24px;border-radius:var(--r-xs);border:none;box-shadow:inset 0 0 0 1px #00000026;cursor:pointer}.ai-swatch:hover{box-shadow:inset 0 0 0 1px #00000026,0 0 0 2px var(--accent)}.ai-swatches{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 4px}.ai-pal-add{display:inline-flex;align-items:center;gap:8px;font-size:var(--fs-12);color:var(--accent);cursor:pointer;margin-top:2px}.ai-pal-add input{width:28px;height:24px}.ai-recolor{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px}.ai-detail{position:absolute;inset:44px 0 0;background:var(--surface);overflow-y:auto;padding:8px 14px 16px;z-index:2}.ai-detail-head{display:flex;align-items:center;margin:0 -6px 6px}.ai-detail-head .btn svg{width:15px;height:15px}.danger-text{color:var(--danger)}.ai-detail-img{border:1px solid var(--line);border-radius:var(--r-sm);background:repeating-conic-gradient(#f1f3f6 0 25%,#fff 0 50%) 0 0 / 14px 14px}.ai-detail-img img{display:block;width:100%;max-height:340px;object-fit:contain}.ai-detail-label{margin:8px 0 2px;font-size:var(--fs-13);line-height:1.45;word-break:break-word}@media(max-width:1280px){.app.ai-open{grid-template-columns:250px minmax(0,1fr) 330px}}.type-btn{display:flex;align-items:center;gap:10px;width:100%;padding:6px 8px;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);cursor:pointer;text-align:left}.type-btn:hover{border-color:var(--accent)}.type-btn>svg{width:16px;height:16px;color:var(--muted);flex:none}.type-thumb{width:44px;height:34px;flex:none;border-radius:var(--r-xs);background:var(--surface-2);padding:3px}.type-thumb svg,.picker-thumb svg{width:100%;height:100%;display:block}.type-name{flex:1;font-weight:600;font-size:var(--fs-13);line-height:1.3}.picker-overlay{position:fixed;inset:0;z-index:20;background:#0f172a61;display:grid;place-items:center;padding:24px}.picker{width:min(880px,100%);max-height:100%;display:flex;flex-direction:column;background:var(--surface);border-radius:var(--r-lg);box-shadow:0 20px 60px #0f172a40;overflow:hidden}.picker-head{display:flex;align-items:center;justify-content:space-between;padding:14px 14px 10px 20px;border-bottom:1px solid var(--line)}.picker-head h2{margin:0;font-size:var(--fs-16)}.picker-body{overflow-y:auto;padding:6px 20px 20px}.picker-body h3{margin:14px 0 8px;font-size:var(--fs-12);text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}.picker-card{display:flex;flex-direction:column;gap:4px;text-align:left;padding:10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);cursor:pointer}.picker-card:hover,.picker-card:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.picker-card.current{border-color:var(--accent);background:var(--accent-soft)}.picker-card b{font-size:var(--fs-13);line-height:1.35}.picker-card>span:last-child{font-size:var(--fs-12);color:var(--muted);line-height:1.4}.picker-thumb{height:96px;padding:6px;margin-bottom:4px;border-radius:var(--r-sm);background:var(--surface-2)}.save-state{font-size:var(--fs-12);color:var(--muted);white-space:nowrap}.save-state.ok:before{content:"✓ ";color:#2b8a3e}.save-state.err{color:var(--danger)}.align-tools{display:inline-flex;gap:2px;padding-left:8px;border-left:1px solid var(--line)}.status-num{font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:10px}.job{margin:10px 0 0;padding-top:8px;border-top:1px solid var(--line)}.job textarea{width:100%;min-height:44px;font-size:var(--fs-12)}.dims.two{grid-template-columns:repeat(2,minmax(0,1fr))}.checks{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin:2px 0 8px;font-size:var(--fs-12)}.checks label{display:inline-flex;align-items:center;gap:4px;cursor:pointer}.checks-label{width:100%;color:var(--muted)}.btn-stack .check-btn{border-color:#b2f2bb;background:var(--success-soft);color:var(--success-ink);font-weight:600}.btn-stack .check-btn svg{width:16px;height:16px}.preflight{width:min(640px,100%)}.pf-summary{margin:2px 0 0;font-size:var(--fs-13)}.pf-summary.ok{color:#2b8a3e}.pf-summary.bad{color:var(--danger);font-weight:600}.preflight ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.pf button{width:100%;display:flex;align-items:flex-start;gap:8px;text-align:left;border:1px solid var(--line);border-radius:var(--r-sm);padding:8px 10px;background:var(--surface);cursor:pointer;font-size:var(--fs-13);line-height:1.45}.pf button:disabled{cursor:default}.pf button:not(:disabled):hover{border-color:var(--accent)}.pf button>span:nth-child(2){flex:1}.pf em{font-style:normal;color:var(--accent);font-size:var(--fs-12)}.pf-icon{font-size:var(--fs-11);line-height:1.6}.pf.error .pf-icon{color:var(--danger)}.pf.warn .pf-icon{color:#f08c00}.pf.info .pf-icon{color:var(--accent)}.pf-clean{font-size:var(--fs-48);color:#2b8a3e;text-align:center;padding:24px}.pf-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--line)}.bc{width:min(760px,100%)}.bc-body{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px;padding:16px 20px;overflow-y:auto}.bc-body input[type=text]{width:100%;font-size:var(--fs-14)}#bcValue{font-family:ui-monospace,Menlo,monospace}.seg{display:inline-flex;margin-bottom:12px;border:1px solid var(--line-strong);border-radius:var(--r-sm);overflow:hidden}.seg button{border:none;background:var(--surface);padding:6px 14px;cursor:pointer;font-weight:500}.seg button+button{border-left:1px solid var(--line-strong)}.seg button.active{background:var(--accent);color:#fff}.bc-err{margin:-4px 0 8px;color:var(--danger);font-size:var(--fs-12);min-height:0}.bc-err:empty{display:none}.bc-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:var(--radius);background:var(--surface-2);padding:16px;min-height:220px}.bc-preview img{max-width:100%;max-height:220px;background:var(--surface);box-shadow:0 1px 4px #0000001f}.bc-preview img:not([src]){display:none}@media(max-width:720px){.bc-body{grid-template-columns:1fr}}.layers{position:absolute;top:8px;left:8px;bottom:8px;width:250px;display:flex;flex-direction:column;background:color-mix(in srgb,var(--surface) 97%,transparent);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 6px 24px #0f172a1f;z-index:3;overflow:hidden}.layers-head{display:flex;flex-direction:column;gap:1px;padding:8px 10px;border-bottom:1px solid var(--line)}.layers-head .hint{margin:0;font-size:var(--fs-11)}.layers-list{list-style:none;margin:0;padding:4px;overflow-y:auto;flex:1}.layer{display:flex;align-items:center;gap:6px;padding:4px 4px 4px 8px;border-radius:var(--r-xs);cursor:pointer;font-size:var(--fs-13);border-top:2px solid transparent;border-bottom:2px solid transparent}.layer:hover{background:var(--surface-2)}.layer.active{background:var(--accent-soft);color:var(--accent)}.layer.off .layer-name,.layer.off .layer-ico{opacity:.4}.layer.locked .layer-name{font-style:italic}.layer.dragging{opacity:.4}.layer.drop-above{border-top-color:var(--accent)}.layer.drop-below{border-bottom-color:var(--accent)}.layer-ico{width:15px;height:15px;flex:none;color:var(--muted)}.layer-name{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.layer input{flex:1;min-width:0;height:24px;font-size:var(--fs-12)}.layer-btn{width:24px;height:24px;border:none;background:none;border-radius:var(--r-xs);color:var(--muted);cursor:pointer;display:grid;place-items:center;flex:none}.layer-btn:hover{background:var(--surface);color:var(--text)}.layer-btn svg{width:15px;height:15px}.layer:not(:hover):not(.off):not(.locked) .layer-btn{opacity:.35}.layers-empty{padding:16px 10px;color:var(--muted);font-size:var(--fs-12)}.quote-in{margin-top:12px;padding-top:12px;border-top:1px dashed var(--line-strong)}.ai-chips-label{display:block;margin-top:6px;font-size:var(--fs-11);color:var(--muted)}.props.plate>:not(.fx-prop){display:none!important}.fx-prop>span{font-size:var(--fs-12);color:var(--muted)}.pf-label{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.pf-label-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.pf-label-head h3{margin:0}.pf-label-head small{font-weight:400;color:var(--muted)}.pf-check{list-style:none;margin:8px 0 0;padding:0;font-size:var(--fs-13);line-height:1.7}.pf-check span{display:inline-block;width:18px;font-weight:700}.pf-check .ok span{color:#2f9e44}.pf-check .miss{color:#c2410c}.pf-check .opt{color:var(--muted)}.pf-note{margin:6px 0 0;font-size:var(--fs-12);color:#c2410c}.stock-pop{position:fixed;z-index:50;width:370px;padding:12px;display:flex;flex-direction:column;gap:9px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:0 16px 40px #0f172a38;font-size:var(--fs-13)}.stock-head{display:flex;justify-content:space-between;align-items:center;font-size:var(--fs-14)}.stock-x{border:0;background:none;font-size:var(--fs-18);line-height:1;cursor:pointer;color:var(--muted)}.stock-pop input[type=search]{padding:7px 10px;border:1px solid var(--line-strong);border-radius:var(--radius);font:inherit}.stock-ideas{display:flex;flex-wrap:wrap;gap:5px}.stock-ideas button{padding:3px 8px;border:1px solid #f1d9c6;border-radius:var(--r-sm);background:var(--warn-soft);color:var(--warn-ink);font:inherit;font-size:var(--fs-12);cursor:pointer}.stock-sites{display:grid;grid-template-columns:1fr 1fr;gap:6px}.stock-sites button{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:7px 9px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);font:inherit;text-align:left;cursor:pointer}.stock-sites button:hover{border-color:#2563eb;background:var(--accent-soft)}.stock-sites span{color:var(--muted);font-size:var(--fs-11)}.stock-tips{margin:0;padding-left:16px;color:#475569;font-size:var(--fs-12);line-height:1.45}.hub-samples{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 22px 0}.hub-samples>span{font-size:var(--fs-12);font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.hub-samples button{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:8px 14px;border:1px solid #f1d0b5;border-radius:var(--r-md);background:linear-gradient(135deg,#fff7ef,#fdeee0);color:#7c2d12;font:inherit;text-align:left;cursor:pointer}.hub-samples button:hover{border-color:#ea7a3c}.hub-samples small{color:#9a5a32;font-size:var(--fs-12)}.ai-v3{display:flex;flex-direction:column;gap:6px;padding:8px 10px;border:1px dashed #d6dbe4;border-radius:var(--radius);background:var(--surface)}.ai-actions-title{margin:10px 0 2px;font-size:var(--fs-12);font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.mask-overlay{z-index:80}.mask-card{width:min(1000px,calc(100vw - 32px));max-height:calc(100vh - 32px);display:flex;flex-direction:column;gap:10px;padding:14px 16px;background:var(--surface);border-radius:var(--r-xl);box-shadow:0 24px 60px #0f172a59}.mask-head{display:flex;align-items:baseline;gap:12px}.mask-head b{font-size:var(--fs-16)}.mask-head span{flex:1;color:var(--muted);font-size:var(--fs-13)}.mask-x{border:0;background:none;font-size:var(--fs-22);line-height:1;cursor:pointer;color:var(--muted)}.mask-stage{display:grid;place-items:center;min-height:240px;background:repeating-conic-gradient(#eef0f4 0% 25%,#fff 0% 50%) 50% / 18px 18px;border-radius:var(--r-md);overflow:hidden}.mask-view{display:block;cursor:none;touch-action:none}.mask-tools{display:flex;align-items:center;gap:14px;font-size:var(--fs-13)}.mask-tools label{display:inline-flex;align-items:center;gap:6px}.mask-cost{color:var(--muted)}.mask-cost.warn{color:#d6336c;font-weight:600}.mask-prompt{width:100%;box-sizing:border-box;padding:8px 10px;border:1px solid var(--line-strong);border-radius:var(--radius);font:inherit;resize:vertical}.mask-foot{display:flex;justify-content:flex-end;gap:8px}.picker-thumb.jar-thumb{height:130px;background:linear-gradient(#f7f1e6,#ece2d1)}:root{--bg: #eef0f5;--surface: #ffffff;--surface-2: #f6f7fb;--surface-3: #eef0f6;--line: rgba(17, 24, 39, .08);--line-strong: rgba(17, 24, 39, .15);--text: #121826;--muted: #697386;--accent: #4f46e5;--accent-2: #8b5cf6;--accent-soft: #eef0ff;--accent-ring: rgba(43, 98, 227, .24);--warm: #ea580c;--radius: 10px;--r-sm: 7px;--r-lg: 14px;--r-xl: 18px;--sh-1: 0 1px 2px rgba(16, 24, 40, .05), 0 1px 1px rgba(16, 24, 40, .03);--sh-2: 0 8px 22px -8px rgba(16, 24, 40, .16), 0 2px 5px -2px rgba(16, 24, 40, .06);--sh-3: 0 28px 64px -14px rgba(16, 24, 40, .32), 0 10px 24px -10px rgba(16, 24, 40, .14);--ease: cubic-bezier(.2, .8, .2, 1);--spring: cubic-bezier(.34, 1.4, .64, 1);--t1: .12s;--t2: .2s;--t3: .32s;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{background:radial-gradient(1100px 520px at 0% -8%,#f3f0ff,#f3f0ff00 60%),radial-gradient(900px 480px at 100% -6%,#eaf3ff,#eaf3ff00 55%),var(--bg)}@keyframes ps-fade{0%{opacity:0}}@keyframes ps-pop{0%{opacity:0;transform:translateY(10px) scale(.97)}}@keyframes ps-drop{0%{opacity:0;transform:translateY(-6px) scale(.98)}}@keyframes ps-slide{0%{opacity:0;transform:translate(18px)}}@keyframes ps-shimmer{to{transform:translate(260%)}}*{scrollbar-width:thin;scrollbar-color:rgba(17,24,39,.18) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:rgb(var(--ink-rgb) / .16);border:3px solid transparent;border-radius:99px;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background-color:rgb(var(--ink-rgb) / .3)}::-webkit-scrollbar-track{background:transparent}.topbar{position:relative;z-index:6;height:52px;gap:10px;padding:0 12px 0 14px;background:color-mix(in srgb,var(--surface) 74%,transparent);-webkit-backdrop-filter:saturate(180%) blur(16px);backdrop-filter:saturate(180%) blur(16px);border-bottom:1px solid var(--line)}.app{height:calc(100% - 52px);gap:12px;padding:12px}.brand{font-size:var(--fs-16);letter-spacing:-.02em}.brand svg{color:var(--accent);filter:drop-shadow(0 2px 6px rgba(43,98,227,.35))}.brand span{background:linear-gradient(120deg,#121826 30%,var(--accent) 70%,#8b5cf6);-webkit-background-clip:text;background-clip:text;color:transparent}.project-name{flex:0 1 260px;min-width:110px;height:32px;border-radius:var(--r-sm);text-overflow:ellipsis;font-weight:600;letter-spacing:-.01em;transition:background var(--t1),border-color var(--t1),box-shadow var(--t1)}.project-name:focus{outline:none;background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.save-state{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.cmd-btn{flex:0 1 280px;min-width:36px;height:34px;border-radius:var(--r-md);border-color:var(--line);background:rgb(var(--ink-rgb) / .04);transition:background var(--t1),border-color var(--t1),box-shadow var(--t1)}.cmd-btn:hover{background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.cmd-btn span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmd-btn kbd{border-radius:var(--r-sm)}.top-actions{gap:8px;flex-shrink:0}.top-actions>.sep{display:none}.seg{display:inline-flex;gap:2px;padding:2px;border-radius:var(--r-md);background:rgb(var(--ink-rgb) / .05)}.seg .btn{height:30px;border-radius:var(--radius)}.seg .btn:hover{background:var(--surface);box-shadow:var(--sh-1)}.seg .btn svg{width:16px;height:16px}.btn.ai-toggle{height:34px;padding:0 14px;border-radius:var(--r-sm);border:1px solid transparent;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,var(--accent),#a855f7 55%,#ec4899) border-box;color:var(--accent);font-weight:600;box-shadow:0 4px 14px -6px #6366f173;transition:transform var(--t1) var(--ease),box-shadow var(--t2) var(--ease),color var(--t1)}.btn.ai-toggle:hover{transform:translateY(-1px);border-color:transparent;background:linear-gradient(#f7f5ff,#f7f5ff) padding-box,linear-gradient(135deg,var(--accent),#a855f7 55%,#ec4899) border-box;box-shadow:0 8px 20px -8px #6366f199}.btn.ai-toggle.active,.btn.ai-toggle.active:hover{color:#fff;border-color:transparent;background:linear-gradient(135deg,var(--accent),#a855f7 55%,#ec4899) padding-box,linear-gradient(135deg,var(--accent),#a855f7 55%,#ec4899) border-box}.btn.ai-toggle.brand-toggle{color:#c2410c;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#f97316,#e11d48) border-box;box-shadow:0 4px 14px -6px #ea580c73}.btn.ai-toggle.brand-toggle:hover{background:linear-gradient(#fff7f2,#fff7f2) padding-box,linear-gradient(135deg,#f97316,#e11d48) border-box;box-shadow:0 8px 20px -8px #ea580c99}.btn.ai-toggle.brand-toggle.active,.btn.ai-toggle.brand-toggle.active:hover{color:#fff;background:linear-gradient(135deg,#f97316,#e11d48) padding-box,linear-gradient(135deg,#f97316,#e11d48) border-box}.seg .btn{gap:6px;padding:0 10px}.seg .btn>span{flex:none;min-width:0;margin:0;padding:0}.seg .btn.icon{width:32px;padding:0}@media(max-width:1640px){.seg .btn>span{display:none}.seg .btn{width:32px;padding:0}}@media(max-width:1400px){.cmd-btn{flex:0 0 auto}.cmd-btn>span,.cmd-btn kbd{display:none}.project-name{flex-basis:200px}}@media(max-width:1180px){.btn.ai-toggle>span{display:none}.btn.ai-toggle{width:36px;padding:0;justify-content:center}.save-state{display:none}}.btn{height:32px;border-radius:var(--radius);border-color:var(--line-strong);font-weight:500;box-shadow:var(--sh-1);transition:background var(--t1) var(--ease),border-color var(--t1) var(--ease),box-shadow var(--t2) var(--ease),transform var(--t1) var(--ease),color var(--t1)}.btn:active,.tool:active{transform:translateY(1px) scale(.985)}.btn.ghost{box-shadow:none}.btn.ghost:hover{background:rgb(var(--ink-rgb) / .05)}.btn.icon{width:32px}.btn.primary{background:linear-gradient(180deg,#5d55f2,var(--accent));border-color:var(--accent);box-shadow:inset 0 1px #ffffff38,0 6px 16px -6px #2b62e3a6}.btn.primary:hover{background:linear-gradient(180deg,#6760f6,#4a40d6);box-shadow:inset 0 1px #ffffff38,0 10px 22px -8px #2b62e3bf}.btn:focus-visible,.tool:focus-visible,.btn.ai-toggle:focus-visible,.cmd-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-ring)}input[type=number],input[type=text],input[type=search],input[type=password],input:not([type]),select,textarea{border-radius:var(--radius);border-color:var(--line-strong);transition:border-color var(--t1),box-shadow var(--t1),background var(--t1)}input[type=number]:hover,input[type=text]:hover,input[type=search]:hover,input:not([type]):hover,select:hover,textarea:hover{border-color:rgb(var(--ink-rgb) / .26)}input[type=number]:focus,input[type=text]:focus,input[type=search]:focus,input[type=password]:focus,input:not([type]):focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}input[type=checkbox],input[type=radio],input[type=range]{accent-color:var(--accent)}.field.is-auto .unit input{border-style:dashed;border-color:#2b62e380;background:var(--surface)}.unit input{padding-left:8px;padding-right:28px}.unit input::placeholder{color:var(--faint)}.card{border-radius:var(--r-lg);border-color:var(--line);box-shadow:var(--sh-1);padding:14px 16px 16px}.card h2{font-size:var(--fs-11);letter-spacing:.07em;color:var(--faint)}.side-tabs{padding:4px;border:0;border-radius:var(--r-lg);background:rgb(var(--ink-rgb) / .06);box-shadow:inset 0 1px 2px #1118270d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.side-tabs button{height:30px;border-radius:var(--radius);transition:background var(--t2) var(--ease),color var(--t2),box-shadow var(--t2)}.side-tabs button:hover:not(.active){color:var(--text)}.side-tabs button.active{background:var(--surface);color:var(--text);box-shadow:var(--sh-1),0 0 0 1px var(--line)}.sidebar{scrollbar-gutter:stable}.pane{container-type:inline-size;border-radius:var(--r-lg);border-color:var(--line);box-shadow:var(--sh-1)}.pane-head{min-height:48px;padding:7px 8px 7px 16px;background:linear-gradient(#fff,#fcfcfe)}.pane-head h3{font-size:var(--fs-14);letter-spacing:-.01em}.pane-head .toolbar{flex-wrap:nowrap;min-width:0;overflow:hidden;gap:2px}.tool{position:relative;height:32px;border-radius:var(--radius);color:#3a4354;transition:background var(--t1) var(--ease),color var(--t1),border-color var(--t1),transform var(--t1) var(--ease)}.tool:hover{background:rgb(var(--ink-rgb) / .05);border-color:transparent;color:var(--text)}.tool.active{background:var(--accent-soft);color:var(--accent)}.tool.chk{cursor:pointer;-webkit-user-select:none;user-select:none}.tool.chk input{position:absolute;inset:0;opacity:0;pointer-events:none}.tool.chk:has(input:checked){background:var(--accent-soft);color:var(--accent)}.tool.chk:has(input:focus-visible){box-shadow:0 0 0 3px var(--accent-ring)}.pane-head .btn{height:32px}.pane-foot{display:flex;align-items:center;gap:12px;min-height:32px;padding:4px 14px;font-size:var(--fs-12);white-space:nowrap;overflow:hidden;background:var(--surface)}.foot-legend{display:inline-flex;align-items:center;gap:4px}.foot-hint{min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--faint)}.status-num{font-variant-numeric:tabular-nums}.fold-bar{flex-wrap:nowrap;overflow:hidden;gap:8px;background:var(--surface)}@container (max-width: 980px){.pane-head .toolbar .tool>span,.pane-head .toolbar .btn>span{display:none}.pane-head .toolbar .tool{padding:0 7px}.pane-head .toolbar .btn:has(>span){width:32px;padding:0}}@container (max-width: 640px){.foot-hint{display:none}}@container (max-width: 470px){.pane-head h3{display:none}}#stage2d{background-color:#eceef4;background-image:radial-gradient(rgba(17,24,39,.1) 1px,transparent 1.3px);background-size:18px 18px}.ai{border-radius:var(--r-lg);border-color:var(--line);box-shadow:var(--sh-2)}.ai:not([hidden]),.studio:not([hidden]){animation:ps-slide var(--t3) var(--ease)}.ai-tabs button{transition:color var(--t1),box-shadow var(--t2) var(--ease),background var(--t1)}.ai-chip{transition:background var(--t1),border-color var(--t1),color var(--t1),transform var(--t1) var(--ease)}.ai-chip:hover{transform:translateY(-1px)}.ai-action{border-radius:var(--r-lg);transition:border-color var(--t1),box-shadow var(--t2) var(--ease),transform var(--t1) var(--ease),background var(--t1)}.ai-action:hover{border-color:#2b62e373;box-shadow:var(--sh-2);transform:translateY(-1px)}.ai.busy .ai-go{position:relative;overflow:hidden}.ai.busy .ai-go:after{content:"";position:absolute;inset:0 auto 0 -40%;width:40%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--surface) 45%,transparent),transparent);animation:ps-shimmer 1.1s linear infinite}.picker-overlay,.cmdk-overlay{background:#0f172a4d;-webkit-backdrop-filter:blur(6px) saturate(120%);backdrop-filter:blur(6px) saturate(120%);animation:ps-fade var(--t2) var(--ease)}.picker,.cmdk,.mask-card{border-radius:var(--r-xl);box-shadow:var(--sh-3);animation:ps-pop var(--t3) var(--ease)}.font-pop,.stock-pop,.ctx-menu,.hub-pop,.hub-menu:not([hidden]){border-radius:var(--r-lg);box-shadow:var(--sh-3);animation:ps-drop var(--t2) var(--ease);transform-origin:top left}.hub-card{transition:transform var(--t2) var(--ease),box-shadow var(--t2) var(--ease),border-color var(--t1)}.hub-card:hover{transform:translateY(-2px);box-shadow:var(--sh-2)}.welcome-card,.studio-card,.hub-samples button{transition:transform var(--t2) var(--ease),box-shadow var(--t2) var(--ease),border-color var(--t1)}.welcome-card:hover,.studio-card:hover,.hub-samples button:hover{transform:translateY(-2px);box-shadow:var(--sh-2)}.toast{max-width:min(760px,calc(100vw - 32px));padding:10px 18px;border-radius:var(--r-xl);background:#111827e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--sh-3);line-height:1.45;font-weight:500;transition:opacity var(--t2) var(--ease),transform var(--t3) var(--spring);z-index:90}.boot{position:fixed;inset:0;z-index:200;display:grid;place-content:center;gap:18px;justify-items:center;background:radial-gradient(900px 500px at 50% 30%,var(--field),rgba(243,243,241,0) 70%),var(--bg);transition:opacity .42s var(--ease)}.boot.done{opacity:0;pointer-events:none}.boot-logo{display:flex;align-items:center;gap:10px;font:700 var(--fs-22)/1 var(--font-ui);letter-spacing:-.02em;color:var(--text);animation:ps-pop .6s var(--ease)}.boot-logo svg{width:34px;height:34px;color:var(--accent);filter:drop-shadow(0 6px 14px rgba(43,98,227,.4))}.boot-bar{position:relative;width:180px;height:4px;border-radius:99px;background:#2b62e31f;overflow:hidden}.boot-bar i{position:absolute;inset:0 auto 0 0;width:40%;border-radius:inherit;background:var(--ink);animation:ps-shimmer 1.1s var(--ease) infinite}.boot small{color:var(--muted);font-size:var(--fs-12)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}.btn.ai-toggle.asset-toggle{color:#0f766e;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#14b8a6,#0ea5e9) border-box;box-shadow:0 4px 14px -6px #0ea5e973}.btn.ai-toggle.asset-toggle:hover{background:linear-gradient(#f0fdfa,#f0fdfa) padding-box,linear-gradient(135deg,#14b8a6,#0ea5e9) border-box;box-shadow:0 8px 20px -8px #0ea5e999}.btn.ai-toggle.asset-toggle.active,.btn.ai-toggle.asset-toggle.active:hover{color:#fff;background:linear-gradient(135deg,#14b8a6,#0ea5e9) padding-box,linear-gradient(135deg,#14b8a6,#0ea5e9) border-box}.asset-panel .ai-head h3 svg{color:#0d9488}.as-search{display:flex;align-items:center;gap:8px;margin:10px 12px 6px;padding:0 10px;height:38px;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);transition:border-color var(--t1),box-shadow var(--t1)}.as-search:focus-within{border-color:#0d9488;box-shadow:0 0 0 3px #0d94882e}.as-search svg{width:16px;height:16px;color:var(--muted);flex:none}.as-search input{flex:1;min-width:0;border:0!important;box-shadow:none!important;outline:none;background:transparent;font-size:var(--fs-14)}.as-topics{display:flex;flex-wrap:wrap;gap:5px;padding:2px 12px 8px}.as-topics button{padding:3px 9px;border:1px solid #ccebe6;border-radius:var(--r-sm);background:var(--success-soft);color:#0f766e;font:inherit;font-size:var(--fs-12);cursor:pointer;transition:background var(--t1),transform var(--t1) var(--ease)}.as-topics button:hover{background:var(--success-soft);transform:translateY(-1px)}.as-filters{padding:6px 12px 0;font-size:var(--fs-12)}.as-filters .hint{margin:0}.as-seg{display:flex;gap:2px;padding:2px;border-radius:var(--radius);background:rgb(var(--ink-rgb) / .05)}.as-seg button{flex:1;height:26px;border:0;border-radius:var(--r-sm);background:transparent;font:inherit;font-size:var(--fs-12);color:var(--muted);cursor:pointer}.as-seg button.on{background:var(--surface);color:var(--text);box-shadow:var(--sh-1)}.as-body{flex:1;min-height:0;overflow-y:auto;padding:10px 12px}.as-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(98px,1fr));gap:8px}.as-grid.icons{grid-template-columns:repeat(auto-fill,minmax(58px,1fr))}.as-card{position:relative;aspect-ratio:1;padding:0;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);overflow:hidden;cursor:grab;transition:transform var(--t2) var(--ease),box-shadow var(--t2) var(--ease),border-color var(--t1);animation:ps-fade var(--t3) var(--ease)}.as-card:hover{transform:translateY(-2px);border-color:#0d9488;box-shadow:var(--sh-2)}.as-card img{width:100%;height:100%;object-fit:cover;display:block}.as-card.iconify{background:var(--surface)}.as-card.iconify img{object-fit:contain;padding:18%}.as-cc{position:absolute;right:4px;bottom:4px;padding:0 4px;border-radius:var(--r-xs);background:#111827b8;color:#fff;font-size:var(--fs-10);font-style:normal;font-weight:700}.as-foot{padding:14px 4px;color:var(--muted);font-size:var(--fs-12);text-align:center}.as-bottom{display:flex;justify-content:space-between;gap:8px;padding:8px 12px;border-top:1px solid var(--line);background:var(--surface)}.as-tabs button{padding:0 6px}.as-grid.as-home{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.as-h{grid-column:1 / -1;margin:6px 0 0;font-size:var(--fs-12);font-weight:700;color:var(--text)}.as-h small{font-weight:500;color:var(--muted)}.as-coll{display:flex;flex-direction:column;gap:2px;padding:0 0 8px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);text-align:left;font:inherit;cursor:pointer;overflow:hidden;transition:transform var(--t2) var(--ease),box-shadow var(--t2) var(--ease),border-color var(--t1);animation:ps-fade var(--t3) var(--ease)}.as-coll:hover{transform:translateY(-2px);border-color:#0d9488;box-shadow:var(--sh-2)}.as-coll-img{display:grid;grid-template-columns:1fr 1fr;height:92px;margin-bottom:6px;background:var(--surface-3)}.as-coll-img img{width:100%;height:92px;object-fit:cover;display:block}.as-coll-img.icons{grid-template-columns:repeat(4,1fr);align-items:center;padding:10px 6px;background:linear-gradient(135deg,#f0fdfa,var(--surface-2))}.as-coll-img.icons img{height:40px;object-fit:contain}.as-coll b{padding:0 10px;font-size:var(--fs-13)}.as-coll small{padding:0 10px;color:var(--muted);font-size:var(--fs-11);line-height:1.35}.as-crumbs{display:flex;align-items:center;gap:8px;margin-bottom:6px}.as-crumb{padding:2px 8px;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);font:inherit;font-size:var(--fs-12);cursor:pointer}.as-prov{margin-bottom:6px}.as-seg button.locked{color:var(--faint)}.as-guide{grid-column:1 / -1;padding:14px 16px;border:1px dashed #99d5cc;border-radius:var(--r-lg);background:var(--success-soft);font-size:var(--fs-13);line-height:1.55}.as-guide ol{margin:6px 0;padding-left:18px}.as-guide li{margin-bottom:6px}.as-guide code{padding:1px 5px;border-radius:var(--r-xs);background:var(--surface);border:1px solid var(--line);font-size:var(--fs-12)}.as-grid.masonry,.as-sub.masonry{display:block;column-count:2;column-gap:8px}.as-grid.masonry .as-card,.as-sub.masonry .as-card{width:100%;aspect-ratio:auto;margin:0 0 8px;break-inside:avoid}.as-grid.masonry .as-card img,.as-sub.masonry .as-card img{height:auto;min-height:60px}.as-sub.icons{display:grid;grid-template-columns:repeat(auto-fill,minmax(58px,1fr));gap:8px}.as-sub.icons .as-card{aspect-ratio:1;background:var(--surface)}.as-sub.icons .as-card img{object-fit:contain;padding:18%}.as-theme{display:block}.as-theme .as-h{display:flex;align-items:baseline;margin:12px 0 8px}.as-see{margin-left:auto;border:0;background:none;color:#0d9488;font:inherit;font-size:var(--fs-12);font-weight:600;cursor:pointer}.as-card{cursor:pointer}.as-acts{position:absolute;inset:auto 4px 4px auto;display:flex;gap:3px;opacity:0;transform:translateY(4px);transition:opacity var(--t1),transform var(--t2) var(--ease)}.as-card:hover .as-acts{opacity:1;transform:none}.as-acts i{display:grid;place-items:center;width:24px;height:24px;border-radius:var(--r-sm);background:#111827c7;color:#fff;font-style:normal;font-size:var(--fs-12);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background var(--t1)}.as-acts i:hover{background:#0d9488}.as-card .as-cc{inset:4px auto auto 4px}.as-file{display:grid;place-items:center;height:100%;min-height:90px;color:var(--muted);font-weight:700;font-size:var(--fs-13);background:repeating-linear-gradient(45deg,#f4f5f8 0 8px,#eef0f4 8px 16px)}.as-row2{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:6px}.as-row2 select{height:28px;font-size:var(--fs-12)}.as-chips{display:flex;flex-wrap:wrap;gap:5px}.as-chips button{padding:3px 9px;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);font:inherit;font-size:var(--fs-12);cursor:pointer}.as-chips button.on{border-color:#0d9488;background:var(--success-soft);color:#0f766e;font-weight:600}.asset-panel{position:relative}.as-detail{position:absolute;inset:48px 0 0;z-index:3;display:flex;flex-direction:column;gap:10px;padding:10px 14px 14px;overflow-y:auto;background:var(--surface);animation:ps-slide var(--t2) var(--ease)}.as-detail[hidden]{display:none}.as-d-img{display:grid;place-items:center;min-height:200px;max-height:46vh;border-radius:var(--r-lg);background:repeating-conic-gradient(#eef0f4 0% 25%,#fff 0% 50%) 50% / 16px 16px;overflow:hidden}.as-d-img img{max-width:100%;max-height:46vh;object-fit:contain}.as-d-title{font-size:var(--fs-14)}.as-d-lic{margin:0;color:var(--muted);font-size:var(--fs-12);line-height:1.5}.as-d-lic .warn{color:#b45309}.as-d-acts{display:flex;flex-wrap:wrap;gap:6px}.as-tabs{overflow-x:auto;scrollbar-width:none;gap:0}.as-tabs::-webkit-scrollbar{display:none}.as-tabs button{flex:none;padding:0 7px;font-size:var(--fs-12);white-space:nowrap}.pk-label{display:flex;align-items:center;justify-content:space-between}.pk-label .ai-link-btn{display:inline;margin:0;font-size:var(--fs-12)}.pk-label b{margin-left:4px;color:var(--accent);font-weight:600}.pk-pieces{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px}.pk-piece{display:inline-flex;align-items:center;gap:5px;padding:4px 10px 4px 8px;border:1px solid var(--accent);border-radius:var(--r-sm);background:var(--accent-soft);color:var(--accent);font:inherit;font-size:var(--fs-12);font-weight:500;cursor:pointer;transition:background var(--t1),border-color var(--t1),color var(--t1),transform var(--t1) var(--ease)}.pk-piece:before{content:"✓";font-size:var(--fs-11);font-weight:700}.pk-piece:active{transform:scale(.96)}.pk-piece em{padding:0 5px;border-radius:var(--r-sm);background:#2b62e31f;font-style:normal;font-size:var(--fs-10);font-weight:600}.pk-piece i{margin-right:-4px;padding:0 3px;border-radius:50%;font-style:normal;opacity:.6}.pk-piece i:hover{background:rgb(var(--ink-rgb) / .08);opacity:1}.pk-piece.off{border-color:var(--line-strong);background:var(--surface);color:var(--muted);font-weight:400}.pk-piece.off:before{content:"+"}.pk-piece.off em{background:var(--surface-3)}.pk-piece.off:hover{border-color:var(--accent);color:var(--accent)}.pk-add{display:flex;gap:4px;margin-bottom:12px}.pk-add input{flex:1;min-width:0}.pk-add select{width:84px}.pk-looks{margin-top:4px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-bottom:8px;transition:opacity var(--t2)}.pk-looks.dim{opacity:.45}.pk-look{position:relative;display:flex;flex-direction:column;gap:1px;padding:8px 10px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--t1),box-shadow var(--t2) var(--ease),transform var(--t1) var(--ease)}.pk-look:hover{border-color:var(--accent);transform:translateY(-1px)}.pk-look b{font-size:var(--fs-13)}.pk-look small{color:var(--muted);font-size:var(--fs-11);line-height:1.35}.pk-look i{position:absolute;top:6px;right:7px;font-style:normal;font-size:var(--fs-10);font-weight:600;letter-spacing:.03em;color:var(--muted)}.pk-look.active{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 3px var(--accent-ring)}.pk-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:4px}.pk-card{display:flex;flex-direction:column;gap:4px;min-width:0;animation:ps-pop var(--t3) var(--ease) both}.pk-card>span{font-size:var(--fs-11);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pk-img{position:relative;display:flex;gap:3px;aspect-ratio:1;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:repeating-conic-gradient(#f1f2f6 0% 25%,#fff 0% 50%) 0 0 / 14px 14px}.pk-img button{flex:1;min-width:0;padding:4px;border:none;background:none;cursor:zoom-in}.pk-img img{width:100%;height:100%;object-fit:contain;display:block;transition:transform var(--t2) var(--ease)}.pk-img button:hover img{transform:scale(1.06)}.pk-card.wait .pk-img,.pk-card.run .pk-img{background:var(--surface-3)}.pk-card.run .pk-img:after{content:"";position:absolute;inset:0;width:40%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--surface) 75%,transparent),transparent);transform:translate(-120%);animation:ps-shimmer 1.1s ease-in-out infinite}.pk-card.run>span{color:var(--accent);font-weight:500}.pk-card.err .pk-img{align-items:center;padding:6px;background:var(--danger-soft);border-color:#fecaca;color:var(--danger-ink);font-size:var(--fs-11);line-height:1.35}#pCost .ai-link-btn{display:inline;margin:0}.as-aipromo{grid-column:1 / -1;display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid rgba(43,98,227,.22);border-radius:var(--r-lg);background:radial-gradient(120% 140% at 0% 0%,rgba(139,92,246,.16),transparent 60%),radial-gradient(120% 140% at 100% 100%,rgba(234,88,12,.12),transparent 60%),var(--surface);font:inherit;text-align:left;cursor:pointer;transition:transform var(--t2) var(--ease),box-shadow var(--t2) var(--ease)}.as-aipromo:hover{transform:translateY(-1px);box-shadow:var(--sh-2)}.as-aipromo b{display:block;font-size:var(--fs-13);background:linear-gradient(90deg,var(--accent),var(--accent-2) 55%,var(--warm));-webkit-background-clip:text;background-clip:text;color:transparent}.as-aipromo small{display:block;margin-top:2px;color:var(--muted);font-size:var(--fs-12);line-height:1.4}.as-aipromo-art{position:relative;flex:none;width:46px;height:46px}.as-aipromo-art i{position:absolute;width:26px;height:26px;border-radius:var(--radius);box-shadow:var(--sh-1)}.as-aipromo-art i:nth-child(1){left:0;top:2px;background:linear-gradient(135deg,#f97316,#e11d48);transform:rotate(-10deg)}.as-aipromo-art i:nth-child(2){left:18px;top:0;background:linear-gradient(135deg,#facc15,#f97316);transform:rotate(8deg)}.as-aipromo-art i:nth-child(3){left:9px;top:18px;background:var(--ink)}.as-aibtn{padding:3px 10px;border:1px solid rgba(43,98,227,.3);border-radius:var(--r-sm);background:linear-gradient(135deg,#8b5cf61a,#ea580c14);color:var(--accent);font:inherit;font-size:var(--fs-12);font-weight:500;white-space:nowrap;cursor:pointer}.as-aibtn:hover{border-color:var(--accent)}.as-crumbs .grow{flex:1}#aiTabs{overflow-x:auto;scrollbar-width:none}#aiTabs::-webkit-scrollbar{display:none}#aiTabs button{white-space:nowrap}.app.lay{position:relative}.lay-split{position:absolute;z-index:30;display:flex;align-items:center;justify-content:center;cursor:col-resize;touch-action:none}.lay-split.lay-mid[data-dir=y]{cursor:row-resize}.lay-split i{width:3px;height:36px;border-radius:3px;background:var(--line-strong);opacity:0;transition:opacity var(--t2),background var(--t1),height var(--t2) var(--ease)}.lay-split[data-dir=y] i{width:36px;height:3px}.lay-split:hover i,.lay-split.active i{opacity:1;height:64px;background:var(--accent)}.lay-split[data-dir=y]:hover i,.lay-split[data-dir=y].active i{width:64px;height:3px}.app.lay-dragging{-webkit-user-select:none;user-select:none}.app.lay-dragging .stage,.app.lay-dragging canvas,.app.lay-dragging iframe{pointer-events:none}.app.lay-dragging .lay-split.lay-side,.app.lay-dragging .lay-split.lay-right,.app.lay-dragging .lay-split[data-dir=x]{cursor:col-resize}.lay-side-tab{position:absolute;z-index:31;left:0;top:50%;width:18px;height:56px;margin-top:-28px;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--line-strong);border-left:none;border-radius:0 10px 10px 0;background:var(--surface);box-shadow:var(--sh-1);color:var(--muted);cursor:pointer;animation:ps-slide var(--t3) var(--ease) both}.lay-side-tab:hover{width:24px;color:var(--accent)}.lay-side-tab svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2}.lay-max.on{color:var(--accent);background:var(--accent-soft)}.lay-pop{position:fixed;z-index:1000;width:340px;padding:12px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--sh-3);animation:ps-drop var(--t2) var(--ease) both}.lay-pop h4{margin:0 0 8px;font-size:var(--fs-13)}.lay-pop h5{margin:12px 0 6px;font-size:var(--fs-12);font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.lay-arr{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.lay-arr button{display:flex;flex-direction:column;align-items:center;gap:4px;padding:7px 2px 5px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);font:inherit;font-size:var(--fs-11);white-space:nowrap;letter-spacing:-.01em;color:var(--muted);cursor:pointer;transition:border-color var(--t1),background var(--t1),color var(--t1)}.lay-arr svg{width:38px;height:20px;fill:#c7cce0;stroke:currentColor;stroke-width:1.2}.lay-arr svg .v3{fill:#dfe7fb}.lay-arr button:hover{border-color:var(--accent);color:var(--accent)}.lay-arr button.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.lay-arr button.on svg{fill:#b8c8f4}.lay-arr button.on svg .v3{fill:#cdd9f7}.lay-opts{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.lay-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);font:inherit;font-size:var(--fs-12);color:var(--muted);cursor:pointer}.lay-chip.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.lay-pop kbd{padding:0 4px;border:1px solid var(--line-strong);border-radius:var(--r-xs);font:var(--fs-10) ui-monospace,monospace;color:var(--muted)}.lay-ws{display:flex;flex-direction:column;gap:4px;max-height:min(340px,45vh);overflow-y:auto}.lay-ws button{position:relative;display:flex;flex-direction:column;gap:1px;padding:6px 28px 6px 10px;border:1px solid transparent;border-radius:var(--radius);background:var(--surface-2);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--t1),background var(--t1)}.lay-ws button:hover{border-color:var(--line-strong);background:var(--surface)}.lay-ws button.on{border-color:var(--accent);background:var(--accent-soft)}.lay-ws button.on:after{content:"✓";position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--accent);font-weight:700}.lay-ws b{font-size:var(--fs-13)}.lay-ws small{font-size:var(--fs-11);color:var(--muted)}.lay-ws i{position:absolute;right:8px;top:6px;z-index:1;padding:0 5px;border-radius:50%;font-style:normal;color:var(--muted)}.lay-ws button.on i{right:26px}.lay-ws i:hover{background:rgb(var(--ink-rgb) / .08);color:#b42318}.lay-save{width:100%;margin-top:6px;padding:7px;border:1px dashed var(--line-strong);border-radius:var(--radius);background:none;font:inherit;font-size:var(--fs-12);color:var(--accent);cursor:pointer}.lay-save:hover{border-color:var(--accent);background:var(--accent-soft)}.lay-hint{margin:10px 0 0;font-size:var(--fs-11);line-height:1.5;color:var(--muted)}.sidebar .side-pane.agent-panel:not([hidden]){flex:1 1 0;min-height:0;display:flex;flex-direction:column}.side-head:has(.ag-tools:not([hidden])) #sideTitle{flex:none}.ag-tools{flex:1;display:flex;align-items:center;gap:2px}.ag-tools[hidden]{display:none}.ag-tools [data-new]{margin-left:auto}.ag-tools .info-src{display:none!important}.ag-log{flex:1;min-height:0;overflow-y:auto;padding:14px 14px 6px;display:flex;flex-direction:column;gap:14px;scroll-behavior:smooth}.ag-hello{display:flex;flex-direction:column;gap:8px;animation:ps-pop var(--t3) var(--ease) both}.ag-hello-t{display:flex;align-items:center;gap:8px;font-size:var(--fs-12);color:var(--muted)}.ag-hello-t b{font-weight:600}.ag-orb{position:relative;flex:none;width:18px;height:18px}.ag-orb i{position:absolute;inset:0;border-radius:50%;filter:blur(1px);animation:ag-orb 6s ease-in-out infinite}.ag-orb i:nth-child(1){background:radial-gradient(circle at 30% 30%,#8fb0ff,var(--accent) 70%)}.ag-orb i:nth-child(2){inset:14% 7% 4% 18%;background:radial-gradient(circle at 60% 40%,#fb923c,transparent 70%);mix-blend-mode:screen;animation-delay:-2s}.ag-orb i:nth-child(3){inset:25% 28% 18% 11%;background:radial-gradient(circle,color-mix(in srgb,var(--surface) 80%,transparent),transparent 65%);animation-delay:-4s}@keyframes ag-orb{50%{transform:rotate(180deg) scale(1.06)}}.ag-sugg{display:flex;flex-direction:column;gap:4px;text-align:left}.ag-sugg button{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:6px 10px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);font:inherit;font-size:var(--fs-12);line-height:1.4;text-align:left;color:var(--text);cursor:pointer;transition:border-color var(--t1),background var(--t1),transform var(--t1) var(--ease)}.ag-sugg button:hover{border-color:var(--accent);background:var(--surface-2);transform:translate(2px)}.ag-key{padding:12px;border:1px solid #fde68a;border-radius:var(--radius);background:var(--warn-soft);font-size:var(--fs-12);line-height:1.5;text-align:left}.ag-key summary{font-weight:600;cursor:pointer}.ag-key ol{margin:6px 0 0;padding-left:18px}.ag-key code{padding:1px 4px;border-radius:var(--r-xs);background:var(--warn-soft);font-size:var(--fs-11)}.ag-turn{display:flex;flex-direction:column;gap:8px;animation:ps-pop var(--t3) var(--ease) both}.ag-user{align-self:flex-end;max-width:88%;padding:8px 12px;border-radius:14px 14px 4px;background:var(--ink);color:#fff;font-size:var(--fs-13);line-height:1.45;white-space:pre-wrap;box-shadow:0 6px 16px -8px #2b62e399}.ag-work{display:flex;flex-direction:column;gap:6px}.ag-run{padding:8px 10px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2)}.ag-run.folded{max-height:30px;overflow:hidden;cursor:pointer;opacity:.7;-webkit-mask-image:linear-gradient(#000 40%,transparent);mask-image:linear-gradient(#000 40%,transparent)}.ag-steps{display:flex;flex-direction:column;gap:3px}.ag-step{display:flex;gap:7px;font-size:var(--fs-12);line-height:1.4;color:var(--muted);animation:ps-fade var(--t2) both}.ag-step i{flex:none;width:15px;height:15px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:var(--fs-10);font-weight:700;background:var(--success-soft);color:var(--success-ink)}.ag-step.paid i{background:var(--accent-soft);color:var(--accent)}.ag-step.err i{background:var(--danger-soft);color:var(--danger-ink)}.ag-step.err span{color:#b42318}.ag-think{display:flex;align-items:center;gap:8px;margin-top:4px;font-size:var(--fs-12);font-weight:500;background:linear-gradient(90deg,var(--muted),var(--text),var(--muted));background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:ag-shine 2.4s linear infinite}@keyframes ag-shine{to{background-position:-300% 0}}.ag-dots{display:inline-flex;gap:3px}.ag-dots i{width:5px;height:5px;border-radius:50%;background:var(--accent);animation:ag-dot 1s ease-in-out infinite}.ag-dots i:nth-child(2){animation-delay:.15s}.ag-dots i:nth-child(3){animation-delay:.3s}@keyframes ag-dot{50%{transform:translateY(-3px);opacity:.4}}.ag-answer{padding:2px 2px 0;font-size:var(--fs-13);line-height:1.55;white-space:pre-wrap;color:var(--text)}.ag-answer.err{padding:8px 10px;border-radius:var(--radius);background:var(--danger-soft);color:var(--danger-ink)}.ag-acts{display:flex;flex-wrap:wrap;align-items:center;gap:5px}.ag-acts>button,.ag-vers button{padding:3px 10px;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);font:inherit;font-size:var(--fs-12);color:var(--muted);cursor:pointer}.ag-acts>button:hover,.ag-vers button:hover{border-color:var(--accent);color:var(--accent)}.ag-vers{display:flex;gap:4px;width:100%}.ag-vers button.on{border-color:var(--accent);background:var(--surface-2);color:var(--accent);font-weight:600}.ag-compose{padding:8px 12px 12px;border-top:1px solid var(--line);background:var(--surface)}.ag-opts{display:flex;align-items:center;gap:6px;margin-bottom:6px}.ag-opts select{min-width:0;flex:1;height:26px;font-size:var(--fs-12)}.ag-usage{flex:none;font-size:var(--fs-11);color:var(--muted)}.ag-box{position:relative;display:flex;align-items:flex-end;gap:6px;padding:6px 6px 6px 10px;border:1px solid var(--line-strong);border-radius:var(--r-xl);background:var(--surface);transition:border-color var(--t1),box-shadow var(--t2)}.ag-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #2b62e329}.ag-box textarea{flex:1;min-height:36px;max-height:160px;padding:4px 0;border:none;outline:none;resize:none;background:none;font:inherit;font-size:var(--fs-13);line-height:1.45;box-shadow:none}.ag-send{flex:none;width:32px;height:32px;display:grid;place-items:center;border:none;border-radius:var(--r-md);background:var(--ink);color:#fff;cursor:pointer;transition:transform var(--t1) var(--ease)}.ag-send:hover{transform:scale(1.06)}.ag-send svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.ag-send.stop{background:#1f2937}.ag-send.stop svg{fill:currentColor;stroke:none}.ag-send.stopping{opacity:.5}.lf-add{display:flex;flex-direction:column;gap:2px;width:100%;padding:12px;border:1.5px dashed rgba(43,98,227,.4);border-radius:var(--radius);background:var(--surface-2);font:inherit;text-align:left;color:var(--accent);cursor:pointer}.lf-add small{color:var(--muted);font-size:var(--fs-12)}.lf-add:hover{border-color:var(--accent)}.lf-card{padding:10px;border:1px solid rgba(43,98,227,.3);border-radius:var(--r-lg);background:linear-gradient(180deg,var(--surface-2),var(--surface))}.lf-head{display:flex;flex-direction:column;margin-bottom:8px}.lf-head small{color:var(--muted);font-size:var(--fs-11)}.lf-prev{display:grid;place-items:center;height:140px;margin-bottom:6px;border-radius:var(--radius);background:repeating-conic-gradient(#f1f2f6 0% 25%,#fff 0% 50%) 0 0 / 14px 14px}.lf-prev img{max-width:80%;max-height:124px}.lf-or{margin-top:14px;color:var(--muted)}.side-tabs{gap:2px}.side-tabs button{height:46px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:0 2px;font-size:var(--fs-11);font-weight:600;line-height:1;white-space:nowrap}.side-tabs button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.field>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:var(--fs-12)}.sidebar select{font-size:var(--fs-13);padding:0 22px 0 8px;text-overflow:ellipsis}.sidebar .dims{gap:0 8px}.sidebar .dims>.field:has(>select),.sidebar .dims>.field:has(>input[type=color]){min-width:0}.card .hint{position:relative;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden;padding-left:18px;font-size:var(--fs-12);line-height:1.5;color:var(--muted);cursor:pointer;transition:color var(--t1)}.card .hint:before{content:"i";position:absolute;left:0;top:2px;width:13px;height:13px;border-radius:50%;border:1px solid currentColor;font:700 var(--fs-10)/11px ui-serif,Georgia,serif;font-style:italic;text-align:center;opacity:.8}.card .hint:hover{color:var(--text)}.card .hint.open{-webkit-line-clamp:unset;color:var(--text-2)}.card .hint.short{cursor:default}.check-btn{width:100%;justify-content:center;border-color:#b2f2bb;background:var(--success-soft);color:var(--success-ink);font-weight:600;margin-bottom:8px}.check-btn svg{width:16px;height:16px}.exp-hero{width:100%;height:auto;min-height:52px;justify-content:flex-start;gap:10px;padding:8px 12px;text-align:left}.exp-hero svg{width:22px;height:22px;flex:none}.exp-hero span{display:flex;flex-direction:column;gap:2px}.exp-hero small{font-weight:400;opacity:.85;font-size:var(--fs-11)}.exp-group{margin-top:14px}.exp-group h4{margin:0 0 6px;font-size:var(--fs-11);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}.exp-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.exp-tile{height:auto;min-height:46px;flex-direction:column;align-items:flex-start;justify-content:center;gap:1px;padding:6px 10px;text-align:left;white-space:normal}.exp-tile b{font-size:var(--fs-13);font-weight:600}.exp-tile small{font-size:var(--fs-11);color:var(--muted);line-height:1.25}@media(max-width:1600px){.cmd-btn>span{display:none}.cmd-btn{flex:0 0 auto}.save-state{max-width:20px;overflow:hidden;white-space:nowrap;flex:none}.project-name{flex:1 1 220px;max-width:300px}}.pane select{width:auto;max-width:none;field-sizing:content;padding-right:24px}.field.scrub>span{cursor:ew-resize;-webkit-user-select:none;user-select:none}.field.scrub>span:hover{color:var(--accent)}body.scrubbing,body.scrubbing *{cursor:ew-resize!important;-webkit-user-select:none!important;user-select:none!important}.sidebar select{padding:0 20px 0 7px;font-size:var(--fs-13)}.sidebar .dims:not(.two){grid-auto-flow:row dense}.sidebar .dims:not(.two)>.field:has(>select){grid-column:span 2}.sidebar .field.span-all{grid-column:1 / -1}.save-state{text-overflow:clip}.ins-row select{flex:1 1 96px;min-width:86px}.ins-row>.ins-num{flex:1 1 72px;min-width:72px}.ins-row:has(>[data-talign]){flex-wrap:nowrap;gap:1px}.ins-row:has(>[data-talign]) .tool{width:27px;min-width:27px;padding:0;justify-content:center}@media(max-width:1600px){.save-state{font-size:0;width:18px;max-width:18px;text-align:center}.save-state:before,.save-state.ok:before{font-size:var(--fs-14);content:"✓";color:#2b8a3e}.save-state.busy:before{content:"•••";font-size:var(--fs-11);color:var(--muted)}.save-state.err:before{content:"!";color:var(--danger);font-weight:700}}.ai-tabs{overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 24px),transparent)}.ai-tabs::-webkit-scrollbar{display:none}.ai-tabs button{flex:1 0 auto;white-space:nowrap}.field.span-all{grid-column:1 / -1}.ai-key-banner{display:flex;align-items:center;gap:10px;margin:10px 12px 0;padding:8px 12px;border:1px solid #e0d7ff;border-radius:var(--r-md);background:var(--accent-soft);color:#4b3fa8;font-size:var(--fs-12);text-align:left;cursor:pointer}.ai-key-banner span{flex:1}.ai-key-banner b{flex:none;padding:3px 9px;border-radius:var(--r-sm);background:#5b4bd6;color:#fff;font-size:var(--fs-12)}.ai-key-banner:hover{border-color:#c9bcff}.panel-seg{display:flex;align-items:center;gap:2px;padding:3px;border-radius:var(--r-lg);background:rgb(var(--ink-rgb) / .055);box-shadow:inset 0 1px 2px #1118270d}.panel-seg .btn.ai-toggle,.panel-seg .btn.ai-toggle.brand-toggle,.panel-seg .btn.ai-toggle.asset-toggle{height:30px;padding:0 11px;gap:6px;border:0;border-radius:var(--radius);background:transparent;box-shadow:none;color:#4a5262;font-weight:600;transform:none}.panel-seg .btn.ai-toggle:hover{background:color-mix(in srgb,var(--surface) 70%,transparent);color:var(--text)}.panel-seg .btn.ai-toggle svg{width:16px;height:16px}.panel-seg .asset-toggle svg{color:#0d9488}.panel-seg .brand-toggle svg{color:#ea580c}.panel-seg #btnAI svg{color:var(--accent)}.panel-seg .btn.ai-toggle.active,.panel-seg .btn.ai-toggle.active:hover{background:var(--surface);box-shadow:0 1px 2px #1118271f,0 0 0 1px var(--line);color:var(--text)}.panel-seg .asset-toggle.active{color:#0f766e!important}.panel-seg .brand-toggle.active{color:#c2410c!important}.panel-seg #btnAI.active{color:var(--accent)!important}.insert-wrap{position:relative;flex:none}.insert-btn{gap:5px;padding:0 8px 0 7px;font-weight:600}.insert-btn>span{display:inline!important}.insert-btn .caret{width:13px!important;height:13px!important;opacity:.6}.pane-head .toolbar{overflow:visible}.insert-menu{position:absolute;z-index:30;top:calc(100% + 6px);left:0;width:270px;padding:6px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:0 16px 40px -12px #0f121e4d;display:flex;flex-direction:column;gap:1px;animation:pop-in .14s var(--ease)}.insert-menu[hidden]{display:none}.insert-menu .tool{width:100%;height:auto;min-height:44px;display:grid;grid-template-columns:24px 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;padding:6px 10px;text-align:left;border-radius:var(--radius)}.insert-menu .tool svg{grid-row:1 / 3;width:20px;height:20px;color:var(--text-2)}.insert-menu .tool>span{display:block!important;font-weight:600;font-size:var(--fs-13);color:var(--text)}.insert-menu .tool small{display:block;font-size:var(--fs-11);color:var(--muted);line-height:1.3}.insert-menu .tool:hover{background:var(--accent-soft)}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px)}}.pop-menu{position:fixed;z-index:9000;padding:6px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:0 16px 40px -12px #0f121e4d;display:flex;flex-direction:column;gap:1px;animation:pop-in .14s var(--ease)}.pop-menu button{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:8px 10px;border:0;border-radius:var(--radius);background:none;text-align:left;cursor:pointer}.pop-menu button:hover,.pop-menu button:focus-visible{background:var(--accent-soft);outline:none}.pop-menu b{font-size:var(--fs-13);font-weight:600}.pop-menu small{font-size:var(--fs-11);color:var(--muted)}.set-add{display:block}.set-add-btn{width:100%;justify-content:center;gap:6px;border-style:dashed;color:var(--accent);font-weight:600}.set-add-btn svg{width:15px;height:15px}.goods-btn{flex-direction:row;align-items:center;gap:8px;min-height:34px;padding:6px 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);font-weight:600;font-size:var(--fs-13);white-space:nowrap;overflow:hidden}.goods-btn span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;text-align:right;font-size:var(--fs-12);color:var(--muted)}.goods-btn:after{content:"›";font-size:var(--fs-16);color:var(--muted)}.goods-btn:hover{background:var(--surface);border-color:var(--accent);border-style:solid}.flat-more{margin-top:6px}.flat-more summary{cursor:pointer;font-size:var(--fs-12);color:var(--accent);list-style:none}.flat-more summary:before{content:"▸ "}.flat-more[open] summary:before{content:"▾ "}.flat-more .sub{display:block;margin-top:4px}.insert-menu .tool{align-content:center;row-gap:1px;min-height:46px}.insert-menu .tool>span,.insert-menu .tool small{line-height:1.3}.page-grid .picker-thumb{height:150px;display:grid;place-items:center;background:repeating-conic-gradient(#f1f2f5 0% 25%,#fff 0% 50%) 0 0 / 14px 14px}.page-grid .picker-thumb img{max-width:100%;max-height:100%;box-shadow:0 1px 4px #0000002e}.page-card{cursor:pointer}.page-card:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-ring)}.page-foot{display:flex;gap:8px;padding:12px 18px;border-top:1px solid var(--line)}.picker.press{width:min(560px,100%)}.press-body{display:grid;gap:14px;padding-top:14px}.press-body .text-mode{justify-self:start}.press-cmyk{display:grid;gap:12px}.press-cmyk.off{opacity:.4;pointer-events:none}.press-cmyk .field{display:grid;gap:4px}.press-opts{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}.press-opts label{display:flex;align-items:center;gap:6px;font-size:var(--fs-13);min-width:0}.press-opts small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.press-opts label:has(input:disabled){color:var(--muted)}.press-note{margin:0;font-size:var(--fs-12);color:var(--muted)}.press-note .sw,.press-gamut i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:4px;vertical-align:-1px;box-shadow:inset 0 0 0 1px #00000026}.press-report{border-top:1px solid var(--line);padding-top:10px;display:grid;gap:6px}.press-report h3{margin:4px 0 0}.press-report ul{margin:0;padding-left:18px;font-size:var(--fs-13);line-height:1.6}.press-gamut{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:var(--fs-12)}.press-prep{display:grid;gap:10px;border-top:1px solid var(--line);padding-top:12px}.press-prep-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.press-prep h3{margin:0;font-size:var(--fs-13)}.press-prep .num{width:64px;padding:3px 6px;font-size:var(--fs-13)}.press-prep .press-opts label{white-space:nowrap}.press-flexo{display:grid;gap:8px}.press-flexo[hidden]{display:none}.press-flexo-on{display:flex;align-items:center;gap:6px;font-size:var(--fs-13)}.press-flexo-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.press-flexo-row .num,.press-flexo-row select{width:100%}.press-flexo-row.off{opacity:.4;pointer-events:none}.press-note.warn{color:#b54708}.press-status{align-self:center;font-size:var(--fs-12);color:var(--muted)}.die-rules{margin-top:8px;border-top:1px solid var(--line);padding-top:6px}.die-rules summary{cursor:pointer;font-size:var(--fs-13);color:var(--muted);padding:4px 0}.die-rules[open] summary{color:var(--ink)}.dr-note{margin:6px 0 8px;font-size:var(--fs-12);line-height:1.6;color:var(--muted)}.dr-sw{display:inline-block;width:10px;height:3px;border-radius:2px;margin:0 4px 2px 0;background:var(--c);vertical-align:middle}.dr-folds{display:grid;gap:4px;max-height:260px;overflow:auto;padding-right:2px}.dr-fold{display:grid;grid-template-columns:minmax(0,1fr) 124px;align-items:center;gap:8px;font-size:var(--fs-12)}.dr-fold span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dr-fold.changed span{color:var(--accent);font-weight:600}.dr-fold select{height:28px;font-size:var(--fs-12)}.press-wc{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.press-wc select{width:100%}.ai-go-row{display:grid;grid-template-columns:1fr auto;gap:6px}.ai-go-row .ai-go{margin:0}.ai-go-row #gExplore{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}#gResults:has(>.pk-card){grid-template-columns:repeat(2,minmax(0,1fr))}.ai-info{display:inline-flex;margin-left:4px;color:var(--muted);cursor:help}.ai-info svg{width:14px;height:14px}.ai-action.free i{color:var(--ok, #12805c);font-weight:600}.ai-try{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.ai-try .btn{display:inline-flex;align-items:center;gap:6px}.ai-try-on{display:inline-flex;align-items:center;gap:6px;padding:2px 2px 2px 10px;border:1px solid var(--accent);border-radius:var(--r-sm);background:var(--accent-soft)}.ai-try-on b{font-size:var(--fs-12);color:var(--accent)}.ai-try-on[hidden]{display:none}#dReuse{margin-left:auto}.ai-lib-bar{display:grid;grid-template-columns:1fr auto;gap:6px;margin-bottom:8px}.ai-lib-bar input{min-width:0}:root{--bg: #f1f1ef;--surface: #ffffff;--surface-2: var(--surface-2);--surface-3: var(--surface-3);--field: var(--field);--field-hover: var(--field-hover);--line: rgba(28, 28, 32, .08);--line-strong: rgba(28, 28, 32, .14);--text: #1c1c20;--text-2: #3c3c43;--muted: #74747c;--faint: #a3a3aa;--ink: #1c1c20;--ink-hover: #34343b;--accent: var(--accent);--accent-2: var(--accent);--accent-soft: #edf2fe;--accent-ring: rgba(43, 98, 227, .2);--radius: 8px;--r-sm: 7px;--r-lg: 12px;--r-xl: 14px;--sh-1: 0 0 0 1px rgba(28, 28, 32, .05), 0 1px 2px rgba(28, 28, 32, .04);--sh-2: 0 0 0 1px rgba(28, 28, 32, .06), 0 6px 20px -6px rgba(28, 28, 32, .14);--sh-3: 0 0 0 1px rgba(28, 28, 32, .06), 0 24px 60px -16px rgba(28, 28, 32, .3);--chev: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2374747c' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E")}html,body{background:var(--bg);color:var(--text);font-size:var(--fs-13)}::selection{background:#2b62e32e}.topbar{background:color-mix(in srgb,var(--surface) 86%,transparent);border-bottom:1px solid var(--line);gap:8px}.brand{gap:9px;font-weight:700;font-size:var(--fs-16)}.brand svg{width:26px;height:26px;padding:5px;border-radius:var(--radius);background:var(--ink);color:#fff;filter:none;stroke-width:2}.brand span{background:none;-webkit-background-clip:initial;background-clip:initial;color:var(--text)}.project-name{border-color:transparent;background:transparent;font-weight:600}.project-name:hover{background:var(--field)}.project-name:focus{background:var(--surface);border-color:var(--accent)}.proj-status{border-radius:var(--r-sm);border:0;background:var(--surface-3);color:var(--text-2);font-weight:500;box-shadow:none}.cmd-btn{border:0;background:var(--field);box-shadow:none}.cmd-btn:hover{background:var(--field-hover);box-shadow:none}.cmd-btn kbd{background:var(--surface);border:0;box-shadow:0 0 0 1px var(--line);color:var(--muted)}.seg{background:transparent;padding:0;gap:0}.seg .btn:hover{background:var(--field);box-shadow:none}.top-actions{gap:4px}.top-actions>.seg+.seg,.top-actions>.btn+.seg{margin-left:4px;padding-left:4px;border-left:1px solid var(--line);border-radius:0}.panel-seg{margin-left:6px;padding:3px;gap:2px;border:0;border-radius:var(--r-md);background:var(--surface-3);box-shadow:none}.panel-seg .btn.ai-toggle,.panel-seg .btn.ai-toggle.brand-toggle,.panel-seg .btn.ai-toggle.asset-toggle{height:28px;padding:0 11px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--text-2);font-weight:500;box-shadow:none;transform:none}.panel-seg .btn.ai-toggle:hover{background:color-mix(in srgb,var(--surface) 60%,transparent);color:var(--text);transform:none;box-shadow:none}.panel-seg .btn.ai-toggle svg,.panel-seg .asset-toggle svg,.panel-seg .brand-toggle svg,.panel-seg #btnAI svg{color:currentColor;opacity:.8}.panel-seg .btn.ai-toggle.active,.panel-seg .btn.ai-toggle.active:hover,.panel-seg .asset-toggle.active,.panel-seg .brand-toggle.active,.panel-seg #btnAI.active{background:var(--surface);color:var(--text)!important;box-shadow:0 1px 2px #1c1c201a,0 0 0 1px #1c1c200a}.panel-seg .btn.ai-toggle.active svg{opacity:1}.btn{height:30px;border-radius:var(--r-sm);border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font-weight:500;box-shadow:none}.btn:hover{background:var(--surface-2);border-color:rgb(var(--ink-rgb) / .22)}.btn.ghost{border-color:transparent;background:transparent}.btn.ghost:hover{background:var(--field);border-color:transparent}.btn.icon{width:30px}.btn.primary,.btn.primary.exp-hero{background:var(--ink);border-color:var(--ink);color:#fff;box-shadow:0 1px 2px #1c1c2033}.btn.primary:hover,.btn.primary.exp-hero:hover{background:var(--ink-hover);border-color:var(--ink-hover);box-shadow:0 1px 2px #1c1c2033}.btn.primary svg{color:#fff}.btn:focus-visible,.tool:focus-visible,.btn.ai-toggle:focus-visible,.cmd-btn:focus-visible{box-shadow:0 0 0 3px var(--accent-ring)}input[type=number],input[type=text],input[type=search],input[type=password],input[type=email],input[type=url],input:not([type]),select,textarea{border:1px solid transparent;border-radius:var(--r-sm);background-color:var(--field);color:var(--text);box-shadow:none}input[type=number]:hover,input[type=text]:hover,input[type=search]:hover,input[type=password]:hover,input[type=email]:hover,input[type=url]:hover,input:not([type]):hover,select:hover,textarea:hover{border-color:transparent;background-color:var(--field-hover)}input[type=number]:focus,input[type=text]:focus,input[type=search]:focus,input[type=password]:focus,input[type=email]:focus,input[type=url]:focus,input:not([type]):focus,select:focus,textarea:focus{outline:none;background-color:var(--surface);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}input::placeholder,textarea::placeholder{color:var(--faint)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}select{-webkit-appearance:none;appearance:none;padding-right:24px!important;background-image:var(--chev);background-repeat:no-repeat;background-position:right 6px center;background-size:14px 14px;text-overflow:ellipsis;cursor:pointer}select:disabled{opacity:.55;cursor:default}input[type=checkbox],input[type=radio]{-webkit-appearance:none;appearance:none;flex:none;width:16px;height:16px;margin:0;border:1.5px solid rgb(var(--ink-rgb) / .28);border-radius:var(--r-xs);background:#fff center / 12px 12px no-repeat;cursor:pointer;transition:background-color var(--t1),border-color var(--t1),box-shadow var(--t1)}input[type=radio]{border-radius:50%}input[type=checkbox]:hover,input[type=radio]:hover{border-color:#1c1c2073}input[type=checkbox]:checked{border-color:var(--ink);background-color:var(--ink);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5'/%3E%3C/svg%3E")}input[type=checkbox]:indeterminate{border-color:var(--ink);background-color:var(--ink);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round'%3E%3Cpath d='M6 12h12'/%3E%3C/svg%3E")}input[type=radio]:checked{border:5px solid var(--ink)}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-ring)}input[type=checkbox]:disabled,input[type=radio]:disabled{opacity:.45;cursor:default}input[type=range]{-webkit-appearance:none;appearance:none;height:18px;background:transparent;cursor:pointer}input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:99px;background:#dcdcd8}input[type=range]::-moz-range-track{height:4px;border-radius:99px;background:#dcdcd8}input[type=range]::-moz-range-progress{height:4px;border-radius:99px;background:var(--ink)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;margin-top:-5px;border-radius:50%;background:var(--surface);border:0;box-shadow:0 0 0 1px #1c1c202e,0 1px 3px #1c1c2040;transition:transform var(--t1) var(--ease)}input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--surface);border:0;box-shadow:0 0 0 1px #1c1c202e,0 1px 3px #1c1c2040}input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.12)}input[type=range]:focus{outline:none}input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 1px var(--accent),0 0 0 4px var(--accent-ring)}input[type=color]{-webkit-appearance:none;appearance:none;padding:0;border:0;border-radius:var(--r-sm);background:transparent;box-shadow:inset 0 0 0 1px #1c1c201f;cursor:pointer;overflow:hidden}input[type=color]::-webkit-color-swatch-wrapper{padding:0}input[type=color]::-webkit-color-swatch{border:0;border-radius:var(--r-sm);box-shadow:inset 0 0 0 1px #1c1c201f}input[type=color]::-moz-color-swatch{border:0;border-radius:var(--r-sm)}input[type=color]:hover{box-shadow:inset 0 0 0 1px #1c1c201f,0 0 0 3px var(--field-hover)}.unit i{color:var(--faint);font-style:normal}.field.is-auto .unit input{border:1px dashed rgb(var(--ink-rgb) / .22);background:transparent;color:var(--muted)}.field.is-auto .unit input:hover{background:var(--field)}.field>span,.field-label{color:var(--muted);font-weight:500}.card{border:0;border-radius:var(--r-lg);box-shadow:var(--sh-1)}.card h2{color:var(--muted);font-size:var(--fs-11);font-weight:600;letter-spacing:.06em}.side-tabs{background:var(--surface-3);box-shadow:none;border-radius:var(--r-md);padding:3px}.side-tabs button{color:var(--muted);border-radius:var(--r-sm)}.side-tabs button.active{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #1c1c201a,0 0 0 1px #1c1c200a}.type-btn,.goods-btn{border:0;background:var(--field);box-shadow:none}.type-btn:hover,.goods-btn:hover{background:var(--field-hover);border:0}.toggle,.field-check{gap:9px;color:var(--text-2)}.card .hint,.hint{color:var(--muted)}.card .hint:before{opacity:.6}details>summary{color:var(--text-2);font-weight:500}.pane,.ai{border:0;border-radius:var(--r-lg);box-shadow:var(--sh-1)}.pane-head,.ai-head{border-bottom:1px solid var(--line)}.pane-head h3,.ai-head h3{font-weight:600;letter-spacing:-.01em}.pane-foot{border-top:1px solid var(--line);color:var(--muted)}.toolrail{border-right:1px solid var(--line)}.tool{border-radius:var(--r-sm);color:var(--text-2)}.tool:hover{background:var(--field)}.tool.active{background:var(--ink);color:#fff;box-shadow:none}.ai-tabs{border-bottom:1px solid var(--line)}.ai-tabs button{color:var(--muted);font-weight:500}.ai-tabs button.active{color:var(--text);box-shadow:inset 0 -2px 0 var(--ink)}.ai-chip{border:0;border-radius:var(--r-sm);background:var(--field);color:var(--text-2)}.ai-chip:hover{background:var(--field-hover);border:0}.ai-chip.active{background:var(--ink);color:#fff}.ai-link,.ai-link-btn{color:var(--accent)}.picker-overlay{background:rgb(var(--ink-rgb) / .32);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.picker{border:0;border-radius:var(--r-xl);box-shadow:var(--sh-3)}.picker-card{border:0;background:var(--surface-2);box-shadow:none}.picker-card:hover{background:var(--surface);box-shadow:var(--sh-2)}.picker-card.current{background:var(--surface);box-shadow:0 0 0 2px var(--ink)}.picker-thumb{background:var(--surface);border:0}kbd{background:var(--surface-2);border:0;box-shadow:inset 0 0 0 1px var(--line-strong);color:var(--text-2)}.toast{background:var(--ink);color:#fff;border:0;box-shadow:var(--sh-3)}.topbar .seg{border:0;margin:0;overflow:visible;border-radius:0}.topbar .seg button+button{border-left:0}.seg:not(.topbar .seg){border:0;padding:2px;gap:2px;border-radius:var(--radius);background:var(--surface-3)}.seg:not(.topbar .seg) button{border-radius:var(--r-sm);background:transparent;color:var(--text-2)}.seg:not(.topbar .seg) button+button{border-left:0}.seg:not(.topbar .seg) button.active{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #1c1c201a}#stage2d{background-color:var(--surface-3);background-image:radial-gradient(rgba(28,28,32,.09) 1px,transparent 1.3px)}.ins-num,.font-btn{border:1px solid transparent;background:var(--field)}.ins-num:hover,.font-btn:hover{background:var(--field-hover)}.ins-num:focus-within{background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.ins-num input[type=number],.ins-num input[type=number]:hover,.ins-num input[type=number]:focus{background:transparent;border:0;box-shadow:none}.ins-num i,.ins-num span{color:var(--faint)}.ins-head{background:transparent}.ins-top{display:flex;align-items:center;gap:8px;min-width:0}.ins-top .ins-title{flex:1}.ins-icos{display:flex;gap:1px;flex:none}.ins-icos .tool{width:28px;height:28px}.ins-icos .tool svg{width:15px;height:15px}.ins-icos .tool[data-act=del]:hover{background:var(--danger-soft);color:var(--danger-ink)}.ins-acts{margin-top:8px}.ins-act{border:0;background:var(--field)}.ins-act:hover{border:0;background:var(--field-hover)}.ai-key-banner{border:0;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);color:var(--text-2)}.ai-key-banner b{background:var(--ink)}.ai-key-banner:hover{background:var(--surface-3)}.as-search input,.ag-box textarea,.cmdk-in input,.kit-color input[type=text],.kit-color input.spot,.selbar .sb-size input,.as-search input:hover,.ag-box textarea:hover,.cmdk-in input:hover,.kit-color input[type=text]:hover,.kit-color input.spot:hover,.selbar .sb-size input:hover,.as-search input:focus,.ag-box textarea:focus,.cmdk-in input:focus,.kit-color input[type=text]:focus,.kit-color input.spot:focus,.selbar .sb-size input:focus{border:0;background:transparent;box-shadow:none}.as-search{border:1px solid transparent;background:var(--field);box-shadow:none}.as-search:focus-within{background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.ag-box{border-color:var(--line-strong);border-radius:var(--r-lg)}.ag-box:focus-within{box-shadow:0 0 0 3px var(--accent-ring)}.ag-send{background:var(--ink)}.as-tabs{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 24px),transparent);padding-right:18px}.studio-card{border:0;background:var(--surface-2)}.studio-card:hover{background:var(--surface-3)}.studio-card.on{background:var(--surface);color:var(--text);box-shadow:0 0 0 2px var(--ink)}.studio-card.on svg .front,.studio-card.on svg rect:not([class]){fill:var(--ink)}.studio-card.on svg .side{fill:#4a4a52}.tpl-empty{grid-column:1 / -1;padding:24px 0;text-align:center}.btn.exp-tile,.btn.exp-hero{height:auto}.exp-hero small{white-space:normal}.sidebar{container:side / inline-size}@container side (max-width: 290px){.exp-grid{grid-template-columns:1fr}.exp-tile{min-height:0}.exp-tile b,.exp-tile small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.dims{grid-template-columns:repeat(2,minmax(0,1fr))}.side-tabs button{font-size:var(--fs-10);letter-spacing:-.01em}}.size-mode-row{align-items:end}.size-mode-note{margin:0 0 9px;font-size:var(--fs-12);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn.check-btn.score-btn{border-color:var(--line-strong);background:var(--surface);color:var(--text)}.btn.check-btn.score-btn svg{color:#c77c02}.side-seg{display:inline-flex;background:var(--field);border-radius:var(--radius);padding:2px;margin-left:8px;flex:none}.side-seg[hidden]{display:none}.side-seg button{border:0;background:none;font:inherit;font-size:var(--fs-12);font-weight:600;color:var(--muted);padding:3px 10px;border-radius:var(--r-sm);cursor:pointer}.side-seg button.on{background:var(--surface);color:var(--text);box-shadow:var(--sh-1)}.pane.inside-mode .side-seg button.on{background:var(--warn-soft);color:var(--warn-ink)}.pane.inside-mode .stage{box-shadow:inset 0 0 0 2px #f2b46b}.welcome-cards.tools{grid-template-columns:repeat(3,minmax(0,1fr))}.welcome-cards.tools .welcome-card.hero{grid-column:span 1}.welcome-ask{display:grid;gap:8px;margin-bottom:14px;padding:14px 16px;border-radius:var(--r-xl);background:linear-gradient(135deg,#fff4ec,#fbe3d4)}.welcome-ask label{font-weight:600;font-size:var(--fs-16);color:#8a2f0f}.welcome-ask-row{display:flex;gap:8px}.welcome-ask-row input{flex:1;height:40px;font-size:var(--fs-14);background:var(--surface)}.welcome-ask-row .btn{height:40px}.welcome-ask-ex{display:flex;flex-wrap:wrap;gap:6px}.welcome-ask-ex button{border:0;border-radius:var(--r-sm);padding:4px 11px;background:color-mix(in srgb,var(--surface) 70%,transparent);color:var(--text-2);font:inherit;font-size:var(--fs-12);cursor:pointer}.welcome-ask-ex button:hover{background:var(--surface);color:var(--text)}svg.ic{width:16px;height:16px;flex:none;fill:none!important;stroke:currentColor!important;stroke-width:var(--ic-weight, 2)!important;stroke-linecap:round;stroke-linejoin:round;overflow:visible;vertical-align:-.125em;transition:transform var(--t2, .18s) var(--spring, ease),color var(--t1, .12s)}svg.ic *{fill:none!important;stroke:inherit!important;vector-effect:none}.rail-nav>button svg.ic{width:20px;height:20px;--ic-weight: 1.75}.toolrail .rail-btn svg.ic,#toolrail .rail-btn svg.ic{width:18px;height:18px;--ic-weight: 1.85}svg.ic.caret{width:12px;height:12px;--ic-weight: 2.5}.btn.icon:not(.primary):not(.active):not([aria-pressed=true]),.tool:not(.active):not(.danger),.layer-btn:not(.on),.clear-btn,.topbar .seg .btn.ghost,#toolrail .rail-btn:not(.active){color:var(--muted)}.btn.icon:not(.primary):hover,.tool:not(.active):hover,.topbar .seg .btn.ghost:hover,#toolrail .rail-btn:not(.active):hover,.layer-btn:hover,.clear-btn:hover{color:var(--text)}.btn:active>svg.ic,.tool:active>svg.ic,.layer-btn:active>svg.ic,.clear-btn:active>svg.ic,.rail-btn:active>svg.ic{transform:scale(.9)}.btn:has(>svg.ic){gap:8px}svg.ic.tile{width:28px;height:28px;padding:5px;border-radius:var(--radius);margin-right:2px;--ic-weight: 1.85;box-sizing:border-box}svg.ic.tile-teal{color:#0f766e;background:linear-gradient(160deg,#e3f6f2,#cdeee7);box-shadow:inset 0 0 0 1px #0f766e1f}svg.ic.tile-violet{color:#6d28d9;background:linear-gradient(160deg,#f1eafe,#e3d6fd);box-shadow:inset 0 0 0 1px #6d28d91f}.goods-btn{gap:10px}.goods-btn:hover svg.ic.tile{transform:scale(1.06) rotate(-3deg)}h2>svg.ic.h-ic{width:17px;height:17px;margin-right:8px;color:var(--muted);vertical-align:-3px}.card:not(.folded)>h2>svg.ic.h-ic{color:var(--text-2)}.tip{position:fixed;left:0;top:0;z-index:10000;max-width:260px;padding:7px 10px 8px;border-radius:var(--r-md);background:#18181cf0;backdrop-filter:blur(10px) saturate(1.4);-webkit-backdrop-filter:blur(10px) saturate(1.4);color:#fff;font-size:var(--fs-12);line-height:1.45;letter-spacing:.005em;box-shadow:0 0 0 1px #ffffff0f inset,0 10px 30px -8px #00000073;pointer-events:none;opacity:0;scale:.97;transition:opacity .12s ease,scale .16s cubic-bezier(.2,.9,.3,1.2)}.tip.wide{max-width:320px}.tip.in{opacity:1;scale:1}.tip[data-side=right]{transform-origin:left center}.tip-head{display:flex;align-items:center;gap:10px;justify-content:space-between}.tip-head b{font-weight:600}.tip-keys{display:inline-flex;gap:3px;margin-left:auto}.tip kbd{font:500 var(--fs-11)/1 ui-sans-serif,-apple-system,system-ui,sans-serif;min-width:18px;height:18px;padding:0 5px;display:inline-grid;place-items:center;border-radius:var(--r-xs);color:#ffffffeb;background:color-mix(in srgb,var(--surface) 12%,transparent);box-shadow:inset 0 -1px #00000059,inset 0 0 0 1px #ffffff14}.tip p{margin:2px 0 0;color:#ffffffb3}.tip-head+p{margin-top:3px}@media(prefers-reduced-motion:reduce){.tip,svg.ic{transition:none}}.clear-btn>svg.ic{width:14px;height:14px}.pane-foot .foot-hint>svg.ic{width:15px;height:15px;margin-right:2px;color:var(--muted)}.fold-bar .btn.icon>svg.ic{width:18px;height:18px}.fold-bar .btn.primary>svg.ic{width:16px;height:16px;margin-right:6px}:root{--font-ui: "Geist", "Be Vietnam Pro", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--fs-10: 10px;--fs-11: 11px;--fs-12: 12px;--fs-13: 13px;--fs-14: 14px;--fs-16: 16px;--fs-18: 18px;--fs-22: 22px;--fs-28: 28px;--fs-36: 36px;--fs-48: 48px;--lh: 1.45;--lh-tight: 1.2;--desk: #ededee;--desk-dot: rgba(9, 9, 11, .075);--bg: #ededee;--surface: #ffffff;--surface-2: #f7f7f8;--surface-3: #f0f0f1;--field: #f3f3f4;--field-hover: #ebebec;--island: #ffffff;--line: rgba(9, 9, 11, .11);--line-strong: rgba(9, 9, 11, .2);--hair: rgba(9, 9, 11, .1);--ink-rgb: 9 9 11;--ruler-bg: #f7f7f8;--ruler-line: #c9c9cf;--ruler-text: #5f5f68;--text: #09090b;--text-2: #27272a;--muted: #55555e;--faint: #8b8b94;--ink: #09090b;--ink-hover: #27272a;--accent: #2f6bf2;--accent-2: #2f6bf2;--accent-hover: #1f5ae0;--accent-soft: #eef3fe;--accent-ring: rgba(47, 107, 242, .28);--danger: #e5484d;--success: #1f9d55;--warn: #d97706;--danger-soft: #fdeced;--success-soft: #e9f7ee;--warn-soft: #fff4e2;--danger-ink: #c22a30;--success-ink: #18794a;--warn-ink: #a85a00;--r-xs: 3px;--r-sm: 4px;--radius: 6px;--r-md: 7px;--r-lg: 8px;--r-xl: 10px;--island-r: 10px;--sh-1: 0 0 0 1px rgba(9, 9, 11, .06), 0 1px 2px rgba(9, 9, 11, .04);--sh-2: 0 0 0 1px rgba(9, 9, 11, .06), 0 2px 4px rgba(9, 9, 11, .04), 0 8px 24px -8px rgba(9, 9, 11, .16);--sh-3: 0 0 0 1px rgba(9, 9, 11, .07), 0 4px 8px rgba(9, 9, 11, .05), 0 24px 56px -12px rgba(9, 9, 11, .28);--island-sh: 0 0 0 1px rgba(9, 9, 11, .1);--glass: rgba(255, 255, 255, .8);--glass-strong: rgba(255, 255, 255, .92);--glass-sh: 0 0 0 1px rgba(9, 9, 11, .07), 0 1px 2px rgba(9, 9, 11, .05), 0 10px 28px -12px rgba(9, 9, 11, .28);--ease: cubic-bezier(.2, .8, .2, 1);--t1: .12s;--t2: .18s;--t3: .28s;color-scheme:light;font-family:var(--font-ui);font-size:var(--fs-13);font-weight:450;line-height:var(--lh);letter-spacing:-.006em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}html,body{background:var(--desk);color:var(--text);font-size:var(--fs-13)}body{background-image:none}button,input,select,textarea{font-family:inherit;letter-spacing:inherit}input[type=number],input[inputmode=decimal],input[inputmode=numeric],.num,.tnum,kbd,td,output{font-variant-numeric:tabular-nums}code,kbd,pre,samp{font-family:var(--font-mono);font-size:.92em}h1,h2,h3,h4{letter-spacing:-.011em;line-height:var(--lh-tight)}:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:1px}::selection{background:#2f6bf233}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}}.quick-starts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:2px 0 4px}.quick-starts .goods-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:0;padding:10px 4px 9px;border:0;border-radius:var(--radius);background:var(--field);box-shadow:none;font-size:var(--fs-12);font-weight:500;line-height:1.25;color:var(--text-2);text-align:center;white-space:normal;transition:background var(--t1) var(--ease),color var(--t1) var(--ease)}.quick-starts .goods-btn:after,.quick-starts .goods-btn>span{display:none}.quick-starts .goods-btn:hover{background:var(--field-hover);color:var(--text)}.quick-starts .goods-btn svg.ic.tile{margin:0;width:30px;height:30px}svg.ic.tile-amber{color:#b45309;background:linear-gradient(160deg,#fdf3e3,#fbe5c3);box-shadow:inset 0 0 0 1px #b453091f}.type-name{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.card .hint{-webkit-line-clamp:2;color:var(--muted)}.card .hint:before{font:600 var(--fs-10)/11px var(--font-ui);font-style:normal}summary{list-style:none;display:flex;align-items:center;gap:6px;width:fit-content;font-weight:500}summary::-webkit-details-marker{display:none}summary:before,.flat-more summary:before,.flat-more[open] summary:before{content:"";flex:none;width:12px;height:12px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 6 6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 6 6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;transition:transform var(--t2) var(--ease)}details[open]>summary:before{transform:rotate(90deg)}.cmdk-item mark{background:none;color:inherit;font-weight:600;text-decoration:underline;text-decoration-color:var(--accent-ring);text-decoration-thickness:2px;text-underline-offset:3px}@keyframes ds-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}.mh-thumb{background:var(--surface-3)}.mh-spin{display:none}.mh-card:not(.ready):not(.failed) .mh-thumb:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.65) 50%,transparent 80%);animation:ds-sweep 1.4s var(--ease) infinite;pointer-events:none}.product-stage{margin:2px 0 10px;border-radius:var(--r-lg);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);overflow:hidden}.product-stage .type-btn{display:flex;align-items:center;gap:10px;width:100%;min-height:56px;padding:8px 10px 8px 8px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:var(--surface);box-shadow:none;text-align:left;transition:background var(--t1) var(--ease)}.product-stage .type-btn:hover{background:var(--surface)}.product-stage .type-thumb{width:48px;height:38px;border-radius:var(--r-sm);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line)}.type-text{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.type-text .type-name{font-size:var(--fs-14);font-weight:600;letter-spacing:-.011em;color:var(--text)}.type-text small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:var(--fs-12);color:var(--muted)}.type-change{display:inline-flex;align-items:center;gap:2px;flex:none;height:26px;padding:0 6px 0 9px;border-radius:999px;background:var(--field);font-size:var(--fs-12);font-weight:500;color:var(--text-2);transition:background var(--t1) var(--ease),color var(--t1) var(--ease)}.type-change svg.ic.caret{width:14px;height:14px}.product-stage .type-btn:hover .type-change{background:var(--ink);color:#fff}.dim-viz{background:radial-gradient(circle at 1px 1px,var(--desk-dot) 1px,transparent 1.3px) 0 0 / 14px 14px;cursor:default}.dim-viz[hidden]{display:none}.dim-viz.enter .dd{animation:ds-rise .36s var(--ease)}@keyframes ds-rise{0%{opacity:0;transform:translateY(6px) scale(.97)}}.dd{stroke:none;stroke-width:1;display:block;width:100%;height:auto}.dd-f{stroke:#09090b61;stroke-width:1;stroke-linejoin:round}.dd-front{fill:url(#ddFront)}.dd-side{fill:url(#ddSide)}.dd-top{fill:url(#ddTop)}.dd-shadow{fill:url(#ddShadow)}.dd-hole{fill:var(--surface-2);stroke:#09090b61}.dd-handle{fill:none;stroke:#3f3f46;stroke-width:2.2;stroke-linecap:round}.dd-handle.back{stroke:#a1a1aa}.dd-dim{cursor:ew-resize;color:var(--muted);transition:color var(--t1) var(--ease)}.dd-dim line{stroke:currentColor;stroke-width:1}.dd-pill rect{fill:var(--surface);stroke:var(--line-strong);stroke-width:1;transition:fill var(--t1) var(--ease),stroke var(--t1) var(--ease)}.dd-pill text{fill:var(--text-2);font:500 10.5px/1 var(--font-ui);font-variant-numeric:tabular-nums;letter-spacing:0}.dd-dim[data-k=H]{cursor:ns-resize}.dd-dim:hover,.dd-dim.hot{color:var(--accent)}.dd-dim:hover .dd-pill rect,.dd-dim.hot .dd-pill rect{fill:var(--accent);stroke:var(--accent)}.dd-dim:hover .dd-pill text,.dd-dim.hot .dd-pill text{fill:#fff}.dd-dim.hot line{stroke-width:1.6}@keyframes ds-flash{0%{box-shadow:0 0 0 0 var(--accent-ring)}30%{box-shadow:0 0 0 4px var(--accent-ring)}to{box-shadow:0 0 0 0 transparent}}.card.flash{animation:ds-flash 1.2s var(--ease) .25s}.quick-card{padding-top:10px;padding-bottom:10px}.quick-card .quick-starts{margin:0}.pane-2d .pane-head h3{display:flex;flex:0 1 auto;min-width:0;overflow:hidden;margin:0}.prod-chip{overflow:hidden}.prod-chip{display:inline-flex;align-items:center;gap:8px;min-width:0;max-width:100%;height:34px;padding:0 10px 0 4px;border:0;border-radius:var(--radius);background:transparent;color:var(--text);cursor:pointer;transition:background var(--t1) var(--ease)}.prod-chip:hover{background:var(--field)}.prod-chip .pc-thumb{flex:none;width:34px;height:26px;padding:2px;border-radius:var(--r-sm);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line)}.prod-chip .pc-thumb svg{width:100%;height:100%}.prod-chip b{font-size:var(--fs-14);font-weight:600;letter-spacing:-.011em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prod-chip .pc-size{flex:none;font-size:var(--fs-12);font-weight:500;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}@container (max-width: 720px){.prod-chip .pc-size,.prod-chip .pc-thumb{display:none}}@container (max-width: 470px){.pane-2d .pane-head h3{display:none}}.scrub-label{cursor:ew-resize;-webkit-user-select:none;user-select:none;touch-action:none}.scrub-label:hover{color:var(--accent)}#dimViz{touch-action:none;-webkit-user-select:none;user-select:none}body.is-scrubbing,body.is-scrubbing *{cursor:ew-resize!important}body.is-scrubbing.scrub-v,body.is-scrubbing.scrub-v *{cursor:ns-resize!important}.h-sum{display:none}.sidebar .side-pane>.card.folded>p.h-sum:not(:empty){display:block!important;margin:2px 0 0 28px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:var(--fs-12);color:var(--muted)}.opt-group{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.opt-group[hidden]{display:none}.opt-title{margin:0 0 8px;font-size:var(--fs-12);font-weight:600;letter-spacing:0;color:var(--text-2)}.opt-group>.dims+.dims{margin-top:0}#dimClickHint{display:none!important}details.opt-more{margin-top:14px;padding-top:10px;border-top:1px solid var(--line)}details.opt-more>summary{width:100%;margin:0;font-size:var(--fs-12);font-weight:600;color:var(--text-2)}details.opt-more[open]>summary{margin-bottom:10px}.sum-meta{margin-left:auto;font-weight:500;color:var(--muted);font-variant-numeric:tabular-nums}details.opt-more .stat{margin:10px 0 0}.product-card .issues:empty{display:none}.card .toggle.field-check{display:flex;flex-direction:row-reverse;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:32px;padding:2px 0;font-size:var(--fs-13);color:var(--text)}.card .toggle.field-check[hidden]{display:none}.card .toggle.field-check>input[type=checkbox]{position:relative;width:30px;height:18px;border:0;border-radius:999px;background:#d4d4d8;background-image:none;transition:background-color var(--t2) var(--ease)}.card .toggle.field-check>input[type=checkbox]:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #09090b40;transition:transform var(--t2) var(--ease)}.card .toggle.field-check>input[type=checkbox]:checked{background:var(--accent);background-image:none}.card .toggle.field-check>input[type=checkbox]:checked:after{transform:translate(12px)}.mat-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.mat-tiles.many{grid-template-columns:repeat(3,minmax(0,1fr))}.mat-tile{display:flex;flex-direction:column;align-items:flex-start;gap:1px;min-width:0;padding:5px 5px 7px;border:0;border-radius:var(--radius);background:var(--surface);box-shadow:inset 0 0 0 1px var(--line);text-align:left;cursor:pointer;transition:box-shadow var(--t1) var(--ease),background var(--t1) var(--ease)}.mat-tile:hover{box-shadow:inset 0 0 0 1px var(--line-strong)}.mat-tile.on{box-shadow:inset 0 0 0 2px var(--accent);background:var(--accent-soft)}.mat-tile b{max-width:100%;margin:5px 2px 0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:var(--fs-12);font-weight:600;color:var(--text)}.mat-tile small{max-width:100%;margin:0 2px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:var(--fs-11);color:var(--muted)}.mat-sw{display:block;width:100%;height:34px;border-radius:var(--r-sm);box-shadow:inset 0 0 0 1px #09090b14;background:#fafaf7}.sw-couche,.sw-cupPE,.sw-tubePaper{background:linear-gradient(115deg,#fff 0 38%,#f1f2f4 52%,#fff 66%)}.sw-ivory{background:linear-gradient(160deg,#fbf8f0,#f2ecdd)}.sw-duplex{background:linear-gradient(135deg,#fff 0 62%,#b9bbbe 62% 100%)}.sw-kraft,.sw-cartonKraft,.sw-filmKraft{background:repeating-linear-gradient(97deg,rgba(90,55,20,.09) 0 1px,transparent 1px 5px),repeating-linear-gradient(8deg,rgba(255,240,210,.12) 0 1px,transparent 1px 7px),#b88a58}.sw-kraftWhite,.sw-cartonWhite{background:repeating-linear-gradient(97deg,rgba(120,100,70,.07) 0 1px,transparent 1px 5px),#efe8db}.sw-cartonKraft,.sw-cartonWhite{box-shadow:inset 0 -9px #a77a4a,inset 0 -10px #8c6238,inset 0 0 0 1px #09090b14}.sw-fancy{background:repeating-linear-gradient(0deg,rgba(120,100,70,.08) 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,rgba(120,100,70,.08) 0 1px,transparent 1px 3px),#f3ecdf}.sw-decal{background:linear-gradient(135deg,#fff 0 70%,#e9eaec 70% 74%,#f6d9a8 74%)}.sw-decalPP{background:linear-gradient(115deg,#f7f8fa 0 40%,#e6e9ee 55%,#f7f8fa 70%)}.sw-filmMet,.sw-tubeLam,.sw-liquid{background:linear-gradient(110deg,#c9ccd2,#f4f5f7 30%,#aeb3ba 55%,#eef0f2 78%,#c3c7cd)}.sw-filmClear,.sw-pet,.sw-pvc{background:linear-gradient(115deg,#fff0 30%,#ffffffd9 48%,#fff0 62%),conic-gradient(#e4e4e7 25%,#fff 0 50%,#e4e4e7 0 75%,#fff 0) 0 0 / 10px 10px}.mat-row{margin-top:12px}.mat-lbl{display:block;margin-bottom:6px;font-size:var(--fs-12);font-weight:500;color:var(--text-2)}.mat-lbl em{font-style:normal;color:var(--muted);font-weight:400}.chips{display:flex;flex-wrap:wrap;gap:4px}.chip{height:28px;min-width:44px;padding:0 10px;border:0;border-radius:999px;background:var(--field);font-size:var(--fs-12);font-weight:500;font-variant-numeric:tabular-nums;color:var(--text-2);cursor:pointer;transition:background var(--t1) var(--ease),color var(--t1) var(--ease)}.chip:hover{background:var(--field-hover)}.chip.on{background:var(--ink);color:#fff}.seg{display:flex;gap:2px;padding:2px;border-radius:var(--radius);background:var(--field)}.seg>button{flex:1;min-width:0;height:28px;padding:0 4px;border:0;border-radius:var(--r-sm);background:transparent;font-size:var(--fs-12);font-weight:500;color:var(--text-2);white-space:nowrap;cursor:pointer;transition:background var(--t1) var(--ease),color var(--t1) var(--ease),box-shadow var(--t1) var(--ease)}.seg>button:hover{color:var(--text)}.seg>button.on{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #09090b1a,0 0 0 1px #09090b0a}#matNote:empty{display:none}.fills-title{margin:12px 0 4px}.color-row{min-height:34px;padding:2px 0}.color-row input[type=color]{width:28px;height:28px;border-radius:var(--r-sm);border:0;box-shadow:inset 0 0 0 1px var(--line-strong);cursor:pointer}.color-row input[type=color]::-webkit-color-swatch-wrapper{padding:3px}.color-row input[type=color]::-webkit-color-swatch{border:0;border-radius:4px}.color-row .inherit{display:none;font-size:var(--fs-12);color:var(--faint)}.color-row.unset .inherit{display:inline}.color-row.unset input[type=color]{opacity:.45}.color-row .clear-btn[hidden]{display:none}.imp-preview{border-radius:var(--r-lg);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line)}.kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:8px 0 2px}.kpis:empty{display:none}.kpi{position:relative;display:flex;flex-direction:column;gap:2px;min-width:0;padding:9px 10px 10px;border-radius:var(--radius);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line)}.kpi b{font-size:var(--fs-18);font-weight:600;letter-spacing:-.02em;line-height:1.15;font-variant-numeric:tabular-nums;color:var(--text)}.kpi span{font-size:var(--fs-11);line-height:1.35;color:var(--muted)}.kpi.accent{background:var(--accent-soft);box-shadow:inset 0 0 0 1px #2f6bf22e}.kpi.accent b{color:var(--accent-hover)}.kpi .meter{display:block;height:4px;margin-top:6px;border-radius:999px;background:linear-gradient(90deg,var(--c) var(--v),rgba(9,9,11,.08) var(--v))}.kpi .meter.good{--c: var(--success)}.kpi .meter.ok{--c: var(--warn)}.kpi .meter.low{--c: var(--danger)}.kpi-note{grid-column:1 / -1;margin:0;font-size:var(--fs-12);color:var(--muted)}.kpi-note.warn{color:var(--danger)}.kpi-tip{grid-column:1 / -1;display:flex;align-items:center;gap:10px;padding:8px 8px 8px 10px;border:0;border-radius:var(--radius);background:var(--accent-soft);box-shadow:inset 0 0 0 1px #2f6bf22e;text-align:left;cursor:pointer}.kpi-tip span{flex:1;font-size:var(--fs-12);line-height:1.4;color:var(--text-2)}.kpi-tip b{color:var(--text)}.kpi-tip em{flex:none;padding:4px 10px;border-radius:999px;background:var(--accent);color:#fff;font-style:normal;font-size:var(--fs-12);font-weight:600}.kpi-tip:hover em{background:var(--accent-hover)}.check-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.btn.check-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;height:auto;min-height:74px;padding:10px 4px 9px;border:0;border-radius:var(--radius);background:var(--field);box-shadow:none;color:var(--text);font-size:var(--fs-12);font-weight:600;text-align:center;white-space:normal}.btn.check-tile:hover{background:var(--field-hover)}.btn.check-tile>svg.ic{width:20px;height:20px;color:var(--text-2)}.check-tile span{display:flex;flex-direction:column;gap:1px;line-height:1.25}.check-tile small{font-size:var(--fs-11);font-weight:400;color:var(--muted)}.side-pane[data-side=export] .exp-hero{margin-bottom:6px}.side-pane[data-side=export] .exp-wide{width:100%;margin-top:6px}.btn.exp-tile{border:0;border-radius:var(--radius);background:var(--surface);box-shadow:inset 0 0 0 1px var(--line)}.btn.exp-tile:hover{background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line-strong)}.die-rules{margin-top:10px}#jobBox .checks{gap:4px;margin:10px 0}#jobBox .checks-label{margin-bottom:2px;font-size:var(--fs-12);font-weight:500;color:var(--text-2)}#jobBox .checks label{height:28px;padding:0 10px;border-radius:999px;background:var(--field);font-size:var(--fs-12);font-weight:500;color:var(--text-2);transition:background var(--t1) var(--ease),color var(--t1) var(--ease)}#jobBox .checks label:hover{background:var(--field-hover)}#jobBox .checks label:has(input:checked){background:var(--ink);color:#fff}#jobBox .checks label>input{position:absolute;opacity:0;pointer-events:none}#jobBox .checks label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:1px}.sidebar .side-pane>.card>h2{font-size:var(--fs-13);font-weight:650;letter-spacing:-.01em}.field>span,.field-label,.mat-lbl,.opt-title,details.opt-more>summary{color:var(--text-2);font-weight:550}.opt-title{font-size:var(--fs-11);font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}input,select,textarea{font-weight:500}input[type=number],input[type=text],input[type=search],input[type=password],input[type=email],input[type=url],input:not([type]),select,textarea{border:1px solid var(--line-strong);border-radius:var(--r-sm);background-color:var(--surface)}input[type=number]:hover,input[type=text]:hover,input[type=search]:hover,input:not([type]):hover,select:hover,textarea:hover{border-color:#09090b57;background-color:var(--surface)}input[type=number]:focus,input[type=text]:focus,input[type=search]:focus,input:not([type]):focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-ring)}.field.is-auto .unit input{border:1px dashed rgba(9,9,11,.28);background:var(--surface-2)}.side-pane .card .hint,.side-pane .card .info-src{display:none!important}.info-btn{display:inline-grid;place-items:center;flex:none;width:20px;height:20px;margin:0 0 0 4px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--faint);cursor:pointer;vertical-align:middle;transition:color var(--t1),background var(--t1)}.info-btn[hidden]{display:none}.info-btn svg{width:15px;height:15px}.info-btn:hover,.info-btn.on{color:var(--accent);background:var(--accent-soft)}.info-pop{position:fixed;z-index:1000;width:280px;max-height:60vh;overflow:auto;padding:10px 12px;border-radius:var(--radius);background:var(--ink);color:#f4f4f5;box-shadow:var(--sh-3);font-size:var(--fs-12);line-height:1.5;animation:ds-rise .16s var(--ease)}.info-pop p{margin:0}.info-pop p+p{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.12)}.info-pop b{color:#fff}.type-text small,.mat-tile small,.check-tile small,.exp-tile small,.exp-hero small{display:none!important}.rail-nav>button,.rail-nav>.rail-link{width:40px;height:40px;gap:0;border-radius:var(--radius)}.rail-nav>button>span{display:none}.rail-nav>button svg{width:20px;height:20px;stroke-width:1.9}.rail-nav>button.active,.rail-nav>button.active:hover,.rail-nav>.rail-link.active{background:var(--ink);color:#fff;box-shadow:none}.rail-nav>button.active svg{color:#fff}.rail-nav .rail-me b{width:26px;height:26px;font-size:var(--fs-11)}.rail-nav .rail-badge{top:2px;right:2px}.chip,.type-change,.kpi-tip em,#jobBox .checks label,.seg{border-radius:var(--r-sm)}.seg>button{border-radius:3px}.chip.on,#jobBox .checks label:has(input:checked){background:var(--ink)}.product-stage,.imp-preview,.mat-tile,.kpi,.quick-starts .goods-btn,.btn.check-tile,.btn.exp-tile{border-radius:var(--radius)}.btn.exp-tile{flex-direction:row;align-items:center;justify-content:flex-start;gap:8px;min-height:38px;padding:0 10px;box-shadow:inset 0 0 0 1px var(--line-strong)}.btn.exp-tile>svg.ic{flex:none;width:16px;height:16px;color:var(--text-2)}.btn.exp-tile b{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:550}.btn.check-tile,.quick-starts .goods-btn{background:var(--surface);box-shadow:inset 0 0 0 1px var(--line-strong);min-height:64px}.btn.check-tile:hover,.quick-starts .goods-btn:hover{background:var(--surface-2);box-shadow:inset 0 0 0 1px #09090b57}.mat-tile{box-shadow:inset 0 0 0 1px var(--line-strong)}.mat-tile.on{background:var(--surface);box-shadow:inset 0 0 0 2px var(--ink)}.kpi{background:var(--surface);box-shadow:inset 0 0 0 1px var(--line-strong)}.product-stage{box-shadow:inset 0 0 0 1px var(--line-strong)}.product-stage .type-btn{border-bottom-color:var(--line-strong)}.card .toggle.field-check>input[type=checkbox]:checked{background:var(--ink)}.die-rules>summary{width:100%;font-size:var(--fs-12);font-weight:550;color:var(--text-2)}.topbar .seg .btn>span,.topbar .panel-seg .btn.ai-toggle>span{display:none}.topbar .seg .btn,.topbar .panel-seg .btn.ai-toggle{width:32px;padding:0;justify-content:center}.topbar .panel-seg{padding:2px;border-radius:var(--radius);background:transparent;box-shadow:inset 0 0 0 1px var(--line-strong)}.topbar .panel-seg .btn.ai-toggle{height:28px;border-radius:var(--r-sm)}.topbar .panel-seg .btn.ai-toggle.active,.topbar .panel-seg .btn.ai-toggle.active:hover{background:var(--ink);color:#fff!important}.topbar .panel-seg .btn.ai-toggle.active svg{opacity:1}.btn.export-cta{border-radius:var(--radius)}.topbar .cmd-btn{border-radius:var(--radius);box-shadow:inset 0 0 0 1px var(--line-strong);background:var(--surface)}.pane-3d>.pane-head .toolbar .btn>span,.pane-3d>.pane-head .toolbar .tool.chk>span,#vFinish{display:none!important}input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right,var(--text) var(--fill, 0%),rgb(var(--ink-rgb) / .14) 0)}input[type=range]::-moz-range-track{background:rgb(var(--ink-rgb) / .14)}.pane-3d>.fold-bar{min-width:min(380px,calc(100% - 20px));padding:5px 12px 5px 5px;gap:4px}.pane-3d>.fold-bar input[type=range]{flex:1 1 200px;margin:0 4px}.fold-end{display:inline-grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:var(--radius);background:transparent;color:var(--muted);cursor:pointer;transition:color var(--t1) var(--ease),background var(--t1) var(--ease),transform var(--t1) var(--ease)}.fold-end:hover{color:var(--text);background:rgb(var(--ink-rgb) / .06)}.fold-end:active{transform:scale(.9)}.fold-end>svg.ic{width:16px;height:16px}#vFoldPct{min-width:4ch;font-size:var(--fs-12);font-weight:550;font-variant-numeric:tabular-nums;color:var(--muted);text-align:right}.pane-3d>.pane-head .toolbar .btn,.pane-3d>.pane-head .toolbar .tool.chk{width:32px;padding:0;justify-content:center}.pane-3d>.pane-head h3{font-weight:700;letter-spacing:.02em}.pane-2d .pane-foot .foot-hint,.inspector .hint,.inspector .info-src,.studio .info-src{display:none!important}.ins-sec h4{display:flex;align-items:center;font-size:var(--fs-12);font-weight:650;color:var(--text)}.ins-empty-say{margin:0;color:var(--muted)}.inspector .toggle.ins-check{display:inline-flex;flex-direction:row-reverse;align-items:center;gap:8px;min-height:28px;font-size:var(--fs-12);color:var(--text)}.inspector .toggle.ins-check>input[type=checkbox]{position:relative;width:28px;height:16px;border:0;border-radius:999px;background:#d4d4d8;background-image:none;transition:background-color var(--t2) var(--ease)}.inspector .toggle.ins-check>input[type=checkbox]:after{content:"";position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #09090b40;transition:transform var(--t2) var(--ease)}.inspector .toggle.ins-check>input[type=checkbox]:checked{background:var(--ink);background-image:none}.inspector .toggle.ins-check>input[type=checkbox]:checked:after{transform:translate(12px)}:root[data-theme=dark]{color-scheme:dark;--desk: #0c0c0e;--desk-dot: rgba(255, 255, 255, .07);--bg: #0c0c0e;--surface: #161618;--surface-2: #1c1c1f;--surface-3: #232327;--field: #1f1f23;--field-hover: #28282d;--island: #161618;--line: rgba(255, 255, 255, .09);--line-strong: rgba(255, 255, 255, .17);--hair: rgba(255, 255, 255, .08);--ink-rgb: 255 255 255;--text: #f4f4f5;--text-2: #d4d4d8;--muted: #a1a1aa;--faint: #71717a;--ink: #3b3b42;--ink-hover: #4a4a52;--accent: #4c8dff;--accent-2: #4c8dff;--accent-hover: #74a6ff;--accent-soft: rgba(76, 141, 255, .16);--accent-ring: rgba(76, 141, 255, .4);--success: #3fb950;--warn: #f0a33a;--danger: #f2555a;--danger-soft: rgba(242, 85, 90, .15);--success-soft: rgba(63, 185, 80, .14);--warn-soft: rgba(240, 163, 58, .14);--danger-ink: #ff8e92;--success-ink: #6fdc85;--warn-ink: #f6bd6c;--sh-1: 0 0 0 1px rgba(255, 255, 255, .06), 0 1px 2px rgba(0, 0, 0, .5);--sh-2: 0 0 0 1px rgba(255, 255, 255, .07), 0 8px 24px -8px rgba(0, 0, 0, .7);--sh-3: 0 0 0 1px rgba(255, 255, 255, .08), 0 24px 56px -12px rgba(0, 0, 0, .8);--island-sh: 0 0 0 1px rgba(255, 255, 255, .08);--glass: rgba(22, 22, 24, .82);--glass-strong: rgba(22, 22, 24, .94);--glass-sh: 0 0 0 1px rgba(255, 255, 255, .08), 0 10px 28px -12px rgba(0, 0, 0, .8);--chev: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a1a1aa' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E");--ruler-bg: #161618;--ruler-line: #3a3a41;--ruler-text: #a1a1aa}:root[data-theme=dark] *{scrollbar-color:rgba(255,255,255,.2) transparent}:root[data-theme=dark] ::selection{background:#4c8dff59}:root[data-theme=dark] input[type=checkbox],:root[data-theme=dark] input[type=radio]{background-color:var(--surface-2);border-color:#ffffff47}:root[data-theme=dark] input[type=checkbox]:checked{background-color:var(--accent);border-color:var(--accent)}:root[data-theme=dark] .card .toggle.field-check>input[type=checkbox],:root[data-theme=dark] .inspector .toggle.ins-check>input[type=checkbox]{background:#3f3f46}:root[data-theme=dark] .card .toggle.field-check>input[type=checkbox]:checked,:root[data-theme=dark] .inspector .toggle.ins-check>input[type=checkbox]:checked{background:var(--accent)}:root[data-theme=dark] input[type=number]:hover,:root[data-theme=dark] input[type=text]:hover,:root[data-theme=dark] input:not([type]):hover,:root[data-theme=dark] select:hover,:root[data-theme=dark] textarea:hover{border-color:#ffffff4d}:root[data-theme=dark] .rail-nav>button.active,:root[data-theme=dark] .rail-nav>button.active:hover,:root[data-theme=dark] .topbar .panel-seg .btn.ai-toggle.active,:root[data-theme=dark] .chip.on,:root[data-theme=dark] #jobBox .checks label:has(input:checked){background:var(--accent);color:#fff}:root[data-theme=dark] .mat-tile.on{box-shadow:inset 0 0 0 2px var(--accent)}:root[data-theme=dark] .btn.primary,:root[data-theme=dark] .btn.export-cta,:root[data-theme=dark] .exp-hero{background:var(--accent);border-color:var(--accent);color:#fff}:root[data-theme=dark] .btn.primary:hover,:root[data-theme=dark] .btn.export-cta:hover{background:var(--accent-hover)}:root[data-theme=dark] .dd-f{stroke:#0000008c}:root[data-theme=dark] .dd-dim{color:#8b8b94}:root[data-theme=dark] .dd-handle.back{stroke:#52525b}:root[data-theme=dark] .dd-shadow{opacity:.9}:root[data-theme=dark] .mat-sw{box-shadow:inset 0 0 0 1px #ffffff1a}:root[data-theme=dark] .info-pop,:root[data-theme=dark] .tip{background:#2a2a30;box-shadow:0 0 0 1px #ffffff1a,0 12px 32px -8px #000c}:root[data-theme=dark] .brand svg{background:#f4f4f5;color:#09090b}.e3-bar{position:absolute;z-index:6;max-width:calc(100% - 16px);flex-wrap:wrap;display:flex;align-items:center;gap:2px;padding:4px;border-radius:var(--radius);background:var(--glass-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-sh);animation:ds-rise .14s var(--ease)}.e3-bar[hidden]{display:none}.e3-bar button{position:relative;display:inline-grid;place-items:center;width:30px;height:30px;padding:0;border:0;border-radius:var(--r-sm);background:transparent;color:var(--text-2);cursor:pointer}.e3-bar button:hover{background:rgb(var(--ink-rgb) / .07);color:var(--text)}.e3-bar button svg.ic{width:16px;height:16px}.e3-bar button small{position:absolute;right:4px;bottom:2px;font-size:var(--fs-10);font-weight:700;line-height:1}.e3-bar .e3-sw{width:22px;height:22px;margin:0 1px;border-radius:50%;background:var(--sw);box-shadow:inset 0 0 0 1px rgb(var(--ink-rgb) / .18)}.e3-bar .e3-sw:hover{background:var(--sw);transform:scale(1.12)}.e3-bar .e3-sep{width:1px;height:18px;margin:0 3px;background:var(--line-strong)}.e3-bar .e3-del:hover{color:var(--danger)}.e3-text{position:absolute;z-index:7;width:300px;max-width:calc(100% - 16px);min-height:40px;padding:8px 10px;border:2px solid var(--accent);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:var(--fs-16);line-height:1.35;resize:none;box-shadow:var(--sh-3);outline:none}svg[shape-rendering=crispEdges],svg[shape-rendering=crispEdges] *{stroke:none}.picker-overlay,.sep-overlay,.qd-overlay,.ps-overlay,.cmdk-overlay{background:#09090b6b;-webkit-backdrop-filter:blur(4px) saturate(120%);backdrop-filter:blur(4px) saturate(120%)}:root[data-theme=dark] .picker-overlay,:root[data-theme=dark] .sep-overlay,:root[data-theme=dark] .qd-overlay,:root[data-theme=dark] .ps-overlay,:root[data-theme=dark] .cmdk-overlay{background:#0009}.picker,.sep-dialog,.qd-dialog,.ps-dialog{border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--sh-3)}:root[data-theme=dark] .picker,:root[data-theme=dark] .sep-dialog,:root[data-theme=dark] .qd-dialog,:root[data-theme=dark] .ps-dialog{box-shadow:0 0 0 1px #ffffff1a,0 24px 64px -12px #000c}.picker-head{gap:12px;min-height:58px;padding:10px 12px 10px 20px;border-bottom:1px solid var(--line)}.picker-head h2{font-size:var(--fs-16);font-weight:650;letter-spacing:-.015em;white-space:nowrap}.picker-head h2+p,.picker-head h2+small{color:var(--muted)}.picker-head [data-close],.picker-head .btn.icon.ghost:last-child{width:32px;height:32px;flex:none;border-radius:var(--r-sm);color:var(--muted)}.picker-head [data-close]:hover{background:rgb(var(--ink-rgb) / .07);color:var(--text)}.picker-body h3{margin:18px 0 10px;font-size:var(--fs-11);font-weight:650;letter-spacing:.04em;color:var(--muted)}.picker-body>section:first-child h3,.picker-body>h3:first-child{margin-top:14px}.picker-card{border:0;border-radius:var(--radius);background:var(--surface);box-shadow:inset 0 0 0 1px var(--line-strong);transition:box-shadow var(--t1) var(--ease),transform var(--t1) var(--ease)}.picker-card:hover,.picker-card:focus-visible{background:var(--surface);box-shadow:inset 0 0 0 1px rgb(var(--ink-rgb) / .4),0 6px 18px -10px #09090b4d;outline:none}.picker-card.current{background:var(--surface);box-shadow:inset 0 0 0 2px var(--ink)}:root[data-theme=dark] .picker-card.current{box-shadow:inset 0 0 0 2px var(--accent)}.picker-card b{font-weight:600}.picker-card>span:last-child:not(.picker-thumb){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.picker-thumb{border-radius:var(--r-sm);background:var(--surface-2)}.picker .seg,.picker .tabs{background:var(--field);border-radius:var(--radius);padding:2px;gap:2px}.picker .seg>button,.picker .seg>label{border-radius:var(--r-sm);background:transparent;color:var(--text-2);box-shadow:none}.picker .seg>button.on,.picker .seg>button.active,.picker .seg>button[aria-pressed=true],.picker .seg>label:has(input:checked){background:var(--surface);color:var(--text);box-shadow:0 1px 2px #09090b1f,0 0 0 1px #09090b0d}.picker.pp{width:min(1080px,100%);height:min(780px,100%)}.pp-search{display:flex;align-items:center;gap:8px;flex:1;max-width:420px;height:36px;margin-left:auto;padding:0 10px;border-radius:var(--radius);background:var(--field);color:var(--muted)}.pp-search:focus-within{background:var(--surface);box-shadow:inset 0 0 0 1px var(--accent),0 0 0 3px var(--accent-ring)}.pp-search svg.ic{width:16px;height:16px;flex:none}.pp-search input{flex:1;min-width:0;height:100%;padding:0;border:0!important;background:transparent!important;box-shadow:none!important;font-size:var(--fs-13);outline:none}.pp-main{display:grid;grid-template-columns:200px minmax(0,1fr);min-height:0;flex:1}.pp-nav{display:flex;flex-direction:column;gap:1px;padding:12px 8px;border-right:1px solid var(--line);overflow-y:auto}.pp-nav button{display:flex;align-items:center;justify-content:space-between;gap:8px;height:32px;padding:0 10px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--text-2);font-size:var(--fs-13);font-weight:500;text-align:left;cursor:pointer}.pp-nav button:hover{background:rgb(var(--ink-rgb) / .05)}.pp-nav button.on{background:rgb(var(--ink-rgb) / .08);color:var(--text);font-weight:600}.pp-nav-sep{height:1px;margin:8px 10px;background:var(--line)}.pp .pp-std-card b{font-variant-numeric:tabular-nums;letter-spacing:-.01em}.pp-approx{font-style:normal;font-weight:500;color:var(--muted)}.pp-nav em{font-style:normal;font-size:var(--fs-11);color:var(--faint);font-variant-numeric:tabular-nums}.pp .picker-body{padding:0 20px 24px;scroll-padding-top:8px}.pp .picker-grid{grid-template-columns:repeat(auto-fill,minmax(168px,1fr))}.pp .picker-card{gap:2px;padding:8px 8px 10px}.pp .picker-card .picker-thumb{margin-bottom:6px}.pp .picker-card b{font-size:var(--fs-13);line-height:1.3}.pp .picker-card small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:var(--fs-12);color:var(--muted)}.pp .picker-card[hidden],.pp section[hidden]{display:none}.pp-none{margin:40px 0;text-align:center;color:var(--muted)}.pp-main[hidden],.pp-sizes[hidden]{display:none}.pp-sizes{display:flex;flex-direction:column;flex:1;min-height:0}.pp-sizes-bar{display:flex;align-items:center;gap:12px;padding:12px 20px 4px}.pp-sizes-bar b{font-size:var(--fs-16);font-weight:650}.pp-sizes-bar span{color:var(--muted);font-variant-numeric:tabular-nums}.pp-back{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px 0 8px;border:0;border-radius:var(--r-sm);background:rgb(var(--ink-rgb) / .05);color:var(--text-2);font-size:var(--fs-13);font-weight:550;cursor:pointer}.pp-back:hover{background:rgb(var(--ink-rgb) / .09);color:var(--text)}.pp-back svg.ic{width:15px;height:15px}.pp-sizes .picker-body{flex:1;min-height:0;padding-top:12px}.pp .pp-size-grid{grid-template-columns:repeat(auto-fill,minmax(176px,1fr))}.pp .pp-shot{position:relative;overflow:hidden;height:140px;padding:0}.pp .pp-shot img{width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity var(--t3) var(--ease)}.pp .pp-size.ready .pp-shot img{opacity:1}.pp .pp-size:not(.ready):not(.failed) .pp-shot:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,rgb(255 255 255 / .6) 50%,transparent 80%);animation:ds-sweep 1.4s var(--ease) infinite}.pp .pp-own{box-shadow:inset 0 0 0 1.5px var(--line-strong);border:0;background:var(--surface-2)}@media(max-width:720px){.pp-main{grid-template-columns:1fr}.pp-nav{flex-direction:row;border-right:0;border-bottom:1px solid var(--line);overflow-x:auto;padding:8px}.pp-nav button{flex:none}}.seg:has(>label>input){gap:2px;padding:2px;border:0;border-radius:var(--radius);background:var(--field);overflow:visible}.seg>label>span{padding:5px 10px;border-radius:var(--r-sm);color:var(--text-2);font-weight:500;transition:background var(--t1) var(--ease),color var(--t1) var(--ease)}.seg>label:hover>span{color:var(--text)}.seg input:checked+span{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #09090b1f,0 0 0 1px #09090b0d}:root[data-theme=dark] .seg input:checked+span{background:#3a3a41;box-shadow:none}.pane-2d>.pane-head{flex-wrap:wrap;row-gap:4px}.pane-2d>.pane-head>.toolbar{flex:0 0 auto;margin-left:auto}@container (max-width: 420px){.pane-2d .insert-btn>span,.pane-2d .insert-btn>svg.ic.caret{display:none!important}.pane-2d .insert-btn{width:32px;padding:0;justify-content:center}}:root .brand .wm-box{display:flex}:root .brand .wm-box svg,:root[data-theme=dark] .brand .wm-box svg{width:auto;height:15px;padding:0;border-radius:0;background:none;filter:none;color:var(--text)}.boot-logo .dr-logo{width:auto;height:32px;color:var(--text);filter:none}.picker.nut-dlg{width:min(1040px,96vw)}.nut-dlg .picker-head .hint{margin:0 auto 0 8px;font-size:var(--fs-12)}.nut-body{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;padding:14px 18px;overflow-y:auto;min-height:0}.nut-form{display:flex;flex-direction:column;gap:10px;min-width:0}.nut-form h4{margin:6px 0 0;font-size:var(--fs-12);text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.nut-form h4 small{text-transform:none;letter-spacing:0;font-weight:400}.nut-form section[hidden],.nut-row[hidden],.nut-checks label[hidden]{display:none}.nut-form .hint{margin:0;font-size:var(--fs-12)}.nut-formats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.nut-fmt{display:grid;gap:2px;text-align:left;padding:9px 12px;border:0;border-radius:var(--r-md);background:var(--surface-2);font:inherit;cursor:pointer}.nut-fmt small{color:var(--muted);font-size:var(--fs-12)}.nut-fmt:hover{background:var(--surface-3)}.nut-fmt.active{background:var(--surface);box-shadow:0 0 0 2px var(--ink)}.nut-row{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:flex-end}.nut-row .seg{margin:0}.nut-row.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.nut-row .field{margin:0}.nut-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 10px}.nut-grid .field{margin:0}.nut-grid .field.sub>span{font-style:italic}.nut-grid .unit input,.nut-row .unit input,.nut-row input[type=text],.nut-search input,.nut-recipe input{width:100%}.nut-search{position:relative}.nut-hits{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.nut-hits:empty{display:none}.nut-hits button{display:inline-flex;gap:6px;align-items:baseline;border:0;border-radius:var(--r-sm);padding:5px 11px;background:var(--surface-2);font:inherit;font-size:var(--fs-13);cursor:pointer}.nut-hits button:hover{background:var(--surface-3)}.nut-hits small{color:var(--faint);font-size:var(--fs-11)}.nut-recipe{width:100%;border-collapse:collapse;font-size:var(--fs-13)}.nut-recipe td{padding:3px 0;border-bottom:1px solid var(--line)}.nut-recipe td:nth-child(2){width:120px;padding:3px 8px}.nut-recipe td:nth-child(3){width:32px}.nut-checks{display:grid;gap:6px;font-size:var(--fs-13)}.nut-checks .toggle{padding:0;align-items:flex-start}.nut-checks small{color:var(--muted)}.nut-side{display:flex;flex-direction:column;gap:10px;align-self:start;position:sticky;top:0}.nut-preview{display:grid;place-items:center;min-height:220px;padding:16px;border-radius:var(--r-lg);background:var(--surface);box-shadow:inset 0 0 0 1px var(--line)}.nut-preview svg{max-width:100%;height:auto;stroke:none;fill:none}.nut-row .seg button{white-space:nowrap}.nut-line{margin:0;font-size:var(--fs-13);line-height:1.45}.nut-issues{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:var(--fs-12);line-height:1.4}.nut-issues li{padding:6px 9px;border-radius:var(--r-sm)}.nut-issues li.err{background:var(--danger-soft);color:var(--danger-ink)}.nut-issues li.warn{background:var(--warn-soft);color:var(--warn-ink)}.nut-issues li.info{background:var(--surface-2);color:var(--text-2)}.nut-issues.shake{animation:nut-shake .35s}@keyframes nut-shake{25%{transform:translate(-4px)}75%{transform:translate(4px)}}.nut-dlg .label-foot{align-items:center}@media(max-width:860px){.nut-body{grid-template-columns:1fr}.nut-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nut-side{position:static}}
