@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/f7095de3000afb68-s.2ytmazkdrg7t9.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/e63b65bb308a9351-s.p.3j3877k49yy0l.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/125b6750c58ce347-s.1icgra-w5i50b.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d902bc2bfdd0a4cb-s.p.1g73gv09-xcb6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif Fallback;src:local(Times New Roman);ascent-override:117.94%;descent-override:36.93%;line-gap-override:0.0%;size-adjust:83.94%}.kWJ2sq_className{font-family:Instrument Serif,Instrument Serif Fallback;font-weight:400}.kWJ2sq_variable{--font-instrument:"Instrument Serif", "Instrument Serif Fallback"}
@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/cef8ac2c062f1b0a-s.35p9_4tnsm_o4.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/c6e22b45cfe1c763-s.1q0qwmqzyniyk.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/158ff596bf2cbebe-s.02gir8avbbwr_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/52e514cb9d030258-s.3hqxvms4e79hg.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/d66ba39e135c9aa7-s.1xbprfp_s2_ea.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/f44e0976e40b7eea-s.1e3bxj0ebt1gg.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4a0b7dd978568ff2-s.p.3fofz6dws3mg0.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Tight Fallback;src:local(Arial);ascent-override:100.51%;descent-override:25.03%;line-gap-override:0.0%;size-adjust:96.39%}.FpUiia_className{font-family:Inter Tight,Inter Tight Fallback;font-style:normal}.FpUiia_variable{--font-inter:"Inter Tight", "Inter Tight Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/258bd0ab5fdd762a-s.2f7nqdagzwx2-.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/99a2019bdfa8519b-s.176arc174-8zp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/44e0cb21b0d052b7-s.0bp8oijd_gu96.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/f9cd5a77d065db98-s.1fby2rem9ngyr.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/954d21e04331b2ae-s.0vfdmo25voy_0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/53897e768d329f66-s.p.3t6q91iet4nsy.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.U4dSUa_className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.U4dSUa_variable{--font-mono-face:"JetBrains Mono", "JetBrains Mono Fallback"}
:root{--bg:#0e0d0c;--panel:#161513;--panel-2:#1d1b19;--line:#2a2724;--line-strong:#3a3632;--text:#f2ede6;--muted:#9a928a;--faint:#7a726b;--accent:#ff6a2b;--accent-ink:#1a0b03;--ok:#7fd18b;--bad:#ff6b6b;--radius:14px;--radius-sm:9px;--font-display:var(--font-instrument), Georgia, serif;--font-ui:var(--font-inter), system-ui, sans-serif;--font-mono:var(--font-mono-face), ui-monospace, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;min-height:100dvh;font-size:15px;line-height:1.5}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sr-only{clip:rect(0,0,0,0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.topbar{z-index:20;background:color-mix(in srgb, var(--bg) 85%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);align-items:center;gap:16px;padding:12px 24px;display:flex;position:sticky;top:0}.brand{align-items:baseline;gap:10px;text-decoration:none;display:flex}.brand-mark{font-family:var(--font-display);letter-spacing:-.01em;font-size:26px}.brand-mark em{color:var(--accent);font-style:italic}.brand-tag{font-family:var(--font-mono);color:var(--faint);text-transform:uppercase;letter-spacing:.12em;font-size:11px}.topbar-spacer{flex:1}.topbar-meta{font-family:var(--font-mono);color:var(--muted);font-size:12px}.topbar-link{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;min-height:36px;padding:6px 10px;font-size:13px;text-decoration:none;display:inline-flex}.topbar-link:hover{color:var(--text);background:var(--panel-2)}.studio{grid-template-columns:380px 1fr;gap:24px;max-width:1600px;margin:0 auto;padding:24px;display:grid}@media (max-width:900px){.studio{grid-template-columns:1fr;gap:16px;padding:16px}.topbar{padding:10px 16px}.brand-tag,.topbar-meta{display:none}}.composer{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;align-self:start;gap:16px;max-height:calc(100dvh - 100px);padding:18px;display:flex;position:sticky;top:76px;overflow:auto}@media (max-width:900px){.composer{max-height:none;position:static}}.label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:8px;font-size:11px;display:block}.kind-switch{background:var(--panel-2);border:1px solid var(--line);border-radius:10px;grid-template-columns:1fr 1fr;padding:3px;display:grid}.kind-switch button{cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:8px;padding:8px;font-weight:500}.kind-switch button[aria-pressed=true]{background:var(--text);color:var(--bg)}.model-list{flex-direction:column;gap:6px;display:flex}.model-card{text-align:left;cursor:pointer;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 12px}.model-card:hover{border-color:var(--line-strong)}.model-card[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.model-card strong{font-size:14px;font-weight:600;display:block}.model-card span{color:var(--muted);font-size:12px;display:block}textarea.prompt,.input{background:var(--bg);border:1px solid var(--line-strong);border-radius:var(--radius-sm);resize:vertical;width:100%;padding:10px 12px}textarea.prompt{min-height:120px;line-height:1.45}textarea.prompt:focus,.input:focus{border-color:var(--accent);outline:none}.counter{font-family:var(--font-mono);color:var(--faint);text-align:right;margin-top:4px;font-size:11px}.fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.field-wide{grid-column:1/-1}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--line-strong);cursor:pointer;color:var(--muted);background:0 0;border-radius:999px;min-height:30px;padding:4px 10px;font-size:13px}.chip[aria-pressed=true]{background:var(--text);color:var(--bg);border-color:var(--text)}input[type=range]{width:100%;accent-color:var(--accent)}.toggle{cursor:pointer;align-items:center;gap:8px;font-size:14px;display:flex}.toggle input{accent-color:var(--accent);width:16px;height:16px}.drop{border:1px dashed var(--line-strong);border-radius:var(--radius-sm);text-align:center;color:var(--muted);cursor:pointer;background:0 0;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;width:100%;min-height:88px;padding:14px;font-size:13px;display:flex}.drop[data-over=true]{border-color:var(--accent);color:var(--text)}.drop img{border-radius:6px;max-width:100%;max-height:120px}.drop-clear{color:var(--muted);cursor:pointer;background:0 0;border:0;margin-top:6px;font-size:12px;text-decoration:underline}.btn{border:1px solid var(--line-strong);background:var(--panel-2);color:var(--text);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:9px 14px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--muted)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:650}.btn-primary:hover{filter:brightness(1.08);border-color:var(--accent)}.btn-big{width:100%;padding:13px;font-size:15px}.btn-ghost{color:var(--muted);background:0 0;border-color:#0000}.btn-ghost:hover{color:var(--text);border-color:var(--line)}.btn-danger{color:var(--bad)}.btn-sm{min-height:32px;padding:5px 10px;font-size:13px}.quota{font-family:var(--font-mono);color:var(--muted);justify-content:space-between;font-size:11px;display:flex}.quota-bar{background:var(--line);border-radius:2px;height:3px;margin-top:6px;overflow:hidden}.quota-bar>i{background:var(--accent);height:100%;display:block}.alert{border-radius:var(--radius-sm);padding:10px 12px;font-size:13px}.alert-bad{background:color-mix(in srgb, var(--bad) 12%, transparent);color:#ffc9c9;border:1px solid color-mix(in srgb, var(--bad) 35%, transparent)}.alert-ok{background:color-mix(in srgb, var(--ok) 12%, transparent);color:#d2f5d7;border:1px solid color-mix(in srgb, var(--ok) 35%, transparent)}.gallery-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px;margin-bottom:16px;display:flex}.gallery-title{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:40px;font-weight:400;line-height:1}.gallery-title em{color:var(--accent)}.tabs{background:var(--panel);border:1px solid var(--line);border-radius:10px;gap:4px;padding:3px;display:flex}.tabs button{cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:8px;min-height:32px;padding:6px 12px;font-size:13px}.tabs button[aria-pressed=true]{background:var(--panel-2);color:var(--text)}.grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;display:flex;overflow:hidden}.card-media{aspect-ratio:4/5;background:var(--panel-2);cursor:zoom-in;border:0;place-items:center;width:100%;padding:0;display:grid;position:relative}.card-media img,.card-media video{object-fit:cover;width:100%;height:100%;display:block}.card-media .count,.card-media .play{font-family:var(--font-mono);background:#0009;border-radius:6px;padding:2px 6px;font-size:11px;position:absolute}.card-media .count{top:8px;right:8px}.card-media .play{bottom:8px;left:8px}.card-body{flex-direction:column;gap:6px;padding:10px 12px 12px;display:flex}.card-prompt{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:13px;display:-webkit-box;overflow:hidden}.card-meta{font-family:var(--font-mono);color:var(--faint);justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.card-meta span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pending{background:linear-gradient(110deg, transparent 30%, #ff6a2b14 50%, transparent 70%) var(--panel-2);width:100%;height:100%;font-family:var(--font-mono);color:var(--muted);text-transform:uppercase;letter-spacing:.1em;background-size:250% 100%;flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:12px;animation:2.2s linear infinite sweep;display:flex}.pending .dot{background:var(--accent);border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite pulse}.failed-box{color:#ffc9c9;text-align:center;padding:16px;font-size:13px}@keyframes sweep{0%{background-position:100% 0}to{background-position:-150% 0}}@keyframes pulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.pending,.pending .dot{animation:none}}.empty{border:1px dashed var(--line-strong);border-radius:var(--radius);text-align:center;color:var(--muted);padding:48px 24px}.empty h3{font-family:var(--font-display);color:var(--text);margin:0 0 6px;font-size:28px;font-weight:400}.more{justify-content:center;margin-top:18px;display:flex}.lightbox{z-index:50;background:#050504f0;grid-template-columns:1fr 340px;display:grid;position:fixed;inset:0}.lightbox-stage{flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:0;padding:24px;display:flex}.lightbox-stage img,.lightbox-stage video{border-radius:8px;max-width:100%;max-height:calc(100dvh - 110px)}.thumbs{gap:6px;display:flex}.thumbs button{cursor:pointer;background:0 0;border:2px solid #0000;border-radius:6px;width:52px;height:52px;padding:0;overflow:hidden}.thumbs button[aria-pressed=true]{border-color:var(--accent)}.thumbs img{object-fit:cover;width:100%;height:100%}.lightbox-side{background:var(--panel);border-left:1px solid var(--line);flex-direction:column;gap:14px;padding:20px;display:flex;overflow:auto}.lightbox-side p{white-space:pre-wrap;margin:0;font-size:14px}.kv{font-family:var(--font-mono);grid-template-columns:auto 1fr;gap:4px 12px;margin:0;font-size:12px;display:grid}.kv dt{color:var(--faint)}.kv dd{color:var(--muted);word-break:break-word;margin:0}.side-actions{flex-wrap:wrap;gap:8px;display:flex}@media (max-width:900px){.lightbox{grid-template-rows:1fr auto;grid-template-columns:1fr}.lightbox-side{border-left:0;border-top:1px solid var(--line);max-height:45dvh}.lightbox-stage img,.lightbox-stage video{max-height:48dvh}}.login-wrap{grid-template-columns:1.1fr 1fr;min-height:100dvh;display:grid}.login-art{border-right:1px solid var(--line);background:radial-gradient(60% 50% at 30% 30%, #ff6a2b59, transparent 70%), radial-gradient(50% 60% at 80% 80%, #ffbe7826, transparent 70%), var(--panel);align-items:flex-end;padding:48px;display:flex;position:relative;overflow:hidden}.login-art h1{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:clamp(48px,6vw,88px);font-weight:400;line-height:.95}.login-art h1 em{color:var(--accent)}.login-form{justify-content:center;align-items:center;padding:32px 16px;display:flex}.login-form form{flex-direction:column;gap:14px;width:100%;max-width:360px;display:flex}.login-form h2{margin:0 0 4px;font-size:20px}.login-form .sub{color:var(--muted);margin:0 0 10px;font-size:14px}@media (max-width:800px){.login-wrap{grid-template-columns:1fr}.login-art{border-right:0;border-bottom:1px solid var(--line);min-height:200px;padding:24px}}.admin{flex-direction:column;gap:24px;max-width:1100px;margin:0 auto;padding:24px;display:flex}.admin h1{font-family:var(--font-display);margin:0;font-size:40px;font-weight:400}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.panel h2{margin:0 0 14px;font-size:16px}.form-row{grid-template-columns:1.2fr 1fr 1fr .7fr auto;align-items:end;gap:10px;display:grid}@media (max-width:800px){.form-row{grid-template-columns:1fr}.admin{padding:16px}}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--faint);border-bottom:1px solid var(--line);padding:8px;font-size:11px;font-weight:500}td{border-bottom:1px solid var(--line);vertical-align:middle;padding:10px 8px}td.num,th.num{font-family:var(--font-mono);text-align:right}.badge{font-family:var(--font-mono);border:1px solid var(--line-strong);color:var(--muted);border-radius:6px;padding:2px 7px;font-size:11px}.badge-admin{border-color:var(--accent);color:var(--accent)}.badge-off{color:var(--bad);border-color:color-mix(in srgb, var(--bad) 40%, transparent)}.row-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.muted{color:var(--muted)}
