:root{--bg: #0a0a0a;--surface: #151515;--surface-2: #1e1e1e;--border: #2a2a2a;--text: #f5f2ed;--text-dim: #9a948c;--ember-1: #fdad00;--ember-2: #ff5500;--ember-3: #dc1202;--ember-4: #9a0600;--ember-grad: linear-gradient(135deg, #fdad00, #ff5500 45%, #dc1202 80%, #9a0600);--green: #2f6b47;--green-bright: #3e8a5d;--danger: #dc1202;--radius: 14px;--map-rough: #1b3524;--map-fairway: #2f6b47;--map-green: #4da372;--map-green-edge: #7fd3a3;--map-sand: #cbab6e;--map-water: #33719d;--map-tee: #5d5d57;--map-ring: rgba(245, 242, 237, .13);--map-centerline: rgba(245, 242, 237, .45)}:root[data-theme=light]{--bg: #f6f4f0;--surface: #ffffff;--surface-2: #edeae4;--border: #d8d3ca;--text: #191714;--text-dim: #6f695f;--green: #2f6b47;--green-bright: #2c7a4e;--map-rough: #cadfc7;--map-fairway: #8fc79b;--map-green: #4fae74;--map-green-edge: #2f6b47;--map-sand: #e8d3a1;--map-water: #8fc0e0;--map-tee: #b3ada2;--map-ring: rgba(25, 23, 20, .14);--map-centerline: rgba(25, 23, 20, .45)}*{box-sizing:border-box;margin:0;padding:0}html{background:var(--bg);transition:background .25s ease;overflow-x:hidden}body{background:transparent;color:var(--text);font-family:Montserrat,system-ui,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased;min-height:100%;overflow-x:hidden;transition:color .25s ease}body:before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(70% 38% at 50% -6%,rgba(255,85,0,.14),transparent 70%),radial-gradient(45% 28% at 88% 108%,rgba(47,107,71,.1),transparent 70%);pointer-events:none;animation:ember-breathe 9s ease-in-out infinite alternate}body:after{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(38% 24% at 12% 30%,rgba(253,173,0,.05),transparent 70%);pointer-events:none;animation:ember-drift 14s ease-in-out infinite alternate}@keyframes ember-breathe{0%{opacity:.75}to{opacity:1}}@keyframes ember-drift{0%{transform:translateY(-2%) scale(1)}to{transform:translateY(3%) scale(1.06)}}:root[data-theme=light] body:before{background:radial-gradient(70% 38% at 50% -6%,rgba(255,85,0,.1),transparent 70%),radial-gradient(45% 28% at 88% 108%,rgba(47,107,71,.08),transparent 70%)}body{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}#root{max-width:520px;margin:0 auto;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}h1,h2,h3{font-weight:800;letter-spacing:-.02em}button{font-family:inherit;font-weight:600;border:none;cursor:pointer;color:var(--text);background:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}input,select{font-family:inherit;font-size:16px;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:12px 14px;width:100%;min-height:48px}input:focus,select:focus{outline:2px solid var(--ember-2);outline-offset:-1px;border-color:transparent}label{display:block;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);margin-bottom:6px}a{color:var(--ember-2);text-decoration:none;font-weight:600}a:hover,a:focus-visible{text-decoration:underline}a:focus-visible{outline:2px solid var(--ember-2);outline-offset:2px;border-radius:2px}.screen{flex:1;display:flex;flex-direction:column;padding:16px;gap:16px;animation:screen-in .32s cubic-bezier(.16,1,.3,1)}@keyframes screen-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.stack>.list-item,.stack>.player-score-card,.screen>.stack>*{animation:item-in .4s cubic-bezier(.16,1,.3,1) backwards}.stack>*:nth-child(1){animation-delay:.03s}.stack>*:nth-child(2){animation-delay:.07s}.stack>*:nth-child(3){animation-delay:.11s}.stack>*:nth-child(4){animation-delay:.15s}.stack>*:nth-child(5){animation-delay:.19s}.stack>*:nth-child(n+6){animation-delay:.23s}@keyframes item-in{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.topbar{display:flex;align-items:center;gap:12px;min-height:44px}.topbar h1{font-size:20px;flex:1}.topbar .back{min-width:44px;min-height:44px;display:grid;place-items:center;font-size:22px;color:var(--text-dim);border-radius:10px}.topbar .back:active{background:var(--surface-2)}.stack{display:flex;flex-direction:column;gap:12px}.row{display:flex;gap:10px;align-items:center}.spacer{flex:1}.muted{color:var(--text-dim);font-size:14px}.error-text{color:var(--ember-1);font-size:14px;font-weight:500}.btn{min-height:52px;border-radius:var(--radius);padding:0 20px;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px;transition:transform .08s ease,opacity .15s ease,box-shadow .2s ease}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.4;pointer-events:none}.btn-primary{background:var(--ember-grad);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.25);box-shadow:0 1px #ffffff40 inset,0 6px 26px #ff550059}.btn-primary:active{box-shadow:0 1px #ffffff40 inset,0 3px 12px #ff55004d}.btn-secondary{background:var(--surface-2);border:1px solid var(--border)}.btn-green{background:var(--green);color:#fff}.btn-ghost{color:var(--text-dim);min-height:44px}.btn-google{background:#fff;color:#1f1f1f;border:1px solid #dadce0;box-shadow:0 1px 2px #00000026}.btn-google:active{box-shadow:0 1px 2px #0000001a inset}.auth-divider{display:flex;align-items:center;gap:12px;color:var(--text-dim);font-size:13px;margin:4px 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.auth-divider-link{color:var(--text-dim);font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:2px;white-space:nowrap}.card{background:linear-gradient(180deg,var(--surface-2),var(--surface) 55%);border:1px solid var(--border);border-radius:var(--radius);padding:16px;box-shadow:0 1px #ffffff0a inset,0 6px 20px #00000047}:root[data-theme=light] .card{box-shadow:0 6px 18px #281e0f12}.delete-heading{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);margin-top:14px}.delete-list{margin:6px 0 0;padding-left:20px;font-size:14px;line-height:1.55}.delete-list li{margin-bottom:2px}.delete-list li::marker{color:var(--danger)}.list-item{background:linear-gradient(180deg,var(--surface-2),var(--surface) 60%);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;display:flex;align-items:center;gap:12px;width:100%;text-align:left;min-height:60px;box-shadow:0 1px #ffffff0a inset,0 4px 14px #00000038;transition:transform .1s ease,border-color .15s ease}:root[data-theme=light] .list-item{box-shadow:0 3px 12px #281e0f0f}.list-item:active{transform:scale(.985)}.list-item:active{background:var(--surface-2)}.list-item.selected{border-color:var(--ember-2);box-shadow:0 0 0 1px var(--ember-2),0 4px 22px #ff55002e}.list-item .title{font-weight:600;font-size:16px}.list-item .sub{color:var(--text-dim);font-size:13px;margin-top:2px}.cookie-banner{position:fixed;left:12px;right:12px;bottom:calc(env(safe-area-inset-bottom) + 12px);z-index:60;max-width:460px;max-height:46vh;overflow-y:auto;margin:0 auto;background:linear-gradient(180deg,var(--surface-2),var(--surface) 60%);border:1px solid var(--border);border-radius:var(--radius);padding:10px 14px;display:flex;flex-direction:column;gap:6px;box-shadow:0 1px #ffffff0d inset,0 10px 34px #00000073}:root[data-theme=light] .cookie-banner{box-shadow:0 10px 30px #281e0f2e}.cookie-banner .cookie-text{font-size:11.5px;line-height:1.35;color:var(--text-dim)}.cookie-banner .cookie-text a{color:var(--ember-2);font-weight:600;text-decoration:none}.cookie-banner .row .btn{min-height:34px;padding:0 12px;font-size:13px}.legal{display:flex;flex-direction:column;gap:10px;padding-bottom:24px}.legal .updated{color:var(--text-dim);font-size:13px;padding:0 2px}.legal section{background:linear-gradient(180deg,var(--surface-2),var(--surface) 60%);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.legal h2{font-size:15px;font-weight:700;margin:0 0 8px}.legal p{margin:0;color:var(--text-dim);font-size:14px;line-height:1.55}.legal p+p,.legal ul+p{margin-top:8px}.legal ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:5px}.legal li{color:var(--text-dim);font-size:14px;line-height:1.5}.legal li strong,.legal p strong{color:var(--text);font-weight:600}.legal a{color:var(--ember-2);font-weight:600;text-decoration:none}.faq{background:linear-gradient(180deg,var(--surface-2),var(--surface) 60%);border:1px solid var(--border);border-radius:var(--radius);padding:0 16px}.faq summary{cursor:pointer;font-weight:600;padding:14px 0;list-style:none;display:flex;align-items:center;gap:10px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";margin-left:auto;color:var(--text-dim);font-size:18px}.faq[open] summary:after{content:"−"}.faq p{margin:0;padding:0 0 14px;color:var(--text-dim);font-size:14px;line-height:1.5}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;background:var(--surface-2);border:1px solid var(--border)}.chip .dot{width:8px;height:8px;border-radius:50%}.badge-live{background:var(--ember-grad);color:#fff;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.badge-done{background:var(--green);color:#fff;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.hero{text-align:center;padding:10px 0 2px}.hero img{width:88px;height:88px;border-radius:22px;box-shadow:0 10px 44px #ff550047;animation:hero-glow 4s ease-in-out infinite alternate}@keyframes hero-glow{0%{box-shadow:0 10px 38px #ff550038}to{box-shadow:0 10px 52px #ff550061}}.hero .splash-logo{font-size:34px;margin-top:8px}.greeting{text-align:center;font-size:17px;font-weight:600;line-height:1.45;padding:0 12px}.greeting-by{margin-top:5px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat-tile{text-align:center;padding:14px 8px}.stat-tile .num{font-size:30px;font-weight:800;background:var(--ember-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.stat-tile .lbl{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);margin-top:2px}.icon-btn{width:44px;height:44px;border-radius:50%;background:linear-gradient(180deg,var(--surface-2),var(--surface));border:1px solid var(--border);display:grid;place-items:center;font-size:18px;box-shadow:0 1px #ffffff0a inset,0 3px 10px #00000040;transition:transform .08s ease}.icon-btn:active{transform:scale(.92)}:root[data-theme=light] .icon-btn{box-shadow:0 2px 8px #281e0f14}.avatar{width:46px;height:46px;border-radius:50%;background:var(--ember-grad);color:#fff;display:grid;place-items:center;font-weight:800;font-size:19px;flex-shrink:0;box-shadow:0 4px 16px #ff55004d}img.avatar{object-fit:cover;background:var(--surface-2)}.friend-strip{display:flex;gap:14px;width:100%;overflow-x:auto;padding:2px 2px 6px;scrollbar-width:none}.friend-strip::-webkit-scrollbar{display:none}.friend-strip-item{display:flex;flex-direction:column;align-items:center;gap:6px;width:58px;flex-shrink:0}.friend-strip-name{font-size:11px;font-weight:600;color:var(--text-dim);max-width:58px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friend-strip-add{border:1px dashed var(--border);background:var(--surface-2);color:var(--text-dim)}.avatar-edit{position:relative;width:84px;margin:0 auto}.avatar-edit-btn{position:absolute;right:-4px;bottom:-4px;width:32px;height:32px;border-radius:50%;background:var(--surface-2);border:1px solid var(--border);display:grid;place-items:center;font-size:14px}.badge-count{background:var(--ember-grad);color:#fff;min-width:20px;height:20px;border-radius:999px;display:inline-grid;place-items:center;font-size:11px;font-weight:800;padding:0 6px}.intro-overlay{position:fixed;inset:0;z-index:100;background:#000000b8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;padding:24px;animation:screen-in .3s ease}.intro-card{max-width:380px;width:100%;text-align:center;padding:28px 22px}.intro-card ul{list-style:none;text-align:left;margin:18px 0 22px;display:flex;flex-direction:column;gap:12px;font-size:15px;line-height:1.45}.splash-logo{font-size:44px;font-weight:800;letter-spacing:-.03em;background:var(--ember-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.by-fhatal{font-size:11px;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--text-dim);text-align:center}.hole-header{text-align:center;padding:14px 0 12px;background:linear-gradient(180deg,var(--surface-2),var(--surface) 70%);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 1px #ffffff0a inset,0 6px 20px #00000040;position:relative;overflow:hidden;animation:item-in .3s cubic-bezier(.16,1,.3,1)}:root[data-theme=light] .hole-header{box-shadow:0 4px 14px #281e0f0f}.hole-header:after{content:"";position:absolute;left:50%;top:0;transform:translate(-50%);width:46%;height:3px;border-radius:0 0 4px 4px;background:var(--ember-grad)}.hole-number{font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.18em;background:var(--ember-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hole-par{font-size:36px;font-weight:800;margin-top:2px;letter-spacing:-.02em}.hole-meta{color:var(--text-dim);font-size:13px;font-weight:500;margin-top:2px}.player-score-card{background:linear-gradient(180deg,var(--surface-2),var(--surface) 60%);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;display:flex;align-items:center;gap:12px;box-shadow:0 1px #ffffff0a inset,0 4px 14px #00000038}:root[data-theme=light] .player-score-card{box-shadow:0 3px 12px #281e0f0f}.player-score-card .name{font-weight:700;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-score-card .running{font-size:12px;font-weight:600;color:var(--text-dim);margin-top:2px}.stepper{display:flex;align-items:center;gap:6px}.stepper button{width:52px;height:52px;border-radius:12px;background:var(--surface-2);border:1px solid var(--border);font-size:26px;font-weight:600;display:grid;place-items:center;box-shadow:0 1px #ffffff0d inset,0 2px 8px #0003;transition:transform .06s ease,background .15s ease}.stepper button:active{transform:scale(.92)}.stepper button:active{background:var(--border)}.stepper .value{width:56px;text-align:center;font-size:30px;font-weight:800;font-variant-numeric:tabular-nums;animation:value-pop .18s cubic-bezier(.34,1.56,.64,1)}@keyframes value-pop{0%{transform:scale(1.25)}to{transform:scale(1)}}.stepper .value.empty{color:var(--border)}.score-under{color:var(--green-bright)}.score-par{color:var(--text)}.score-over{color:var(--ember-1)}.hole-nav{display:flex;gap:10px;padding-bottom:8px}.hole-nav .btn{flex:1}.scorebar{display:flex;gap:8px;overflow-x:auto;padding:4px 0;scrollbar-width:none}.scorebar::-webkit-scrollbar{display:none}.scorebar .entry{flex-shrink:0;display:flex;align-items:baseline;gap:6px;background:linear-gradient(180deg,var(--surface-2),var(--surface));border:1px solid var(--border);border-radius:999px;padding:6px 14px;font-size:13px;box-shadow:0 2px 10px #0003}:root[data-theme=light] .scorebar .entry{box-shadow:0 2px 8px #281e0f0f}.scorebar .entry .delta{font-weight:800;font-variant-numeric:tabular-nums}.scorecard-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius)}.scorecard{border-collapse:collapse;width:100%;font-size:13px;font-variant-numeric:tabular-nums}.scorecard th,.scorecard td{padding:8px 6px;text-align:center;border-bottom:1px solid var(--border);white-space:nowrap}.scorecard th{font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);background:var(--surface)}.scorecard td:first-child,.scorecard th:first-child{text-align:left;padding-left:12px;position:sticky;left:0;background:var(--surface);font-weight:600;max-width:110px;overflow:hidden;text-overflow:ellipsis}.scorecard tr:last-child td{border-bottom:none}.scorecard .subtotal{background:var(--surface-2);font-weight:700}.scorecard .total{font-weight:800;font-size:14px}.hole-editor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.hole-editor-cell{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:8px;text-align:center}.hole-editor-cell .num{font-size:11px;font-weight:700;color:var(--text-dim)}.hole-editor-cell .par-buttons{display:flex;justify-content:center;gap:4px;margin-top:6px}.hole-editor-cell .par-buttons button{width:34px;height:40px;border-radius:8px;background:var(--surface-2);font-size:15px;font-weight:700;color:var(--text-dim)}.hole-editor-cell .par-buttons button.active{background:var(--ember-grad);color:#fff}.offline-pill{position:fixed;bottom:calc(16px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);background:var(--surface-2);border:1px solid var(--ember-2);color:var(--ember-1);font-size:12px;font-weight:700;padding:8px 16px;border-radius:999px;z-index:50}.update-pill{position:fixed;bottom:calc(56px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;max-width:calc(100vw - 24px);background:var(--surface-2);border:1px solid var(--ember-2);color:var(--text);font-size:12px;font-weight:600;padding:8px 8px 8px 16px;border-radius:999px;box-shadow:0 10px 30px #00000040;z-index:51}.update-pill .btn{min-height:30px;padding:0 14px;font-size:12px;white-space:nowrap}.empty-state{text-align:center;padding:40px 20px;color:var(--text-dim)}.empty-state .big{font-size:40px;margin-bottom:12px}.hole-map{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:8px;margin-top:8px}.hole-map-box{position:relative;width:100%;aspect-ratio:5 / 6;max-height:52vh;margin:0 auto}.hole-map-box svg{width:100%;height:100%;display:block;touch-action:manipulation}.map-ring-label,.map-tap-label{position:absolute;transform:translate(-50%,-50%);pointer-events:none;font-size:11px;font-weight:700;white-space:nowrap}.map-ring-label{color:var(--text-dim)}.map-tap-label{transform:translate(-50%,-160%);color:#fff;background:var(--ember-3);border-radius:999px;padding:2px 7px;font-size:12px}.hole-map--compact .hole-map-box{max-height:34vh}.hole-map-readout{display:flex;align-items:baseline;justify-content:center;flex-wrap:wrap;gap:4px 10px;margin-bottom:6px}.range-main{display:flex;align-items:baseline;gap:5px}.range-big{font-size:40px;font-weight:800;line-height:1;letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums}.range-unit{font-size:18px;font-weight:700;color:var(--text-dim)}.range-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim)}.range-fb{font-size:14px;font-weight:600;color:var(--text-dim);font-variant-numeric:tabular-nums}.hole-map-readout .map-clear-btn{min-height:44px;padding:4px 12px;font-size:14px;font-weight:700;color:var(--ember-1)}.map-hint{text-align:center;font-size:12px;margin-top:5px}.map-attribution{font-size:10px;color:var(--text-dim);text-align:center;margin-top:4px}.ach-emoji{width:44px;height:44px;border-radius:12px;background:var(--surface-2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}.ach-locked{opacity:.45;filter:grayscale(1)}.progress-track{height:6px;border-radius:3px;background:var(--surface-2);border:1px solid var(--border);overflow:hidden;margin-top:8px}.progress-fill{height:100%;background:var(--ember-grad);border-radius:3px}.list-item-link{flex:1;display:flex;align-items:center;gap:12px;padding:14px 0 14px 16px;min-height:60px;min-width:0;text-align:left}.public-page{max-width:760px;margin:0 auto;width:100%;animation:none}.public-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.public-brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.02em;color:var(--text)}.public-brand img{border-radius:8px}.public-lang{font-size:13px;font-weight:600;color:var(--ember-2)}.crumbs{font-size:13px;color:var(--text-dim)}.crumbs a{color:var(--text-dim)}.crumb-sep{opacity:.5}.public-page h1{font-size:27px;line-height:1.2;margin:0}.public-page h2{font-size:18px;margin:0 0 8px}.public-page h3{font-size:15px;margin:16px 0 6px}.public-page p{margin:0 0 10px;line-height:1.6}.public-page .lead{font-size:16px;color:var(--text-dim)}.landing-hero{display:flex;flex-direction:column;align-items:center;gap:12px;padding:4px 0 2px}.landing-hero h1{margin:0;font-size:29px;background:var(--ember-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-subtitle{color:var(--text-dim);font-size:15px;line-height:1.5;max-width:34ch;margin:0}.trust-row{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.landing-first-screen{position:relative}.landing-first-screen:before{content:"";position:absolute;top:-40px;left:50%;width:min(480px,100vw);height:480px;transform:translate(-50%);background:radial-gradient(circle,rgba(255,85,0,.16),transparent 65%);pointer-events:none;z-index:-1;animation:landing-glow-breathe 6s ease-in-out infinite alternate}@keyframes landing-glow-breathe{0%{opacity:.7;transform:translate(-50%) scale(1)}to{opacity:1;transform:translate(-50%) scale(1.08)}}.landing-lang-btn{position:absolute;top:0;right:0;min-height:32px;padding:0 12px;display:inline-flex;align-items:center;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);color:var(--text-dim);font-size:12.5px;font-weight:700}.landing-lang-btn:hover,.landing-lang-btn:focus-visible{color:var(--ember-2);text-decoration:none}.landing-hero-compact{gap:14px;padding:40px 0 0}.landing-hero-compact img{width:104px;height:104px}.landing-hero-compact h1{font-size:27px;letter-spacing:-.01em}.public-page section.card.landing-auth-card{margin-top:18px;padding:22px 18px;border-radius:22px;background:linear-gradient(180deg,#1e1e1eeb,#151515f5);border:1px solid rgba(255,133,51,.22);box-shadow:0 1px #ffffff0d inset,0 18px 50px #0006,0 0 0 1px #ff55000d;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}:root[data-theme=light] .public-page section.card.landing-auth-card{background:linear-gradient(180deg,#fff,#fbf8f4);border-color:#ff55002e;box-shadow:0 18px 40px #783c001a}.landing-auth-card h2{text-align:center;font-size:19px;margin-bottom:16px}.auth-embedded input[type=email],.auth-embedded input[type=password],.auth-embedded input[type=text]{background:var(--surface-2) no-repeat 14px center / 18px 18px;border-radius:14px;padding-left:44px;border-color:var(--border)}.auth-embedded input[type=email]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239a948c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5h16v14H4z'/%3E%3Cpath d='M4 6l8 7 8-7'/%3E%3C/svg%3E")}.auth-embedded input[type=password]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239a948c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='11' width='14' height='9' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 018 0v4'/%3E%3C/svg%3E")}.auth-embedded input[type=text]#name{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239a948c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='3.4'/%3E%3Cpath d='M5 20c1.2-3.6 4-5.4 7-5.4s5.8 1.8 7 5.4'/%3E%3C/path%3E%3C/svg%3E")}.auth-embedded label{padding-left:2px}.auth-embedded input:-webkit-autofill,.auth-embedded input:-webkit-autofill:hover,.auth-embedded input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);-webkit-box-shadow:0 0 0 1000px var(--surface-2) inset;caret-color:var(--text);transition:background-color 9999s ease-in-out 0s}.landing-auth-card .btn-primary{margin-top:2px}.landing-auth-card .auth-divider{margin:6px 0}.landing-auth-card .btn-google{border-radius:14px}.landing-auth-card .stack>*{animation:item-in .4s cubic-bezier(.16,1,.3,1) backwards}.landing-auth-card .stack>*:nth-child(1){animation-delay:.05s}.landing-auth-card .stack>*:nth-child(2){animation-delay:.1s}.landing-auth-card .stack>*:nth-child(3){animation-delay:.15s}.landing-auth-card .stack>*:nth-child(4){animation-delay:.2s}.landing-auth-card .stack>*:nth-child(5){animation-delay:.25s}.landing-auth-card .stack>*:nth-child(n+6){animation-delay:.3s}@media(prefers-reduced-motion:reduce){.landing-auth-card .stack>*{animation:none}}.auth-footer-links{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:2px}.auth-footer-links .btn-ghost{min-height:30px;padding:0 4px;font-size:12.5px;color:var(--text-dim)}.auth-footer-links .auth-footer-sep{color:var(--border)}.scroll-cue{display:flex;align-items:center;gap:6px;width:fit-content;margin:22px auto 0;padding:7px 16px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);color:var(--text-dim);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;text-decoration:none}.scroll-cue-chevrons{display:flex;flex-direction:column;align-items:center;height:14px;overflow:hidden}.scroll-cue-chevrons svg{color:var(--ember-2);margin-top:-5px;animation:scroll-chevron-chase 1.4s ease-in-out infinite}.scroll-cue-chevrons svg:last-child{animation-delay:.25s}@keyframes scroll-chevron-chase{0%{transform:translateY(-6px);opacity:0}35%{opacity:1}75%{opacity:1}to{transform:translateY(9px);opacity:0}}.landing-subtitle{text-align:center;margin:6px auto 0;scroll-margin-top:20px}.splash-intro{position:fixed;inset:0;z-index:300;display:grid;place-items:center;background:var(--bg);opacity:1;transition:opacity .4s ease}.splash-intro-exit{opacity:0;pointer-events:none}.splash-intro-scene{position:relative;width:240px;height:240px}.splash-intro-glow{position:absolute;inset:0;margin:auto;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle,rgba(255,85,0,.4),transparent 70%);opacity:0;transform:scale(.6);animation:splash-glow-in .6s ease-out forwards;animation-delay:.5s}@keyframes splash-glow-in{to{opacity:1;transform:scale(1)}}.splash-intro-arc{position:absolute;inset:0;width:100%;height:100%}.splash-intro-arc path{fill:none;stroke:var(--ember-2);stroke-width:2.5;stroke-linecap:round;stroke-dasharray:6 8;stroke-dashoffset:240;opacity:.6;animation:splash-trail .7s ease-out forwards}@keyframes splash-trail{to{stroke-dashoffset:0}}.splash-intro-ball{position:absolute;left:24px;top:208px;width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 32% 28%,#fff,#dcdcdc 55%,#a8a8a8);box-shadow:0 3px 8px #0006;animation:splash-ball-flight .7s cubic-bezier(.22,.6,.32,1) forwards}@keyframes splash-ball-flight{0%{transform:translate(0) rotate(0) scale(1);opacity:1}75%{transform:translate(87px,-82px) rotate(310deg) scale(.9);opacity:1}to{transform:translate(93px,-88px) rotate(340deg) scale(.25);opacity:0}}.splash-intro-impact{position:absolute;inset:0;margin:auto;width:30px;height:30px;border-radius:50%;border:2px solid var(--ember-1);opacity:0;animation:splash-impact .5s ease-out forwards;animation-delay:.52s}@keyframes splash-impact{0%{opacity:.8;transform:scale(.4)}to{opacity:0;transform:scale(3.2)}}.splash-intro-logo{position:absolute;inset:0;margin:auto;width:84px;height:84px;border-radius:20px;opacity:0;transform:scale(.35) rotate(-10deg);box-shadow:0 12px 44px #ff550073;animation:splash-logo-pop .45s cubic-bezier(.34,1.56,.64,1) forwards;animation-delay:.52s}@keyframes splash-logo-pop{to{opacity:1;transform:scale(1) rotate(0)}}.splash-intro-word{position:absolute;left:0;right:0;top:172px;text-align:center;font-size:22px;font-weight:800;letter-spacing:-.02em;background:var(--ember-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;opacity:0;animation:splash-word-in .35s ease forwards;animation-delay:.78s}@keyframes splash-word-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.splash-intro{display:none}}.landing-about[open]{padding-bottom:16px}.landing-about .lead{padding-top:14px}.landing-about h2{margin-top:6px}.feature-icon{width:32px;height:32px;flex-shrink:0;border-radius:9px;background:var(--surface-2);border:1px solid var(--border);display:grid;place-items:center;font-size:15px}.feature-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.feature-tile{display:flex;flex-direction:column;align-items:flex-start;gap:6px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px}.feature-tile .muted{font-size:13px;line-height:1.45}.course-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.course-grid a{display:block;background:linear-gradient(180deg,var(--surface-2),var(--surface) 60%);border:1px solid var(--border);border-radius:12px;padding:12px 14px;font-size:14px;font-weight:600;color:var(--text);text-decoration:none;transition:transform .08s ease,border-color .15s ease}.course-grid a:hover,.course-grid a:focus-visible{border-color:var(--ember-2);text-decoration:none}.course-grid a:active{transform:scale(.97)}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.public-page section{border-top:1px solid var(--border);padding-top:18px}.public-page section.card,.public-page section.cta-card{border:1px solid var(--border);border-radius:var(--radius);padding:16px;background:linear-gradient(180deg,var(--surface-2),var(--surface) 60%)}.cta-card .btn{margin-top:4px}.fact-row{display:flex;flex-wrap:wrap;gap:8px 16px;list-style:none;padding:0;margin:0;color:var(--text-dim);font-size:14px}.fact-row strong{color:var(--text)}.scorecard-wrap{display:flex;flex-direction:column;gap:12px}.card-nine{overflow-x:auto;-webkit-overflow-scrolling:touch}.scorecard-table{border-collapse:collapse;width:100%;min-width:460px;font-variant-numeric:tabular-nums}.scorecard-table th,.scorecard-table td{border:1px solid var(--border);padding:8px 6px;text-align:center;font-size:14px}.scorecard-table thead th{background:var(--surface-2);font-weight:700}.scorecard-table th[scope=row]{background:var(--surface-2);text-align:left;padding-left:10px;white-space:nowrap}.scorecard-table .sum{background:var(--surface-2);font-weight:700}.scorecard-total{font-size:15px}.link-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.course-list .course-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.course-row .muted{font-size:13px}.region-grid{list-style:none;padding:0;margin:0 0 4px;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px 16px}.step-list{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px;line-height:1.55}.faq-list{margin:0;display:flex;flex-direction:column;gap:14px}.faq-list dt{font-weight:700;margin-bottom:4px}.faq-list dd{margin:0;color:var(--text-dim);line-height:1.6}.auth-embedded{display:flex;flex-direction:column}.public-foot{border-top:1px solid var(--border);margin-top:12px;padding-top:24px;display:flex;flex-direction:column;gap:18px}.public-foot-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.public-foot-brand{display:flex;align-items:center;gap:8px;font-weight:800;letter-spacing:.02em;color:var(--text)}.public-foot-brand img{border-radius:7px}.public-foot-links{display:flex;flex-wrap:wrap;gap:8px;font-size:13px}.public-foot-links a{padding:5px 12px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);color:var(--text-dim)}.public-foot-links a:hover,.public-foot-links a:focus-visible{color:var(--text);border-color:var(--ember-2)}.public-foot-legal{border-top:1px solid var(--border);padding-top:16px;display:flex;flex-direction:column;gap:4px}.public-foot .muted{font-size:13px;margin:0}.public-foot-social{display:flex;gap:8px}.public-foot-social a{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);color:var(--text-dim);transition:color .15s ease,border-color .15s ease,transform .15s ease}.public-foot-social a:hover,.public-foot-social a:focus-visible{color:var(--ember-2);border-color:var(--ember-2);transform:translateY(-1px)}.attribution{opacity:.8}.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}
