@font-face{font-family:DejaVu Sans;font-weight:700;font-style:normal;font-display:swap;src:url(/static/dist/fonts/DejaVuSans-Bold.ttf) format("truetype")}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-feature-settings:"ss01","ss02","cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[data-theme=papel]{--bg: oklch(.965 .012 82);--bg-deep: oklch(.945 .014 82);--surface: oklch(.99 .006 80);--surface-2: oklch(.93 .012 80);--surface-3: oklch(.88 .014 80);--ink: oklch(.2 .012 60);--ink-soft: oklch(.34 .01 60);--text-dim: oklch(.46 .01 60);--muted: oklch(.6 .008 60);--line: oklch(.82 .01 70);--line-strong: oklch(.65 .012 70);--accent: oklch(.62 .15 55);--accent-soft: oklch(.93 .04 65);--accent-ink: oklch(.42 .13 50);--success: oklch(.55 .1 145);--warn: oklch(.62 .13 70);--danger: oklch(.55 .18 28);--font-display: "Newsreader", "Times New Roman", serif;--font-body: "Geist", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Menlo", monospace;--radius: 6px;--radius-lg: 10px;--display-letter: -.01em;--display-weight: 400;--display-style: normal;--label-transform: none;--label-tracking: .02em}[data-theme=taller]{--bg: oklch(.984 .003 240);--bg-deep: oklch(.965 .003 240);--surface: oklch(1 0 0);--surface-2: oklch(.965 .004 240);--surface-3: oklch(.93 .005 240);--ink: oklch(.18 .008 240);--ink-soft: oklch(.3 .008 240);--text-dim: oklch(.45 .008 240);--muted: oklch(.58 .006 240);--line: oklch(.88 .004 240);--line-strong: oklch(.72 .006 240);--accent: oklch(.22 .01 240);--accent-soft: oklch(.93 .008 240);--accent-ink: oklch(.18 .01 240);--success: oklch(.52 .1 155);--warn: oklch(.65 .13 70);--danger: oklch(.55 .18 28);--font-display: "Geist", system-ui, sans-serif;--font-body: "Geist", system-ui, sans-serif;--font-mono: "Geist Mono", "JetBrains Mono", monospace;--radius: 3px;--radius-lg: 4px;--display-letter: -.025em;--display-weight: 500;--display-style: normal;--label-transform: uppercase;--label-tracking: .1em}[data-theme=galeria]{--bg: oklch(.17 .012 55);--bg-deep: oklch(.13 .013 55);--surface: oklch(.22 .012 55);--surface-2: oklch(.25 .013 55);--surface-3: oklch(.3 .014 55);--ink: oklch(.95 .018 85);--ink-soft: oklch(.82 .018 80);--text-dim: oklch(.72 .015 75);--muted: oklch(.55 .012 70);--line: oklch(.3 .012 60);--line-strong: oklch(.42 .014 65);--accent: oklch(.78 .14 78);--accent-soft: oklch(.3 .06 75);--accent-ink: oklch(.3 .05 75);--success: oklch(.72 .13 145);--warn: oklch(.75 .13 70);--danger: oklch(.65 .18 28);--font-display: "Instrument Serif", "Times New Roman", serif;--font-body: "Geist", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace;--radius: 4px;--radius-lg: 8px;--display-letter: -.005em;--display-weight: 400;--display-style: normal;--label-transform: uppercase;--label-tracking: .14em}.login-screen{--login-paper: color-mix(in oklab, var(--surface, #fcfbf7) 86%, white);--login-paper-strong: color-mix(in oklab, var(--surface-2, #ede8de) 82%, white);--login-ink: var(--ink, #201f1c);--login-muted: var(--ink-soft, #625d55);--login-line: color-mix(in oklab, var(--line, #d5cebf) 72%, transparent);--login-line-strong: color-mix(in oklab, var(--line-strong, #a09583) 82%, transparent);--login-accent: color-mix(in oklab, var(--accent, #8b5e3c) 78%, #6a4a2f);min-height:100dvh;position:relative;overflow:hidden;padding:32px;background:radial-gradient(circle at top left,rgba(255,255,255,.78),transparent 34%),linear-gradient(135deg,#f5f0e5,#e6dfd2 48%,#d8d0c2)}.login-screen:before,.login-screen:after{content:"";position:absolute;inset:auto;border-radius:999px;pointer-events:none;filter:blur(4px);opacity:.46}.login-screen:before{width:26rem;height:26rem;top:-9rem;right:-6rem;background:radial-gradient(circle,rgba(255,255,255,.55),transparent 68%)}.login-screen:after{width:34rem;height:34rem;left:-12rem;bottom:-14rem;background:radial-gradient(circle,rgba(160,132,92,.18),transparent 70%)}.login-blueprint{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 22% 24%,rgba(72,91,101,.16) 0 1px,transparent 1px),radial-gradient(circle at 74% 66%,rgba(72,91,101,.18) 0 1px,transparent 1px),repeating-linear-gradient(0deg,transparent 0 29px,rgba(82,99,108,.12) 29px 30px),repeating-linear-gradient(90deg,transparent 0 29px,rgba(82,99,108,.11) 29px 30px),radial-gradient(circle at 18% 26%,transparent 0 76px,rgba(66,85,94,.28) 76px 78px,transparent 78px),radial-gradient(circle at 78% 64%,transparent 0 112px,rgba(66,85,94,.24) 112px 114px,transparent 114px),linear-gradient(115deg,rgba(56,73,82,.08),transparent 42%),linear-gradient(180deg,#ffffff14,#fff0);opacity:.95}.login-blueprint:before,.login-blueprint:after{content:"";position:absolute;border:1px solid rgba(71,89,97,.32);pointer-events:none}.login-blueprint:before{width:min(44vw,26rem);height:min(44vw,26rem);left:6%;top:12%;border-radius:50%}.login-blueprint:after{width:min(38vw,22rem);height:min(24vw,14rem);right:10%;bottom:12%;border-radius:1.5rem;transform:rotate(-8deg)}.login-panel{position:relative;z-index:1;min-height:calc(100dvh - 64px);display:grid;grid-template-columns:minmax(18rem,1.05fr) minmax(20rem,28rem);align-items:center;gap:clamp(2rem,4vw,4.5rem);max-width:1180px;margin:0 auto}.login-intro{padding:clamp(1rem,2vw,2rem) 0;color:var(--login-ink)}.login-kicker{display:inline-block;margin-bottom:1rem;font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.24em;color:#3a4a53b8}.login-brand{margin:0;max-width:10ch;font-family:var(--font-display);font-size:clamp(3rem,7vw,5.8rem);line-height:.94;letter-spacing:var(--display-letter, -.02em);font-weight:var(--display-weight, 500)}.login-lede{max-width:32rem;margin:1.25rem 0 0;font-size:clamp(1rem,1.4vw,1.15rem);line-height:1.7;color:var(--login-muted)}.login-pills{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.login-pills span{padding:.72rem 1rem;border:1px solid rgba(57,73,80,.18);background:#ffffff5c;color:#303e46d1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}.login-card{position:relative;padding:clamp(1.5rem,2vw,1.8rem);border:1px solid var(--login-line);background:linear-gradient(180deg,#ffffffc7,#ffffffeb),var(--login-paper);box-shadow:0 28px 60px #2c24181f,0 2px #ffffff8c inset;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.login-card:before{content:"";position:absolute;top:12px;right:12px;bottom:12px;left:12px;border:1px solid rgba(108,92,73,.14);pointer-events:none}.login-card__eyebrow{margin:0 0 .65rem;color:var(--login-accent);font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.18em}.login-card__title{margin:0;font-family:var(--font-display);font-size:clamp(2rem,3.5vw,2.7rem);line-height:.96;font-weight:var(--display-weight, 500);color:var(--login-ink)}.login-card__lede{margin:.8rem 0 1.5rem;color:var(--login-muted);line-height:1.6}.login-form{display:grid;gap:.95rem}.login-label{display:grid;gap:.45rem}.login-labelText{font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.16em;color:var(--login-muted)}.login-input{height:3rem;width:100%;padding:0 .95rem;border:1px solid var(--login-line-strong);background:#fffdfad1;color:var(--login-ink);font:inherit;outline:none;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.login-input::placeholder{color:color-mix(in oklab,var(--login-muted) 72%,white)}.login-input:focus{border-color:color-mix(in oklab,var(--login-accent) 58%,black);box-shadow:0 0 0 4px color-mix(in oklab,var(--login-accent) 12%,transparent);background:#fffffff5}.login-error{padding:.8rem .9rem;border:1px solid rgba(146,54,54,.18);background:#c2565614;color:#7a1d1d;font-size:.88rem;line-height:1.45}.login-submit{height:3.15rem;border:none;background:linear-gradient(135deg,#9f6a3f,#7f4f2d);color:#f8f5ef;font-family:var(--font-mono);font-size:.84rem;font-weight:600;text-transform:uppercase;letter-spacing:.16em;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,filter .14s ease;box-shadow:0 16px 30px #1d232733}.login-submit:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.08)}.login-submit:disabled{cursor:wait;opacity:.86}.login-hint{margin:1rem 0 0;color:color-mix(in oklab,var(--login-muted) 84%,white);font-size:.84rem;line-height:1.6}@media (max-width: 900px){.login-screen{padding:20px}.login-panel{min-height:auto;grid-template-columns:1fr;align-items:start;padding:2rem 0}.login-intro{max-width:34rem}.login-brand{max-width:none}}@media (max-width: 640px){.login-screen{padding:16px}.login-card{padding:1.25rem}.login-card:before{top:8px;right:8px;bottom:8px;left:8px}}.app{min-height:100vh;display:grid;grid-template-columns:260px 1fr;background:var(--bg)}.race-sidebar{border-right:1px solid var(--line);background:var(--bg-deep);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow:hidden}.race-sidebar .brand{display:flex;flex-direction:column;gap:2px;padding:24px 26px 22px;border-bottom:1px solid var(--line)}.race-sidebar .brand .mark{font-family:var(--font-display);font-weight:var(--display-weight);font-size:22px;letter-spacing:var(--display-letter);color:var(--ink);line-height:1}[data-theme=papel] .race-sidebar .brand .mark:after{content:"—";margin-left:6px;color:var(--accent)}[data-theme=taller] .race-sidebar .brand .mark{font-family:var(--font-mono);font-size:15px}[data-theme=galeria] .race-sidebar .brand .mark{font-size:26px;font-style:italic}.race-sidebar .brand .tagline{font-size:10px;color:var(--muted);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;margin-top:6px}.race-sidebar .group-label{font-family:var(--font-mono);font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.14em;padding:16px 26px 10px;display:flex;justify-content:space-between;align-items:baseline}.race-sidebar .group-label .ct{color:var(--ink-soft)}.race-list{display:flex;flex-direction:column;gap:0;padding:0 12px;overflow-y:auto;flex:1;min-height:0}.race-item{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:var(--radius);cursor:pointer;position:relative;transition:background .12s;border:1px solid transparent}.race-item:hover{background:var(--surface)}.race-item.active{background:var(--surface);border-color:var(--line)}[data-theme=papel] .race-item.active{box-shadow:inset 2px 0 0 var(--accent)}[data-theme=taller] .race-item.active{background:var(--ink)}[data-theme=taller] .race-item.active .name{color:var(--surface)}[data-theme=taller] .race-item.active .meta{color:var(--surface);opacity:.7}[data-theme=galeria] .race-item.active{background:var(--surface-2);border-color:var(--accent-soft)}.race-item .name{font-family:var(--font-body);font-size:14px;color:var(--ink);font-weight:500;display:flex;align-items:center;gap:8px}[data-theme=taller] .race-item .name{font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.race-item .meta{font-family:var(--font-mono);font-size:10px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;display:flex;gap:8px}.race-name-edit{flex:1;min-width:0;font:inherit;color:inherit;background:transparent;border:none;outline:none;padding:0;margin:0;border-bottom:1px solid var(--accent);caret-color:var(--accent)}.race-item .progress,.race-item.active .progress{color:var(--accent)}[data-theme=taller] .race-item.active .progress{color:var(--surface);opacity:.85}.race-item .close{position:absolute;top:10px;right:10px;width:18px;height:18px;display:grid;place-items:center;border-radius:3px;color:var(--muted);font-size:13px;cursor:pointer;opacity:0;transition:opacity .12s,background .12s}.race-item:hover .close{opacity:1}.race-item .close:hover{background:var(--surface-3);color:var(--ink)}[data-theme=taller] .race-item.active:hover .close{color:var(--surface)}.race-item .race-status{width:14px;height:14px;display:inline-grid;place-items:center;flex-shrink:0;color:var(--accent)}.race-status-dot{background:var(--line-strong);border-radius:50%;width:6px!important;height:6px!important}.race-item.active .race-status-dot{background:var(--accent)}.race-status-ready,.race-status-completed{color:var(--success)}.race-status-generating{color:var(--accent);animation:spin 1.1s linear infinite}.race-status-generating svg,.race-status-ready svg,.race-status-completed svg{width:100%;height:100%}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.race-add{margin:10px 12px 0;padding:11px 14px;border:1px dashed var(--line-strong);border-radius:var(--radius);background:transparent;cursor:pointer;color:var(--muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;text-align:left;transition:border-color .12s,color .12s}.race-add:hover{border-color:var(--ink-soft);color:var(--ink)}.race-sidebar .footer{border-top:1px solid var(--line);padding:14px 20px;display:flex;flex-direction:column;gap:2px}.theme-switch{display:inline-flex;gap:2px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:3px}.theme-switch .theme-opt{flex:1;background:transparent;border:0;padding:6px 8px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);cursor:pointer;border-radius:calc(var(--radius) - 1px);transition:background .12s,color .12s}.theme-switch .theme-opt:hover{color:var(--ink)}.theme-switch .theme-opt svg{width:14px;height:14px;flex-shrink:0}.theme-switch .theme-opt.on{background:var(--bg-deep);color:var(--ink);box-shadow:0 1px #0000000a}[data-theme=papel] .theme-switch .theme-opt.on{color:var(--accent)}[data-theme=galeria] .theme-switch .theme-opt.on{color:var(--accent);background:var(--surface-2)}.race-sidebar .footer .global-link{padding:7px 6px;font-family:var(--font-mono);font-size:11px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:0;background:transparent;text-align:left;border-radius:3px;transition:color .12s,background .12s}.race-sidebar .footer .global-link:hover{color:var(--ink);background:var(--surface)}.race-sidebar .footer .global-link.active{color:var(--accent)}.race-sidebar .footer .preset{font-family:var(--font-mono);font-size:9.5px;color:var(--muted);letter-spacing:.1em;margin-top:8px;padding:6px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:2px}.race-sidebar .footer .user-bar{margin-top:10px;padding:8px 6px 0;border-top:1px solid var(--line);display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;color:var(--muted);letter-spacing:.04em}.race-sidebar .footer .user-bar-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-soft)}.race-sidebar .footer .user-bar-logout{flex-shrink:0;border:1px solid var(--line);background:transparent;color:var(--muted);font:inherit;text-transform:uppercase;letter-spacing:.08em;padding:4px 8px;border-radius:3px;cursor:pointer;transition:color .12s,background .12s,border-color .12s}.race-sidebar .footer .user-bar-logout:hover{color:var(--ink);border-color:var(--ink-soft);background:var(--surface)}.main{display:flex;flex-direction:column;min-width:0}.race-meta-bar{padding:14px 48px;border-bottom:1px solid var(--line);background:var(--bg-deep);font-family:var(--font-mono);font-size:11px;color:var(--muted);letter-spacing:.08em;display:flex;gap:24px;flex-wrap:wrap;align-items:baseline}.race-meta-bar .race-name-wrap{display:inline-flex;align-items:center;gap:6px}.race-meta-bar .race-name{font-family:var(--font-display);font-size:17px;color:var(--ink);letter-spacing:-.005em;text-transform:none;font-weight:var(--display-weight);line-height:1;white-space:nowrap}[data-theme=taller] .race-meta-bar .race-name{font-family:var(--font-body);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}[data-theme=galeria] .race-meta-bar .race-name{font-size:20px;font-style:italic}.edit-pencil{width:22px;height:22px;padding:0;border:0;background:transparent;cursor:pointer;color:var(--muted);display:inline-grid;place-items:center;border-radius:4px;opacity:0;transition:opacity .12s,color .12s,background .12s}.edit-pencil svg{width:12px;height:12px}.race-name-wrap:hover .edit-pencil,.race-item:hover .edit-pencil{opacity:1}.edit-pencil:hover{color:var(--accent);background:var(--surface)}.race-meta-bar .k{opacity:.55;text-transform:uppercase}.race-meta-bar .v{color:var(--ink-soft)}.meta-edit{background:var(--surface);border:1px solid var(--accent);border-radius:var(--radius);padding:2px 8px;color:var(--ink);outline:none;font:inherit}.meta-edit-name{font-family:var(--font-display);font-size:17px;letter-spacing:-.005em;width:220px;line-height:1}[data-theme=taller] .meta-edit-name{font-family:var(--font-body);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}[data-theme=galeria] .meta-edit-name{font-size:20px;font-style:italic}.stepper{display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid var(--line);background:var(--bg)}.stepper .step{position:relative;padding:18px 24px 20px;min-width:0;border-right:1px solid var(--line);cursor:pointer;background:transparent;display:flex;flex-direction:column;gap:4px;transition:background .12s;text-align:left;border-top:0;border-bottom:0;border-left:0;font-family:inherit;color:inherit}.stepper .step:last-child{border-right:0}.stepper .step:hover{background:var(--bg-deep)}.stepper .step .step-n{font-family:var(--font-mono);font-size:10px;color:var(--muted);letter-spacing:.14em;text-transform:uppercase}.stepper .step .step-ttl{font-family:var(--font-display);font-size:20px;color:var(--ink-soft);letter-spacing:-.005em;line-height:1.15}[data-theme=taller] .stepper .step .step-ttl{font-family:var(--font-body);font-size:14px;font-weight:500}[data-theme=galeria] .stepper .step .step-ttl{font-size:23px;font-style:italic}.stepper .step.active .step-n{color:var(--accent)}.stepper .step.active .step-ttl{color:var(--ink)}.stepper .step.active{background:var(--bg-deep)}.stepper .step.active:before{content:"";position:absolute;left:0;right:0;top:-1px;height:2px;background:var(--accent)}[data-theme=taller] .stepper .step.active:before{background:var(--ink)}.stepper .step.done .step-n:before{content:"✓ ";color:var(--success)}.stepper .step.done .step-ttl{color:var(--text-dim)}.screen{padding:48px 56px 80px;max-width:1500px;margin:0 auto;width:100%}@media (max-width: 980px){.app{grid-template-columns:1fr}.race-sidebar{position:relative;height:auto}.screen{padding:32px 24px 60px}}.eyebrow-row{display:flex;align-items:center;gap:14px}.back-btn{display:inline-flex;align-items:center;gap:6px;background:transparent;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink-soft);padding:4px 10px 4px 8px;font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.back-btn:hover{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}.back-btn svg{width:12px;height:12px;flex-shrink:0}.settings-section{margin-bottom:48px;padding-bottom:32px;border-bottom:1px solid var(--line)}.settings-section:last-child{border-bottom:0}.settings-title{font-family:var(--font-display);font-size:24px;margin:0 0 18px;color:var(--ink);letter-spacing:-.005em;font-weight:var(--display-weight)}[data-theme=taller] .settings-title{font-family:var(--font-body);font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.06em}[data-theme=galeria] .settings-title{font-style:italic;font-size:28px}.cfg-section{display:flex;flex-direction:column;gap:14px;margin-bottom:36px}.cfg-label{font-family:var(--font-mono);font-size:11px;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;display:flex;align-items:center;gap:12px;padding-bottom:8px;border-bottom:1px solid var(--line)}.brief-input{font-family:var(--font-display);font-size:20px;line-height:1.4;min-height:100px;background:var(--surface);border:1px solid var(--line);padding:16px 18px}[data-theme=papel] .brief-input{font-style:normal}[data-theme=galeria] .brief-input{font-family:var(--font-display);font-style:italic;font-size:22px}[data-theme=taller] .brief-input{font-family:var(--font-body);font-size:16px}.generator-settings{display:flex;align-items:flex-end;flex-wrap:wrap;gap:18px}.generator-setting{display:flex;flex-direction:column;gap:8px}.generator-setting .label{margin-bottom:0}.view-opt .radio-circle{width:18px;height:18px;border-radius:50%;border:1px solid var(--line-strong);background:var(--surface);display:grid;place-items:center;flex-shrink:0;margin-top:1px}.view-opt.on .radio-circle{border-color:var(--accent)}[data-theme=taller] .view-opt.on .radio-circle{border-color:var(--ink)}.view-opt .radio-dot{width:8px;height:8px;border-radius:50%;background:var(--accent)}[data-theme=taller] .view-opt .radio-dot{background:var(--ink)}.view-options-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.view-options-thumbs .view-opt{display:flex;flex-direction:column;align-items:stretch;padding:0;gap:0;overflow:hidden}.view-thumb{width:100%;aspect-ratio:16 / 9;background:var(--bg-deep);border-bottom:1px solid var(--line);display:grid;place-items:center;padding:8px}.view-options-thumbs .view-opt.on .view-thumb{background:var(--surface)}.view-thumb svg{width:100%;height:100%;max-height:80px}.view-thumb img{width:100%;height:100%;object-fit:cover;object-position:center bottom}.view-body{display:flex;flex-direction:column;gap:4px;padding:14px 16px 16px;flex:1;min-width:0}.view-body .view-row{display:flex;align-items:center;gap:10px;margin-bottom:2px}.view-body .ttl{font-family:var(--font-body);font-size:14.5px;color:var(--ink);font-weight:500}.view-body .sub{font-size:12px;color:var(--text-dim);line-height:1.45;padding-left:28px}.tipo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.tipo-grid-2col{grid-template-columns:repeat(2,1fr);max-width:720px}.tipo-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);padding:32px 28px;cursor:pointer;display:flex;flex-direction:column;gap:16px;transition:border-color .14s,background .14s;position:relative;min-height:280px}.tipo-card:hover{border-color:var(--line-strong)}.tipo-card.on{border-color:var(--accent);background:var(--accent-soft)}[data-theme=taller] .tipo-card.on{border-color:var(--ink);background:var(--bg-deep)}[data-theme=galeria] .tipo-card.on{border-color:var(--accent);background:var(--surface-2)}.tipo-card .check{position:absolute;top:18px;right:18px;width:22px;height:22px;border-radius:50%;border:1px solid var(--line-strong);background:var(--surface);display:grid;place-items:center;font-size:12px;color:transparent}.tipo-card.on .check{background:var(--accent);border-color:var(--accent);color:var(--bg)}[data-theme=taller] .tipo-card.on .check{background:var(--ink);border-color:var(--ink)}.tipo-card .icon{width:84px;height:84px;color:var(--ink-soft);align-self:flex-start}.tipo-card.on .icon{color:var(--accent)}[data-theme=taller] .tipo-card.on .icon{color:var(--ink)}.tipo-card h3{font-family:var(--font-display);font-size:26px;letter-spacing:-.005em;margin:0;color:var(--ink);font-weight:var(--display-weight)}[data-theme=taller] .tipo-card h3{font-family:var(--font-body);font-size:18px;font-weight:600}[data-theme=galeria] .tipo-card h3{font-size:30px;font-style:italic}.tipo-card p{margin:0;font-size:13px;color:var(--text-dim);line-height:1.55}.tipo-card .qty{margin-top:auto;font-family:var(--font-mono);font-size:10.5px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;padding-top:12px;border-top:1px solid var(--line)}.tipo-card.on .qty{color:var(--accent);border-top-color:var(--accent-soft)}[data-theme=taller] .tipo-card.on .qty{color:var(--ink)}.tipo-card .tipo-upload-btn{margin-top:12px;width:100%;padding:9px 12px;border:1px dashed var(--line-strong);border-radius:var(--radius);background:transparent;color:var(--text-dim);font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;cursor:pointer;transition:border-color .14s,background .14s,color .14s}.tipo-card .tipo-upload-btn:hover:not(:disabled){border-color:var(--accent);border-style:solid;color:var(--accent);background:var(--accent-soft)}.tipo-card .tipo-upload-btn:disabled{opacity:.5;cursor:not-allowed}[data-theme=taller] .tipo-card .tipo-upload-btn:hover:not(:disabled){border-color:var(--ink);color:var(--ink);background:var(--bg-deep)}.tipo-card .tipo-uploaded{display:flex;align-items:center;gap:8px;margin-top:8px;font-family:var(--font-mono);font-size:11px;color:var(--success, #22c55e);letter-spacing:.02em}.tipo-card .tipo-uploaded span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.tipo-card .tipo-uploaded button{flex-shrink:0;border:none;background:none;color:var(--muted);font-size:16px;cursor:pointer;padding:0 2px;line-height:1}.tipo-card .tipo-uploaded button:hover{color:var(--danger, #ef4444)}.design-row{display:flex;flex-direction:column;gap:14px}.design-row+.design-row{margin-top:36px}.design-row .row-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding-bottom:12px;border-bottom:1px solid var(--line)}.design-row .row-head h3{font-family:var(--font-display);font-size:28px;margin:0;letter-spacing:-.005em;color:var(--ink);font-weight:var(--display-weight)}[data-theme=papel] .design-row .row-head h3 em,[data-theme=galeria] .design-row .row-head h3 em{font-style:italic;color:var(--accent);font-weight:300}[data-theme=taller] .design-row .row-head h3{font-family:var(--font-body);font-size:18px;font-weight:600;text-transform:none}.design-row .row-head .meta{font-family:var(--font-mono);font-size:11px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.design-row .grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;align-items:start}.design-row .grid.grid-single{grid-template-columns:minmax(180px,260px)}@media (max-width: 1200px){.design-row .grid{grid-template-columns:repeat(3,1fr)}.design-row .grid.grid-single{grid-template-columns:minmax(180px,260px)}}.design-column,.design-node,.design-child-stack{display:flex;flex-direction:column}.design-node{--design-connector-stroke: 1.5px;--design-connector-offset: 22px;--design-connector-radius: 14px;--design-connector-color: color-mix(in oklab, var(--line-strong) 82%, transparent)}.design-column,.design-child-stack{gap:10px}.design-child-stack{padding-top:var(--design-connector-radius);gap:12px}.design-child{position:relative}.design-child-branch{padding-left:var(--design-connector-offset)}.design-child-branch:before{content:"";position:absolute;left:0;top:calc(-1 * var(--design-connector-radius));width:var(--design-connector-offset);height:calc(50% + var(--design-connector-radius));border-left:var(--design-connector-stroke) solid var(--design-connector-color);border-bottom:var(--design-connector-stroke) solid var(--design-connector-color);border-bottom-left-radius:var(--design-connector-radius);box-sizing:border-box;pointer-events:none}.design-child-inline:before{content:"";position:absolute;left:50%;top:-12px;height:12px;border-left:var(--design-connector-stroke) solid var(--design-connector-color);transform:translate(-50%);box-sizing:border-box;pointer-events:none}.design-pick{position:relative;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);overflow:visible;cursor:pointer;display:flex;flex-direction:column;transition:border-color .12s,transform 80ms}.design-pick:hover{border-color:var(--line-strong)}.design-pick.upscaled{border-color:#8b5cf6;box-shadow:0 0 0 1px #8b5cf66b}.design-pick.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.design-pick.upscaled.selected{border-color:#8b5cf6;box-shadow:0 0 0 1px #8b5cf6}[data-theme=taller] .design-pick.selected{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.design-pick .canvas{aspect-ratio:3 / 2;background:var(--surface-2);display:grid;place-items:center;position:relative;overflow:hidden}.design-pick .canvas img{width:100%;height:100%;object-fit:contain;display:block}.design-pick.pending .canvas{background:linear-gradient(115deg,transparent 30%,var(--surface-3) 50%,transparent 70%) 0 0 / 240% 100%,var(--surface-2);animation:shimmer 4.2s linear infinite}.design-pick.error{border-color:var(--danger)}.design-pick.error .canvas{background:var(--surface);color:var(--danger);font-family:var(--font-mono);font-size:10.5px;padding:16px;text-align:center;line-height:1.4}@keyframes shimmer{0%{background-position:240% 0,0 0}to{background-position:-240% 0,0 0}}.design-pick .foot{border-top:1px solid var(--line);padding:10px 12px;display:flex;align-items:center;justify-content:space-between;font-family:var(--font-mono);font-size:10.5px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;gap:8px}.design-pick .foot .id{color:var(--ink-soft)}.design-pick.selected .foot .id{color:var(--accent)}[data-theme=taller] .design-pick.selected .foot .id{color:var(--ink)}.design-pick .foot .acts{display:flex;gap:10px;align-items:center}.design-pick .check{position:absolute;top:10px;left:10px;width:22px;height:22px;border-radius:50%;border:1px solid var(--line-strong);background:var(--surface);display:grid;place-items:center;font-size:12px;color:transparent;font-family:var(--font-mono);z-index:2}.design-pick.selected .check{background:var(--accent);border-color:var(--accent);color:var(--bg)}[data-theme=taller] .design-pick.selected .check{background:var(--ink);border-color:var(--ink)}.design-pick .fav-btn{position:absolute;top:10px;left:10px;width:36px;height:36px;border-radius:50%;border:0;background:#ffffffd9;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;cursor:pointer;color:var(--ink-soft);transition:color .14s,background .14s,transform .1s;z-index:2}.design-pick .edit-btn{position:absolute;right:10px;bottom:52px;width:36px;height:36px;border-radius:50%;border:0;background:#ffffffd9;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;cursor:pointer;color:var(--ink-soft);transition:color .14s,background .14s,transform .1s;z-index:2}[data-theme=galeria] .design-pick .edit-btn{background:#221c16d9;color:var(--text-dim)}.design-pick .edit-btn:hover{background:var(--surface);color:var(--accent);transform:scale(1.08)}[data-theme=taller] .design-pick .edit-btn:hover{color:var(--ink)}.design-pick .upscale-wrap{position:absolute;left:10px;bottom:52px;z-index:3}.design-pick .upscale-btn{height:32px;border:1px solid rgba(139,92,246,.45);border-radius:var(--radius);background:#ffffffe6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#6d28d9;cursor:pointer;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;padding:0 10px}[data-theme=galeria] .design-pick .upscale-btn{background:#221c16e0;color:#c4b5fd}.design-pick .upscale-btn:hover{background:var(--surface);color:#5b21b6}.design-pick .upscale-menu{position:absolute;left:0;bottom:38px;min-width:150px;display:flex;flex-direction:column;gap:4px;border:1px solid rgba(139,92,246,.45);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);padding:5px;z-index:6}.design-pick .upscale-menu button{border:0;border-radius:calc(var(--radius) - 1px);background:transparent;color:var(--ink);cursor:pointer;font-family:var(--font-mono);font-size:10px;letter-spacing:.04em;text-align:left;text-transform:uppercase;padding:8px 9px}.design-pick .upscale-menu button:hover{background:#8b5cf61f;color:#5b21b6}.design-pick .regen-btn{position:absolute;top:10px;right:10px;width:36px;height:36px;border-radius:50%;border:0;background:#ffffffd9;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;cursor:pointer;color:var(--ink-soft);transition:color .14s,background .14s,transform .1s;z-index:2}[data-theme=galeria] .design-pick .regen-btn{background:#221c16d9;color:var(--text-dim)}.design-pick .regen-btn:hover{background:var(--surface);color:var(--accent);transform:rotate(-90deg)}[data-theme=taller] .design-pick .regen-btn:hover{color:var(--ink)}[data-theme=galeria] .design-pick .fav-btn{background:#221c16d9;color:var(--text-dim)}.design-pick .fav-btn:hover{background:var(--surface);color:var(--accent);transform:scale(1.08)}.design-pick .fav-btn.on{color:var(--accent)}[data-theme=taller] .design-pick .fav-btn.on{color:var(--ink)}.design-pick .fav-btn:hover.on{transform:scale(1.12)}.design-pick .gen-trofeo-btn{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:5px 10px;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);cursor:pointer;transition:background .12s,color .12s}.design-pick .gen-trofeo-btn:hover{background:var(--accent);color:var(--bg);border-color:var(--accent)}.design-pick .gen-trofeo-btn:disabled{opacity:.45;cursor:not-allowed}[data-theme=taller] .design-pick .gen-trofeo-btn:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}.design-pick .hint-sm{font-family:var(--font-mono);font-size:9.5px;color:var(--accent);letter-spacing:.1em;text-transform:uppercase}[data-theme=taller] .design-pick .hint-sm{color:var(--ink)}.views-section{display:flex;flex-direction:column;gap:16px}.views-section+.views-section{margin-top:36px}.views-section .sec-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:12px;border-bottom:1px solid var(--line)}.views-section .sel-piece{display:flex;align-items:center;gap:14px}.views-section .sel-piece .thumb{width:56px;height:56px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden;display:grid;place-items:center}.views-section .sel-piece .thumb img{width:100%;height:100%;object-fit:cover;object-position:center bottom}.views-section .sel-piece .info{display:flex;flex-direction:column;gap:2px}.views-section .sel-piece .ttl{font-family:var(--font-display);font-size:22px;letter-spacing:-.005em;color:var(--ink)}[data-theme=taller] .views-section .sel-piece .ttl{font-family:var(--font-body);font-size:15px;font-weight:600}.views-section .sel-piece .id{font-family:var(--font-mono);font-size:10.5px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.view-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.view-opt{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:14px 16px;cursor:pointer;display:flex;align-items:flex-start;gap:12px;transition:border-color .14s,background .14s;text-align:left;width:100%}.view-opt:hover{border-color:var(--line-strong)}.view-opt.on{border-color:var(--accent);background:var(--accent-soft)}[data-theme=taller] .view-opt.on{border-color:var(--ink);background:var(--bg-deep)}[data-theme=galeria] .view-opt.on{border-color:var(--accent);background:var(--surface-2)}.view-flow-table{display:grid;grid-template-columns:minmax(0,240px) 48px minmax(0,1fr);gap:18px;align-items:start}.view-column-title{font-family:var(--font-mono);font-size:10.5px;color:var(--muted);letter-spacing:.12em;text-transform:uppercase}.view-column-title-arrow{visibility:hidden}.view-flow-arrow{align-self:center;display:grid;place-items:center;color:var(--muted)}.view-flow-arrow svg{width:42px;height:22px;display:block}.view-generated-card,.view-generated-empty,.view-add-card,.view-upload-card{width:100%;max-width:240px;border-radius:var(--radius-lg)}.view-generated-card{border:1px solid var(--line);background:var(--surface);overflow:hidden;display:flex;flex-direction:column;cursor:pointer;text-align:left;transition:border-color .14s,background .14s,transform .14s}.view-row-card{position:relative;cursor:default}.view-generated-card:hover{border-color:var(--line-strong);transform:translateY(-1px)}.view-generated-card.current{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}[data-theme=taller] .view-generated-card.current{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}[data-theme=galeria] .view-generated-card.current{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.view-generated-card .canvas{aspect-ratio:3 / 2;background:var(--surface-2);display:grid;place-items:center;overflow:hidden;position:relative}.view-generated-card .canvas img{width:100%;height:100%;object-fit:contain;display:block}.view-generated-card.pending .canvas{background:linear-gradient(115deg,transparent 30%,var(--surface-3) 50%,transparent 70%) 0 0 / 240% 100%,var(--surface-2);animation:shimmer 4.2s linear infinite}.view-pending-copy{font-family:var(--font-mono);font-size:10.5px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.view-generated-card .foot{border-top:1px solid var(--line);padding:10px 12px}.view-foot-selectable{cursor:pointer;transition:background .14s}.view-foot-selectable:hover{background:var(--accent-soft)}.view-modification-label-input{width:100%;border:0;outline:0;background:transparent;font-family:var(--font-mono);font-size:10.5px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;padding:0}.view-modification-label-input::selection{background:color-mix(in oklab,var(--accent) 28%,transparent)}.view-picker-head .ttl{font-family:var(--font-display);font-size:18px;letter-spacing:-.01em;color:var(--ink)}[data-theme=taller] .view-picker-head .ttl{font-family:var(--font-body);font-size:14px;font-weight:600}.view-generated-card .foot .id,.view-picker-head .id{font-family:var(--font-mono);font-size:10.5px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.view-generated-empty{width:min(100%,240px);border:1px dashed var(--line);border-radius:var(--radius-lg);background:var(--bg-deep);padding:18px;color:var(--muted)}.view-add-card{aspect-ratio:3 / 2;border:1px dashed var(--line);background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:border-color .14s,background .14s}.view-add-card:hover,.view-add-card.open{border-color:var(--line-strong);background:color-mix(in srgb,var(--surface) 50%,transparent)}[data-theme=taller] .view-add-card:hover,[data-theme=taller] .view-add-card.open{border-color:var(--ink-soft)}.view-add-card .label{font-family:var(--font-mono);font-size:10.5px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.view-modification-track{width:100%;display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start}.view-upload-card{aspect-ratio:3 / 2;border:1px dashed var(--line);background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:border-color .14s,background .14s}.view-upload-card:hover{border-color:var(--line-strong);background:color-mix(in srgb,var(--surface) 50%,transparent)}[data-theme=taller] .view-upload-card:hover{border-color:var(--ink-soft)}.view-upload-card .label{font-family:var(--font-mono);font-size:10.5px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.view-action-icon{width:22px;height:22px;color:var(--muted);transition:color .14s}.view-add-card:hover .view-action-icon,.view-upload-card:hover .view-action-icon{color:var(--ink-soft)}.view-modification-card{position:relative;width:min(100%,240px);cursor:default}.view-row-remove,.view-card-edit-btn,.view-card-download-btn{position:absolute;width:36px;height:36px;border-radius:50%;border:0;background:#ffffffd9;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;cursor:pointer;color:var(--ink-soft);transition:color .14s,background .14s,transform .1s;z-index:2}.view-row-remove:disabled,.view-card-edit-btn:disabled,.view-card-download-btn:disabled,.view-modification-remove:disabled{opacity:.5;cursor:not-allowed;transform:none}.view-row-remove:disabled:hover,.view-card-edit-btn:disabled:hover,.view-card-download-btn:disabled:hover,.view-modification-remove:disabled:hover{background:inherit;color:inherit;border-color:inherit}[data-theme=galeria] .view-row-remove,[data-theme=galeria] .view-card-edit-btn,[data-theme=galeria] .view-card-download-btn{background:#221c16d9;color:var(--text-dim)}.view-row-remove{top:10px;right:10px;color:#c0392b}.view-card-edit-btn:hover,.view-card-download-btn:hover{background:var(--surface);color:var(--accent);transform:scale(1.08)}[data-theme=taller] .view-row-remove:hover{color:#e74c3c}[data-theme=taller] .view-card-edit-btn:hover,[data-theme=taller] .view-card-download-btn:hover{color:var(--ink)}.view-row-remove:hover{background:var(--surface);color:#e74c3c;transform:scale(1.08)}.view-card-download-btn{left:10px;top:10px}.view-card-edit-btn{right:10px;bottom:52px}.view-modification-remove{position:absolute;top:8px;right:8px;width:28px;height:28px;border:1px solid color-mix(in oklab,var(--line-strong) 70%,transparent);border-radius:999px;background:color-mix(in oklab,var(--surface) 90%,white);color:#c0392b;display:grid;place-items:center;cursor:pointer;line-height:1;box-shadow:0 10px 24px #00000014}.view-modification-remove:hover{color:#e74c3c;border-color:var(--line-strong)}.view-picker-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;padding:clamp(12px,2vw,24px);display:grid;place-items:center;background:radial-gradient(circle at top,rgba(255,255,255,.08),transparent 28%),#12100dc7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.view-picker-modal{width:min(1040px,100%);max-height:min(88vh,900px);overflow:auto;border:1px solid color-mix(in oklab,var(--line-strong) 52%,transparent);border-radius:24px;background:linear-gradient(180deg,color-mix(in oklab,var(--surface) 94%,white) 0%,var(--surface) 100%);box-shadow:0 28px 90px #00000057,inset 0 1px #ffffff73;padding:22px;display:flex;flex-direction:column;gap:18px}.view-picker-head{display:flex;align-items:center;justify-content:flex-end;gap:16px}.view-reference-section{display:flex;flex-direction:column;gap:12px}.view-reference-grid{display:flex;flex-wrap:wrap;gap:12px}.view-reference-card{width:100%;max-width:220px}.view-picker-close{border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink-soft);padding:8px 12px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.view-picker-close:hover{border-color:var(--line-strong);color:var(--ink)}.view-picker-actions{display:flex;justify-content:flex-end;padding-top:4px}@media (max-width: 760px){.view-flow-table{grid-template-columns:1fr;gap:14px}.view-generated-card,.view-add-card,.view-upload-card,.view-generated-empty,.view-modification-track,.view-modification-card{width:100%;max-width:none}.view-modification-track{flex-direction:column}.view-column-title-arrow,.view-flow-arrow{transform:rotate(90deg);justify-self:center}.view-picker-modal{padding:16px;border-radius:18px}.view-picker-head{flex-direction:row;justify-content:flex-end}.view-reference-card{max-width:none}}.output-piece{display:flex;flex-direction:column;gap:20px}.output-piece+.output-piece{margin-top:40px}.output-piece .piece-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:12px;border-bottom:1px solid var(--line)}.output-piece .piece-head h3{font-family:var(--font-display);font-size:28px;margin:0;letter-spacing:-.005em;color:var(--ink);font-weight:var(--display-weight)}[data-theme=papel] .output-piece .piece-head h3 em,[data-theme=galeria] .output-piece .piece-head h3 em{font-style:italic;color:var(--accent);font-weight:300}[data-theme=taller] .output-piece .piece-head h3{font-family:var(--font-body);font-size:18px;font-weight:600}.view-outputs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.view-outputs.cols-3{grid-template-columns:repeat(3,1fr)}@media (max-width: 1100px){.view-outputs,.view-outputs.cols-3{grid-template-columns:repeat(2,1fr)}}.out-tile{position:relative;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-deep);display:flex;flex-direction:column}.out-tile .canvas{width:100%;aspect-ratio:1 / 1;background:var(--surface);display:grid;place-items:center;border-bottom:1px solid var(--line);overflow:hidden;min-width:0}.out-tile .canvas img{max-width:100%;max-height:100%;object-fit:contain}.out-tile.pending .canvas{background:linear-gradient(115deg,transparent 30%,var(--surface-3) 50%,transparent 70%) 0 0 / 240% 100%,var(--surface);animation:shimmer 4.2s linear infinite}.out-tile .lbl{padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-family:var(--font-mono);font-size:10px;color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;margin-top:auto}.out-tile .lbl .meta{color:var(--muted)}.out-tile .lbl .download-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 12px;border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);text-decoration:none;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;transition:background .12s,border-color .12s,color .12s;white-space:nowrap;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.out-tile .lbl .download-btn:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}[data-theme=papel] .out-tile .lbl .download-btn:hover{background:var(--accent);border-color:var(--accent);color:var(--bg)}[data-theme=galeria] .out-tile .lbl .download-btn:hover{background:var(--accent);border-color:var(--accent);color:var(--bg-deep)}.out-tile .lbl .download-btn svg{width:13px;height:13px;flex-shrink:0}.out-tile .redo-btn{position:absolute;top:10px;right:10px;width:36px;height:36px;border-radius:50%;border:0;background:#ffffffd9;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;cursor:pointer;color:var(--ink-soft);transition:color .14s,background .14s,transform .1s;z-index:2}[data-theme=galeria] .out-tile .redo-btn{background:#221c16d9;color:var(--text-dim)}.out-tile .redo-btn:hover:not(:disabled):not(.redoing){background:var(--surface);color:var(--accent);transform:rotate(-90deg)}[data-theme=taller] .out-tile .redo-btn:hover:not(:disabled):not(.redoing){color:var(--ink)}.out-tile .redo-btn:disabled{opacity:.4;cursor:not-allowed}.out-tile .redo-btn.redoing{animation:spin 1.1s linear infinite;color:var(--accent);cursor:progress;opacity:1}.step-screen-head{margin-bottom:36px;display:flex;align-items:flex-end;justify-content:space-between;gap:32px;padding-bottom:22px;border-bottom:1px solid var(--line)}.step-screen-head.with-action{align-items:flex-start}.step-screen-head .titleblock{flex:1;display:flex;flex-direction:column;gap:10px}.step-screen-head .head-action{flex-shrink:0;display:flex;align-items:flex-start;justify-content:flex-end;padding-top:28px}.step-screen-head h1{font-family:var(--font-display);font-weight:var(--display-weight);font-size:52px;line-height:1.08;margin:0;letter-spacing:var(--display-letter);color:var(--ink);text-wrap:balance}[data-theme=papel] .step-screen-head h1 em,[data-theme=galeria] .step-screen-head h1 em{font-style:italic;color:var(--accent);font-weight:300}[data-theme=taller] .step-screen-head h1{font-size:36px;font-weight:600}.step-screen-head .lede{font-family:var(--font-body);font-size:14.5px;color:var(--text-dim);max-width:64ch;margin:0;line-height:1.6}@media (max-width: 760px){.step-screen-head.with-action{flex-direction:column;gap:16px}.step-screen-head .head-action{width:100%;padding-top:0;justify-content:flex-start}.step-screen-head .head-action .btn{width:100%}}.step-actions{display:flex;align-items:center;gap:12px;padding-top:28px;margin-top:36px;border-top:1px solid var(--line);flex-wrap:wrap}.step-actions .spacer{margin-left:auto}.screen-head{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:32px;padding-bottom:22px;border-bottom:1px solid var(--line)}.screen-head .titleblock{flex:1;display:flex;flex-direction:column;gap:10px}.screen-head .eyebrow{font-family:var(--font-mono);font-size:11px;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;display:flex;gap:14px;align-items:center}.screen-head .eyebrow .num{color:var(--accent)}.screen-head h1{font-family:var(--font-display);font-weight:var(--display-weight);font-size:56px;line-height:1.08;margin:0;letter-spacing:var(--display-letter);color:var(--ink);text-wrap:balance}[data-theme=galeria] .screen-head h1{line-height:1.04}.screen-head h1 em{line-height:1}[data-theme=papel] .screen-head h1 em,[data-theme=galeria] .screen-head h1 em{font-style:italic;color:var(--accent);font-weight:300}[data-theme=taller] .screen-head h1{font-size:38px;font-weight:600}.screen-head .lede{font-family:var(--font-body);font-size:15px;color:var(--text-dim);max-width:56ch;margin:0;line-height:1.55}.screen-head .side{display:flex;flex-direction:column;gap:6px;align-items:flex-end;font-family:var(--font-mono);font-size:11px;color:var(--muted);text-align:right}.screen-head .side .row{display:flex;gap:10px}.screen-head .side .k{opacity:.6}.screen-head .side .v{color:var(--ink)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 18px;border-radius:var(--radius);font-family:var(--font-body);font-size:13.5px;font-weight:500;cursor:pointer;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);transition:background .12s,border-color .12s,transform 80ms;white-space:nowrap}.btn:hover{background:var(--surface-2)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}.btn-primary:hover{background:var(--ink-soft);border-color:var(--ink-soft)}[data-theme=papel] .btn-primary{background:var(--accent);color:#fcf8f1;border-color:var(--accent)}[data-theme=papel] .btn-primary:hover{background:var(--accent-ink);border-color:var(--accent-ink)}[data-theme=galeria] .btn-primary{background:var(--accent);color:#1e1916;border-color:var(--accent)}[data-theme=galeria] .btn-primary:hover{background:#ffc25b;background:oklch(.85 .14 78)}.btn-orange{background:var(--accent);border-color:var(--accent);color:var(--bg)}.btn-orange:hover{background:var(--accent-ink);border-color:var(--accent-ink);color:var(--bg)}[data-theme=galeria] .btn-orange{color:var(--bg-deep)}[data-theme=galeria] .btn-orange:hover{background:#ffc25b;background:oklch(.85 .14 78);border-color:#ffc25b;border-color:oklch(.85 .14 78);color:var(--bg-deep)}.btn-ghost{background:transparent;border-color:var(--line);color:var(--ink-soft)}.btn-ghost:hover{background:var(--surface);color:var(--ink)}.btn-small{padding:7px 12px;font-size:12px}.btn-icon{width:32px;height:32px;padding:0;border-radius:var(--radius)}.input,.textarea,.select{width:100%;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;color:var(--ink);font-family:var(--font-body);font-size:14px;outline:none;transition:border-color .12s,background .12s}.input:focus,.textarea:focus,.select:focus{border-color:var(--ink);background:var(--surface)}.textarea{resize:vertical;min-height:64px;line-height:1.5}.textarea-large{min-height:110px}.label{display:block;font-family:var(--font-mono);font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:var(--label-tracking);margin-bottom:6px}.field{display:flex;flex-direction:column}.fieldgroup{display:grid;gap:16px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px}.prompt-drawer{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden}.prompt-drawer summary{list-style:none;cursor:pointer;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;font-family:var(--font-mono);font-size:11px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.1em;background:var(--surface);border-bottom:1px solid transparent;transition:border-color .12s}.prompt-drawer[open] summary{border-bottom-color:var(--line)}.prompt-drawer summary::-webkit-details-marker{display:none}.prompt-drawer summary .chev{font-family:var(--font-mono);font-size:14px;color:var(--muted);transition:transform .2s}.prompt-drawer[open] summary .chev{transform:rotate(90deg)}.prompt-drawer .pad{padding:18px;display:flex;flex-direction:column;gap:12px}.prompt-drawer .prompt-text{font-family:var(--font-mono);font-size:11.5px;background:var(--bg-deep);border:1px solid var(--line);border-radius:var(--radius);padding:12px;color:var(--ink-soft);white-space:pre-wrap;min-height:100px;line-height:1.6;width:100%}.prompt-drawer .actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.prompt-refs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.prompt-ref-tile{position:relative;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);overflow:hidden;aspect-ratio:1}.prompt-ref-tile img{width:100%;height:100%;object-fit:cover;display:block}.prompt-ref-tile .name{position:absolute;bottom:0;left:0;right:0;padding:4px 8px;background:linear-gradient(transparent,#0009);color:#fff;font-family:var(--font-mono);font-size:9px;letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prompt-ref-tile .del{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;border:0;background:#0009;color:#fff;font-size:13px;cursor:pointer;display:grid;place-items:center}.prompt-ref-tile .del:hover{background:var(--danger)}.prompt-ref-add{border:1px dashed var(--line-strong);border-radius:var(--radius);background:transparent;cursor:pointer;display:grid;place-items:center;aspect-ratio:1;color:var(--muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase}.prompt-ref-add:hover{border-color:var(--ink-soft);color:var(--ink)}.pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line);background:var(--surface);color:var(--muted)}.pill.live{background:var(--surface);color:var(--success)}.pill.live:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--success);animation:pulse 1.4s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.pill.warn{color:var(--warn);border-color:var(--warn);opacity:.9}.pill.danger{color:var(--danger);border-color:var(--danger)}.pill.accent{color:var(--accent);border-color:var(--accent)}.banner{display:flex;gap:14px;align-items:center;padding:14px 18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin-bottom:24px}.banner.error{border-color:var(--danger)}.banner .icon{width:24px;height:24px;display:grid;place-items:center;font-family:var(--font-mono);font-size:12px;color:var(--accent)}.banner.error .icon{color:var(--danger)}.banner .body{flex:1;font-size:13.5px;color:var(--ink-soft)}.banner .body strong{color:var(--ink);font-weight:500}.slots-form{display:flex;flex-direction:column;gap:22px}.slots-short{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.slot-pill{font-family:var(--font-mono);font-size:10px;color:var(--accent);background:var(--accent-soft);padding:1px 6px;border-radius:3px;margin-left:6px;letter-spacing:.04em}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid var(--line);border-radius:999px;font-family:var(--font-mono);font-size:11px;color:var(--ink-soft);background:var(--surface)}.chip button{background:transparent;border:0;color:var(--muted);cursor:pointer;font-size:14px;line-height:1;padding:0}.chip button:hover{color:var(--ink)}.history-list{display:flex;flex-direction:column;gap:32px}.history-group{display:grid;grid-template-columns:180px 1fr;gap:24px;align-items:start}.history-group .stamp{position:sticky;top:24px;display:flex;flex-direction:column;gap:4px}.history-group .stamp .date{font-family:var(--font-display);font-size:18px;color:var(--ink)}[data-theme=taller] .history-group .stamp .date{font-family:var(--font-mono);font-size:13px;letter-spacing:.06em}.history-group .stamp .day{font-family:var(--font-mono);font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.14em}.history-entry{display:flex;flex-direction:column;gap:10px;padding-bottom:22px;border-bottom:1px solid var(--line)}.history-entry:last-child{border-bottom:0}.history-entry .row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.history-entry .theme{font-family:var(--font-display);font-size:22px;color:var(--ink);letter-spacing:-.005em}[data-theme=papel] .history-entry .theme em,[data-theme=galeria] .history-entry .theme em{font-style:italic;color:var(--accent)}.history-entry .desc{font-size:13.5px;color:var(--text-dim);font-family:var(--font-body)}.history-entry .thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.history-entry .thumb{aspect-ratio:1;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);overflow:hidden;display:grid;place-items:center}.fav-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.fav-card{display:flex;flex-direction:column;gap:10px}.fav-card .canvas{aspect-ratio:4/5;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden;display:grid;place-items:center}.fav-card .body{display:flex;flex-direction:column;gap:4px}.fav-card .ttl{font-family:var(--font-display);font-size:16px;color:var(--ink);letter-spacing:-.005em}[data-theme=taller] .fav-card .ttl{font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.06em}.fav-card .sub{font-family:var(--font-mono);font-size:10px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.medal-ph{width:100%;height:100%;display:block}.seg{display:inline-flex;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);padding:3px;gap:2px}.seg button{background:transparent;border:0;padding:6px 12px;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);cursor:pointer;border-radius:calc(var(--radius) - 1px)}.seg button:hover{color:var(--ink)}.seg button.on{background:var(--surface);color:var(--ink);box-shadow:0 1px #0000000a}.hint{font-family:var(--font-mono);font-size:11px;color:var(--muted);letter-spacing:.04em}.lightbox-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;display:grid;place-items:center;z-index:999;cursor:zoom-out}.lightbox-stage{max-width:92vw;max-height:92vh;overflow:auto;cursor:default;-webkit-user-select:none;user-select:none}.lightbox-backdrop img{display:block;max-width:92vw;max-height:92vh;object-fit:contain;border:1px solid var(--line);background:var(--surface);transition:transform .12s ease-out;will-change:transform}.lightbox-actions{position:fixed;top:16px;right:16px;display:flex;gap:8px;z-index:1001}.lightbox-actions button{background:var(--surface);color:var(--text, #111);border:1px solid var(--line);padding:8px 14px;border-radius:6px;cursor:pointer;font-size:13px}.lightbox-actions button:hover{background:var(--surface-hover, #f3f3f3)}.mask-editor-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;padding:clamp(12px,2vw,24px);display:grid;place-items:center;overflow:auto;background:radial-gradient(circle at top,rgba(255,255,255,.08),transparent 28%),#12100dd1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mask-editor-shell{width:min(1480px,100%);height:min(calc(100dvh - 32px),980px);display:flex;flex-direction:column;overflow:hidden;border:1px solid color-mix(in oklab,var(--line-strong) 52%,transparent);border-radius:24px;background:linear-gradient(180deg,color-mix(in oklab,var(--surface) 94%,white) 0%,var(--surface) 100%);box-shadow:0 28px 90px #00000057,inset 0 1px #ffffff73;color:var(--ink)}.mask-editor-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:24px 28px 22px;border-bottom:1px solid color-mix(in oklab,var(--line) 78%,transparent);background:linear-gradient(180deg,color-mix(in oklab,var(--surface-2) 52%,white),transparent),radial-gradient(circle at top left,rgba(255,255,255,.66),transparent 42%)}.mask-editor-titleblock{max-width:52rem}.mask-editor-kicker{display:inline-block;margin-bottom:.75rem;font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.18em;color:var(--muted)}.mask-editor-titleblock h2{margin:0;font-family:var(--font-display);font-size:clamp(2rem,3vw,3rem);line-height:.95;letter-spacing:var(--display-letter, -.02em);font-weight:var(--display-weight, 500)}.mask-editor-titleblock p{margin:.9rem 0 0;max-width:44rem;color:var(--ink-soft);line-height:1.65;font-size:.98rem}.mask-editor-header-side{display:flex;align-items:flex-end;gap:12px;margin-left:auto}.mask-editor-shortcuts{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;max-width:18rem;font-size:.75rem;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.mask-editor-close,.mask-editor-tools button,.mask-editor-modes button,.mask-editor-logo-header button,.mask-editor-actions button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid color-mix(in oklab,var(--line-strong) 70%,transparent);background:color-mix(in oklab,var(--surface) 90%,white);color:inherit;border-radius:12px;cursor:pointer;transition:transform .12s ease,border-color .12s ease,background-color .12s ease,box-shadow .12s ease}.mask-editor-close:hover,.mask-editor-tools button:hover,.mask-editor-modes button:hover,.mask-editor-logo-header button:hover,.mask-editor-actions button:hover{transform:translateY(-1px);border-color:color-mix(in oklab,var(--accent) 44%,var(--line-strong));box-shadow:0 10px 20px #0000000f}.mask-editor-close{padding:11px 16px;white-space:nowrap}.mask-editor-close:disabled,.mask-editor-tools button:disabled,.mask-editor-modes button:disabled,.mask-editor-logo-header button:disabled,.mask-editor-actions button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.mask-editor-main{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 360px}.mask-editor-workspace{min-width:0;min-height:0;padding:18px;display:flex;flex-direction:column;gap:14px;background:radial-gradient(circle at top left,rgba(255,255,255,.4),transparent 26%),linear-gradient(180deg,color-mix(in oklab,var(--bg-deep) 78%,white),color-mix(in oklab,var(--surface-2) 74%,var(--bg)))}.mask-editor-workspace-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.mask-editor-status-pill,.mask-editor-stage-hints span{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;border:1px solid color-mix(in oklab,var(--line) 80%,transparent);background:#ffffffb8;font-size:.78rem;color:var(--ink-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mask-editor-status-dot{width:8px;height:8px;border-radius:999px;background:var(--accent);box-shadow:0 0 0 4px color-mix(in oklab,var(--accent) 18%,transparent)}.mask-editor-stage-hints{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.mask-editor-stage{flex:1 1 auto;min-height:420px;display:grid;place-items:center;padding:6px;border:1px dashed color-mix(in oklab,var(--line-strong) 56%,transparent);border-radius:22px;background:linear-gradient(135deg,#ffffff9e,#ffffff2e),repeating-linear-gradient(45deg,#7c6e5b12 0,#7c6e5b12 18px,#ffffff0f 18px,#ffffff0f 36px)}.mask-editor-canvas-wrap{position:relative;overflow:hidden;border-radius:22px;border:1px solid color-mix(in oklab,var(--line-strong) 70%,transparent);background:linear-gradient(180deg,#ffffff24,#00000014),color-mix(in oklab,var(--surface-3) 62%,#202020);box-shadow:0 28px 42px #1d150d38,0 8px 20px #0000002e}.mask-editor-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none}.mask-editor-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;cursor:crosshair;opacity:.56;touch-action:none}.mask-editor-canvas.passive{pointer-events:none;opacity:0}.mask-editor-logo-placement{position:absolute;border:1.5px solid rgba(255,255,255,.92);box-shadow:0 0 0 1px #00000038,0 14px 30px #0000002e;background:#ffffff0f;cursor:move;overflow:visible}.mask-editor-logo-placement img{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none;-webkit-user-select:none;user-select:none}.mask-editor-logo-placement-label{position:absolute;left:8px;top:8px;padding:4px 8px;border-radius:999px;background:#100e0cb8;color:#ffffffeb;font-size:.68rem;letter-spacing:.02em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none}.mask-editor-logo-placement-handle{position:absolute;right:-9px;bottom:-9px;width:18px;height:18px;border-radius:999px;border:2px solid rgba(255,255,255,.96);background:var(--accent);box-shadow:0 6px 12px #00000029;cursor:nwse-resize}.mask-editor-logo-placement.inactive{border:1.5px dashed rgba(255,255,255,.45);box-shadow:0 4px 12px #0000001a;background:transparent;cursor:pointer}.mask-editor-logo-placement.selected{border:2px solid var(--accent);box-shadow:0 0 0 1px #00000038,0 14px 30px #0000002e,0 0 0 4px color-mix(in oklab,var(--accent) 25%,transparent);background:#ffffff14}.mask-editor-logo-remove-btn{position:absolute;top:-10px;right:-10px;width:22px;height:22px;border-radius:50%;background:#f43f5e;border:2px solid #ffffff;color:#fff;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 8px #00000029;transition:transform .2s,background .2s;padding:0;line-height:1;z-index:10}.mask-editor-logo-remove-btn:hover{background:#e11d48;transform:scale(1.1)}.mask-editor-logo-remove-btn:active{transform:scale(.9)}.mask-editor-placed-list-wrap{margin-top:16px;padding-top:16px;border-top:1px solid var(--surface-3, rgba(255, 255, 255, .08))}.mask-editor-placed-list{display:flex;flex-direction:column;gap:8px;margin-top:8px}.mask-editor-placed-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;background:var(--surface-2, rgba(255, 255, 255, .04));border:1px solid transparent;cursor:pointer;transition:all .2s ease}.mask-editor-placed-item:hover{background:var(--surface-3, rgba(255, 255, 255, .08))}.mask-editor-placed-item.selected{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 8%,var(--surface-2, rgba(255, 255, 255, .04)))}.mask-editor-placed-item img{width:32px;height:32px;object-fit:contain;border-radius:4px;background:#0003}.mask-editor-placed-name{flex:1;font-size:.78rem;color:var(--text-muted, rgba(255, 255, 255, .7));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mask-editor-placed-item.selected .mask-editor-placed-name{color:#fff;font-weight:500}.mask-editor-placed-remove{background:none;border:none;color:var(--text-muted, rgba(255, 255, 255, .5));font-size:1.1rem;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;transition:color .2s}.mask-editor-placed-remove:hover{color:#f43f5e}.mask-editor-canvas-caption{position:absolute;left:14px;bottom:14px;display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border-radius:999px;background:#100e0cb8;color:#ffffffeb;font-size:.76rem;letter-spacing:.02em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mask-editor-canvas-caption-swatch{width:14px;height:14px;border-radius:999px;background:#ff3c3ce6;box-shadow:0 0 0 3px #ff3c3c2e}.mask-editor-loading,.mask-editor-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#fff;background:#00000073;font-family:var(--font-mono, monospace);font-size:14px;letter-spacing:.04em;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.mask-editor-footnote{font-size:.88rem;color:var(--ink-soft);padding-inline:4px}.mask-editor-panel{min-height:0;padding:18px;display:flex;flex-direction:column;gap:14px;overflow:auto;background:linear-gradient(180deg,color-mix(in oklab,var(--surface-2) 64%,white),color-mix(in oklab,var(--surface) 92%,white));border-left:1px solid color-mix(in oklab,var(--line) 78%,transparent)}.mask-editor-card{padding:16px;border-radius:18px;border:1px solid color-mix(in oklab,var(--line) 82%,transparent);background:linear-gradient(180deg,#ffffffbd,#ffffff8f);box-shadow:0 16px 30px #3b28130d}.mask-editor-card-head{margin-bottom:12px}.mask-editor-card-kicker{display:inline-block;margin-bottom:.4rem;font-size:.7rem;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.mask-editor-card-head h3{margin:0;font-size:1.02rem}.mask-editor-card-head p{margin:.5rem 0 0;line-height:1.55;font-size:.9rem;color:var(--ink-soft)}.mask-editor-brush{display:flex;flex-direction:column;gap:10px;margin-top:12px}.mask-editor-placement-help{display:flex;flex-direction:column;gap:8px;color:var(--ink-soft);font-size:.9rem;line-height:1.55}.mask-editor-brush-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.88rem;color:var(--ink-soft)}.mask-editor-brush input[type=range]{width:100%;accent-color:var(--accent)}.mask-editor-brush-val{font-family:var(--font-mono, monospace);font-size:.82rem}.mask-editor-tools,.mask-editor-modes{display:grid;gap:8px}.mask-editor-tools{grid-template-columns:repeat(2,minmax(0,1fr))}.mask-editor-tools button,.mask-editor-modes button{padding:11px 12px;text-align:left;font-size:.9rem;line-height:1.3}.mask-editor-tools button.active,.mask-editor-modes button.active,.mask-editor-actions button.primary{background:var(--ink);color:var(--surface);border-color:var(--ink);box-shadow:0 12px 24px #00000024}.mask-editor-prompt{width:100%;min-height:112px;font:inherit;padding:12px 14px;border:1px solid color-mix(in oklab,var(--line-strong) 62%,transparent);border-radius:14px;background:#ffffffc7;color:inherit;line-height:1.55}.mask-editor-prompt:focus{outline:none;border-color:color-mix(in oklab,var(--accent) 55%,var(--line-strong));box-shadow:0 0 0 4px color-mix(in oklab,var(--accent) 18%,transparent)}.mask-editor-clarify-list{display:flex;flex-direction:column;gap:14px}.mask-editor-clarify-item{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:16px;border:1px solid color-mix(in oklab,var(--line) 82%,transparent);background:#ffffff73}.mask-editor-clarify-head{display:flex;flex-direction:column;gap:4px}.mask-editor-clarify-head strong{font-size:.94rem;line-height:1.45}.mask-editor-clarify-head span{font-size:.83rem;line-height:1.45;color:var(--ink-soft)}.mask-editor-clarify-options{display:grid;gap:8px}.mask-editor-clarify-option{display:flex;flex-direction:column;gap:4px;width:100%;padding:12px 13px;text-align:left;border-radius:14px;border:1px solid color-mix(in oklab,var(--line-strong) 58%,transparent);background:#ffffffd1;color:inherit}.mask-editor-clarify-option strong{font-size:.9rem}.mask-editor-clarify-option span{font-size:.82rem;line-height:1.45;color:var(--ink-soft)}.mask-editor-clarify-option.active{border-color:color-mix(in oklab,var(--accent) 70%,var(--line-strong));box-shadow:0 0 0 3px color-mix(in oklab,var(--accent) 14%,transparent);background:color-mix(in oklab,var(--accent-soft) 58%,white)}.mask-editor-clarify-textarea{min-height:78px}.mask-editor-clarify-actions{margin-top:14px}.mask-editor-error{margin-top:10px;color:var(--danger);font-size:.86rem;line-height:1.5}.mask-editor-logo-header{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.mask-editor-logo-header button{padding:10px 12px;font-size:.86rem}.mask-editor-logo-saved{display:grid;grid-template-columns:repeat(auto-fill,minmax(62px,1fr));gap:8px}.mask-editor-logo-thumb{aspect-ratio:1;border:1px solid color-mix(in oklab,var(--line-strong) 65%,transparent);border-radius:14px;padding:6px;overflow:hidden;background:linear-gradient(180deg,#fffc,#f4efe6d1)}.mask-editor-logo-thumb img{width:100%;height:100%;object-fit:contain;display:block}.mask-editor-logo-thumb.active{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab,var(--accent) 16%,transparent)}.mask-editor-logo-thumb:disabled{opacity:.5;cursor:not-allowed}.mask-editor-logo-empty{padding:14px;border-radius:14px;border:1px dashed color-mix(in oklab,var(--line-strong) 58%,transparent);background:#ffffff6b;color:var(--ink-soft);font-size:.88rem;line-height:1.5}.mask-editor-logo-preview{display:flex;align-items:center;gap:12px;margin-top:12px;padding:10px;border-radius:16px;border:1px solid color-mix(in oklab,var(--line) 80%,transparent);background:#ffffff80;font-size:.86rem;color:var(--ink-soft)}.mask-editor-logo-preview div{display:flex;flex-direction:column;gap:3px;min-width:0}.mask-editor-logo-preview strong,.mask-editor-logo-preview span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mask-editor-logo-preview img{width:68px;height:68px;object-fit:contain;border:1px solid color-mix(in oklab,var(--line) 82%,transparent);border-radius:12px;background:#ffffffe0}.mask-editor-actions{margin-top:auto;display:flex;justify-content:flex-end;gap:10px;padding-top:4px}.mask-editor-actions button{padding:12px 16px;font-size:.92rem}@media (max-width: 1180px){.mask-editor-shell{height:auto;min-height:calc(100dvh - 24px)}.mask-editor-main{grid-template-columns:1fr}.mask-editor-stage{min-height:360px}.mask-editor-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start}.mask-editor-actions{grid-column:1 / -1}}@media (max-width: 760px){.mask-editor-backdrop{padding:0}.mask-editor-shell{width:100%;min-height:100dvh;border-radius:0;border:0}.mask-editor-header{padding:18px 18px 16px;flex-direction:column}.mask-editor-header-side{width:100%;align-items:center;justify-content:space-between}.mask-editor-main{min-height:0}.mask-editor-workspace,.mask-editor-panel{padding:14px}.mask-editor-stage{min-height:280px}.mask-editor-panel{grid-template-columns:1fr}.mask-editor-tools{grid-template-columns:1fr 1fr}.mask-editor-actions{flex-direction:column-reverse}.mask-editor-actions button{width:100%}}button,input,textarea,select{font:inherit;color:inherit}*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:999px;border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:var(--ink-soft);background-clip:padding-box}a{color:var(--accent)}a:hover{filter:brightness(1.08)}code{background:var(--surface-2);padding:1px 6px;border-radius:4px;font-size:.9em;font-family:var(--font-mono)}
