:root{color-scheme:light;--bg-overlay-top:hsla(0,0%,100%,.1);--bg-overlay-bottom:hsla(0,0%,100%,.16);--bg-image:url(/backgrounds/scoreforge-bg.jpeg);--surface:hsla(0,0%,100%,.34);--surface-strong:hsla(0,0%,100%,.46);--surface-soft:hsla(0,0%,100%,.22);--border:hsla(0,0%,100%,.34);--border-strong:hsla(0,0%,100%,.48);--text:#0f172a;--text-soft:#334155;--text-muted:#475569;--primary:#2563eb;--primary-hover:#1d4ed8;--primary-secondary:#7c3aed;--danger-bg:rgba(239,68,68,.12);--danger-border:rgba(239,68,68,.18);--danger-text:#991b1b;--success-bg:rgba(34,197,94,.12);--success-border:rgba(34,197,94,.18);--success-text:#166534;--shadow-soft:0 10px 30px rgba(15,23,42,.06);--shadow-md:0 18px 45px rgba(15,23,42,.1);--shadow-lg:0 24px 60px rgba(15,23,42,.14);--radius-lg:24px;--radius-md:14px;--radius-sm:10px;--container:1160px}html[data-theme=dark]{color-scheme:dark;--bg-overlay-top:rgba(5,8,20,.3);--bg-overlay-bottom:rgba(8,10,24,.42);--bg-image:url(/backgrounds/scoreforge-bg-dark.jpeg);--surface:rgba(12,18,38,.34);--surface-strong:rgba(16,22,46,.46);--surface-soft:rgba(18,26,50,.24);--border:rgba(160,180,255,.2);--border-strong:rgba(180,196,255,.28);--text:#eef2ff;--text-soft:#d7def7;--text-muted:#aeb9d6;--primary:#7c9cff;--primary-hover:#9fb7ff;--primary-secondary:#8b5cf6;--danger-bg:rgba(239,68,68,.16);--danger-border:hsla(0,91%,71%,.24);--danger-text:#fecaca;--success-bg:rgba(34,197,94,.14);--success-border:rgba(74,222,128,.22);--success-text:#bbf7d0;--shadow-soft:0 10px 30px rgba(0,0,0,.25);--shadow-md:0 18px 45px rgba(0,0,0,.3);--shadow-lg:0 24px 60px rgba(0,0,0,.38)}*{box-sizing:border-box}body,html{min-height:100%}body{margin:0;color:var(--text);font-family:Arial,Helvetica,sans-serif;background-image:linear-gradient(var(--bg-overlay-top),var(--bg-overlay-bottom)),var(--bg-image);background-position:50%;background-size:cover;background-repeat:no-repeat;background-attachment:fixed;transition:background-image .35s ease,background-color .35s ease,color .25s ease}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}input:focus,select:focus,textarea:focus{outline:none}input:-webkit-autofill,input:-webkit-autofill:active,input:-webkit-autofill:focus,input:-webkit-autofill:hover{-webkit-text-fill-color:var(--text)!important;box-shadow:inset 0 0 0 1000px hsla(0,0%,100%,.72)!important;-webkit-transition:background-color 9999s ease-in-out 0s;transition:background-color 9999s ease-in-out 0s;caret-color:var(--text)!important}html[data-theme=dark] input:-webkit-autofill,html[data-theme=dark] input:-webkit-autofill:active,html[data-theme=dark] input:-webkit-autofill:focus,html[data-theme=dark] input:-webkit-autofill:hover{-webkit-text-fill-color:var(--text)!important;box-shadow:inset 0 0 0 1000px rgba(18,24,48,.82)!important;caret-color:var(--text)!important}.app-shell{min-height:100vh}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:20;backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);background:var(--surface-soft);border-bottom:1px solid var(--border);box-shadow:0 8px 24px rgba(15,23,42,.06);transition:background .25s ease,border-color .25s ease,box-shadow .25s ease}.topbar-inner{width:min(calc(100% - 32px),var(--container));margin:0 auto;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:inline-flex;align-items:center;gap:12px}.brand-mark{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),#5eead4);color:#fff;font-weight:800;box-shadow:var(--shadow-soft)}.brand-copy{display:flex;flex-direction:column;gap:2px}.brand-copy strong{font-size:.98rem;letter-spacing:.01em;color:var(--text);transition:color .25s ease}.brand-copy span{font-size:.84rem;color:var(--text-muted);transition:color .25s ease}.topbar-nav{display:flex;align-items:center;gap:16px}.topbar-nav a{color:var(--text-soft);transition:color .18s ease}.topbar-nav a:hover{color:var(--text)}.theme-toggle{display:inline-flex;gap:6px;padding:5px;border-radius:999px;background:var(--surface);border:1px solid var(--border);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.theme-button{width:42px;height:42px;border:0;background:transparent;color:var(--text-muted);display:grid;place-items:center;border-radius:999px;cursor:pointer;font-size:18px;line-height:1;transition:all .18s ease}.theme-button:hover{color:var(--text);background:hsla(0,0%,100%,.16)}.theme-button.active{color:var(--text);background:hsla(0,0%,100%,.72);box-shadow:0 6px 18px rgba(15,23,42,.08)}html[data-theme=dark] .theme-button:hover{background:hsla(0,0%,100%,.08)}html[data-theme=dark] .theme-button.active{background:hsla(0,0%,100%,.12);box-shadow:0 6px 18px rgba(0,0,0,.24)}.page-container{width:min(calc(100% - 32px),var(--container));margin:0 auto;padding:48px 0 64px}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;grid-gap:32px;gap:32px;align-items:start;min-height:calc(100vh - 160px);padding-top:24px}.hero-copy{padding-top:28px}.eyebrow{display:inline-flex;padding:8px 12px;border-radius:999px;background:var(--surface-soft);border:1px solid var(--border);color:var(--text-soft);font-size:.9rem;margin-bottom:18px;backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);box-shadow:0 8px 22px rgba(15,23,42,.05);transition:background .25s ease,border-color .25s ease,color .25s ease}.hero-copy h1{margin:0 0 16px;font-size:clamp(2.3rem,5vw,4rem);line-height:1.02;letter-spacing:-.04em;max-width:12ch;color:var(--text)}.hero-copy h1,.hero-text{transition:color .25s ease}.hero-text{margin:0 0 28px;color:var(--text-soft);font-size:1.04rem;line-height:1.7;max-width:62ch}.feature-list{display:grid;grid-gap:14px;gap:14px;max-width:640px}.feature-item{padding:18px;border-radius:var(--radius-md);background:var(--surface-soft);border:1px solid var(--border);box-shadow:0 10px 30px rgba(15,23,42,.06),inset 0 1px 0 hsla(0,0%,100%,.18);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);transition:transform .18s ease,background .25s ease,border-color .25s ease,color .25s ease}.feature-item:hover{transform:translateY(-2px)}.feature-item strong{display:block;margin-bottom:6px;font-size:.98rem;color:var(--text)}.feature-item span{display:block;color:var(--text-soft);line-height:1.6}.auth-card{border-radius:28px;padding:24px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-lg),inset 0 1px 0 hsla(0,0%,100%,.18);backdrop-filter:blur(22px) saturate(150%);-webkit-backdrop-filter:blur(22px) saturate(150%);transition:background .25s ease,border-color .25s ease,color .25s ease}.auth-card-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.auth-tabs{display:inline-flex;gap:8px;padding:6px;border-radius:999px;background:var(--surface-soft);border:1px solid var(--border);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:background .25s ease,border-color .25s ease}.tab-button{border:0;background:transparent;color:var(--text-muted);padding:10px 16px;border-radius:999px;cursor:pointer;transition:all .18s ease}.tab-button:hover{color:var(--text);background:hsla(0,0%,100%,.18)}.tab-button.active{background:hsla(0,0%,100%,.72);color:var(--text);box-shadow:0 6px 20px rgba(15,23,42,.08)}html[data-theme=dark] .tab-button.active{background:hsla(0,0%,100%,.1);box-shadow:0 6px 18px rgba(0,0,0,.24)}.dashboard-link{color:var(--text);font-size:.94rem;font-weight:700;padding:10px 14px;border-radius:12px;background:var(--surface-soft);border:1px solid var(--border);transition:all .18s ease}.dashboard-link:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(15,23,42,.06)}.auth-copy h2{margin:0 0 8px;font-size:1.6rem;color:var(--text)}.auth-copy p{margin:0 0 22px;color:var(--text-soft);line-height:1.6}.auth-form{display:grid;grid-gap:16px;gap:16px}.form-field{display:grid;grid-gap:8px;gap:8px}.form-field label{font-size:.95rem;color:var(--text-soft);font-weight:700}.form-field input{width:100%;height:48px;padding:0 14px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-soft);color:var(--text);outline:none;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,color .25s ease;box-shadow:inset 0 1px 2px rgba(15,23,42,.02),inset 0 1px 0 hsla(0,0%,100%,.12);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.form-field input::placeholder{color:var(--text-muted)}.form-field input:focus{border-color:rgba(37,99,235,.7);box-shadow:0 0 0 4px rgba(37,99,235,.12),inset 0 1px 0 hsla(0,0%,100%,.16)}.primary-button{height:48px;border:0;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--primary),var(--primary-secondary));color:#fff;font-weight:700;cursor:pointer;transition:transform .16s ease,opacity .16s ease,filter .16s ease,box-shadow .16s ease;box-shadow:0 12px 28px rgba(37,99,235,.22)}.primary-button:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.03);box-shadow:0 16px 32px rgba(37,99,235,.28)}.primary-button:disabled{opacity:.72;cursor:not-allowed}.message-box{padding:14px;border-radius:var(--radius-sm);font-size:.95rem;line-height:1.5;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.message-box.error{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-text)}.message-box.success{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success-text)}@media (max-width:900px){.hero-grid{grid-template-columns:1fr;min-height:auto}.hero-copy{padding-top:0}.feature-list,.hero-copy h1{max-width:none}}@media (max-width:640px){.topbar-inner{min-height:auto;padding:14px 0}.auth-card-header,.topbar-inner{flex-direction:column;align-items:flex-start}.topbar-nav{gap:12px;flex-wrap:wrap}.page-container{padding-top:28px}.auth-card{padding:18px}.auth-tabs,.theme-toggle{width:100%;justify-content:flex-start;flex-wrap:wrap}}