*,:before,:after{box-sizing:border-box}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#e2e8f0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#080d1a;font-family:-apple-system,PingFang SC,Noto Sans SC,Segoe UI,system-ui,sans-serif;font-size:16px;line-height:1.5}body{margin:0}#root{width:100%;min-height:100svh}h1,h2,h3{color:#f1f5f9;margin:0;font-weight:700}p{margin:0}code{color:#94a3b8;background:#ffffff0f;border-radius:4px;padding:2px 6px;font-family:SF Mono,Fira Code,ui-monospace,Consolas,monospace;font-size:.875em}button{font-family:inherit}.auth-user{position:relative}.auth-avatar-btn{cursor:pointer;color:#e2e8f0;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:20px;align-items:center;gap:8px;padding:4px 12px 4px 4px;font-size:13px;transition:background .15s;display:flex}.auth-avatar-btn:hover{background:#ffffff14}.auth-avatar{object-fit:cover;border-radius:50%;width:28px;height:28px}.auth-avatar-fallback{color:#fff;background:linear-gradient(135deg,#8b8bff,#ff94db);border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:700;display:flex}.auth-username{color:#f1f5f9;font-weight:600}.auth-chevron{color:#64748b;font-size:10px}.auth-dropdown{z-index:200;background:#0f172a;border:1px solid #ffffff1a;border-radius:12px;min-width:160px;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 8px 32px #00000080}.auth-menu-item{text-align:left;color:#94a3b8;cursor:pointer;background:0 0;border:none;width:100%;padding:11px 16px;font-family:inherit;font-size:14px;text-decoration:none;transition:background .1s,color .1s;display:block}.auth-menu-item:hover{color:#f1f5f9;background:#ffffff0d}.auth-menu-item.danger:hover{color:#ef4444;background:#ef44441a}.auth-login{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.auth-hint{color:#475569;font-size:12px}.auth-btn{color:#e2e8f0;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-family:inherit;font-size:13px;font-weight:600;transition:all .15s;display:flex}.auth-btn:hover{background:#ffffff14}.navbar{-webkit-backdrop-filter:blur(20px)saturate(180%);backdrop-filter:blur(20px)saturate(180%);z-index:100;background:#0a0a0ad9;border-bottom:1px solid #ffffff12;align-items:center;gap:32px;height:60px;padding:0 32px;display:flex;position:fixed;top:0;left:0;right:0}.navbar-brand{flex-shrink:0;align-items:center;gap:10px;text-decoration:none;display:flex}.navbar-logo{font-size:20px;line-height:1}.navbar-title{color:#fff;letter-spacing:-.02em;font-family:Syne,system-ui,sans-serif;font-size:17px;font-weight:800}.navbar-links{flex:1;gap:2px;display:flex}.nav-link{color:#fff6;border-radius:8px;padding:6px 14px;font-family:Nunito,system-ui,sans-serif;font-size:14px;font-weight:600;text-decoration:none;transition:all .15s}.nav-link:hover{color:#ffffffd9;background:#ffffff0f}.nav-link.active{color:#fff;background:#ffffff1a}.navbar-auth{align-items:center;gap:8px;margin-left:auto;display:flex}.nav-settings-btn{cursor:pointer;opacity:.4;color:#fff;background:0 0;border:none;border-radius:8px;padding:6px 8px;font-size:16px;line-height:1;transition:background .15s}.nav-settings-btn:hover{opacity:1;background:#ffffff14}@media (width<=600px){.navbar{padding:0 16px}.navbar-links{display:none}}.nav-signin-btn{color:#000;letter-spacing:.01em;background:#fff;border-radius:9999px;padding:7px 16px;font-family:Nunito,system-ui,sans-serif;font-size:13px;font-weight:700;text-decoration:none;transition:filter .15s,transform .15s}.nav-signin-btn:hover{filter:brightness(.92);transform:translateY(-1px)}.settings-overlay{z-index:300;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:flex-end;align-items:flex-end;display:flex;position:fixed;inset:0}.settings-panel{background:#0f172a;border:1px solid #ffffff14;border-radius:20px 0 0 20px;flex-direction:column;gap:0;width:340px;max-width:100vw;height:100vh;padding:24px;animation:.25s cubic-bezier(.34,1.2,.64,1) slideInRight;display:flex;overflow-y:auto;box-shadow:-20px 0 60px #00000080}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.sp-header{color:#f1f5f9;justify-content:space-between;align-items:center;margin-bottom:24px;font-size:16px;font-weight:700;display:flex}.sp-close{color:#475569;cursor:pointer;background:0 0;border:none;padding:4px;font-size:16px}.sp-close:hover{color:#f1f5f9}.sp-section{border-bottom:1px solid #ffffff0d;flex-direction:column;gap:10px;padding:16px 0;display:flex}.sp-label{color:#475569;text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:700}.sp-toggle-group{gap:6px;display:flex}.sp-toggle{color:#64748b;cursor:pointer;background:#ffffff08;border:1px solid #ffffff14;border-radius:9px;flex:1;padding:9px;font-family:inherit;font-size:13px;transition:all .15s}.sp-toggle:hover{background:#ffffff0f}.sp-toggle.active{color:#f87171;background:#e8401c1f;border-color:#e8401c4d}.sp-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.sp-desc{color:#64748b;flex:1;font-size:12px}.sp-btn{color:#94a3b8;cursor:pointer;white-space:nowrap;background:#ffffff0a;border:1px solid #ffffff14;border-radius:8px;padding:7px 14px;font-family:inherit;font-size:12px;font-weight:600;transition:all .15s}.sp-btn:hover{background:#ffffff14}.sp-btn.danger{color:#fca5a5;background:#ef44441a;border-color:#ef44444d}.sp-btn.danger:hover{background:#ef444433}.sp-keys{flex-direction:column;gap:6px;display:flex}.sp-key-row{align-items:center;gap:10px;display:flex}kbd{color:#f1f5f9;background:#ffffff0f;border:1px solid #ffffff1f;border-bottom-width:2px;border-radius:5px;justify-content:center;align-items:center;width:24px;height:24px;font-family:SF Mono,monospace;font-size:11px;font-weight:700;display:inline-flex}.sp-key-row span{color:#64748b;font-size:12px}.sp-footer{color:#334155;justify-content:space-between;margin-top:auto;padding-top:16px;font-size:12px;display:flex}.sp-footer a{color:#475569;text-decoration:none}.sp-footer a:hover{color:#94a3b8}:root{--lp-bg:#fff;--lp-bg-alt:#fff;--lp-bg-coral:#fff;--lp-ink:#000;--lp-ink-2:#333;--lp-muted:#666;--lp-green:#83ffc1;--lp-pink:#ff94db;--lp-purple:#8b8bff;--lp-yellow:#ffe780;--lp-cta-gradient:linear-gradient(22deg, #5757c4 5.35%, #ff94db 47.78%, #ffe780 90.21%);--lp-brand:#83ffc1;--lp-brand-dk:#5ac99a;--lp-border:#e5e7eb;--lp-border-dk:#d1d5db;--font-display:"Syne", system-ui, sans-serif;--font-body:"Nunito", system-ui, sans-serif;--r-sm:12px;--r-md:16px;--r-lg:24px;--r-xl:40px;--r-full:9999px;--gut:clamp(20px, 6vw, 100px)}.lp{background:var(--lp-bg);color:var(--lp-ink);font-family:var(--font-body);min-height:100vh;overflow-x:hidden}.lp *,.lp :before,.lp :after{box-sizing:border-box;margin:0}.lp-eyebrow{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--lp-muted);margin-bottom:14px;font-size:12px;font-weight:700}.lp-hero .lp-eyebrow{color:#fff9}.lp-section-h2{font-family:var(--font-display);letter-spacing:-.04em;color:var(--lp-ink);font-size:clamp(36px,4vw,48px);font-weight:700;line-height:1.1}.lp-section-h2 em{color:var(--lp-ink);font-style:normal}.lp-body-text{letter-spacing:-.01em;color:var(--lp-ink-2);max-width:46ch;font-size:clamp(16px,2vw,24px);font-weight:500;line-height:1.5;font-family:var(--font-body)}.lp-body-text--hint{color:var(--lp-muted);max-width:50ch;font-size:15px;font-weight:500;line-height:1.7}.lp-text-dim{color:var(--lp-border-dk)}.lp-placeholder-label{letter-spacing:.14em;text-transform:uppercase;color:var(--lp-border-dk);margin-top:8px;font-size:10px;font-weight:800;display:block}.lp-btn{font-family:var(--font-body);letter-spacing:.01em;border-radius:var(--r-full);cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:7px;padding:12px 26px;font-size:14px;font-weight:800;text-decoration:none;transition:transform .15s,box-shadow .15s,filter .15s;display:inline-flex}.lp-btn:hover{filter:brightness(1.05);transform:translateY(-2px)}.lp-btn:active{transform:translateY(0)}.lp-btn--primary{background:var(--lp-cta-gradient);color:#000}.lp-btn--primary:hover{filter:brightness(1.06)}.lp-btn--green{background:var(--lp-green);color:#000}.lp-btn--green:hover{filter:brightness(1.06)}.lp-btn--outline{color:var(--lp-ink);border:2px solid var(--lp-border-dk);background:0 0}.lp-btn--outline:hover{border-color:var(--lp-ink);background:#00000008}.lp-btn--ghost{color:var(--lp-ink);background:#0000000f}.lp-btn--ghost:hover{background:#0000001a}.lp-btn--lg{padding:15px 34px;font-size:16px}.lp-section-head{text-align:center;padding-inline:var(--gut);flex-direction:column;align-items:center;gap:4px;margin-bottom:60px;display:flex}.lp-section-head .lp-body-text{text-align:center;margin-top:12px}.lp-nav{z-index:100;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:1px solid #0000;transition:background .4s,border-color .4s,-webkit-backdrop-filter .4s,backdrop-filter .4s;position:fixed;top:0;left:0;right:0}.lp-nav--scrolled{-webkit-backdrop-filter:blur(16px)saturate(180%);backdrop-filter:blur(16px)saturate(180%);border-bottom:1px solid var(--lp-border);background:#fffcf7e0}.lp-nav-inner{margin-inline:var(--gut);justify-content:space-between;align-items:center;height:64px;display:flex}.lp-nav-logo{align-items:center;gap:9px;text-decoration:none;display:flex}.lp-nav-logo-emoji{font-size:24px}.lp-nav-logo-name{font-family:var(--font-display);letter-spacing:-.02em;color:var(--lp-ink);font-size:20px;font-weight:800;transition:color .4s}.lp-nav--scrolled .lp-nav-logo-name{color:var(--lp-ink)}.lp-nav:not(.lp-nav--scrolled) .lp-nav-logo-name{color:#fff}.lp-about .lp-nav-logo-name{color:var(--lp-ink);font-size:36px}.lp-nav-links{gap:32px;display:flex}.lp-nav-link{color:#ffffffbf;cursor:pointer;font-size:14px;font-weight:700;font-family:var(--font-body);background:0 0;border:none;padding:0;text-decoration:none;transition:color .4s}.lp-nav-link:hover{color:#fff}.lp-nav--scrolled .lp-nav-link{color:var(--lp-muted)}.lp-nav--scrolled .lp-nav-link:hover{color:var(--lp-ink)}.lp-nav-cta{font-family:var(--font-body);color:#000;border-radius:var(--r-full);white-space:nowrap;background:#ffffffeb;border:1.5px solid #ffffff4d;padding:11px 26px;font-size:15px;font-weight:800;text-decoration:none;transition:transform .15s,box-shadow .15s,background .3s,color .3s,border-color .3s;box-shadow:0 2px 12px #0003}.lp-nav-cta:hover{transform:translateY(-1px);box-shadow:0 4px 16px #00000040}.lp-nav--scrolled .lp-nav-cta{color:#fff;box-shadow:none;background:#000;border-color:#000}.lp-auth-error{z-index:999;color:#b91c1c;border-radius:var(--r-md);font-size:14px;font-weight:600;font-family:var(--font-body);background:#fff0f0;border:1.5px solid #fca5a5;align-items:center;gap:12px;max-width:calc(100vw - 40px);padding:12px 20px;display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%);box-shadow:0 4px 24px #0000001a}.lp-auth-error-close{cursor:pointer;color:#b91c1c;background:0 0;border:none;flex-shrink:0;padding:0;font-size:18px;line-height:1}.lp-nav-right{align-items:center;gap:12px;display:flex}.lp-nav-signin{font-family:var(--font-body);color:#ffffffd9;white-space:nowrap;font-size:14px;font-weight:700;text-decoration:none;transition:color .2s}.lp-nav-signin:hover{color:#fff}.lp-nav--scrolled .lp-nav-signin{color:var(--lp-muted)}.lp-nav--scrolled .lp-nav-signin:hover{color:var(--lp-ink)}.lp-nav-auth-user{position:relative}.lp-nav-auth-avatar-btn{border-radius:var(--r-full);cursor:pointer;font-family:var(--font-body);color:#fff;background:#ffffff26;border:1.5px solid #ffffff4d;align-items:center;gap:7px;padding:5px 12px 5px 5px;font-size:13px;font-weight:700;transition:background .2s,border-color .2s;display:flex}.lp-nav-auth-avatar-btn:hover{background:#ffffff40}.lp-nav--scrolled .lp-nav-auth-avatar-btn{border-color:var(--lp-border);color:var(--lp-ink);background:#0000000d}.lp-nav-auth-avatar{object-fit:cover;border-radius:50%;width:26px;height:26px}.lp-nav-auth-avatar-fallback{background:var(--lp-green);color:#000;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:12px;font-weight:800;display:flex}.lp-nav-auth-username{text-overflow:ellipsis;white-space:nowrap;max-width:100px;overflow:hidden}.lp-nav-auth-chevron{opacity:.6;font-size:10px}.lp-nav-auth-dropdown{border:1px solid var(--lp-border);border-radius:var(--r-md);z-index:200;background:#fff;min-width:160px;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 8px 32px #0000001f}.lp-nav-auth-menu-item{width:100%;font-family:var(--font-body);color:var(--lp-ink);cursor:pointer;text-align:left;background:0 0;border:none;padding:10px 16px;font-size:14px;font-weight:600;text-decoration:none;transition:background .15s;display:block}.lp-nav-auth-menu-item:hover{background:#0000000a}.lp-nav-auth-menu-item--danger{color:#e53e3e}.lp-hero{background:#000;align-items:center;min-height:100vh;padding-top:64px;display:flex;position:relative;overflow:hidden}.lp-hero:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#ffe8e0 0%,#0000 70%);border-radius:50%;width:600px;height:600px;position:absolute;top:-120px;right:-100px}.lp-hero:after{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#fff5d6 0%,#0000 70%);border-radius:50%;width:400px;height:400px;position:absolute;bottom:-80px;left:-80px}.lp-hero-video-wrap{z-index:0;pointer-events:none;position:absolute;inset:0}.lp-hero-video{object-fit:cover;opacity:.85;width:100%;height:100%}.lp-hero-video-overlay-top{pointer-events:none;background:linear-gradient(#00000047 0%,#00000014 60%,#0000 100%);width:100%;height:220px;position:absolute;top:0;left:0}.lp-hero-video-overlay{background:linear-gradient(to bottom, transparent 55%, var(--lp-bg) 100%);position:absolute;inset:0}.lp-hero-content{z-index:1;margin-inline:var(--gut);max-width:680px;padding-block:80px;position:relative}.lp-hero-h1{font-family:var(--font-display);letter-spacing:-.02em;color:#fff;margin-bottom:16px;font-size:clamp(30px,5vw,44px);font-weight:700;line-height:1.15}.lp-hero-h1 em{color:var(--lp-brand);font-style:normal;display:inline-block;position:relative}.lp-hero-h1 em:after{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='8' viewBox='0 0 200 8'%3E%3Cpath d='M2 5 Q25 1 50 5 T100 5 T150 5 T198 5' stroke='%23FF5C35' stroke-width='3' fill='none' stroke-linecap='round' opacity='0.5'/%3E%3C/svg%3E") 50%/auto 100% repeat-x;width:100%;height:6px;position:absolute;bottom:-4px;left:0}.lp-hero-sub{letter-spacing:-.01em;color:#fff;max-width:40ch;margin-bottom:12px;font-size:clamp(20px,2.8vw,28px);font-weight:600;line-height:1.4}.lp-hero-sub--2{color:#fff9;max-width:46ch;margin-bottom:32px;font-size:clamp(14px,1.8vw,17px);font-weight:400;line-height:1.65}.lp-hero-actions{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.lp-scroll-hint{z-index:1;position:absolute;bottom:36px;left:50%;transform:translate(-50%)}.lp-scroll-hint span{background:linear-gradient(to bottom, transparent, var(--lp-border-dk));width:1px;height:44px;margin:auto;animation:2s ease-in-out infinite lp-scroll;display:block}@keyframes lp-scroll{0%,to{opacity:.3}50%{opacity:1}}.lp-how{background:var(--lp-bg);border-top:1px solid var(--lp-border);padding-block:100px}.lp-how-steps{margin-inline:var(--gut);align-items:flex-start;gap:0;display:flex}.lp-how-step{flex-direction:column;flex:1;gap:16px;padding:0 32px;display:flex}.lp-how-step:first-child{padding-left:0}.lp-how-step:last-child{padding-right:0}.lp-how-num{border-radius:var(--r-full);width:48px;height:48px;font-family:var(--font-display);color:#000;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;font-weight:800;display:flex}.lp-how-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--lp-ink);font-size:20px;font-weight:700}.lp-how-desc{color:var(--lp-ink-2);font-size:15px;font-weight:500;line-height:1.65}.lp-how-connector{color:var(--lp-border-dk);flex-shrink:0;padding-top:12px;font-size:24px}@media (width<=768px){.lp-how-steps{flex-direction:column;gap:40px}.lp-how-step{padding:0}.lp-how-connector{align-self:flex-start;margin-left:12px;padding-top:0;transform:rotate(90deg)}}.lp-roadmap{background:var(--lp-bg);border-top:1px solid var(--lp-border);padding-block:100px}.lp-roadmap-grid{margin-inline:var(--gut);grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:56px;display:grid}.lp-roadmap-card{border-radius:var(--r-lg);border:1.5px solid var(--lp-border);flex-direction:column;gap:10px;padding:24px;transition:transform .2s,box-shadow .2s;display:flex}.lp-roadmap-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #00000014}.lp-roadmap-card--done{background:#fff;border-color:#83ffc1}.lp-roadmap-card--soon{background:#fff;border-color:#ff94db}.lp-roadmap-card--future{background:#fff;border-style:dashed;border-color:#8b8bff}.lp-roadmap-tag{letter-spacing:.08em;text-transform:uppercase;border-radius:var(--r-full);width:fit-content;padding:3px 10px;font-size:11px;font-weight:800}.lp-roadmap-card--done .lp-roadmap-tag{color:#000;background:#83ffc1}.lp-roadmap-card--soon .lp-roadmap-tag{color:#000;background:#ff94db}.lp-roadmap-card--future .lp-roadmap-tag{color:#000;background:#8b8bff}.lp-roadmap-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--lp-ink);font-size:17px;font-weight:700}.lp-roadmap-desc{color:var(--lp-ink-2);font-size:14px;font-weight:500;line-height:1.6}.lp-roadmap-github{margin-inline:var(--gut);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.lp-roadmap-github-text{color:var(--lp-muted);font-size:16px;font-weight:600}@media (width<=1024px){.lp-roadmap-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.lp-roadmap-grid{grid-template-columns:1fr}}.lp-marquee-wrap{background:var(--lp-ink);padding-block:14px;position:relative;overflow:hidden}.lp-marquee{will-change:transform;display:inline-flex}.lp-marquee-item{letter-spacing:.12em;text-transform:uppercase;color:#ffffffb3;white-space:nowrap;align-items:center;gap:12px;padding-inline:24px;font-size:12px;font-weight:800;display:inline-flex}.lp-marquee-item:nth-child(3n+1){color:var(--lp-brand)}.lp-marquee-item:nth-child(3n+2){color:var(--lp-yellow)}.lp-marquee-dot{color:#ffffff4d;font-size:8px}@keyframes lp-float{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-16px)rotate(2deg)}}@keyframes lp-float-tag{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.lp-about{background:var(--lp-bg);border-top:1.5px solid var(--lp-border);padding-block:100px}.lp-about-inner{margin-inline:var(--gut);grid-template-columns:1fr 1fr;align-items:center;gap:80px;display:grid}.lp-about-copy{flex-direction:column;gap:28px;display:flex}.lp-about-logo{align-items:center;display:flex}.lp-about-logo img{width:auto;height:48px;display:block}.lp-about-logo .lp-nav-logo-name{letter-spacing:-.02em;font-size:32px}.lp-about-desc{color:var(--lp-ink-2);max-width:36ch;margin:0;font-size:18px;font-weight:600;line-height:1.75}.lp-about-copy .lp-btn{align-self:flex-start}.lp-about-image{position:relative}.lp-float-tag{border:1.5px solid var(--lp-border);border-radius:var(--r-full);color:var(--lp-ink);white-space:nowrap;z-index:2;background:#fff;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:800;animation:3s ease-in-out infinite lp-float-tag;display:flex;position:absolute;box-shadow:0 6px 24px #0000001a}.lp-float-tag--tl{animation-delay:0s;top:-16px;left:5%}.lp-float-tag--br{animation-delay:1.5s;bottom:10px;right:2%}.lp-about-img{border-radius:var(--r-lg);width:100%;height:auto;display:block}@media (width<=860px){.lp-about-inner{grid-template-columns:1fr;gap:48px}}.lp-states{background:var(--lp-bg-alt);border-top:1.5px solid var(--lp-border);border-bottom:1.5px solid var(--lp-border);padding-block:100px}.lp-states-grid{margin-inline:var(--gut);grid-template-columns:repeat(5,1fr);gap:16px;display:grid}.lp-state-card{border:1.5px solid var(--lp-border);border-radius:var(--r-md);cursor:default;background:#fff;transition:transform .2s,box-shadow .2s;overflow:hidden}.lp-state-card:hover{transform:translateY(-5px)rotate(-1deg);box-shadow:0 12px 32px #0000001a}.lp-state-preview{aspect-ratio:1;background:0 0;justify-content:center;align-items:center;display:flex}.lp-state-card--blue{border-color:#8b8bff}.lp-state-card--blue .lp-state-preview{background:#8b8bff}.lp-state-card--yellow{border-color:#ffe780}.lp-state-card--yellow .lp-state-preview{background:#ffe780}.lp-state-card--green{border-color:#83ffc1}.lp-state-card--green .lp-state-preview{background:#83ffc1}.lp-state-card--pink{border-color:#ff94db}.lp-state-card--pink .lp-state-preview{background:#ff94db}.lp-state-emoji{font-size:48px;transition:transform .2s}.lp-state-card:hover .lp-state-emoji{transform:scale(1.15)}.lp-state-lock{opacity:.4;font-size:32px}.lp-state-info{border-top:1.5px solid var(--lp-border);padding:12px 14px}.lp-state-name{color:var(--lp-ink);font-size:13px;font-weight:800;display:block}.lp-state-card--locked{opacity:.5;cursor:not-allowed}.lp-state-card--locked:hover{box-shadow:none;transform:none}.lp-state-card--more{background:0 0;border-style:dashed}.lp-state-card--more:hover{box-shadow:none;transform:none}.lp-state-more-dots{color:var(--lp-border-dk);letter-spacing:4px;font-size:24px}.lp-share{background:var(--lp-bg);padding-block:120px}.lp-share-inner{margin-inline:var(--gut);grid-template-columns:1fr 1fr;align-items:center;gap:80px;display:grid}.lp-share-copy{flex-direction:column;gap:20px;display:flex}.lp-share-visual{height:380px;position:relative}.lp-share-card{border:1.5px solid var(--lp-border);border-radius:var(--r-lg);background:#fff;padding:24px;position:absolute;box-shadow:0 8px 32px #00000014}.lp-share-card--profile{z-index:2;flex-direction:column;gap:16px;width:260px;display:flex;top:50%;left:50%;transform:translate(-60%,-48%)rotate(-2deg)}.lp-share-card-top{align-items:center;gap:12px;display:flex}.lp-share-card-avatar{font-size:36px}.lp-share-card-name{color:var(--lp-ink);font-size:15px;font-weight:800}.lp-share-card-status{color:var(--lp-brand);margin-top:2px;font-size:12px;font-weight:600}.lp-share-card-bar{align-items:center;gap:8px;display:flex}.lp-share-card-bar-label{color:var(--lp-muted);white-space:nowrap;font-size:11px;font-weight:700}.lp-share-card-bar-track{background:var(--lp-bg-alt);border-radius:var(--r-full);flex:1;height:5px;overflow:hidden}.lp-share-card-bar-fill{background:linear-gradient(90deg, var(--lp-brand), var(--lp-yellow));border-radius:var(--r-full);height:100%}.lp-share-card-bar-val{color:var(--lp-brand);font-size:11px;font-weight:800}.lp-share-card-badges{gap:6px;display:flex}.lp-badge{background:var(--lp-bg-alt);border:1.5px solid var(--lp-border);border-radius:var(--r-sm);justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;display:flex}.lp-badge--locked{opacity:.25;filter:grayscale()}.lp-share-card--gif{z-index:1;background:var(--lp-bg-coral);border-color:#ffe8d9;width:180px;height:180px;top:50%;right:5%;transform:translateY(-38%)rotate(6deg)}.lp-share-card-gif-inner{flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.lp-shorts{background:var(--lp-bg-alt);border-top:1.5px solid var(--lp-border);padding-block:100px;overflow:hidden}.lp-stories-grid{margin-inline:var(--gut);grid-template-columns:repeat(3,1fr);align-items:start;gap:16px;display:grid}.lp-stories-col{flex-direction:column;gap:16px;display:flex}.lp-story-card{border-radius:var(--r-lg);cursor:default;text-decoration:none;transition:transform .2s ease-out,box-shadow .2s ease-out;position:relative;overflow:hidden}.lp-story-card:hover{transform:scale(1.03)rotate(-.5deg);box-shadow:0 16px 40px #0000001f}.lp-story-card--tall{aspect-ratio:9/16}.lp-story-card--square{aspect-ratio:1}.lp-story-card--green{background:#83ffc1}.lp-story-card--pink{background:#ff94db}.lp-story-card--purple{background:#8b8bff}.lp-story-card--yellow{background:#ffe780}.lp-story-card--blue{background:#8b8bff}.lp-story-card--coral{background:#ff94db}.lp-story-card--dark{background:#000}.lp-story-card-inner{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:16px;display:flex;position:absolute;inset:0}.lp-story-emoji{font-size:clamp(32px,4vw,56px);line-height:1;transition:transform .2s}.lp-story-card:hover .lp-story-emoji{transform:scale(1.15)rotate(5deg)}.lp-story-label{letter-spacing:-.01em;color:#000000a6;font-size:clamp(11px,1.2vw,14px);font-weight:800;line-height:1.3}@media (width<=860px){.lp-stories-grid{grid-template-columns:repeat(2,1fr)}.lp-stories-col:last-child{display:none}}@media (width<=600px){.lp-stories-grid{grid-template-columns:repeat(2,1fr);gap:10px}.lp-stories-col{margin-top:0!important}}.lp-cta{background:var(--lp-ink);padding-block:140px;position:relative;overflow:hidden}.lp-cta:before{content:"";pointer-events:none;background:radial-gradient(circle,#ff5c351f 0%,#0000 65%);border-radius:50%;width:500px;height:500px;position:absolute;top:-100px;right:-100px}.lp-cta:after{content:"";pointer-events:none;background:radial-gradient(circle,#ffd84d14 0%,#0000 65%);border-radius:50%;width:400px;height:400px;position:absolute;bottom:-80px;left:-80px}.lp-cta-inner{z-index:1;margin-inline:var(--gut);text-align:center;flex-direction:column;align-items:center;gap:20px;display:flex;position:relative}.lp-cta-h2{font-family:var(--font-display);letter-spacing:-.04em;color:#fff;font-size:clamp(36px,5vw,48px);font-weight:700;line-height:1.1}.lp-cta-h2 em{color:#fff;font-style:normal}.lp-cta .lp-eyebrow{color:#fff6}.lp-cta-sub{color:#ffffff80;text-align:center;max-width:40ch}.lp-cta-actions{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:8px;display:flex}.lp-footer{background:var(--lp-ink);border-top:1px solid #ffffff0f;padding-block:32px}.lp-footer-inner{margin-inline:var(--gut);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.lp-footer-brand{align-items:center;gap:9px;font-size:20px;display:flex}.lp-footer .lp-nav-logo-name{color:#ffffffd9}.lp-footer-links{gap:24px;display:flex}.lp-footer-links a,.lp-footer-link-stub{color:#fff6;font-size:13px;font-weight:600;text-decoration:none;transition:color .15s}.lp-footer-links a:hover{color:#fff}.lp-footer-link-stub{cursor:default}.lp-footer-copy{color:#ffffff40;font-size:12px;font-weight:600}@media (width<=1024px){.lp-states-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=860px){.lp-character-inner,.lp-share-inner{grid-template-columns:1fr;gap:56px}.lp-share-visual{height:300px}.lp-states-grid{grid-template-columns:repeat(2,1fr)}.lp-shorts-grid{grid-template-columns:1fr;max-width:360px;margin-inline:auto}.lp-float-tag--tl{top:12px;left:0}.lp-float-tag--br{bottom:12px;right:0}}@media (width<=600px){:root{--gut:20px}.lp-nav-links{display:none}.lp-hero-h1{font-size:clamp(44px,12vw,72px)}.lp-states-grid{grid-template-columns:repeat(2,1fr)}.lp-cta-actions{flex-direction:column;align-items:stretch}.lp-cta-actions .lp-btn{justify-content:center}.lp-footer-inner{text-align:center;flex-direction:column}}.animated-pet{cursor:pointer;-webkit-user-select:none;user-select:none;outline:none;justify-content:center;align-items:center;transition:filter .3s;display:inline-flex}.animated-pet:focus-visible{outline-offset:4px;border-radius:8px;outline:2px solid #fff6}.animated-pet-frame{object-fit:contain;width:240px;height:240px;image-rendering:pixelated;image-rendering:crisp-edges}.animated-pet-placeholder{opacity:.3;font-size:80px;line-height:1}.animated-pet--done .animated-pet-frame{filter:drop-shadow(0 0 12px #22c55e80)}.animated-pet--error .animated-pet-frame{filter:drop-shadow(0 0 12px #ef444466)}.animated-pet--thinking .animated-pet-frame{filter:drop-shadow(0 0 12px #fbbf244d)}.animated-pet--tool_call .animated-pet-frame{filter:drop-shadow(0 0 12px #3b82f680)}.animated-pet--happy .animated-pet-frame{filter:drop-shadow(0 0 12px #ffd70066)}@keyframes petBounce{0%{transform:scale(1)translateY(0)}50%{transform:scale(1.12)translateY(-8px)}to{transform:scale(1)translateY(0)}}.animated-pet--react .animated-pet-frame{animation:.4s ease-in-out petBounce}.stats-bar-wrapper{width:100%}.stats-bar{cursor:pointer;box-sizing:border-box;background:#111;border:1px solid #ffffff14;border-radius:20px;flex-wrap:wrap;align-items:center;gap:8px;width:100%;padding:14px 18px;font-family:Nunito,system-ui,sans-serif;transition:background .15s,border-color .15s;display:flex;box-shadow:0 4px 20px #0000004d}.stats-bar:hover{background:#161616;border-color:#ffffff24}.stat-badge{color:var(--color,#71717a);text-transform:uppercase;letter-spacing:.06em;background:#ffffff0a;border:1px solid #ffffff0f;border-radius:9999px;align-items:center;gap:6px;padding:3px 10px 3px 6px;font-family:Syne,system-ui,sans-serif;font-size:12px;font-weight:800;display:flex}.stat-dot{background:var(--color,#71717a);width:7px;height:7px;box-shadow:0 0 8px var(--color,transparent);border-radius:50%;flex-shrink:0}.stat-chip{color:#52525b;background:#ffffff08;border-radius:9999px;padding:3px 10px;font-family:Nunito,system-ui,sans-serif;font-size:12px;font-weight:700;transition:color .15s}.stat-expand{color:#3f3f46;opacity:.6;margin-left:auto;font-size:9px}.stats-detail{background:#111;border:1px solid #ffffff12;border-radius:16px;flex-direction:column;gap:10px;margin-top:6px;padding:16px 18px;display:flex;box-shadow:0 4px 20px #0000004d}.sd-row{justify-content:space-between;align-items:center;display:flex}.sd-label{color:#3f3f46;font-family:Nunito,system-ui,sans-serif;font-size:12px;font-weight:600}.sd-val{color:#a1a1aa;letter-spacing:-.02em;font-family:Syne,system-ui,sans-serif;font-size:13px;font-weight:800}.lobster-report{color:#71717a;text-align:left;letter-spacing:.01em;min-height:20px;margin:0;font-family:Nunito,system-ui,sans-serif;font-size:14px;font-weight:600;line-height:1.6}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000bf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:#0f172a;border:1px solid #ffffff1a;border-radius:20px;width:420px;max-width:calc(100vw - 32px);padding:40px;box-shadow:0 25px 80px #0009,0 0 0 1px #8b8bff40}.modal-header{text-align:center;margin-bottom:32px}.modal-logo{margin-bottom:12px;font-size:52px;animation:2s ease-in-out infinite bob;display:block}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.modal-header h1{color:#f1f5f9;background:linear-gradient(22deg,#8b8bff 0%,#ff94db 60%,#ffe780 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0 0 8px;font-size:26px;font-weight:800}.modal-header p{color:#64748b;margin:0;font-size:14px}.modal-form{flex-direction:column;gap:16px;display:flex}.modal-form label{flex-direction:column;gap:6px;display:flex}.modal-form label span{color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;font-size:13px;font-weight:600}.modal-form input{color:#f1f5f9;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;outline:none;padding:12px 14px;font-family:SF Mono,Fira Code,monospace;font-size:14px;transition:border-color .2s}.modal-form input:focus{border-color:#8b8bff99;box-shadow:0 0 0 3px #8b8bff26}.modal-form small{color:#475569;font-size:11px}.modal-hint{background:#0000004d;border-left:3px solid #8b8bff99;border-radius:8px;padding:10px 14px}.modal-hint code{color:#94a3b8;font-family:SF Mono,Fira Code,monospace;font-size:12px}.connect-btn{color:#000;cursor:pointer;background:linear-gradient(22deg,#5757c4 5.35%,#ff94db 47.78%,#ffe780 90.21%);border:none;border-radius:12px;margin-top:8px;padding:14px;font-size:16px;font-weight:700;transition:transform .15s,box-shadow .15s;box-shadow:0 4px 20px #5757c466}.connect-btn:hover{transform:translateY(-2px);box-shadow:0 8px 28px #5757c480}.modal-footer{text-align:center;color:#475569;margin-top:24px;font-size:13px}.modal-footer code{background:#ffffff0d;border-radius:4px;padding:2px 6px;font-size:12px}.skip-btn{color:#64748b;cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:10px;width:100%;margin-top:8px;padding:10px;font-size:.85rem;transition:color .2s,border-color .2s}.skip-btn:hover{color:#94a3b8;border-color:#fff3}.lobster{cursor:pointer;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 8px 24px var(--lobster-shadow,#e8401c59));justify-content:center;align-items:center;transition:filter .4s;display:inline-flex}.lobster:hover{filter:drop-shadow(0 12px 32px var(--lobster-shadow,#e8401c8c))}.lobster-svg{filter:drop-shadow(0 10px 30px #00000026);width:240px;height:260px;overflow:visible}.lobster-ground-shadow{transform-origin:50%;animation:4s ease-in-out infinite shadowPulse}@keyframes shadowPulse{0%,to{opacity:.15;transform:scale(1)}50%{opacity:.25;transform:scale(1.1)}}.lobster--idle .antenna-left{transform-origin:82px 60px;animation:4s ease-in-out infinite swayLeft}.lobster--idle .antenna-right{transform-origin:118px 60px;animation:4s ease-in-out infinite swayRight}.lobster--idle .body,.lobster--idle .body-gloss{animation:4s ease-in-out infinite breathe}@keyframes swayLeft{0%,to{transform:rotate(0)}50%{transform:rotate(-12deg)}}@keyframes swayRight{0%,to{transform:rotate(0)}50%{transform:rotate(12deg)}}@keyframes breathe{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.04)}}.lobster--thinking .head{animation:.5s ease-in-out infinite alternate scratch}.lobster--thinking .pupil-left,.lobster--thinking .pupil-right{transform-origin:50%;animation:1.2s linear infinite rollEye}.lobster--thinking .bubble{opacity:0}.lobster--thinking .b1{animation:1.5s ease-out infinite popBubble}.lobster--thinking .b2{animation:1.5s ease-out .3s infinite popBubble}.lobster--thinking .b3{animation:1.5s ease-out .6s infinite popBubble}.lobster--thinking .claw-left{transform-origin:65px 110px;animation:.4s ease-in-out infinite alternate scratchClaw}@keyframes scratch{0%{transform:translate(0)}to{transform:translate(4px)rotate(3deg)}}@keyframes rollEye{0%{transform:translate(0)}25%{transform:translate(2px,-2px)}50%{transform:translateY(-3px)}75%{transform:translate(-2px,-1px)}to{transform:translate(0)}}@keyframes popBubble{0%{opacity:0;transform:scale(.5)}30%{opacity:.9;transform:scale(1)}80%{opacity:.9}to{opacity:0;transform:scale(1.1)}}@keyframes scratchClaw{0%{transform:rotate(-15deg)translateY(-5px)}to{transform:rotate(-25deg)translateY(-10px)}}.lobster--tool_call .claw-left{transform-origin:65px 110px;animation:.6s ease-in-out infinite alternate clawUp}.lobster--tool_call .claw-right{transform-origin:135px 110px;animation:.6s ease-in-out .3s infinite alternate clawUp}.lobster--tool_call .sparkle{animation:.8s ease-in-out infinite alternate sparkle}.lobster--tool_call .body{animation:.4s ease-in-out infinite alternate busyBob}@keyframes clawUp{0%{transform:rotate(0)}to{transform:rotate(-35deg)translateY(-12px)}}@keyframes sparkle{0%{opacity:.4;transform:scale(.8)}to{opacity:1;transform:scale(1.3)}}@keyframes busyBob{0%{transform:translateY(0)}to{transform:translateY(-4px)}}.lobster--done .lobster-svg{animation:.5s ease-in-out 4 happyBounce}.lobster--done .done-circle{animation:.3s cubic-bezier(.34,1.56,.64,1) popIn}.lobster--done .claw-left{transform-origin:65px 110px;animation:.6s ease-in-out infinite alternate cheer}.lobster--done .claw-right{transform-origin:135px 110px;animation:.6s ease-in-out .3s infinite alternate cheer}@keyframes happyBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-16px)}}@keyframes popIn{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes cheer{0%{transform:rotate(-40deg)translateY(-8px)}to{transform:rotate(0)}}.lobster--error .lobster-svg{animation:.6s cubic-bezier(.36,.07,.19,.97) forwards slump}.lobster--error .qmark{fill:#ef4444;font-weight:700;animation:1.5s ease-out infinite floatUp}.lobster--error .q2{animation-delay:.4s}.lobster--error .eyes{animation:2s ease-in-out infinite sadEyes}@keyframes slump{0%{transform:rotate(0)}to{transform:rotate(-15deg)translateY(10px)}}@keyframes floatUp{0%{opacity:0;transform:translateY(0)}50%{opacity:1}to{opacity:0;transform:translateY(-20px)}}@keyframes sadEyes{0%,to{transform:translateY(0)}50%{transform:translateY(3px)}}.lobster--token_exhausted .lobster-svg{animation:1s ease-in-out forwards droop}.lobster--token_exhausted .eyes{transform:translateY(4px)}.lobster--token_exhausted .wallet{animation:2s ease-in-out infinite swayWallet}.lobster--token_exhausted .body{animation:2s ease-in-out infinite sag}@keyframes droop{0%{opacity:1}to{opacity:.7;transform:translateY(5px)}}@keyframes swayWallet{0%,to{transform:rotate(-10deg)}50%{transform:rotate(10deg)}}@keyframes sag{0%,to{transform:scaleY(1)}50%{transform:scaleY(.96)scaleX(1.02)}}.lobster--offline .lobster-svg{filter:saturate(.2)brightness(.8);animation:4s ease-in-out infinite snooze}.lobster--offline .z{fill:#94a3b8;animation:2s ease-out infinite floatZ}.lobster--offline .z1{animation-delay:0s}.lobster--offline .z2{animation-delay:.5s}.lobster--offline .z3{animation-delay:1s}@keyframes snooze{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes floatZ{0%{opacity:0;transform:translate(0)scale(.5)}40%{opacity:1}to{opacity:0;transform:translate(8px,-18px)scale(1.2)}}.share-card{color:#fff;background:#000;border-radius:40px;width:400px;height:600px;padding:30px;font-family:Nunito,system-ui,sans-serif;position:relative;overflow:hidden}.card-inner{z-index:5;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:30px;flex-direction:column;height:100%;padding:24px;display:flex;position:relative}.card-header{justify-content:space-between;align-items:center;display:flex}.brand{align-items:center;gap:8px;font-size:1.2rem;font-weight:800;display:flex}.rank-badge{color:#000;letter-spacing:.1em;background:#83ffc1;border-radius:20px;padding:4px 12px;font-size:.7rem;font-weight:700}.card-main{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:40px;display:flex}.lobster-display{justify-content:center;align-items:center;width:250px;height:250px;display:flex}.stats-box{text-align:center;grid-template-columns:repeat(3,1fr);gap:15px;width:100%;display:grid}.stat-val{margin-bottom:4px;font-size:1.5rem;font-weight:800;display:block}.stat-lbl{color:#a1a1aa;text-transform:uppercase;letter-spacing:.05em;font-size:.65rem}.card-footer{justify-content:space-between;align-items:flex-end;display:flex}.user-tag{margin:0;font-size:1.1rem;font-weight:700}.date{color:#71717a;margin:4px 0 0;font-size:.8rem}.qr-wrap canvas{opacity:.8;width:60px!important;height:60px!important}.card-decoration-1{filter:blur(100px);opacity:.35;background:#ff94db;border-radius:50%;width:300px;height:300px;position:absolute;top:-100px;right:-100px}.card-decoration-2{filter:blur(80px);opacity:.25;background:#8b8bff;border-radius:50%;width:200px;height:200px;position:absolute;bottom:-50px;left:-50px}.theme-cyber .card-decoration-1{background:#8b8bff}.theme-cyber .card-decoration-2{background:#ff94db}.theme-golden .card-decoration-1{background:#ffe780}.theme-golden .card-decoration-2{background:#ff94db}.theme-space .card-decoration-1{background:#8b8bff}.theme-space .card-decoration-2{background:#83ffc1}.share-card-pet-img{object-fit:contain;width:160px;height:160px;image-rendering:pixelated}.share-wrap{width:100%}.share-controls{align-items:stretch;gap:8px;display:flex}.format-toggle{background:#ffffff0a;border:1px solid #ffffff14;border-radius:14px;flex-shrink:0;display:flex;overflow:hidden}.format-toggle button{color:#52525b;cursor:pointer;letter-spacing:.02em;background:0 0;border:none;padding:0 14px;font-family:Nunito,system-ui,sans-serif;font-size:12px;font-weight:700;transition:all .15s}.format-toggle button.active{color:#83ffc1;background:#83ffc11f}.share-btn{color:#000;cursor:pointer;letter-spacing:.01em;background:linear-gradient(135deg,#5757c4 0%,#ff94db 60%,#ffe780 100%);border:none;border-radius:14px;flex:1;padding:12px 20px;font-family:Nunito,system-ui,sans-serif;font-size:13px;font-weight:800;transition:transform .15s,filter .15s;box-shadow:0 4px 20px #5757c44d}.share-btn:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-2px);box-shadow:0 8px 28px #5757c466}.share-btn:disabled{opacity:.5;cursor:wait}.preview-modal{z-index:200;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#000000e6;flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex;position:fixed;inset:0}.preview-img{object-fit:contain;border-radius:16px;max-width:min(480px,88vw);max-height:68vh;box-shadow:0 24px 80px #000c}.preview-actions{gap:12px;display:flex}.btn-download{color:#fff;cursor:pointer;background:linear-gradient(135deg,#5757c4,#ff94db);border:none;border-radius:9999px;padding:13px 32px;font-family:Nunito,system-ui,sans-serif;font-size:15px;font-weight:800;transition:transform .15s,filter .15s}.btn-download:hover{filter:brightness(1.1);transform:translateY(-2px)}.btn-close{color:#71717a;cursor:pointer;background:#ffffff12;border:1px solid #ffffff1f;border-radius:9999px;padding:13px 24px;font-family:Nunito,system-ui,sans-serif;font-size:15px;transition:background .15s}.btn-close:hover{color:#a1a1aa;background:#ffffff1f}.gif-btn{color:#a78bfa;cursor:pointer;background:#7c3aed26;border:1px solid #7c3aed4d;border-radius:10px;justify-content:center;align-items:center;gap:6px;width:100%;padding:9px 16px;font-family:inherit;font-size:13px;font-weight:700;transition:all .15s;display:flex}.gif-btn:hover:not(:disabled){background:#7c3aed40;border-color:#7c3aed80}.gif-btn:disabled{opacity:.7;cursor:wait}.gif-spinner{animation:1s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.gif-preview-modal{z-index:300;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000d9;flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex;position:fixed;inset:0}.gif-preview-img{border-radius:12px;max-width:min(400px,90vw);box-shadow:0 20px 60px #000c}.gif-actions{gap:12px;display:flex}.gif-dl-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#7c3aed,#a78bfa);border:none;border-radius:10px;padding:12px 28px;font-family:inherit;font-size:15px;font-weight:700}.gif-reset-btn{color:#94a3b8;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:10px;padding:12px 24px;font-family:inherit;font-size:15px}.level-progress{box-sizing:border-box;background:#111;border:1px solid #ffffff14;border-radius:20px;flex-direction:column;gap:12px;width:100%;padding:18px 20px;font-family:Nunito,system-ui,sans-serif;display:flex;box-shadow:0 4px 20px #0000004d}.level-info{align-items:center;gap:12px;display:flex}.level-icon{font-size:28px;line-height:1}.level-text{flex-direction:column;flex:1;gap:2px;display:flex}.level-name{color:#83ffc1;letter-spacing:-.02em;font-family:Syne,system-ui,sans-serif;font-size:15px;font-weight:800}.level-next{color:#3f3f46;font-size:11px;font-weight:600}.level-count{color:#52525b;font-variant-numeric:tabular-nums;font-family:Syne,system-ui,sans-serif;font-size:13px;font-weight:700}.progress-bar{background:#ffffff0d;border-radius:9999px;height:5px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#8b8bff 0%,#ff94db 50%,#83ffc1 100%);border-radius:9999px;height:100%;transition:width .8s cubic-bezier(.34,1.56,.64,1);box-shadow:0 0 8px #83ffc166}.progress-label{color:#3f3f46;text-align:right;font-size:11px;font-weight:600}.ceremony-overlay{z-index:9999;-webkit-backdrop-filter:blur(8px);opacity:0;cursor:pointer;background:#000000d9;justify-content:center;align-items:center;transition:opacity .3s;display:flex;position:fixed;inset:0}.ceremony-overlay.visible{opacity:1}.ceremony-card{text-align:center;cursor:default;opacity:0;background:#ffffff14;border:1px solid #ffffff26;border-radius:24px;width:calc(100% - 48px);max-width:360px;padding:48px 40px;transition:transform .5s cubic-bezier(.34,1.56,.64,1),opacity .3s;position:relative;overflow:hidden;transform:scale(.8)translateY(20px)}.ceremony-overlay.visible .ceremony-card{opacity:1;transform:scale(1)translateY(0)}.ceremony-card--legendary{border-color:#fbbf24;animation:2s ease-in-out infinite legendaryPulse}@keyframes legendaryPulse{0%,to{box-shadow:0 0 16px 2px #fbbf244d}50%{box-shadow:0 0 32px 8px #fbbf2499}}.ceremony-shimmer{pointer-events:none;border-radius:inherit;background:linear-gradient(105deg,#0000 30%,#ffffff1f 50%,#0000 70%) 0 0/200% 100%;animation:2.4s linear infinite shimmerSlide;position:absolute;inset:0}@keyframes shimmerSlide{0%{background-position:200%}to{background-position:-200%}}.ceremony-rarity{letter-spacing:.1em;text-transform:uppercase;border:1px solid;border-radius:100px;margin-bottom:20px;padding:4px 12px;font-size:11px;font-weight:700;display:inline-block}.ceremony-rarity--common{color:#94a3b8;border-color:#94a3b866}.ceremony-rarity--rare{color:#60a5fa;border-color:#60a5fa66}.ceremony-rarity--epic{color:#a78bfa;border-color:#a78bfa66}.ceremony-rarity--legendary{color:#fbbf24;border-color:#fbbf2480}.ceremony-icon{margin-bottom:20px}.ceremony-icon-img{object-fit:contain;border-radius:16px;width:100px;height:100px;animation:.5s cubic-bezier(.34,1.56,.64,1) .2s both iconPopIn}.ceremony-icon-emoji{font-size:100px;line-height:1;animation:.5s cubic-bezier(.34,1.56,.64,1) .2s both iconPopIn;display:block}@keyframes iconPopIn{0%{opacity:0;transform:scale(0)rotate(-15deg)}to{opacity:1;transform:scale(1)rotate(0)}}.ceremony-name{color:#f8fafc;margin-bottom:10px;font-size:22px;font-weight:700;line-height:1.3}.ceremony-desc{color:#f8fafca6;margin-bottom:24px;font-size:14px;line-height:1.6}.ceremony-hint{color:#f8fafc4d;letter-spacing:.04em;font-size:12px}.ceremony-particles{pointer-events:none;position:absolute;inset:0;overflow:hidden}.particle{top:-10px;left:var(--x);width:var(--size);height:var(--size);background:var(--color);opacity:0;animation:particleFall var(--duration) ease-in var(--delay) infinite;border-radius:2px;position:absolute}@keyframes particleFall{0%{opacity:1;transform:translateY(0)rotate(0)}80%{opacity:.8}to{opacity:0;transform:translateY(110vh)rotate(720deg)}}.demo-banner{box-sizing:border-box;background:#83ffc10f;border:1px solid #83ffc133;border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;width:100%;padding:10px 16px;font-size:13px;display:flex}.demo-tag{color:#000;letter-spacing:.08em;background:#83ffc1;border-radius:6px;flex-shrink:0;padding:3px 8px;font-family:Syne,system-ui,sans-serif;font-size:10px;font-weight:900}.demo-text{color:#83ffc1b3;flex:1;font-family:Nunito,system-ui,sans-serif;font-weight:600}.demo-connect{color:#000;cursor:pointer;white-space:nowrap;background:#83ffc1;border:none;border-radius:9999px;padding:7px 16px;font-family:Nunito,system-ui,sans-serif;font-size:12px;font-weight:800;transition:filter .15s,transform .15s}.demo-connect:hover{filter:brightness(1.1);transform:translateY(-1px)}.confetti-particle{animation:linear forwards confettiFall;position:absolute;top:-20px}@keyframes confettiFall{0%{opacity:1;top:-20px;transform:rotate(0)translate(0)}60%{opacity:1}to{transform:rotate(720deg) translateX(var(--drift,40px));opacity:0;top:110vh}}:root{--dk-bg:#080808;--dk-surface:#111;--dk-surface-2:#171717;--dk-border:#ffffff0f;--dk-border-2:#ffffff1a;--dk-text:#fff;--dk-text-2:#a1a1aa;--dk-text-3:#52525b;--ac-green:#83ffc1;--ac-pink:#ff94db;--ac-purple:#8b8bff;--ac-yellow:#ffe780}.home{background:var(--dk-bg);box-sizing:border-box;flex-direction:column;align-items:center;min-height:100vh;padding:80px 16px 100px;display:flex;position:relative;overflow-x:hidden}.home:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(60% 40% at 15% 20%,#8b8bff17 0%,#0000 60%),radial-gradient(50% 40% at 85% 75%,#ff94db12 0%,#0000 60%),radial-gradient(60% 50% at 50% 110%,#83ffc10f 0%,#0000 55%);position:fixed;inset:0}.home-main{z-index:1;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:460px;display:flex;position:relative}.home-companion-card{background:var(--dk-surface);border-radius:28px;flex-direction:column;width:100%;display:flex;position:relative;overflow:hidden;box-shadow:0 0 0 1px #ffffff14,0 32px 80px #0009,0 0 120px #8b8bff0a}.home-companion-card:before{content:"";pointer-events:none;z-index:2;background:linear-gradient(90deg,#0000 0%,#8b8bff80 30%,#ff94db80 60%,#0000 100%);height:1px;position:absolute;top:0;left:0;right:0}.home-lobster-wrap{box-sizing:border-box;justify-content:center;align-items:center;min-height:280px;padding:36px 24px 24px;display:flex;position:relative}.home-lobster-wrap:after{content:"";pointer-events:none;background:radial-gradient(circle,#83ffc112 0%,#8b8bff0a 50%,#0000 70%);border-radius:50%;width:240px;height:240px;transition:background .6s;position:absolute}.pet-placeholder{cursor:pointer;z-index:1;border:2px dashed #ffffff12;border-radius:28px;justify-content:center;align-items:center;width:180px;height:180px;transition:border-color .2s,transform .2s;display:flex}.pet-placeholder:hover{border-color:#ffffff24;transform:scale(1.02)}.pet-placeholder-inner{flex-direction:column;align-items:center;gap:10px;display:flex}.pet-placeholder-icon{opacity:.25;font-size:48px}.pet-placeholder-text{color:var(--dk-text-3);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:800}.home-companion-footer{border-top:1px solid var(--dk-border);background:#00000026;flex-direction:column;gap:12px;padding:16px 24px 24px;display:flex}.home-status-pill{background:#ffffff0a;border:1px solid #ffffff12;border-radius:9999px;align-self:flex-start;align-items:center;gap:8px;padding:6px 14px 6px 10px;display:inline-flex}.home-status-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.home-status-dot--idle{background:#83ffc1;box-shadow:0 0 6px #83ffc180}.home-status-dot--thinking{background:#ffe780;animation:1.4s ease-in-out infinite dot-pulse;box-shadow:0 0 6px #ffe78080}.home-status-dot--tool_call{background:#8b8bff;animation:.8s ease-in-out infinite dot-pulse;box-shadow:0 0 8px #8b8bff99}.home-status-dot--done{background:#83ffc1;box-shadow:0 0 10px #83ffc1}.home-status-dot--error{background:#ff94db;box-shadow:0 0 6px #ff94db80}.home-status-dot--token_exhausted{background:#ffe780;box-shadow:0 0 6px #ffe78080}.home-status-dot--offline{background:#3f3f46}@keyframes dot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}.home-status-label{color:var(--dk-text-2);letter-spacing:.03em;font-size:12px;font-weight:700}.affinity-bar-wrap{align-items:center;gap:10px;display:flex}.affinity-label{color:var(--dk-text-3);white-space:nowrap;font-size:12px;font-weight:700}.affinity-track{background:#ffffff0d;border-radius:9999px;flex:1;height:4px;overflow:hidden}.affinity-fill{background:var(--ac-green);border-radius:9999px;height:100%;transition:width .5s cubic-bezier(.4,0,.2,1)}.affinity-fill--happy{background:linear-gradient(90deg, var(--ac-pink), var(--ac-yellow))}.affinity-value{color:var(--dk-text-3);text-align:right;min-width:22px;font-size:11px;font-weight:800}.home-actions{gap:10px;width:100%;display:flex}.home-actions>*{flex:1}.achievements-wall{background:var(--dk-surface);border:1px solid var(--dk-border-2);box-sizing:border-box;border-radius:24px;width:100%;padding:20px 22px;box-shadow:0 8px 32px #0000004d}.ach-title-row{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.ach-title{color:var(--dk-text-3);text-transform:uppercase;letter-spacing:.14em;margin:0;font-family:Syne,system-ui,sans-serif;font-size:10px;font-weight:800}.ach-view-all{color:var(--dk-text-3);opacity:.6;font-size:11px;font-weight:700;text-decoration:none;transition:opacity .15s}.ach-view-all:hover{opacity:1}.ach-empty{color:var(--dk-text-3);opacity:.4;margin:0;font-size:12px}.ach-grid{flex-wrap:wrap;gap:6px;display:flex}.ach-item{letter-spacing:.01em;border:1px solid #0000;border-radius:9999px;align-items:center;gap:5px;padding:5px 12px;font-size:11px;font-weight:700;display:flex}.ach-emoji{font-size:13px}.ach-name{white-space:nowrap}.ach-icon-img{object-fit:contain;border-radius:2px;width:14px;height:14px}.btn-connect{border:1px solid var(--dk-border-2);color:var(--dk-text-3);cursor:pointer;letter-spacing:.01em;background:0 0;border-radius:9999px;width:100%;padding:12px 24px;font-family:Nunito,system-ui,sans-serif;font-size:13px;font-weight:700;transition:all .15s}.btn-connect:hover{color:var(--dk-text-2);background:#ffffff08;border-color:#fff3}.btn-feedback{width:100%;color:var(--ac-green);letter-spacing:.01em;box-sizing:border-box;background:#83ffc10a;border:1px solid #83ffc133;border-radius:9999px;justify-content:center;align-items:center;gap:6px;padding:13px 24px;font-family:Nunito,system-ui,sans-serif;font-size:13px;font-weight:700;text-decoration:none;transition:all .15s;display:flex}.btn-feedback:hover{background:#83ffc114;border-color:#83ffc166;transform:translateY(-1px)}.profile-loading,.profile-notfound{color:#333;background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:80vh;font-family:Nunito,system-ui,sans-serif;display:flex}.profile-spinner{border:3px solid #00000014;border-top-color:#8b8bff;border-radius:50%;width:36px;height:36px;animation:.7s linear infinite spin}.profile-notfound h2{color:#000;margin:0;font-family:Syne,sans-serif;font-size:22px;font-weight:800}.profile-notfound p{color:#666;margin:0}.profile-notfound a{color:#000;border:2px solid #000;border-radius:999px;margin-top:4px;padding:9px 22px;font-size:14px;font-weight:700;text-decoration:none;transition:background .15s}.profile-notfound a:hover{background:#0000000d}.profile-demo-hint{text-align:center;color:#7a6800;letter-spacing:.03em;background:#ffe7804d;border-bottom:1.5px solid #c8aa004d;padding:10px 20px;font-family:Nunito,system-ui,sans-serif;font-size:12px;font-weight:700}.profile-page{box-sizing:border-box;background:#fff;flex-direction:column;align-items:center;min-height:100vh;padding:80px 16px 60px;font-family:Nunito,system-ui,sans-serif;display:flex;position:relative}.profile-page:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#ff94db14 0%,#0000 70%);width:400px;height:400px;position:fixed;top:-120px;right:-120px}.profile-page:after{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#8b8bff12 0%,#0000 70%);width:320px;height:320px;position:fixed;bottom:-80px;left:-80px}.profile-card{z-index:1;background:#fff;border:2px solid #000;border-radius:24px;width:100%;max-width:440px;position:relative;overflow:hidden;box-shadow:5px 5px #000}.profile-identity{border-bottom:1.5px solid #000;align-items:center;gap:14px;padding:20px 22px;display:flex}.profile-avatar{color:#000;background:linear-gradient(135deg,#8b8bff,#ff94db);border:2px solid #000;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-family:Syne,sans-serif;font-size:20px;font-weight:800;display:flex;overflow:hidden}.profile-avatar img{object-fit:cover;width:100%;height:100%}.profile-info{flex:1;min-width:0}.profile-name{color:#000;letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;margin:0 0 5px;font-family:Syne,sans-serif;font-size:18px;font-weight:800;overflow:hidden}.profile-badge{color:#000;text-transform:uppercase;letter-spacing:.06em;background:#83ffc1;border:1.5px solid #000;border-radius:999px;padding:2px 10px;font-size:10px;font-weight:800;display:inline-block}.profile-live-pill{white-space:nowrap;background:#fff;border:1.5px solid #000;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:5px 12px;font-size:11px;font-weight:700;display:flex}.live-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;animation:2s ease-in-out infinite lpulse}@keyframes lpulse{0%,to{opacity:1}50%{opacity:.35}}.live-text{color:#333;font-size:11px}.profile-pet-stage{background:#f7f7f7;border-bottom:1.5px solid #000;justify-content:center;align-items:center;min-height:220px;padding:36px 24px;display:flex;position:relative}.profile-pet-stage:before{content:"";background:radial-gradient(circle, var(--glow,#8b8bff) 0%, transparent 70%);opacity:.12;pointer-events:none;border-radius:50%;width:220px;height:220px;position:absolute}.profile-stats{grid-template-columns:repeat(3,1fr);display:grid}.profile-stat{border-bottom:1.5px solid #000;flex-direction:column;align-items:center;gap:4px;padding:18px 10px;display:flex}.profile-stat+.profile-stat{border-left:1.5px solid #000}.profile-stat.highlight{background:#83ffc12e}.ps-value{color:#000;letter-spacing:-.02em;font-family:Syne,sans-serif;font-size:22px;font-weight:800}.ps-label{color:#999;text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:700}.profile-ach-row{border-bottom:1.5px solid #000;flex-wrap:wrap;gap:6px;padding:16px 20px;display:flex}.profile-ach-badge{border:1.5px solid #0000;border-radius:999px;align-items:center;gap:4px;padding:4px 11px;font-family:Nunito,sans-serif;font-size:11px;font-weight:700;display:inline-flex}.profile-footer{justify-content:center;align-items:center;gap:12px;padding:14px 22px;display:flex}.profile-footer code{color:#8b8bff;background:#8b8bff1a;border:1px solid #8b8bff33;border-radius:6px;padding:2px 8px;font-size:12px;font-weight:700}.profile-watermark{color:#ccc;font-size:12px;font-weight:600}.profile-duanzi{z-index:1;background:#fff;border:2px solid #000;border-radius:20px;width:100%;max-width:440px;margin-top:14px;padding:20px 24px;position:relative;box-shadow:5px 5px #000}.duanzi-header{color:#bbb;text-transform:uppercase;letter-spacing:.12em;margin-bottom:14px;font-family:Syne,system-ui,sans-serif;font-size:10px;font-weight:800}.duanzi-line{color:#333;border-left:3px solid #0000;margin-bottom:10px;padding-left:14px;font-family:Nunito,system-ui,sans-serif;font-size:15px;font-weight:600;line-height:1.65}.duanzi-line:last-child{margin-bottom:0}.duanzi-line:first-child{border-left-color:#83ffc1}.duanzi-line:nth-child(2){border-left-color:#ff94db}.duanzi-line:nth-child(3){border-left-color:#8b8bff}@media (width<=480px){.profile-card,.profile-duanzi{max-width:100%;box-shadow:3px 3px #000}.profile-identity{padding:14px 16px}.profile-live-pill{display:none}.ps-value{font-size:18px}}:root{--a-bg:#fff;--a-surface:#fff;--a-border:#e8e8e8;--a-border-dk:#d0d0d0;--a-ink:#000;--a-ink-2:#333;--a-muted:#888;--a-brand:#83ffc1;--a-brand-dk:#5ac99a;--a-yellow:#ffe780;--a-green:#83ffc1;--a-red:#f44;--font-body:"Nunito", system-ui, sans-serif;--font-display:"Syne", system-ui, sans-serif;--r-sm:10px;--r-md:14px;--r-lg:20px;--r-full:999px}.admin-page{background:var(--a-bg);min-height:100vh;font-family:var(--font-body);color:var(--a-ink);box-sizing:border-box;flex-direction:column;gap:0;max-width:1280px;margin:0 auto;padding:80px 32px 60px;display:flex}.admin-header{margin-bottom:24px}.admin-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--a-ink);margin:0;font-size:28px;font-weight:800}.admin-tabs{border-bottom:1.5px solid var(--a-border);gap:8px;margin-bottom:24px;padding-bottom:0;display:flex}.admin-tab{font-family:var(--font-body);color:var(--a-muted);cursor:pointer;border-radius:var(--r-md) var(--r-md) 0 0;background:0 0;border:none;padding:10px 18px;font-size:14px;font-weight:800;transition:color .15s,background .15s;position:relative;bottom:-1.5px}.admin-tab:hover{color:var(--a-ink);background:#00000008}.admin-tab.active{color:var(--a-brand);background:var(--a-surface);border:1.5px solid var(--a-border);border-bottom-color:var(--a-surface)}.admin-content{grid-template-columns:260px 1fr;align-items:start;gap:20px;min-height:600px;display:grid}.admin-list{background:var(--a-surface);border:1.5px solid var(--a-border);border-radius:var(--r-lg);flex-direction:column;gap:6px;padding:12px;display:flex}.btn-new{font-family:var(--font-body);color:#000;background:var(--a-brand);border-radius:var(--r-full);cursor:pointer;width:100%;box-shadow:0 3px 0 var(--a-brand-dk);border:none;margin-bottom:6px;padding:9px 16px;font-size:13px;font-weight:800;transition:transform .15s,box-shadow .15s}.btn-new:hover{box-shadow:0 4px 0 var(--a-brand-dk);transform:translateY(-1px)}.btn-new:active{box-shadow:0 2px 0 var(--a-brand-dk);transform:translateY(0)}.admin-list-item{border-radius:var(--r-md);cursor:pointer;border:1.5px solid #0000;align-items:center;gap:10px;padding:10px 12px;transition:background .15s;display:flex}.admin-list-item:hover{background:#0000000a}.admin-list-item.selected{background:#83ffc11f;border-color:#83ffc166}.list-item-emoji{flex-shrink:0;font-size:20px}.list-item-name{color:var(--a-ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;font-weight:700;overflow:hidden}.active-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.active-dot.active{background:var(--a-green)}.active-dot.inactive{background:var(--a-border-dk)}.list-loading,.list-empty{color:var(--a-muted);text-align:center;padding:20px;font-size:13px;font-weight:600}.admin-editor-wrap{background:var(--a-surface);border:1.5px solid var(--a-border);border-radius:var(--r-lg);overflow:hidden}.admin-editor{flex-direction:column;gap:0;display:flex}.admin-empty-state{color:var(--a-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:80px 24px;display:flex}.empty-icon{opacity:.4;font-size:48px}.admin-empty-state p{font-size:14px;font-weight:700}.form-section{border-bottom:1.5px solid var(--a-border);padding:24px 28px}.form-section:last-child{border-bottom:none}.section-title{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--a-muted);margin:0 0 16px;font-size:13px;font-weight:800}.form-row{align-items:flex-end;gap:12px;margin-bottom:12px;display:flex}.form-row.align-center{align-items:center}.form-row:last-child{margin-bottom:0}.form-group{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.form-group:last-child{margin-bottom:0}.form-group.flex-1{flex:1}.form-group.flex-2{flex:2}.form-group label{color:var(--a-ink-2);letter-spacing:.03em;font-size:12px;font-weight:800}.label-hint{color:var(--a-muted);font-size:11px;font-weight:600}.form-group input,.form-group select,.form-group textarea{font-family:var(--font-body);color:var(--a-ink);background:var(--a-bg);border:1.5px solid var(--a-border);border-radius:var(--r-sm);box-sizing:border-box;outline:none;width:100%;padding:9px 12px;font-size:14px;font-weight:600;transition:border-color .15s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--a-brand);background:#fff}.form-group textarea{resize:vertical;min-height:60px}.form-group select{appearance:none;cursor:pointer}.toggle-switch{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:inline-flex}.toggle-switch input{display:none}.toggle-track{background:var(--a-border-dk);border-radius:var(--r-full);flex-shrink:0;width:40px;height:22px;transition:background .2s;position:relative}.toggle-switch input:checked+.toggle-track{background:var(--a-brand)}.toggle-thumb{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #0003}.toggle-switch input:checked+.toggle-track .toggle-thumb{transform:translate(18px)}.toggle-label{color:var(--a-ink-2);font-size:13px;font-weight:700}.state-tabs{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.state-tab{font-family:var(--font-body);color:var(--a-muted);background:var(--a-bg);border:1.5px solid var(--a-border);border-radius:var(--r-full);cursor:pointer;align-items:center;gap:5px;padding:5px 12px;font-size:12px;font-weight:800;transition:all .15s;display:flex}.state-tab:hover{border-color:var(--a-border-dk);color:var(--a-ink)}.state-tab.active{background:var(--a-brand);border-color:var(--a-brand);color:#fff}.state-tab-count{color:inherit;border-radius:var(--r-full);text-align:center;background:#00000026;min-width:16px;padding:0 5px;font-size:10px;font-weight:800}.state-tab.active .state-tab-count{background:#ffffff4d}.frame-uploader{flex-direction:column;gap:12px;display:flex}.frame-uploader-header{align-items:center;gap:10px;display:flex}.frame-count-badge{color:var(--a-muted);background:var(--a-bg);border:1.5px solid var(--a-border);border-radius:var(--r-full);padding:3px 10px;font-size:11px;font-weight:800}.btn-upload-frames{font-family:var(--font-body);color:#000;border-radius:var(--r-full);cursor:pointer;background:#83ffc126;border:1.5px solid #83ffc166;padding:5px 14px;font-size:12px;font-weight:800;transition:background .15s}.btn-upload-frames:hover{background:#83ffc147}.frames-grid{flex-wrap:wrap;gap:8px;display:flex}.frame-thumb{border-radius:var(--r-sm);border:1.5px solid var(--a-border);background:var(--a-bg);width:72px;height:72px;position:relative;overflow:hidden}.frame-thumb img{object-fit:cover;width:100%;height:100%;display:block}.frame-index{color:#fff;background:#00000080;border-radius:4px;padding:1px 4px;font-size:9px;font-weight:800;position:absolute;top:3px;left:4px}.frame-delete{color:#fff;cursor:pointer;opacity:0;background:#ff4444d9;border:none;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:9px;font-weight:900;transition:opacity .15s;display:flex;position:absolute;top:3px;right:3px}.frame-thumb:hover .frame-delete{opacity:1}.preview-area{align-items:flex-start;gap:24px;display:flex}.preview-pet-wrap{background:var(--a-bg);border:1.5px dashed var(--a-border-dk);border-radius:var(--r-lg);flex-shrink:0;justify-content:center;align-items:center;width:160px;height:160px;display:flex;overflow:hidden}.preview-placeholder{font-size:56px}.preview-state-buttons{flex-wrap:wrap;gap:6px;padding-top:4px;display:flex}.icon-upload-grid{gap:16px;display:flex}.icon-upload-area{background:var(--a-bg);border:1.5px dashed var(--a-border-dk);border-radius:var(--r-md);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:80px;height:80px;transition:border-color .15s;display:flex;position:relative;overflow:hidden}.icon-upload-area:hover{border-color:var(--a-brand)}.icon-dim{opacity:.45}.icon-upload-placeholder{color:var(--a-border-dk);font-size:24px;font-weight:300;line-height:1}.icon-upload-label{color:var(--a-muted);letter-spacing:.06em;text-transform:uppercase;text-align:center;font-size:9px;font-weight:800}.icon-preview-img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.rarity-badge{letter-spacing:.08em;text-transform:uppercase;border-radius:var(--r-full);border:1.5px solid;flex-shrink:0;padding:2px 8px;font-size:10px;font-weight:800}.rarity-common{color:var(--a-muted);border-color:var(--a-border-dk)}.rarity-rare{color:#5b8def;background:#5b8def0f;border-color:#5b8def4d}.rarity-epic{color:#9b6fe8;background:#9b6fe80f;border-color:#9b6fe84d}.rarity-legendary{color:#ff9b21;background:#ff9b2114;border-color:#ff9b214d}.editor-actions{background:var(--a-bg);border-top:1.5px solid var(--a-border);gap:10px;padding:20px 28px;display:flex}.btn-save{font-family:var(--font-body);color:#000;background:var(--a-brand);border-radius:var(--r-full);cursor:pointer;box-shadow:0 3px 0 var(--a-brand-dk);border:none;padding:10px 28px;font-size:14px;font-weight:800;transition:transform .15s,box-shadow .15s,opacity .15s}.btn-save:hover{box-shadow:0 4px 0 var(--a-brand-dk);transform:translateY(-1px)}.btn-save:active{transform:translateY(0)}.btn-save:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-delete{font-family:var(--font-body);color:var(--a-red);border-radius:var(--r-full);cursor:pointer;background:#ff44440f;border:1.5px solid #f443;padding:10px 22px;font-size:14px;font-weight:800;transition:background .15s}.btn-delete:hover{background:#ff44441f}@media (width<=860px){.admin-content{grid-template-columns:1fr}.admin-list{flex-flow:wrap}.admin-list-item{width:calc(50% - 3px)}.preview-area{flex-direction:column}}@media (width<=600px){.admin-page{padding:72px 16px 40px}.form-row{flex-direction:column}.form-group.flex-1,.form-group.flex-2{flex:unset;width:100%}}.fb-page{color:#000;background:#fff;min-height:100vh;padding-top:64px;font-family:Nunito,system-ui,sans-serif}.fb-hero{text-align:center;border-bottom:1.5px solid #e5e7eb;padding:100px clamp(20px,6vw,100px) 80px}.fb-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:#888;margin-bottom:16px;font-size:12px;font-weight:700}.fb-h1{letter-spacing:-.04em;margin-bottom:20px;font-family:Syne,system-ui,sans-serif;font-size:clamp(40px,6vw,72px);font-weight:700;line-height:1.1}.fb-h1 em{background:linear-gradient(22deg,#5757c4 5%,#ff94db 48%,#ffe780 90%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-style:normal}.fb-sub{color:#555;max-width:44ch;margin:0 auto;font-size:clamp(16px,2vw,20px);font-weight:500;line-height:1.7}.fb-form-section{padding:80px clamp(20px,6vw,100px)}.fb-form-inner{max-width:640px;margin:0 auto}.fb-form{flex-direction:column;gap:16px;display:flex}.fb-textarea{color:#000;resize:vertical;box-sizing:border-box;background:#fff;border:1.5px solid #e5e7eb;border-radius:20px;outline:none;width:100%;padding:20px 22px;font-family:Nunito,system-ui,sans-serif;font-size:16px;font-weight:500;line-height:1.7;transition:border-color .15s,box-shadow .15s}.fb-textarea:focus{border-color:#8b8bff;box-shadow:0 0 0 4px #8b8bff14}.fb-textarea::placeholder{color:#bbb}.fb-form-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.fb-form-hint{color:#999;font-size:13px;font-weight:500}.fb-link{color:#000;cursor:pointer;background:0 0;border:none;padding:0;font-family:Nunito,system-ui,sans-serif;font-size:13px;font-weight:700;text-decoration:underline}.fb-submit{color:#fff;cursor:pointer;letter-spacing:.01em;background:#000;border:none;border-radius:9999px;padding:13px 32px;font-family:Nunito,system-ui,sans-serif;font-size:15px;font-weight:800;transition:transform .15s,filter .15s}.fb-submit:hover:not(:disabled){filter:brightness(1.2);transform:translateY(-2px)}.fb-submit:disabled{opacity:.35;cursor:not-allowed}.fb-thanks{text-align:center;background:#f0fff8;border:1.5px solid #83ffc1;border-radius:24px;flex-direction:column;align-items:center;gap:14px;padding:56px 40px;display:flex}.fb-thanks-emoji{font-size:56px}.fb-thanks p{color:#000;font-size:18px;font-weight:600}.fb-submit-again{color:#000;cursor:pointer;background:0 0;border:none;font-family:Nunito,system-ui,sans-serif;font-size:14px;font-weight:700;text-decoration:underline}.fb-cta{border-top:1.5px solid #e5e7eb;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;padding:60px clamp(20px,6vw,100px);display:flex}.fb-cta-btn{color:#fff;background:#000;border:2px solid #000;border-radius:9999px;align-items:center;gap:8px;padding:13px 28px;font-family:Nunito,system-ui,sans-serif;font-size:14px;font-weight:800;text-decoration:none;transition:transform .15s,filter .15s;display:inline-flex}.fb-cta-btn:hover{filter:brightness(1.15);transform:translateY(-2px)}.fb-cta-btn--outline{color:#000;background:#fff}.fb-cta-btn--outline:hover{filter:none;background:#f5f5f5}.signin-page{background:#080808;grid-template-columns:1fr 1fr;min-height:100vh;font-family:Nunito,system-ui,sans-serif;display:grid}.signin-left{box-sizing:border-box;border-right:1px solid #ffffff0f;justify-content:center;align-items:center;padding:48px 40px;display:flex;position:relative}.signin-left:before{content:"";pointer-events:none;background:radial-gradient(circle,#8b8bff0f 0%,#0000 70%);border-radius:50%;width:400px;height:400px;position:absolute;top:20%;left:-10%}.signin-form-wrap{flex-direction:column;gap:28px;width:100%;max-width:360px;display:flex}.signin-logo{align-items:center;gap:10px;text-decoration:none;display:flex}.signin-logo-icon{font-size:24px}.signin-logo-name{color:#fff;letter-spacing:-.03em;font-family:Syne,system-ui,sans-serif;font-size:20px;font-weight:800}.signin-copy{flex-direction:column;gap:8px;display:flex}.signin-h1{color:#fff;letter-spacing:-.04em;margin:0;font-family:Syne,system-ui,sans-serif;font-size:32px;font-weight:700;line-height:1.1}.signin-sub{color:#71717a;max-width:32ch;margin:0;font-size:14px;font-weight:500;line-height:1.6}.signin-btns{flex-direction:column;gap:10px;display:flex}.signin-btn{cursor:pointer;letter-spacing:.01em;box-sizing:border-box;border:none;border-radius:14px;justify-content:center;align-items:center;gap:10px;width:100%;padding:14px 20px;font-family:Nunito,system-ui,sans-serif;font-size:14px;font-weight:700;transition:transform .15s,filter .15s,box-shadow .15s;display:flex}.signin-btn:hover{transform:translateY(-2px)}.signin-btn--github{color:#000;background:#fff;box-shadow:0 4px 20px #ffffff1a}.signin-btn--github:hover{box-shadow:0 8px 28px #ffffff29}.signin-btn--google{color:#e2e8f0;box-shadow:none;background:#ffffff0f;border:1px solid #ffffff1a}.signin-btn--google:hover{background:#ffffff1a}.signin-hint{color:#52525b;text-align:center;margin:0;font-size:13px;font-weight:500}.signin-skip{color:#83ffc1;font-weight:700;text-decoration:none;transition:opacity .15s}.signin-skip:hover{opacity:.8}.signin-tos{color:#3f3f46;text-align:center;margin:0;font-size:11px;line-height:1.6}.signin-tos-link{color:#52525b;cursor:pointer;transition:color .15s}.signin-tos-link:hover{color:#71717a}.signin-no-supabase{color:#52525b;text-align:center;border:1px solid #ffffff0f;border-radius:12px;padding:16px;font-size:13px}.signin-right{box-sizing:border-box;background:#050505;justify-content:center;align-items:center;padding:48px 40px;display:flex;position:relative;overflow:hidden}.signin-right:before{content:"";pointer-events:none;background-image:radial-gradient(circle,#ffffff06 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0}.signin-right:after{content:"";pointer-events:none;background:radial-gradient(circle,#83ffc10d 0%,#0000 65%);border-radius:50%;width:500px;height:500px;position:absolute;bottom:-100px;right:-100px}.signin-right-inner{z-index:1;flex-direction:column;align-items:center;gap:28px;width:100%;max-width:480px;display:flex;position:relative}.signin-right-label{color:#fff3;letter-spacing:.12em;text-transform:uppercase;margin:0;font-family:Syne,system-ui,sans-serif;font-size:13px;font-weight:700}.signin-states-grid{grid-template-columns:repeat(3,1fr);gap:12px;width:100%;display:grid}.signin-state-card{cursor:default;background:#111;border:1px solid #ffffff12;border-radius:20px;transition:transform .2s,border-color .2s;overflow:hidden}.signin-state-card:hover{border-color:#ffffff24;transform:translateY(-4px)scale(1.02)}.signin-state-img{aspect-ratio:1;background:#ffffff05;justify-content:center;align-items:center;display:flex;position:relative}.signin-state-img:before{content:"";background:radial-gradient(circle at 50% 60%, var(--glow,#fff) 0%, transparent 65%);opacity:.08;position:absolute;inset:0}.signin-state-emoji{z-index:1;filter:drop-shadow(0 4px 12px var(--glow,transparent));font-size:40px;position:relative}.signin-state-info{border-top:1px solid #ffffff0d;flex-direction:column;gap:2px;padding:10px 14px 12px;display:flex}.signin-state-name{color:#e2e8f0;letter-spacing:-.01em;font-family:Syne,system-ui,sans-serif;font-size:13px;font-weight:700}.signin-state-en{color:#3f3f46;letter-spacing:.05em;text-transform:uppercase;font-size:10px;font-weight:600}.signin-right-sub{color:#fff3;text-align:center;max-width:36ch;margin:0;font-size:13px;font-weight:500;line-height:1.6}@media (width<=860px){.signin-page{grid-template-columns:1fr}.signin-right{display:none}.signin-left{border-right:none;min-height:100vh;padding:40px 24px}}.connect-page{background:#fff;min-height:100vh;font-family:Nunito,system-ui,sans-serif}.connect-nav{border-bottom:1px solid #e5e7eb;padding:20px 40px}.connect-nav-logo{color:#000;letter-spacing:-.02em;font-family:Syne,system-ui,sans-serif;font-size:20px;font-weight:800;text-decoration:none}.connect-inner{max-width:680px;margin:0 auto;padding:60px 24px 80px}.connect-center{flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:80vh;display:flex}.connect-login-hint{color:#666;font-size:16px}.connect-header{text-align:center;margin-bottom:56px}.connect-avatar{background:#83ffc1;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 20px;font-size:22px;font-weight:800;display:flex;overflow:hidden}.connect-avatar img{object-fit:cover;width:100%;height:100%}.connect-h1{letter-spacing:-.03em;color:#000;margin-bottom:10px;font-family:Syne,system-ui,sans-serif;font-size:32px;font-weight:700}.connect-sub{color:#666;font-size:16px;line-height:1.6}.connect-steps{flex-direction:column;gap:0;display:flex}.connect-step{border-bottom:1px solid #f0f0f0;gap:24px;padding:32px 0;transition:opacity .2s;display:flex}.connect-step:last-child{border-bottom:none}.connect-step--dim{opacity:.35;pointer-events:none}.connect-step-num{color:#000;letter-spacing:.02em;background:#83ffc1;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-family:Syne,system-ui,sans-serif;font-size:13px;font-weight:800;display:flex}.connect-step-body{flex:1;padding-top:6px}.connect-step-title{color:#000;margin-bottom:6px;font-size:17px;font-weight:800}.connect-step-desc{color:#666;margin-bottom:16px;font-size:14px;line-height:1.6}.connect-token-wrap{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.connect-token{color:#3f3f46;word-break:break-all;background:#f4f4f5;border-radius:8px;flex:1;min-width:0;padding:8px 14px;font-family:SF Mono,Fira Code,monospace;font-size:12px}.connect-code-wrap{position:relative}.connect-code{color:#e4e4e7;white-space:pre;background:#18181b;border-radius:12px;margin-bottom:10px;padding:16px 20px;font-family:SF Mono,Fira Code,monospace;font-size:13px;line-height:1.7;overflow-x:auto}.connect-btn{cursor:pointer;white-space:nowrap;border:none;border-radius:9999px;align-items:center;gap:6px;padding:10px 22px;font-family:Nunito,system-ui,sans-serif;font-size:14px;font-weight:800;text-decoration:none;transition:transform .15s,filter .15s,opacity .15s;display:inline-flex}.connect-btn:hover{filter:brightness(1.05);transform:translateY(-1px)}.connect-btn:active{transform:translateY(0)}.connect-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.connect-btn--primary{color:#fff;background:#000}.connect-btn--ghost{color:#000;background:#f4f4f5}.connect-btn--text{color:#999;background:0 0;padding:10px 8px;font-size:13px}.connect-btn--sm{padding:7px 14px;font-size:12px}.ach-page{color:#e4e4e7;background:#0a0a0f;min-height:100vh;padding-bottom:80px;font-family:Nunito,system-ui,sans-serif}.ach-page-header{max-width:800px;margin:0 auto;padding:24px 24px 32px}.ach-back{color:#71717a;margin-bottom:20px;font-size:13px;font-weight:700;text-decoration:none;transition:color .15s;display:inline-block}.ach-back:hover{color:#e4e4e7}.ach-page-title{letter-spacing:-.03em;color:#fff;margin-bottom:4px;font-family:Syne,system-ui,sans-serif;font-size:32px;font-weight:800}.ach-page-sub{color:#71717a;margin-bottom:28px;font-size:14px}.ach-summary{background:#ffffff0a;border:1px solid #ffffff14;border-radius:16px;flex-direction:column;gap:16px;padding:20px 24px;display:flex}.ach-summary-progress{align-items:center;gap:14px;display:flex}.ach-summary-bar{background:#ffffff14;border-radius:9999px;flex:1;height:6px;overflow:hidden}.ach-summary-fill{background:linear-gradient(90deg,#83ffc1,#8b8bff);border-radius:9999px;height:100%;transition:width .6s}.ach-summary-count{color:#a1a1aa;white-space:nowrap;font-size:13px;font-weight:700}.ach-summary-rarities{flex-wrap:wrap;gap:12px;display:flex}.ach-summary-rarity{border:1px solid;border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:2px;min-width:60px;padding:8px 14px;display:flex}.ach-summary-rarity-label{letter-spacing:.05em;text-transform:uppercase;opacity:.7;font-size:11px;font-weight:700}.ach-summary-rarity-count{font-size:15px;font-weight:800}.ach-summary-rarity--common{color:#94a3b8;background:#64748b1a;border-color:#64748b40}.ach-summary-rarity--rare{color:#60a5fa;background:#3b82f61a;border-color:#3b82f640}.ach-summary-rarity--epic{color:#a78bfa;background:#8b5cf61a;border-color:#8b5cf640}.ach-summary-rarity--legendary{color:#fbbf24;background:#f59e0b1a;border-color:#f59e0b40}.ach-page-body{flex-direction:column;gap:36px;max-width:800px;margin:0 auto;padding:0 24px;display:flex}.ach-section-label{letter-spacing:.12em;text-transform:uppercase;border-radius:9999px;margin-bottom:14px;padding:4px 12px;font-size:11px;font-weight:800;display:inline-block}.ach-section-label--common{color:#94a3b8;background:#64748b26}.ach-section-label--rare{color:#60a5fa;background:#3b82f626}.ach-section-label--epic{color:#a78bfa;background:#8b5cf626}.ach-section-label--legendary{color:#fbbf24;background:#f59e0b26}.ach-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.ach-card{border:1px solid #ffffff0f;border-radius:14px;align-items:flex-start;gap:14px;padding:16px;transition:transform .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.ach-card--unlocked{background:#ffffff0a}.ach-card--unlocked:hover{transform:translateY(-2px);box-shadow:0 6px 24px #0000004d}.ach-card--locked{opacity:.45;background:#ffffff05}.ach-card-icon{background:#ffffff0f;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.ach-card-lock{filter:grayscale();font-size:16px}.ach-card-info{flex:1;min-width:0}.ach-card-name{white-space:nowrap;text-overflow:ellipsis;margin-bottom:3px;font-size:14px;font-weight:800;overflow:hidden}.ach-card--locked .ach-card-name{color:#52525b}.ach-card-desc{color:#71717a;font-size:12px;line-height:1.5}.ach-card-progress{align-items:center;gap:8px;margin-top:8px;display:flex}.ach-card-progress-bar{background:#ffffff14;border-radius:9999px;flex:1;height:4px;overflow:hidden}.ach-card-progress-fill{background:#52525b;border-radius:9999px;height:100%;transition:width .5s}.ach-card-progress-text{color:#52525b;white-space:nowrap;font-size:10px;font-weight:700}.ach-card-badge{border-radius:50%;width:7px;height:7px;position:absolute;top:10px;right:10px}.ach-card-badge--common{background:#94a3b8}.ach-card-badge--rare{background:#60a5fa}.ach-card-badge--epic{background:#a78bfa;box-shadow:0 0 6px #a78bfa80}.ach-card-badge--legendary{background:#fbbf24;box-shadow:0 0 8px #fbbf2480}@media (width<=480px){.ach-grid{grid-template-columns:1fr}.ach-summary-rarities{gap:8px}}.app{min-height:100vh;position:relative}.bg-grid{pointer-events:none;z-index:0;background-image:radial-gradient(circle,#ffffff06 1px,#0000 1px);background-size:32px 32px;position:fixed;inset:0}.app>:not(.bg-grid){z-index:1;position:relative}
