:root{--color-ink:#0B1220;--color-gold:#FFBB00;--color-card:#070B1E;--color-background:#090B15;--color-text-primary:#FFFFFF;--color-text-secondary:rgba(255,255,255,0.7);--color-text-muted:rgba(255,255,255,0.5);--color-border:rgba(255,255,255,0.32);--color-border-subtle:rgba(255,255,255,0.16);--color-shadow:#684C00;--background-primary:var(--color-background);--background-secondary:#0D0F1A;--background-tertiary:#141728;--background-dark:#020202;--glass:rgba(255,255,255,0.1);--error-bg:rgba(220,38,38,0.15);--error-border:rgba(220,38,38,0.4);--text:var(--color-text-primary);--text-inverse:var(--color-ink);--text-disabled:var(--color-text-muted);--primary:var(--color-gold);--accent:var(--color-gold);--border:var(--color-border);--border-light:rgba(255,255,255,0.2);--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-14:56px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;--space-40:160px;--space-48:192px;--space-56:224px;--space-64:256px;--layout-padding-mobile:var(--space-10);--layout-padding-desktop:var(--space-16);--layout-padding-bottom-mobile:var(--space-48);--layout-padding-bottom-desktop:var(--space-40);--radius-xs:2px;--radius-sm:5px;--radius-md:10px;--radius-lg:20px;--radius-xl:30px;--radius-full:9999px;--font-size-display-xl:80px;--font-size-display-lg:60px;--font-size-display-md:50px;--font-size-display-sm:40px;--font-size-display-xs:32px;--font-size-h1:38px;--font-size-h2:30px;--font-size-h3:26px;--font-size-h4:22px;--font-size-h5:20px;--font-size-h6:18px;--font-size-body-lg:18px;--font-size-body:16px;--font-size-body-sm:14px;--font-size-body-xs:12px;--font-size-button-lg:32px;--font-size-button:26px;--font-size-button-sm:22px;--font-size-display-xl-mobile:60px;--font-size-display-lg-mobile:48px;--font-size-display-md-mobile:38px;--font-size-display-sm-mobile:32px;--font-size-h1-mobile:32px;--font-size-h2-mobile:26px;--font-size-h3-mobile:22px;--font-size-h4-mobile:20px;--font-size-body-lg-mobile:16px;--font-size-body-mobile:14px;--font-size-button-lg-mobile:26px;--font-size-button-mobile:22px;--font-heading:var(--font-seraphon),sans-serif;--font-serif:var(--font-seraphon),sans-serif;--font-weight-seraphon:100;--font-weight-light:300;--font-weight-normal:400;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:0.7;--line-height-snug:1.2;--line-height-normal:1.5;--line-height-relaxed:1.6;--line-height-loose:1.8;--z-base:0;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--z-notification:1080;--transition-fast:150ms ease;--transition-normal:300ms;--transition-base:200ms ease;--transition-slow:300ms ease;--transition-slower:400ms ease;--shadow-sm:0 1px 2px rgba(0,0,0,0.3);--shadow-md:0 2px 4px rgba(0,0,0,0.4);--shadow-lg:0 4px 8px rgba(0,0,0,0.5);--shadow-xl:0 8px 16px rgba(0,0,0,0.6);--shadow-2xl:0 16px 32px rgba(0,0,0,0.7);--shadow-box:var(--color-shadow) -2px 4px 0 1px}::view-transition-old(root){animation:vt-fade-out .12s ease-out both}::view-transition-new(root){animation:vt-fade-in .2s ease-in 50ms both}@keyframes vt-fade-out{0%{opacity:1}to{opacity:0}}@keyframes vt-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){::view-transition-new(root),::view-transition-old(root){animation:none}}*{text-decoration:none}*,body,html{box-sizing:border-box}body,html{min-height:100vh;background-color:var(--theme-bgColour,#18171F);margin:0;padding:0;font-family:var(--font-open-sans),sans-serif;color:#fff}html:before{content:"";position:fixed;top:0;left:50%;transform:translateX(-50%) translateZ(0);width:1200px;height:1200px;background-image:var(--theme-bg,url("https://firebasestorage.googleapis.com/v0/b/snaggletooth-forge.firebasestorage.app/o/campaignThemes%2Fislands%2Foptimised%2Fkmglc95bn3eqiglvgkee.webp?alt=media&token=f6c6eaa1-0a74-4eab-9437-d10b05e33555"));background-size:1200px 1200px;background-position:top;background-repeat:no-repeat;z-index:-1;pointer-events:none}a{color:#fff}.seraphon{font-family:var(--font-seraphon),sans-serif}.sans{font-family:var(--font-open-sans),sans-serif}