:root{--brand-purple:#40004c;--brand-yellow:#fcdf25;--bg:#2a1232;--bg-deep:#1f0c28;--bg-card:#0f0814d1;--bg-card-hi:#140a1ae6;--bg-input:#0f08148c;--bg-input-focus:#fcdf250f;--bg-overlay-soft:#f6f1e80f;--bg-overlay-soft-hi:#f6f1e81a;--text:#f6f1e8;--text-muted:#f6f1e8c7;--text-soft:#f6f1e88c;--text-on-yellow:#40004c;--text-on-purple:#fff;--border:#00000073;--border-hi:#0009;--border-soft:#f6f1e829;--border-soft-hi:#f6f1e838;--scrollbar-track:#1f0c28;--scrollbar-thumb:#3a1b45;--scrollbar-thumb-hi:#5a2e6c;--veil:linear-gradient(180deg, #1f0c2891 0%, #1f0c28ad 40%, #1f0c28cc 100%), linear-gradient(90deg, #1f0c288c 0%, #1f0c2845 20%, #1f0c2845 80%, #1f0c288c 100%);--container-auth:460px;--container-post:720px;--container-profile:1100px;--container-app:1280px;--radius-sm:6px;--radius:10px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-pill:999px;--danger:#ff5b5b;--success:#8cd191;--warning:#fcdf25;--shadow-card:0 12px 32px #00000080;--shadow-card-hi:0 30px 60px -20px #00000080;--shadow-button-purple:0 8px 24px -8px #40004c99;--focus-ring:0 0 0 3px #fcdf2559;--glow-yellow:0 0 0 2px #fcdf2526;--fs-display-xl:48px;--fs-display-lg:38px;--fs-display-md:34px;--fs-display-sm:22px;--fs-body-lg:16px;--fs-body:14.5px;--fs-body-sm:13.5px;--fs-caption:12.5px;--fs-eyebrow:11px;--lh-tight:1.1;--lh-display:1.15;--lh-snug:1.2;--lh-body:1.55;--lh-relaxed:1.6;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-black:800;--tracking-tight:-.02em;--tracking-eyebrow:.18em;--tracking-button:.02em;--ease-out-quart:cubic-bezier(.22, .94, .41, 1);--dur-fast:.12s;--dur:.18s;--dur-slow:.22s}.btn{border-radius:var(--radius-md);height:48px;font-family:Nunito,Inter Tight,system-ui,-apple-system,sans-serif;font-size:var(--fs-body);font-weight:var(--fw-bold);letter-spacing:var(--tracking-button);cursor:pointer;transition:transform var(--dur-fast) var(--ease-out-quart), background var(--dur) var(--ease-out-quart), border-color var(--dur) var(--ease-out-quart), box-shadow var(--dur) var(--ease-out-quart), color var(--dur) var(--ease-out-quart);border:1px solid #0000;justify-content:center;align-items:center;gap:10px;padding-inline:22px;display:inline-flex}.btn:disabled{cursor:not-allowed;opacity:.5;pointer-events:none}.btn:focus-visible{box-shadow:var(--focus-ring);outline:none}@media (hover:hover){.btn:not(:disabled):active{transform:scale(.96)}}.btn.sm{height:36px;font-size:var(--fs-body-sm);padding-inline:14px}.btn.lg{height:54px;font-size:var(--fs-body-lg);font-weight:var(--fw-black);padding-inline:28px}.btn.primary{background:var(--brand-purple);color:var(--text-on-purple);box-shadow:var(--shadow-button-purple)}@media (hover:hover){.btn.primary:not(:disabled):hover{transform:translateY(-1px)}}.btn.secondary{background:var(--bg-overlay-soft);border-color:var(--border-soft);color:var(--text)}@media (hover:hover){.btn.secondary:not(:disabled):hover{background:var(--bg-overlay-soft-hi);border-color:var(--border-soft-hi)}}.btn.ghost{color:var(--text-muted);border-color:var(--border-soft);background:0 0}@media (hover:hover){.btn.ghost:not(:disabled):hover{background:var(--bg-overlay-soft);color:var(--text)}}.btn.yellow{background:var(--brand-yellow);color:var(--text-on-yellow);box-shadow:var(--glow-yellow)}.btn.full{width:100%}.btn .label{display:inline-block}.btn .icon{flex-shrink:0}.card{color:var(--text)}.card.default{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:24px}.card.glass{background:var(--bg-card);border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(14px)saturate(130%);box-shadow:var(--shadow-card-hi);border:1px solid #f6f1e81a;padding:44px}@media (width<=819px){.card.glass{padding:28px}}.card.is-elevated{box-shadow:var(--shadow-card-hi)}.card.is-interactive{transition:transform var(--dur) var(--ease-out-quart), box-shadow var(--dur) var(--ease-out-quart)}@media (hover:hover){.card.is-interactive:hover{box-shadow:var(--shadow-card-hi);transform:translateY(-2px)}}.card.is-interactive{cursor:pointer}.form-control{background:var(--bg-input);border:1px solid var(--border-soft);border-radius:var(--radius);width:100%;height:52px;color:var(--text);font-family:Nunito,Inter Tight,system-ui,-apple-system,sans-serif;font-size:var(--fs-body-lg);font-weight:var(--fw-medium);transition:border-color var(--dur) var(--ease-out-quart), background var(--dur) var(--ease-out-quart), box-shadow var(--dur) var(--ease-out-quart);padding:0 14px;display:block}.form-control::placeholder{color:var(--text-soft)}.form-control:focus,.form-control:focus-visible{border-color:var(--brand-yellow);background:var(--bg-input-focus);outline:none}textarea.form-control{height:auto;min-height:120px;line-height:var(--lh-body);resize:vertical;padding:14px}select.form-control{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='rgba(246,241,232,0.55)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 8 10 12 14 8'/></svg>");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;padding-right:36px}.field{margin-bottom:18px;display:block}.field .label{font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);color:var(--text-muted);justify-content:space-between;align-items:baseline;margin-bottom:8px;display:flex}.field .form-error{color:#ff7373;font-size:var(--fs-body-sm);font-weight:var(--fw-medium);margin-top:8px;display:block}.field .field.help,.field .help{color:var(--text-soft);font-size:var(--fs-caption);margin-top:6px;display:block}.field.is-invalid .form-control{border-color:#ff737399}.field.is-valid .form-control{border-color:#8cd19173}.checkbox{cursor:pointer;-webkit-user-select:none;user-select:none;font-size:var(--fs-body-sm);color:var(--text-muted);align-items:center;gap:12px;display:inline-flex}.checkbox input[type=checkbox]{width:20px;height:20px;accent-color:var(--brand-yellow);cursor:pointer;flex-shrink:0}.divider{align-items:center;gap:14px;margin-block:22px;display:flex}.divider .line{background:#f6f1e81f;flex:1;height:1px}.divider .label{font-size:var(--fs-eyebrow);font-weight:var(--fw-bold);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-soft);flex-shrink:0}.divider:not(.has-label) .line{flex:100%}#flash-container{z-index:500;pointer-events:none;flex-direction:column;gap:10px;max-width:min(420px,100vw - 48px);display:flex;position:fixed;top:24px;right:24px}#flash-container>.flash{pointer-events:auto}@media (width<=819px){#flash-container{max-width:none;inset:auto 12px 100px}}.flash{border-radius:var(--radius-md);background:var(--bg-card-hi);border:1px solid var(--border-soft);color:var(--text);font-size:var(--fs-body);box-shadow:var(--shadow-card);animation:flash-in var(--dur-slow) var(--ease-out-quart);align-items:flex-start;gap:12px;padding:14px 18px;display:flex}.flash--success{border-color:#8cd19180}.flash--error{border-color:#ff737399}.flash--warning{border-color:#fcdf258c}.flash--info{border-color:var(--border-soft-hi)}@keyframes flash-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.logo{align-items:center;display:inline-flex}.logo img{width:auto;display:block}.logo.sm img{height:28px}.logo.md img{height:44px}.logo.lg img{height:64px}.icon{color:currentColor;pointer-events:none;flex-shrink:0;justify-content:center;align-items:center;line-height:1;display:inline-flex}.icon svg{fill:currentColor;pointer-events:none;width:100%;height:100%;display:block}.icon.sm{width:14px;height:14px}.icon.md{width:18px;height:18px}.icon.lg{width:22px;height:22px}.icon.xl{width:28px;height:28px}.avatar{border-radius:var(--radius-pill);background:var(--brand-purple);color:var(--brand-yellow);font-family:Nunito,Inter Tight,system-ui,-apple-system,sans-serif;font-weight:var(--fw-bold);letter-spacing:.02em;-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.avatar .initials{text-transform:uppercase;line-height:1}.avatar.sm{width:32px;height:32px;font-size:12px}.avatar.md{width:40px;height:40px;font-size:14px}.avatar.lg{width:56px;height:56px;font-size:18px}.avatar.xl{width:96px;height:96px;font-size:32px}.image-upload{flex-direction:column;gap:10px;display:flex}.image-upload>.label{font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);color:var(--text-muted);align-items:baseline;gap:8px;display:inline-flex}.image-upload .aspect{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--fs-caption);font-weight:var(--fw-regular);color:var(--text-soft)}.image-upload .frame{background:var(--bg-input);border:1px solid var(--border-soft);border-radius:var(--radius-md);width:100%;position:relative;overflow:hidden}.image-upload .frame.aspect-3-2{aspect-ratio:3/2}.image-upload .frame.aspect-3-1{aspect-ratio:3}.image-upload .frame.aspect-16-9{aspect-ratio:16/9}.image-upload .frame.aspect-1-1{aspect-ratio:1}.image-upload .frame[hidden]{display:none}.image-upload .preview{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.image-upload .actions{flex-wrap:wrap;gap:8px;display:flex}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}html,body{min-height:100%}body{color:var(--text);background:var(--bg);font-family:Nunito,Inter Tight,system-ui,-apple-system,sans-serif;font-size:var(--fs-body);line-height:var(--lh-body);font-weight:var(--fw-regular);isolation:isolate;margin:0}body:not(.no-backdrop):before,body:not(.no-backdrop):after{content:"";z-index:-1;pointer-events:none;position:fixed;inset:0}body:not(.no-backdrop):before{opacity:.55;background-image:url(/img/fandom-backdrop.jpg);background-position:50%;background-size:cover}body:not(.no-backdrop):after{background:var(--veil)}::selection{background:var(--brand-yellow);color:var(--text-on-yellow)}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-pill);border:3px solid var(--scrollbar-track)}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hi)}img,picture,video,canvas,svg{max-width:100%;display:block}button,input,textarea,select{font:inherit;color:inherit}h1,h2,h3,h4,h5,h6{line-height:var(--lh-display);font-weight:var(--fw-bold);margin:0}h1.serif-italic,h2.serif-italic,h3.serif-italic,h4.serif-italic,h5.serif-italic,h6.serif-italic{font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:var(--fw-regular)}p{margin:0}a{color:inherit;transition:color var(--dur) var(--ease-out-quart);text-decoration:none}a:hover{color:var(--brand-yellow)}a:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-sm);outline:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.serif-italic{font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:var(--fw-regular)}.eyebrow{font-size:var(--fs-eyebrow);font-weight:var(--fw-bold);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-soft)}
