:root{--color-paper:oklch(98.5% .004 250);--color-paper-raised:oklch(100% .003 250);--color-paper-soft:oklch(96.5% .007 250);--color-paper-strong:oklch(93.5% .01 250);--color-rule:oklch(88% .012 250);--color-rule-strong:oklch(76% .018 250);--color-muted:oklch(48% .018 257);--color-ink-soft:oklch(35% .018 257);--color-ink:oklch(22% .022 258);--color-accent:oklch(50% .2 256);--color-accent-hover:oklch(44% .19 256);--color-accent-soft:oklch(94% .035 256);--color-accent-ink:oklch(99% .004 250);--color-focus:oklch(38% .16 256);--color-error:oklch(48% .18 28);--color-error-soft:oklch(95% .03 28);--color-success:oklch(39% .12 155);--color-success-soft:oklch(95% .025 155);--color-warning:oklch(49% .12 70);--color-warning-soft:oklch(96% .03 70);--color-overlay:oklch(18% .02 258/.42);--color-shadow:oklch(20% .02 258/.08);--font-display:"Space Grotesk", "Noto Sans SC", sans-serif;--font-body:"Noto Sans SC", sans-serif;--font-mono:"JetBrains Mono", monospace;--space-3xs:.125rem;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:6rem;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-md:1.125rem;--text-lg:1.375rem;--text-xl:1.75rem;--text-2xl:2.25rem;--radius-xs:.25rem;--radius-sm:.375rem;--radius-md:.625rem;--radius-lg:1rem;--rule-thin:1px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--z-base:1;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-modal:400;--z-toast:500;--z-tooltip:600}*{box-sizing:border-box}html,body{background:var(--color-paper);min-width:0;color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-base);-webkit-font-smoothing:antialiased;margin:0;line-height:1.55;overflow-x:clip}body{min-height:100dvh}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{white-space:nowrap}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}svg{stroke-width:1.75px;flex:none;width:1.125rem;height:1.125rem}h1,h2,h3,p,figure,dl,dd,ul{margin:0}h1,h2,h3{overflow-wrap:anywhere;min-width:0;font-family:var(--font-display);letter-spacing:-.025em;font-style:normal;line-height:1.15}h1{font-size:clamp(var(--text-xl), 3vw, var(--text-2xl));font-weight:700}h2{font-size:var(--text-md);font-weight:700}h3{font-size:var(--text-base);font-weight:700}small{font-size:var(--text-xs)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}::selection{background:var(--color-accent-soft);color:var(--color-ink)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.layout-row{flex-direction:row;align-items:center;display:flex}.layout-stack{flex-direction:column;align-items:stretch;display:flex}.app-shell{background:var(--color-paper);min-height:100dvh;color:var(--color-ink)}.topbar{z-index:var(--z-sticky);min-height:4rem;padding-inline:var(--space-md);border-block-end:var(--rule-thin) solid var(--color-rule);background:var(--color-paper-raised);color:var(--color-ink);justify-content:space-between;align-items:center;display:flex;position:fixed;inset-block-start:0;inset-inline:0}.brand-row,.topbar-actions{gap:var(--space-sm)}.wordmark{align-items:center;gap:var(--space-sm);min-height:2.75rem;font-family:var(--font-display);letter-spacing:.035em;font-weight:700;display:inline-flex}.wordmark-mark{border:var(--rule-thin) solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-accent);width:2rem;height:2rem;color:var(--color-accent-ink);place-items:center;display:grid}.wordmark-cn{color:var(--color-muted);font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:0;margin-inline-start:var(--space-xs);font-weight:500}.command-trigger{align-items:center;gap:var(--space-xs);min-width:16rem;min-height:2.75rem;padding-inline:var(--space-sm);border:var(--rule-thin) solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-muted);text-align:start;transition:background-color var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out);display:inline-flex}.command-trigger span{flex:1}kbd{min-height:1.5rem;padding-inline:var(--space-xs);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-xs);background:var(--color-paper-soft);color:var(--color-ink-soft);font-family:var(--font-mono);font-size:var(--text-xs);justify-content:center;align-items:center;line-height:1;display:inline-flex}.environment-badge{align-items:center;gap:var(--space-xs);min-height:2.75rem;color:var(--color-muted);font-size:var(--text-sm);display:inline-flex}.environment-badge>span{background:var(--color-success);width:.5rem;height:.5rem;color:var(--color-paper);border-radius:50%}.avatar-button,.icon-button{border:var(--rule-thin) solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-paper-raised);min-width:2.75rem;min-height:2.75rem;color:var(--color-ink);transition:background-color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);place-items:center;display:inline-grid}.avatar-button{background:var(--color-ink);color:var(--color-paper);font-weight:700}.mobile-menu{display:inline-grid}.side-rail{z-index:var(--z-sticky);width:14rem;padding:var(--space-lg) var(--space-md);border-inline-end:var(--rule-thin) solid var(--color-rule);background:var(--color-paper-raised);color:var(--color-ink);transition:transform var(--dur-short) var(--ease-out);flex-direction:column;justify-content:space-between;display:flex;position:fixed;inset-block:4rem 0;inset-inline-start:0;transform:translate(-102%)}.side-rail.is-open{transform:translate(0)}.side-rail nav{gap:var(--space-xs);flex-direction:column;display:flex}.side-rail-mobile-head{justify-content:space-between;margin-block-end:var(--space-lg);font-weight:700}.rail-link{align-items:center;gap:var(--space-sm);width:100%;min-height:2.75rem;padding-inline:var(--space-sm);border:var(--rule-thin) solid transparent;border-radius:var(--radius-sm);color:var(--color-muted);font-size:var(--text-sm);text-align:start;transition:background-color var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);background:0 0;display:flex}.rail-link.is-active{border-color:var(--color-rule);background:var(--color-accent-soft);color:var(--color-accent);font-weight:700}.rail-secondary{border-block-start:var(--rule-thin) solid var(--color-rule);padding-block-start:var(--space-lg)}.nav-scrim{z-index:var(--z-dropdown);background:var(--color-overlay);color:var(--color-paper);border:0;position:fixed;inset:4rem 0 0}.workspace{width:100%;max-width:105rem;min-height:100dvh;padding:calc(4rem + var(--space-lg)) var(--space-md) max(var(--space-xl), env(safe-area-inset-bottom));margin-inline:auto}.project-head{align-items:flex-start;gap:var(--space-lg);flex-direction:column;padding-block-end:var(--space-lg);display:flex}.project-title{gap:var(--space-xs);max-width:49rem}.project-title p,.panel-heading p,.result-head p{max-width:65ch;color:var(--color-muted)}.breadcrumb{gap:var(--space-2xs);color:var(--color-muted);font-size:var(--text-xs)}.breadcrumb svg{width:.875rem;height:.875rem}.project-state{gap:var(--space-xs);min-height:2.25rem;padding-inline:var(--space-sm);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper-raised);color:var(--color-ink-soft);font-size:var(--text-sm)}.state-dot{background:var(--color-muted);width:.5rem;height:.5rem;color:var(--color-paper);border-radius:50%}.state-loading{background:var(--color-warning);color:var(--color-paper)}.state-success{background:var(--color-success);color:var(--color-paper)}.state-error{background:var(--color-error);color:var(--color-paper)}.workflow-strip{border-block:var(--rule-thin) solid var(--color-rule);grid-template-columns:minmax(0,1fr);display:grid}.workflow-step{gap:var(--space-sm);min-width:0;padding:var(--space-md) var(--space-sm);border-block-end:var(--rule-thin) solid var(--color-rule);background:var(--color-paper);color:var(--color-muted);grid-template-columns:auto minmax(0,1fr);display:grid;position:relative}.workflow-step:last-child{border-block-end:0}.workflow-step.is-current{background:var(--color-paper-raised);color:var(--color-ink)}.workflow-step.is-current:after{inset-block:var(--space-sm);width:var(--space-2xs);border-radius:var(--radius-xs);background:var(--color-accent);color:var(--color-accent-ink);content:"";position:absolute;inset-inline-start:0}.step-index{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.workflow-step strong{color:inherit;font-size:var(--text-sm)}.workflow-step small{color:var(--color-muted)}.recommended-mark{align-items:center;gap:var(--space-2xs);color:var(--color-success);font-size:var(--text-xs);display:inline-flex;position:absolute;inset-block-start:var(--space-xs);inset-inline-end:var(--space-xs)}.recommended-mark svg{width:.75rem;height:.75rem}.workbench-grid{gap:var(--space-xl);padding-block:var(--space-xl);grid-template-columns:minmax(0,1fr);display:grid}.canvas-column{gap:var(--space-md);min-width:0}.panel-heading{justify-content:space-between;align-items:flex-end;gap:var(--space-md)}.panel-heading>.layout-stack,.parameter-panel>.panel-heading{gap:var(--space-2xs)}.parameter-panel>.panel-heading{align-items:stretch}.panel-heading p{font-size:var(--text-sm)}.text-button{align-items:center;gap:var(--space-xs);min-height:2.75rem;padding-inline:var(--space-sm);border:var(--rule-thin) solid transparent;border-radius:var(--radius-sm);color:var(--color-accent);font-size:var(--text-sm);transition:background-color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);background:0 0;font-weight:700;display:inline-flex}.image-canvas{border:var(--rule-thin) solid var(--color-rule-strong);border-radius:var(--radius-md);background:var(--color-paper-soft);min-height:25rem;color:var(--color-ink);transition:background-color var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out);place-items:center;display:grid;position:relative;overflow:clip}.image-canvas:before{inset:var(--space-sm);border:var(--rule-thin) dashed var(--color-rule-strong);border-radius:var(--radius-sm);content:"";z-index:var(--z-raised);pointer-events:none;position:absolute}.canvas-shader{z-index:var(--z-base);background:var(--color-accent);color:var(--color-accent-ink);position:absolute;inset:0;overflow:hidden}.canvas-shader-fallback{background:var(--color-accent);color:var(--color-accent-ink)}.canvas-shader canvas{display:block;width:100%!important;height:100%!important}.image-canvas.is-dragging{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-ink)}.image-canvas.has-image{background:var(--color-ink);min-height:31rem;color:var(--color-paper)}.image-canvas.has-image:before{border-style:solid;border-color:var(--color-ink-soft)}.upload-empty{z-index:var(--z-raised);align-items:center;gap:var(--space-lg);max-width:28rem;padding:var(--space-xl);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper-raised);color:var(--color-ink);box-shadow:0 .5rem 2rem var(--color-shadow);text-align:center}.upload-empty>.layout-stack{gap:var(--space-xs)}.upload-empty p,.upload-empty small{color:var(--color-muted)}.upload-symbol{border:var(--rule-thin) solid var(--color-rule-strong);border-radius:var(--radius-lg);background:var(--color-paper-raised);width:4rem;height:4rem;color:var(--color-accent);place-items:center;display:grid}.upload-symbol svg{width:2rem;height:2rem}.primary-button,.secondary-button{justify-content:center;align-items:center;gap:var(--space-xs);min-height:2.75rem;padding-inline:var(--space-md);border:var(--rule-thin) solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-accent);color:var(--color-accent-ink);transition:background-color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out), opacity var(--dur-short) var(--ease-out);font-weight:700;display:inline-flex}.secondary-button{border-color:var(--color-rule-strong);background:var(--color-paper-raised);color:var(--color-ink)}.primary-button:active,.secondary-button:active,.icon-button:active,.avatar-button:active,.text-button:active,.rail-link:active{transform:translateY(1px)}.primary-button:disabled,.secondary-button:disabled,.command-list button:disabled{opacity:.5}.primary-button[data-state=error]{border-color:var(--color-error);background:var(--color-error);color:var(--color-accent-ink)}.primary-button[data-state=success]{border-color:var(--color-success);background:var(--color-success);color:var(--color-accent-ink)}.image-preview{inset:var(--space-lg);z-index:var(--z-base);border:var(--rule-thin) solid var(--color-ink-soft);border-radius:var(--radius-sm);background:var(--color-ink);min-width:0;color:var(--color-paper);grid-template-rows:minmax(0,1fr) auto;display:grid;position:absolute;overflow:hidden}.image-preview img{object-fit:contain;width:100%;height:100%;min-height:0}.image-preview figcaption{justify-content:space-between;gap:var(--space-md);padding:var(--space-sm) var(--space-md);border-block-start:var(--rule-thin) solid var(--color-ink-soft);background:var(--color-ink);color:var(--color-paper);font-family:var(--font-body);font-size:var(--text-xs);display:flex}.image-preview figcaption span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.local-meta{border-block:var(--rule-thin) solid var(--color-rule);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.local-meta>div{gap:var(--space-2xs);min-width:0;padding:var(--space-sm);border-block-end:var(--rule-thin) solid var(--color-rule);flex-direction:column;display:flex}.local-meta>div:nth-last-child(-n+2){border-block-end:0}.local-meta span{color:var(--color-muted);font-size:var(--text-xs)}.local-meta strong{color:var(--color-ink-soft);font-family:var(--font-body);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.parameter-panel{gap:var(--space-lg);min-width:0;padding:var(--space-lg);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper-raised);color:var(--color-ink);flex-direction:column;align-self:start;display:flex}.field-group{gap:var(--space-xs);flex-direction:column;display:flex}.field-group label{color:var(--color-ink-soft);font-size:var(--text-sm);font-weight:700}.field-group input,.field-group select,.command-search input{width:100%;min-height:2.75rem;padding-inline:var(--space-sm);border:var(--rule-thin) solid var(--color-rule-strong);outline-offset:1px;border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-ink);transition:background-color var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out);outline:2px solid #0000}.field-group input::placeholder,.command-search input::placeholder{color:var(--color-muted)}.field-group input:focus-visible,.field-group select:focus-visible,.command-search input:focus-visible{border-color:var(--color-ink-soft);outline-color:var(--color-focus)}.field-group input:disabled,.field-group select:disabled{opacity:.55;cursor:not-allowed}.field-group small{min-height:1lh;color:var(--color-muted)}.boundary-note,.error-message{gap:var(--space-sm);padding:var(--space-sm);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-warning-soft);color:var(--color-ink-soft);font-size:var(--text-sm);grid-template-columns:auto minmax(0,1fr);display:grid}.boundary-note svg{color:var(--color-warning)}.boundary-note p{gap:var(--space-2xs);flex-direction:column;display:flex}.error-message{border-color:var(--color-error);background:var(--color-error-soft);color:var(--color-error)}.analyze-button{width:100%}.analyze-button svg:last-child{margin-inline-start:auto}.spinner{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.cost-note{gap:var(--space-xs);color:var(--color-muted);font-size:var(--text-xs);grid-template-columns:auto minmax(0,1fr);display:grid}.result-section{padding-block:var(--space-xl);border-block-start:var(--rule-thin) solid var(--color-rule-strong);scroll-margin-top:5.5rem}.result-head{justify-content:space-between;align-items:flex-end;gap:var(--space-lg);padding-block-end:var(--space-lg)}.result-head>.layout-stack{gap:var(--space-xs)}.confidence{gap:var(--space-sm);min-width:10rem;padding:var(--space-sm);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper-raised);color:var(--color-accent)}.confidence span{color:var(--color-muted);font-size:var(--text-xs);flex-direction:column;display:flex}.confidence strong{color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-lg);font-variant-numeric:tabular-nums}.result-grid{gap:var(--space-lg);grid-template-columns:minmax(0,1fr);display:grid}.result-primary,.result-secondary{gap:var(--space-lg);min-width:0}.result-summary,.analysis-block,.risk-list{padding:var(--space-lg);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper-raised);color:var(--color-ink)}.result-summary{gap:var(--space-md);display:grid}.result-summary>.layout-row{gap:var(--space-sm)}.result-summary .layout-stack{gap:var(--space-2xs)}.result-summary small,.confidence-line{color:var(--color-muted);font-size:var(--text-xs)}.summary-icon{border-radius:var(--radius-sm);background:var(--color-accent-soft);width:3rem;height:3rem;color:var(--color-accent);place-items:center;display:grid}.analysis-block{gap:var(--space-md);flex-direction:column;display:flex}.feature-spec,.metadata-block dl{border-block-start:var(--rule-thin) solid var(--color-rule)}.feature-spec>div,.metadata-block dl>div{gap:var(--space-md);padding-block:var(--space-sm);border-block-end:var(--rule-thin) solid var(--color-rule);grid-template-columns:minmax(7rem,.8fr) minmax(0,1.2fr);display:grid}.feature-spec dt,.metadata-block dt{color:var(--color-muted);font-size:var(--text-sm)}.feature-spec dd,.metadata-block dd{min-width:0;color:var(--color-ink-soft);font-family:var(--font-body);font-size:var(--text-sm);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.color-row{justify-content:space-between;gap:var(--space-md);color:var(--color-muted);font-size:var(--text-sm)}.swatches{justify-content:flex-end;gap:var(--space-xs);flex-wrap:wrap}.swatches>span{border:var(--rule-thin) solid var(--color-rule-strong);border-radius:var(--radius-xs);width:1.5rem;height:1.5rem}.block-head{justify-content:space-between;gap:var(--space-md)}.block-head>span{color:var(--color-muted);font-size:var(--text-xs)}.recommended-flow{gap:var(--space-xs);flex-direction:column;display:flex}.recommended-flow>.layout-row{gap:var(--space-sm);min-height:2.75rem;padding-inline:var(--space-sm);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-ink);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.recommended-flow>.layout-row>span{color:var(--color-accent);font-family:var(--font-display);font-size:var(--text-xs)}.recommended-flow>.layout-row>strong{font-size:var(--text-sm)}.recommended-flow>.layout-row>svg{color:var(--color-muted)}.confirm-block{background:var(--color-warning-soft);color:var(--color-ink)}.confirm-block ul{gap:var(--space-xs);flex-direction:column;padding:0;list-style:none;display:flex}.confirm-block li{align-items:center;gap:var(--space-xs);color:var(--color-ink-soft);font-family:var(--font-body);font-size:var(--text-xs);display:flex}.confirm-block li svg{color:var(--color-warning)}.risk-list{gap:var(--space-md);margin-block-start:var(--space-lg);display:grid}.risk-list>.layout-row{align-items:flex-start;gap:var(--space-sm);padding-block:var(--space-sm);border-block-start:var(--rule-thin) solid var(--color-rule)}.risk-list>.layout-row>svg{color:var(--color-warning)}.risk-list>.layout-row>span{gap:var(--space-2xs);flex-direction:column;min-width:0;display:flex}.risk-list small{color:var(--color-muted);font-family:var(--font-body)}.result-actions{justify-content:flex-end;gap:var(--space-sm);padding-block-start:var(--space-lg)}.status-footer{gap:var(--space-xs) var(--space-lg);padding-block:var(--space-lg);border-block-start:var(--rule-thin) solid var(--color-rule);color:var(--color-muted);font-family:var(--font-body);font-size:var(--text-xs);flex-wrap:wrap;display:flex}.status-footer a{min-height:2.75rem;color:var(--color-accent);align-items:center;display:inline-flex}.pattern-studio{gap:var(--space-lg);min-width:0;padding-block:var(--space-xl);border-block-start:var(--rule-thin) solid var(--color-rule);flex-direction:column;display:flex}.studio-heading,.result-heading{align-items:flex-start;gap:var(--space-sm);flex-direction:column}.studio-heading p,.result-heading p,.selection-toolbar small,.control-title small{color:var(--color-muted)}.studio-status{align-items:center;gap:var(--space-xs);min-height:2.75rem;padding-inline:var(--space-sm);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper-raised);color:var(--color-ink-soft);font-size:var(--text-sm);display:inline-flex}.studio-status>span{width:var(--space-xs);height:var(--space-xs);background:var(--color-muted);border-radius:50%}.studio-status.state-loading>span{background:var(--color-accent)}.studio-status.state-success>span{background:var(--color-success)}.studio-status.state-error>span{background:var(--color-error)}.studio-workbench,.production-output-grid{gap:var(--space-lg);grid-template-columns:minmax(0,1fr);min-width:0;display:grid}.selection-panel,.output-preview-panel{min-width:0}.selection-toolbar{justify-content:space-between;gap:var(--space-sm);flex-wrap:wrap}.quad-selector{touch-action:none;-webkit-user-select:none;user-select:none;width:100%;min-width:0;position:relative}.quad-selector>img{border:var(--rule-thin) solid var(--color-rule-strong);border-radius:var(--radius-md);object-fit:fill;width:100%;height:100%;display:block}.quad-overlay{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.quad-overlay polygon{fill:var(--color-accent-soft);fill-opacity:.28}.quad-overlay line{stroke:var(--color-accent);stroke-width:var(--rule-thin);vector-effect:non-scaling-stroke}.quad-handle{border:var(--rule-thin) solid var(--color-accent);background:var(--color-paper-raised);width:2.75rem;height:2.75rem;color:var(--color-accent);touch-action:none;transition:background-color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);border-radius:50%;place-items:center;padding:0;font-weight:700;display:grid;position:absolute;transform:translate(-50%,-50%)}.quad-handle:active{transform:translate(-50%,-50%)scale(.96)}.selection-help,.runtime-note,.layer-note{color:var(--color-muted);font-size:var(--text-xs)}.professional-separation{gap:var(--space-lg);min-width:0;padding:var(--space-xl);border:var(--rule-thin) solid var(--color-rule-strong);border-radius:var(--radius-md);background:var(--color-paper-raised);box-shadow:0 .75rem 2.5rem var(--color-shadow);flex-direction:column;margin-block-start:var(--space-xl);display:flex}.professional-head{justify-content:space-between;align-items:flex-end;gap:var(--space-lg)}.professional-head>.layout-stack{gap:var(--space-xs);max-width:48rem}.professional-head p,.professional-contract span,.professional-progress-head small,.professional-palette small,.professional-deliverables-head small,.professional-note{color:var(--color-muted)}.professional-head .eyebrow{align-items:center;gap:var(--space-xs);color:var(--color-accent);font-size:var(--text-xs);letter-spacing:.12em;font-weight:800;display:inline-flex}.professional-head .eyebrow svg,.upstream-badge svg{width:1rem;height:1rem}.upstream-badge{align-items:center;gap:var(--space-xs);min-height:2.75rem;padding-inline:var(--space-sm);border:var(--rule-thin) solid var(--color-rule);background:var(--color-success-soft);color:var(--color-success);font-size:var(--text-xs);border-radius:999px;flex:none;font-weight:700;display:inline-flex}.professional-contract{border-block:var(--rule-thin) solid var(--color-rule);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.professional-contract>.layout-stack{gap:var(--space-2xs);padding:var(--space-md);border-inline-end:var(--rule-thin) solid var(--color-rule)}.professional-contract>.layout-stack:last-child{border-inline-end:0}.professional-contract small{color:var(--color-accent);letter-spacing:.08em;text-transform:uppercase;font-weight:800}.professional-cta{justify-content:space-between;align-items:center;gap:var(--space-lg)}.professional-cta p{align-items:start;gap:var(--space-xs);max-width:44rem;color:var(--color-muted);font-size:var(--text-sm);grid-template-columns:auto minmax(0,1fr);display:grid}.professional-cta p svg{color:var(--color-warning)}.professional-task{gap:var(--space-md);padding-block-start:var(--space-sm)}.professional-progress-head{justify-content:space-between;gap:var(--space-md)}.professional-progress-head>.layout-stack{gap:var(--space-2xs)}.professional-progress-head>svg,.success-icon{color:var(--color-accent)}.success-icon{color:var(--color-success)!important}.professional-progress{background:var(--color-paper-soft);border-radius:999px;height:.375rem;overflow:hidden}.professional-progress>span{border-radius:inherit;background:var(--color-accent);height:100%;transition:width var(--dur-short) var(--ease-out);display:block}.professional-stages{gap:var(--space-xs);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.professional-stages>div{align-items:center;gap:var(--space-xs);min-width:0;min-height:3rem;padding-inline:var(--space-sm);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);color:var(--color-muted);font-size:var(--text-sm);display:flex}.professional-stages>div>span{background:var(--color-paper-soft);width:1.5rem;height:1.5rem;font-size:var(--text-xs);border-radius:50%;flex:none;place-items:center;display:grid}.professional-stages>div svg{width:.875rem;height:.875rem}.professional-stages>div[data-status=active]{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-hover)}.professional-stages>div[data-status=complete]{color:var(--color-success)}.professional-palette,.professional-deliverables{gap:var(--space-sm);border-block-start:var(--rule-thin) solid var(--color-rule);padding-block-start:var(--space-md)}.professional-palette>.layout-row,.professional-deliverables-head{justify-content:space-between;align-items:center;gap:var(--space-sm)}.professional-palette>.layout-row>small{margin-inline-start:auto}.professional-palette>div{gap:var(--space-xs);grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));display:grid}.professional-palette>div>span{gap:0 var(--space-xs);min-width:0;padding:var(--space-xs);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.professional-palette i{border:var(--rule-thin) solid var(--color-rule-strong);border-radius:50%;grid-row:1/3;width:2rem;height:2rem}.professional-palette b,.professional-palette small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.professional-output-list{gap:var(--space-xs);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.professional-output-list>a{justify-content:space-between;align-items:center;gap:var(--space-sm);min-width:0;min-height:3.75rem;padding-inline:var(--space-sm);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);color:var(--color-ink-soft);text-decoration:none;display:flex}.professional-output-list>a>span{align-items:center;gap:var(--space-xs);min-width:0;display:flex}.professional-output-list>a svg{width:1rem;color:var(--color-accent);flex:none}.professional-output-list>a strong,.professional-output-list>a small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.professional-output-list>a small{color:var(--color-muted);font-size:var(--text-xs);flex:0 auto}.professional-note{font-size:var(--text-xs)}.professional-retry{align-self:flex-start}.studio-controls{gap:var(--space-lg);min-width:0;padding:var(--space-lg);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper-raised);color:var(--color-ink);flex-direction:column;align-self:start;display:flex}.control-section{gap:var(--space-sm);border-block-end:var(--rule-thin) solid var(--color-rule);padding-block-end:var(--space-lg)}.control-title,.choice-row>span,.switch-row>span{gap:var(--space-2xs)}.choice-row,.switch-row{align-items:center;gap:var(--space-sm);cursor:pointer;grid-template-columns:auto minmax(0,1fr);min-height:2.75rem;display:grid}.choice-row input,.switch-row input{width:1.125rem;height:1.125rem;accent-color:var(--color-accent)}.choice-row>span,.switch-row>span{flex-direction:column;min-width:0;display:flex}.choice-row small,.switch-row small{color:var(--color-muted)}.control-section>.field-group>span,.control-label{color:var(--color-ink-soft);font-size:var(--text-sm);font-weight:700}.repeat-options{gap:var(--space-xs);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.repeat-options button,.preview-tabs button{min-height:2.75rem;padding-inline:var(--space-sm);border:var(--rule-thin) solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-ink-soft);transition:background-color var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out)}.repeat-options button[aria-pressed=true],.preview-tabs button[aria-selected=true]{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-hover);font-weight:700}.repeat-options button:active,.preview-tabs button:active,.layer-list button:active{background:var(--color-accent-soft)}.production-boundary,.inline-error,.result-warning{align-items:start;gap:var(--space-sm);padding:var(--space-sm);background:var(--color-warning-soft);color:var(--color-ink-soft);font-size:var(--text-sm);grid-template-columns:auto minmax(0,1fr);display:grid}.production-boundary svg,.result-warning svg{color:var(--color-warning)}.production-boundary p{gap:var(--space-2xs);flex-direction:column;display:flex}.studio-run{width:100%}.inline-error{background:var(--color-error-soft);color:var(--color-error)}.processing-strip{gap:var(--space-xs);padding:var(--space-sm);border-block:var(--rule-thin) solid var(--color-rule);background:var(--color-paper-soft);color:var(--color-ink-soft);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.processing-strip span{align-items:center;gap:var(--space-xs);min-height:2.75rem;display:inline-flex}.processing-strip .is-processing{color:var(--color-accent)}.processing-strip .is-muted{color:var(--color-muted)}.production-result{gap:var(--space-lg);min-width:0;border-block-start:var(--rule-thin) solid var(--color-rule);flex-direction:column;padding-block-start:var(--space-xl);display:flex}.result-expiry{color:var(--color-muted);font-size:var(--text-xs)}.preview-tabs{gap:var(--space-xs);max-width:100%;padding-block-end:var(--space-2xs);display:flex;overflow-x:auto}.production-preview{border:var(--rule-thin) solid var(--color-rule-strong);border-radius:var(--radius-md);background:var(--color-paper-soft);flex-direction:column;min-width:0;display:flex;overflow:hidden}.production-preview img{object-fit:contain;width:100%;max-height:42rem;display:block}.production-preview figcaption{justify-content:space-between;align-items:center;gap:var(--space-sm);min-height:2.75rem;padding-inline:var(--space-sm);border-block-start:var(--rule-thin) solid var(--color-rule);background:var(--color-paper-raised);color:var(--color-ink-soft);font-size:var(--text-xs);font-variant-numeric:tabular-nums;display:flex}.download-actions{gap:var(--space-xs);flex-wrap:wrap}.layer-panel{gap:var(--space-sm);min-width:0;padding:var(--space-lg);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper-raised);color:var(--color-ink);flex-direction:column;align-self:start;display:flex}.layer-panel-head{justify-content:space-between;gap:var(--space-sm)}.layer-panel-head p{color:var(--color-muted);font-size:var(--text-xs)}.layer-composite{aspect-ratio:1;border:var(--rule-thin) solid var(--color-rule);background:var(--color-paper-soft);width:100%;color:var(--color-muted);font-size:var(--text-sm);place-items:center;display:grid;position:relative;overflow:hidden}.layer-composite img{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.layer-list{gap:var(--space-2xs);flex-direction:column;max-height:24rem;display:flex;overflow-y:auto}.layer-list button{align-items:center;gap:var(--space-sm);min-height:3.25rem;padding-inline:var(--space-xs);border:var(--rule-thin) solid transparent;border-radius:var(--radius-sm);background:var(--color-paper-raised);color:var(--color-ink-soft);text-align:start;transition:background-color var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.layer-list button[aria-pressed=false]{opacity:.58}.layer-list button>span:nth-child(2){flex-direction:column;min-width:0;display:flex}.layer-list button small{color:var(--color-muted);font-variant-numeric:tabular-nums}.layer-swatch{border:var(--rule-thin) solid var(--color-rule-strong);border-radius:var(--radius-xs);width:1.5rem;height:1.5rem}.command-dialog{border:var(--rule-thin) solid var(--color-rule-strong);border-radius:var(--radius-md);background:var(--color-paper-raised);width:min(100% - 2rem,38rem);max-height:min(80dvh,36rem);color:var(--color-ink);box-shadow:0 1rem 3rem var(--color-shadow);margin:auto;padding:0;position:fixed;inset:0;overflow:hidden}.command-dialog::backdrop{background:var(--color-overlay);color:var(--color-paper)}.command-search{gap:var(--space-sm);padding:var(--space-sm);border-block-end:var(--rule-thin) solid var(--color-rule)}.command-search input{background:var(--color-paper-raised);color:var(--color-ink);border-color:#0000;flex:1}.command-list{gap:var(--space-2xs);max-height:24rem;padding:var(--space-xs);flex-direction:column;display:flex;overflow-y:auto}.command-list button{align-items:center;gap:var(--space-sm);min-height:3.5rem;padding-inline:var(--space-sm);border:var(--rule-thin) solid transparent;border-radius:var(--radius-sm);background:var(--color-paper-raised);color:var(--color-ink);text-align:start;transition:background-color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.command-list button>span{flex-direction:column;min-width:0;display:flex}.command-list button small{color:var(--color-muted)}.command-empty{padding:var(--space-xl);color:var(--color-muted);text-align:center}.command-help{gap:var(--space-md);padding:var(--space-sm);border-block-start:var(--rule-thin) solid var(--color-rule);color:var(--color-muted);font-size:var(--text-xs);flex-wrap:wrap}.command-help span{align-items:center;gap:var(--space-2xs);display:inline-flex}@media (hover:hover) and (pointer:fine){.command-trigger:hover,.icon-button:hover,.text-button:hover,.command-list button:hover,.repeat-options button:hover,.preview-tabs button:hover,.layer-list button:hover,.professional-output-list>a:hover,.field-group input:hover,.field-group select:hover,.rail-link:hover{background:var(--color-paper-soft);color:var(--color-ink)}.primary-button:hover:not(:disabled){background:var(--color-accent-hover);color:var(--color-accent-ink);transform:translateY(-1px)}.secondary-button:hover:not(:disabled){background:var(--color-paper-soft);color:var(--color-ink)}.status-footer a:hover{color:var(--color-accent-hover);text-underline-offset:var(--space-2xs);text-decoration:underline}}@media (width>=40rem){.workspace{padding-inline:var(--space-lg)}.project-head{flex-direction:row;justify-content:space-between;align-items:flex-end}.workflow-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.workflow-step:nth-child(odd){border-inline-end:var(--rule-thin) solid var(--color-rule)}.workflow-step:nth-last-child(-n+2){border-block-end:0}.local-meta{grid-template-columns:repeat(4,minmax(0,1fr))}.local-meta>div{border-block-end:0;border-inline-end:var(--rule-thin) solid var(--color-rule)}.local-meta>div:last-child{border-inline-end:0}.result-grid{grid-template-columns:minmax(0,1.35fr) minmax(18rem,.65fr)}.studio-heading,.result-heading{flex-direction:row;justify-content:space-between;align-items:flex-end}.processing-strip,.repeat-options{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=60rem){.mobile-menu,.side-rail-mobile-head,.nav-scrim{display:none}.side-rail{transform:none}.workspace{width:calc(100% - 14rem);padding-inline:var(--space-xl);margin-inline-start:14rem}.workflow-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.workflow-step,.workflow-step:nth-child(odd){border-block-end:0;border-inline-end:var(--rule-thin) solid var(--color-rule)}.workflow-step:last-child{border-inline-end:0}.workbench-grid{grid-template-columns:minmax(0,1fr) minmax(19rem,22rem)}.parameter-panel{position:sticky;inset-block-start:calc(4rem + var(--space-lg))}.studio-workbench{grid-template-columns:minmax(0,1fr) minmax(19rem,22rem)}.studio-controls{position:sticky;inset-block-start:calc(4rem + var(--space-lg))}.production-output-grid{grid-template-columns:minmax(0,1fr) minmax(19rem,22rem)}}@media (width>=90rem){.workbench-grid{grid-template-columns:minmax(0,1fr) 23rem}.image-canvas.has-image{min-height:38rem}.studio-workbench,.production-output-grid{grid-template-columns:minmax(0,1fr) 23rem}}@media (width<=39.999rem){.wordmark-cn,.environment-badge,.command-trigger span,.command-trigger kbd{display:none}.command-trigger{justify-content:center;min-width:2.75rem;padding-inline:0}.project-title p{font-size:var(--text-sm)}.panel-heading,.result-head,.result-actions,.color-row{flex-direction:column;align-items:stretch}.panel-heading .text-button{align-self:flex-start}.image-canvas{min-height:22rem}.image-canvas.has-image{min-height:26rem}.upload-empty{padding:var(--space-lg)}.result-actions>button{width:100%}.feature-spec>div,.metadata-block dl>div{gap:var(--space-2xs);grid-template-columns:minmax(0,1fr)}.swatches{justify-content:flex-start}.status-footer{flex-direction:column}.professional-separation{padding:var(--space-lg)}.professional-head,.professional-cta,.professional-deliverables-head{flex-direction:column;align-items:stretch}.upstream-badge{align-self:flex-start}.professional-contract,.professional-stages,.professional-output-list{grid-template-columns:minmax(0,1fr)}.professional-contract>.layout-stack{border-inline-end:0;border-block-end:var(--rule-thin) solid var(--color-rule)}.professional-contract>.layout-stack:last-child{border-block-end:0}.professional-cta .primary-button,.professional-deliverables-head .primary-button{width:100%}}@media (width<=22.999rem){.wordmark{justify-content:center;min-width:2.75rem}.wordmark>span:last-child{display:none}}@media (pointer:coarse){.primary-button,.secondary-button,.text-button,.rail-link,.command-list button,.field-group input,.field-group select{min-height:3rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.15s!important;animation-duration:.15s!important;animation-iteration-count:1!important}.spinner{animation-duration:1.5s!important;animation-iteration-count:infinite!important}}
