:root{--bg:#060a1c;--bg-deep:#040613;--surface:rgba(21,30,68,0.72);--surface-2:rgba(31,42,88,0.72);--surface-solid:#131b3f;--border:rgba(132,152,235,0.16);--border-strong:rgba(132,152,235,0.32);--text:#e9ecff;--muted:#98a3cf;--accent:#5865f2;--accent-hover:#6b76ff;--spark:#ffce78;--spark-2:#ff8bc8;--spark-3:#78e2ff;--ok:#3ba55d;--warn:#faa61a;--err:#ed4245;--radius:14px;--shell:1120px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100dvh;color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.6;background-color:var(--bg-deep);background-image:radial-gradient(1100px 620px at 50% -12%,rgba(58,82,190,.38),transparent 62%),radial-gradient(900px 520px at 88% 112%,rgba(37,56,150,.32),transparent 58%),linear-gradient(180deg,#060a1c,#070d26 45%,#040613);background-attachment:fixed}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.55;background-image:radial-gradient(1.4px 1.4px at 12% 18%,rgba(255,255,255,.75),transparent 100%),radial-gradient(1.2px 1.2px at 27% 62%,rgba(200,220,255,.6),transparent 100%),radial-gradient(1.6px 1.6px at 44% 12%,rgba(255,255,255,.55),transparent 100%),radial-gradient(1.2px 1.2px at 63% 44%,rgba(255,236,200,.6),transparent 100%),radial-gradient(1.5px 1.5px at 78% 22%,rgba(255,255,255,.7),transparent 100%),radial-gradient(1.2px 1.2px at 88% 68%,rgba(190,215,255,.55),transparent 100%),radial-gradient(1.3px 1.3px at 34% 84%,rgba(255,255,255,.45),transparent 100%),radial-gradient(1.1px 1.1px at 70% 90%,rgba(255,220,190,.5),transparent 100%);animation:twinkle 7s ease-in-out infinite alternate}@keyframes twinkle{0%{opacity:.35}to{opacity:.7}}.fireworks{position:fixed;inset:0;z-index:0;pointer-events:none}.site-header,footer,main{position:relative;z-index:1}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:20;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:linear-gradient(180deg,rgba(6,10,28,.88),rgba(6,10,28,.55));border-bottom:1px solid var(--border)}.nav{max-width:var(--shell);margin:0 auto;padding:12px 20px;display:flex;gap:16px}.brand,.nav{align-items:center}.brand{display:inline-flex;gap:10px;text-decoration:none;color:var(--text);font-weight:700;font-size:1.05rem;letter-spacing:-.01em;white-space:nowrap}.brand .spark{width:26px;height:26px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff3d6 0,var(--spark) 40%,#ff7a4d 75%,transparent 78%);box-shadow:0 0 14px rgba(255,206,120,.75),0 0 30px rgba(255,138,90,.35);flex-shrink:0}.brand .brand-sub{color:var(--muted);font-weight:500}.nav-links{display:flex;align-items:center;gap:4px;margin-left:8px;flex:1 1}.nav-links a{color:var(--muted);text-decoration:none;font-size:.92rem;font-weight:500;padding:8px 12px;border-radius:9px;white-space:nowrap}.nav-links a:hover{color:var(--text);background:rgba(120,140,235,.12)}.nav-links a[aria-current=page]{color:var(--text);background:rgba(120,140,235,.16)}.nav-right{display:flex;margin-left:auto}.nav-right,.profile-chip{align-items:center;gap:10px}.profile-chip{display:inline-flex;padding:5px 12px 5px 5px;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);text-decoration:none;color:var(--text);font-size:.9rem;font-weight:600}.profile-chip:hover{border-color:var(--border-strong)}.profile-chip .fallback,.profile-chip img{width:28px;height:28px;border-radius:50%;background:var(--surface-solid);display:grid;place-items:center;font-size:.8rem;flex-shrink:0}.count-badge{display:inline-block;padding:1px 8px;border-radius:999px;font-size:.75rem;font-weight:700;color:#10142c;background:linear-gradient(135deg,var(--spark),#ff9a5b)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.nav-toggle{display:none;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:8px 12px;font-size:1rem;line-height:1}@media (max-width:860px){.nav-toggle{display:inline-block}.nav-links{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:2px;margin:0;padding:10px 16px 16px;background:rgba(8,12,34,.97);border-bottom:1px solid var(--border)}.brand .brand-sub,.nav-links[data-open=false]{display:none}}main{max-width:720px;margin:0 auto;padding:48px 20px 96px}main.wide{max-width:var(--shell)}h1{font-size:clamp(1.9rem,4.5vw,2.9rem);line-height:1.15;letter-spacing:-.02em;text-shadow:0 0 42px rgba(120,140,255,.28)}h1,h2{margin:0 0 12px}h2{font-size:1.15rem}h3{font-size:1rem;margin:20px 0 8px}p{margin:0 0 16px}.lead,.muted{color:var(--muted)}.lead{font-size:1.05rem;max-width:62ch}.hero{text-align:center;padding:40px 0 8px}.hero .lead{margin-inline:auto}.hero-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:24px}.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:5px 14px;border-radius:999px;background:rgba(120,140,235,.1);color:var(--muted);font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;margin-bottom:18px}.card,.eyebrow{border:1px solid var(--border)}.card{background:var(--surface);border-radius:var(--radius);padding:24px;margin-bottom:16px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 24px 50px -32px rgba(0,0,0,.95),inset 0 1px 0 rgba(255,255,255,.05)}.card[data-inactive=true]{opacity:.45;pointer-events:none}a.card:hover{border-color:var(--border-strong);transform:translateY(-2px);transition:transform .15s ease,border-color .15s ease}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:16px;gap:16px;margin-bottom:16px}.grid .card{margin-bottom:0}.module-icon{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;font-size:1.2rem;border:1px solid rgba(255,255,255,.1);flex-shrink:0}.module-chips{display:flex;flex-wrap:wrap;gap:10px}.module-chip{display:inline-flex;align-items:center;gap:10px;padding:8px 16px 8px 8px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);text-decoration:none;font-weight:600;font-size:.95rem}.module-chip:hover{border-color:var(--border-strong);background:var(--surface-2)}.module-chip .module-icon{width:32px;height:32px;border-radius:50%;font-size:1rem}.module-list{display:grid;grid-gap:10px;gap:10px;margin:28px 0 32px}.module-item{background:var(--surface);border:1px solid var(--border);border-radius:12px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.module-item[open]{border-color:var(--border-strong)}.module-item summary{display:flex;align-items:center;gap:14px;padding:14px 18px;cursor:pointer;list-style:none}.module-item summary::-webkit-details-marker{display:none}.module-item summary:after{content:"+";margin-left:auto;padding-left:12px;color:var(--muted);font-size:1.2rem;line-height:1}.module-item[open] summary:after{content:"–"}.module-item summary:hover{color:#fff}.module-head{display:flex;flex-direction:column;min-width:0}.module-name{font-weight:600}.module-pitch{color:var(--muted);font-size:.9rem}.module-body{padding:0 18px 18px 72px}.module-body p{color:var(--muted);margin:0 0 12px}@media (max-width:560px){.module-body{padding-left:18px}}.config-intro{max-width:720px}.config-layout{display:grid;grid-template-columns:236px minmax(0,1fr);grid-gap:24px;gap:24px;align-items:start}.module-rail{position:-webkit-sticky;position:sticky;top:78px;max-height:calc(100dvh - 100px);overflow-y:auto;display:flex;flex-direction:column;gap:2px;padding:12px 10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.module-rail .step-label{margin:0 0 6px;padding:0 8px}.rail-link{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:10px;border:1px solid transparent;background:transparent;color:var(--muted);text-decoration:none;font-size:.9rem;font-weight:600;line-height:1.3}.rail-link:hover{background:rgba(120,140,235,.12);color:var(--text)}.rail-link[aria-current=location]{background:rgba(120,140,235,.18);border-color:var(--border-strong);color:var(--text)}.rail-icon{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;font-size:.85rem;border:1px solid;flex-shrink:0}.rail-name{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-dot{flex-shrink:0;font-size:.75rem;line-height:1}.rail-dot[data-state=off],.rail-dot[data-state=on]{width:8px;height:8px;border-radius:50%}.rail-dot[data-state=on]{background:var(--ok);box-shadow:0 0 8px rgba(59,165,93,.8)}.rail-dot[data-state=off]{background:rgba(152,163,207,.35)}.module-panel{scroll-margin-top:78px}.config-panels .card:last-child{margin-bottom:0}@media (max-width:900px){.config-layout{grid-template-columns:1fr;gap:14px}.module-rail{position:-webkit-sticky;position:sticky;top:62px;z-index:10;flex-direction:row;gap:6px;max-height:none;overflow-x:auto;overflow-y:hidden;padding:8px;background:rgba(8,12,34,.92);scrollbar-width:none}.module-rail::-webkit-scrollbar{display:none}.module-rail .step-label{display:none}.rail-link{flex-shrink:0}}.tag{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;border:1px solid var(--border);color:var(--muted)}.tag[data-tier=free]{color:#8ce0a8;border-color:rgba(59,165,93,.5)}.tag[data-tier=earned]{color:var(--spark-3);border-color:rgba(120,226,255,.45)}.tag[data-tier=premium]{color:var(--spark);border-color:rgba(255,206,120,.5)}.step-label{display:inline-block;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.stat{text-align:center}.stat .value{display:block;font-size:2.2rem;font-weight:800;line-height:1.1;letter-spacing:-.02em;background:linear-gradient(135deg,#fff 0,var(--spark) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.stat .label{font-size:.82rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.btn,button{display:inline-block;background:linear-gradient(135deg,var(--accent),#7b5cf5);color:#fff;border:none;border-radius:10px;padding:11px 20px;font-size:.95rem;font-weight:600;cursor:pointer;text-decoration:none;font-family:inherit;box-shadow:0 10px 30px -12px rgba(88,101,242,.9)}.btn:hover,button:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-hover),#8d70ff)}button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn.secondary,button.secondary{background:var(--surface-2);border:1px solid var(--border);color:var(--text);box-shadow:none}.btn.secondary:hover,button.secondary:hover:not(:disabled){background:rgba(120,140,235,.2)}input[type=password],input[type=text]{width:100%;background:rgba(4,7,22,.7);border:1px solid var(--border);border-radius:8px;padding:10px 12px;color:var(--text);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.9rem;margin-bottom:12px}input:focus{outline:2px solid var(--accent);outline-offset:-1px}ol.guide{padding-left:20px;color:var(--muted);font-size:.92rem}ol.guide li{margin-bottom:6px}.guild-list{display:grid;grid-gap:8px;gap:8px}.guild{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:var(--surface-2);border:1px solid var(--border);color:var(--text);font-weight:500;box-shadow:none}.guild:hover:not(:disabled){background:rgba(120,140,235,.2)}.guild[data-selected=true]{border-color:var(--accent)}.guild .fallback,.guild img{width:32px;height:32px;border-radius:50%;background:var(--surface-solid);display:grid;place-items:center;font-size:.8rem;flex-shrink:0}.identity-row{display:flex;gap:24px;align-items:flex-start;flex-wrap:wrap;margin:20px 0 16px}.identity-avatar{display:flex;flex-direction:column;align-items:center;gap:10px;width:130px}.identity-avatar .fallback,.identity-avatar img{width:96px;height:96px;border-radius:50%;object-fit:cover;background:var(--surface-solid);border:2px solid var(--border-strong);display:grid;place-items:center;font-size:2rem;font-weight:700}.identity-avatar button{font-size:.82rem;padding:7px 12px;width:100%}.identity-fields{flex:1 1;min-width:260px}.identity-fields label{display:block;font-size:.82rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.identity-fields textarea{width:100%;background:rgba(4,7,22,.7);border:1px solid var(--border);border-radius:8px;padding:10px 12px;color:var(--text);font-family:inherit;font-size:.92rem;line-height:1.5;resize:vertical;margin-bottom:4px}.identity-fields textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}.field-help{font-size:.8rem;margin:0 0 16px}.cropper-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:rgba(3,5,16,.78);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:cropper-fade .16s ease-out}.cropper-panel{width:min(400px,100%);max-height:100%;overflow-y:auto;padding:22px;border:1px solid var(--border-strong);border-radius:18px;background:radial-gradient(600px 220px at 50% -20%,rgba(88,101,242,.22),transparent 70%),linear-gradient(180deg,#18215048,#0b112c),var(--surface-solid);box-shadow:0 30px 70px -20px rgba(0,0,0,.75);animation:cropper-pop .18s ease-out}@keyframes cropper-fade{0%{opacity:0}}@keyframes cropper-pop{0%{opacity:0;transform:translateY(8px) scale(.98)}}.cropper-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.cropper-head .step-label{margin-bottom:2px}.cropper-head h3{margin:0;font-size:1.15rem}.cropper-close{flex-shrink:0;width:32px;height:32px;padding:0;border-radius:50%;background:var(--surface-2);border:1px solid var(--border);color:var(--muted);font-size:.85rem;line-height:1;box-shadow:none}.cropper-close:hover:not(:disabled){background:rgba(120,140,235,.2);color:var(--text);transform:none}.cropper-stage{position:relative;width:320px;max-width:100%;aspect-ratio:1;margin:0 auto;overflow:hidden;border-radius:16px;background:var(--bg-deep);box-shadow:inset 0 0 0 1px var(--border)}.cropper-stage canvas{display:block;width:100%;height:100%;touch-action:none;cursor:-webkit-grab;cursor:grab}.cropper-stage canvas:active{cursor:-webkit-grabbing;cursor:grabbing}.cropper-stage canvas:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.cropper-mask{position:absolute;inset:0;border-radius:50%;pointer-events:none;border:1.5px solid rgba(233,236,255,.75);box-shadow:0 0 0 9999px rgba(4,7,22,.66),inset 0 0 24px rgba(4,7,22,.35)}.cropper-hint{margin:12px 0 14px;text-align:center;font-size:.82rem;color:var(--muted)}.cropper-zoom{display:flex;align-items:center;gap:12px;margin-bottom:20px}.cropper-zoom button{flex-shrink:0;width:34px;height:34px;padding:0;border-radius:50%;background:var(--surface-2);border:1px solid var(--border);color:var(--text);font-size:1.1rem;line-height:1;box-shadow:none}.cropper-zoom button:hover:not(:disabled){background:rgba(120,140,235,.24);transform:none}.cropper-zoom input{flex:1 1;min-width:0;height:4px;-moz-appearance:none;appearance:none;-webkit-appearance:none;border-radius:999px;background:linear-gradient(90deg,var(--accent),#7b5cf5);cursor:pointer}.cropper-zoom input::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:#fff;border:none;box-shadow:0 2px 8px rgba(0,0,0,.5)}.cropper-zoom input::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#fff;border:none;box-shadow:0 2px 8px rgba(0,0,0,.5)}.cropper-actions{display:flex;gap:10px}.cropper-actions button{flex:1 1;font-size:.9rem;padding:11px 14px;white-space:nowrap}.cropper-actions button:first-child{flex:0 0 auto}.status{border-radius:8px;padding:12px 14px;font-size:.9rem;margin-bottom:12px;border:1px solid}.status[data-kind=ok]{border-color:var(--ok);color:#7fe0a0}.status[data-kind=warn]{border-color:var(--warn);color:#ffcf6b}.status[data-kind=err]{border-color:var(--err);color:#ff8a8c}code{background:rgba(4,7,22,.7);border:1px solid var(--border);padding:2px 6px;border-radius:4px;font-size:.85em}main ul{padding-left:20px;color:var(--muted)}main li{margin-bottom:10px}main a{color:#93a2ff}main h2{margin-top:32px}.card h2,.grid .card h2,.hero h1{margin-top:0}footer{max-width:var(--shell);margin:0 auto;padding:24px 20px 48px;display:flex;gap:20px;flex-wrap:wrap;font-size:.85rem;border-top:1px solid var(--border)}footer a{color:var(--muted);text-decoration:none}footer a:hover{color:var(--text)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}body:before{animation:none}a.card:hover{transform:none}}