:root{--bg-primary: #060606;--bg-primary-90: color-mix(in srgb, var(--bg-primary) 90%, transparent);--bg-primary-80: color-mix(in srgb, var(--bg-primary) 80%, transparent);--bg-primary-70: color-mix(in srgb, var(--bg-primary) 70%, transparent);--bg-primary-60: color-mix(in srgb, var(--bg-primary) 60%, transparent);--bg-primary-50: color-mix(in srgb, var(--bg-primary) 50%, transparent);--bg-primary-40: color-mix(in srgb, var(--bg-primary) 40%, transparent);--bg-primary-30: color-mix(in srgb, var(--bg-primary) 30%, transparent);--bg-primary-20: color-mix(in srgb, var(--bg-primary) 20%, transparent);--bg-primary-10: color-mix(in srgb, var(--bg-primary) 10%, transparent);--bg-primary-5: color-mix(in srgb, var(--bg-primary) 5%, transparent);--bg-secondary: #0c0c0c;--bg-secondary-90: color-mix(in srgb, var(--bg-secondary) 90%, transparent);--bg-secondary-80: color-mix(in srgb, var(--bg-secondary) 80%, transparent);--bg-secondary-70: color-mix(in srgb, var(--bg-secondary) 70%, transparent);--bg-secondary-60: color-mix(in srgb, var(--bg-secondary) 60%, transparent);--bg-secondary-50: color-mix(in srgb, var(--bg-secondary) 50%, transparent);--bg-secondary-40: color-mix(in srgb, var(--bg-secondary) 40%, transparent);--bg-secondary-30: color-mix(in srgb, var(--bg-secondary) 30%, transparent);--bg-secondary-20: color-mix(in srgb, var(--bg-secondary) 20%, transparent);--bg-secondary-10: color-mix(in srgb, var(--bg-secondary) 10%, transparent);--bg-secondary-5: color-mix(in srgb, var(--bg-secondary) 5%, transparent);--bg-surface: #121212;--color-primary: #d72626;--color-primary-90: color-mix(in srgb, var(--color-primary) 90%, transparent);--color-primary-80: color-mix(in srgb, var(--color-primary) 80%, transparent);--color-primary-70: color-mix(in srgb, var(--color-primary) 70%, transparent);--color-primary-60: color-mix(in srgb, var(--color-primary) 60%, transparent);--color-primary-50: color-mix(in srgb, var(--color-primary) 50%, transparent);--color-primary-40: color-mix(in srgb, var(--color-primary) 40%, transparent);--color-primary-30: color-mix(in srgb, var(--color-primary) 30%, transparent);--color-primary-25: color-mix(in srgb, var(--color-primary) 25%, transparent);--color-primary-20: color-mix(in srgb, var(--color-primary) 20%, transparent);--color-primary-10: color-mix(in srgb, var(--color-primary) 10%, transparent);--color-primary-5: color-mix(in srgb, var(--color-primary) 5%, transparent);--color-secondary: #a21d1d;--border-primary: #191919;--border-secondary: #1b1b1b;--color-success: #0dde34;--color-success-20: color-mix(in srgb, var(--color-success) 20%, transparent);--grade-primary: linear-gradient( 180deg, var(--color-primary-25) 0%, var(--color-primary) 100% );--grade-numbers: linear-gradient(180deg, #3b3b3b 0%, #2a2a2a 100%);--text-primary: #ffffff;--text-secondary-1: #bababa;--text-secondary-2: #d8d8d8;--text-secondary-3: #727272;--text-surface: #000;--white: #fff;--black: #000;--font-heading: "Unbounded", sans-serif;--font-body: "Inter", sans-serif;--fs-1: 4rem;--fs-2: 3rem;--fs-3: 2rem;--fs-4: 1.5rem;--fs-5: 1.25rem;--fs-6: 1rem;--fs-65: 1.125rem;--fs-7: .875rem;--fs-8: .75rem;--fs-9: .625rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%;overflow-x:hidden}body{font-family:var(--font-body);font-size:var(--fs-6);font-weight:400;line-height:1.5;color:var(--text-primary);background-color:var(--bg-primary);background-image:radial-gradient(circle at 20% 0%,var(--color-primary-25) 0%,transparent 40%),radial-gradient(circle at 80% 100%,var(--color-primary-10) 0%,transparent 50%);background-attachment:fixed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}a{color:var(--color-primary);text-decoration:none;transition:color .15s ease}a:hover,a:focus-visible{color:var(--color-secondary);outline:none}button{font-family:inherit;font-size:inherit;cursor:pointer;background:transparent;border:none;color:inherit}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:600;line-height:1.2;color:var(--text-primary)}.glass-card{background:var(--bg-secondary-50);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid var(--border-secondary);border-radius:16px;padding:24px;box-shadow:inset 0 1px 0 var(--bg-primary-10),0 8px 32px var(--bg-primary-50)}.home,.not-found{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px}.home>.glass-card,.not-found__card{max-width:360px;width:100%;text-align:center}.home__title{font-size:var(--fs-3);margin-bottom:8px}.home__subtitle{font-size:var(--fs-7);color:var(--text-secondary-1);margin-bottom:24px}.home__status{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;background:var(--color-success-20);color:var(--text-primary);font-size:var(--fs-7)}.home__dot{width:8px;height:8px;border-radius:50%;background:var(--color-success);box-shadow:0 0 8px var(--color-success)}.not-found__title{font-size:var(--fs-1);color:var(--color-primary);margin-bottom:8px}.not-found__text{font-size:var(--fs-6);color:var(--text-secondary-1);margin-bottom:24px}.not-found__link{display:inline-block;padding:12px 24px;border-radius:12px;background:var(--grade-primary);color:var(--text-primary);font-weight:500;font-size:var(--fs-6);transition:transform .15s ease}.not-found__link:hover{color:var(--text-primary);transform:translateY(-1px)}.home__card{max-width:360px;width:100%;text-align:center}.home__meta{display:flex;flex-direction:column;gap:8px;margin:16px 0 24px;padding:16px;background:var(--bg-primary-50);border:1px solid var(--border-primary);border-radius:12px;text-align:left}.home__meta-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:var(--fs-7)}.home__meta-row dt{color:var(--text-secondary-3);flex-shrink:0}.home__meta-row dd{color:var(--text-primary);text-align:right;word-break:break-word}.home__meta-row--mono dd{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:var(--fs-8)}.home__logout{display:inline-block;margin-top:16px;padding:12px 24px;border-radius:12px;background:transparent;border:1px solid var(--border-primary);color:var(--text-secondary-1);font-weight:500;font-size:var(--fs-7);transition:transform .15s ease,color .15s ease,border-color .15s ease}.home__logout:hover,.home__logout:focus-visible{border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-1px);outline:none}.auth-error{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px}.auth-error__card{max-width:360px;width:100%;text-align:center}.auth-error__title{font-size:var(--fs-4);margin-bottom:12px;color:var(--color-primary)}.auth-error__message{font-size:var(--fs-7);color:var(--text-secondary-1);margin-bottom:24px;line-height:1.5}.auth-error__retry{display:inline-block;padding:12px 24px;border-radius:12px;background:var(--grade-primary);color:var(--text-primary);font-weight:500;font-size:var(--fs-6);transition:transform .15s ease}.auth-error__retry:hover,.auth-error__retry:focus-visible{transform:translateY(-1px);outline:none}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
