@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff")}@font-face{font-family:Plex Fallback;src:local("Arial"),local("Helvetica Neue"),local("Helvetica");size-adjust:100.5%;ascent-override:102%;descent-override:27.4%;line-gap-override:0%}@font-face{font-family:Hitmarker Fallback;src:local("Arial"),local("Helvetica Neue"),local("Helvetica");size-adjust:95.1%;ascent-override:99.9%;descent-override:15.8%;line-gap-override:10.5%}@font-face{font-family:HitmarkerText;src:url(/fonts/HitmarkerText/HitmarkerText-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:HitmarkerText;src:url(/fonts/HitmarkerText/HitmarkerText-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:HitmarkerText;src:url(/fonts/HitmarkerText/HitmarkerText-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--red-50: #fff1f1;--red-100: #ffd7d9;--red-200: #ffa8ad;--red-300: #ff6b73;--red-400: #ff3842;--red-500: #ff000a;--red-600: #d60009;--red-700: #a80007;--red-800: #7a0005;--red-900: #4d0003;--teal-50: #e6fffb;--teal-100: #b8fff5;--teal-200: #7cf7e8;--teal-300: #3aeedd;--teal-400: #11e4d2;--teal-500: #00dcc8;--teal-600: #00b3a3;--teal-700: #008a7e;--teal-800: #006159;--teal-900: #003b36;--purple-50: #faf5ff;--purple-100: #f0e2ff;--purple-200: #e0c4ff;--purple-300: #c99bfb;--purple-400: #b877f9;--purple-500: #a855f7;--purple-600: #8b3fd6;--purple-700: #6d2eab;--purple-800: #4f2080;--purple-900: #331456;--green-50: #ebfff2;--green-100: #c2ffd6;--green-200: #85ffad;--green-300: #47ff85;--green-400: #1aff6e;--green-500: #00ff5e;--green-600: #00c94a;--green-700: #009637;--green-800: #006425;--green-900: #003314;--gray-0: #060608;--gray-50: #0c0d10;--gray-100: #131519;--gray-200: #1b1e23;--gray-300: #262a31;--gray-400: #3a3f48;--gray-500: #5b616c;--gray-600: #858a94;--gray-700: #a9aeb7;--gray-800: #d3d6dc;--gray-900: #eef0f3;--white: #ffffff;--black: #000000;--surface-0: var(--gray-0);--surface-1: var(--gray-50);--surface-2: var(--gray-100);--surface-3: var(--gray-200);--surface-glass: rgb(12 13 16 / .72);--surface-nav: linear-gradient(180deg, rgb(6 6 8 / .92), rgb(6 6 8 / .72));--scrim: rgb(0 0 0 / .6);--text-primary: var(--gray-900);--text-secondary: var(--gray-700);--text-muted: var(--gray-600);--text-disabled: var(--gray-500);--border: rgb(255 255 255 / .09);--border-strong: rgb(255 255 255 / .16);--danger: #ff5c5c;--danger-bg: rgb(255 92 92 / .1);--danger-border: rgb(255 92 92 / .4);--warning: #f5b544;--warning-bg: rgb(245 181 68 / .1);--success: #3ddc84;--success-bg: rgb(61 220 132 / .1);--spotify: #1db954;--spotify-on: var(--black);--accent: var(--red-500);--accent-text: var(--red-400);--accent-strong: var(--red-300);--accent-fill: var(--red-600);--accent-fill-hover: var(--red-500);--accent-on-fill: var(--white);--accent-weak: rgb(255 0 10 / .1);--accent-border: rgb(255 0 10 / .42);--accent-glow: 0 0 0 1px rgb(255 0 10 / .5), 0 0 18px rgb(255 0 10 / .28);--accent-shadow: 0 8px 28px rgb(255 0 10 / .18);--focus-ring: 0 0 0 2px var(--surface-0), 0 0 0 4px var(--accent);--font-sans: "IBM Plex Sans", "Plex Fallback", system-ui, sans-serif;--font-display: "HitmarkerText", "Hitmarker Fallback", ui-monospace, monospace;--text-xs: clamp(.6875rem, .66rem + .1vw, .75rem);--text-sm: clamp(.8125rem, .79rem + .1vw, .875rem);--text-md: clamp(.9375rem, .9rem + .15vw, 1rem);--text-lg: clamp(1.0625rem, 1rem + .3vw, 1.25rem);--text-xl: clamp(1.25rem, 1.1rem + .7vw, 1.75rem);--text-2xl: clamp(1.75rem, 1.4rem + 1.6vw, 2.75rem);--text-3xl: clamp(2.25rem, 1.6rem + 3vw, 4.25rem);--tracking-caps: .12em;--leading-tight: 1.15;--leading: 1.5;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--gutter: clamp(1rem, .6rem + 2vw, 2rem);--radius-sm: 2px;--radius: 4px;--radius-lg: 8px;--radius-pill: 999px;--tap: 44px;--nav-h: 56px;--container: 72rem;--container-narrow: 28rem;--shadow-1: 0 1px 2px rgb(0 0 0 / .5);--shadow-2: 0 8px 24px rgb(0 0 0 / .55);--shadow-3: 0 18px 48px rgb(0 0 0 / .65);--z-base: 1;--z-visualizer: 0;--z-hud: 500;--z-nav: 1000;--z-menu: 1100;--z-drawer: 1600;--z-banner: 2000;--z-modal: 2100;--ease: cubic-bezier(.2, .7, .2, 1);--dur-fast: .12s;--dur: .2s;--bp-tablet: 640px;--bp-desktop: 1024px;color-scheme:dark}:root[data-accent=teal]{--accent: var(--teal-500);--accent-text: var(--teal-500);--accent-strong: var(--teal-300);--accent-fill: var(--teal-500);--accent-fill-hover: var(--teal-400);--accent-on-fill: var(--gray-0);--accent-weak: rgb(0 220 200 / .1);--accent-border: rgb(0 220 200 / .42);--accent-glow: 0 0 0 1px rgb(0 220 200 / .5), 0 0 18px rgb(0 220 200 / .25);--accent-shadow: 0 8px 28px rgb(0 220 200 / .16)}:root[data-accent=purple]{--accent: var(--purple-500);--accent-text: var(--purple-400);--accent-strong: var(--purple-300);--accent-fill: var(--purple-600);--accent-fill-hover: var(--purple-500);--accent-on-fill: var(--white);--accent-weak: rgb(168 85 247 / .12);--accent-border: rgb(168 85 247 / .45);--accent-glow: 0 0 0 1px rgb(168 85 247 / .5), 0 0 18px rgb(168 85 247 / .28);--accent-shadow: 0 8px 28px rgb(168 85 247 / .18)}:root.accent-red,.accent-red{--accent: var(--red-500);--accent-text: var(--red-400);--accent-strong: var(--red-300);--accent-fill: var(--red-600);--accent-fill-hover: var(--red-500);--accent-on-fill: var(--white);--accent-weak: rgb(255 0 10 / .1);--accent-border: rgb(255 0 10 / .42);--accent-glow: 0 0 0 1px rgb(255 0 10 / .5), 0 0 18px rgb(255 0 10 / .28);--accent-shadow: 0 8px 28px rgb(255 0 10 / .18);--focus-ring: 0 0 0 2px var(--surface-0), 0 0 0 4px var(--red-500)}:root.accent-green,.accent-green{--accent: var(--green-500);--accent-text: var(--green-500);--accent-strong: var(--green-300);--accent-fill: var(--green-500);--accent-fill-hover: var(--green-400);--accent-on-fill: var(--gray-0);--accent-weak: rgb(0 255 94 / .09);--accent-border: rgb(0 255 94 / .4);--accent-glow: 0 0 0 1px rgb(0 255 94 / .5), 0 0 18px rgb(0 255 94 / .25);--accent-shadow: 0 8px 28px rgb(0 255 94 / .15);--focus-ring: 0 0 0 2px var(--surface-0), 0 0 0 4px var(--green-500)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{background:var(--surface-0);-webkit-text-size-adjust:100%;text-size-adjust:100%}body{min-height:100dvh;background:var(--surface-0);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-md);line-height:var(--leading);-webkit-font-smoothing:antialiased;overflow-x:hidden}#root{min-height:100dvh}img,svg,canvas,video{display:block;max-width:100%}input,select,button,textarea{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0}button:disabled{cursor:not-allowed}a{color:var(--accent-text);text-underline-offset:3px}a:hover{color:var(--accent-strong)}h1,h2,h3{line-height:var(--leading-tight);font-weight:600;overflow-wrap:anywhere}p,li,td,th,span,label{overflow-wrap:anywhere}:focus{outline:none}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-sm)}::selection{background:var(--accent-fill);color:var(--accent-on-fill)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--surface-1)}::-webkit-scrollbar-thumb{background:var(--gray-400);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--accent)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition-duration:0ms!important;animation-duration:0ms!important}}.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}.container{width:min(100% - 2 * var(--gutter),var(--container));margin-inline:auto}.container--narrow{width:min(100% - 2 * var(--gutter),var(--container-narrow))}.page{min-height:100dvh;padding-top:calc(var(--nav-h) + env(safe-area-inset-top));padding-bottom:calc(var(--space-7) + env(safe-area-inset-bottom))}.stack{display:flex;flex-direction:column;gap:var(--space-4)}.row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.eyebrow{font-family:var(--font-display);font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--accent-text)}.display{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase}.muted{color:var(--text-secondary)}.faint{color:var(--text-muted)}.card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-lg);padding:clamp(var(--space-4),3vw,var(--space-6));box-shadow:var(--shadow-2)}.glass{background:var(--surface-glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--border);border-radius:var(--radius-lg)}.rule{height:1px;background:var(--border);border:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--tap);padding:0 var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface-2);color:var(--text-primary);font-size:var(--text-sm);font-weight:500;letter-spacing:.02em;text-decoration:none;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),color var(--dur) var(--ease)}.btn:hover:not(:disabled){border-color:var(--accent-border);background:var(--surface-3);color:var(--text-primary)}.btn:active:not(:disabled){box-shadow:var(--accent-glow)}.btn:disabled{opacity:.5}.btn--primary{background:var(--accent-fill);border-color:var(--accent-fill);color:var(--accent-on-fill);font-weight:600}.btn--primary:hover:not(:disabled){background:var(--accent-fill-hover);border-color:var(--accent-fill-hover);color:var(--accent-on-fill);box-shadow:var(--accent-shadow)}.btn--ghost{background:transparent;border-color:transparent;color:var(--text-secondary)}.btn--ghost:hover:not(:disabled){background:var(--surface-2);border-color:var(--border)}.btn--outline{background:transparent;border-color:var(--accent-border);color:var(--accent-text)}.btn--danger{background:transparent;border-color:var(--danger-border);color:var(--danger)}.btn--danger:hover:not(:disabled){background:var(--danger-bg);border-color:var(--danger)}.btn--spotify{background:var(--spotify);border-color:var(--spotify);color:var(--spotify-on);font-weight:600;border-radius:var(--radius-pill)}.btn--spotify:hover:not(:disabled){filter:brightness(1.08);background:var(--spotify);border-color:var(--spotify);color:var(--spotify-on)}.btn--block{width:100%}.btn--sm{min-height:36px;padding:0 var(--space-3);font-size:var(--text-xs)}.btn--icon{width:var(--tap);padding:0}.link-btn{color:var(--accent-text);text-decoration:underline;text-underline-offset:3px;min-height:var(--tap)}.field{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.field>span,.label{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.input,.select{width:100%;min-height:var(--tap);padding:0 var(--space-3);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--text-primary);font-size:max(16px,var(--text-md));transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.input::placeholder{color:var(--text-muted)}.input:hover,.select:hover{border-color:var(--gray-500)}.input:focus-visible,.select:focus-visible{border-color:var(--accent);box-shadow:var(--accent-glow);border-radius:var(--radius)}.select option{background:var(--surface-2);color:var(--text-primary)}input[type=range]{accent-color:var(--accent);width:100%;min-height:28px}.alert{display:flex;gap:var(--space-2);align-items:flex-start;padding:var(--space-3);border:1px solid var(--danger-border);border-radius:var(--radius);background:var(--danger-bg);color:var(--danger);font-size:var(--text-sm)}.alert:before{content:"⚠";flex-shrink:0}.alert--warn{border-color:var(--warning);background:var(--warning-bg);color:var(--warning)}.alert--ok{border-color:var(--success);background:var(--success-bg);color:var(--success)}.alert--ok:before{content:"✓"}.divider-or{display:flex;align-items:center;gap:var(--space-3);color:var(--text-muted);font-size:var(--text-xs);letter-spacing:var(--tracking-caps)}.divider-or:before,.divider-or:after{content:"";flex:1;height:1px;background:var(--border)}.table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.table th{text-align:left;font-weight:500;color:var(--text-secondary);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-strong)}.table td{padding:var(--space-3);border-bottom:1px solid var(--border);vertical-align:middle}.table tbody tr:hover{background:var(--surface-2)}@media (max-width: 639px){.table--stack thead{display:none}.table--stack,.table--stack tbody,.table--stack tr,.table--stack td{display:block;width:100%}.table--stack tr{border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-3);background:var(--surface-1)}.table--stack td{border:0;padding:var(--space-2) 0;display:flex;justify-content:space-between;gap:var(--space-3)}.table--stack td:before{content:attr(data-label);color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;flex-shrink:0}}.idle-orb{width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,var(--accent-weak) 0%,transparent 70%);box-shadow:0 0 60px var(--accent-weak);animation:idle-pulse 3.2s var(--ease) infinite}@keyframes idle-pulse{50%{transform:scale(1.12);opacity:.7}}@media (pointer: coarse){.btn--sm,.link-btn{min-height:var(--tap)}}.skip-link{position:fixed;top:var(--space-2);left:var(--space-2);z-index:var(--z-modal);transform:translateY(-200%);padding:var(--space-2) var(--space-3);background:var(--accent-fill);color:var(--accent-on-fill);border-radius:var(--radius)}.skip-link:focus-visible{transform:none}.nav{position:fixed;inset:0 0 auto 0;z-index:var(--z-nav);padding-top:env(safe-area-inset-top);background:var(--surface-nav);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border);transition:opacity var(--dur) var(--ease)}.nav--faded{opacity:0;pointer-events:none}.nav--faded:focus-within{opacity:1;pointer-events:auto}.nav__inner{display:flex;align-items:center;gap:var(--space-4);height:var(--nav-h);padding-inline:max(var(--gutter),env(safe-area-inset-left)) max(var(--gutter),env(safe-area-inset-right))}.nav__brand{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:.32em;color:var(--text-primary);text-decoration:none;display:inline-flex;align-items:center;min-height:var(--tap);padding-right:var(--space-2)}.nav__brand:before{content:"";width:8px;height:8px;margin-right:var(--space-3);background:var(--accent);box-shadow:0 0 10px var(--accent)}.nav__brand:hover{color:var(--text-primary)}.nav__links{display:none;gap:var(--space-1)}.nav__link{position:relative;display:inline-flex;align-items:center;min-height:var(--tap);padding:0 var(--space-3);color:var(--text-secondary);text-decoration:none;font-size:var(--text-sm);font-weight:500;border-radius:var(--radius)}.nav__link:hover{color:var(--text-primary);background:var(--surface-2)}.nav__link.active{color:var(--text-primary)}.nav__link.active:after{content:"";position:absolute;left:var(--space-3);right:var(--space-3);bottom:6px;height:2px;background:var(--accent);box-shadow:0 0 8px var(--accent)}.nav__right{margin-left:auto;display:flex;align-items:center;gap:var(--space-2)}.nav__guest-accent{display:none}.nav__avatar{min-width:var(--tap);min-height:var(--tap);display:grid;place-items:center;border-radius:50%}.nav__avatar[aria-expanded=true] .avatar{box-shadow:var(--accent-glow)}.nav__signin{white-space:nowrap}.nav__menu{border-top:1px solid var(--border);padding:var(--space-3) var(--gutter) var(--space-4);display:grid;gap:var(--space-4);max-height:calc(100dvh - var(--nav-h));overflow-y:auto}.nav__menu nav{display:grid;gap:var(--space-1)}.nav__menu-link{display:flex;align-items:center;gap:var(--space-3);min-height:var(--tap);padding:0 var(--space-3);color:var(--text-secondary);text-decoration:none;border-radius:var(--radius)}.nav__menu-link:hover,.nav__menu-link.active{color:var(--text-primary);background:var(--surface-2)}.nav__menu-link.active{box-shadow:inset 2px 0 0 var(--accent)}.nav__menu-accent{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}@media (min-width: 768px){.nav__links{display:flex}.nav__menu-btn,.nav__menu{display:none}.nav__guest-accent{display:block}}.avatar{display:grid;place-items:center;flex-shrink:0;overflow:hidden;border-radius:50%;border:1px solid var(--accent-border);background:var(--accent-weak);color:var(--accent-text);font-family:var(--font-display);font-size:var(--text-sm)}.avatar img{width:100%;height:100%;object-fit:cover}.accent-picker{display:flex;gap:var(--space-2)}.accent-swatch{width:var(--tap);height:var(--tap);border-radius:50%;position:relative;display:grid;place-items:center}.accent-swatch:before{content:"";width:24px;height:24px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--border-strong);transition:transform var(--dur-fast) var(--ease),box-shadow var(--dur) var(--ease)}.accent-swatch--red:before{background:var(--red-500)}.accent-swatch--teal:before{background:var(--teal-500)}.accent-swatch--purple:before{background:var(--purple-500)}.accent-swatch:hover:before{transform:scale(1.08)}.accent-swatch[aria-checked=true]:before{box-shadow:0 0 0 2px var(--surface-0),0 0 0 4px var(--text-primary)}.accent-picker--compact{gap:0}.accent-picker--compact .accent-swatch{width:32px}.accent-picker--compact .accent-swatch:before{width:14px;height:14px}.dropdown{position:fixed;z-index:var(--z-menu);top:calc(var(--nav-h) + env(safe-area-inset-top) + var(--space-2));right:max(var(--space-2),env(safe-area-inset-right));width:min(22rem,calc(100vw - 2 * var(--space-2)));max-height:calc(100dvh - var(--nav-h) - var(--space-5));overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4);background:var(--surface-1);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-3)}.dropdown__head{display:flex;gap:var(--space-3);align-items:center;min-width:0}.dropdown__who{min-width:0}.dropdown__name,.dropdown__email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown__name{font-weight:600}.dropdown__email{color:var(--text-secondary);font-size:var(--text-sm)}.dropdown__section{display:flex;flex-direction:column;gap:var(--space-2);align-items:flex-start}.banner{position:fixed;inset:auto var(--space-2) calc(var(--space-2) + env(safe-area-inset-bottom)) var(--space-2);z-index:var(--z-banner);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3) var(--space-4);background:var(--surface-2);border:1px solid var(--warning);border-left-width:4px;border-radius:var(--radius);box-shadow:var(--shadow-3);font-size:var(--text-sm)}@media (min-width: 768px){.banner{left:auto;max-width:32rem}}.loading{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-5);padding:var(--gutter);text-align:center}.loading__mark{font-family:var(--font-display);font-size:var(--text-2xl);letter-spacing:.4em;padding-left:.4em}.loading__spinner{width:36px;height:36px;border-radius:50%;border:2px solid var(--border-strong);border-top-color:var(--accent);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading__help{width:min(100%,28rem);text-align:left}.loading__help .btn{justify-content:flex-start}.gate-denied{padding-top:var(--space-7)}.recovery{gap:var(--space-1)}
