:root{--bg: #0b1120;--bg2: #101a30;--card: #16223c;--card2: #1c2a48;--line: #26365a;--text: #eef2fa;--muted: #8fa0c2;--green: #34d399;--green-dark: #10b981;--blue: #60a5fa;--yellow: #fbbf24;--red: #f87171;--purple: #a78bfa;--radius: 18px;--shadow: 0 10px 30px rgba(0, 0, 0, .35);--glass-bg: linear-gradient(160deg, rgba(255, 255, 255, .085), rgba(255, 255, 255, .025) 45%, rgba(255, 255, 255, .05));--glass-border: rgba(255, 255, 255, .11);--glass-shadow: 0 10px 40px rgba(2, 6, 18, .45), inset 0 1px 0 rgba(255, 255, 255, .12), inset 0 -1px 0 rgba(255, 255, 255, .03);--glass-blur: blur(18px) saturate(160%);--duration-fast: .12s;--duration-default: .2s;--duration-slow: .32s;--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.22, 1.4, .36, 1)}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;min-height:100%;overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent}button,.topbar,.bottomnav,.path-node,.shelf-badge,.stat{-webkit-user-select:none;user-select:none}button{font-family:inherit}#root{min-height:100vh;position:relative;z-index:1}body:before,body:after{content:"";position:fixed;z-index:0;border-radius:50%;filter:blur(90px);pointer-events:none;will-change:transform}body:before{width:60vmax;height:60vmax;left:-18vmax;top:-22vmax;background:radial-gradient(circle at 35% 35%,rgba(52,211,153,.16),transparent 60%),radial-gradient(circle at 70% 65%,rgba(96,165,250,.14),transparent 62%);animation:drift-a 26s ease-in-out infinite alternate}body:after{width:52vmax;height:52vmax;right:-20vmax;bottom:-18vmax;background:radial-gradient(circle at 60% 40%,rgba(251,191,36,.1),transparent 60%),radial-gradient(circle at 30% 70%,rgba(167,139,250,.1),transparent 62%);animation:drift-b 32s ease-in-out infinite alternate}@keyframes drift-a{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(9vmax,6vmax,0) scale(1.15)}}@keyframes drift-b{0%{transform:translateZ(0) scale(1.1)}to{transform:translate3d(-8vmax,-7vmax,0) scale(.95)}}.glass{background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow)}.app{max-width:560px;margin:0 auto;padding:env(safe-area-inset-top) max(16px,env(safe-area-inset-right)) 100px max(16px,env(safe-area-inset-left));min-height:100vh}.ico{display:inline-block;vertical-align:middle;object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.ico-sm{width:17px;height:17px}.ico-md{width:22px;height:22px}.ico-lg{width:40px;height:40px}.ico-fallback{display:inline-flex;align-items:center;justify-content:center}.topbar{position:sticky;top:calc(10px + env(safe-area-inset-top));z-index:20;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;margin:10px 0 4px;border-radius:999px;background:linear-gradient(160deg,#16223cb8,#101a308c);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow)}.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:17px;letter-spacing:.2px;cursor:pointer}.logo .logo-img{width:30px;height:30px;border-radius:9px;display:block;box-shadow:0 2px 10px #34d39959}.stats{display:flex;gap:8px;align-items:center}.stat{display:flex;align-items:center;gap:6px;font-weight:800;font-size:14px;padding:6px 11px;background:#ffffff0f;border:1px solid var(--glass-border);border-radius:999px}.stat.xp{color:var(--green)}.stat.streak{color:var(--yellow)}.hero{margin:14px 0 20px;padding:24px 20px;border-radius:22px;position:relative;overflow:hidden;background:radial-gradient(130% 150% at 90% -10%,rgba(96,165,250,.22),transparent 52%),radial-gradient(130% 150% at 0% 110%,rgba(52,211,153,.16),transparent 52%),var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow);animation:fadeUp .5s var(--ease-out) both}.hero:after{content:"";position:absolute;top:0;left:-70%;width:45%;height:100%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.055),transparent);transform:skew(-18deg);animation:sheen 7s var(--ease-in-out) infinite;pointer-events:none}@keyframes sheen{0%,55%{left:-70%}85%,to{left:140%}}.hero h1{font-size:22px;margin-bottom:6px;text-wrap:balance}.hero p{color:var(--muted);font-size:14px;line-height:1.5}.hero .level-row{margin-top:16px;display:flex;align-items:center;gap:12px}.levelbar{flex:1;height:12px;border-radius:999px;background:#0208148c;border:1px solid rgba(255,255,255,.06);overflow:hidden}.levelbar>div{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--green),var(--blue));position:relative;overflow:hidden;transition:width .6s var(--ease-spring)}.levelbar>div:after,.pbar>div:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.45) 50%,transparent 80%);transform:translate(-100%);animation:shimmer 2.6s var(--ease-in-out) infinite}@keyframes shimmer{0%,35%{transform:translate(-100%)}70%,to{transform:translate(100%)}}.level-label{font-size:13px;font-weight:800;color:var(--blue);white-space:nowrap}.section-label{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;color:var(--muted);margin:22px 4px 10px}.module-card{display:flex;align-items:center;gap:14px;width:100%;text-align:left;padding:16px;margin-bottom:12px;background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow);border-radius:var(--radius);cursor:pointer;color:var(--text);transition:transform var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-default) var(--ease-out);animation:fadeUp .5s var(--ease-out) both}.module-card:nth-child(3){animation-delay:40ms}.module-card:nth-child(4){animation-delay:80ms}.module-card:nth-child(5){animation-delay:.12s}.module-card:nth-child(6){animation-delay:.16s}.module-card:nth-child(7){animation-delay:.2s}.module-card:nth-child(8){animation-delay:.24s}.module-card:nth-child(9){animation-delay:.28s}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.module-card:hover{border-color:color-mix(in srgb,var(--mcolor, var(--green)) 55%,transparent);transform:translateY(-2px);box-shadow:0 14px 44px #02061280,0 0 24px color-mix(in srgb,var(--mcolor, var(--green)) 14%,transparent),inset 0 1px #ffffff24}.module-card:active{transform:scale(.98)}.module-icon{width:54px;height:54px;min-width:54px;display:flex;align-items:center;justify-content:center;font-size:26px;border-radius:16px;overflow:hidden;background:color-mix(in srgb,var(--mcolor, var(--green)) 15%,rgba(255,255,255,.04));border:1px solid color-mix(in srgb,var(--mcolor, var(--green)) 45%,transparent);box-shadow:inset 0 1px #ffffff24}.module-icon .ico{width:100%;height:100%;border-radius:12px}.module-info{flex:1;min-width:0}.module-info h3{font-size:15.5px;margin-bottom:3px}.module-info p{font-size:12.5px;color:var(--muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.module-progress{text-align:center;min-width:46px}.ring{position:relative;width:44px;height:44px}.ring svg{transform:rotate(-90deg)}.ring circle:last-child{filter:drop-shadow(0 0 4px color-mix(in srgb,var(--mcolor, var(--green)) 70%,transparent));transition:stroke-dashoffset .6s var(--ease-spring)}.ring .pct{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:800}.module-head{padding:20px;margin:14px 0 18px;border-radius:22px;background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow);animation:fadeUp .45s var(--ease-out) both}.module-head .kicker{font-size:12px;font-weight:800;letter-spacing:1px;text-transform:uppercase;margin-bottom:6px}.module-head h2{font-size:20px;margin-bottom:6px;display:flex;align-items:center;gap:10px}.module-head h2 .ico{width:34px;height:34px;border-radius:10px}.module-head p{color:var(--muted);font-size:13.5px;line-height:1.5}.module-head .src{margin-top:10px;font-size:11.5px;color:var(--muted);opacity:.8}.path{position:relative;padding:6px 0 20px}.path-row{display:flex;align-items:center;gap:14px;margin-bottom:10px;width:100%;background:none;border:1px solid transparent;color:var(--text);text-align:left;cursor:pointer;padding:8px;border-radius:16px;transition:background-color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out);animation:fadeUp .45s var(--ease-out) both}.path-row:nth-child(2){animation-delay:50ms}.path-row:nth-child(3){animation-delay:.1s}.path-row:nth-child(4){animation-delay:.15s}.path-row:nth-child(5){animation-delay:.2s}.path-row:nth-child(6){animation-delay:.25s}.path-row:hover:not(.locked){background:#ffffff0d;border-color:var(--glass-border)}.path-row.locked{cursor:default;opacity:.45}.path-node{width:54px;height:54px;min-width:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800;background:#ffffff0d;border:3px solid var(--line);box-shadow:inset 0 1px #ffffff1a;position:relative}.path-node svg{display:block}.path-row.done .path-node{background:var(--mcolor);border-color:var(--mcolor);color:#06281c;box-shadow:0 0 18px color-mix(in srgb,var(--mcolor) 35%,transparent)}.path-row.next .path-node{border-color:var(--mcolor);box-shadow:0 0 0 5px color-mix(in srgb,var(--mcolor) 22%,transparent);animation:pulse 2s infinite}@keyframes pulse{0%,to{box-shadow:0 0 0 5px color-mix(in srgb,var(--mcolor) 22%,transparent)}50%{box-shadow:0 0 0 10px color-mix(in srgb,var(--mcolor) 9%,transparent)}}.path-title{flex:1}.path-title h4{font-size:15px;margin-bottom:2px}.path-title span{font-size:12px;color:var(--muted)}.player{display:flex;flex-direction:column;min-height:100vh;max-width:560px;margin:0 auto;padding:env(safe-area-inset-top) max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left))}.player-top{display:flex;align-items:center;gap:12px;padding:10px 14px;margin:12px 0 6px;border-radius:999px;background:linear-gradient(160deg,#16223cb8,#101a308c);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow)}.player-top .close{background:none;border:none;color:var(--muted);font-size:24px;cursor:pointer;line-height:1;padding:4px;border-radius:50%;transition:color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.player-top .close:hover{color:var(--text);transform:rotate(90deg)}.pbar{flex:1;height:12px;background:#0208148c;border:1px solid rgba(255,255,255,.06);border-radius:999px;overflow:hidden}.pbar>div{height:100%;background:linear-gradient(90deg,var(--green),var(--blue));border-radius:999px;position:relative;overflow:hidden;transition:width .4s var(--ease-spring)}.hearts{display:flex;gap:4px;min-width:64px;justify-content:flex-end;align-items:center}.hearts .ico{width:18px;height:18px;transition:opacity var(--duration-default) var(--ease-out),transform var(--duration-default) var(--ease-spring),filter var(--duration-default) var(--ease-out)}.hearts .ico.off{filter:grayscale(1) brightness(.5);opacity:.45;transform:scale(.85)}.hearts .heart-fallback{font-size:15px}.card-area{flex:1;display:flex;flex-direction:column;padding:12px 0 20px}.tcard,.qcard{animation:cardIn .32s var(--ease-out);padding:18px;border-radius:22px;background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow)}@keyframes cardIn{0%{opacity:0;transform:translate(26px) scale(.985)}to{opacity:1;transform:translate(0) scale(1)}}.tcard .card-kicker{font-size:12px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--blue);margin-bottom:8px}.lesson-art{width:100%;border-radius:16px;margin:4px 0 14px;border:1px solid var(--glass-border);display:block;box-shadow:0 8px 26px #02061259}.tcard h3{font-size:20px;margin-bottom:12px;line-height:1.3;text-wrap:balance}.tcard h3 .ico{width:26px;height:26px;margin-right:4px}.tcard .body{font-size:15.5px;line-height:1.65;color:#d5ddef}.tcard .body p{margin-bottom:12px}.tcard .body strong{color:var(--text)}.tcard .body em{color:var(--green);font-style:normal;font-weight:600}.tcard .body code{background:#0208148c;border:1px solid var(--line);padding:1px 6px;border-radius:6px;font-size:13.5px;font-family:SF Mono,Menlo,Consolas,monospace;color:var(--yellow)}.tcard .body ul{margin:0 0 12px 18px}.tcard .body li{margin-bottom:6px}.callout{margin:14px 0;padding:13px 15px;border-radius:12px;background:color-mix(in srgb,var(--blue) 10%,transparent);border:1px solid color-mix(in srgb,var(--blue) 35%,transparent);font-size:14px;line-height:1.55}.callout.green{background:color-mix(in srgb,var(--green) 10%,transparent);border-color:color-mix(in srgb,var(--green) 35%,transparent)}.qcard h3{font-size:18px;line-height:1.4;margin-bottom:18px;text-wrap:balance}.qcard .qtype{font-size:12px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--purple);margin-bottom:8px}.opts{display:flex;flex-direction:column;gap:10px}.opt{padding:15px 16px;border-radius:14px;background:#ffffff0b;border:2px solid rgba(255,255,255,.09);color:var(--text);font-size:15px;text-align:left;cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);line-height:1.45}.opt:hover:not(:disabled){border-color:var(--blue);transform:translateY(-1px)}.opt:active:not(:disabled){transform:scale(.99)}.opt.sel{border-color:var(--blue);background:color-mix(in srgb,var(--blue) 14%,transparent)}.opt.correct{border-color:var(--green);background:color-mix(in srgb,var(--green) 15%,transparent);animation:popCorrect .35s var(--ease-spring)}.opt.wrong{border-color:var(--red);background:color-mix(in srgb,var(--red) 13%,transparent);animation:shake .3s var(--ease-out)}.opt:disabled{cursor:default}@keyframes popCorrect{0%{transform:scale(1)}45%{transform:scale(1.02)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}30%{transform:translate(-5px)}60%{transform:translate(4px)}80%{transform:translate(-2px)}}.gap-sentence{font-size:17px;line-height:1.7;margin-bottom:20px}.gap-slot{display:inline-block;min-width:90px;border-bottom:2.5px dashed var(--blue);text-align:center;font-weight:800;color:var(--green);padding:0 6px}.order-list{display:flex;flex-direction:column;gap:8px}.order-item{display:flex;align-items:center;gap:10px;padding:13px 14px;border-radius:12px;background:#ffffff0b;border:2px solid rgba(255,255,255,.09);font-size:14.5px;color:var(--text);text-align:left;cursor:pointer;line-height:1.4;transition:border-color var(--duration-fast) var(--ease-out),opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.order-item:hover:not(:disabled){border-color:var(--blue)}.order-item .num{min-width:26px;height:26px;border-radius:50%;background:#0208148c;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;color:var(--blue)}.order-item.picked{opacity:.3;cursor:default}.order-picked-zone{min-height:54px;margin-bottom:14px;padding:10px;border-radius:12px;border:2px dashed rgba(255,255,255,.14);display:flex;flex-direction:column;gap:6px}.order-picked-zone .order-item{cursor:pointer;border-color:var(--blue);animation:fadeUp .2s var(--ease-out)}.order-hint{font-size:12.5px;color:var(--muted);margin-bottom:10px}.podcast-sub{font-size:14.5px;line-height:1.55;color:var(--muted);margin-bottom:14px}.pod-player{display:flex;align-items:center;gap:13px;padding:12px 16px 12px 12px;margin:4px 0 12px;border-radius:999px;background:linear-gradient(160deg,#ffffff1a,#ffffff0a);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow)}.pod-btn{width:46px;height:46px;min-width:46px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#052e1e;background:linear-gradient(160deg,var(--green),var(--green-dark));box-shadow:0 3px 0 var(--green-dark),0 0 18px #34d39959;transition:transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.pod-btn:active{transform:translateY(2px) scale(.97);box-shadow:0 1px 0 var(--green-dark),0 0 12px #34d3994d}.pod-btn.playing{animation:podGlow 2.2s var(--ease-in-out) infinite}@keyframes podGlow{0%,to{box-shadow:0 3px 0 var(--green-dark),0 0 14px #34d3994d}50%{box-shadow:0 3px 0 var(--green-dark),0 0 26px #34d3998c}}.pod-btn svg{display:block}.pod-track{flex:1;height:10px;border-radius:999px;background:#0208148c;border:1px solid rgba(255,255,255,.06);overflow:hidden;cursor:pointer;position:relative}.pod-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--green),var(--blue));transition:width .2s linear}.pod-time{font-size:12px;font-weight:700;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}.pod-eq{display:flex;align-items:flex-end;gap:2.5px;height:16px;min-width:17px}.pod-eq span{width:4px;border-radius:2px;background:var(--green);height:30%}.pod-eq.on span{animation:eq .9s var(--ease-in-out) infinite alternate}.pod-eq.on span:nth-child(2){animation-delay:.18s}.pod-eq.on span:nth-child(3){animation-delay:.34s}@keyframes eq{0%{height:25%}to{height:100%}}.feedback{margin-top:16px;padding:14px 16px;border-radius:14px;font-size:14.5px;line-height:1.55;animation:slideUp .25s var(--ease-out)}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.feedback.ok{background:color-mix(in srgb,var(--green) 14%,transparent);border:1px solid color-mix(in srgb,var(--green) 40%,transparent)}.feedback.no{background:color-mix(in srgb,var(--red) 12%,transparent);border:1px solid color-mix(in srgb,var(--red) 40%,transparent)}.feedback b{display:block;margin-bottom:4px;font-size:15px}.feedback.ok b{color:var(--green)}.feedback.no b{color:var(--red)}.bottombar{position:sticky;bottom:0;padding:14px 0 26px;background:linear-gradient(0deg,var(--bg) 70%,transparent)}.tcard .bottombar,.qcard .bottombar{background:none;padding-bottom:0}.btn{width:100%;padding:16px;border-radius:16px;border:none;font-size:16px;font-weight:800;letter-spacing:.3px;cursor:pointer;color:#052e1e;background:linear-gradient(160deg,#46e0a8,var(--green));box-shadow:0 4px 0 var(--green-dark),inset 0 1px #ffffff59;transition:transform .1s var(--ease-out),box-shadow .1s var(--ease-out)}.btn:active{transform:translateY(3px);box-shadow:0 1px 0 var(--green-dark),inset 0 1px #ffffff59}.btn:disabled{background:var(--card2);color:var(--muted);box-shadow:none;cursor:default}.btn.blue{background:linear-gradient(160deg,#7cb5fb,var(--blue));box-shadow:0 4px #3b82f6,inset 0 1px #ffffff59;color:#0a1a33}.btn.blue:active{box-shadow:0 1px #3b82f6,inset 0 1px #ffffff59}.results{text-align:center;padding:60px 20px 30px;animation:cardIn .3s var(--ease-out)}.results .big{font-size:64px;margin-bottom:14px}.results .big .ico{width:104px;height:104px;animation:heroFloat 3s var(--ease-in-out) infinite alternate;filter:drop-shadow(0 14px 30px rgba(2,6,18,.5))}@keyframes heroFloat{0%{transform:translateY(0) rotate(-2deg)}to{transform:translateY(-8px) rotate(2deg)}}.results h2{font-size:24px;margin-bottom:8px}.results p{color:var(--muted);margin-bottom:24px}.result-stats{display:flex;gap:12px;justify-content:center;margin-bottom:30px}.result-stat{padding:14px 18px;border-radius:14px;background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow);min-width:100px;animation:fadeUp .5s var(--ease-out) both}.result-stat:nth-child(2){animation-delay:70ms}.result-stat:nth-child(3){animation-delay:.14s}.result-stat .v{font-size:22px;font-weight:800}.result-stat .l{font-size:12px;color:var(--muted);margin-top:2px}.bottomnav{position:fixed;bottom:calc(10px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);z-index:30;display:flex;gap:6px;padding:8px 10px;border-radius:999px;background:linear-gradient(160deg,#16223cc7,#101a309e);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow)}.bottomnav button{display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 22px;background:none;border:none;color:var(--muted);font-size:11px;font-weight:700;cursor:pointer;border-radius:999px;transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.bottomnav button.active{color:var(--green);background:#34d3991a}.bottomnav button .ico{width:24px;height:24px;transition:transform var(--duration-default) var(--ease-spring)}.bottomnav button.active .ico{transform:translateY(-1px) scale(1.08)}.bottomnav .icon{font-size:21px}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.ptile{padding:18px 16px;border-radius:var(--radius);background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow);text-align:center;animation:fadeUp .45s var(--ease-out) both}.ptile:nth-child(2){animation-delay:50ms}.ptile:nth-child(3){animation-delay:.1s}.ptile:nth-child(4){animation-delay:.15s}.ptile .v{font-size:26px;font-weight:800}.ptile .l{font-size:12px;color:var(--muted);margin-top:4px}.badge-row{display:flex;flex-wrap:wrap;gap:10px}.badge{display:flex;align-items:center;gap:8px;padding:9px 13px;border-radius:999px;background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);font-size:13px;font-weight:700}.badge .ico{width:20px;height:20px}.badge.off{opacity:.32;filter:grayscale(.8)}.danger-btn{width:100%;padding:15px;border-radius:16px;border:1px solid rgba(248,113,113,.4);background:#f8717114;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:var(--red);font-size:15px;font-weight:800;cursor:pointer;margin-bottom:20px;transition:background-color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.danger-btn:hover{background:#f8717124}.danger-btn:active{transform:scale(.98)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#04091499;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:200;display:flex;align-items:center;justify-content:center;padding:24px;animation:fadeIn .2s var(--ease-out)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{width:100%;max-width:420px;background:linear-gradient(160deg,#1c2a48eb,#16223ce0);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow);border-radius:20px;padding:22px;animation:modalIn .22s var(--ease-out)}@keyframes modalIn{0%{opacity:0;transform:scale(.94) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal h3{font-size:19px;margin-bottom:10px}.modal p{font-size:14.5px;line-height:1.55;color:var(--muted);margin-bottom:18px}.modal-actions{display:flex;gap:10px}.modal-actions .btn{padding:13px;font-size:15px}.btn.ghost{background:#ffffff12;color:var(--text);border:1px solid var(--glass-border);box-shadow:0 4px #02081499}.btn.ghost:active{box-shadow:0 1px #02081499}.btn.red{background:linear-gradient(160deg,#fb8d8d,var(--red));color:#2a0b0b;box-shadow:0 4px #b91c1c,inset 0 1px #ffffff4d}.btn.red:active{box-shadow:0 1px #b91c1c,inset 0 1px #ffffff4d}.confetti-piece{position:fixed;top:-12px;width:9px;height:14px;border-radius:2px;z-index:100;animation:fall linear forwards;pointer-events:none}@keyframes fall{to{transform:translateY(110vh) rotate(720deg);opacity:.7}}@media(min-width:700px){.hero h1{font-size:26px}}@media(prefers-reduced-motion:reduce){body:before,body:after{animation:none}.hero:after{animation:none;display:none}.levelbar>div:after,.pbar>div:after{animation:none;display:none}.module-card,.path-row,.ptile,.result-stat,.hero,.module-head{animation:none}.tcard,.qcard,.results{animation-duration:.01ms}.pod-btn.playing,.path-row.next .path-node,.results .big .ico{animation:none}}.kn-view{animation:fadeUp .4s var(--ease-out) both;padding-top:4px}.kn-title{font-size:24px;margin:10px 0 6px;letter-spacing:-.3px;text-wrap:balance}.kn-lead{font-size:14px;line-height:1.6;color:var(--muted);margin-bottom:18px;text-wrap:pretty}.kn-kicker{font-size:12px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--blue);margin-bottom:6px}.kn-tagline{font-size:14px;color:var(--green);font-weight:600;margin-bottom:16px}.back-link{background:none;border:none;color:var(--muted);font-size:13.5px;font-weight:700;cursor:pointer;padding:6px 0;margin-bottom:4px;transition:color var(--duration-fast) var(--ease-out)}.back-link:hover{color:var(--text)}.shelf{display:flex;flex-direction:column;gap:10px}.shelf-row{display:flex;align-items:center;gap:13px;width:100%;text-align:left;cursor:pointer;padding:14px;border-radius:var(--radius);color:var(--text);background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow);transition:transform var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out);animation:fadeUp .4s var(--ease-out) both}.shelf-row:hover{transform:translateY(-2px);border-color:#fff3}.shelf-row:active{transform:scale(.99)}.shelf-badge{min-width:42px;height:42px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;background:#ffffff0f;box-shadow:inset 0 1px #ffffff1f}.shelf-text{flex:1;min-width:0}.shelf-text h4{font-size:15px;margin-bottom:2px}.shelf-text span{font-size:12.5px;color:var(--muted);line-height:1.4;display:block}.shelf-arrow{color:var(--muted);font-size:20px}.glass-block{padding:15px 16px;border-radius:16px;margin-bottom:12px;background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.glass-block b{display:block;font-size:12px;letter-spacing:.8px;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.glass-block p{font-size:14.5px;line-height:1.6}.glass-block.accent-blue{border-color:color-mix(in srgb,var(--blue) 40%,transparent);background:color-mix(in srgb,var(--blue) 9%,transparent)}.glass-block.accent-blue b{color:var(--blue)}.glass-block.accent-green{border-color:color-mix(in srgb,var(--green) 40%,transparent);background:color-mix(in srgb,var(--green) 9%,transparent)}.glass-block.accent-green b{color:var(--green)}.glass-block.accent-amber{border-color:color-mix(in srgb,var(--yellow) 40%,transparent);background:color-mix(in srgb,var(--yellow) 9%,transparent)}.glass-block.accent-amber b{color:var(--yellow)}.glass-block.accent-red{border-color:color-mix(in srgb,var(--red) 40%,transparent);background:color-mix(in srgb,var(--red) 9%,transparent)}.glass-block.accent-red b{color:var(--red)}.bullets{margin:0 0 16px 18px}.bullets li{font-size:14.5px;line-height:1.6;margin-bottom:7px}.pager{display:flex;gap:10px;margin-top:6px}.acc{display:flex;flex-direction:column;gap:9px}.acc-item{border-radius:16px;overflow:hidden;background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);transition:border-color var(--duration-fast) var(--ease-out)}.acc-item.open{border-color:color-mix(in srgb,var(--blue) 45%,transparent)}.acc-head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px;background:none;border:none;color:var(--text);text-align:left;cursor:pointer}.acc-head h4{font-size:15px}.acc-kind{font-size:10.5px;font-weight:800;letter-spacing:.9px;text-transform:uppercase;color:var(--blue);display:block;margin-bottom:3px}.acc-chev{font-size:18px;color:var(--muted);min-width:18px;text-align:center}.acc-body{padding:0 14px 14px;animation:slideUp .22s var(--ease-out)}.acc-body>p{font-size:14.5px;line-height:1.6;margin-bottom:10px}.kv{display:flex;gap:8px;font-size:13.5px;line-height:1.5;margin-bottom:10px}.kv b{color:var(--green);white-space:nowrap}.kv span{color:var(--muted)}.steps{margin:0 0 10px 18px}.steps li{font-size:14px;line-height:1.55;margin-bottom:5px}.trap{font-size:13.5px;line-height:1.55;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,var(--red) 10%,transparent);border:1px solid color-mix(in srgb,var(--red) 30%,transparent)}.trap b{color:var(--red);margin-right:4px}.chips{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}.chip{padding:7px 13px;border-radius:999px;font-size:12.5px;font-weight:700;cursor:pointer;background:#ffffff0d;border:1px solid var(--glass-border);color:var(--muted);transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.chip:hover{color:var(--text)}.chip.on{background:color-mix(in srgb,var(--green) 18%,transparent);border-color:color-mix(in srgb,var(--green) 50%,transparent);color:var(--green)}.rules{display:flex;flex-direction:column;gap:10px}.rule{display:flex;gap:13px;padding:14px;border-radius:16px;background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);animation:fadeUp .35s var(--ease-out) both}.rule-n{min-width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:800;color:var(--green);background:color-mix(in srgb,var(--green) 14%,transparent)}.rule h4{font-size:14.5px;line-height:1.45;margin-bottom:5px}.rule p{font-size:13.5px;line-height:1.55;color:var(--muted)}.rule-cat{display:inline-block;margin-top:7px;font-size:11px;font-weight:700;color:var(--blue);opacity:.8}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mind-card{text-align:left;padding:14px;border-radius:16px;cursor:pointer;color:var(--text);background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);transition:transform var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out);animation:fadeUp .35s var(--ease-out) both}.mind-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--purple) 50%,transparent)}.mind-card h4{font-size:14px;margin-bottom:4px}.mind-card span{font-size:12px;color:var(--muted);line-height:1.4}.rank-card{padding:20px;border-radius:22px;margin-bottom:16px;text-align:center}.rank-name{font-size:22px;font-weight:800;background:linear-gradient(120deg,var(--green),var(--blue));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.rank-note{font-size:13.5px;color:var(--muted);line-height:1.5;margin-top:6px}.rank-meta{font-size:12px;color:var(--muted);margin-top:8px;font-weight:700}.radar-wrap{padding:10px;border-radius:22px;display:flex;justify-content:center}.radar{width:100%;max-width:330px;overflow:visible}.radar-legend{display:flex;align-items:center;justify-content:center;gap:8px;font-size:11.5px;color:var(--muted);margin:8px 0 4px}.dot-now,.dot-prev{width:10px;height:3px;border-radius:2px;display:inline-block}.dot-now{background:var(--green)}.dot-prev{background:var(--muted)}.diag-q{font-size:19px;line-height:1.45;margin:4px 0 20px;text-wrap:balance}.scale{display:flex;flex-direction:column;gap:8px}.scale-btn{display:flex;align-items:center;gap:12px;padding:13px 15px;border-radius:14px;cursor:pointer;background:#ffffff0b;border:2px solid rgba(255,255,255,.09);color:var(--text);text-align:left;transition:border-color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.scale-btn:hover{border-color:var(--blue);transform:translateY(-1px)}.scale-v{min-width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;background:#02081480;color:var(--blue)}.scale-l{font-size:14.5px}.diag-row{padding:14px;border-radius:16px;margin-bottom:10px}.diag-row-head{display:flex;justify-content:space-between;align-items:baseline;font-size:14px;margin-bottom:8px}.diag-row-head span{font-size:12.5px;color:var(--muted);font-weight:700}.diag-bar{height:7px;border-radius:999px;background:#02081480;overflow:hidden;margin-bottom:9px}.diag-bar>div{height:100%;border-radius:999px;transition:width .6s var(--ease-spring)}.diag-row p{font-size:13.5px;line-height:1.55;color:var(--muted)}.diag-lessons,.week-lessons{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.mini-link{font-size:12px;font-weight:700;padding:6px 11px;border-radius:999px;cursor:pointer;background:#60a5fa1f;border:1px solid rgba(96,165,250,.3);color:var(--blue);transition:background-color var(--duration-fast) var(--ease-out)}.mini-link:hover{background:#60a5fa33}.mini-link.done{background:#34d3991f;border-color:#34d3994d;color:var(--green)}.week{padding:14px;border-radius:16px;margin-bottom:10px;transition:border-color var(--duration-fast) var(--ease-out)}.week.done{border-color:color-mix(in srgb,var(--green) 45%,transparent)}.week-head{display:flex;align-items:center;gap:12px;margin-bottom:4px}.week-n{min-width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;color:var(--yellow);background:color-mix(in srgb,var(--yellow) 14%,transparent)}.week-title{flex:1}.week-title h4{font-size:14.5px}.week-title span{font-size:11.5px;color:var(--muted)}.week-check{width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:13px;font-weight:800;background:#ffffff0d;border:2px solid var(--line);color:var(--muted);transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.week-check.on{background:var(--green);border-color:var(--green);color:#06281c}.week-task,.week-signal{font-size:13px;line-height:1.5;margin-top:9px;color:var(--muted)}.week-task b,.week-signal b{display:block;font-size:11px;letter-spacing:.7px;text-transform:uppercase;margin-bottom:3px}.week-task b{color:var(--yellow)}.week-signal b{color:var(--green)}.jr{border-radius:16px;margin-bottom:9px;overflow:hidden}.jr.has{border-color:color-mix(in srgb,var(--purple) 40%,transparent)}.jr-head{width:100%;display:flex;gap:10px;justify-content:space-between;align-items:flex-start;padding:14px;background:none;border:none;color:var(--text);text-align:left;cursor:pointer;font-size:14px;line-height:1.45}.jr-text{width:calc(100% - 28px);margin:0 14px 14px;padding:12px;border-radius:12px;resize:vertical;background:#02081480;border:1px solid var(--glass-border);color:var(--text);font-family:inherit;font-size:14px;line-height:1.6;outline:none}.jr-text:focus{border-color:var(--purple)}.jr-preview{padding:0 14px 14px;font-size:13px;line-height:1.5;color:var(--muted)}.pstats{display:flex;gap:8px;margin-bottom:14px}.pstat{flex:1;padding:11px 6px;border-radius:14px;text-align:center;background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.pstat b{display:block;font-size:17px;font-weight:800;font-variant-numeric:tabular-nums}.pstat span{font-size:10.5px;color:var(--muted)}.q-origin{font-size:11.5px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);margin-bottom:10px}.fc-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);font-weight:700;margin-bottom:10px}.flashcard{width:100%;min-height:230px;padding:22px;border-radius:22px;cursor:pointer;color:var(--text);display:flex;flex-direction:column;justify-content:center;text-align:center;transition:transform var(--duration-default) var(--ease-spring),border-color var(--duration-default) var(--ease-out);animation:cardIn .3s var(--ease-out)}.flashcard:active{transform:scale(.99)}.flashcard.flipped{border-color:color-mix(in srgb,var(--green) 45%,transparent)}.fc-kicker{font-size:11px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;margin-bottom:14px}.fc-front{font-size:20px;font-weight:700;line-height:1.4;text-wrap:balance}.fc-hint{font-size:12px;color:var(--muted);margin-top:18px}.fc-tag{font-size:10.5px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--green);margin-bottom:10px}.fc-back{font-size:16.5px;line-height:1.6;text-wrap:pretty}.fc-actions{display:flex;gap:10px;margin-top:14px}.game-meta{font-size:12.5px;font-weight:700;color:var(--muted);margin-bottom:12px}.opt-score{float:right;font-size:12px;font-weight:800;opacity:.75;margin-left:8px}.claim{padding:22px 20px;border-radius:20px;margin-bottom:16px;font-size:17px;line-height:1.55;text-align:center;text-wrap:pretty;animation:cardIn .3s var(--ease-out)}.duel-actions{display:flex;gap:10px}.continue-card{position:relative;width:100%;text-align:left;cursor:pointer;color:#052e1e;padding:17px 46px 17px 18px;border-radius:20px;margin-bottom:12px;background:linear-gradient(135deg,#46e0a8,var(--green) 55%,#5fc9f3);border:none;box-shadow:0 6px 26px #34d39947,inset 0 1px #fff6;transition:transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out);animation:fadeUp .45s var(--ease-out) both}.continue-card:hover{transform:translateY(-2px);box-shadow:0 10px 32px #34d3995c,inset 0 1px #fff6}.continue-card:active{transform:scale(.99)}.cc-kicker{font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase;opacity:.7}.cc-title{font-size:17px;font-weight:800;line-height:1.3;margin:3px 0 2px}.cc-sub{font-size:12.5px;font-weight:600;opacity:.72}.cc-arrow{position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:22px;font-weight:800}.insight{padding:16px 18px;border-radius:20px;margin-bottom:12px;animation:fadeUp .5s var(--ease-out) both}.insight-kicker{font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--yellow);margin-bottom:7px}.insight p{font-size:15px;line-height:1.6;font-style:italic;margin-bottom:10px;text-wrap:pretty}.search{width:100%;padding:13px 16px;border-radius:14px;margin-bottom:14px;font-size:14.5px;font-family:inherit;background:#ffffff0d;border:1px solid var(--glass-border);color:var(--text);outline:none;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);transition:border-color var(--duration-fast) var(--ease-out)}.search:focus{border-color:var(--blue)}.search::placeholder{color:var(--muted)}.bottomnav button{padding:7px 14px}@media(prefers-reduced-motion:reduce){.kn-view,.shelf-row,.rule,.mind-card,.continue-card,.insight,.flashcard,.claim{animation:none}}.install-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;display:flex;align-items:flex-end;justify-content:center;padding:16px;background:#04091499;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fadeIn .25s var(--ease-out)}.install-sheet{position:relative;width:100%;max-width:440px;padding:22px 20px 20px;border-radius:26px 26px 22px 22px;background:linear-gradient(170deg,var(--card2),var(--card));border:1px solid var(--glass-border);box-shadow:0 -8px 40px #00000080;margin-bottom:calc(env(safe-area-inset-bottom) + 4px);animation:sheetUp .32s var(--ease-spring)}@keyframes sheetUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.install-close{position:absolute;top:12px;right:14px;width:30px;height:30px;border-radius:50%;background:#ffffff14;border:none;color:var(--muted);font-size:19px;line-height:1;cursor:pointer}.install-sheet h3{font-size:19px;margin-bottom:6px;padding-right:34px;letter-spacing:-.2px}.install-lead{font-size:13.5px;line-height:1.5;color:var(--muted);margin-bottom:18px}.install-steps{display:flex;align-items:flex-start;justify-content:center;gap:4px;margin-bottom:20px}.install-step{flex:1;text-align:center;max-width:110px}.install-emoji{font-size:30px;line-height:1;width:54px;height:54px;margin:0 auto 7px;display:flex;align-items:center;justify-content:center;border-radius:17px;background:#ffffff12;border:1px solid var(--glass-border)}.install-num{width:19px;height:19px;border-radius:50%;margin:0 auto 5px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#052e1e;background:var(--green)}.install-label{font-size:12.5px;font-weight:700;line-height:1.3}.install-note{font-size:11px;color:var(--muted);line-height:1.35;margin-top:2px}.install-arrow{font-size:19px;color:var(--yellow);font-weight:800;padding-top:16px;flex-shrink:0}@media(prefers-reduced-motion:reduce){.install-backdrop,.install-sheet{animation:none}}.auth-wrap{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px 18px calc(24px + env(safe-area-inset-bottom))}.auth-card{width:100%;max-width:400px;background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-radius:24px;padding:32px 26px 26px;text-align:center;animation:auth-in var(--duration-slow) var(--ease-spring) both}.auth-card--slim{padding:40px 26px;max-width:240px}@keyframes auth-in{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.auth-logo{width:62px;height:62px;border-radius:16px;margin-bottom:16px}.auth-kicker{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--green);margin-bottom:10px}.auth-title{font-size:25px;line-height:1.25;margin-bottom:10px}.auth-sub{font-size:14.5px;line-height:1.62;color:var(--muted);margin-bottom:20px}.auth-sub strong{color:var(--text);font-weight:600}.auth-note{font-size:13.5px;line-height:1.5;color:#fde7c8;background:#fbbf241f;border:1px solid rgba(251,191,36,.3);border-radius:12px;padding:11px 13px;margin-bottom:16px;text-align:left}.auth-form{display:flex;flex-direction:column;gap:10px}.auth-input{width:100%;font:inherit;font-size:16px;color:var(--text);background:#ffffff0f;border:1px solid var(--glass-border);border-radius:13px;padding:14px 15px;text-align:center;transition:border-color var(--duration-default) var(--ease-out),background var(--duration-default) var(--ease-out)}.auth-input::placeholder{color:#6b7d9c}.auth-input:focus{outline:none;border-color:var(--green);background:#ffffff17}.auth-btn{font-size:15.5px;font-weight:650;color:#06231b;background:linear-gradient(160deg,#7fe9c8,var(--green-dark));border:none;border-radius:13px;padding:14px 18px;cursor:pointer;transition:transform var(--duration-fast) var(--ease-out),opacity var(--duration-fast) var(--ease-out)}.auth-btn:active{transform:scale(.975)}.auth-btn:disabled{opacity:.45;cursor:default}.auth-ghost{margin-top:18px;font-size:14px;color:var(--muted);background:none;border:none;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.auth-ghost:hover{color:var(--text)}.auth-fine{margin-top:16px;font-size:12.5px;line-height:1.55;color:#6f809f}.auth-spinner{width:28px;height:28px;margin:0 auto 14px;border:2.5px solid rgba(255,255,255,.14);border-top-color:var(--green);border-radius:50%;animation:auth-spin .7s linear infinite}@keyframes auth-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.auth-card{animation:none}.auth-spinner{animation-duration:1.6s}}.account-line{font-size:14px;line-height:1.6;color:var(--muted);margin-bottom:12px}.account-line strong{color:var(--text);font-weight:600;word-break:break-all}.account-line span{font-size:13px;color:#6f809f}.ghost-btn{width:100%;font:inherit;font-size:15px;color:var(--text);background:#ffffff0f;border:1px solid var(--glass-border);border-radius:13px;padding:13px 16px;cursor:pointer;transition:background var(--duration-default) var(--ease-out)}.ghost-btn:hover{background:#ffffff1a}.ghost-btn:active{transform:scale(.985)}.auth-pw{position:relative}.auth-pw .auth-input{padding-right:84px;text-align:left}.auth-pw-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);font:inherit;font-size:12.5px;color:var(--muted);background:none;border:none;padding:8px 10px;cursor:pointer}.auth-pw-toggle:hover{color:var(--text)}.auth-links{margin-top:18px;display:flex;flex-direction:column;gap:9px}.auth-links .auth-ghost{margin-top:0}
