@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/fraunces-vietnamese-wght-normal.9ea1ffad.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/fraunces-latin-ext-wght-normal.df252a37.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/fraunces-latin-wght-normal.7d78925e.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-cyrillic-ext-wght-normal.460bdf14.woff2) format("woff2-variations");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-cyrillic-wght-normal.491cbc05.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-greek-ext-wght-normal.23aae568.woff2) format("woff2-variations");unicode-range:u+1f??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-greek-wght-normal.4449bf7a.woff2) format("woff2-variations");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-vietnamese-wght-normal.113a630f.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-latin-ext-wght-normal.3835a68e.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-latin-wght-normal.6c596dfc.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/jetbrains-mono-cyrillic-ext-400-normal.17d05b18.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-cyrillic-ext-400-normal.7daf4077.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/jetbrains-mono-cyrillic-400-normal.17524150.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-cyrillic-400-normal.29859c59.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/jetbrains-mono-greek-400-normal.77d339c7.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-greek-400-normal.4a5b0cb1.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/jetbrains-mono-vietnamese-400-normal.553f85d1.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-vietnamese-400-normal.fd17702b.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/jetbrains-mono-latin-ext-400-normal.4d63b447.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-latin-ext-400-normal.ef62d646.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/jetbrains-mono-latin-400-normal.db9d659a.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-latin-400-normal.b0c7be19.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{--bg:#faf9f6;--surface:#ffffff;--surface-2:#f4f1ea;--ink:#1c1b19;--muted:#625c52;--faint:#8a8375;--accent:#b34700;--accent-ink:#8a3500;--accent-soft:#fbeadd;--line:#e4e0d8;--good:#2f6b3e;--warn:#9a6200;--bad:#b3261e;--shadow:0 1px 2px rgba(28,27,25,0.05),0 10px 28px -14px rgba(28,27,25,0.22);--radius:14px;--radius-sm:9px;--font-body:"Inter Variable",system-ui,-apple-system,"Segoe UI",sans-serif;--font-display:"Fraunces Variable",Georgia,serif;--font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#15130f;--surface:#1f1b16;--surface-2:#26211a;--ink:#f2ede3;--muted:#b0a696;--faint:#857c6c;--accent:#f0904f;--accent-ink:#f6b184;--accent-soft:#35261a;--line:#38322a;--good:#7cb88b;--warn:#e0b04a;--bad:#f0857d;--shadow:0 1px 2px rgba(0,0,0,0.35),0 12px 28px -12px rgba(0,0,0,0.6);color-scheme:dark}}:root[data-theme=dark]{--bg:#15130f;--surface:#1f1b16;--surface-2:#26211a;--ink:#f2ede3;--muted:#b0a696;--faint:#857c6c;--accent:#f0904f;--accent-ink:#f6b184;--accent-soft:#35261a;--line:#38322a;--good:#7cb88b;--warn:#e0b04a;--bad:#f0857d;--shadow:0 1px 2px rgba(0,0,0,0.35),0 12px 28px -12px rgba(0,0,0,0.6);color-scheme:dark}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:72px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}::selection{background:var(--accent);color:#fff}a{color:var(--accent-ink)}a:hover{text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}h1,h2,h3{font-family:var(--font-display);font-weight:600;letter-spacing:-.01em;line-height:1.12;margin:0;text-wrap:balance}p{margin:0}.mono,code,kbd{font-family:var(--font-mono)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.wrap{max-width:1080px;margin-inline:auto;padding-inline:20px}.eyebrow{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink)}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;font-weight:500;font-size:14px;padding:9px 15px;border-radius:var(--radius-sm);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;transition:background .15s,border-color .15s,color .15s}.btn:hover:not(:disabled){border-color:var(--accent)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover:not(:disabled){background:var(--accent-ink);border-color:var(--accent-ink)}:root[data-theme=dark] .btn.primary{color:#1a1207}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .btn.primary{color:#1a1207}}.btn.ghost{background:transparent}.btn.small{min-height:30px;padding:4px 10px;font-size:13px}.btn.danger:hover:not(:disabled){border-color:var(--bad);color:var(--bad)}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.site-header .wrap{display:flex;align-items:center;gap:18px;height:58px}.brand{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-display);font-weight:700;font-size:19px;color:var(--ink);text-decoration:none}.brand-mark{width:auto;height:26px}.nav{display:flex;gap:4px;margin-left:auto;align-items:center}.nav a{color:var(--muted);text-decoration:none;padding:6px 10px;border-radius:8px;font-size:14px}.nav a:hover{color:var(--ink);background:var(--surface-2)}@media (max-width:640px){.nav .hide-sm{display:none}}.site-footer{border-top:1px solid var(--line);margin-top:88px;padding:36px 0 56px;color:var(--muted);font-size:13.5px}.site-footer .wrap{display:flex;flex-wrap:wrap;gap:16px 32px;justify-content:space-between}.site-footer ul{list-style:none;margin:0;padding:0;display:flex;gap:18px;flex-wrap:wrap}.hero{padding:72px 0 40px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);grid-gap:20px 48px;gap:20px 48px;align-items:center}.hero-copy{display:grid;grid-gap:22px;gap:22px}.hero h1{font-size:clamp(38px,6.4vw,64px);line-height:1.02}.hero h1 em{font-style:italic;color:var(--accent-ink)}.hero-video{display:grid;grid-gap:10px;gap:10px}.hero-video-frame{position:relative;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:#0c0a08}.hero-video-frame video{display:block;width:100%;height:100%;object-fit:cover}.hero-video-caption{font-family:var(--font-mono);font-size:12px;color:var(--faint);text-align:center}@media (max-width:880px){.hero{grid-template-columns:1fr}}.lede{font-size:clamp(16px,2.2vw,19px);color:var(--muted);max-width:62ch}.cta-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}.fineprint{font-family:var(--font-mono);font-size:12px;color:var(--faint);line-height:1.7}.start-gate{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px}.start-wrap{max-width:640px;width:100%;display:flex;flex-direction:column;gap:14px}.start-wrap h1{font-size:clamp(28px,4.4vw,38px);line-height:1.08;margin:0}.start-cards{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:14px;gap:14px;margin-top:8px}@media (max-width:560px){.start-cards{grid-template-columns:1fr}}.start-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px;display:grid;grid-gap:8px;gap:8px;cursor:pointer}.start-card strong{font-size:18px}.start-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.start-card.last{border-color:var(--accent)}.start-card:disabled{cursor:progress;opacity:.7}.start-card:hover{border-color:var(--accent)}.start-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.section{margin-top:84px}.section>h2{font-size:clamp(26px,3.6vw,36px);margin-bottom:10px}.section>.lede{margin-bottom:28px}.gallery-group+.gallery-group{margin-top:44px}.gallery-group-head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--line)}.gallery-group-head h3{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--accent);white-space:nowrap}.gallery-group-head p{color:var(--muted);font-size:14px;margin:0;flex:1 1 320px}.gallery-hint{color:var(--faint);font-size:12.5px;white-space:nowrap}@media (hover:none){.gallery-hint{display:none}}.gallery{display:flex;align-items:flex-start;gap:20px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;padding:2px 2px 14px;margin:-2px -2px -12px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.gallery::-webkit-scrollbar{height:8px}.gallery::-webkit-scrollbar-thumb{background:var(--line);border-radius:4px}.gallery::-webkit-scrollbar-thumb:hover{background:var(--faint)}.g-card{flex:0 0 min(90vw,520px);scroll-snap-align:start;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;transition:transform .15s ease,border-color .15s ease}.g-card:hover{transform:translateY(-3px);border-color:var(--accent)}.g-head{padding:16px 20px 12px;display:flex;justify-content:space-between;gap:12px;align-items:baseline;border-bottom:1px solid var(--line)}.g-head h3{font-size:20px}.g-head span{color:var(--muted);font-size:13px;text-align:right}.g-stage{padding:26px 20px;background:#ffffff;color:#1c1b19;min-height:200px;display:flex;align-items:center;justify-content:center;overflow-x:auto}.g-foot{padding:10px 20px;border-top:1px solid var(--line);font-family:var(--font-mono);font-size:11.5px;color:var(--faint);background:var(--surface-2)}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-gap:16px;gap:16px}.feature{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);padding:20px}.feature h3{font-size:18px;margin-bottom:6px}.feature p{color:var(--muted);font-size:14.5px}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:16px;gap:16px;counter-reset:step}.step{counter-increment:step;border-left:2px solid var(--accent);padding:2px 0 2px 16px}.step:before{content:"0" counter(step);font-family:var(--font-mono);font-size:12px;color:var(--accent-ink)}.step h3{font-size:19px;margin:4px 0 6px}.step p{color:var(--muted);font-size:14.5px}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}table.plain{border-collapse:collapse;width:100%;font-size:14px}table.plain td,table.plain th{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:top}table.plain th{font-family:var(--font-mono);font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--faint);font-weight:500;background:var(--surface-2)}table.plain tr:last-child td{border-bottom:none}.prose{max-width:74ch}.prose h1{font-size:clamp(30px,4.4vw,42px);margin-bottom:16px}.prose h2{font-size:24px;margin:40px 0 10px}.prose h3{font-size:18px;margin:26px 0 8px}.prose ol,.prose p,.prose ul{margin:0 0 14px}.prose li{margin:4px 0}.prose code{border:1px solid var(--line);padding:1px 5px;border-radius:5px;font-size:.88em}.prose code,.prose pre{background:var(--surface-2)}.prose pre{border:1px solid var(--line);padding:14px 16px;border-radius:var(--radius-sm);overflow-x:auto;font-size:13px;margin:0 0 16px}.prose pre code{background:none;border:none;padding:0}.prose table{border-collapse:collapse;width:100%;font-size:14px;margin:0 0 18px;display:block;overflow-x:auto}.prose td,.prose th{border:1px solid var(--line);padding:8px 12px;text-align:left;vertical-align:top}.prose th{background:var(--surface-2)}.prose blockquote{margin:0 0 16px;padding:4px 16px;border-left:3px solid var(--accent);color:var(--muted)}.docs-layout{display:grid;grid-template-columns:220px minmax(0,1fr);grid-gap:40px;gap:40px;padding-top:40px}.docs-nav{position:-webkit-sticky;position:sticky;top:80px;align-self:start;display:grid;grid-gap:2px;gap:2px;font-size:14px}.docs-nav a{color:var(--muted);text-decoration:none;padding:6px 10px;border-radius:8px}.docs-nav a:hover,.docs-nav a[aria-current=page]{background:var(--surface-2);color:var(--ink)}@media (max-width:800px){.docs-layout{grid-template-columns:1fr;gap:16px}.docs-nav{position:static;grid-auto-flow:column;overflow-x:auto}}.support-section{position:relative;overflow:hidden;padding-top:96px;padding-bottom:96px}.support-stickers{position:absolute;inset:0;pointer-events:none}.sticker{position:absolute;display:block;pointer-events:auto;filter:drop-shadow(0 8px 16px rgba(28,27,25,.16));cursor:pointer}.sticker img{display:block;width:100%;height:auto}.sticker:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:8px}.sticker-creator{top:6%;left:1%;width:clamp(140px,16vw,190px);animation:float-creator 6s ease-in-out infinite}.sticker-creator:focus-visible,.sticker-creator:hover{animation-play-state:paused;transform:rotate(-5deg) scale(1.08)}.sticker-badge-yellow{top:-6%;right:5%;width:clamp(70px,9vw,96px);animation:float-badge-yellow 5.5s ease-in-out infinite}.sticker-badge-yellow:focus-visible,.sticker-badge-yellow:hover{animation-play-state:paused;transform:rotate(11deg) scale(1.14)}.sticker-cup{top:36%;right:18%;width:clamp(52px,6vw,68px);animation:float-cup 4.5s ease-in-out infinite}.sticker-cup:focus-visible,.sticker-cup:hover{animation-play-state:paused;transform:rotate(-9deg) scale(1.16)}.sticker-badge-black{bottom:-8%;right:3%;width:clamp(64px,8vw,84px);animation:float-badge-black 6.5s ease-in-out infinite}.sticker-badge-black:focus-visible,.sticker-badge-black:hover{animation-play-state:paused;transform:rotate(14deg) scale(1.14)}.sticker-heart{bottom:4%;left:9%;width:clamp(44px,5vw,58px);animation:float-heart 5s ease-in-out infinite}.sticker-heart:focus-visible,.sticker-heart:hover{animation-play-state:paused;transform:rotate(-11deg) scale(1.2)}@keyframes float-creator{0%,to{transform:rotate(-5deg) translateY(0)}50%{transform:rotate(-5deg) translateY(-7px)}}@keyframes float-badge-yellow{0%,to{transform:rotate(11deg) translateY(0)}50%{transform:rotate(11deg) translateY(-8px)}}@keyframes float-cup{0%,to{transform:rotate(-9deg) translateY(0)}50%{transform:rotate(-9deg) translateY(-6px)}}@keyframes float-badge-black{0%,to{transform:rotate(14deg) translateY(0)}50%{transform:rotate(14deg) translateY(-9px)}}@keyframes float-heart{0%,to{transform:rotate(-11deg) translateY(0)}50%{transform:rotate(-11deg) translateY(-5px)}}@media (max-width:760px){.support-stickers{display:none}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.sticker{animation:none!important}}.studio{min-height:100dvh;display:flex;flex-direction:column}.studio-bar{position:-webkit-sticky;position:sticky;top:0;z-index:30;gap:10px;padding:8px 14px;background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.bar-actions,.studio-bar{display:flex;align-items:center}.bar-actions{gap:6px}.bar-actions.right{margin-left:auto}.saved{font-family:var(--font-mono);font-size:11.5px;color:var(--faint);margin-left:6px}.studio-msg{padding:8px 14px 0;cursor:pointer}.tabs{display:none;gap:4px;padding:8px 14px;border-bottom:1px solid var(--line);background:var(--bg);position:-webkit-sticky;position:sticky;top:53px;z-index:25}.tabs button{flex:1 1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;font-weight:500;padding:8px;border-radius:9px;min-height:40px}.tabs button.on{background:var(--accent);border-color:var(--accent);color:#fff}.studio-body{display:grid;grid-template-columns:minmax(340px,400px) minmax(0,1fr);grid-gap:20px;gap:20px;padding:16px 14px 80px;align-items:start;max-width:1500px;width:100%;margin-inline:auto}.editor{display:grid;grid-gap:10px;gap:10px;align-content:start}.workspace{display:grid;grid-gap:16px;gap:16px;position:-webkit-sticky;position:sticky;top:70px;max-height:calc(100dvh - 86px);overflow:auto;padding-right:2px}@media (max-width:900px){.tabs{display:flex}.studio-body{grid-template-columns:1fr;padding-bottom:60px}.workspace{position:static;max-height:none;overflow:visible}.studio-body.view-edit .workspace,.studio-body.view-install .editor,.studio-body.view-install .workspace>:not(.install),.studio-body.view-preview .editor,.studio-body.view-preview .workspace>:not(.preview):not(.meters){display:none}.studio-body.view-install .workspace>.install{display:block}}@media (max-width:640px){.hide-sm{display:none!important}}.panel{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);overflow:clip}.panel>summary{list-style:none;cursor:pointer;display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:13px 16px;font-weight:600;font-family:var(--font-display);font-size:17px;min-height:48px}.panel>summary::-webkit-details-marker{display:none}.panel>summary:after{content:"＋";margin-left:auto;color:var(--faint);font-family:var(--font-body)}.panel[open]>summary:after{content:"－"}.panel>summary small{font-family:var(--font-body);font-weight:400;font-size:12.5px;color:var(--muted);margin-left:8px}.panel-body{display:grid;grid-gap:12px;gap:12px;border-top:1px solid var(--line);padding:14px 16px 18px}.sub{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--faint);margin:8px 0 -2px;font-weight:500}.row{display:grid;grid-gap:10px;gap:10px}.row.cols-2{grid-template-columns:1fr 1fr}.row.cols-3{grid-template-columns:repeat(3,1fr)}@media (max-width:420px){.row.cols-2,.row.cols-3{grid-template-columns:1fr}}.field{display:grid;grid-gap:4px;gap:4px;position:relative;min-width:0}.field>label,fieldset>legend{font-size:12.5px;font-weight:500;color:var(--muted)}input[type=email],input[type=number],input[type=tel],input[type=text],input[type=url],select,textarea{width:100%;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:8px 10px;min-height:38px}textarea{resize:vertical}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.has-error input,.has-error select,.has-error textarea{border-color:var(--bad)}.field-error{color:var(--bad);font-size:12.5px}.field-hint{color:var(--faint);font-size:12.5px}.counter{position:absolute;right:8px;top:0;font-family:var(--font-mono);font-size:11px;color:var(--faint)}.toggle{display:flex;align-items:flex-start;gap:10px}.toggle input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:none;width:36px;height:20px;border-radius:999px;background:var(--line);position:relative;cursor:pointer;margin:2px 0 0;transition:background .15s}.toggle input[type=checkbox]:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:0 1px 2px rgba(0,0,0,.3)}.toggle input[type=checkbox]:checked{background:var(--accent)}.toggle input[type=checkbox]:checked:after{transform:translateX(16px)}.toggle label{font-size:14px;cursor:pointer;display:grid}.toggle small{color:var(--faint);font-size:12.5px}.toggles{display:grid;grid-gap:10px;gap:10px;padding-top:10px}.segmented{display:flex;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--bg)}.segmented label{flex:1 1;text-align:center;padding:7px 8px;font-size:13px;cursor:pointer;color:var(--muted);border-left:1px solid var(--line);min-height:36px;display:flex;align-items:center;justify-content:center}.segmented label:first-child{border-left:none}.segmented label.on{background:var(--accent-soft);color:var(--accent-ink);font-weight:600}.segmented input{position:absolute;opacity:0;pointer-events:none}.segmented label:focus-within{outline:2px solid var(--accent);outline-offset:-2px}.range{display:flex;align-items:center;gap:10px}.range input{flex:1 1;accent-color:var(--accent);min-height:30px}.range output{font-family:var(--font-mono);font-size:12px;min-width:42px;text-align:right;color:var(--muted)}.color{display:flex;gap:8px;align-items:center}.color input[type=color]{width:42px;height:38px;padding:2px;border:1px solid var(--line);border-radius:8px;background:var(--bg);cursor:pointer;flex:none}.color input[type=text]{font-family:var(--font-mono)}fieldset.list{border:1px dashed var(--line);border-radius:10px;padding:10px 12px 12px;margin:0;display:grid;grid-gap:10px;gap:10px;min-width:0}.list-item{grid-template-columns:minmax(0,1fr) auto;align-items:end}.list-fields,.list-item{display:grid;grid-gap:8px;gap:8px}.list-fields{min-width:0}.list-ctl{display:flex;flex-direction:column;gap:2px}details.mini{border-top:1px solid var(--line);padding-top:10px}details.mini>summary{cursor:pointer;font-size:13px;color:var(--muted);min-height:32px;display:flex;align-items:center}.order{list-style:none;padding:0;margin:8px 0 0;display:grid;grid-gap:4px;gap:4px}.order li{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:8px;padding:4px 8px;font-size:14px}.row-actions{display:flex;gap:8px;flex-wrap:wrap}.presets{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:8px;gap:8px}.preset{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px 12px;display:grid;grid-gap:2px;gap:2px;cursor:pointer;min-height:74px}.preset small{color:var(--muted);font-size:12px;line-height:1.3}.preset.on,.preset:hover{border-color:var(--accent)}.preset.on{background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent) inset}.dots{display:flex;gap:4px}.dots i{width:12px;height:12px;border-radius:50%;display:block;border:1px solid rgba(0,0,0,.12)}.palettes{display:flex;flex-wrap:wrap;gap:8px}.swatch{width:32px;height:32px;border-radius:50%;border:2px solid var(--surface);box-shadow:0 0 0 1px var(--line);cursor:pointer;padding:0}.swatch.on{box-shadow:0 0 0 2px var(--accent)}.preview{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);padding:12px;display:grid;grid-gap:10px;gap:10px}.preview-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.preview-bar select{width:auto;min-width:190px}.seg-mini{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.seg-mini button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:var(--bg);color:var(--muted);font:inherit;font-size:13px;padding:6px 12px;cursor:pointer;min-height:36px}.seg-mini button+button{border-left:1px solid var(--line)}.seg-mini button.on{background:var(--accent-soft);color:var(--accent-ink);font-weight:600}.chip{font-family:var(--font-mono);font-size:11px;padding:3px 9px;border-radius:999px;border:1px solid var(--line);color:var(--muted);background:var(--surface-2)}.chip.live{color:var(--accent-ink);border-color:var(--accent)}.stage-frame{background:var(--surface-2);border-radius:12px;padding:14px;display:flex;justify-content:center}.stage-frame.phone .preview-frame{width:375px;max-width:100%;height:460px;border:10px solid #1b1b1d;border-radius:28px}.stage-frame.desktop .preview-frame{width:100%;max-width:660px;height:400px;border:1px solid var(--line);border-radius:10px}.preview-frame{background:#fff;display:block}.preview-empty{padding:60px 0;color:var(--muted)}.preview-note{font-size:12.5px;color:var(--faint)}.meters{display:grid;grid-gap:10px;gap:10px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);padding:14px}.meter-head{display:flex;justify-content:space-between;font-size:13px;color:var(--muted);margin-bottom:4px}.meter-bar{height:8px;border-radius:999px;background:var(--surface-2);overflow:hidden}.meter-bar i{display:block;height:100%;border-radius:999px;background:var(--good)}.meter-bar.warn i{background:var(--warn)}.meter-bar.bad i{background:var(--bad)}.fixes{gap:6px;font-size:13px}.fixes,.notice{display:flex;flex-wrap:wrap;align-items:center}.notice{font-size:13.5px;padding:9px 12px;border-radius:9px;border:1px solid var(--line);background:var(--surface-2);gap:8px}.notice.warn{border-color:color-mix(in srgb,var(--warn) 50%,var(--line));background:color-mix(in srgb,var(--warn) 9%,var(--surface))}.notice.bad{border-color:color-mix(in srgb,var(--bad) 55%,var(--line));background:color-mix(in srgb,var(--bad) 9%,var(--surface))}.notice.good{border-color:color-mix(in srgb,var(--good) 50%,var(--line));background:color-mix(in srgb,var(--good) 9%,var(--surface))}@font-face{font-family:mm-caveat;src:url(/fonts/Caveat.ttf) format("truetype");font-display:swap}@font-face{font-family:mm-dancing-script;src:url(/fonts/DancingScript.ttf) format("truetype");font-display:swap}@font-face{font-family:mm-great-vibes;src:url(/fonts/GreatVibes-Regular.ttf) format("truetype");font-display:swap}@font-face{font-family:mm-allura;src:url(/fonts/Allura-Regular.ttf) format("truetype");font-display:swap}@font-face{font-family:mm-sacramento;src:url(/fonts/Sacramento-Regular.ttf) format("truetype");font-display:swap}@font-face{font-family:mm-homemade-apple;src:url(/fonts/HomemadeApple-Regular.ttf) format("truetype");font-display:swap}@font-face{font-family:mm-yellowtail;src:url(/fonts/Yellowtail-Regular.ttf) format("truetype");font-display:swap}@font-face{font-family:mm-satisfy;src:url(/fonts/Satisfy-Regular.ttf) format("truetype");font-display:swap}@font-face{font-family:mm-mr-dafoe;src:url(/fonts/MrDafoe-Regular.ttf) format("truetype");font-display:swap}@font-face{font-family:mm-marck-script;src:url(/fonts/MarckScript-Regular.ttf) format("truetype");font-display:swap}.lbl{font-size:12.5px;font-weight:500;color:var(--muted)}.fonts{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:6px;gap:6px}.font-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:9px;padding:8px 10px;font-size:21px;line-height:1.2;cursor:pointer;text-align:left;min-height:46px}.font-btn.on,.font-btn:hover{border-color:var(--accent)}.font-btn.on{background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent) inset}.upload{display:grid;grid-gap:6px;gap:6px}.upload-row{display:flex;align-items:center;gap:12px}.upload-actions{display:flex;gap:6px;flex-wrap:wrap}.thumb{width:44px;height:44px;border-radius:8px;object-fit:cover;border:1px solid var(--line);background:repeating-conic-gradient(var(--surface-2) 0 25%,var(--bg) 0 50%) 50% /12px 12px;flex:none}.paint{display:flex;gap:8px;align-items:center}.paint select{flex:1 1}.paint input[type=color]{width:42px;height:38px;padding:2px;border:1px solid var(--line);border-radius:8px;background:var(--bg);flex:none}.pad{display:grid;grid-gap:8px;gap:8px}.pad-canvas{width:100%;height:150px;border:1px dashed var(--faint);border-radius:10px;background:var(--bg);color:var(--accent-ink);touch-action:none;cursor:crosshair}.stroke-preview{color:var(--accent-ink);background:var(--surface-2);border-radius:8px;padding:6px}.install{display:grid;grid-gap:14px;gap:14px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);padding:16px}.install-title{font-size:22px}.step{display:grid;grid-gap:10px;gap:10px;border-top:1px solid var(--line);padding-top:14px}.install>.step:first-of-type{border-top:none;padding-top:0}.step.disabled .row-actions{opacity:.85}.step-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}.step-head h3{font-size:18px}.chip.ok{color:var(--good);border-color:color-mix(in srgb,var(--good) 45%,var(--line))}.chip.bad{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 45%,var(--line))}.tabs-mini{display:flex;border:1px solid var(--line);border-radius:9px;overflow:hidden;flex-wrap:wrap}.tabs-mini button{flex:1 1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:var(--bg);color:var(--muted);font:inherit;font-size:13px;padding:8px 10px;cursor:pointer;min-height:38px}.tabs-mini button+button{border-left:1px solid var(--line)}.tabs-mini button.on{background:var(--accent-soft);color:var(--accent-ink);font-weight:600}.tabpanel{display:grid;grid-gap:10px;gap:10px}.inline{display:flex;gap:8px}.inline input{flex:1 1;min-width:0}.progress{font-size:13.5px;color:var(--accent-ink)}.guide-group{display:grid;grid-gap:6px;gap:6px}.guide{border:1px solid var(--line);border-radius:10px;padding:0 12px;background:var(--bg)}.guide>summary{cursor:pointer;padding:10px 0;font-size:14px;font-weight:500;min-height:40px}.guide ol{margin:0 0 8px;padding-left:20px;font-size:14px;color:var(--muted)}.guide li{margin:4px 0}.guide .row-actions{padding-bottom:12px}.phone-share{display:grid;grid-gap:10px;gap:10px}.phone-out{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-start}.phone-out img{border:1px solid var(--line);border-radius:10px;background:#fff}.mini-panel{background:var(--bg)}.versions{list-style:none;margin:0;padding:0;display:grid;grid-gap:6px;gap:6px}.versions li{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:13px;border:1px solid var(--line);border-radius:8px;padding:6px 10px}.versions li>span:last-child{display:flex;gap:4px}.phone{padding-top:32px;padding-bottom:48px;max-width:520px;display:grid;grid-gap:14px;gap:14px}.phone h1{font-size:30px}.phone-frame{width:100%;height:330px;border:1px solid var(--line);border-radius:12px;background:#fff}.btn.big{min-height:52px;font-size:16px;width:100%}.phone-steps{display:grid;grid-gap:18px;gap:18px;margin-top:12px}.phone-steps h2{font-size:18px;margin-bottom:6px}.phone-steps ol{margin:0;padding-left:20px;color:var(--muted)}.phone-steps li{margin:4px 0}.modal-backdrop{position:fixed;inset:0;z-index:100;background:rgba(20,16,10,.55);display:grid;place-items:center;padding:16px;overflow:auto}.modal{background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);width:min(760px,100%);padding:24px;display:grid;grid-gap:14px;gap:14px;max-height:calc(100dvh - 32px);overflow:auto}.modal h2{font-size:28px}.modal-actions{display:flex;justify-content:space-between;gap:10px;margin-top:4px}.ob-designs{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:10px;gap:10px}.ob-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:10px;cursor:pointer;display:grid;grid-gap:2px;gap:2px;align-content:start}.ob-card small{color:var(--muted);font-size:12px}.ob-card.on,.ob-card:hover{border-color:var(--accent)}.ob-card.on{background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent) inset}.ob-preview{display:block;height:120px;overflow:hidden;background:#fff;border-radius:8px;margin-bottom:6px;position:relative;pointer-events:none}.ob-preview>span{display:block;transform:scale(.42);transform-origin:top left;width:480px;padding:14px;color:#1c1b19}.ob-form{display:grid;grid-gap:12px;gap:12px}