@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-cyrillic-wght-normal-DXI_y_WF.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-latin-ext-wght-normal-CnNj8hVb.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-latin-wght-normal-CUIqqgP9.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--radius-sm:.25rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.flow-root{display:flow-root}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.inline-table{display:inline-table}.list-item{display:list-item}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-column{display:table-column}.table-column-group{display:table-column-group}.table-footer-group{display:table-footer-group}.table-header-group{display:table-header-group}.table-row{display:table-row}.table-row-group{display:table-row-group}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.transform\!{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)!important}.cursor-pointer{cursor:pointer}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.break-all{word-break:break-all}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--ink-950:oklch(19% .018 48);--ink-800:oklch(29% .016 48);--ink-650:oklch(43% .014 48);--ink-500:oklch(56% .012 48);--paper-50:oklch(98.4% .013 82);--paper-100:oklch(96.2% .02 82);--paper-200:oklch(91.5% .025 82);--paper-300:oklch(84% .026 82);--vermilion-700:oklch(50% .19 31);--vermilion-600:oklch(58% .21 31);--vermilion-500:oklch(65% .205 31);--vermilion-100:oklch(92% .055 31);--green-700:oklch(43% .095 156);--green-100:oklch(92% .04 156);--amber-700:oklch(48% .11 76);--amber-100:oklch(93% .055 76);--danger-700:oklch(47% .18 24);--danger-100:oklch(92% .05 24);--font-display:"Bricolage Grotesque Variable", "Arial Narrow", sans-serif;--font-body:"Onest Variable", "Helvetica Neue", sans-serif;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--space-4xl:6rem;--radius-sm:.35rem;--radius-md:.65rem;--radius-lg:1rem;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-toggle:cubic-bezier(.65, 0, .35, 1);color:var(--ink-950);background:var(--paper-100);font-family:var(--font-body);font-synthesis:none;text-rendering:optimizelegibility}*{box-sizing:border-box}html{background:var(--paper-100);scroll-behavior:smooth;min-width:320px}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button,label[for],select,summary,input[type=range],input[type=checkbox]{cursor:pointer}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,label[for]:focus-within{outline:3px solid var(--vermilion-500);outline-offset:3px}::selection{background:var(--vermilion-100);color:var(--ink-950)}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.skip-link{top:var(--space-md);left:var(--space-md);z-index:600;padding:var(--space-sm) var(--space-md);background:var(--ink-950);color:var(--paper-50);border-radius:var(--radius-sm);transition:transform .18s var(--ease-out);text-decoration:none;position:fixed;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.app-shell{background-color:var(--paper-100);flex-direction:column;min-height:100vh;display:flex}.app-shell.editor-mode{height:100vh;overflow:hidden}.app-shell:not(.editor-mode){background-image:linear-gradient(var(--paper-200) 1px, transparent 1px), linear-gradient(90deg, var(--paper-200) 1px, transparent 1px);background-size:48px 48px}.app-header{align-items:center;gap:var(--space-xl);min-height:76px;padding:var(--space-md) clamp(1rem, 3vw, 3rem);border-bottom:1px solid var(--paper-300);background:var(--paper-100);z-index:20;grid-template-columns:1fr auto 1fr;display:grid;position:relative}.wordmark{width:max-content;color:var(--ink-950);font:750 1.45rem/1 var(--font-display);letter-spacing:-.04em;align-items:center;gap:.7rem;text-decoration:none;display:inline-flex}.brand-mark{grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(2,1fr);gap:2px;width:27px;height:27px;display:grid;transform:rotate(-3deg)}.brand-mark span{background:var(--ink-950)}.brand-mark span:last-child{background:var(--vermilion-600)}.privacy-note{justify-self:end;align-items:center;gap:var(--space-xs);color:var(--ink-650);grid-column:3;font-size:.875rem;font-weight:650;display:flex}.stepper{grid-column:2;align-items:center;gap:0;margin:0;padding:0;list-style:none;display:flex}.stepper li{color:var(--ink-500);align-items:center;gap:.42rem;font-size:.875rem;font-weight:700;display:flex}.stepper li:not(:last-child):after{content:"";background:var(--paper-300);width:clamp(24px,4vw,64px);height:1px;margin-inline:var(--space-sm)}.stepper .is-complete{color:var(--green-700)}.stepper .is-complete svg{background:var(--green-100);border-radius:50%;width:22px;height:22px;padding:4px}.stepper .is-current{color:var(--ink-950)}.step-number{border:1px solid var(--paper-300);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.is-current .step-number{background:var(--ink-950);color:var(--paper-50);border-color:var(--ink-950)}.welcome{flex:1;grid-template-columns:minmax(0,.82fr) minmax(420px,1.18fr);align-items:center;gap:clamp(3rem,8vw,8rem);width:min(1240px,100%);margin-inline:auto;padding:clamp(3rem,7vw,7.5rem) clamp(1.25rem,5vw,4rem);display:grid}.welcome-copy{align-items:flex-start;gap:var(--space-xl);animation:welcome-in .7s var(--ease-out) both;flex-direction:column;display:flex}.eyebrow{align-items:center;gap:var(--space-xs);color:var(--vermilion-700);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:800;display:flex}.welcome h1{max-width:9ch;font:780 clamp(3.2rem, 6.3vw, 6.5rem)/.88 var(--font-display);letter-spacing:-.072em;text-wrap:balance;margin:0}.welcome h1 em{color:var(--vermilion-600);transform-origin:0;font-style:normal;display:block;transform:rotate(-1.5deg)}.welcome-lead{max-width:48ch;color:var(--ink-650);margin:0;font-size:1.125rem;line-height:1.65}.how-list{width:min(100%,430px);margin:var(--space-md) 0 0;border-top:1px solid var(--paper-300);gap:0;padding:0;list-style:none;display:grid}.how-list li{align-items:baseline;gap:var(--space-md);padding-block:var(--space-md);border-bottom:1px solid var(--paper-300);grid-template-columns:40px 1fr;display:grid}.how-list li>span{color:var(--vermilion-700);letter-spacing:.1em;font-size:.75rem;font-weight:800}.how-list p{color:var(--ink-650);margin:0;font-size:1rem}.how-list strong{color:var(--ink-950)}.upload-workbench{min-width:0;padding:var(--space-lg);background:var(--paper-50);border:1px solid var(--ink-950);box-shadow:12px 12px 0 var(--ink-950);animation:workbench-in .8s 80ms var(--ease-out) both;position:relative}.workbench-ruler{width:21px;padding-block:var(--space-sm);border:1px solid var(--ink-950);background:var(--paper-200);border-right:0;grid-template-rows:repeat(16,1fr);align-items:start;display:grid;position:absolute;inset:0 auto 0 -22px}.workbench-ruler i{background:var(--ink-650);width:45%;height:1px;display:block}.workbench-ruler i:nth-child(4n+1){width:80%}.drop-zone{justify-content:center;align-items:center;gap:var(--space-lg);min-height:510px;padding:var(--space-xl);border:1px dashed var(--ink-500);background:var(--paper-100);text-align:center;transition:background-color .22s var(--ease-out), border-color .22s var(--ease-out), transform .22s var(--ease-out);flex-direction:column;display:flex;overflow:hidden}.drop-zone:hover,.drop-zone.is-dragging{background:var(--vermilion-100);border-color:var(--vermilion-700)}.drop-zone.is-dragging{transform:scale(.988)}.drop-zone.is-loading{pointer-events:none;opacity:.7}.sample-poster{aspect-ratio:1.46;width:min(280px,66vw);box-shadow:7px 7px 0 var(--ink-950);transition:transform .32s var(--ease-out);background:oklch(73% .1 44);grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(3,1fr);display:grid;position:relative;overflow:hidden;transform:rotate(1.6deg)}.drop-zone:hover .sample-poster{transform:rotate(-.6deg)translateY(-4px)}.sample-poster>span{z-index:3;border:1px solid var(--paper-50);position:relative}@supports (color:color-mix(in lab, red, red)){.sample-poster>span{border:1px solid color-mix(in oklch, var(--paper-50) 80%, transparent)}}.sample-sun{z-index:1;aspect-ratio:1;background:var(--paper-100);border-radius:50%;width:22%;position:absolute;top:13%;right:14%}.sample-mountain{z-index:2;background:var(--ink-800);clip-path:polygon(0 100%,15% 35%,32% 68%,48% 0,64% 62%,78% 30%,100% 100%);position:absolute;inset:38% -10% -22%;transform:rotate(-13deg)}.drop-zone-copy{align-items:center;gap:var(--space-sm);text-align:left;display:flex}.upload-icon{background:var(--ink-950);width:46px;height:46px;color:var(--paper-50);border-radius:50%;flex:none;place-items:center;display:grid}.drop-zone-copy strong{font:700 1.15rem/1.15 var(--font-display);letter-spacing:-.025em;display:block}.drop-zone-copy p{color:var(--ink-650);margin:.3rem 0 0;font-size:.875rem}.primary-action{justify-content:center;align-items:center;gap:var(--space-xs);min-height:48px;padding:var(--space-sm) var(--space-lg);background:var(--vermilion-600);color:var(--paper-50);box-shadow:4px 4px 0 var(--ink-950);font-size:.9rem;font-weight:750;display:inline-flex}.format-list{max-width:52ch;color:var(--ink-500);margin:0;font-size:.75rem;line-height:1.5}.sample-button{justify-content:center;align-items:center;gap:var(--space-xs);width:100%;min-height:44px;margin-top:var(--space-sm);color:var(--ink-650);transition:color .16s var(--ease-out);background:0 0;border:0;font-size:.875rem;font-weight:650;display:flex}.sample-button:hover{color:var(--vermilion-700)}.sample-button:disabled{opacity:.5;cursor:wait}.welcome-actions{gap:var(--space-xs);grid-template-columns:1fr 1fr;display:grid}.welcome-actions .sample-button{margin-top:var(--space-sm);border:1px solid #0000}.welcome-actions .sample-button:hover{border-color:var(--paper-300);background:var(--paper-50)}.local-processing{gap:var(--space-sm);margin-top:var(--space-lg);color:var(--ink-650);align-items:flex-start;display:flex}.local-processing svg{color:var(--green-700);flex:none;margin-top:2px}.local-processing p{margin:0;font-size:.875rem;line-height:1.5}.local-processing strong{color:var(--ink-800)}.inline-error,.editor-error{align-items:flex-start;gap:var(--space-sm);margin-top:var(--space-md);padding:var(--space-sm) var(--space-md);color:var(--danger-700);background:var(--danger-100);border:1px solid var(--danger-700);display:flex}@supports (color:color-mix(in lab, red, red)){.inline-error,.editor-error{border:1px solid color-mix(in oklch, var(--danger-700) 28%, var(--danger-100))}}.inline-error,.editor-error{font-size:.875rem;line-height:1.45}.inline-error svg,.editor-error svg{flex:none}.editor-layout{background:var(--paper-50);flex:1;grid-template-columns:clamp(320px,22vw,380px) minmax(420px,1fr) clamp(300px,20vw,340px);height:calc(100vh - 76px);min-height:0;display:grid;position:relative}.editor-layout.right-panel-collapsed{grid-template-columns:clamp(320px,22vw,380px) minmax(420px,1fr) 56px}.controls-panel,.export-panel{background:var(--paper-50);min-width:0}.controls-panel{padding:var(--space-md) var(--space-lg) var(--space-xl);border-right:1px solid var(--paper-300);overflow:hidden auto;container-type:inline-size}.export-panel{padding:var(--space-xl) var(--space-lg);border-left:1px solid var(--paper-300)}.file-summary{align-items:center;gap:var(--space-sm);padding-bottom:var(--space-md);border-bottom:1px solid var(--paper-300);grid-template-columns:42px minmax(0,1fr) 36px;display:grid}.file-summary img{object-fit:cover;background:var(--paper-200);width:42px;height:42px}.file-summary div{min-width:0}.file-summary strong,.file-summary span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.file-summary strong{font-size:.875rem;font-weight:750}.file-summary span{color:var(--ink-500);font-variant-numeric:tabular-nums;margin-top:.2rem;font-size:.75rem}.file-summary button{border:1px solid var(--paper-300);width:36px;height:36px;transition:background-color .16s var(--ease-out), color .16s var(--ease-out);background:0 0;border-radius:50%;place-items:center;display:grid}.file-summary button:hover{background:var(--paper-200);color:var(--vermilion-700)}.control-tabs{z-index:12;top:calc(var(--space-md) * -1);margin-inline:calc(var(--space-lg) * -1);padding:var(--space-sm) var(--space-lg);border-bottom:1px solid var(--paper-300);background:var(--paper-50);grid-template-columns:1fr 1fr;gap:3px;display:grid;position:sticky}@supports (color:color-mix(in lab, red, red)){.control-tabs{background:color-mix(in oklch, var(--paper-50) 96%, transparent)}}.control-tabs button{justify-content:center;align-items:center;gap:var(--space-xs);min-height:44px;color:var(--ink-500);transition:background-color .16s var(--ease-out), color .16s var(--ease-out);background:0 0;border:0;font-size:.875rem;font-weight:750;display:flex}.control-tabs button:hover{background:var(--paper-100);color:var(--ink-950)}.control-tabs button.is-active{background:var(--ink-950);color:var(--paper-50)}.control-tabs+[role=tabpanel]{animation:panel-in .18s var(--ease-out) both}.control-section{gap:var(--space-md);padding-block:var(--space-lg);border-bottom:1px solid var(--paper-300);display:grid}.image-editing-section{gap:var(--space-sm)}.crop-preview{border:1px solid var(--ink-800);background:var(--ink-950);isolation:isolate;justify-self:center;width:100%;position:relative;overflow:hidden}.crop-preview>img{object-fit:fill;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0}.crop-window{z-index:1;box-shadow:0 0 0 100vmax var(--ink-950);border:1.5px solid #fff;position:absolute}@supports (color:color-mix(in lab, red, red)){.crop-window{box-shadow:0 0 0 100vmax color-mix(in oklch, var(--ink-950) 58%, transparent)}}.crop-window{pointer-events:none}.crop-window:before,.crop-window:after{content:"";pointer-events:none;position:absolute;inset:0}.crop-window:before{border-left:1px dashed #ffffff8c;border-right:1px dashed #ffffff8c;left:33.333%;right:33.333%}.crop-window:after{border-top:1px dashed #ffffff8c;border-bottom:1px dashed #ffffff8c;top:33.333%;bottom:33.333%}.crop-window i{z-index:2;border:1px solid var(--ink-950);background:#fff;width:8px;height:8px;position:absolute}.crop-window i:first-child{top:-4px;left:-4px}.crop-window i:nth-child(2){top:-4px;right:-4px}.crop-window i:nth-child(3){bottom:-4px;left:-4px}.crop-window i:nth-child(4){bottom:-4px;right:-4px}.crop-edge-controls>div,.adjustment-controls>div{gap:var(--space-sm)}.transform-tools{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;display:grid}.transform-tools button{border:1px solid var(--paper-300);min-width:0;min-height:54px;color:var(--ink-650);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:.3rem;padding:.4rem .2rem;font-size:.75rem;font-weight:700;display:flex}.transform-tools button:hover,.transform-tools button.is-active{border-color:var(--ink-950);background:var(--ink-950);color:var(--paper-50)}.look-control{gap:var(--space-xs);display:grid}.look-presets{grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;display:grid}.look-presets button{border:1px solid var(--paper-300);min-width:0;min-height:36px;color:var(--ink-650);background:0 0;padding-inline:.2rem;font-size:.75rem;font-weight:650}.look-presets button:hover{border-color:var(--ink-500);color:var(--ink-950)}.look-presets button.is-active{border-color:var(--vermilion-700);background:var(--vermilion-100);color:var(--vermilion-700)}.nondestructive-note{color:var(--green-700);align-items:center;gap:.4rem;margin:0;font-size:.75rem;line-height:1.4;display:flex}.nondestructive-note svg{flex:none}.placement-section{gap:var(--space-md)}.fit-actions{gap:var(--space-xs);display:grid}.fit-actions button{align-items:center;gap:var(--space-sm);min-height:62px;padding:var(--space-sm);border:1px solid var(--paper-300);text-align:left;background:0 0;grid-template-columns:22px minmax(0,1fr) 18px;display:grid;position:relative}.fit-actions button:hover{border-color:var(--ink-500);background:var(--paper-100)}.fit-actions button.is-selected{border-color:var(--ink-950);background:var(--paper-100)}.fit-actions button>svg:first-child,.fit-actions button>svg:last-child{color:var(--vermilion-700)}.fit-actions strong,.fit-actions small{display:block}.fit-actions strong{font-size:.875rem}.fit-actions small{color:var(--ink-500);margin-top:.18rem;font-size:.75rem;font-weight:500}.alignment-control{align-items:center;gap:var(--space-md);padding-block:var(--space-xs);grid-template-columns:minmax(0,1fr) 92px;display:grid}.alignment-control>div:first-child{gap:.25rem;display:grid}.alignment-control small{color:var(--ink-500);font-size:.75rem;line-height:1.4}.alignment-grid{aspect-ratio:1;border:1px solid var(--paper-300);background:var(--paper-100);grid-template-columns:repeat(3,1fr);gap:3px;width:92px;padding:4px;display:grid}.alignment-grid button{background:0 0;border:0;place-items:center;min-width:0;min-height:0;padding:0;display:grid}.alignment-grid button:hover{background:var(--paper-200)}.alignment-grid button span{background:var(--ink-500);border-radius:50%;width:5px;height:5px}.alignment-grid button.is-selected{background:var(--ink-950)}.alignment-grid button.is-selected span{background:var(--paper-50)}.reset-placement-button{min-height:44px}.section-heading,.export-heading{gap:var(--space-sm);grid-template-columns:25px 1fr;align-items:start;display:grid}.section-index{color:var(--vermilion-700);letter-spacing:.08em;padding-top:.18rem;font-size:.75rem;font-weight:850}.section-heading h2,.export-heading h2{font:720 1.125rem/1.2 var(--font-display);letter-spacing:-.025em;margin:0}.section-heading p,.export-heading p{color:var(--ink-500);margin:.22rem 0 0;font-size:.875rem;line-height:1.4}.preset-list{gap:var(--space-xs);grid-template-columns:repeat(3,1fr);display:grid}.preset-list button{min-width:0;min-height:78px;padding:var(--space-sm);border:1px solid var(--paper-300);text-align:left;transition:border-color .16s var(--ease-out), background-color .16s var(--ease-out);background:0 0;flex-direction:column;justify-content:center;align-items:flex-start;gap:.35rem;display:flex;position:relative}.preset-list button:hover{border-color:var(--ink-500)}.preset-list button.is-selected{border-color:var(--ink-950);background:var(--paper-100)}.preset-list button>svg:last-child{color:var(--vermilion-700);position:absolute;top:7px;right:7px}.preset-list button span{gap:.14rem;font-size:.875rem;font-weight:750;display:grid}.preset-list small{color:var(--ink-500);font-size:.75rem;font-weight:520}.custom-grid{align-items:center;gap:var(--space-xs);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}.custom-grid>span{color:var(--ink-650);grid-column:1/-1;font-size:.875rem;font-weight:650}.stepper-input{border:1px solid var(--paper-300);align-items:stretch;display:flex}.stepper-input button{background:var(--paper-100);border:0;place-items:center;width:30px;min-width:30px;display:grid}.stepper-input button:hover{background:var(--paper-200)}.stepper-input button:disabled{color:var(--ink-500);opacity:.38;cursor:not-allowed}.stepper-input span{border-inline:1px solid var(--paper-300);flex:1;place-items:center;min-width:0;padding:.36rem .1rem;line-height:1;display:grid}.stepper-input strong{font-variant-numeric:tabular-nums;font-size:.875rem}.stepper-input small{color:var(--ink-500);font-size:.75rem}.select-field,.field-group,.range-control{gap:.5rem;display:grid}.select-field>span,.field-label,.control-label-row label{color:var(--ink-650);font-size:.875rem;font-weight:650}.field-help{color:var(--ink-500);margin:0;font-size:.75rem;line-height:1.45}.select-field>div{position:relative}.select-field select{appearance:none;width:100%;min-height:44px;padding:0 var(--space-xl) 0 var(--space-sm);border:1px solid var(--paper-300);background:var(--paper-100);color:var(--ink-950);border-radius:0;font-size:.875rem}.select-field svg{pointer-events:none;top:50%;right:var(--space-sm);position:absolute;transform:translateY(-50%)}.paper-impact{align-items:center;gap:var(--space-sm);padding:var(--space-sm);border:1px solid var(--paper-300);background:var(--paper-100);grid-template-columns:42px minmax(0,1fr);display:grid}.paper-shape{border:1px solid var(--ink-650);background:var(--paper-50);box-shadow:2px 2px 0 var(--paper-300);justify-self:center;position:relative}.paper-shape i{border:1px dashed var(--paper-300);position:absolute;inset:4px}.paper-impact p{gap:.2rem;margin:0;display:grid}.paper-impact strong{color:var(--ink-800);font-size:.75rem}.paper-impact p span{color:var(--ink-500);font-size:.75rem;line-height:1.4}.segmented{background:var(--paper-200);grid-template-columns:1fr 1fr;padding:3px;display:grid}.segmented button{min-height:40px;color:var(--ink-650);transition:color .16s var(--ease-out), background-color .16s var(--ease-out);background:0 0;border:0;font-size:.875rem;font-weight:650}.segmented button.is-selected{background:var(--paper-50);color:var(--ink-950);box-shadow:0 1px 3px var(--ink-950)}@supports (color:color-mix(in lab, red, red)){.segmented button.is-selected{box-shadow:0 1px 3px color-mix(in oklch, var(--ink-950) 13%, transparent)}}.control-label-row{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.control-label-row output{color:var(--ink-950);font-variant-numeric:tabular-nums;font-size:.875rem;font-weight:750}.range-control input{appearance:none;background:0 0;width:100%;height:18px;margin:0}.range-control input::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--ink-950) var(--range-progress), var(--paper-300) var(--range-progress));height:3px}.range-control input::-moz-range-track{background:var(--paper-300);height:3px}.range-control input::-moz-range-progress{background:var(--ink-950);height:3px}.range-control input::-webkit-slider-thumb{appearance:none;border:2px solid var(--paper-50);background:var(--vermilion-600);width:16px;height:16px;box-shadow:0 0 0 1px var(--ink-950);border-radius:50%;margin-top:-6.5px}.range-control input::-moz-range-thumb{border:2px solid var(--paper-50);background:var(--vermilion-600);width:13px;height:13px;box-shadow:0 0 0 1px var(--ink-950);border-radius:50%}.position-controls{border:1px solid var(--paper-300);background:var(--paper-100)}.position-controls summary{align-items:center;gap:var(--space-xs);min-height:44px;padding:var(--space-xs) var(--space-sm);font-size:.875rem;font-weight:700;list-style:none;display:flex}.position-controls summary::-webkit-details-marker{display:none}.position-controls>div{gap:var(--space-md);padding:var(--space-sm);border-top:1px solid var(--paper-300);display:grid}.image-reset-button{justify-content:center;align-items:center;gap:var(--space-xs);min-height:40px;padding:var(--space-xs) var(--space-sm);border:1px solid var(--paper-300);color:var(--ink-650);background:0 0;font-size:.75rem;font-weight:680;display:flex}.image-reset-button:hover:not(:disabled){border-color:var(--ink-500);background:var(--paper-100);color:var(--ink-950)}.image-reset-button:disabled{opacity:.42;cursor:not-allowed}.toggle-row{justify-content:space-between;align-items:center;gap:var(--space-md);min-height:46px;display:flex}.toggle-row>span{align-items:center;gap:var(--space-sm);display:flex}.toggle-row>span>svg{color:var(--ink-650)}.toggle-row strong,.toggle-row small{display:block}.toggle-row strong{font-size:.875rem}.toggle-row small{color:var(--ink-500);margin-top:.14rem;font-size:.75rem}.toggle-row input{appearance:none;border:1px solid var(--paper-300);background:var(--paper-200);width:37px;height:21px;transition:background-color .18s var(--ease-toggle);border-radius:999px;flex:none;position:relative}.toggle-row input:after{content:"";background:var(--ink-650);width:13px;height:13px;transition:transform .18s var(--ease-toggle), background-color .18s var(--ease-toggle);border-radius:50%;position:absolute;top:3px;left:3px}.toggle-row input:checked{background:var(--vermilion-100);border-color:var(--vermilion-600)}.toggle-row input:checked:after{background:var(--vermilion-700);transform:translate(16px)}.reset-button{align-items:center;gap:var(--space-xs);margin-top:var(--space-md);padding:var(--space-sm) 0;color:var(--ink-500);background:0 0;border:0;font-size:.875rem;font-weight:650;display:flex}.reset-button:hover{color:var(--vermilion-700)}.preview-stage{min-width:0;padding:var(--space-lg) clamp(1.5rem, 4vw, 4rem);background-color:var(--paper-200);background-image:radial-gradient(circle, var(--ink-500) .8px, transparent .8px);grid-template-rows:auto 1fr auto;display:grid}@supports (color:color-mix(in lab, red, red)){.preview-stage{background-image:radial-gradient(circle, color-mix(in oklch, var(--ink-500) 23%, transparent) .8px, transparent .8px)}}.preview-stage{background-size:18px 18px;overflow:hidden}.preview-toolbar{justify-content:space-between;align-items:center;gap:var(--space-md);padding-bottom:var(--space-md);display:flex}.preview-toolbar p{font:720 1rem/1.2 var(--font-display);margin:0}.preview-toolbar>div>span{color:var(--ink-650);font-variant-numeric:tabular-nums;margin-top:.22rem;font-size:.75rem;display:block}.canvas-tools,.tool-group{align-items:center;gap:4px;display:flex}.tool-group{border:1px solid var(--paper-300);background:var(--paper-100);padding:3px}.tool-group button{min-width:38px;min-height:38px;padding:0 var(--space-xs);color:var(--ink-650);background:0 0;border:0;justify-content:center;align-items:center;gap:.35rem;font-size:.75rem;font-weight:700;display:flex}.tool-group button:hover:not(:disabled),.tool-group button.is-active{background:var(--ink-950);color:var(--paper-50)}.tool-group button:disabled{opacity:.35;cursor:not-allowed}.zoom-group output{min-width:48px;color:var(--ink-800);font-variant-numeric:tabular-nums;text-align:center;font-size:.75rem;font-weight:750}.canvas-area{min-height:400px;padding:var(--space-2xl);overscroll-behavior:contain;touch-action:none;-webkit-user-select:none;user-select:none;place-items:center;display:grid;position:relative;overflow:hidden}.canvas-area.is-canvas-tool{cursor:grab}.canvas-area.is-image-tool .poster-preview{cursor:move}.canvas-area.is-moving{cursor:grabbing}.canvas-transform{transform-origin:50%;width:min(78%,760px);transition:transform .18s var(--ease-out);will-change:transform;position:relative}.canvas-area.is-moving .canvas-transform{transition:none}.poster-preview{isolation:isolate;background:var(--paper-50);width:100%;height:100%;box-shadow:0 16px 36px var(--ink-950), 8px 10px 0 var(--ink-950);position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.poster-preview{box-shadow:0 16px 36px color-mix(in oklch, var(--ink-950) 18%, transparent), 8px 10px 0 color-mix(in oklch, var(--ink-950) 12%, transparent)}}.poster-preview>.poster-image{max-width:none;display:block;position:absolute}.image-boundary{z-index:1;pointer-events:none;mix-blend-mode:difference;border:1px solid #fff;position:absolute;box-shadow:0 0 0 3px #ffffff61}.tile-grid{z-index:2;pointer-events:none;mix-blend-mode:difference;display:grid;position:absolute;inset:0}.tile-grid span{color:#fff;text-shadow:none;border-bottom:1px dashed #ffffffeb;border-right:1px dashed #ffffffeb;place-items:start;padding:min(.7vw,8px);font-size:clamp(.42rem,.7vw,.65rem);font-weight:800;display:grid;position:relative}.tile-grid.show-crop-marks span:after{content:"";pointer-events:none;border:1px solid #ffffff9e;position:absolute;inset:4px}.tile-grid.show-crop-marks span:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(#fff,#fff) 0 0/12px 1px no-repeat,linear-gradient(#fff,#fff) 0 0/1px 12px no-repeat,linear-gradient(#fff,#fff) 100% 0/12px 1px no-repeat,linear-gradient(#fff,#fff) 100% 0/1px 12px no-repeat,linear-gradient(#fff,#fff) 0 100%/12px 1px no-repeat,linear-gradient(#fff,#fff) 0 100%/1px 12px no-repeat,linear-gradient(#fff,#fff) 100% 100%/12px 1px no-repeat,linear-gradient(#fff,#fff) 100% 100%/1px 12px no-repeat;position:absolute;inset:8px}.registration-mark{z-index:3;opacity:.88;mix-blend-mode:difference;border:1px solid #fff;border-radius:50%;width:20px;height:20px;position:absolute}.registration-mark:before,.registration-mark:after{content:"";background:#fff;position:absolute}.registration-mark:before{width:28px;height:1px;top:9px;left:-5px}.registration-mark:after{width:1px;height:28px;top:-5px;left:9px}.mark-one{top:11px;right:11px}.mark-two{bottom:11px;left:11px}.dimension-line{color:var(--ink-650);letter-spacing:.04em;text-transform:uppercase;font-size:.75rem;font-weight:700;position:absolute}.dimension-width{background:var(--ink-500);height:1px;bottom:18px;left:18%;right:18%}.dimension-width:before,.dimension-width:after{content:"";background:var(--ink-500);width:1px;height:7px;position:absolute;top:-3px}.dimension-width:before{left:0}.dimension-width:after{right:0}.dimension-width span{padding-inline:var(--space-xs);background:var(--paper-200);white-space:nowrap;position:absolute;left:50%;transform:translate(-50%,-50%)}.dimension-height{background:var(--ink-500);width:1px;top:18%;bottom:18%;right:12px}.dimension-height:before,.dimension-height:after{content:"";background:var(--ink-500);width:7px;height:1px;position:absolute;left:-3px}.dimension-height:before{top:0}.dimension-height:after{bottom:0}.dimension-height span{padding-inline:var(--space-xs);background:var(--paper-200);white-space:nowrap;position:absolute;top:50%;transform:translate(-50%,-50%)rotate(90deg)}.preview-hint{justify-content:center;align-items:center;gap:var(--space-xs);padding-top:var(--space-md);color:var(--ink-650);font-size:.875rem;display:flex}.export-panel{gap:var(--space-lg);flex-direction:column;display:flex;overflow-y:auto}.export-heading{grid-template-columns:25px minmax(0,1fr) 38px}.export-collapse-button{border:1px solid var(--paper-300);width:38px;height:38px;color:var(--ink-650);background:0 0;align-self:start;place-items:center;display:grid}.export-collapse-button:hover{border-color:var(--ink-500);background:var(--paper-100);color:var(--ink-950)}.export-panel.is-collapsed{padding:var(--space-sm);overflow:hidden}.export-rail-toggle{justify-content:flex-start;align-items:center;gap:var(--space-md);width:100%;height:100%;min-height:180px;padding:var(--space-md) 0;color:var(--ink-650);background:0 0;border:0;flex-direction:column;display:flex}.export-rail-toggle:hover{background:var(--paper-100);color:var(--ink-950)}.export-rail-toggle span{writing-mode:vertical-rl;letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:750;transform:rotate(180deg)}.print-summary{border-top:1px solid var(--paper-300);gap:0;margin:0;display:grid}.print-summary div{justify-content:space-between;gap:var(--space-md);padding-block:var(--space-sm);border-bottom:1px solid var(--paper-300);display:flex}.print-summary dt{color:var(--ink-500);font-size:.875rem}.print-summary dd{color:var(--ink-950);font-variant-numeric:tabular-nums;text-align:right;margin:0;font-size:.875rem;font-weight:750}.quality-note{gap:var(--space-sm);padding:var(--space-sm);border:1px solid;grid-template-columns:30px 1fr;align-items:start;display:grid}.quality-note>span{border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.quality-note strong{font-size:.875rem;display:block}.quality-note p{margin:.2rem 0 0;font-size:.75rem;line-height:1.4}.quality-note.good{color:var(--green-700);background:var(--green-100);border-color:var(--green-700)}@supports (color:color-mix(in lab, red, red)){.quality-note.good{border-color:color-mix(in oklch, var(--green-700) 28%, var(--green-100))}}.quality-note.good>span{background:var(--green-700)}@supports (color:color-mix(in lab, red, red)){.quality-note.good>span{background:color-mix(in oklch, var(--green-700) 13%, var(--green-100))}}.quality-note.fair{color:var(--amber-700);background:var(--amber-100);border-color:var(--amber-700)}@supports (color:color-mix(in lab, red, red)){.quality-note.fair{border-color:color-mix(in oklch, var(--amber-700) 28%, var(--amber-100))}}.quality-note.fair>span{background:var(--amber-700)}@supports (color:color-mix(in lab, red, red)){.quality-note.fair>span{background:color-mix(in oklch, var(--amber-700) 13%, var(--amber-100))}}.quality-note.low{color:var(--danger-700);background:var(--danger-100);border-color:var(--danger-700)}@supports (color:color-mix(in lab, red, red)){.quality-note.low{border-color:color-mix(in oklch, var(--danger-700) 28%, var(--danger-100))}}.quality-note.low>span{background:var(--danger-700)}@supports (color:color-mix(in lab, red, red)){.quality-note.low>span{background:color-mix(in oklch, var(--danger-700) 13%, var(--danger-100))}}.export-actions{gap:var(--space-xs);display:grid}.export-primary{justify-content:space-between;align-items:center;gap:var(--space-md);min-height:64px;padding:var(--space-sm) var(--space-md);border:1px solid var(--ink-950);background:var(--ink-950);color:var(--paper-50);text-align:left;transition:background-color .16s var(--ease-out), transform .12s var(--ease-out);display:flex}.export-primary:hover{background:var(--vermilion-700)}.export-primary:active{transform:translateY(1px)}.export-primary>span{align-items:center;gap:var(--space-sm);display:flex}.export-primary strong,.export-primary small{display:block}.export-primary strong{font-size:.875rem}.export-primary small{color:var(--paper-300);margin-top:.18rem;font-size:.75rem;font-weight:500}.export-secondary{justify-content:center;align-items:center;gap:var(--space-xs);border:1px solid var(--paper-300);min-height:44px;color:var(--ink-650);transition:background-color .16s var(--ease-out), border-color .16s var(--ease-out);background:0 0;font-size:.875rem;font-weight:650;display:flex}.export-secondary:hover{background:var(--paper-100);border-color:var(--ink-500)}.print-direct{border-color:var(--ink-500);color:var(--ink-950)}.project-actions{gap:var(--space-xs);padding-block:var(--space-md);border-top:1px solid var(--paper-300);border-bottom:1px solid var(--paper-300);display:grid}.project-actions p{color:var(--ink-800);margin:0;font-size:.875rem;font-weight:750}.project-actions>div{gap:var(--space-xs);grid-template-columns:1fr 1fr;display:grid}.project-actions button{justify-content:center;align-items:center;gap:var(--space-xs);border:1px solid var(--paper-300);min-height:44px;color:var(--ink-650);background:0 0;font-size:.875rem;font-weight:700;display:flex}.project-actions button:hover{border-color:var(--ink-500);background:var(--paper-100);color:var(--ink-950)}.project-actions small{color:var(--ink-500);font-size:.75rem;line-height:1.45}.print-tip{gap:var(--space-sm);padding-top:var(--space-md);border-top:1px solid var(--paper-300);color:var(--ink-650);grid-template-columns:22px 1fr;display:grid}.print-tip svg{color:var(--vermilion-700)}.print-tip p{margin:0;font-size:.875rem;line-height:1.55}.print-tip strong{color:var(--ink-800)}.assembly-guide{border-top:1px solid var(--paper-300);border-bottom:1px solid var(--paper-300);margin-top:auto}.assembly-guide summary{justify-content:space-between;align-items:center;gap:var(--space-sm);min-height:44px;color:var(--ink-650);font-size:.875rem;font-weight:700;list-style:none;display:flex}.assembly-guide summary::-webkit-details-marker{display:none}.assembly-guide[open] summary svg{transform:rotate(180deg)}.assembly-guide ol{gap:var(--space-sm);padding:0 0 var(--space-md);margin:0;list-style:none;display:grid}.assembly-guide li{gap:var(--space-xs);color:var(--ink-650);grid-template-columns:24px 1fr;font-size:.75rem;line-height:1.45;display:grid}.assembly-guide li span{border:1px solid var(--paper-300);width:22px;height:22px;color:var(--vermilion-700);border-radius:50%;place-items:center;font-size:.75rem;font-weight:800;display:grid}.export-progress{gap:var(--space-sm);padding-block:var(--space-md);display:grid}.export-progress>div{justify-content:space-between;align-items:center;gap:var(--space-md);font-size:.875rem;display:flex}.export-progress strong{font-variant-numeric:tabular-nums}.export-progress progress{appearance:none;background:var(--paper-200);border:0;width:100%;height:5px}.export-progress progress::-webkit-progress-bar{background:var(--paper-200)}.export-progress progress::-webkit-progress-value{background:var(--vermilion-600)}.export-progress progress::-moz-progress-bar{background:var(--vermilion-600)}.export-progress p{color:var(--ink-500);margin:0;font-size:.75rem;line-height:1.45}.editor-error,.editor-notice{z-index:500;left:50%;bottom:var(--space-lg);width:min(460px,100vw - 2rem);box-shadow:0 10px 30px var(--ink-950);position:fixed;transform:translate(-50%)}@supports (color:color-mix(in lab, red, red)){.editor-error,.editor-notice{box-shadow:0 10px 30px color-mix(in oklch, var(--ink-950) 18%, transparent)}}.editor-notice{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border:1px solid var(--green-700);display:flex}@supports (color:color-mix(in lab, red, red)){.editor-notice{border:1px solid color-mix(in oklch, var(--green-700) 28%, var(--green-100))}}.editor-notice{background:var(--green-100);color:var(--green-700);font-size:.875rem;line-height:1.45}.print-frame{opacity:0;pointer-events:none;border:0;width:1px;height:1px;position:fixed;inset:auto auto 0 0}.site-footer{justify-content:space-between;align-items:center;gap:var(--space-lg);min-height:48px;padding:var(--space-sm) clamp(1rem, 3vw, 3rem);border-top:1px solid var(--paper-300);background:var(--paper-100);color:var(--ink-500);font-size:.75rem;display:flex}.editor-mode .site-footer{display:none}.site-footer>span{color:var(--ink-800);font-weight:750}.site-footer i{color:var(--vermilion-700);text-transform:uppercase;margin-left:.3rem;font-size:.55rem;font-style:normal}.site-footer p{text-align:right;margin:0}@keyframes welcome-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes workbench-in{0%{opacity:0;transform:translateY(22px)rotate(.8deg)}to{opacity:1;transform:translateY(0)rotate(0)}}@keyframes panel-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@container (width<=330px){.preset-list{grid-template-columns:1fr}.preset-list button{flex-direction:row;align-items:center;min-height:58px}.preset-list button span{flex:1}}@media (width<=1320px){.app-shell.editor-mode{height:auto;min-height:100vh;overflow:visible}.editor-layout{grid-template-columns:clamp(300px,30vw,360px) minmax(380px,1fr);height:auto;min-height:calc(100vh - 76px)}.editor-layout.right-panel-collapsed{grid-template-columns:clamp(300px,30vw,360px) minmax(380px,1fr)}.export-panel{border-top:1px solid var(--paper-300);border-left:0;grid-column:1/-1;grid-template-columns:1fr 1fr 1fr;align-items:start;display:grid;overflow:visible}.export-heading,.print-summary,.quality-note{grid-column:auto}.export-actions,.print-tip,.assembly-guide,.export-progress{grid-column:span 1}.assembly-guide{margin-top:0}.export-panel.is-collapsed{min-height:58px;padding:var(--space-xs) var(--space-md)}.export-rail-toggle{flex-direction:row;justify-content:center;min-height:48px;padding:0}.export-rail-toggle span{writing-mode:horizontal-tb;transform:none}}@media (width<=820px){.app-header{grid-template-columns:auto 1fr;min-height:68px}.stepper{grid-column:2;justify-self:end}.stepper li span:last-child{display:none}.welcome{gap:var(--space-3xl);padding-block:var(--space-3xl);grid-template-columns:1fr}.welcome h1{max-width:10ch;font-size:clamp(3.5rem,14vw,6rem)}.welcome-copy{text-align:center;align-items:center}.how-list{text-align:left}.upload-workbench{width:min(650px,100%);margin-inline:auto}.drop-zone{min-height:460px}.editor-layout{flex-direction:column;display:flex}.controls-panel{border-top:1px solid var(--paper-300);border-right:0;order:2;overflow:visible}.preview-stage{order:1;min-height:70vh}.export-panel{border-left:0;order:3;display:flex}.preset-list{grid-template-columns:repeat(3,minmax(0,1fr))}.custom-grid{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.preview-toolbar,.canvas-tools{flex-wrap:wrap}.site-footer{flex-direction:column;align-items:flex-start}.site-footer p{text-align:left}}@media (width<=560px){.app-header{padding-inline:var(--space-md)}.privacy-note span{display:none}.stepper li:not(:last-child):after{width:15px;margin-inline:6px}.welcome{padding:var(--space-2xl) var(--space-md) var(--space-3xl)}.welcome-copy{gap:var(--space-lg)}.welcome h1{font-size:clamp(3.15rem,16vw,5rem)}.welcome-lead{font-size:.95rem}.upload-workbench{padding:var(--space-sm);box-shadow:6px 6px 0 var(--ink-950)}.workbench-ruler{display:none}.drop-zone{min-height:420px;padding:var(--space-lg) var(--space-md)}.sample-poster{width:min(240px,76vw)}.format-list{font-size:.62rem}.preview-stage{min-height:58vh;padding:var(--space-md)}.preview-toolbar{align-items:flex-start}.canvas-area{min-height:340px;padding:var(--space-xl)}.poster-preview{max-height:50vh}.dimension-width{bottom:10px;left:12%;right:12%}.dimension-height{top:12%;bottom:12%;right:4px}.preview-hint{text-align:center}.controls-panel,.export-panel{padding-inline:var(--space-md)}.preset-list{grid-template-columns:1fr}.preset-list button{flex-direction:row;align-items:center;min-height:58px}.preset-list button span{flex:1}.custom-grid{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.tool-group button span{display:none}.canvas-transform{width:84%}.export-primary{min-height:68px}}@media (pointer:coarse){button,select,summary{min-height:44px}.file-summary button{min-width:44px;min-height:44px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0s!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}
