:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#000;--surface:#0d0d10;--surface-2:#17171c;--surface-3:#212129;--line:#ffffff17;--line-strong:#ffffff29;--text:#fff;--text-2:#ffffff9e;--text-3:#ffffff61;--brand:#8b5cf6;--brand-2:#ec4899;--danger:#ff5f6d;--from:#2a2140;--to:#4c3a7a;--accent:var(--brand);--tg-inset-top:0px;--tg-inset-bottom:0px;--tg-inset-left:0px;--tg-inset-right:0px;--t-xs:11px;--t-sm:13px;--t-base:15px;--t-md:17px;--t-lg:21px;--t-xl:27px;--t-2xl:34px;--t-hero:clamp(30px, 9vw, 42px);--track-tight:-.022em;--track-tighter:-.034em;--track-wide:.06em;--lh-tight:1.15;--lh-snug:1.3;--lh-body:1.5;--w-regular:400;--w-medium:500;--w-semi:600;--w-bold:700;--w-black:820;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--r-xs:8px;--r-sm:12px;--r-md:16px;--r-lg:20px;--r-xl:28px;--r-pill:999px;--elev-1:0 1px 2px #0009, inset 0 1px 0 #ffffff0f;--elev-2:0 4px 14px -6px #000c, inset 0 1px 0 #ffffff12;--elev-3:0 12px 32px -12px #000000e6, inset 0 1px 0 #ffffff14;--elev-4:0 24px 60px -20px #000000f2, inset 0 1px 0 #ffffff1a;--glow-brand:0 8px 30px -10px #8b5cf68c;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--dur-1:.12s;--dur-2:.2s;--dur-3:.32s;--dur-4:.52s;--surface-0:#08080a;--pad:var(--space-4);--radius:var(--r-lg)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);height:100%;color:var(--text);-webkit-font-smoothing:antialiased;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif}#root{height:100%}button{font:inherit;color:inherit;cursor:pointer}.app{isolation:isolate;flex-direction:column;height:100dvh;display:flex;position:relative}.app:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(circle,#8b5cf629,#0000 68%);width:420px;height:420px;position:absolute;top:-180px;left:50%;transform:translate(-50%)}.app:after{content:"";pointer-events:none;z-index:-1;background:radial-gradient(circle,#ec48991a,#0000 68%);width:520px;height:520px;position:absolute;bottom:-140px;right:-160px}body:after{content:"";z-index:-1;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px 180px;position:fixed;inset:0}.apphead{align-items:center;gap:var(--space-3);padding:calc(var(--tg-inset-top) + var(--space-4)) var(--pad) var(--space-3);flex:none;display:flex}.apphead h1{font-size:var(--t-2xl);font-weight:var(--w-black);letter-spacing:var(--track-tighter);flex:1;margin:0}.appbody{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;padding:0 var(--pad) var(--space-6);animation:tab-in var(--dur-3) var(--ease-out);flex:1;overflow-y:auto}.appbody--bare{padding-top:0}@keyframes tab-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.tabbar{padding:9px 10px calc(var(--tg-inset-bottom) + 9px);background:var(--surface-0);border-top:1px solid var(--line);flex:none;gap:4px;display:flex;box-shadow:inset 0 -1px #ffffff0d}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.tabbar{-webkit-backdrop-filter:blur(22px)saturate(160%);backdrop-filter:blur(22px)saturate(160%);background:#08080ab8}}.tab{color:var(--text-3);background:0 0;border:none;border-radius:15px;flex-direction:column;flex:1;align-items:center;gap:4px;padding:8px 4px;transition:color .18s,background-color .18s;display:flex}.tab.on{color:var(--text);background:#8b5cf629}.tab.on .tab-icon{filter:drop-shadow(0 0 8px #8b5cf6b3)}.tab:active{transform:scale(.93)}.tab-icon{place-items:center;display:grid;position:relative}.tab-dot{background:var(--brand-2);width:7px;height:7px;box-shadow:0 0 6px var(--brand-2);border-radius:50%;position:absolute;top:-1px;right:-3px}.tab-label{letter-spacing:-.01em;font-size:11px;font-weight:600}.disc{gap:var(--space-6);display:grid}.hero{margin-inline:calc(var(--pad) * -1);background:linear-gradient(160deg, var(--from), var(--to));height:clamp(280px,40dvh,400px);position:relative;overflow:hidden}.hero-img{object-fit:cover;object-position:50% 15%;width:100%;height:100%;animation:ken-burns 12s var(--ease-in-out) infinite alternate;position:absolute;inset:0}@keyframes ken-burns{0%{transform:scale(1)}to{transform:scale(1.06)}}.hero-scrim{background:linear-gradient(#0000 24%,#00000014 38%,#00000052 54%,#000000a8 70%,#000000e6 86%,#000000f5 100%);position:absolute;inset:0}.hero-body{left:var(--pad);right:var(--pad);bottom:var(--space-5);gap:var(--space-1);justify-items:start;display:grid;position:absolute}.hero-eyebrow{font-size:var(--t-xs);font-weight:var(--w-bold);letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--accent)}.hero-name{font-size:var(--t-hero);font-weight:var(--w-black);line-height:var(--lh-tight);letter-spacing:var(--track-tighter);margin:0}.hero-sub{font-size:var(--t-sm);font-weight:var(--w-medium);color:var(--text-2);margin:0}.hero-tag{max-width:30ch;font-size:var(--t-base);line-height:var(--lh-snug);color:var(--text-2);margin:2px 0 0}.hero-cta{margin-top:var(--space-3);border-radius:var(--r-pill);color:#000;font-size:var(--t-base);font-weight:var(--w-bold);letter-spacing:var(--track-tight);box-shadow:var(--elev-3);transition:transform var(--dur-1) var(--ease-out);background:#fff;border:none;padding:13px 26px}.hero-cta:active{transform:scale(.955)}.hero-spill{background:radial-gradient(120% 60% at 50% 100%, var(--from), transparent 70%);opacity:.45;pointer-events:none;height:200px;position:absolute;bottom:-120px;left:0;right:0}.create-cta{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-radius:var(--r-xl);background:linear-gradient(135deg, var(--brand), var(--brand-2));color:#fff;text-align:left;box-shadow:var(--glow-brand);transition:transform var(--dur-1) var(--ease-out);border:none;display:flex}.create-cta:active{transform:scale(.98)}.create-cta-plus{width:42px;height:42px;font-size:24px;font-weight:var(--w-regular);background:#fff3;border-radius:50%;flex:none;place-items:center;line-height:1;display:grid}.create-cta strong{font-size:var(--t-md);font-weight:var(--w-bold);letter-spacing:var(--track-tight);display:block}.create-cta-sub{font-size:var(--t-sm);color:#ffffffc7;margin-top:2px;display:block}.grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=560px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.pcard{aspect-ratio:2/3;border-radius:var(--r-md);background:linear-gradient(160deg, var(--from) 0%, var(--to) 100%);box-shadow:var(--elev-2);animation:rise var(--dur-3) var(--ease-out) backwards;animation-delay:calc(min(var(--i,0), 6) * 40ms);position:relative;overflow:hidden}.pcard-img{object-fit:cover;object-position:50% 12%;width:100%;height:100%;position:absolute;inset:0}.pcard:after{content:"";border-radius:inherit;border:1px solid var(--line-strong);pointer-events:none;position:absolute;inset:0}.pcard-hit{text-align:left;background:0 0;border:none;width:100%;height:100%;padding:0;transition:transform .2s cubic-bezier(.22,1,.36,1);display:block;position:absolute;inset:0}.pcard-hit:active{transform:scale(.96)}.pattern{color:#fff;opacity:.15;width:100%;height:100%;position:absolute;inset:0}.pcard-glyph{opacity:.55;filter:drop-shadow(0 4px 14px #00000080);pointer-events:none;font-size:54px;line-height:1;position:absolute;top:16%;left:50%;transform:translate(-50%)rotate(-8deg)}.pcard-scrim{background:linear-gradient(#0000 28%,#0000001a 42%,#0000004d 56%,#0000009e 72%,#000000db 88%,#000000eb 100%);position:absolute;inset:0}.pcard-body{left:var(--space-3);right:var(--space-3);bottom:var(--space-3);color:#fff;display:grid;position:absolute}.pcard-name{font-size:var(--t-md);font-weight:var(--w-bold);line-height:var(--lh-tight);letter-spacing:var(--track-tight);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pcard-sub{font-size:var(--t-xs);font-weight:var(--w-medium);line-height:var(--lh-snug);color:#ffffffa8;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pcard-tag{font-size:var(--t-sm);font-weight:var(--w-regular);line-height:var(--lh-snug);color:#ffffffbd;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;overflow:hidden}.pcard-del{color:#fff;background:#0006;border:1px solid #ffffff24;border-radius:50%;place-items:center;width:30px;height:30px;transition:transform .16s,color .16s;display:grid;position:absolute;top:9px}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.pcard-del{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000047}}.pcard-del{left:9px}.pcard-del:active{color:var(--danger);transform:scale(.85)}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.chatlist{gap:9px;margin:0;padding:0;list-style:none;display:grid}.chatrow{border:1px solid var(--line);background:var(--surface);width:100%;box-shadow:var(--elev-1);text-align:left;transition:background-color var(--dur-2) var(--ease-out);border-radius:17px;align-items:center;gap:13px;padding:13px 14px;display:flex}.chatrow:active{background:var(--surface-2)}.chatrow-avatar{background:linear-gradient(140deg, var(--from), var(--to));border:1px solid var(--line-strong);border-radius:50%;flex:none;place-items:center;width:46px;height:46px;font-size:21px;display:grid}.chatrow-body{flex:1;gap:3px;min-width:0;display:grid}.chatrow-top{align-items:baseline;gap:8px;display:flex}.chatrow-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:15px;font-weight:650;overflow:hidden}.chatrow-time{color:var(--text-3);flex:none;font-size:11.5px}.chatrow-snippet{color:var(--text-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.38;display:-webkit-box;overflow:hidden}.prof-head{justify-items:center;gap:4px;padding:12px 0 24px;display:grid}.prof-avatar{object-fit:cover;border:1px solid var(--line-strong);border-radius:50%;width:78px;height:78px;margin-bottom:10px}.prof-initial{background:linear-gradient(140deg, var(--brand), var(--brand-2));color:#fff;box-shadow:0 10px 30px -12px var(--brand);place-items:center;font-size:30px;font-weight:700;display:grid}.prof-name{letter-spacing:-.02em;margin:0;font-size:21px;font-weight:700}.prof-handle{color:var(--text-3);margin:0;font-size:14px}.panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--elev-1);padding:17px}.panel-row{color:var(--text-2);justify-content:space-between;align-items:baseline;font-size:15px;display:flex}.panel-num{color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:24px;font-weight:800}.meter{background:var(--surface-3);border-radius:999px;height:8px;margin:13px 0 9px;overflow:hidden}.meter span{border-radius:inherit;background:linear-gradient(90deg, var(--brand), var(--brand-2));height:100%;transition:width .5s cubic-bezier(.22,1,.36,1);display:block;box-shadow:0 0 12px #8b5cf699}.panel-note{color:var(--text-3);margin:0;font-size:12px}.stats{grid-template-columns:repeat(3,1fr);gap:9px;margin-top:12px;display:grid}.stat{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--elev-1);text-align:center;gap:3px;padding:15px 8px;display:grid}.stat strong{letter-spacing:-.02em;font-size:20px;font-weight:700}.stat span{color:var(--text-3);font-size:11.5px}.empty{max-width:260px;color:var(--text-3);text-align:center;margin:56px auto;font-size:14px;line-height:1.55}.credits{border:1px solid var(--line);background:var(--surface);font-variant-numeric:tabular-nums;border-radius:999px;flex:none;align-items:center;gap:7px;padding:7px 13px;font-size:13px;font-weight:700;display:inline-flex}.credits-dot{background:var(--accent);width:7px;height:7px;box-shadow:0 0 9px var(--accent);border-radius:50%}.screen{min-height:100dvh;padding:calc(var(--tg-inset-top) + 20px) calc(var(--tg-inset-right) + var(--pad)) calc(var(--tg-inset-bottom) + 20px) calc(var(--tg-inset-left) + var(--pad));justify-content:center;align-items:center;display:flex}.card{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);width:100%;max-width:420px;padding:26px}.card h1{letter-spacing:-.02em;margin:0 0 8px;font-size:21px}.center{text-align:center}.glyph{margin-bottom:14px;font-size:44px;line-height:1}.hint{color:var(--text-2);margin:0;font-size:14px;line-height:1.5}.hint.small{color:var(--text-3);font-size:12px}.button{background:linear-gradient(135deg, var(--brand), var(--brand-2));color:#fff;box-shadow:0 8px 26px -10px var(--brand);border-radius:14px;margin-top:20px;padding:14px 28px;font-size:15px;font-weight:650;text-decoration:none;display:inline-block}.code{background:var(--surface-2);color:var(--text-2);border-radius:8px;margin-top:12px;padding:5px 10px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;display:inline-block}.chat{isolation:isolate;background:var(--bg);flex-direction:column;height:100dvh;display:flex;position:relative}.chat:before{content:"";background-image:var(--portrait,none);z-index:-2;background-position:top;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.chat:after{content:"";z-index:-1;background:linear-gradient(#0000009e 0,#0000 112px),linear-gradient(0deg,#000c 0,#0000 168px);position:absolute;inset:0}.chat-head{top:var(--tg-inset-top);z-index:2;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);pointer-events:none;display:flex;position:absolute;left:0;right:0}.chat-head>*{pointer-events:auto}.chat-back,.chat-more,.chat-pill{box-shadow:var(--elev-2);background:#00000052;border:1px solid #ffffff1a}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.chat-back,.chat-more,.chat-pill{-webkit-backdrop-filter:blur(14px)saturate(150%);backdrop-filter:blur(14px)saturate(150%)}}.chat-back,.chat-more{color:#ffffffdb;width:36px;height:36px;transition:transform var(--dur-1) var(--ease-out);border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.chat-more{margin-left:auto}.chat-pill{align-items:center;gap:var(--space-2);border-radius:var(--r-pill);min-width:0;max-width:calc(100% - 96px);padding:3px 14px 3px 3px;display:inline-flex}.chat-avatar{background:linear-gradient(140deg, var(--from), var(--to));border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-size:14px;display:grid;overflow:hidden}.chat-id{min-width:0;display:grid}.chat-id strong{font-size:14px;font-weight:var(--w-semi);line-height:var(--lh-tight);letter-spacing:var(--track-tight);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-tag{font-size:var(--t-xs);line-height:var(--lh-tight);color:#fff9;text-overflow:ellipsis;white-space:nowrap;animation:fade-in var(--dur-3) var(--ease-out);overflow:hidden}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.ghost{color:var(--text-3);background:0 0;border:none;border-radius:9px;padding:6px 9px;font-size:18px}.ghost:active{background:var(--surface-2);color:var(--text)}.chat-back:active,.chat-more:active{transform:scale(.9)}.messages{overscroll-behavior:contain;padding:calc(var(--tg-inset-top) + 60px) var(--space-4) var(--space-4);flex-direction:column;flex:1;gap:9px;display:flex;overflow-y:auto}.bubble{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:20px;max-width:84%;padding:11px 15px;font-size:15px;line-height:1.5;animation:.24s cubic-bezier(.22,1,.36,1) pop}.bubble.user{background:var(--accent);background:linear-gradient(135deg, var(--accent), color-mix(in srgb, var(--accent) 62%, #000));color:#fff;border-bottom-right-radius:7px;align-self:flex-end}.bubble.assistant{border:1px solid var(--line);background:var(--surface);border-bottom-left-radius:7px;align-self:flex-start}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.bubble.assistant{-webkit-backdrop-filter:blur(16px)saturate(140%);backdrop-filter:blur(16px)saturate(140%);background:#0d0d10b8}}.bubble.greeting{border-style:dashed;border-color:var(--accent);border-color:color-mix(in srgb, var(--accent) 40%, transparent);color:var(--text-2)}@keyframes pop{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}.typing{gap:5px;padding:16px 17px;display:flex}.typing span{background:var(--accent);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite blink}.typing span:nth-child(2){animation-delay:.18s}.typing span:nth-child(3){animation-delay:.36s}@keyframes blink{0%,60%,to{opacity:.24;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.error-line{color:var(--danger);text-align:center;background:#ff5f6d1a;border:1px solid #ff5f6d47;border-radius:11px;align-self:center;margin:4px 0;padding:7px 13px;font-size:13px}.credit-warn{margin:0 0 var(--space-2);border-radius:var(--r-pill);color:var(--danger);font-size:var(--t-xs);font-weight:var(--w-semi);background:#ff5f6d1f;border:1px solid #ff5f6d4d;flex:none;align-self:center;padding:5px 13px}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.credit-warn{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}}.sheet-root{z-index:20;flex-direction:column;justify-content:flex-end;display:flex;position:fixed;inset:0}.sheet-scrim{animation:fade-in var(--dur-2) var(--ease-out);background:#0009;border:none;padding:0;position:absolute;inset:0}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.sheet-scrim{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}}.sheet{gap:var(--space-1);padding:var(--space-2) var(--space-4) calc(var(--tg-inset-bottom) + var(--space-4));border-top:1px solid var(--line);border-radius:var(--r-xl) var(--r-xl) 0 0;background:var(--surface);box-shadow:var(--elev-4);animation:sheet-up var(--dur-3) var(--ease-out);display:grid;position:relative}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:none}}.sheet-grip{width:36px;height:4px;margin-bottom:var(--space-2);border-radius:var(--r-pill);background:var(--line-strong);justify-self:center}.sheet-title{margin:0 0 var(--space-1);padding:0 var(--space-2);font-size:var(--t-xs);font-weight:var(--w-semi);letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--text-3)}.sheet-action{padding:15px var(--space-4);border-radius:var(--r-md);background:var(--surface-2);font-size:var(--t-base);font-weight:var(--w-medium);text-align:left;transition:background-color var(--dur-1) var(--ease-out);border:none}.sheet-action:active{background:var(--surface-3)}.sheet-action.danger{color:var(--danger)}@media (prefers-reduced-motion:reduce){.sheet,.sheet-scrim,.chat-tag{animation:none}}.composer{padding:8px 12px calc(var(--tg-inset-bottom) + 10px);background:0 0;border:none;flex:none;align-items:center;gap:9px;display:flex}.composer input{min-width:0;color:var(--text);font:inherit;background:#121216eb;border:1px solid #ffffff24;border-radius:24px;flex:1;padding:12px 17px;font-size:15px}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.composer input{-webkit-backdrop-filter:blur(18px)saturate(150%);backdrop-filter:blur(18px)saturate(150%);background:#12121699}}.composer input::placeholder{color:var(--text-3)}.composer input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent);outline:none}.composer button{background:var(--accent);color:#fff;width:44px;height:44px;box-shadow:0 6px 20px -8px var(--accent);border:none;border-radius:50%;flex:none;font-size:19px;transition:opacity .15s,transform .15s}.composer button:active:not(:disabled){transform:scale(.9)}.composer button:disabled{opacity:.28;box-shadow:none;cursor:default}.scene{color:var(--text-3);font-style:italic}.bubble.assistant .scene{color:color-mix(in srgb, var(--accent) 72%, #fff);opacity:.85}.bubble.user .scene{color:#ffffffb8}.inline-code{background:#ffffff1a;border-radius:6px;padding:2px 6px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.9em}.form{gap:17px;padding-bottom:8px;display:grid}.preview{aspect-ratio:16/9;border:1px solid var(--line-strong);border-radius:var(--radius);background:linear-gradient(160deg, var(--from), var(--to));position:relative;overflow:hidden}.preview-glyph{opacity:.55;filter:drop-shadow(0 6px 18px #00000080);font-size:56px;line-height:1;position:absolute;top:13%;left:50%;transform:translate(-50%)rotate(-8deg)}.preview-scrim{background:linear-gradient(#0000 36%,#0000008c 68%,#000000eb 100%);position:absolute;inset:0}.preview-body{color:#fff;gap:2px;display:grid;position:absolute;bottom:13px;left:15px;right:15px}.field{gap:8px;display:grid}.field>span{letter-spacing:.01em;color:var(--text-2);justify-content:space-between;align-items:baseline;font-size:12.5px;font-weight:650;display:flex}.count{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:11px;font-style:normal;font-weight:500}.field input,.field textarea{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);width:100%;box-shadow:var(--elev-1);color:var(--text);font:inherit;font-size:var(--t-base);resize:vertical;padding:13px 15px}.field textarea{min-height:150px;line-height:1.55}.field input:focus,.field textarea:focus{border-color:var(--brand);outline:none;box-shadow:0 0 0 3px #8b5cf638}.field input::placeholder,.field textarea::placeholder{color:var(--text-3)}.emoji-row,.pal-row{flex-wrap:wrap;gap:9px;display:flex}.emoji{border:1px solid var(--line);background:var(--surface);border-radius:13px;width:44px;height:44px;font-size:20px;transition:border-color .15s}.emoji.on{border-color:var(--brand);box-shadow:0 0 0 3px #8b5cf633}.pal{border:1px solid var(--line-strong);border-radius:13px;width:44px;height:44px}.pal.on{box-shadow:0 0 0 3px #ffffffd9}.form-note{color:var(--text-3);margin:0;font-size:12px;line-height:1.5}.submit{background:linear-gradient(135deg, var(--brand), var(--brand-2));color:#fff;letter-spacing:-.01em;box-shadow:0 10px 30px -12px var(--brand);border:none;border-radius:16px;padding:16px;font-size:16px;font-weight:700;transition:transform .15s}.submit:disabled{opacity:.32;box-shadow:none}.submit:active:not(:disabled){transform:scale(.98)}.sk{border-radius:var(--r-md);background:linear-gradient(#121216,#0c0c0f);display:block;position:relative;overflow:hidden}.sk:after{content:"";background:linear-gradient(105deg,#0000 35%,#ffffff0e 50%,#0000 65%) 0 0/250% 100%;animation:1.5s ease-in-out infinite sweep;position:absolute;inset:0}.disc-sk{gap:var(--space-6);display:grid}.sk-hero{margin-inline:calc(var(--pad) * -1);border-radius:0;height:clamp(280px,40dvh,400px)}.sk-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.sk-card{aspect-ratio:2/3}.msg-sk{gap:9px;display:grid}.sk-bubble{border-radius:var(--r-lg);height:46px}.sk-bubble.left{border-bottom-left-radius:7px;justify-self:start}.sk-bubble.right{border-bottom-right-radius:7px;justify-self:end}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.hero-img,.creating-shimmer,.spinner,.sk:after{animation:none}.typing span{opacity:.6}}.chatrow-avatar img,.chat-avatar img{border-radius:inherit;object-fit:cover;width:100%;height:100%}.preview{background:linear-gradient(160deg,#2a2140,#4c3a7a)}.preview-badge{color:#ffffffd9;background:#0000006b;border:1px solid #ffffff2e;border-radius:999px;padding:5px 11px;font-size:11px;font-weight:600;position:absolute;top:12px;left:14px}.creating{justify-items:center;gap:20px;padding:32px 0;display:grid}.creating-card{aspect-ratio:3/4;border:1px solid var(--line-strong);border-radius:var(--radius);background:linear-gradient(160deg,#2a2140,#4c3a7a);width:100%;max-width:260px;position:relative;overflow:hidden}.creating-shimmer{background:linear-gradient(105deg,#0000 35%,#ffffff29 50%,#0000 65%) 0 0/250% 100%;animation:1.6s ease-in-out infinite sweep;position:absolute;inset:0}@keyframes sweep{0%{background-position:150% 0}to{background-position:-50% 0}}.creating-status{text-align:left;align-items:center;gap:13px;display:flex}.creating-status strong{letter-spacing:-.01em;font-size:16px}.spinner{border:2.5px solid #ffffff29;border-top-color:var(--brand);border-radius:50%;flex:none;width:22px;height:22px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.creating-shimmer,.spinner{animation:none}.spinner{border-top-color:var(--brand)}}.field input.invalid,.field textarea.invalid{border-color:var(--danger)}.field input.invalid:focus{box-shadow:0 0 0 3px #ff5f6d33}.field-error{font-size:var(--t-sm);color:var(--danger)}.field-hint{font-size:var(--t-sm);line-height:var(--lh-snug);color:var(--text-3)}.field-hint strong{font-weight:var(--w-semi);color:var(--text-2)}.field input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.field input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.field input[type=number]{appearance:textfield}
