*,*:before,*:after{box-sizing:border-box}*{margin:0}html,body{min-height:100%}html{min-width:320px;overflow-x:hidden}img,svg{display:block}button,input,select,textarea{font:inherit;color:inherit}:root{color-scheme:light;--ui-canvas: #f2efe8;--ui-surface: #fffdf9;--ui-ink: #171717;--ui-muted: #6d675e;--ui-line: #d8d1c5;--ui-accent: #171717;--ui-pop: #635bff;--ui-teal: #16866e;--ui-focus: #4338ca;--ui-control-radius: 9px;--ui-dialog-radius: 14px;--ui-control-shadow: 0 10px 28px -24px rgba(23, 23, 23, .5);--ui-pass-ink: #166534;--ui-pass-dot: #15803d;--ui-pass-bg: #f0fdf4;--ui-pass-line: rgba(21, 128, 61, .45);--ui-warn-ink: #b45309;--ui-warn-dot: #d97706;--ui-warn-bg: #fffbeb;--ui-warn-line: rgba(180, 83, 9, .45);--ui-fail-ink: #b91c1c;--ui-fail-dot: #dc2626;--ui-fail-bg: #fef2f2;--ui-fail-line: rgba(185, 28, 28, .45);--ui-danger: #b91c1c;--text-xs: 11px;--text-sm: 12px;--text-base: 13px;--text-md: 14px;--text-lg: 16px;--text-xl: 19px;--weight-regular: 400;--weight-medium: 600;--weight-bold: 700;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 40px;--space-9: 64px;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--ui-display-font: var(--sans)}:root[data-mode=play]{--ui-canvas: #fff05b;--ui-surface: #fff7cb;--ui-ink: #141414;--ui-muted: #51491c;--ui-line: #141414;--ui-accent: #5d36f5;--ui-pop: #ff4d8d;--ui-teal: #32c9a0;--ui-focus: #5d36f5;--ui-control-radius: 3px;--ui-dialog-radius: 3px;--ui-control-shadow: 4px 4px 0 var(--ui-ink);--sans: "Arial Rounded MT Bold", "Trebuchet MS", sans-serif;--ui-display-font: var(--sans);--play-sticker-pink: #ff5f9d;--play-sticker-cyan: #65d4ff;--play-sticker-mint: #56deb4;--play-sticker-orange: #ff9148;--play-sticker-violet: #967eff}body{font-family:var(--sans);font-size:var(--text-lg);color:var(--ui-ink);background:var(--ui-canvas);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,button,summary,label,.app-header__brand,.preset__name,.preset__tag,.scan__label,.tool-section__label{font-family:var(--ui-display-font)}.app-shell{width:100%;max-width:1180px;margin:0 auto;padding:0 var(--space-6) var(--space-9)}.app-shell>main{display:grid;gap:var(--space-7);padding-top:var(--space-8)}.studio{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:var(--space-7);align-items:start;min-width:0}.studio__left{display:grid;gap:var(--space-6);min-width:0}.empty-proof{display:grid;min-height:320px;place-items:center;align-content:center;gap:var(--space-3);border:1px dashed var(--ui-line);border-radius:var(--ui-control-radius);background:color-mix(in srgb,var(--ui-surface) 72%,transparent);box-shadow:var(--ui-control-shadow);color:var(--ui-muted);text-align:center}.empty-proof svg{color:var(--ui-accent)}.empty-proof__hint{font-size:var(--text-sm)}:root[data-mode=play] .empty-proof{background:var(--ui-teal);color:var(--ui-ink)}@media (max-width: 820px){.studio{grid-template-columns:minmax(0,1fr);grid-template-areas:"styles" "proof" "tune";gap:var(--space-6)}.studio__left{display:contents}.studio-controls{grid-area:styles}.proof{grid-area:proof}.tune{grid-area:tune}}@media (max-width: 360px){.app-shell{padding-inline:var(--space-4)}}.app-header{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);color:var(--ui-ink);border-bottom:1px solid var(--ui-line)}.app-header__brand{display:flex;align-items:center;gap:var(--space-2);min-width:0;font-size:var(--text-xl);font-weight:var(--weight-bold);letter-spacing:-.025em}.app-header__mark{display:grid;place-items:center;width:28px;height:28px;flex:none;color:var(--ui-ink)}.app-header__actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2)}.app-header__action{min-height:34px;padding:var(--space-2) var(--space-3);border:1px solid var(--ui-line);border-radius:var(--ui-control-radius);background:var(--ui-surface);box-shadow:var(--ui-control-shadow);color:var(--ui-ink);font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer}.app-header__action:not(:disabled):hover{border-color:var(--ui-ink)}.app-header__action:disabled{cursor:not-allowed;opacity:.45}.app-header__action:focus-visible{outline:2px solid var(--ui-focus);outline-offset:3px}:root[data-mode=play] .app-header__brand{transform:skew(-5deg)}:root[data-mode=play] .app-header__mark{color:var(--ui-accent);filter:drop-shadow(4px 4px 0 var(--ui-pop));transform:rotate(-6deg)}.mode-cube{--cube-face-front: linear-gradient(135deg, #fff07a 0 58%, #f6ce34 59%);--cube-face-back: linear-gradient(135deg, #856cff, #5636da);--cube-face-right: linear-gradient(135deg, #ff82ad, #e94382);--cube-face-left: linear-gradient(135deg, #7fe4c4, #37b58f);--cube-face-top: linear-gradient(135deg, #8edcff, #3291d0);--cube-face-bottom: linear-gradient(135deg, #ffa564, #e96b2b);position:relative;z-index:1;display:inline-flex;align-items:center;gap:var(--space-2);height:54px;flex:none;padding:0;border:0;background:transparent;cursor:pointer}.mode-cube__label{width:48px;color:var(--ui-muted);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.03em;text-align:right}:root[data-mode=play] .mode-cube__label{color:var(--ui-ink)}.mode-cube__visual{position:relative;width:54px;height:54px;flex:0 0 54px;perspective:260px}.cube-shadow{position:absolute;left:10px;right:6px;bottom:4px;height:10px;border-radius:50%;background:#18120a42;filter:blur(5px);transform:rotate(-7deg) scaleX(.82);transition:transform var(--mode-switch-duration) var(--mode-switch-ease),opacity var(--mode-switch-duration) var(--mode-switch-ease),filter var(--mode-switch-duration) var(--mode-switch-ease)}.cube{position:absolute;top:11px;right:11px;bottom:11px;left:11px;transform-style:preserve-3d;transform:rotateX(-21deg) rotateY(34deg) rotate(-1deg);transition:transform var(--mode-switch-duration) var(--mode-switch-ease)}.mode-cube:hover .cube,.mode-cube:focus-visible .cube{transform:translateY(-2px) rotateX(-24deg) rotateY(82deg) rotate(3deg)}.mode-cube:hover .cube-shadow,.mode-cube:focus-visible .cube-shadow{opacity:.7;filter:blur(6px);transform:rotate(-4deg) scaleX(.68)}.mode-cube:focus-visible{outline:2px solid var(--ui-focus);outline-offset:4px;border-radius:8px}.cube__face{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;border:1px solid rgba(16,13,10,.72);backface-visibility:hidden;box-shadow:inset 0 0 0 1px #ffffff61}.cube__face:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border:1px solid rgba(255,255,255,.42)}.cube__face:after{content:"";position:absolute;top:6px;left:6px;width:4px;height:4px;border-radius:50%;background:#100d0a6b;box-shadow:9px 0 #ffffff59,0 9px #ffffff52}.cube__face--front{background:var(--cube-face-front);transform:translateZ(16px)}.cube__face--back{background:var(--cube-face-back);transform:rotateY(180deg) translateZ(16px)}.cube__face--right{background:var(--cube-face-right);transform:rotateY(90deg) translateZ(16px)}.cube__face--left{background:var(--cube-face-left);transform:rotateY(-90deg) translateZ(16px)}.cube__face--top{background:var(--cube-face-top);transform:rotateX(90deg) translateZ(16px)}.cube__face--bottom{background:var(--cube-face-bottom);transform:rotateX(-90deg) translateZ(16px)}:root[data-mode=play] .cube{transform:rotateX(-18deg) rotateY(215deg) rotate(8deg)}:root[data-mode=play] .mode-cube:hover .cube,:root[data-mode=play] .mode-cube:focus-visible .cube{transform:translateY(-2px) rotateX(-23deg) rotateY(262deg) rotate(-1deg)}@media (prefers-reduced-motion: reduce){.cube,.cube-shadow{transition:none}.mode-cube:hover .cube,.mode-cube:focus-visible .cube{transform:rotateX(-21deg) rotateY(34deg) rotate(-1deg)}:root[data-mode=play] .mode-cube:hover .cube,:root[data-mode=play] .mode-cube:focus-visible .cube{transform:rotateX(-18deg) rotateY(215deg) rotate(8deg)}.scan--checking .scan__dot,.proof__qr{animation:none}.preset,.btn{transition:none}.preset:hover,.btn:active{transform:none}}@media (max-width: 420px){.app-header{min-height:112px;flex-direction:column;align-items:stretch;justify-content:center;gap:var(--space-1);padding:var(--space-2) 0}.app-header__brand{min-height:34px}.app-header__actions{justify-content:flex-start;flex-wrap:nowrap;min-width:0}.app-header__action{min-width:0;white-space:nowrap}.mode-cube{margin-left:auto}}.field{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}@media (max-width: 480px){.field-row{grid-template-columns:1fr}}.field>label{font-size:var(--text-sm);font-weight:var(--weight-medium);letter-spacing:.01em;color:var(--ui-muted)}textarea,select,input[type=text]{width:100%;background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:var(--ui-control-radius);padding:var(--space-2) var(--space-3);color:var(--ui-ink)}textarea{resize:vertical;min-height:64px;line-height:1.45}textarea:focus,select:focus,input[type=text]:focus{outline:none;border-color:var(--ui-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--ui-focus) 28%,transparent)}.mono{font-family:var(--mono);font-size:var(--text-sm)}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:32px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'><path d='M2 4l4 4 4-4' fill='none' stroke='%23857d72' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat:no-repeat;background-position:right var(--space-3) center}select:disabled{opacity:.55;cursor:not-allowed}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;border-radius:999px;background:var(--ui-line);cursor:pointer;margin:var(--space-2) 0}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:var(--ui-accent);border:2px solid #fff;box-shadow:0 1px 3px #0000004d}input[type=range]::-moz-range-thumb{width:18px;height:18px;border:2px solid #fff;border-radius:50%;background:var(--ui-accent)}.check{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--ui-muted);cursor:pointer}.check input[type=checkbox]{accent-color:var(--ui-accent);width:16px;height:16px;cursor:pointer}.swatch{display:flex;align-items:center;gap:var(--space-2)}input[type=color]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:40px;height:32px;padding:0;border:1px solid var(--ui-line);border-radius:8px;background:none;cursor:pointer;flex:none}input[type=color]::-webkit-color-swatch-wrapper{padding:3px}input[type=color]::-webkit-color-swatch{border:none;border-radius:5px}input[type=color]::-moz-color-swatch{border:none;border-radius:5px}.swatch .mono{color:var(--ui-muted);text-transform:uppercase}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);background:var(--ui-accent);color:var(--ui-surface);border:1px solid var(--ui-accent);padding:var(--space-3) var(--space-4);border-radius:var(--ui-control-radius);font-size:var(--text-md);font-weight:var(--weight-medium);cursor:pointer;box-shadow:var(--ui-control-shadow);transition:transform .04s ease,background .15s ease,border-color .15s ease}.btn:hover{filter:brightness(.94)}.btn:active{transform:translateY(1px)}.btn:focus-visible{outline:2px solid var(--ui-focus);outline-offset:3px}.btn--ghost{background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-line)}.btn--ghost:hover{border-color:var(--ui-ink);background:var(--ui-surface)}.logo-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.hint{font-size:var(--text-sm);color:var(--ui-muted);line-height:1.45}.scan{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;align-content:center;gap:var(--space-1) var(--space-2);width:100%;min-height:62px;padding:var(--space-2) var(--space-3);border:1px solid var(--ui-line);border-radius:var(--ui-control-radius);background:var(--ui-surface)}.scan__status{grid-row:1;grid-column:1;display:inline-flex;align-items:center;gap:var(--space-2)}.scan__dot{width:8px;height:8px;border-radius:50%;background:var(--ui-muted);flex:none}.scan__label{font-size:var(--text-base);font-weight:var(--weight-medium);flex:none}.scan__reason{grid-row:2;grid-column:1 / -1;min-width:0;padding-left:var(--space-4);color:var(--ui-muted);font-size:var(--text-sm);line-height:1.35;text-align:left}.scan__action{grid-row:1;grid-column:2;justify-self:end;padding:var(--space-1) 0;border:0;border-bottom:1px solid currentColor;background:transparent;color:var(--ui-ink);font-size:var(--text-sm);font-weight:var(--weight-bold);line-height:1.2;white-space:nowrap;cursor:pointer}.scan__action:focus-visible{outline:2px solid var(--ui-focus);outline-offset:3px}.scan--checking{border-color:var(--ui-line)}.scan--checking .scan__dot{background:var(--ui-muted);animation:scan-pulse 1s ease-in-out infinite}.scan--pass{border-color:var(--ui-pass-line);background:var(--ui-pass-bg)}.scan--pass .scan__dot{background:var(--ui-pass-dot)}.scan--pass .scan__label{color:var(--ui-pass-ink)}.scan--warn{border-color:var(--ui-warn-line);background:var(--ui-warn-bg)}.scan--warn .scan__dot{background:var(--ui-warn-dot)}.scan--warn .scan__label{color:var(--ui-warn-ink)}.scan--fail{border-color:var(--ui-fail-line);background:var(--ui-fail-bg)}.scan--fail .scan__dot{background:var(--ui-fail-dot)}.scan--fail .scan__label{color:var(--ui-fail-ink)}:root[data-mode=play] .scan{border-color:var(--ui-ink);background:var(--ui-canvas);box-shadow:var(--ui-control-shadow)}@keyframes scan-pulse{0%,to{opacity:.35}50%{opacity:1}}.preset{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--space-2);background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:var(--ui-control-radius);padding:var(--space-3);cursor:pointer;text-align:center;transition:border-color .15s ease,transform .06s ease,box-shadow .15s ease}.preset:hover{border-color:var(--ui-ink);transform:translateY(-2px);box-shadow:var(--ui-control-shadow)}.preset:focus-visible{outline:2px solid var(--ui-focus);outline-offset:3px}.preset--active{border-color:var(--ui-accent);box-shadow:inset 0 0 0 2px var(--ui-accent),var(--ui-control-shadow)}:root[data-mode=play] .preset--active{background:var(--ui-pop)}.preset__thumb{width:100%;aspect-ratio:1;display:grid;place-items:center;background:var(--ui-canvas);border-radius:calc(var(--ui-control-radius) - 1px);overflow:hidden}.preset__thumb svg{width:100%;height:100%}.preset__name{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--ui-ink);line-height:1.2}.preset__tag{position:absolute;top:var(--space-2);right:var(--space-2);font-family:var(--mono);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ui-accent);background:var(--ui-surface);border:1px solid var(--ui-accent);border-radius:999px;padding:1px 6px}.composer{display:grid;gap:var(--space-2);color:var(--ui-ink)}.composer>label,.studio-controls__heading h2{font-size:var(--text-md);font-weight:var(--weight-bold);letter-spacing:-.01em}.composer__input{min-height:96px;border-color:var(--ui-line);border-radius:var(--ui-control-radius);background:var(--ui-surface);color:var(--ui-ink)}.composer__input:focus{border-color:var(--ui-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--ui-focus) 28%,transparent)}.composer__footer,.studio-controls__heading,.preset-dialog__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.composer__footer{flex-wrap:wrap}.composer__error{min-height:1.4em;color:var(--ui-danger);font-size:var(--text-sm)}.composer__submit,.studio-controls__action,.preset-dialog__close,.tune-tabs__button{min-height:38px;border:1px solid var(--ui-line);border-radius:var(--ui-control-radius);background:var(--ui-surface);box-shadow:var(--ui-control-shadow);color:var(--ui-ink);font-size:var(--text-base);font-weight:var(--weight-bold);cursor:pointer}.composer__submit{padding:var(--space-2) var(--space-4);border-color:var(--ui-accent);background:var(--ui-accent);color:var(--ui-surface);font-size:var(--text-md)}.composer__submit:disabled{cursor:not-allowed;opacity:.45}.composer__submit:focus-visible,.studio-controls__action:focus-visible,.preset-dialog__close:focus-visible,.tune-tabs__button:focus-visible{outline:2px solid var(--ui-focus);outline-offset:3px}.studio-controls{display:grid;gap:var(--space-3);min-width:0;color:var(--ui-ink)}.studio-controls__action,.preset-dialog__close{padding:var(--space-2) var(--space-3)}.preset-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-2)}.preset--compact{gap:var(--space-2);min-width:0;padding:var(--space-2)}.preset--play-sticker{--sticker-color: var(--ui-surface);--sticker-y: 0px;--sticker-rotation: 0deg;min-height:154px;gap:var(--space-2);justify-content:flex-start;padding:var(--space-4) var(--space-2) var(--space-3);overflow:visible;border:2px solid var(--ui-ink);background:var(--sticker-color);box-shadow:5px 5px 0 var(--ui-ink);transform:translateY(var(--sticker-y)) rotate(var(--sticker-rotation))}.preset--play-sticker:hover{border-color:var(--ui-ink);background:var(--sticker-color);box-shadow:6px 6px 0 var(--ui-ink);transform:translateY(calc(var(--sticker-y) - 2px)) rotate(var(--sticker-rotation))}.preset--play-sticker[data-sticker-color=pink]{--sticker-color: var(--play-sticker-pink)}.preset--play-sticker[data-sticker-color=cyan]{--sticker-color: var(--play-sticker-cyan)}.preset--play-sticker[data-sticker-color=mint]{--sticker-color: var(--play-sticker-mint)}.preset--play-sticker[data-sticker-color=orange]{--sticker-color: var(--play-sticker-orange)}.preset--play-sticker[data-sticker-color=violet]{--sticker-color: var(--play-sticker-violet)}.preset--play-sticker[data-sticker-shape=square]{--sticker-y: 0px;--sticker-rotation: -.3deg;border-radius:4px}.preset--play-sticker[data-sticker-shape=opposite]{--sticker-y: 0px;--sticker-rotation: -1deg;border-radius:4px 15px}.preset--play-sticker[data-sticker-shape=asymmetric]{--sticker-y: 6px;--sticker-rotation: .6deg;border-radius:16px 4px 10px}.preset--play-sticker[data-sticker-shape=top]{--sticker-y: 5px;--sticker-rotation: .8deg;border-radius:15px 15px 4px 4px}.preset--play-sticker[data-sticker-shape=right]{--sticker-y: 1px;--sticker-rotation: -.5deg;border-radius:4px 14px 14px 4px}.preset--play-sticker .preset__thumb{width:64%;flex:none;border:1px solid color-mix(in srgb,var(--ui-ink) 18%,transparent);border-radius:1px;background:#fff;box-shadow:2px 2px color-mix(in srgb,var(--ui-ink) 20%,transparent)}.preset--play-sticker .preset__name{margin-top:auto;font-weight:var(--weight-bold)}:root[data-mode=play] .preset--play-sticker.preset--active{border-color:var(--ui-ink);background:var(--sticker-color);box-shadow:inset 0 0 0 1px var(--ui-ink),8px 8px 0 var(--ui-ink);transform:translateY(calc(var(--sticker-y) - 6px)) rotate(var(--sticker-rotation))}.preset--play-sticker.preset--active:after{content:"✓";position:absolute;top:-8px;right:-7px;display:grid;width:22px;height:22px;place-items:center;border:2px solid var(--ui-ink);border-radius:50%;background:var(--ui-canvas);box-shadow:2px 2px 0 var(--ui-ink);color:var(--ui-ink);font-size:var(--text-base);font-weight:var(--weight-bold);line-height:1;pointer-events:none}.preset--play-sticker.preset--active:hover{background:var(--sticker-color);box-shadow:inset 0 0 0 1px var(--ui-ink),8px 8px 0 var(--ui-ink);transform:translateY(calc(var(--sticker-y) - 8px)) rotate(var(--sticker-rotation))}.preset-dialog{width:min(860px,calc(100% - 32px));max-height:min(720px,calc(100dvh - 48px));margin:auto;padding:0;overflow:hidden;border:1px solid var(--ui-line);border-radius:var(--ui-dialog-radius);background:var(--ui-surface);color:var(--ui-ink);box-shadow:0 24px 80px #1717173d}.preset-dialog::backdrop{background:#17171775}.preset-dialog__header{padding:var(--space-4);border-bottom:1px solid var(--ui-line)}.preset-dialog__header h2{font-size:var(--text-xl)}.preset-dialog__body{max-height:calc(min(720px,100dvh - 48px) - 72px);padding:var(--space-4);overflow-y:auto;overscroll-behavior:contain}.preset-dialog__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(134px,1fr));gap:var(--space-3)}.tune{display:grid;align-content:start;gap:var(--space-2)}.tune-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.tune-tabs__button{padding:var(--space-2) var(--space-3)}.tune-tabs__button[aria-expanded=true]{border-color:var(--ui-accent);background:var(--ui-accent);color:var(--ui-surface)}.tune-panel{padding:var(--space-4);border:1px solid var(--ui-line);border-radius:var(--ui-control-radius);background:var(--ui-surface);color:var(--ui-ink)}.tune-panel--logo{padding-bottom:8px}.tune-panel .field-row{grid-template-columns:repeat(auto-fit,minmax(148px,1fr))}.tune-panel__error{min-height:1.45em}@media (max-width: 760px){.preset-strip{display:flex;gap:var(--space-2);margin-inline:calc(-1 * var(--space-6));padding-inline:var(--space-6);padding-block:12px 18px;overflow-x:auto;scroll-padding-inline:var(--space-6);scroll-snap-type:x mandatory}.preset-strip .preset{min-width:116px;scroll-snap-align:start}.preset-dialog{width:100%;max-width:none;max-height:min(84dvh,720px);margin:auto 0 0;border-width:1px 0 0;border-radius:var(--ui-dialog-radius) var(--ui-dialog-radius) 0 0}.preset-dialog__body{max-height:calc(min(84dvh,720px) - 72px);padding:var(--space-3)}}@media (max-width: 360px){.preset-strip{margin-inline:calc(-1 * var(--space-4));padding-inline:var(--space-4);scroll-padding-inline:var(--space-4)}}.hint--error{color:var(--ui-danger);font-weight:var(--weight-medium)}.seg{display:inline-flex;align-self:flex-start;border:1px solid var(--ui-line);border-radius:var(--ui-control-radius);overflow:hidden}.seg__btn{background:var(--ui-surface);border:none;border-right:1px solid var(--ui-line);padding:var(--space-2) var(--space-3);font-family:var(--mono);font-size:var(--text-sm);color:var(--ui-muted);cursor:pointer;transition:background .12s ease,color .12s ease}.seg__btn:last-child{border-right:none}.seg__btn:hover{color:var(--ui-ink)}.seg__btn--on,.seg__btn--on:hover{background:var(--ui-accent);color:var(--ui-surface)}.seg__btn:focus-visible{outline:2px solid var(--ui-focus);outline-offset:-3px}.logo-size-steps .seg__btn{min-width:44px}.logo-size-steps .seg__btn:disabled{cursor:not-allowed;opacity:.4}.proof{display:grid;gap:var(--space-3);min-width:0;color:var(--ui-ink)}.proof__title{font-size:var(--text-md);font-weight:var(--weight-bold);letter-spacing:-.01em}.proof__card{position:relative;display:grid;width:100%;min-height:320px;padding:var(--space-6);place-items:center;border:1px solid var(--ui-line);border-radius:var(--ui-control-radius);background:var(--ui-surface);box-shadow:var(--ui-control-shadow)}.proof__qr{display:grid;max-width:100%;place-items:center;animation:qr-stamp .32s cubic-bezier(.2,.8,.3,1) both}@keyframes qr-stamp{0%{opacity:.35;transform:scale(.97)}to{opacity:1;transform:none}}.proof__qr svg{max-width:100%;height:auto}.proof__actions{display:flex;align-items:flex-start;gap:var(--space-2);flex-wrap:wrap}.proof__actions>.btn{min-height:40px;border-radius:var(--ui-control-radius);background:var(--ui-accent);box-shadow:var(--ui-control-shadow)}.proof__actions>.btn--ghost{background:var(--ui-surface)}.proof__caution{color:var(--ui-muted);line-height:1.5}@media (min-width: 821px){.proof{position:sticky;top:24px}}.export-menu{position:relative;min-width:190px;color:var(--ui-ink)}.export-menu__summary,.export-menu__action,.more-dialog__close{min-height:40px;padding:var(--space-2) var(--space-3);border:1px solid var(--ui-line);border-radius:var(--ui-control-radius);background:var(--ui-surface);box-shadow:var(--ui-control-shadow);color:var(--ui-ink);font-size:var(--text-base);font-weight:var(--weight-bold);cursor:pointer}.export-menu__summary{display:flex;align-items:center;list-style:none}.export-menu__summary::-webkit-details-marker{display:none}.export-menu__summary:after{content:"+";margin-left:auto;padding-left:var(--space-3)}.export-menu[open] .export-menu__summary:after{content:"−"}.export-menu__summary:focus-visible,.export-menu__action:focus-visible,.more-dialog__close:focus-visible{outline:2px solid var(--ui-focus);outline-offset:3px}.export-menu__panel{position:absolute;z-index:5;top:calc(100% + var(--space-2));right:0;display:grid;width:min(320px,calc(100vw - 48px));gap:var(--space-3);padding:var(--space-4);border:1px solid var(--ui-line);border-radius:var(--ui-control-radius);background:var(--ui-surface);box-shadow:0 18px 48px #1717172e}.export-menu__action:disabled{cursor:wait;opacity:.5}.export-menu .seg{border-color:var(--ui-line)}.export-menu .seg__btn{border-color:var(--ui-line);background:var(--ui-surface);color:var(--ui-muted)}.export-menu .seg__btn--on{background:var(--ui-accent);color:var(--ui-surface)}.export-menu__status{min-height:1.45em;color:var(--ui-muted);font-size:var(--text-sm);line-height:1.45}.tool-section{display:grid;gap:var(--space-3);min-width:0}.tool-section+.tool-section{padding-top:var(--space-4);border-top:1px solid var(--ui-line)}.tool-section h3,.tool-section__label{color:var(--ui-ink);font-size:var(--text-base);font-weight:var(--weight-bold)}.tool-section__error{min-height:1.45em}.more-dialog{width:min(620px,calc(100% - 32px));max-height:min(760px,calc(100dvh - 48px));margin:auto;padding:0;overflow:hidden;border:1px solid var(--ui-line);border-radius:var(--ui-dialog-radius);background:var(--ui-surface);color:var(--ui-ink);box-shadow:0 24px 80px #1717173d}.more-dialog::backdrop{background:#1717177a}.more-dialog__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-5);padding:var(--space-4);border-bottom:1px solid var(--ui-line)}.more-dialog__header h2{font-size:var(--text-xl)}.more-dialog__header p{margin-top:var(--space-1);color:var(--ui-muted);font-size:var(--text-sm);line-height:1.45}.more-dialog__body{display:grid;gap:var(--space-5);max-height:calc(min(760px,100dvh - 48px) - 82px);padding:var(--space-4);overflow-y:auto;overscroll-behavior:contain}.more-dialog textarea,.more-dialog input[type=text]{border-color:var(--ui-line);border-radius:var(--ui-control-radius);background:var(--ui-surface);color:var(--ui-ink)}.more-dialog textarea:focus,.more-dialog input[type=text]:focus{border-color:var(--ui-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--ui-focus) 28%,transparent)}.more-dialog .field>label{color:var(--ui-muted)}.more-dialog .btn{border-color:var(--ui-line);border-radius:var(--ui-control-radius);background:var(--ui-surface);box-shadow:var(--ui-control-shadow);color:var(--ui-ink)}.more-dialog .btn:hover{border-color:var(--ui-ink)}.more-dialog__credit{padding-top:var(--space-4);border-top:1px solid var(--ui-line);color:var(--ui-muted);font-family:var(--mono);font-size:var(--text-xs)}.more-dialog__credit a{color:inherit}@media (max-width: 620px){.more-dialog{width:100%;max-width:none;max-height:min(88dvh,760px);margin:auto 0 0;border-width:1px 0 0;border-radius:var(--ui-dialog-radius) var(--ui-dialog-radius) 0 0}.more-dialog__body{max-height:calc(min(88dvh,760px) - 82px)}.export-menu__panel{position:fixed;top:auto;right:0;bottom:0;left:0;width:100%;border-width:1px 0 0;border-radius:var(--ui-control-radius) var(--ui-control-radius) 0 0}}.app-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:var(--space-8);margin-top:var(--space-9);padding-top:var(--space-6);border-top:1px solid var(--ui-line);color:var(--ui-ink)}.footer-identity{display:flex;align-items:center;gap:var(--space-4);min-width:0}.footer-logo-link{display:block;flex:none;padding:8px;border:1px solid transparent}.footer-logo{width:154px;height:auto;filter:invert(1)}.footer-home{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-1);min-width:0;text-align:right}.footer-home p{font-size:var(--text-md);font-weight:var(--weight-bold);letter-spacing:-.01em}.footer-home a,.footer-links a{color:inherit;font-size:var(--text-base);text-underline-offset:3px}.footer-home a:hover,.footer-links a:hover{color:var(--ui-accent)}.footer-logo-link:focus-visible,.footer-home a:focus-visible,.footer-links a:focus-visible{outline:2px solid var(--ui-focus);outline-offset:4px}.footer-connect{display:grid;gap:var(--space-2);justify-items:end}.footer-connect h2{font-size:var(--text-xl);line-height:1.1;letter-spacing:-.025em}.footer-links{display:flex;justify-content:flex-end;gap:var(--space-3);flex-wrap:wrap}:root[data-mode=play] .footer-logo-link{border-color:var(--ui-ink);background:var(--ui-accent);box-shadow:var(--ui-control-shadow)}:root[data-mode=play] .footer-logo{filter:none}@media (max-width: 760px){.app-footer{grid-template-columns:1fr;align-items:start}.footer-identity{flex-wrap:wrap}.footer-home{margin-left:auto}}@media (max-width: 420px){.footer-logo{width:122px}}:root{--mode-switch-duration: .8s;--mode-switch-ease: cubic-bezier(.35, .15, .3, 1);--mode-origin-x: 100%;--mode-origin-y: 0px}:root[data-mode-transition] .composer{view-transition-name:composer}:root[data-mode-transition] .studio-controls{view-transition-name:styles}:root[data-mode-transition] .tune{view-transition-name:fine-tune}:root[data-mode-transition] .proof{view-transition-name:proof}:root[data-mode-transition=to-arcade]::view-transition-group(*){animation-duration:var(--mode-switch-duration);animation-timing-function:var(--mode-switch-ease)}:root[data-mode-transition=to-paper]::view-transition-group(*){animation-duration:var(--mode-switch-duration);animation-timing-function:var(--mode-switch-ease)}:root[data-mode-transition=to-arcade]::view-transition-old(root){animation:mode-surface-out var(--mode-switch-duration) var(--mode-switch-ease) both}:root[data-mode-transition=to-paper]::view-transition-old(root){animation:mode-surface-out var(--mode-switch-duration) var(--mode-switch-ease) both}:root[data-mode-transition=to-arcade]::view-transition-old(composer),:root[data-mode-transition=to-arcade]::view-transition-old(styles),:root[data-mode-transition=to-arcade]::view-transition-old(fine-tune),:root[data-mode-transition=to-arcade]::view-transition-old(proof){animation:mode-surface-out var(--mode-switch-duration) var(--mode-switch-ease) both}:root[data-mode-transition=to-paper]::view-transition-old(composer),:root[data-mode-transition=to-paper]::view-transition-old(styles),:root[data-mode-transition=to-paper]::view-transition-old(fine-tune),:root[data-mode-transition=to-paper]::view-transition-old(proof){animation:mode-surface-out var(--mode-switch-duration) var(--mode-switch-ease) both}:root[data-mode-transition=to-arcade]::view-transition-new(composer),:root[data-mode-transition=to-arcade]::view-transition-new(styles),:root[data-mode-transition=to-arcade]::view-transition-new(fine-tune),:root[data-mode-transition=to-arcade]::view-transition-new(proof){animation:mode-surface-in var(--mode-switch-duration) var(--mode-switch-ease) both}:root[data-mode-transition=to-paper]::view-transition-new(composer),:root[data-mode-transition=to-paper]::view-transition-new(styles),:root[data-mode-transition=to-paper]::view-transition-new(fine-tune),:root[data-mode-transition=to-paper]::view-transition-new(proof){animation:mode-surface-in var(--mode-switch-duration) var(--mode-switch-ease) both}:root[data-mode-transition=to-arcade]::view-transition-new(root){animation:mode-expand-from-cube var(--mode-switch-duration) var(--mode-switch-ease) both}:root[data-mode-transition=to-paper]::view-transition-new(root){animation:mode-expand-from-cube var(--mode-switch-duration) var(--mode-switch-ease) both}@keyframes mode-expand-from-cube{0%{clip-path:circle(20px at var(--mode-origin-x) var(--mode-origin-y))}to{clip-path:circle(150vmax at var(--mode-origin-x) var(--mode-origin-y))}}@keyframes mode-surface-in{0%{opacity:0}to{opacity:1}}@keyframes mode-surface-out{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion: reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
