:root{--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#0a0a0d;--ink-2:#101014;--panel:#141419;--panel-2:#1b1b22;--panel-3:#26262f;--line:#ffffff14;--line-strong:#ffffff29;--text:#f3f3ee;--text-dim:#a4a4ad;--text-faint:#6c6c78;--lime:#cbf24e;--lime-dim:#aecb45;--violet:#b79cff;--danger:#ff6b6b;--radius:16px;--radius-sm:10px;--font-display:"Space Grotesk", system-ui, sans-serif;--font-body:"Inter", system-ui, sans-serif;--font-menu:"Russo One", "Space Grotesk", system-ui, sans-serif;--shadow:0 20px 50px #00000080;--glow:0 0 0 1px #cbf24e66, 0 10px 30px #cbf24e2e}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-body);background:radial-gradient(900px 600px at 8% 4%, #cbf24e17, transparent 60%), radial-gradient(900px 700px at 98% 100%, #b79cff1a, transparent 60%), var(--ink);color:var(--text);-webkit-font-smoothing:antialiased;background-attachment:fixed}h1,h2,.mode-title,.ai-overlay-title{font-family:var(--font-display)}::selection{background:var(--lime);color:#101014}.sidebar::-webkit-scrollbar{width:10px}.sidebar::-webkit-scrollbar-thumb{background:var(--panel-3);background-clip:padding-box;border:3px solid #0000;border-radius:999px}.mode-select{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:100vh;padding:40px 20px;display:flex;position:relative;overflow:hidden}.mode-select:before,.mode-select:after{content:"";filter:blur(90px);opacity:.5;z-index:0;border-radius:50%;animation:14s ease-in-out infinite float-blob;position:absolute}.mode-select:before{background:radial-gradient(circle,#cbf24e80,#0000 70%);width:520px;height:520px;top:-140px;left:-80px}.mode-select:after{background:radial-gradient(circle,#b79cff80,#0000 70%);width:480px;height:480px;animation-delay:-7s;bottom:-160px;right:-100px}@keyframes float-blob{0%,to{transform:translate(0)scale(1)}50%{transform:translate(40px,-30px)scale(1.12)}}.mode-select>*{z-index:1;position:relative}.mode-brand{letter-spacing:.45em;text-transform:uppercase;color:var(--lime);margin:0 0 10px;font-size:12px;font-weight:600}.mode-select h1{letter-spacing:-.04em;color:var(--text);margin:0;font-size:clamp(48px,9vw,96px);font-weight:700;line-height:.95}.mode-select h1:after{content:"_";color:var(--lime);animation:1.1s step-end infinite caret}@keyframes caret{50%{opacity:0}}.mode-select>p{color:var(--text-dim);max-width:460px;margin:18px 0 40px;font-size:16px}.mode-cards{flex-wrap:wrap;justify-content:center;gap:20px;display:flex}.mode-card{text-align:left;border:1px solid var(--line);width:300px;box-shadow:inset 0 1px 0 #ffffff0f, var(--shadow);color:var(--text);cursor:pointer;background:linear-gradient(#ffffff0d,#ffffff04),#131319eb;border-radius:22px;flex-direction:column;align-items:flex-start;gap:10px;padding:30px 26px;transition:transform .25s cubic-bezier(.2,.8,.2,1),border-color .25s;animation:.7s cubic-bezier(.2,.8,.2,1) both rise;display:flex;position:relative;overflow:hidden}.mode-card:nth-child(2){animation-delay:.1s}.mode-card:after{content:"";transform-origin:0;background:var(--lime);width:100%;height:3px;transition:transform .3s;position:absolute;bottom:0;left:0;transform:scaleX(0)}.mode-card:hover{border-color:var(--line-strong);transform:translateY(-8px)}.mode-card:hover:after{transform:scaleX(1)}.mode-icon{width:58px;height:58px;color:var(--lime);background:#cbf24e1a;border:1px solid #cbf24e40;border-radius:16px;justify-content:center;align-items:center;transition:transform .3s;display:inline-flex}.mode-card:hover .mode-icon{transform:translateY(-3px)scale(1.08)}.mode-title{letter-spacing:-.02em;font-size:26px;font-weight:600}.mode-desc{color:var(--text-dim);font-size:13px;line-height:1.5}.mode-card .go{color:var(--lime);opacity:0;align-items:center;gap:6px;margin-top:8px;font-size:13px;font-weight:600;transition:opacity .25s,transform .25s;display:inline-flex;transform:translate(-6px)}.mode-card:hover .go{opacity:1;transform:translate(0)}.app{height:100vh;display:flex;overflow:hidden}.sidebar{border-right:1px solid var(--line);background:#101014e0;flex-direction:column;flex-shrink:0;gap:12px;width:340px;padding:20px 16px 48px;display:flex;overflow-y:auto}.sidebar h1{letter-spacing:-.02em;color:var(--text);margin:0;font-size:21px;font-weight:700}.sidebar h1 .tag{color:var(--lime)}.sidebar .subtitle{color:var(--text-dim);margin:-6px 0 4px;font-size:12px;line-height:1.4}.back-link{align-self:flex-start;align-items:center;gap:6px;font-weight:500;transition:color .15s,gap .15s;color:var(--text-faint)!important;background:0 0!important;border:none!important;padding:2px 0!important;font-size:12px!important;display:inline-flex!important}.back-link:hover{gap:9px;color:var(--lime)!important}.sidebar section{border-radius:var(--radius);border:1px solid var(--line);background:#ffffff09;flex-direction:column;gap:11px;padding:15px 14px;animation:.45s cubic-bezier(.2,.8,.2,1) both rise;display:flex;box-shadow:inset 0 1px #ffffff0d}.sidebar section:first-of-type{animation-delay:30ms}.sidebar section:nth-of-type(2){animation-delay:70ms}.sidebar section:nth-of-type(3){animation-delay:.11s}.sidebar section:nth-of-type(4){animation-delay:.15s}.sidebar section:nth-of-type(5){animation-delay:.19s}.sidebar h2{text-transform:uppercase;letter-spacing:.12em;color:var(--text-dim);align-items:center;gap:9px;margin:0;font-size:12px;font-weight:600;display:flex}.sec-ico{width:28px;height:28px;color:var(--lime);background:#cbf24e1a;border:1px solid #cbf24e40;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.sec-ico svg{width:15px;height:15px}.sidebar button{border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--text);font-size:13px;font-weight:500;font-family:var(--font-body);cursor:pointer;background:#ffffff08;justify-content:center;align-items:center;gap:8px;padding:10px 13px;transition:transform .12s,background .15s,border-color .15s,box-shadow .15s,color .15s;display:flex}.sidebar button svg{flex-shrink:0}.sidebar button:hover:not(:disabled){background:var(--panel-2);border-color:var(--lime);color:var(--lime)}.sidebar button:active:not(:disabled){transform:scale(.98)}.sidebar button:disabled{opacity:.4;cursor:default}.sidebar button.primary{background:var(--lime);color:#101014;letter-spacing:.01em;border:none;font-weight:700}.sidebar button.primary:hover:not(:disabled){color:#101014;background:#d7f76a;border-color:#0000;transform:translateY(-2px);box-shadow:0 10px 26px #cbf24e59}.sidebar button.danger{color:#ff8f8f;border-color:#ff6b6b66}.sidebar button.danger:hover:not(:disabled){border-color:var(--danger);color:#ffb0b0;background:#ff6b6b24}.sidebar button.mini{background:var(--panel-3);border:none;margin-left:auto;padding:3px 8px;font-size:12px;line-height:1}.sidebar .row{gap:8px;display:flex}.sidebar .row button,.sidebar .row input[type=text]{flex:1}.sidebar label{color:var(--text-dim);flex-direction:column;gap:6px;font-size:11.5px;display:flex}.sidebar input[type=text],.sidebar select,.ai-section textarea{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--ink);width:100%;color:var(--text);font-size:13px;font-family:var(--font-body);padding:10px 12px;transition:border-color .15s,box-shadow .15s}.sidebar input[type=text]:focus,.sidebar select:focus,.ai-section textarea:focus{border-color:var(--lime);outline:none;box-shadow:0 0 0 3px #cbf24e29}.ai-section textarea{resize:vertical;line-height:1.45}.sidebar input[type=range]{appearance:none;background:var(--panel-3);cursor:pointer;border-radius:999px;width:100%;height:4px}.sidebar input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--lime);border:2px solid var(--ink);border-radius:50%;width:16px;height:16px;box-shadow:0 2px 6px #00000080}.sidebar .note{color:var(--text-faint);margin:0;font-size:11px;line-height:1.45}.sidebar .status{color:var(--lime);margin:0;font-size:12px}.sidebar .error{color:#ff8f8f;margin:0;font-size:12px}.sidebar .warning{color:#f5c451;margin:0;font-size:12px;line-height:1.4}.swatches{grid-template-columns:repeat(6,1fr);gap:7px;display:grid}.swatch{aspect-ratio:1;cursor:pointer;border-radius:8px;transition:transform .12s,box-shadow .12s;border:2px solid #0000!important;padding:0!important}.swatch:hover{transform:scale(1.14);box-shadow:0 4px 12px #00000080}.swatch.active{outline:2px solid var(--lime);outline-offset:2px}.color-row{justify-content:space-between;align-items:center;flex-direction:row!important}.color-row input[type=color]{cursor:pointer;background:0 0;border:none;border-radius:8px;width:46px;height:28px}.check-row{cursor:pointer;color:var(--text-dim);align-items:center;flex-direction:row!important;gap:9px!important}.check-row input[type=checkbox]{width:15px;height:15px;accent-color:var(--lime);cursor:pointer}.decal-list{flex-direction:column;gap:5px;margin:0;padding:0;list-style:none;display:flex}.decal-list li{cursor:pointer;background:var(--ink);border:1px solid #0000;border-radius:9px;align-items:center;gap:9px;padding:6px 8px;font-size:12px;transition:border-color .12s,background .12s;display:flex}.decal-list li:hover{background:var(--panel-2)}.decal-list li.active{border-color:var(--lime);background:#cbf24e1a}.decal-list li.empty{color:var(--text-faint);cursor:default;justify-content:center;padding:12px 8px}.decal-list li.empty:hover{background:var(--ink)}.decal-list img{object-fit:contain;background:repeating-conic-gradient(#26262f 0% 25%,#1b1b22 0% 50%) 50%/12px 12px;border-radius:6px;flex-shrink:0;width:30px;height:30px}.decal-list li span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ai-section{background:radial-gradient(130% 90% at 0 0,#cbf24e1f,#0000 55%),#ffffff09!important;border:1px solid #cbf24e4d!important}.ai-section h2{color:var(--lime)}.viewer{background:radial-gradient(120% 100% at 50% 0%, #12121a, var(--ink));flex:1;position:relative}.viewer-btn{z-index:5;border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);color:var(--text-dim);font-family:var(--font-body);cursor:pointer;background:#101014b8;border-radius:999px;align-items:center;gap:7px;padding:9px 14px;font-size:12.5px;font-weight:500;transition:color .15s,border-color .15s,background .15s,transform .12s;display:inline-flex;position:absolute;top:16px;right:16px}.viewer-btn svg{flex-shrink:0}.viewer-btn:hover{color:var(--lime);border-color:var(--lime);transform:translateY(-1px)}.viewer-btn.active{color:#101014;background:var(--lime);border-color:var(--lime)}.viewer-hint{border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--text-dim);pointer-events:none;white-space:nowrap;background:#101014d1;border-radius:999px;padding:8px 16px;font-size:12px;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.ai-overlay{z-index:9999;cursor:wait;background:#060609f0;justify-content:center;align-items:center;animation:.25s fade-in;display:flex;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}}.ai-overlay-card{background:linear-gradient(165deg, var(--panel-2), var(--ink-2));border:1px solid var(--line-strong);width:min(90vw,470px);box-shadow:var(--shadow);text-align:center;border-radius:22px;flex-direction:column;align-items:center;padding:42px 34px 30px;animation:.35s cubic-bezier(.2,.8,.2,1) both rise;display:flex}.ai-orbit{width:96px;height:96px;margin-bottom:24px;position:relative}.ai-orbit-ring{border:3px solid #0000;border-top-color:var(--lime);border-right-color:var(--violet);border-radius:50%;animation:1s linear infinite ai-spin;position:absolute;inset:0}.ai-orbit-core{justify-content:center;align-items:center;font-size:34px;animation:1.6s ease-in-out infinite ai-pulse;display:flex;position:absolute;inset:0}.ai-orbit-dot{border-radius:50%;width:10px;height:10px;margin:-5px;animation:1.4s linear infinite ai-orbit-spin;position:absolute;top:50%;left:50%}.ai-orbit-dot-1{--r:54px;background:var(--lime)}.ai-orbit-dot-2{--r:54px;background:var(--violet);animation-delay:-.46s}.ai-orbit-dot-3{--r:54px;background:#fff;animation-delay:-.93s}@keyframes ai-spin{to{transform:rotate(360deg)}}@keyframes ai-pulse{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.18)}}@keyframes ai-orbit-spin{0%{transform:rotate(0deg) translateX(var(--r)) rotate(0deg)}to{transform:rotate(360deg) translateX(var(--r)) rotate(-360deg)}}.ai-overlay-title{letter-spacing:-.01em;color:#fff;margin:0 0 12px;font-size:22px;font-weight:600}.ai-overlay-status{min-height:40px;color:var(--text-dim);margin:0 0 20px;font-size:14px;line-height:1.45;animation:.35s rise}.ai-dots span{animation:1.4s infinite both ai-blink}.ai-dots span:nth-child(2){animation-delay:.2s}.ai-dots span:nth-child(3){animation-delay:.4s}@keyframes ai-blink{0%,80%,to{opacity:0}40%{opacity:1}}.ai-overlay-bar{background:var(--panel-3);border-radius:999px;width:100%;height:4px;overflow:hidden}.ai-overlay-bar-fill{background:linear-gradient(90deg, var(--lime), var(--violet), #fff);border-radius:999px;width:40%;height:100%;animation:1.3s ease-in-out infinite ai-bar;display:block}@keyframes ai-bar{0%{transform:translate(-120%)}to{transform:translate(320%)}}.ai-overlay-time{letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);margin:14px 0 0;font-size:11px}@keyframes rise{0%{opacity:0;transform:translateY(12px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(6px);background:#06060999;justify-content:center;align-items:center;padding:20px;animation:.18s both fade;display:flex;position:fixed;inset:0}.modal{-webkit-backdrop-filter:blur(20px);border:1px solid var(--line-strong);background:#14141aeb;border-radius:18px;width:100%;max-width:430px;padding:22px;animation:.22s cubic-bezier(.2,.8,.2,1) both rise;box-shadow:0 24px 60px #00000080}.modal h3{font-family:var(--font-display);margin:0 0 2px;font-size:19px}.modal-sub{color:var(--text-dim);margin:0 0 16px;font-size:13px}.modal-opt{border:1px solid var(--line);cursor:pointer;background:#ffffff05;border-radius:12px;align-items:flex-start;gap:11px;margin-bottom:10px;padding:13px 14px;transition:border-color .15s,background .15s;display:flex}.modal-opt.sel{background:#cbf24e12;border-color:#cbf24e99}.modal-opt input{accent-color:var(--lime);margin-top:3px}.modal-opt span{flex-direction:column;gap:3px;font-size:13.5px;display:flex}.modal-opt em{color:var(--text-faint);font-size:12px;font-style:normal;line-height:1.35}.modal-variant{color:var(--text-dim);align-items:center;gap:10px;margin:2px 2px 4px;font-size:13px;display:flex}.modal-variant select{background:var(--panel-2);color:var(--text);border:1px solid var(--line-strong);text-transform:uppercase;border-radius:8px;padding:6px 10px}.modal-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.modal-actions button{border-radius:var(--radius-sm);border:1px solid var(--line-strong);color:var(--text);font-family:var(--font-body);cursor:pointer;background:0 0;padding:10px 18px;font-size:13px;font-weight:500;transition:background .15s,border-color .15s,transform .12s}.modal-actions button:hover{border-color:var(--line-strong);background:#ffffff0d}.modal-actions button.primary{background:var(--lime);color:#101014;border-color:#0000;font-weight:600}.modal-actions button.primary:hover{background:#d7f76a;transform:translateY(-1px)}@keyframes fade{0%{opacity:0}to{opacity:1}}.modal-target{grid-template-columns:1.1fr 1.4fr .7fr;gap:10px;margin-bottom:6px;display:grid}.modal-target label{color:var(--text-dim);flex-direction:column;gap:5px;font-size:11.5px;display:flex}.modal-target select,.modal-target input{background:var(--panel-2);color:var(--text);border:1px solid var(--line-strong);border-radius:8px;padding:8px 9px;font-size:13px}.modal-target-hint{color:var(--text-faint);word-break:break-all;margin:0 2px 16px;font-size:11.5px}.upload-btn.dragging{border-color:var(--lime)!important;color:var(--lime)!important;background:#cbf24e1f!important;border-style:dashed!important}.viewer.cloning canvas{cursor:crosshair}.viewer-tools{z-index:5;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:absolute;top:16px;right:16px}.viewer-tools .viewer-btn{position:static}.catalog-modal{flex-direction:column;max-width:720px;max-height:84vh;display:flex}.cat-chips{flex-wrap:wrap;gap:7px;margin-bottom:14px;display:flex}.cat-chip{border:1px solid var(--line-strong);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:6px 11px;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.cat-chip em{color:var(--text-faint);font-size:10.5px;font-style:normal}.cat-chip.sel{background:var(--lime);color:#101014;border-color:#0000}.cat-chip.sel em{color:#10101499}.catalog-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:10px;min-height:240px;padding:2px;display:grid;overflow-y:auto}.cat-item{border:1px solid var(--line);cursor:pointer;background:#ffffff08;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:10px 6px 8px;transition:border-color .15s,transform .12s,background .15s;display:flex}.cat-item:hover{border-color:var(--lime);background:#cbf24e0f;transform:translateY(-2px)}.cat-item img{object-fit:contain;width:84px;height:84px}.cat-ph{width:84px;height:84px;color:var(--text-faint);background:#ffffff08;border-radius:10px;justify-content:center;align-items:center;animation:1.4s ease-in-out infinite pulse-ph;display:flex}@keyframes pulse-ph{50%{opacity:.45}}.cat-label{color:var(--text-dim);font-size:11px}.recents{width:100%;max-width:960px;margin-top:44px;animation:.8s cubic-bezier(.2,.8,.2,1) both rise}.recents-title{font-family:var(--font-display);color:var(--text-dim);letter-spacing:.06em;text-transform:uppercase;text-align:left;margin:0 0 14px;font-size:15px;font-weight:600}.recents-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;display:grid}.recent-card{border:1px solid var(--line);cursor:pointer;background:#18181ee6;border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:10px 8px;transition:border-color .15s,transform .14s,background .15s;display:flex;position:relative}.recent-card:hover{border-color:var(--lime);background:#cbf24e0f;transform:translateY(-3px)}.recent-card img{aspect-ratio:1;object-fit:cover;background:#0c0c10;border-radius:9px;width:100%}.recent-ph{aspect-ratio:1;width:100%;color:var(--text-faint);background:#0c0c10;border-radius:9px;justify-content:center;align-items:center;display:flex}.recent-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12px;font-weight:600;overflow:hidden}.recent-meta{color:var(--text-faint);align-items:center;gap:5px;font-size:10.5px;display:inline-flex}.recent-del{width:22px;height:22px;color:var(--text-dim);cursor:pointer;opacity:0;background:#0a0a0dbf;border:none;border-radius:50%;font-size:11px;transition:opacity .15s,color .15s;position:absolute;top:6px;right:6px}.recent-card:hover .recent-del{opacity:1}.recent-del:hover{color:#ff7a7a}.recent-spin{aspect-ratio:1;background-color:#0c0c10;background-repeat:no-repeat;border-radius:10px;width:100%}.recent-card .recent-name{font-size:13.5px}@media (prefers-reduced-motion:reduce){.ai-orbit-ring{animation:1s linear infinite ai-spin!important}.ai-orbit-core{animation:1.6s ease-in-out infinite ai-pulse!important}.ai-orbit-dot{animation:1.4s linear infinite ai-orbit-spin!important}.ai-dots span{animation:1.4s infinite both ai-blink!important}.ai-overlay-bar-fill{animation:1.3s ease-in-out infinite ai-bar!important}}.cat-preview{z-index:80;border:1px solid var(--line-strong);pointer-events:none;background:#101016f7;border-radius:16px;flex-direction:column;gap:8px;width:340px;padding:12px 12px 10px;animation:.12s both fade;display:flex;position:fixed;box-shadow:0 24px 70px #0009}.cat-preview img{aspect-ratio:1;object-fit:contain;background:#0c0c10;border-radius:10px;width:100%}.cat-preview-low{filter:blur(1px);opacity:.9}.cat-ph.big{aspect-ratio:1;width:100%}.cat-preview-label{text-align:center;color:var(--text-dim);font-size:12px}.userbar{z-index:60;font-size:.8rem;animation:.5s cubic-bezier(.2,.8,.2,1) both userbar-in;position:fixed;top:12px;right:14px}@keyframes userbar-in{0%{opacity:0;transform:translateY(-14px)}}.userbar-pill{cursor:pointer;color:var(--text);font-family:var(--font-menu);letter-spacing:.02em;-webkit-backdrop-filter:blur(16px)saturate(1.4);background:linear-gradient(150deg,#ffffff1a,#ffffff08 45%,#cbf24e0d);border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:9px;padding:7px 12px 7px 8px;font-size:.78rem;transition:transform .22s cubic-bezier(.34,1.56,.64,1),border-color .2s,box-shadow .25s;display:flex;box-shadow:inset 0 1px #ffffff1f,0 8px 24px #00000059}.userbar--overgl .userbar-pill,.userbar--overgl .userbar-menu{-webkit-backdrop-filter:none;background:linear-gradient(150deg,#ffffff12,#ffffff05 45%,#cbf24e0a),#121218ed}.userbar-pill:hover{border-color:#cbf24e66;transform:translateY(-2px);box-shadow:inset 0 1px #ffffff24,0 10px 30px #00000073,0 0 0 1px #cbf24e1f}.userbar-pill img{border-radius:50%;width:26px;height:26px;box-shadow:0 0 0 2px #cbf24e59}.userbar-name{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.userbar-credits{color:var(--lime);background:#cbf24e24;border:1px solid #cbf24e4d;border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:.72rem;display:inline-flex}.userbar-caret{color:var(--text-dim);transition:transform .25s cubic-bezier(.2,.8,.2,1)}.userbar--open .userbar-caret{transform:rotate(180deg)}.userbar-menu{-webkit-backdrop-filter:blur(18px)saturate(1.4);opacity:0;transform-origin:100% 0;pointer-events:none;background:linear-gradient(160deg,#ffffff14,#ffffff05 55%);border:1px solid #ffffff24;border-radius:14px;flex-direction:column;gap:2px;min-width:218px;padding:6px;transition:opacity .18s,transform .22s cubic-bezier(.2,.8,.2,1);display:flex;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-6px)scale(.97);box-shadow:inset 0 1px #ffffff1a,0 18px 46px #0000008c}.userbar--open .userbar-menu{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.userbar-menu button{width:100%;color:var(--text);font-family:var(--font-menu);letter-spacing:.03em;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:9px;align-items:center;gap:10px;padding:9px 11px;font-size:.74rem;transition:background .15s,color .15s,transform .15s;display:flex}.userbar-menu button svg{color:var(--text-dim);transition:color .15s,transform .2s cubic-bezier(.34,1.56,.64,1)}.userbar-menu button:hover{color:var(--lime);background:#cbf24e1a;transform:translate(2px)}.userbar-menu button:hover svg{color:var(--lime);transform:scale(1.15)}.userbar-menu .userbar-danger:hover{color:var(--danger);background:#ff6b6b1a}.userbar-menu .userbar-danger:hover svg{color:var(--danger)}.userbar-sep{background:#ffffff14;height:1px;margin:3px 8px}.login-screen .discord-btn{cursor:pointer;color:#fff;background:#5865f2;border:none;border-radius:12px;align-items:center;gap:10px;margin-top:18px;padding:12px 22px;font-size:1rem;font-weight:700;display:inline-flex}.login-screen .discord-btn:hover{background:#4752c4}.admin-modal{max-width:620px;max-height:80vh;overflow-y:auto}.admin-modal h4{text-transform:uppercase;letter-spacing:.06em;color:var(--muted,#8b8b95);margin:14px 0 6px;font-size:.8rem}.admin-table{flex-direction:column;gap:4px;display:flex}.admin-row{background:#ffffff0a;border-radius:8px;align-items:center;gap:8px;padding:5px 8px;font-size:.8rem;display:flex}.admin-row img{border-radius:50%;width:20px;height:20px}.admin-row .admin-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.admin-row .admin-credits{color:var(--acid,#c8f751);font-weight:700}.admin-row input{width:62px}.admin-row .neg{color:#ff7b7b}.admin-row .pos{color:#7bf78b}.admin-row .admin-ts{color:var(--muted,#8b8b95);font-size:.7rem}.admin-ph{background:#ffffff26;border-radius:50%;width:20px;height:20px}.landing{max-width:1120px;min-height:100vh;margin:0 auto;padding:0 24px 40px;overflow-y:auto}.land-nav{z-index:40;background:linear-gradient(#09090cf7,#09090cd9);justify-content:space-between;align-items:center;padding:18px 4px;display:flex;position:sticky;top:0}.land-brand{font-family:var(--font-menu);letter-spacing:.01em;color:#fff;font-size:1.15rem;font-weight:400;text-decoration:none}.land-brand span{color:var(--acid,#c8f751)}.land-links{align-items:center;gap:22px;display:flex}.land-links a{color:#c9c9d2;font-family:var(--font-menu);letter-spacing:.04em;font-size:.8rem;text-decoration:none}.land-links a:hover,.land-links a.active{color:var(--acid,#c8f751)}.land-login{color:#fff;font-family:var(--font-menu);letter-spacing:.03em;cursor:pointer;background:#5865f2;border:none;border-radius:10px;padding:8px 14px;font-weight:400}.land-login:hover{background:#4752c4}.land-hero{text-align:center;padding:64px 12px 40px}.land-hero.small{padding:40px 12px 10px}.land-hero h1{letter-spacing:-.03em;margin:12px 0 18px;font-size:clamp(2rem,5vw,3.4rem);line-height:1.08}.land-hero h1 em{color:var(--acid,#c8f751);font-style:normal}.land-sub{color:#b9b9c3;max-width:640px;margin:0 auto;font-size:1.05rem;line-height:1.55}.land-cta{justify-content:center;gap:14px;margin-top:28px;display:flex}.cta-primary{background:var(--acid,#c8f751);color:#0b0b0e;cursor:pointer;border:none;border-radius:12px;padding:12px 24px;font-size:.95rem;font-weight:800;text-decoration:none;display:inline-block}.cta-primary:hover{filter:brightness(1.1)}.cta-ghost{color:#e7e7ee;border:1px solid #fff3;border-radius:12px;padding:12px 24px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-block}.cta-ghost:hover{border-color:var(--acid,#c8f751);color:var(--acid,#c8f751)}.features{flex-direction:column;gap:70px;padding:70px 0 30px;display:flex}.feature{grid-template-columns:1.15fr 1fr;align-items:center;gap:40px;display:grid}.feature.reverse{direction:rtl}.feature.reverse>*{direction:ltr}.feat-video{aspect-ratio:16/10;object-fit:cover;background:#101014;border:1px solid #ffffff1a;border-radius:16px;width:100%;box-shadow:0 22px 60px #00000080}.feat-video-ph{color:#fff3;justify-content:center;align-items:center;display:flex}.feat-kicker{color:var(--acid,#c8f751);text-transform:uppercase;letter-spacing:.12em;margin-bottom:6px;font-size:.72rem;font-weight:800}.feat-text h2{letter-spacing:-.02em;margin-bottom:10px;font-size:1.7rem}.feat-desc{color:#b9b9c3;margin-bottom:14px}.feat-text ul{margin:0 0 20px;padding:0;list-style:none}.feat-text li{color:#d6d6de;margin:7px 0;padding-left:22px;font-size:.92rem;position:relative}.feat-text li:before{content:"✓";color:var(--acid,#c8f751);font-weight:800;position:absolute;left:0}.land-footer{color:#8b8b95;border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;margin-top:60px;padding:22px 4px;font-size:.82rem;display:flex}.land-footer a{color:#c9c9d2;margin-left:18px;text-decoration:none}.land-footer a:hover{color:var(--acid,#c8f751)}.price-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;padding:26px 0 8px;display:grid}.price-card{background:#16161ceb;border:1px solid #ffffff1a;border-radius:16px;flex-direction:column;gap:6px;padding:24px 22px;display:flex;position:relative}.price-card.featured{border-color:var(--acid,#c8f751)}.price-tag{background:var(--acid,#c8f751);color:#0b0b0e;text-transform:uppercase;border-radius:999px;padding:3px 10px;font-size:.68rem;font-weight:800;position:absolute;top:-10px;right:16px}.price-amount{font-size:2rem;font-weight:900}.price-per{color:#8b8b95;margin-bottom:8px;font-size:.78rem}.price-card ul{margin:0 0 16px;padding:0;list-style:none}.price-card li{color:#c9c9d2;margin:5px 0;font-size:.85rem}.price-card button{margin-top:auto}.price-costs{padding:40px 0 10px}.price-costs h2{margin-bottom:14px}.cost-table{flex-direction:column;gap:8px;display:flex}.cost-table>div{color:#d6d6de;background:#ffffff0a;border-radius:10px;padding:10px 14px;font-size:.9rem}.cost-table b{color:var(--acid,#c8f751);margin-right:10px}.note.center,.error.center{text-align:center;margin-top:10px}@media (width<=760px){.feature{grid-template-columns:1fr}.land-hero{padding-top:40px}}.lang-btn{color:#c9c9d2;cursor:pointer;background:0 0;border:1px solid #ffffff40;border-radius:8px;padding:5px 10px;font-size:.75rem;font-weight:800}.lang-btn:hover{border-color:var(--acid,#c8f751);color:var(--acid,#c8f751)}.land-nav{-webkit-backdrop-filter:blur(14px)saturate(1.3);background:#0a0a0eb8;border-bottom:1px solid #ffffff12;margin:0 -24px;padding:14px 28px}.land-brand{align-items:center;gap:2px;transition:transform .25s;display:inline-flex}.land-brand:hover{transform:scale(1.05)}.land-links a{padding:4px 2px;transition:color .2s;position:relative}.land-links a:after{content:"";background:var(--acid,#c8f751);transform-origin:0;border-radius:2px;height:2px;transition:transform .25s cubic-bezier(.65,0,.35,1);position:absolute;bottom:-3px;left:0;right:0;transform:scaleX(0)}.land-links a:hover:after,.land-links a.active:after{transform:scaleX(1)}.cta-primary{background:linear-gradient(120deg,#d3ff5e,#a8e63a 55%,#c8f751) 0 0/180% 180%;transition:transform .22s cubic-bezier(.34,1.56,.64,1),box-shadow .25s;position:relative;overflow:hidden;box-shadow:0 4px 18px #c8f75138}.cta-primary:after{content:"";background:linear-gradient(105deg,#0000,#ffffff8c,#0000);width:55%;height:100%;transition:left .55s;position:absolute;top:0;left:-80%;transform:skew(-20deg)}.cta-primary:hover{filter:none;transform:translateY(-3px)scale(1.02);box-shadow:0 10px 30px #c8f75161}.cta-primary:hover:after{left:130%}.cta-primary:active{transform:translateY(-1px)scale(.99)}.cta-ghost{transition:transform .22s,border-color .25s,color .25s,box-shadow .25s,background .25s;position:relative}.cta-ghost:hover{background:#c8f75114;transform:translateY(-3px);box-shadow:0 8px 26px #0006}.cta-ghost:active{transform:translateY(-1px)}.land-login{transition:transform .22s cubic-bezier(.34,1.56,.64,1),box-shadow .25s;position:relative;overflow:hidden;box-shadow:0 4px 14px #5865f259}.land-login:after{content:"";background:linear-gradient(105deg,#0000,#ffffff59,#0000);width:55%;height:100%;transition:left .5s;position:absolute;top:0;left:-80%;transform:skew(-20deg)}.land-login:hover{transform:translateY(-2px)scale(1.03);box-shadow:0 8px 24px #5865f28c}.land-login:hover:after{left:130%}.lang-btn{transition:transform .2s,border-color .2s,color .2s}.lang-btn:hover{transform:translateY(-2px)}.landing .mode-card{transition:transform .28s cubic-bezier(.34,1.56,.64,1),border-color .3s,box-shadow .3s}.landing .mode-card:hover{border-color:#c8f7518c;transform:translateY(-6px);box-shadow:0 18px 44px #00000080,0 0 0 1px #c8f7512e}.landing .mode-card .mode-icon{transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.landing .mode-card:hover .mode-icon{transform:translateY(-4px)rotate(-6deg)scale(1.12)}.landing .mode-card .go{transition:transform .25s,color .25s}.landing .mode-card:hover .go{color:var(--acid,#c8f751);transform:translate(6px)}.price-card{transition:transform .28s cubic-bezier(.34,1.56,.64,1),border-color .3s,box-shadow .3s}.price-card:hover{border-color:#c8f75180;transform:translateY(-6px);box-shadow:0 18px 44px #00000080}.feat-video{transition:transform .4s,box-shadow .4s}.feature:hover .feat-video{transform:scale(1.02);box-shadow:0 30px 80px #000000a6}@keyframes land-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.land-hero>*{animation:.6s both land-up}.land-hero>:nth-child(2){animation-delay:80ms}.land-hero>:nth-child(3){animation-delay:.16s}.land-hero>:nth-child(4){animation-delay:.24s}.landing .mode-cards .mode-card{animation:.55s both land-up}.landing .mode-cards .mode-card:nth-child(2){animation-delay:.1s}.landing .mode-cards .mode-card:nth-child(3){animation-delay:.2s}.community-card{cursor:default}.community-avatar{vertical-align:-2px;border-radius:50%;width:14px;height:14px;margin-right:4px}.public-check{color:#c9c9d2;margin:10px 0 2px;font-size:.8rem}.ad-page{max-width:1180px;min-height:100vh;margin:0 auto;padding:24px 24px 60px}.ad-head{flex-wrap:wrap;align-items:center;gap:18px;padding:8px 0 18px;animation:.5s both land-up;display:flex}.ad-head h1{font-family:var(--font-menu);letter-spacing:.02em;align-items:center;gap:10px;margin:0;font-size:1.35rem;font-weight:400;display:flex}.ad-head h1 svg{color:var(--lime)}.ad-back{color:var(--text-dim);font-size:.85rem;text-decoration:none;transition:color .15s,transform .15s}.ad-back:hover{color:var(--lime)}.ad-ranges{gap:7px;margin-left:auto;display:flex}.ad-tabs{border-bottom:1px solid var(--line);gap:6px;margin-bottom:20px;animation:.5s 60ms both land-up;display:flex}.ad-tabs button{color:var(--text-dim);font-family:var(--font-menu);letter-spacing:.05em;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 18px 12px;font-size:.8rem;transition:color .15s,border-color .2s}.ad-tabs button:hover{color:var(--text)}.ad-tabs button.sel{color:var(--lime);border-bottom-color:var(--lime)}.ad-tiles{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:18px;display:grid}.ad-tile{border:1px solid var(--line);background:#16161ceb;border-radius:14px;flex-direction:column;gap:4px;padding:16px 16px 14px;transition:transform .25s cubic-bezier(.34,1.56,.64,1),border-color .25s;animation:.5s both land-up;display:flex}.ad-tile:hover{border-color:#cbf24e59;transform:translateY(-3px)}.ad-tile-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint);font-size:.68rem}.ad-tile-value{color:var(--text);font-size:1.55rem;font-weight:700}.ad-tile-sub{color:var(--lime-dim);font-size:.72rem}.ad-grid{grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:14px;display:grid}.ad-card{border:1px solid var(--line);background:#16161ceb;border-radius:16px;min-width:0;padding:16px 18px 14px;animation:.55s both land-up}.ad-card h3{letter-spacing:.05em;text-transform:uppercase;color:var(--text-dim);margin:0 0 10px;font-size:.8rem;font-weight:600}.ad-chart-wrap{position:relative}.ad-chart{width:100%;height:auto;display:block}.ad-tick{fill:var(--text-faint);font-size:9.5px;font-family:var(--font-body);font-variant-numeric:tabular-nums}.ad-legend{color:var(--text-dim);gap:14px;margin-bottom:4px;font-size:.72rem;display:flex}.ad-legend i,.ad-tooltip i{border-radius:3px;width:8px;height:8px;margin-right:5px;display:inline-block}.ad-tooltip{border:1px solid var(--line-strong);color:var(--text-dim);pointer-events:none;white-space:nowrap;z-index:5;background:#0c0c11f5;border-radius:10px;flex-direction:column;gap:2px;padding:7px 10px;font-size:.7rem;display:flex;position:absolute;top:4px;transform:translate(-50%);box-shadow:0 10px 26px #00000080}.ad-tooltip b{color:var(--text);font-variant-numeric:tabular-nums}.ad-empty{color:var(--text-faint);pointer-events:none;justify-content:center;align-items:center;margin:0;font-size:.8rem;display:flex;position:absolute;inset:0}.ad-hbars{flex-direction:column;gap:9px;min-height:60px;padding:4px 0;display:flex;position:relative}.ad-hbar-row{grid-template-columns:130px 1fr 110px;align-items:center;gap:10px;font-size:.76rem;display:grid}.ad-hbar-label{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ad-hbar-track{background:#ffffff0d;border-radius:4px;height:12px;overflow:hidden}.ad-hbar-track i{border-radius:4px;height:100%;transition:width .5s cubic-bezier(.2,.8,.2,1);display:block}.ad-hbar-value{color:var(--text);font-variant-numeric:tabular-nums}.ad-hbar-value em{color:var(--text-faint);font-size:.68rem;font-style:normal}.ad-top-users{flex-direction:column;gap:6px;min-height:60px;display:flex;position:relative}.ad-top-row{background:#ffffff08;border-radius:10px;align-items:center;gap:10px;padding:7px 10px;font-size:.78rem;display:flex}.ad-top-row em{color:var(--text-faint);font-variant-numeric:tabular-nums;width:26px;font-style:normal}.ad-top-row img{border-radius:50%;width:22px;height:22px}.ad-top-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.ad-top-spent{color:var(--lime);font-variant-numeric:tabular-nums;font-weight:700}.ad-top-actions{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:.7rem}.ad-search{background:var(--panel-2);border:1px solid var(--line-strong);width:100%;max-width:340px;color:var(--text);border-radius:10px;margin-bottom:12px;padding:9px 13px;font-size:.82rem}.ad-search:focus{border-color:#cbf24e80;outline:none}.ad-users{flex-direction:column;gap:5px;display:flex}.ad-user-row{background:#ffffff08;border-radius:10px;align-items:center;gap:10px;padding:8px 12px;font-size:.8rem;transition:background .15s;display:flex}.ad-user-row:hover{background:#ffffff0f}.ad-user-row img{border-radius:50%;width:26px;height:26px}.ad-user-name{color:var(--text);text-align:left;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;flex:1;padding:0;font-size:.8rem;overflow:hidden}.ad-user-name:hover{color:var(--lime);text-decoration:underline}.ad-user-name em{color:var(--lime-dim);font-size:.7rem;font-style:normal}.ad-user-created{color:var(--text-faint);font-size:.7rem}.ad-user-credits{color:var(--lime);font-variant-numeric:tabular-nums;text-align:right;min-width:56px;font-weight:700}.ad-user-row input{background:var(--panel-2);border:1px solid var(--line-strong);width:64px;color:var(--text);border-radius:8px;padding:5px 8px;font-size:.78rem}.ad-page .mini,.ad-drawer .mini{border:1px solid var(--line-strong);color:var(--text);cursor:pointer;background:0 0;border-radius:8px;padding:5px 11px;font-size:.8rem;transition:border-color .15s,background .15s}.ad-page .mini:hover,.ad-drawer .mini:hover{background:#cbf24e14;border-color:#cbf24e80}.ad-drawer-backdrop{z-index:70;-webkit-backdrop-filter:blur(4px);background:#0606098c;animation:.18s both fade;position:fixed;inset:0}.ad-drawer{border-left:1px solid var(--line-strong);background:#111117fa;width:min(460px,94vw);padding:20px 20px 30px;animation:.28s cubic-bezier(.2,.8,.2,1) both drawer-in;position:absolute;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-24px 0 60px #00000080}@keyframes drawer-in{0%{opacity:0;transform:translate(40px)}}.ad-drawer-head{align-items:center;gap:12px;margin-bottom:16px;display:flex}.ad-drawer-head img{border-radius:50%;width:40px;height:40px;box-shadow:0 0 0 2px #cbf24e4d}.ad-drawer-head>div{flex:1;min-width:0}.ad-drawer-head b{font-size:.95rem}.ad-drawer-head em{color:var(--lime-dim);font-size:.75rem;font-style:normal}.ad-drawer-head small{color:var(--text-faint);margin-top:2px;font-size:.68rem;display:block}.ad-drawer-tiles{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px;display:grid}.ad-drawer-tiles .ad-tile{padding:11px 12px 10px}.ad-drawer-tiles .ad-tile-value{font-size:1.1rem}.ad-drawer h4{text-transform:uppercase;letter-spacing:.07em;color:var(--text-faint);margin:16px 0 8px;font-size:.72rem}.ad-events{flex-direction:column;gap:4px;display:flex}.ad-event-row{background:#ffffff08;border-radius:8px;align-items:center;gap:9px;padding:6px 10px;font-size:.74rem;display:flex}.ad-event-row img{border-radius:50%;width:18px;height:18px}.ad-event-user{text-overflow:ellipsis;white-space:nowrap;min-width:110px;max-width:150px;overflow:hidden}.ad-event-detail{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.ad-event-value{color:var(--lime);font-variant-numeric:tabular-nums;font-weight:700}.ad-event-ip{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:.66rem}.ad-event-ts{color:var(--text-faint);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.68rem}.ad-events .neg{color:#ff7b7b;font-variant-numeric:tabular-nums}.ad-events .pos{color:#7bf78b;font-variant-numeric:tabular-nums}.ad-type{letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);white-space:nowrap;background:#ffffff12;border-radius:999px;padding:2px 8px;font-size:.64rem;font-weight:700}.ad-type-register{color:#34d39d;background:#199e7029}.ad-type-login{color:#6faef2;background:#3987e529}.ad-type-purchase{color:var(--lime);background:#cbf24e24}.ad-type-checkout_start{color:#e8ab3a;background:#c9850029}.ad-type-export{color:#ab9ff0;background:#9085e929}.ad-type-publish{color:#ef8f8f;background:#e6676724}.ad-filters{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.ad-filters .ad-search{max-width:240px;margin-bottom:0}.ad-events-page{min-height:200px;position:relative}.ad-more{border:1px solid var(--line-strong);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:10px;margin:14px auto 0;padding:9px 22px;font-size:.78rem;transition:border-color .15s,color .15s;display:block}.ad-more:hover{color:var(--lime);border-color:#cbf24e80}@media (width<=700px){.ad-grid{grid-template-columns:1fr}.ad-hbar-row{grid-template-columns:90px 1fr 90px}.ad-event-ip,.ad-user-created{display:none}}
