:root{--gold-primary:#ffd700;--gold-dark:#b8860b;--gold-gradient:linear-gradient(135deg, #ffd700 0%, #d4af37 50%, #b8860b 100%);--text-on-gold:#1a1a1a;--color-bg-main:#0f1115;--color-bg-secondary:#151821;--color-bg-card:#1b1f2a;--color-border:#2a2f3a;--color-text-main:#e6e8ee;--color-text-secondary:#a3a8b8;--color-text-muted:#6f7485;--color-accent:#5b8cff;--color-accent-hover:#4a7df0;--color-success:#3fb950;--color-danger:#f85149;--color-warning:#d29922;--font-main:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--font-size-xs:11px;--font-size-sm:13px;--font-size-base:15px;--font-size-lg:17px;--font-size-xl:20px;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--shadow-card:0 4px 12px rgba(0, 0, 0, 0.35);--ease-smooth:cubic-bezier(0.22, 1, 0.36, 1);--ease-spring:cubic-bezier(0.34, 1.56, 0.64, 1);--dur-fast:0.15s;--dur-base:0.28s;--dur-slow:0.6s;--safe-area-top:env(safe-area-inset-top, 0px);--header-bar-height:64px;--page-top-offset:92px;--latex-svg-img-filter:invert(1) brightness(0.91) contrast(1.32);--latex-svg-catalog-glow:drop-shadow(0.55px 0 0 rgba(230, 232, 238, 0.42)) drop-shadow(-0.55px 0 0 rgba(230, 232, 238, 0.42)) drop-shadow(0 0.45px 0 rgba(230, 232, 238, 0.35)) drop-shadow(0 -0.45px 0 rgba(230, 232, 238, 0.35))}[data-theme=light]{color-scheme:light;--color-bg-main:#f6f7fb;--color-bg-secondary:#ffffff;--color-bg-card:#ffffff;--color-border:#e4e7ee;--color-text-main:#1f2328;--color-text-secondary:#4b5563;--color-text-muted:#6b7280;--color-accent:#4f7cff;--color-accent-hover:#3f6ae6;--color-success:#16a34a;--color-danger:#dc2626;--color-warning:#d97706;--latex-svg-img-filter:contrast(1.38) brightness(0.97);--latex-svg-catalog-glow:drop-shadow(0.55px 0 0 rgba(31, 35, 40, 0.5)) drop-shadow(-0.55px 0 0 rgba(31, 35, 40, 0.5)) drop-shadow(0 0.45px 0 rgba(31, 35, 40, 0.42)) drop-shadow(0 -0.45px 0 rgba(31, 35, 40, 0.42));--gold-primary:#b8941a;--gold-dark:#96710e;--gold-gradient:linear-gradient(135deg, #e4c84a 0%, #c9a227 50%, #a67c12 100%)}*,::after,::before{box-sizing:border-box}body,html{margin:0;padding:0}html{background:var(--color-bg-main);color-scheme:dark}html.theme-no-transition,html.theme-no-transition *,html.theme-no-transition ::after,html.theme-no-transition ::before{transition:none!important}body{min-height:100vh;display:flex;flex-direction:column;background:var(--color-bg-main);color:var(--color-text-main);font-family:var(--font-main);font-size:var(--font-size-base);-webkit-font-smoothing:antialiased;padding-top:calc(var(--page-top-offset) + var(--safe-area-top));transition:background var(--dur-base) ease,color var(--dur-base) ease}.card,.dashboard-card,.dashboard-hero,.landing>section,.main-content>*,.main-header,.sidebar{transition:background-color var(--dur-base) ease,border-color var(--dur-base) ease,color var(--dur-base) ease}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important;scroll-behavior:auto!important}.catalog-topic-grid>.catalog-topic-card,.landing>section,.reveal-stagger>*,.reveal-up,body:not([data-page=landing]) .main-content>*{opacity:1!important;animation:none!important;transform:none!important}.btn-gold::after,.dashboard-start-btn::after{animation:none!important;opacity:0!important}}.main-header{position:fixed;top:0;left:0;right:0;padding-top:var(--safe-area-top);height:calc(var(--header-bar-height) + var(--safe-area-top));background:linear-gradient(180deg,color-mix(in srgb,var(--color-bg-secondary) 94%,transparent),color-mix(in srgb,var(--color-bg-secondary) 88%,transparent));backdrop-filter:blur(10px) saturate(1.1);-webkit-backdrop-filter:blur(10px) saturate(1.1);border-bottom:1px solid color-mix(in srgb,var(--gold-primary) 28%,var(--color-border));box-shadow:0 2px 18px rgba(0,0,0,.16);z-index:100;animation:header-slide-down var(--dur-slow) var(--ease-smooth) both}@keyframes header-slide-down{from{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.header-inner{max-width:1200px;margin:0 auto;height:100%;padding:0 var(--space-lg);display:flex;align-items:center;justify-content:space-between}.logo{display:inline-flex;align-items:center}.header-logo{height:84px;width:auto;display:block}[data-theme=light] .header-logo{filter:invert(1) hue-rotate(180deg) brightness(1.2)}.logo:hover .header-logo{filter:invert(1) hue-rotate(180deg) brightness(1.2) drop-shadow(0 0 8px rgba(250, 204, 21, .9))}.nav-left,.nav-right{display:flex;align-items:center;gap:var(--space-md)}.main-nav{display:flex;align-items:center;gap:var(--space-sm)}.catalog-task-select,.catalog-task-select-label,.mobile-header-menu-btn,.trainer-task-select,.trainer-task-select-label{display:none}.main-wrapper{max-width:1400px;width:100%;margin:0 auto;padding:var(--space-lg) 40px var(--space-xl);display:grid;grid-template-columns:280px minmax(0,1fr);gap:var(--space-lg);align-items:flex-start;flex:1 0 auto}.exam-wrapper,.profile-wrapper,.stats-wrapper,.steroid-wrapper{grid-template-columns:1fr}.steroid-main{display:flex;flex-direction:column;gap:var(--space-md)}.steroid-card{width:100%;max-width:100%;box-sizing:border-box;min-width:0;transition:border-color .2s,box-shadow .2s,transform .1s,filter .2s}.steroid-card:hover{border-color:rgba(212,175,55,.7);box-shadow:0 10px 28px rgba(212,175,55,.35);transform:translateY(-2px);filter:drop-shadow(0 0 8px rgba(250, 204, 21, .35))}.steroid-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-sm)}.steroid-number-btn{padding:8px 0;border-radius:999px;border:1px solid var(--color-border);background:var(--color-bg-secondary);color:var(--color-text-main);cursor:pointer;transition:background-color .2s,border-color .2s,color .2s,box-shadow .2s,transform .1s}.steroid-number-btn.selected{background:var(--gold-gradient);color:var(--text-on-gold);border-color:rgba(212,175,55,.9);box-shadow:0 6px 16px rgba(212,175,55,.4);transform:translateY(-1px)}.steroid-next-wrapper{margin-top:calc(var(--space-md) * 1.5)}.steroid-roadmap-item{display:flex;align-items:center;justify-content:center;padding:10px 0;border-radius:999px;border:1px solid var(--color-border);background:var(--color-bg-secondary);color:var(--color-text-main);cursor:grab;box-shadow:var(--shadow-card);transition:background-color .2s,border-color .2s,box-shadow .2s,transform .1s}.steroid-roadmap-item:hover{border-color:rgba(212,175,55,.7);box-shadow:0 6px 18px rgba(212,175,55,.35);transform:translateY(-1px)}.steroid-roadmap-item.dragging{opacity:.85;cursor:grabbing;box-shadow:0 10px 24px rgba(212,175,55,.55)}.steroid-roadmap-item.drop-target{border-color:rgba(212,175,55,.95);box-shadow:0 0 0 2px rgba(212,175,55,.5),0 10px 24px rgba(212,175,55,.55)}.steroid-roadmap-actions{margin-top:calc(var(--space-md) * 1.5);display:flex;flex-wrap:wrap;gap:var(--space-sm)}.steroid-roadmap-page .steroid-roadmap-card{padding:calc(var(--space-lg) * 1.25) clamp(var(--space-md),4vw,2rem) calc(var(--space-lg) * 1.4);position:relative;overflow:hidden}.steroid-roadmap-page .steroid-roadmap-card::before{content:'';position:absolute;inset:0;background:radial-gradient(70% 45% at 50% 0,rgba(212,175,55,.14),transparent 70%);pointer-events:none;animation:5s ease-in-out infinite steroidGlowPulse}@keyframes steroidGlowPulse{0%,100%{opacity:.65}50%{opacity:1}}.steroid-roadmap-title{text-align:center;margin-bottom:calc(var(--space-lg) * 1.1);font-size:clamp(1.2rem, 2.6vw, 1.55rem);font-weight:700;letter-spacing:-.01em;position:relative;z-index:1}.steroid-roadmap-title::after{content:'';display:block;width:0;height:3px;margin:.7rem auto 0;border-radius:999px;background:var(--gold-gradient);animation:.8s cubic-bezier(.22,1,.36,1) .15s forwards steroidUnderline}@keyframes steroidUnderline{to{width:72px}}#steroid-roadmap-loading{text-align:center}.steroid-learning-path{width:100%;max-width:760px;margin:0 auto;position:relative;z-index:1}.steroid-snake{position:relative;width:100%;display:grid;gap:2.4rem .4rem;padding:.5rem 1rem 0;z-index:0}.steroid-snake__svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0}.steroid-snake__track{fill:none;stroke:var(--color-border);stroke-width:3;stroke-linecap:round;stroke-dasharray:0.1 11;opacity:.85}.steroid-snake__gold{fill:none;stroke:url(#steroidGoldStroke);stroke-width:4.5;stroke-linecap:round;filter:url(#steroidGoldGlow);stroke-dasharray:var(--len);stroke-dashoffset:var(--len);animation:1.1s .15s forwards steroidDrawLine}@keyframes steroidDrawLine{to{stroke-dashoffset:0}}.steroid-snake__spark{fill:#fff7d6;filter:url(#steroidGoldGlow);opacity:0;animation:.4s 1s forwards steroidSparkIn}@keyframes steroidSparkIn{to{opacity:1}}.steroid-snake__node{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;opacity:0;transform:translateY(10px) scale(.85);animation:.5s cubic-bezier(.34,1.56,.64,1) forwards steroidNodePop;animation-delay:calc(var(--node-i, 0) * 80ms + .2s)}@keyframes steroidNodePop{to{opacity:1;transform:none}}.steroid-snake__circle{width:3.4rem;height:3.4rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--color-text-secondary);background:var(--color-bg-secondary);border:2px solid var(--color-border);position:relative;z-index:1;transition:transform .25s,border-color .25s,box-shadow .25s,color .25s,background .25s}.steroid-snake__circle svg{width:1.5rem;height:1.5rem}.steroid-snake__circle--num{font-size:1.25rem;letter-spacing:-.02em}.steroid-snake__node:hover .steroid-snake__circle{transform:translateY(-3px) scale(1.08)}.steroid-snake__node--completed .steroid-snake__circle{background:var(--gold-gradient);border-color:rgba(212,175,55,.9);color:#2a2103;box-shadow:0 6px 16px rgba(212,175,55,.32)}.steroid-snake__node--current .steroid-snake__circle{border:2px solid var(--gold-primary);color:var(--gold-primary);background:var(--color-bg-card);animation:2.4s ease-in-out infinite steroidBreathe}@keyframes steroidBreathe{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(212,175,55,.55),0 0 14px rgba(212,175,55,.4)}50%{transform:scale(1.08);box-shadow:0 0 0 11px rgba(212,175,55,0),0 0 24px rgba(212,175,55,.65)}}.steroid-snake__node--current .steroid-snake__circle::before{content:'';position:absolute;inset:-7px;border-radius:50%;border:2px dashed rgba(212,175,55,.7);animation:7s linear infinite steroidSpin}@keyframes steroidSpin{to{transform:rotate(360deg)}}.steroid-snake__node--locked .steroid-snake__circle{filter:grayscale(.7);opacity:.5}.steroid-snake__badge{position:absolute;top:-3px;right:-3px;width:1.15rem;height:1.15rem;border-radius:50%;background:#1f9d55;color:#fff;display:flex;align-items:center;justify-content:center;border:2px solid var(--color-bg-card);z-index:2;animation:.45s cubic-bezier(.34,1.56,.64,1) backwards steroidBadgePop;animation-delay:calc(var(--node-i, 0) * 80ms + .5s)}.steroid-snake__badge svg{width:.7rem;height:.7rem}@keyframes steroidBadgePop{from{transform:scale(0) rotate(-45deg);opacity:0}to{transform:none;opacity:1}}.steroid-snake__label{margin-top:.5rem;font-size:.76rem;line-height:1.2;color:var(--color-text-secondary);max-width:7rem}.steroid-snake__node--completed .steroid-snake__label,.steroid-snake__node--current .steroid-snake__label{color:var(--color-text-main);font-weight:600}.steroid-snake__sub{margin-top:.12rem;font-size:.66rem;color:var(--color-text-muted)}.steroid-roadmap-continue{margin-top:calc(var(--space-lg) * 1.3);display:flex;justify-content:center;position:relative;z-index:1;opacity:0;transform:translateY(10px);animation:.5s cubic-bezier(.34,1.56,.64,1) .5s forwards steroidNodePop}.steroid-roadmap-continue .primary-button{min-width:13rem}@media (prefers-reduced-motion:reduce){.steroid-roadmap-continue,.steroid-snake__node{animation:none;opacity:1;transform:none}.steroid-roadmap-page .steroid-roadmap-card::before,.steroid-roadmap-title::after,.steroid-snake__badge,.steroid-snake__gold,.steroid-snake__node--current .steroid-snake__circle,.steroid-snake__node--current .steroid-snake__circle::before,.steroid-snake__spark{animation:none}.steroid-snake__gold{stroke-dashoffset:0}.steroid-roadmap-title::after{width:72px}.steroid-snake__spark{opacity:1}}@media (max-width:520px){.steroid-snake{gap:2rem .3rem;padding:.5rem .6rem 0}.steroid-snake__circle{width:3rem;height:3rem}.steroid-snake__circle svg{width:1.3rem;height:1.3rem}.steroid-snake__circle--num{font-size:1.1rem}.steroid-snake__label{font-size:.68rem;max-width:5rem}}.steroid-pace-options{display:flex;flex-direction:column;gap:var(--space-sm);width:100%;min-width:0}.steroid-pace-option{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:var(--space-sm) var(--space-md);width:100%;max-width:100%;box-sizing:border-box;padding:var(--space-md);border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg-secondary);cursor:pointer;transition:border-color .2s,box-shadow .2s}.steroid-pace-option:has(input:checked){border-color:rgba(212,175,55,.85);box-shadow:0 0 0 1px rgba(212,175,55,.35)}.steroid-pace-option input{margin-top:2px;flex-shrink:0}.steroid-pace-option-body{display:flex;flex-direction:column;gap:6px;min-width:0;overflow-wrap:anywhere;word-break:break-word}.steroid-pace-option-body strong{display:block;line-height:1.3}.steroid-pace-option-body .text-secondary{display:block;line-height:1.45}.steroid-pace-warning{margin:0;padding:var(--space-sm) var(--space-md);border-radius:10px;border:1px solid rgba(234,179,8,.55);background:rgba(234,179,8,.12);color:var(--color-text-main);font-size:.95rem;line-height:1.45;overflow-wrap:anywhere;word-break:break-word}.steroid-pace-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.steroid-pace-badge{display:inline-block;margin-bottom:var(--space-sm);padding:4px 10px;border-radius:999px;font-size:.85rem;font-weight:600;border:1px solid var(--color-border);background:var(--color-bg-secondary);color:var(--color-text-main)}.steroid-pace-badge--accelerated{border-color:rgba(234,179,8,.6);background:rgba(234,179,8,.12)}.steroid-pace-badge--selective{border-color:rgba(96,165,250,.6);background:rgba(96,165,250,.12)}.steroid-stats-pace{margin-bottom:var(--space-sm);font-size:.95rem;color:var(--color-text-secondary)}.main-content{display:flex;flex-direction:column;gap:var(--space-lg)}.sidebar{background:var(--color-bg-secondary);border-radius:12px;border:1px solid var(--color-border);padding:var(--space-md)}.sidebar-section-label{margin:10px 0 6px;font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}.sidebar-section-label:first-of-type{margin-top:0}.sidebar .nav-btn{display:block;width:100%;margin-bottom:4px;padding:8px 10px;border-radius:999px;border:none;background:var(--gold-gradient);color:var(--text-on-gold);font-size:var(--font-size-sm);font-weight:600;text-align:left;text-decoration:none;cursor:pointer;transition:background-color .2s,box-shadow .2s,transform .1s}.sidebar .nav-btn:hover{text-decoration:none;box-shadow:0 6px 20px rgba(212,175,55,.45);transform:translateY(-1px)}.sidebar .nav-btn-num{font-weight:700}.sidebar .nav-btn-topic{font-weight:500;opacity:.65}.site-footer{padding-bottom:calc(var(--space-lg) + env(safe-area-inset-bottom,0px))}[data-theme=light] .site-footer{background:#fff;border-top:1px solid var(--color-border);box-shadow:0 -4px 12px rgba(15,23,42,.08)}.footer-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-lg)}@media (max-width:768px){:root{--header-bar-height:56px;--page-top-offset:88px}body{padding-top:calc(var(--page-top-offset) + var(--safe-area-top))}input,select,textarea{min-height:44px;box-sizing:border-box}.footer-inner,.header-inner,.main-wrapper,.xp-bar-inner{width:100%;max-width:100%;box-sizing:border-box;padding-left:var(--space-md);padding-right:var(--space-md)}.main-header{min-height:calc(var(--header-bar-height) + var(--safe-area-top))}.header-inner{flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:var(--space-sm);height:100%;min-height:0}.header-logo{height:40px;width:auto}.nav-left{position:relative;flex:1 1 auto;min-width:0;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:var(--space-sm);width:auto}.nav-right{flex:0 0 auto;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:6px;width:auto}.main-nav-right{flex-direction:row;flex-wrap:nowrap;align-items:center;gap:4px;width:auto}.nav-link--stats-desktop,.theme-toggle--desktop-only{display:none!important}.mobile-header-menu-btn{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;margin-left:4px;padding:0 12px;min-height:40px;border-radius:10px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-main);font-size:var(--font-size-sm);font-weight:600;cursor:pointer}.nav-left .main-nav-left,.nav-left .main-nav-parent{display:flex;position:fixed;top:calc(var(--header-bar-height) + var(--safe-area-top));left:0;right:0;z-index:140;flex-direction:column;align-items:stretch;gap:4px;width:100%;max-height:min(70vh,420px);overflow-y:auto;padding:12px var(--space-md) 16px;margin:0;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-card);opacity:0;visibility:hidden;transform:translateY(-8px);pointer-events:none;transition:opacity var(--dur-base) var(--ease-smooth),transform var(--dur-base) var(--ease-smooth),visibility var(--dur-base)}.nav-left.mobile-nav-is-open .main-nav-left,.nav-left.mobile-nav-is-open .main-nav-parent{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.nav-modes-dropdown-root{width:100%;display:flex;flex-direction:column;gap:2px}.nav-modes-toggle{width:100%;justify-content:center}.nav-modes-panel{position:static;min-width:0;max-width:none;width:100%;margin:0;padding:2px 0 6px;border:none;border-radius:0;box-shadow:none;background:0 0}.nav-modes-item{justify-content:center;border-radius:999px;color:var(--color-text-secondary)}.nav-modes-item.active{color:var(--gold-primary);background:rgba(212,175,55,.16)}.main-wrapper{display:flex;flex-direction:column;align-items:stretch;padding-top:var(--space-md);padding-bottom:var(--space-lg);gap:0;grid-template-columns:none;grid-template-rows:none}.steroid-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-inner{grid-template-columns:1fr;gap:var(--space-md)}.main-content{width:100%;min-width:0;flex:1 1 auto}.sidebar{width:100%;max-width:100%;flex:0 0 auto;height:auto;max-height:none;min-height:0;margin-bottom:20px;order:-1}.sidebar .nav-btn{min-height:32px;padding:5px 8px;box-sizing:border-box;flex:0 0 auto;align-self:stretch;margin-bottom:0;font-size:var(--font-size-xs)}.sidebar #nav-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;align-content:start}body[data-page=trainer] .sidebar #nav-list{display:none!important}body[data-page=trainer] .trainer-task-select-label{display:block;font-size:var(--font-size-xs);color:var(--color-text-secondary);margin:var(--space-sm) 0 6px}body[data-page=trainer] .trainer-task-select{display:block;width:100%;max-width:100%;box-sizing:border-box;min-height:44px;padding:8px 10px;border-radius:10px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-main);font-size:var(--font-size-sm)}body[data-page=catalog] .sidebar #nav-list{display:none!important}body[data-page=catalog] .catalog-task-select-label{display:block;font-size:var(--font-size-xs);color:var(--color-text-secondary);margin:var(--space-sm) 0 6px}body[data-page=catalog] .catalog-task-select{display:block;width:100%;max-width:100%;box-sizing:border-box;min-height:44px;padding:8px 10px;border-radius:10px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-main);font-size:var(--font-size-sm)}.steroid-main{width:100%}}.theme-toggle{background:0 0;border:1px solid var(--color-border);color:var(--color-text-main);border-radius:8px;padding:6px 10px;cursor:pointer;font-size:var(--font-size-sm);line-height:1;display:inline-flex;align-items:center;justify-content:center;transition:background-color var(--dur-base) ease,border-color var(--dur-base) ease,box-shadow var(--dur-base) ease,transform var(--dur-fast) var(--ease-spring)}.theme-toggle:hover{background:rgba(0,0,0,.1);border-color:rgba(212,175,55,.8);box-shadow:0 0 10px rgba(212,175,55,.55);transform:translateY(-1px)}.theme-toggle--spin{animation:theme-toggle-spin .45s var(--ease-spring)}@keyframes theme-toggle-spin{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.15)}100%{transform:rotate(360deg) scale(1)}}.nav-link{position:relative;display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;color:var(--color-text-secondary);font-size:var(--font-size-sm);text-decoration:none;transition:background-color var(--dur-base) ease,color var(--dur-base) ease,transform var(--dur-fast) ease}.nav-link::after{content:"";position:absolute;left:12px;right:12px;bottom:2px;height:2px;border-radius:999px;background:var(--gold-primary);transform:scaleX(0);transform-origin:left;transition:transform var(--dur-base) var(--ease-smooth)}.nav-link:hover{color:var(--color-text-main);background:rgba(255,255,255,.03);transform:translateY(-1px);filter:drop-shadow(0 0 6px rgba(250, 204, 21, .35))}.nav-link:hover::after{transform:scaleX(1)}.nav-link.active{color:var(--gold-primary);background:rgba(212,175,55,.16)}.nav-link.active::after{transform:scaleX(1);background:var(--gold-primary)}.nav-link--path{color:#2a1d00;font-weight:700;padding-left:14px;padding-right:16px;background:var(--gold-gradient);box-shadow:0 2px 10px rgba(212,175,55,.4),inset 0 0 0 1px rgba(255,255,255,.22);animation:3.2s ease-in-out infinite nav-path-glow}.nav-link--path::after{content:none}.nav-link--path-icon{display:inline-flex;align-items:center;margin-right:6px;font-size:.85em;line-height:1;color:#2a1d00;filter:drop-shadow(0 0 3px rgba(255, 255, 255, .5));animation:3.2s ease-in-out infinite nav-path-spark}.nav-link--path:hover{color:#2a1d00;background:var(--gold-gradient);transform:translateY(-1px) scale(1.03);filter:none;box-shadow:0 6px 18px rgba(255,215,0,.55),inset 0 0 0 1px rgba(255,255,255,.32)}.nav-link--path.active{color:#2a1d00;background:var(--gold-gradient);box-shadow:0 0 0 2px rgba(255,215,0,.35),0 6px 18px rgba(212,175,55,.55)}@keyframes nav-path-glow{0%,100%{box-shadow:0 2px 10px rgba(212,175,55,.38),inset 0 0 0 1px rgba(255,255,255,.22)}50%{box-shadow:0 4px 18px rgba(255,215,0,.65),inset 0 0 0 1px rgba(255,255,255,.3)}}@keyframes nav-path-spark{0%,100%{transform:rotate(0) scale(1);opacity:.9}50%{transform:rotate(90deg) scale(1.18);opacity:1}}@media (prefers-reduced-motion:reduce){.nav-link--path,.nav-link--path-icon{animation:none}}.nav-modes-dropdown-root{position:relative;display:inline-flex;align-items:center}.nav-modes-toggle{font-family:inherit;cursor:pointer;gap:4px}.nav-modes-toggle::after{content:none}.nav-modes-chevron{display:inline-flex;align-items:center;font-size:.75em;line-height:1;opacity:.85;transition:transform var(--dur-base) var(--ease-smooth)}.nav-modes-toggle[aria-expanded=true] .nav-modes-chevron{transform:rotate(180deg)}.nav-modes-panel{position:absolute;top:calc(100% + 6px);left:0;min-width:196px;z-index:150;padding:6px 0;border-radius:12px;border:1px solid var(--color-border);background:var(--color-bg-card);box-shadow:var(--shadow-card)}.nav-modes-item{display:flex;align-items:center;width:100%;padding:10px 14px;color:var(--color-text-main);font-size:var(--font-size-sm);text-decoration:none;box-sizing:border-box;min-height:44px;transition:background-color var(--dur-base) ease,color var(--dur-base) ease}.nav-modes-item:hover{background:rgba(212,175,55,.12);color:var(--gold-primary)}.nav-modes-item.active{color:var(--gold-primary);background:rgba(212,175,55,.16)}.main-nav-right .nav-link{border-radius:0;background:0 0}.main-nav-right .nav-link.active{background:0 0;text-decoration:none}.main-nav-right .nav-link.active::after{transform:scaleX(1);background:var(--gold-primary)}.main-nav-right{min-height:29px}#auth-section{min-width:210px;min-height:29px;display:inline-flex;align-items:center;justify-content:flex-end}html.app-user-authed #about-link,html.auth-pending-authed #about-link,html.auth-pending-authed #login-link,html.auth-pending-authed #registration-link{display:none!important}html.auth-pending-authed #auth-section{visibility:hidden}html.auth-pending-authed #parents-link,html.auth-pending-authed.app-user-parent .main-header #main-nav-left,html.auth-pending-authed.app-user-parent .main-header #parents-link,html.auth-pending-authed:not(.app-user-parent) .main-header #main-nav-parent{display:none!important}html.auth-pending-authed.app-user-parent .main-header #main-nav-parent{display:flex!important}.main-header #main-nav-parent,html.app-user-authed.app-user-parent .main-header #main-nav-left,html.app-user-authed.app-user-parent .main-header #parents-link{display:none!important}html.app-user-authed.app-user-parent .main-header #main-nav-parent{display:flex!important}html.auth-pending-unauth .main-header #auth-section,html.auth-pending-unauth .main-header #main-nav-parent,html.auth-pending-unauth .main-header .main-nav-left,html.auth-pending-unauth .main-header .main-nav-right,html.auth-pending-unauth .main-header .mobile-header-menu-btn{display:none!important}html.auth-pending-unauth .main-header .header-inner{justify-content:flex-start}html.auth-pending-unauth .main-header .nav-left{gap:0}.header-user{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.header-user-dropdown-root.header-user-desktop{position:relative;display:inline-flex;align-items:center}.header-notifications-root{position:relative}.header-notifications-btn{position:relative;border:1px solid transparent;background:0 0;color:var(--color-text-secondary);border-radius:999px;padding:4px 10px;cursor:pointer}.header-notifications-btn:hover{background:rgba(212,175,55,.12);color:var(--gold-primary)}.header-notifications-badge{position:absolute;top:-3px;right:-1px;min-width:16px;height:16px;border-radius:999px;background:var(--color-danger);color:#fff;font-size:10px;display:inline-flex;align-items:center;justify-content:center;padding:0 4px;animation:ui-pop-in var(--dur-base) var(--ease-spring) both}.header-notifications-badge[hidden],html.game-elements-off .header-coins,html.game-elements-off a[href="/rewards"],html.game-elements-off a[href="/shop"],html.game-elements-off a[href="/talents"]{display:none!important}.header-notifications-popover{width:min(360px,92vw);max-height:60vh;overflow:auto}.header-notifications-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-bottom:1px solid var(--color-border)}.header-notifications-readall{border:0;background:0 0;color:var(--color-text-secondary);cursor:pointer}.header-notifications-readall:hover{color:var(--gold-primary)}.header-notifications-list{display:grid;gap:6px;padding:8px}.header-notification-card{text-align:left;border:1px solid var(--color-border);background:var(--color-bg-card);border-radius:10px;padding:8px 10px;cursor:pointer;color:var(--color-text-main)}.header-notification-card.is-read{opacity:.7}.header-notification-title{font-size:var(--font-size-xs);color:var(--gold-primary);margin-bottom:4px}.header-notification-message{white-space:pre-wrap;line-height:1.35}.header-notification-action{display:inline-flex;margin-top:8px;padding:4px 10px;border-radius:8px;background:rgba(212,175,55,.15);color:var(--gold-primary);font-size:var(--font-size-sm);font-weight:600;text-decoration:none}.header-notification-action:hover{background:rgba(212,175,55,.28)}.header-notifications-empty{color:var(--color-text-muted);padding:8px 4px}.notification-toast-stack{position:fixed;top:calc(var(--page-top-offset) + var(--safe-area-top) + 10px);right:calc(12px + env(safe-area-inset-right,0px));z-index:13010;display:flex;flex-direction:column;gap:10px;pointer-events:none;max-width:min(360px,calc(100vw - 24px))}.notification-toast{pointer-events:auto;opacity:0;transform:translateY(-12px) scale(.98);transition:opacity .28s,transform .32s cubic-bezier(.22, 1, .36, 1);border-radius:14px;border:1px solid rgba(96,165,250,.45);background:var(--color-bg-card);box-shadow:0 14px 36px rgba(0,0,0,.42);padding:12px 38px 12px 14px;position:relative}.notification-toast--visible{opacity:1;transform:translateY(0) scale(1)}.notification-toast--exit{opacity:0;transform:translateY(-10px) scale(.98)}.notification-toast--clickable{cursor:pointer}.notification-toast-title{font-size:var(--font-size-sm);font-weight:700;margin-bottom:4px}.notification-toast-message{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.35;white-space:pre-wrap}.notification-toast-action{margin-top:8px;padding:6px 12px;border-radius:999px;border:1px solid rgba(96,165,250,.55);background:rgba(59,130,246,.15);color:#93c5fd;font-size:var(--font-size-sm);cursor:pointer}.notification-toast-action:hover{filter:brightness(1.08)}.notification-toast-close{position:absolute;top:8px;right:8px;width:28px;height:28px;border:0;border-radius:999px;background:0 0;color:var(--color-text-secondary);font-size:20px;line-height:1;cursor:pointer}.notification-toast-close:hover{color:var(--color-text-main)}.pwa-push-banner{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:13000;display:grid;gap:10px;padding:14px;border-radius:14px;border:1px solid var(--color-border);background:var(--color-bg-card);box-shadow:0 10px 30px rgba(0,0,0,.35)}.pwa-push-banner-text{display:grid;gap:4px}.pwa-push-banner-text strong{font-size:var(--font-size-sm)}.pwa-push-banner-text span{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.35}.pwa-push-banner-actions{display:flex;flex-wrap:wrap;gap:8px}.pwa-push-banner-status{min-height:1.1em;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.header-guest-mobile,.header-user-mobile{display:none;position:relative}.header-user-flyout{position:absolute;top:calc(100% + 6px);right:0;min-width:200px;max-width:min(280px,92vw);z-index:150;padding:6px 0;border-radius:12px;border:1px solid var(--color-border);background:var(--color-bg-card);box-shadow:var(--shadow-card)}.header-user-flyout-item{display:flex;align-items:center;width:100%;padding:12px 14px;border:none;background:0 0;color:var(--color-text-main);font-size:var(--font-size-sm);text-align:left;text-decoration:none;cursor:pointer;font-family:inherit;box-sizing:border-box;min-height:44px}a.header-user-flyout-item:hover{background:rgba(212,175,55,.12);color:var(--gold-primary)}.header-user-flyout-logout:hover{background:rgba(248,81,73,.12);color:var(--color-danger)}.header-user-name{border:1px solid transparent;background:0 0;color:var(--color-text-secondary);padding:4px 10px;border-radius:999px;cursor:pointer;font-size:var(--font-size-sm);transition:background-color .2s,color .2s,box-shadow .2s,transform .1s}.header-user-unauth{cursor:default}.header-user-unauth:hover{background:0 0;color:var(--color-text-secondary);box-shadow:none;transform:none}.header-user-name:hover{background:rgba(212,175,55,.12);color:var(--gold-primary);box-shadow:0 0 8px rgba(212,175,55,.45);transform:translateY(-1px)}.header-user-unauth.header-user-name:hover{background:0 0;color:var(--color-text-secondary);box-shadow:none;transform:none}.header-user-admin{border:1px solid var(--color-border);background:0 0;color:var(--color-text-secondary);border-radius:999px;padding:4px 10px;font-size:var(--font-size-xs);cursor:pointer;transition:background-color .2s,color .2s}.header-user-admin:hover{background:rgba(212,175,55,.12);color:var(--gold-primary);box-shadow:0 0 10px rgba(212,175,55,.35)}.header-user-logout{border:1px solid var(--color-border);background:0 0;color:var(--color-text-secondary);border-radius:999px;padding:4px 10px;font-size:var(--font-size-xs);cursor:pointer;transition:background-color .2s,color .2s}.header-user-logout:hover{background:rgba(248,81,73,.12);color:var(--color-danger)}.header-coins{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--gold-primary);text-decoration:none;font-size:var(--font-size-sm);font-weight:600;transition:background-color .2s,box-shadow .2s,color .2s}.header-coins:hover{background:rgba(212,175,55,.12);box-shadow:0 0 8px rgba(212,175,55,.35);color:var(--gold-primary)}.header-coins-icon{display:inline-flex;align-items:center;justify-content:center;line-height:0}.coin-icon-svg{display:block;flex-shrink:0}.primary-button .coin-icon-svg,.secondary-button .coin-icon-svg{display:inline-block;vertical-align:middle;margin-left:4px}.user-dropdown-hr{border:none;border-top:1px solid var(--color-border);margin:6px 0}.user-dropdown .user-dropdown-item.header-user-flyout-logout{color:var(--color-text-main)}.danger-button,.primary-button,.secondary-button{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border-radius:999px;border:none;font-size:var(--font-size-sm);font-weight:500;cursor:pointer;text-decoration:none;transition:background-color var(--dur-base) ease,border-color var(--dur-base) ease,color var(--dur-base) ease,box-shadow var(--dur-base) ease,transform var(--dur-fast) var(--ease-smooth)}.danger-button:focus-visible,.primary-button:focus-visible,.secondary-button:focus-visible{outline:0;box-shadow:0 0 0 2px var(--color-bg-main),0 0 0 4px var(--color-accent)}.danger-button:active,.primary-button:active,.secondary-button:active{transform:translateY(0) scale(.98)}.btn-gold::after,.dashboard-start-btn::after{content:"";position:absolute;top:0;left:-120%;width:55%;height:100%;background:linear-gradient(100deg,transparent 0,rgba(255,255,255,.4) 50%,transparent 100%);transform:skewX(-18deg);pointer-events:none}.btn-gold:hover::after,.dashboard-start-btn:hover::after{animation:2.8s ease-in-out infinite ui-sheen}.primary-button{background:var(--color-accent);color:#fff;box-shadow:0 6px 16px rgba(91,140,255,.35)}.primary-button:hover{background:var(--color-accent-hover);box-shadow:0 8px 20px rgba(91,140,255,.45);transform:translateY(-1px)}.secondary-button{background:0 0;border:1px solid var(--color-border);color:var(--color-text-secondary)}.secondary-button:hover{border-color:var(--color-accent);color:var(--color-text-main)}.danger-button{background:0 0;border:1px solid rgba(248,81,73,.8);color:var(--color-danger)}.danger-button:hover{background:rgba(248,81,73,.1)}.card{position:relative;overflow:hidden;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;padding:20px;box-shadow:var(--shadow-card);transition:border-color var(--dur-base) ease,box-shadow var(--dur-base) ease,transform var(--dur-fast) var(--ease-smooth),filter var(--dur-base) ease}.card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gold-gradient);transform:scaleX(0);transform-origin:left;transition:transform var(--dur-base) var(--ease-smooth)}.card:hover{border-color:rgba(212,175,55,.7);box-shadow:0 10px 28px rgba(212,175,55,.35);transform:translateY(-2px);filter:drop-shadow(0 0 8px rgba(250, 204, 21, .35))}.card:hover::before{transform:scaleX(1)}.card h1,.card h2,.card h3{margin-top:0}input,select,textarea{width:100%;padding:10px 12px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-bg-secondary);color:var(--color-text-main);font-family:var(--font-main);font-size:var(--font-size-base);outline:0;transition:border-color var(--dur-base) ease,box-shadow var(--dur-base) var(--ease-smooth),background-color var(--dur-base) ease}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--color-accent);box-shadow:0 0 0 1px rgba(91,140,255,.5),0 0 0 4px rgba(91,140,255,.15)}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}input:focus,select:focus,textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 1px rgba(91,140,255,.5),0 0 0 4px rgba(91,140,255,.15)}body:not([data-page=landing]) .main-content>*{opacity:0;animation:ui-fade-up var(--dur-slow) var(--ease-smooth) forwards}body:not([data-page=landing]) .main-content>:first-child{animation-delay:50ms}body:not([data-page=landing]) .main-content>:nth-child(2){animation-delay:.12s}body:not([data-page=landing]) .main-content>:nth-child(3){animation-delay:.19s}body:not([data-page=landing]) .main-content>:nth-child(4){animation-delay:.26s}body:not([data-page=landing]) .main-content>:nth-child(5){animation-delay:.33s}body:not([data-page=landing]) .main-content>:nth-child(6){animation-delay:.4s}.footer-column-center,.footer-column-left,.footer-column-right{font-size:var(--font-size-sm)}.footer-logo{font-weight:600;font-size:var(--font-size-lg);margin-bottom:4px}.footer-tagline{margin:0 0 4px}.footer-copy,.footer-requisites{margin:0;font-size:var(--font-size-xs);color:var(--color-text-muted)}.footer-requisites{margin-top:4px;max-width:280px;line-height:1.4}.footer-heading{margin:0 0 6px;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.footer-nav{display:flex;flex-direction:column;gap:4px}.footer-nav--authed-footer,html.app-user-authed .footer-nav--guest-footer{display:none}html.app-user-authed .footer-nav--authed-footer{display:flex}.footer-link--about-authed{display:none}html.app-user-authed .footer-link--about-authed{display:inline}.footer-nav--authed-footer .footer-user-dropdown-root{display:inline-flex;align-items:center;align-self:flex-start;margin:0}.footer-user-dropdown-toggle{padding:0;border:0;border-radius:0;background:0 0;color:var(--color-text-secondary);box-shadow:none}.footer-user-dropdown-toggle:hover{transform:none;background:0 0;color:var(--gold-primary);box-shadow:none}.footer-link{color:var(--color-text-secondary);text-decoration:none;font-size:var(--font-size-sm)}.footer-link:hover{color:var(--gold-primary);text-decoration:none;filter:drop-shadow(0 0 8px rgba(212, 175, 55, .55))}.footer-text{margin:0 0 4px}.footer-link-btn{padding:0;border:0;background:0 0;cursor:pointer;text-align:left;font:inherit}.footer-link-btn:hover{color:var(--gold-primary);text-decoration:none;filter:drop-shadow(0 0 8px rgba(212, 175, 55, .55))}.footer-legal{margin-top:8px;display:flex;flex-direction:column;gap:2px}.admin-notifications-page{max-width:760px}.admin-hub-page,.admin-tasks-duplicates-page,.admin-tasks-export-page,.admin-tasks-list-page,.admin-users-page{max-width:1100px}.admin-users-page{max-width:1200px}.admin-users-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.admin-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.admin-breadcrumb a{color:var(--gold-primary,#d4af37);text-decoration:none}.admin-breadcrumb a:hover{text-decoration:underline}.admin-breadcrumb-sep{opacity:.6}.admin-hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin-top:16px}.admin-hub-card{display:flex;flex-direction:column;gap:6px;padding:16px;border-radius:12px;border:1px solid var(--color-border);background:var(--color-bg-card);text-decoration:none;color:inherit;transition:border-color .15s,transform .15s;text-align:left;font:inherit;cursor:pointer}.admin-hub-card-action:disabled{opacity:.65;cursor:wait}.admin-hub-card:hover{border-color:var(--gold-primary,#d4af37);transform:translateY(-1px)}.admin-hub-card-secondary{opacity:.92}.admin-hub-card-title{font-weight:700;font-size:var(--font-size-md, 16px)}.admin-hub-card-desc{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.4}.admin-test-user-card{cursor:default}.admin-test-user-card:hover{transform:none}.admin-test-user-role-label{margin-top:4px;font-size:var(--font-size-xs);font-weight:500;color:var(--color-text-secondary)}.admin-test-user-role-select{width:100%;margin-top:4px}.admin-test-user-create-btn{margin-top:8px;width:100%}.admin-table-toolbar{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end;margin:12px 0}.admin-table-toolbar label{display:grid;gap:4px;font-size:var(--font-size-xs);color:var(--color-text-secondary)}.admin-table-toolbar select{min-width:140px;padding:8px 10px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-main)}.admin-table-toolbar input[type=number]{min-width:100px;padding:8px 10px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-main)}.admin-cell-actions{display:flex;flex-wrap:wrap;gap:8px;white-space:nowrap}.admin-cell-actions a{color:var(--gold-primary,#d4af37)}.admin-mark-correct-btn{padding:4px 10px;border-radius:6px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-main);font:inherit;cursor:pointer}.admin-mark-correct-btn:hover{border-color:var(--gold-primary,#d4af37);color:var(--gold-primary,#d4af37)}.admin-tasks-edit-page{max-width:900px}.admin-task-edit-image-wrap{margin-bottom:16px;padding:12px;border:1px solid var(--color-border);border-radius:12px;background:color-mix(in srgb,var(--color-border) 12%,transparent)}.admin-task-field-label{display:block;font-size:var(--font-size-sm);font-weight:600;margin-bottom:6px}.admin-task-edit-image-name{margin:0 0 10px;font-size:var(--font-size-xs);word-break:break-all}.admin-task-edit-image{display:block;max-width:100%;max-height:420px;width:auto;height:auto;border-radius:8px;border:1px solid var(--color-border)}.admin-table-status{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:8px 0}.admin-table-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:12px}.admin-data-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.admin-data-table td,.admin-data-table th{padding:10px 12px;border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top}.admin-data-table th{background:color-mix(in srgb,var(--color-border) 35%,transparent);font-weight:600;white-space:nowrap}.admin-data-table tbody tr:last-child td{border-bottom:none}.admin-cell-text{max-width:320px;word-break:break-word}.admin-row-zero-success{background:color-mix(in srgb,#ef4444 8%,transparent)}.admin-duplicates-list{display:grid;gap:24px;margin-top:8px}.admin-duplicates-empty{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.admin-duplicates-group-title{margin:0 0 12px;font-size:var(--font-size-md, 16px);font-weight:700;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.admin-duplicates-group-count{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary)}.admin-duplicates-cards{margin-top:4px}.admin-id-gaps-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:8px}.admin-id-gaps-toolbar .admin-export-field{flex:1 1 220px;margin:0}.admin-id-gaps-list{display:grid;gap:20px;margin-top:8px}.admin-id-gaps-empty{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.admin-id-gaps-group-title{margin:0 0 10px;font-size:var(--font-size-md, 16px);font-weight:700;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.admin-id-gaps-group-meta{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary)}.admin-id-gaps-missing{display:flex;flex-wrap:wrap;gap:8px}.admin-id-gaps-missing-link{font-size:var(--font-size-sm);font-family:var(--font-mono, ui-monospace, monospace);padding:4px 10px;border-radius:var(--radius-sm,6px);border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-danger) 6%,transparent);color:var(--color-danger);text-decoration:none}.admin-id-gaps-missing-link:hover{border-color:var(--color-danger)}.admin-id-gaps-divider{margin:28px 0 20px;border:0;border-top:1px solid var(--color-border)}.admin-id-renumber-report{margin:12px 0 0;padding:12px 14px;border-radius:var(--radius-sm,6px);border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-text) 3%,transparent);font-size:var(--font-size-xs);line-height:1.5;white-space:pre-wrap;overflow-x:auto}.admin-duplicate-meta{flex:1 1 100%;font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:1.4}.catalog-btn.admin-duplicate-delete{color:var(--color-danger);border-color:color-mix(in srgb,var(--color-danger) 35%,var(--color-border))}.catalog-btn.admin-duplicate-delete:hover:not(:disabled){border-color:var(--color-danger)}.admin-tasks-create-page,.admin-tasks-search-page{max-width:900px}.admin-task-search-form{display:grid;gap:12px;margin-top:10px}.admin-task-search-cards{margin-top:12px}.admin-task-search-empty{margin:0;color:var(--color-text-secondary)}.admin-task-create-form{display:grid;gap:14px;margin-top:10px}.admin-task-quick-block{padding-bottom:8px;margin-bottom:4px;border-bottom:1px dashed var(--color-border)}.admin-task-quick-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px}.admin-task-quick-hint{font-size:var(--font-size-xs);line-height:1.4;flex:1 1 220px}.admin-task-quick-hint code{font-size:.95em}.admin-task-quick-textarea{min-height:140px;font-family:ui-monospace,monospace;font-size:13px;line-height:1.45}.admin-task-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}@media (max-width:640px){.admin-task-grid{grid-template-columns:1fr}}.admin-task-field{display:grid;gap:6px;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.admin-task-field-block,.admin-task-field-wide{grid-column:1/-1}.admin-task-field input[type=number],.admin-task-field input[type=text],.admin-task-field textarea{width:100%;box-sizing:border-box;border:1px solid var(--color-border);border-radius:10px;padding:10px 12px;font-family:inherit;font-size:var(--font-size-sm);color:var(--color-text-main);background:var(--color-bg-card)}.admin-task-field textarea{resize:vertical;min-height:120px;line-height:1.45}.admin-task-checkbox-label{display:flex;align-items:flex-start;gap:8px;margin-top:8px;font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer}.admin-task-checkbox-label input{margin-top:2px}.admin-task-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.admin-task-preview-block{margin-top:10px;padding-top:12px;border-top:1px dashed var(--color-border);display:grid;gap:10px}.admin-task-preview-card-wrap{max-width:100%}.admin-task-preview-card-wrap .catalog-card{margin:0}.admin-task-preview-card-wrap .catalog-answer,.admin-task-preview-card-wrap .catalog-card-task-body{white-space:pre-wrap;word-break:break-word}.admin-task-solution-block{margin-top:10px;padding-top:12px;border-top:1px dashed var(--color-border);display:grid;gap:10px}.admin-inline-link{color:var(--gold-primary);text-decoration:underline;text-underline-offset:3px}.admin-inline-link:hover{opacity:.9}.admin-solutions-hint{border:1px solid var(--color-border);border-radius:8px;padding:10px 14px;background:var(--color-surface-secondary,rgba(255,255,255,.03))}.admin-solutions-hint summary{cursor:pointer;font-weight:600}.admin-solutions-hint-body{margin-top:10px;font-size:var(--font-size-sm)}.admin-solutions-hint-body ol{margin:8px 0 8px 1.2rem;padding:0}.admin-solutions-chart-notice{padding:10px 12px;border-radius:8px;border:1px solid var(--gold-primary,#d4af37);background:rgba(212,175,55,.08);font-size:var(--font-size-sm)}.admin-bank-badge--chart{border:1px solid var(--gold-primary,#d4af37);color:var(--gold-primary,#d4af37)}.admin-part1-missing-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}.admin-part1-missing-summary{margin:8px 0 16px}.admin-part1-missing-summary-card{display:flex;flex-wrap:wrap;gap:16px 24px;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.admin-part1-missing-highlight{color:var(--color-danger,#ef4444)}.admin-part1-missing-list{display:grid;gap:24px;margin-top:8px}.admin-part1-missing-empty{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.admin-part1-missing-group-title{margin:0 0 12px;font-size:var(--font-size-md, 16px);font-weight:700;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.admin-part1-missing-group-meta{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary)}.admin-videos-upload{display:grid;gap:12px;margin-bottom:20px;max-width:560px}.admin-videos-upload-progress{display:grid;gap:6px}.admin-videos-upload-progress-track{height:10px;border-radius:999px;background:rgba(156,163,175,.25);overflow:hidden}.admin-videos-upload-progress-fill{height:100%;width:0%;border-radius:999px;background:var(--color-primary,#2563eb);transition:width .15s linear}.admin-videos-upload-progress-meta{font-size:var(--font-size-sm);line-height:1.4}.admin-videos-status-block{display:grid;gap:4px;min-width:160px}.admin-videos-status-line{font-weight:600;font-size:var(--font-size-sm)}.admin-videos-status-meta{font-size:12px;color:var(--color-text-secondary);line-height:1.35}.admin-videos-row-progress-track{height:6px;border-radius:999px;background:rgba(156,163,175,.25);overflow:hidden}.admin-videos-row-progress-fill{height:100%;width:0%;border-radius:999px;background:var(--color-primary,#2563eb);transition:width .4s linear}.settings-page{max-width:760px}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-notify-form{display:grid;gap:8px}.admin-notify-targets{border:1px solid var(--color-border);border-radius:10px;padding:10px;display:grid;gap:6px}.admin-target-panel{margin-top:6px;border-top:1px dashed var(--color-border);padding-top:8px;display:grid;gap:8px}.admin-target-panel[hidden]{display:none!important}.admin-role-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px}.admin-role-check-item{display:inline-flex;align-items:center;gap:6px}.admin-user-search-results{border:1px solid var(--color-border);border-radius:10px;max-height:220px;overflow:auto;padding:6px;display:grid;gap:6px}.admin-user-search-item{width:100%;text-align:left;border:1px solid var(--color-border);background:0 0;border-radius:8px;padding:7px 8px;color:var(--color-text-main);cursor:pointer}.admin-user-search-item:hover{border-color:var(--gold-primary)}.admin-user-search-item.is-added{opacity:.6;cursor:default}.admin-selected-users-block{display:grid;gap:6px}.admin-selected-users{display:flex;flex-wrap:wrap;gap:6px}.admin-selected-user-chip{border:1px solid var(--color-border);background:rgba(212,175,55,.08);color:var(--color-text-main);border-radius:999px;padding:4px 10px;cursor:pointer}.admin-notify-actions{display:flex;align-items:center;gap:10px}table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}td,th{padding:8px 10px;border-bottom:1px solid var(--color-border)}th{text-align:left;font-weight:500;color:var(--color-text-secondary);background:rgba(255,255,255,.02)}tbody tr:nth-child(odd){background:rgba(255,255,255,.01)}tbody tr:nth-child(2n){background:rgba(255,255,255,.03)}.btn-gold{background:var(--gold-gradient);color:var(--text-on-gold);font-weight:700;box-shadow:0 4px 15px rgba(212,175,55,.3)}.btn-gold:hover{background:var(--gold-gradient);box-shadow:0 6px 20px rgba(212,175,55,.45);transform:translateY(-1px)}@media (max-width:768px){#auth-section{min-height:28px;flex:0 0 auto;flex-shrink:0;min-width:0}.card{width:100%;max-width:100%;box-sizing:border-box}.header-user-desktop{display:none!important}.header-guest-mobile,.header-user-mobile{display:block;width:100%;min-width:0}html.app-user-guest #about-link,html.app-user-guest #login-link,html.app-user-guest #registration-link{display:none!important}.header-user{flex-direction:row;align-items:center;justify-content:flex-end;gap:8px;width:auto;max-width:min(340px,72vw);flex-shrink:0}.header-coins{flex-shrink:0}.header-user-menu-toggle{display:flex;align-items:center;max-width:100%;padding:6px 10px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-card);color:var(--color-text-main);font-size:var(--font-size-xs);cursor:pointer;font-family:inherit;overflow:hidden}.header-user-display-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-check,.btn-gold,.catalog-btn,.danger-button,.header-user-admin,.header-user-logout,.header-user-name,.nav-btn,.nav-link,.primary-button,.secondary-button,.theme-toggle,button,input[type=submit]{min-height:44px;padding-top:10px;padding-bottom:10px;box-sizing:border-box}.header-guest-menu-toggle{display:flex;align-items:center;max-width:100%;padding:6px 10px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-card);color:var(--color-text-main);font-size:var(--font-size-xs);font-weight:600;cursor:pointer;font-family:inherit;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.header-guest-menu-toggle,.header-user-menu-toggle,.mobile-header-menu-btn{min-height:40px;padding-top:0;padding-bottom:0}.nav-link{justify-content:center}.footer-nav{width:100%}}.admin-export-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;margin-top:16px}.admin-export-card{display:flex;flex-direction:column;gap:10px;padding:16px;border-radius:12px;border:1px solid var(--color-border);background:var(--color-bg-card)}.admin-export-card-wide{grid-column:1/-1}.admin-export-card h3{margin:0;font-size:var(--font-size-md)}.admin-export-desc{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.45}.admin-export-field{display:flex;flex-direction:column;gap:6px;font-size:var(--font-size-sm)}.admin-export-field input,.admin-export-field select{padding:8px 10px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-bg-main);color:var(--color-text-main);font:inherit}.admin-export-actions{display:flex;flex-wrap:wrap;gap:8px}.admin-export-status{margin:0;min-height:1.2em;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.admin-export-status-error,.admin-export-status.is-error{color:#e57373}.admin-import-card textarea{width:100%;min-height:120px;padding:8px 10px;font-family:inherit;font-size:var(--font-size-sm);border:1px solid var(--color-border,#ccc);border-radius:6px;resize:vertical}.admin-import-report{margin:8px 0 0;padding:10px 12px;max-height:280px;overflow:auto;font-size:12px;line-height:1.45;white-space:pre-wrap;background:var(--color-bg-secondary,#f5f5f5);border-radius:6px}.admin-bank-review-page .admin-bank-upload{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--color-border,#e5e5e5)}.admin-bank-bulk-fields{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;align-items:flex-end}.admin-bank-bulk-checkbox{margin:0;max-width:28rem}.admin-bank-toolbar{position:sticky;top:0;z-index:5;margin-bottom:16px;padding:12px 14px;background:var(--color-bg,#fff);border:1px solid var(--color-border,#e5e5e5);border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.04)}.admin-bank-summary{margin-bottom:10px;font-size:14px;font-weight:600}.admin-bank-filters{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:flex-end}.admin-bank-filters label{display:flex;flex-direction:column;gap:4px;font-size:12px}.admin-bank-filters select,.admin-bank-search-label input{min-width:140px;padding:6px 8px;font-size:13px}.admin-bank-search-label input{min-width:120px}.admin-bank-render-progress{margin:10px 0 0;font-size:12px;color:var(--color-text-secondary,#666)}.admin-bank-cards{display:flex;flex-direction:column;gap:16px}.admin-bank-card{border:1px solid var(--color-border,#e5e5e5);border-radius:10px;padding:12px 14px 14px;background:var(--color-bg,#fff)}.admin-bank-card-header{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-bottom:10px}.admin-bank-card-id{font-weight:700;font-size:15px}.admin-bank-card-meta{font-size:12px;color:var(--color-text-secondary,#666)}.admin-bank-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;background:#eee}.admin-bank-badge--ok{background:rgba(16,185,129,.15);color:#047857}.admin-bank-badge--warn{background:rgba(245,158,11,.18);color:#b45309}.admin-bank-badge--missing{background:rgba(239,68,68,.12);color:#b91c1c}.admin-bank-editor{margin-top:12px;padding-top:12px;border-top:1px dashed var(--color-border,#ddd);display:flex;flex-direction:column;gap:10px}.admin-bank-editor label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600}.admin-bank-editor textarea{width:100%;font-family:inherit;font-size:13px;line-height:1.45;padding:8px 10px;border-radius:6px;border:1px solid var(--color-border,#ccc);resize:vertical}.admin-bank-editor-actions{display:flex;flex-wrap:wrap;gap:8px}.admin-bank-editor-status{margin:0;font-size:12px}.admin-bank-editor-status.is-error{color:#b91c1c}.guest-access-modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(0,0,0,.72);backdrop-filter:blur(3px);opacity:0;pointer-events:none;transform:translateY(6px);transition:opacity .22s,transform .22s;z-index:120}.guest-access-modal-open{opacity:1;pointer-events:auto;transform:translateY(0)}.guest-access-modal-dialog{position:relative;width:100%;max-width:440px;padding:28px 24px 24px;border-radius:16px;border:1px solid var(--color-border);background:var(--color-bg-secondary);box-shadow:0 20px 50px rgba(0,0,0,.65)}.guest-access-modal-close{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:999px;border:1px solid var(--color-border);background:rgba(0,0,0,.12);color:var(--color-text-main);cursor:pointer;font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center}.guest-access-modal-close:hover{background:rgba(0,0,0,.22)}.guest-access-modal-badge{margin:0 0 10px;font-size:var(--font-size-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--gold-primary)}.guest-access-modal-title{margin:0 0 10px;font-size:1.35rem;line-height:1.25;color:var(--color-text-main)}.guest-access-modal-text{margin:0 0 20px;font-size:var(--font-size-sm);line-height:1.55;color:var(--color-text-secondary)}.guest-access-modal-actions{display:flex;flex-wrap:wrap;gap:10px}.guest-access-modal-actions .primary-button,.guest-access-modal-actions .secondary-button{flex:1 1 140px;justify-content:center;text-align:center}body.guest-access-modal-active{overflow:hidden}.nav-item--guest-locked::after{content:"🔒";margin-left:6px;font-size:.72em;line-height:1;opacity:.82}.nav-link--path.nav-item--guest-locked::after{filter:grayscale(.2)}.nav-modes-item.nav-item--guest-locked{padding-right:14px}html.app-user-authed #parents-link{display:none!important}.task-text{font-size:var(--font-size-base);line-height:1.7;color:var(--color-text-main);white-space:pre-line}body[data-page=steroid_train] .task-content .task-image,body[data-page=trainer] .task-content .task-image{display:block;margin:20px auto;border-radius:10px;width:auto;height:auto;max-width:min(100%,36rem);max-height:min(48vh,22rem);object-fit:contain}body[data-page=steroid_train] .task-content .task-image--natural,body[data-page=trainer] .task-content .task-image--natural{max-width:none;max-height:none}body[data-page=steroid_train] .task-content .task-image--compact,body[data-page=trainer] .task-content .task-image--compact{max-width:min(100%,20rem);max-height:min(42vh,20rem)}.task-error-link{margin-left:8px;padding:4px 10px;border-radius:999px;border:1px solid rgba(212,175,55,.6);background:rgba(212,175,55,.12);color:var(--gold-primary);font-size:var(--font-size-xs);cursor:pointer;opacity:.5;transition:opacity .2s,background-color .2s,transform .1s,box-shadow .2s}.task-error-link:hover{opacity:.85;background:rgba(212,175,55,.22);box-shadow:0 2px 8px rgba(212,175,55,.35);transform:translateY(-1px)}[data-theme=light] .task-error-link{background:rgba(212,175,55,.18);color:#7a5c0d;opacity:.8}[data-theme=light] .task-error-link:hover{background:rgba(212,175,55,.26)}.answer-section{display:flex;flex-direction:column;gap:var(--space-sm);margin-top:var(--space-md)}.answer-row{display:flex;align-items:center;flex-wrap:wrap;gap:15px}.task-help-btn{white-space:normal;text-align:center;max-width:100%}.task-surrender-btn{font-weight:700;letter-spacing:.04em;text-transform:uppercase}.task-hint-banner{margin-top:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:10px;border:1px solid rgba(91,140,255,.45);background:rgba(91,140,255,.1);color:var(--color-text-main);font-size:var(--font-size-sm);line-height:1.45}.result-badge--surrender{display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px;padding:8px 12px;border-radius:10px;background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.45);color:var(--color-text-main);font-size:var(--font-size-sm)}.result-badge--surrender .result-badge-text-strong{color:#f87171}.surrender-answer-group{display:inline-flex;align-items:center;flex-wrap:nowrap;gap:6px;flex:0 0 auto;width:auto;max-width:100%}.surrender-answer-group #result-badge{min-width:0;width:auto;flex:0 0 auto;display:inline-flex}.answer-input-row{display:flex}.answer-input-row input{flex:1}.result-badge{min-width:120px;font-size:var(--font-size-sm)}.mjx-chtml{font-size:110%!important;color:var(--color-text-main)}mjx-container{display:inline-block!important;margin:0 2px!important;vertical-align:middle!important}.catalog-header{width:100%;margin-bottom:var(--space-md)}.catalog-subtitle{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.catalog-container{width:100%;max-width:900px}.catalog-seo-list{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.catalog-seo-list-items{list-style:none;margin:0;padding:0}.catalog-back-wrap{margin:0 0 4px}.catalog-back-link{font-size:var(--font-size-sm);color:var(--gold-primary);text-decoration:underline;text-underline-offset:3px}.catalog-coming-soon{margin-top:var(--space-lg);padding:var(--space-xl) var(--space-md);border:1px dashed var(--color-border);border-radius:12px;background:var(--color-bg-secondary);text-align:center}.catalog-coming-soon-text{margin:0;font-size:var(--font-size-lg);font-weight:600;letter-spacing:.06em;color:var(--color-text-secondary)}.catalog-coming-soon-subtitle{margin-top:var(--space-xs)}.catalog-list--13-hub,.catalog-list--theme-hub{padding-top:4px}.catalog-topic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.catalog-topic-grid.reveal-stagger>.catalog-topic-card,.catalog-topic-grid>.catalog-topic-card{opacity:0;animation:ui-fade-up var(--dur-slow) var(--ease-smooth) forwards}.catalog-topic-grid>.catalog-topic-card:first-child{animation-delay:40ms}.catalog-topic-grid>.catalog-topic-card:nth-child(2){animation-delay:80ms}.catalog-topic-grid>.catalog-topic-card:nth-child(3){animation-delay:.12s}.catalog-topic-grid>.catalog-topic-card:nth-child(4){animation-delay:.16s}.catalog-topic-grid>.catalog-topic-card:nth-child(5){animation-delay:.2s}.catalog-topic-grid>.catalog-topic-card:nth-child(6){animation-delay:.24s}.catalog-topic-grid>.catalog-topic-card:nth-child(n+7){animation-delay:.28s}.catalog-topic-card{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:6px;min-height:52px;padding:14px 16px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg-card);color:var(--color-text-main);text-decoration:none;transition:border-color var(--dur-base) ease,box-shadow var(--dur-base) ease,transform var(--dur-fast) var(--ease-smooth)}.catalog-topic-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gold-gradient);transform:scaleX(0);transform-origin:left;transition:transform var(--dur-base) var(--ease-smooth)}.catalog-topic-card:hover{border-color:var(--gold-primary);box-shadow:0 4px 14px rgba(212,175,55,.15);transform:translateY(-2px)}.catalog-topic-card:hover::before{transform:scaleX(1)}.catalog-topic-card-title{font-weight:600;font-size:var(--font-size-sm);line-height:1.35}.catalog-topic-card-count{font-size:12px;line-height:1.3;color:var(--color-text-secondary)}.catalog-card{margin-bottom:var(--space-md)}.catalog-card-text{font-size:var(--font-size-sm);color:var(--color-text-main)}.catalog-card-index{font-weight:700;margin-right:6px}.catalog-card-text .latex-seg-text{white-space:pre-wrap}.catalog-card-text .latex-svg-inline{height:1em}.catalog-card-text .catalog-card-task-body--svg{display:block;width:100%;max-width:100%;min-width:0}.catalog-card-text .latex-svg-page{display:block;margin:4px 0 0;max-width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;line-height:0}.catalog-card-text .latex-svg-img{display:block;width:auto;max-width:none;height:auto;max-height:min(75vh,28rem);filter:var(--latex-svg-img-filter);-webkit-filter:var(--latex-svg-img-filter)}.catalog-card-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:var(--space-sm)}.catalog-card-controls .task-draft-btn{flex-shrink:0}.catalog-btn{padding:6px 12px;border-radius:999px;border:none;font-size:var(--font-size-xs);cursor:pointer;font-weight:500}.catalog-btn.primary{background:var(--gold-gradient);color:var(--text-on-gold);font-weight:700;box-shadow:0 4px 15px rgba(212,175,55,.3)}.catalog-btn.ghost{background:var(--color-bg-secondary);color:var(--color-text-secondary);border:1px solid var(--color-border)}.catalog-btn-disabled{opacity:.45;cursor:default}.catalog-answer,.catalog-video-stub{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--space-xs)}.catalog-solution{max-width:100%;overflow-x:auto}.catalog-solution-block{margin-bottom:var(--space-sm)}.catalog-solution-block:last-child{margin-bottom:0}.catalog-solution-line{margin-bottom:.4rem}.catalog-solution-line:last-child{margin-bottom:0}.catalog-solution-plain{white-space:pre-wrap;word-break:break-word}.catalog-image{max-width:70%;max-height:260px;display:block;margin:8px 0 12px;border-radius:8px;object-fit:contain}.solution-sign-chart{margin:var(--space-sm) 0;color:var(--color-text-secondary)}.solution-sign-chart-img,.solution-sign-chart-inline svg{display:block;max-width:min(280px,100%);height:auto}.solution-sign-chart--missing .solution-sign-chart-img{display:none}.solution-sign-chart-fallback{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.solution-image-figure{margin:var(--space-sm) 0}.solution-image-img{max-width:70%;max-height:260px}.solution-image-figure--missing .solution-image-img{display:none}.solution-image-fallback{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.latex-svg-page{display:block;margin:4px 0;max-width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.latex-svg-img{display:block;width:auto;max-width:none;height:auto;max-height:min(75vh,28rem);filter:var(--latex-svg-img-filter);-webkit-filter:var(--latex-svg-img-filter)}.latex-seg-text{white-space:pre-wrap}.latex-svg-inline{display:inline;vertical-align:middle;height:1.15em;width:auto;filter:var(--latex-svg-img-filter);-webkit-filter:var(--latex-svg-img-filter)}.latex-svg-display{display:block;margin:8px 0;text-align:center;overflow-x:auto;-webkit-overflow-scrolling:touch}.latex-svg-display-img{display:inline-block;max-width:100%;height:auto;filter:var(--latex-svg-img-filter);-webkit-filter:var(--latex-svg-img-filter)}.auth-main{min-height:calc(100vh - 64px);display:flex;align-items:center;justify-content:center;padding:var(--space-lg)}.auth-card{background:var(--color-bg-card);border-radius:16px;border:1px solid var(--color-border);padding:var(--space-lg);box-shadow:var(--shadow-card);max-width:420px;width:100%}.auth-card h1{margin:0 0 var(--space-xs);font-size:var(--font-size-xl)}.auth-subtitle{margin:0 0 var(--space-md);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.auth-form{display:flex;flex-direction:column;gap:var(--space-sm)}.auth-smartcaptcha{margin:var(--space-sm) 0;min-height:102px}.auth-forgot-wrap{margin:calc(var(--space-sm) * -.5) 0 var(--space-xs);font-size:var(--font-size-sm)}.auth-label{font-size:var(--font-size-xs);font-weight:500;color:var(--color-text-secondary)}.auth-input{font-size:var(--font-size-base)}.auth-btn{width:100%;margin-top:var(--space-xs)}.auth-divider{display:flex;align-items:center;gap:var(--space-sm);margin:var(--space-md) 0 var(--space-sm);color:var(--color-text-muted);font-size:var(--font-size-xs)}.auth-divider::after,.auth-divider::before{content:"";flex:1;height:1px;background:var(--color-border)}.auth-social-buttons{display:flex;flex-direction:column;gap:10px;width:100%}.auth-yandex-button{display:flex;align-items:center;justify-content:center;width:100%;padding:12px 16px;border-radius:10px;font-weight:600;font-size:var(--font-size-sm);text-decoration:none;color:#fff;background:#fc3f1d;border:1px solid rgba(0,0,0,.08);transition:filter .2s,transform .15s}.auth-yandex-button:hover{filter:brightness(1.06);transform:translateY(-1px);color:#fff}.auth-vk-button{display:flex;align-items:center;justify-content:center;width:100%;padding:12px 16px;border-radius:10px;font-weight:600;font-size:var(--font-size-sm);text-decoration:none;color:#fff;background:#07f;border:1px solid rgba(255,255,255,.12);transition:filter .2s,transform .15s}.auth-optional-hint{font-weight:400;opacity:.75;font-size:.9em}.auth-vk-button:hover{filter:brightness(1.08);transform:translateY(-1px);color:#fff}.auth-role-fieldset{border:none;margin:0;padding:0;min-width:0;max-width:100%}.auth-role-fieldset legend{padding:0;margin-bottom:var(--space-xs);user-select:none;-webkit-user-select:none}.auth-role-options{display:grid;grid-template-columns:1fr;gap:10px;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.auth-role-option{display:flex;align-items:center;gap:8px;width:100%;max-width:100%;min-width:0;min-height:44px;padding:10px 12px;box-sizing:border-box;border:2px solid var(--color-border);border-radius:10px;background:0 0;cursor:pointer;overflow:hidden;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;transition:background-color .15s,border-color .15s}.auth-role-option span{min-width:0;line-height:1.25;overflow-wrap:anywhere;user-select:none;-webkit-user-select:none;pointer-events:none}.auth-role-option input[type=radio]{appearance:none;-webkit-appearance:none;width:16px;height:16px;min-width:16px;margin:0;padding:0;flex-shrink:0;border:2px solid var(--color-border);border-radius:50%;background:0 0;cursor:pointer;user-select:none;-webkit-user-select:none;outline:0;box-shadow:none;transition:border-color .15s,background-color .15s}.auth-role-option input[type=radio]::selection{background:0 0}.auth-role-option input[type=radio]:checked{border-color:var(--gold-primary);background-color:var(--gold-primary);box-shadow:inset 0 0 0 3px var(--color-bg-card)}.auth-role-option:has(input:checked){border-color:var(--gold-primary);background:rgba(212,175,55,.1)}.auth-role-option:has(input:focus-visible){outline:rgba(212,175,55,.45) solid 2px;outline-offset:2px}.auth-role-hint{margin:var(--space-xs) 0 0;font-size:var(--font-size-xs);color:var(--color-text-secondary);user-select:none;-webkit-user-select:none}.exam-mode-picker{width:100%;display:flex;justify-content:center;padding:var(--space-lg) 0}.exam-mode-card{max-width:520px;width:100%;text-align:center}.exam-mode-options{display:flex;flex-direction:column;gap:var(--space-sm);margin-top:var(--space-md)}.exam-mode-option{display:flex;flex-direction:column;align-items:center;gap:4px;width:100%;padding:16px 20px;border-radius:12px;border:1px solid var(--color-border);background:var(--color-bg-secondary);color:var(--color-text-primary);cursor:pointer;transition:border-color var(--dur-base) ease,background var(--dur-base) ease,transform var(--dur-base) ease}.exam-mode-option:hover{border-color:var(--color-accent);background:var(--color-bg-tertiary,var(--color-bg-secondary));transform:translateY(-1px)}.exam-mode-option-title{font-size:var(--font-size-lg);font-weight:600}.exam-mode-option-meta{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.exam-root{width:100%;display:flex;flex-direction:column;align-items:center;gap:var(--space-md)}.exam-top-bar{position:sticky;top:calc(var(--header-bar-height) + var(--safe-area-top));z-index:90;width:100%;max-width:900px;box-sizing:border-box;background:var(--color-bg-secondary);border-radius:999px;border:1px solid var(--color-border);padding:8px 16px;display:flex;align-items:center;justify-content:space-between}.exam-top-title{font-weight:600}.exam-top-right{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--font-size-sm)}.exam-timer-label{color:var(--color-text-secondary)}.exam-timer-value{font-family:var(--font-mono);font-weight:700;font-size:var(--font-size-sm);transition:color var(--dur-base) ease}.exam-timer-value.exam-timer--urgent{color:var(--color-danger);animation:1s ease-in-out infinite exam-timer-pulse}@keyframes exam-timer-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.05)}}.exam-card{width:100%;max-width:900px;box-sizing:border-box}.exam-task-card{background:var(--color-bg-secondary);border-radius:12px;padding:12px 14px}.exam-task-header{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;font-weight:600;margin-bottom:var(--space-xs)}.exam-task-header-title{font-weight:inherit}.exam-task-body{display:flex;flex-direction:column;gap:var(--space-sm)}.exam-task-image{max-width:80%;max-height:260px;margin:4px 0 8px;align-self:center;border-radius:8px;object-fit:contain;background:#000}.exam-answer-wrapper{display:flex;flex-direction:column;gap:4px}.exam-answer-label{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.exam-answer-input{font-size:var(--font-size-sm)}.exam-result{width:100%;padding:var(--space-lg) 0;display:flex;justify-content:center}.exam-result-card{width:100%;max-width:900px;margin:0 auto;text-align:center;box-sizing:border-box}.exam-result-text{margin:var(--space-sm) 0 var(--space-md);font-size:var(--font-size-lg)}.exam-breakdown{margin-top:var(--space-sm);text-align:left;width:100%;min-width:0}.exam-breakdown-title{margin:0 0 var(--space-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.exam-breakdown-list{display:flex;flex-direction:column;gap:var(--space-md)}.exam-breakdown-item{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:12px;padding:12px 14px;width:100%;min-width:0;box-sizing:border-box}.exam-breakdown-item-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);flex-wrap:wrap;margin-bottom:var(--space-xs);font-size:var(--font-size-sm)}.exam-breakdown-item-num{font-weight:600}.exam-breakdown-answers{display:flex;flex-direction:column;gap:8px;margin-bottom:var(--space-sm);font-size:var(--font-size-sm)}.exam-breakdown-answer-row{display:flex;flex-direction:column;align-items:stretch;gap:4px;min-width:0}.exam-breakdown-answer-label{color:var(--color-text-secondary)}.exam-breakdown-answer-value{width:100%;min-width:0;overflow-wrap:anywhere;word-break:break-word;white-space:normal}.exam-task-text.catalog-card-text{font-size:var(--font-size-sm)}.exam-breakdown-condition{font-size:var(--font-size-sm);width:100%;min-width:0;margin-bottom:var(--space-sm)}.exam-math-section{margin-top:var(--space-sm);text-align:left}.exam-math-section-label{margin:0 0 4px;font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.exam-math-section-body{font-size:var(--font-size-sm);width:100%;min-width:0}.exam-breakdown-correct{color:var(--color-success);font-weight:600}.exam-breakdown-wrong{color:var(--color-danger);font-weight:600}.exam-result-actions{margin-top:var(--space-md);display:flex;gap:var(--space-sm);justify-content:center;flex-wrap:wrap}.exam-self-check-list{display:flex;flex-direction:column;gap:var(--space-md);margin:var(--space-md) 0;text-align:left}.exam-self-check-item{display:flex;flex-direction:column;gap:var(--space-xs);padding:14px 16px;border-radius:12px;border:1px solid var(--color-border);background:var(--color-bg-secondary)}.exam-self-check-item-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);flex-wrap:wrap;margin-bottom:var(--space-xs);padding-bottom:var(--space-xs);border-bottom:1px solid var(--color-border)}.exam-self-check-item-label{font-weight:600;font-size:var(--font-size-sm)}.exam-self-check-item-meta{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.exam-self-check-select{min-width:72px;font-size:var(--font-size-sm)}.exam-self-check-actions{display:flex;justify-content:center}.exam-score-summary{margin:var(--space-md) 0;text-align:left}.exam-score-summary-title{margin:0 0 var(--space-sm);font-size:var(--font-size-md);font-weight:600;text-align:center}.exam-score-summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-sm);margin-bottom:var(--space-md)}.exam-score-stat{padding:12px 14px;border-radius:10px;border:1px solid var(--color-border);background:var(--color-bg-secondary);text-align:center}.exam-score-stat-value{display:block;font-size:var(--font-size-xl);font-weight:700;margin-top:4px}.exam-score-stat-label{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.exam-conversion-title{margin:0 0 var(--space-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.exam-conversion-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.exam-conversion-table td,.exam-conversion-table th{padding:6px 8px;border:1px solid var(--color-border);text-align:center}.exam-conversion-table th{background:var(--color-bg-secondary);font-weight:600}.exam-conversion-table tr.exam-conversion-row--active td{background:rgba(212,175,55,.15);font-weight:700}.exam-breakdown-self-score{color:var(--color-accent,var(--color-text-main));font-weight:600}.arena-hub-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-bottom:2rem}.arena-mode-card{display:flex;flex-direction:column;gap:.75rem;padding:1.25rem;border-radius:var(--radius-lg,12px);border:1px solid var(--border-subtle,rgba(255,255,255,.08));background:var(--card-bg,rgba(255,255,255,.03));overflow:hidden}.arena-mode-card-media{position:relative;display:flex;align-items:flex-end;justify-content:center;padding-bottom:1rem;margin:-1.25rem -1.25rem 0;border-radius:var(--radius-lg,12px) var(--radius-lg,12px) 0 0;overflow:hidden;aspect-ratio:1024/571;background:rgba(0,0,0,.25)}.arena-mode-card-media::after{content:"";position:absolute;inset:auto 0 0;height:42%;background:linear-gradient(to top,rgba(0,0,0,.72),transparent);pointer-events:none}.arena-mode-icon{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center top}.arena-mode-play-btn{position:relative;z-index:1;flex-shrink:0;min-width:8.5rem;box-shadow:0 4px 18px rgba(0,0,0,.45)}.arena-mode-card p{margin:0;color:var(--text-secondary,#9aa0a6);flex:1}.arena-leaderboard-section{margin-top:1rem}.arena-lb-tabs{display:flex;gap:.5rem;margin-bottom:.75rem}.arena-lb-tab{border:1px solid var(--border-subtle,rgba(255,255,255,.12));background:0 0;color:inherit;padding:.4rem .9rem;border-radius:999px;cursor:pointer}.arena-lb-tab.active{background:var(--accent,#f0b429);color:#111;border-color:transparent}.arena-season-hint{margin:0 0 .75rem;font-size:.9rem;color:var(--text-secondary,#9aa0a6)}.arena-leaderboard-list{list-style:none;margin:0;padding:0}.arena-leaderboard-item{display:grid;grid-template-columns:auto 1fr auto;gap:.5rem .75rem;align-items:center;padding:.55rem 0;border-bottom:1px solid var(--border-subtle,rgba(255,255,255,.06))}.arena-lb-place-group{display:inline-flex;align-items:center;gap:.4rem;min-width:4.5rem}.arena-lb-prize{display:inline-flex;align-items:center;gap:.15rem;font-size:.85rem;font-weight:600;color:var(--accent,#f0b429);white-space:nowrap}.arena-lb-prize .coin-icon-svg{width:14px;height:14px}.arena-prize-pool{margin:0 0 1.5rem;padding:1rem 1.1rem;border-radius:var(--radius-lg,12px);border:1px solid color-mix(in srgb,var(--accent,#f0b429) 35%,transparent);background:color-mix(in srgb,var(--accent,#f0b429) 6%,transparent)}.arena-prize-summary{margin:0 0 .75rem;color:var(--text-secondary,#9aa0a6);line-height:1.5}.arena-prize-toggle{margin-bottom:0}.arena-prize-panel{margin-top:.9rem}.arena-prize-panel[hidden]{display:none}.arena-prize-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(11rem,max-content))}.arena-prize-mode-title{margin:0 0 .45rem;font-size:.95rem}.arena-prize-table{list-style:none;margin:0;padding:0}.arena-prize-row{display:flex;align-items:center;gap:.35rem;padding:.25rem 0;font-size:.9rem;color:var(--text-secondary,#9aa0a6);white-space:nowrap}.arena-prize-rank{font-weight:700;opacity:.75}.arena-prize-sep{opacity:.45}.arena-prize-coins{display:inline-flex;align-items:center;gap:.2rem;font-weight:600;color:var(--accent,#f0b429)}.arena-prize-coins .coin-icon-svg{width:14px;height:14px}.arena-lb-rank{font-weight:700;opacity:.7}.arena-lb-value{font-weight:700;font-variant-numeric:tabular-nums}.arena-lb-value-label{font-weight:400;font-size:.8rem;opacity:.7}.arena-leaderboard-empty{color:var(--text-secondary,#9aa0a6)}.arena-hud{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;align-items:center;justify-content:space-between;padding:.75rem 1rem;margin-bottom:1rem;border-radius:var(--radius-lg,12px);border:1px solid var(--border-subtle,rgba(255,255,255,.1));background:var(--card-bg,rgba(255,255,255,.04))}.arena-hud-stat{display:flex;flex-direction:column;gap:.15rem;min-width:4.5rem}.arena-hud-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary,#9aa0a6)}.arena-hud-value{font-size:1.25rem;font-weight:700;font-variant-numeric:tabular-nums}.arena-hud-actions{margin-left:auto}.arena-result-stats{margin:1rem 0;padding-left:1.25rem}.arena-result-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.arena-new-record{color:var(--accent,#f0b429);font-weight:700}.arena-hud-stat--accent .arena-hud-value{color:var(--accent,#f0b429)}.arena-tutorial{margin-bottom:1.25rem;padding:1.25rem;border:1px solid var(--accent,#f0b429);background:color-mix(in srgb,var(--accent,#f0b429) 8%,transparent)}.arena-tutorial-title{margin:0 0 .75rem;font-size:1.2rem}.arena-tutorial-body p{margin:0 0 .5rem;color:var(--text-secondary,#9aa0a6);line-height:1.5}.arena-tutorial-body p:last-child{margin-bottom:1rem}.arena-my-stat{margin:0;font-size:.95rem;color:var(--text-secondary,#9aa0a6)}.arena-my-stat strong{color:var(--accent,#f0b429);font-variant-numeric:tabular-nums}.arena-mistake-review{margin:1.25rem 0;padding:1rem;border-radius:var(--radius-lg,12px);border:1px solid var(--border-subtle,rgba(255,255,255,.1));background:var(--card-bg,rgba(255,255,255,.03))}.arena-mistake-title{margin:0 0 .75rem;font-size:1.05rem}.arena-mistake-compare{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-bottom:1rem}.arena-mistake-label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary,#9aa0a6);margin-bottom:.25rem}.arena-mistake-value{margin:0;font-size:1.1rem;font-weight:600;word-break:break-word}.arena-mistake-user{color:#f97373}.arena-mistake-correct{color:#22c55e}.arena-mistake-no-solution{margin:0;color:var(--text-secondary,#9aa0a6)}.arena-mistake-host{margin-bottom:1rem}.arena-mistake-actions{margin-top:1rem}.arena-mistake-reviews-list{margin:1.25rem 0;display:flex;flex-direction:column;gap:1rem}.arena-mistake-list-title{margin:0 0 .25rem}.arena-mistake-review-item .arena-mistake-review{margin:0}.arena-speedrun-error-badge{font-size:.95rem;letter-spacing:.06em;animation:arena-speedrun-error-pop .45s var(--ease-smooth)}@keyframes arena-speedrun-error-pop{0%{opacity:0;transform:scale(.85)}55%{opacity:1;transform:scale(1.06)}100%{transform:scale(1)}}.arena-past-winners-section{margin-top:2rem}.arena-past-winners-grid{display:grid;gap:1rem}.arena-past-season{padding:1rem 1.25rem}.arena-past-season-title{margin:0 0 .75rem;font-size:1.05rem;text-transform:capitalize}.arena-past-mode+.arena-past-mode{margin-top:1rem}.arena-past-mode-title{margin:0 0 .35rem;font-size:.9rem;color:var(--text-secondary,#9aa0a6)}.arena-past-empty{margin:0;font-size:.9rem;color:var(--text-secondary,#9aa0a6)}.arena-past-winners-list .arena-leaderboard-item:last-child{border-bottom:none}.arena-intro-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem}.btn-check{position:relative;overflow:hidden;background:var(--gold-gradient);color:var(--text-on-gold);font-weight:700;border-radius:999px;border:none;padding:8px 16px;font-size:var(--font-size-sm);cursor:pointer;box-shadow:0 4px 15px rgba(212,175,55,.3);transition:background-color var(--dur-base) ease,box-shadow var(--dur-base) ease,transform var(--dur-fast) var(--ease-smooth)}.btn-check:focus-visible{outline:0;box-shadow:0 4px 15px rgba(212,175,55,.3),0 0 0 2px var(--color-bg-main),0 0 0 4px var(--gold-primary)}.btn-check:hover{box-shadow:0 6px 20px rgba(212,175,55,.45);transform:translateY(-1px)}.btn-check:active{transform:translateY(0) scale(.98)}#task-container.task-enter,.exam-task-card.task-enter{animation:ui-fade-up var(--dur-slow) var(--ease-smooth) both}.result-badge{min-height:32px;display:flex;align-items:center}.result-badge--error,.result-badge--success{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;font-size:var(--font-size-sm)}.result-badge--success{background:rgba(16,185,129,.16);color:#047857;border:1px solid rgba(5,150,105,.9);box-shadow:0 0 10px rgba(5,150,105,.25);animation:result-success-pulse .6s var(--ease-smooth)}@keyframes result-success-pulse{0%{transform:scale(.92);box-shadow:0 0 0 rgba(5,150,105,0)}50%{transform:scale(1.04);box-shadow:0 0 18px rgba(5,150,105,.45)}100%{transform:scale(1);box-shadow:0 0 10px rgba(5,150,105,.25)}}.result-badge--error{background:rgba(239,68,68,.16);color:#b91c1c;border:1px solid rgba(220,38,38,.9);box-shadow:0 0 8px rgba(220,38,38,.2)}.result-badge--manual{background:rgba(91,140,255,.14);color:var(--color-text-main);border:1px solid rgba(91,140,255,.45);max-width:100%}.light-mode .result-badge--manual{background:rgba(91,140,255,.1)}.light-mode .result-badge--success{background:rgba(16,185,129,.12);color:#065f46}.light-mode .result-badge--error{background:rgba(239,68,68,.12);color:#991b1b}.result-badge-icon{width:18px;height:18px}.result-badge-text-strong{font-weight:600}.result-badge-text-sub{display:block;font-size:var(--font-size-xs);opacity:.9}@keyframes slideUpFade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.result-badge-animated{animation:.3s ease-out slideUpFade}@keyframes answer-shake{0%,100%{transform:translateX(0)}20%{transform:translateX(-4px)}40%{transform:translateX(4px)}60%{transform:translateX(-3px)}80%{transform:translateX(3px)}}.answer-section-shake{animation:.4s answer-shake}.answer-section-shake .answer-input-row input,.answer-section-shake input[type=text]{box-shadow:0 0 0 2px rgba(220,38,38,.35);border-color:rgba(220,38,38,.7)}.difficulty-feedback{margin-top:var(--space-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary);opacity:1;transform:translateY(0);transition:opacity .3s,transform .3s}.difficulty-feedback-hidden{opacity:0;transform:translateY(-4px);pointer-events:none}.difficulty-label{margin-bottom:4px}.difficulty-buttons{display:inline-flex;gap:6px}.difficulty-btn{border:none;padding:6px 10px;border-radius:999px;font-size:var(--font-size-xs);cursor:pointer;transition:background-color .3s,transform .1s,box-shadow .2s}.difficulty-btn.diff-easy{background:#dcfce7}.difficulty-btn.diff-mid{background:#fef9c3}.difficulty-btn.diff-hard{background:#fee2e2}.difficulty-btn:hover{transform:translateY(-1px);box-shadow:0 2px 6px rgba(0,0,0,.3)}body.feedback-modal-active{overflow:hidden}.feedback-modal{position:fixed;inset:0;z-index:13020;display:flex;align-items:center;justify-content:center;padding:16px;padding-top:calc(16px + var(--safe-area-top,0px));padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));opacity:0;pointer-events:none;transition:opacity var(--dur-base) var(--ease-smooth)}.feedback-modal--open{opacity:1;pointer-events:auto}.feedback-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.feedback-modal-dialog{position:relative;width:min(480px,100%);max-height:min(90vh,640px);overflow:auto;margin:0;padding:24px 24px 20px;border:1px solid color-mix(in srgb,var(--gold-primary) 35%,var(--color-border));box-shadow:0 24px 48px rgba(0,0,0,.45),0 0 0 1px rgba(255,215,0,.08);animation:feedback-modal-in var(--dur-slow) var(--ease-smooth) both}@keyframes feedback-modal-in{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.feedback-modal-close{position:absolute;top:12px;right:12px;width:36px;height:36px;border:none;border-radius:999px;background:0 0;color:var(--color-text-secondary);font-size:24px;line-height:1;cursor:pointer;transition:background-color var(--dur-base) ease,color var(--dur-base) ease}.feedback-modal-close:hover{background:rgba(212,175,55,.14);color:var(--gold-primary)}.feedback-modal-head{text-align:center;margin-bottom:18px;padding-right:28px}.feedback-modal-icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;margin-bottom:10px;border-radius:16px;font-size:26px;background:rgba(212,175,55,.14);box-shadow:inset 0 0 0 1px rgba(212,175,55,.28)}.feedback-modal-title{margin:0 0 8px;font-size:var(--font-size-lg);line-height:1.25}.feedback-modal-lead{margin:0;font-size:var(--font-size-sm);line-height:1.5;color:var(--color-text-secondary)}.feedback-modal-form{display:grid;gap:14px}.feedback-modal-field{display:grid;gap:6px}.feedback-modal-label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-main)}.feedback-modal-field textarea{width:100%;min-height:132px;padding:12px 14px;border-radius:12px;border:1px solid var(--color-border);background:var(--color-bg-main);color:var(--color-text-main);font:inherit;font-size:var(--font-size-sm);line-height:1.45;resize:vertical;box-sizing:border-box;transition:border-color var(--dur-base) ease,box-shadow var(--dur-base) ease}.feedback-modal-field textarea::placeholder{color:var(--color-text-muted)}.feedback-modal-field textarea:focus{outline:0;border-color:color-mix(in srgb,var(--gold-primary) 55%,var(--color-border));box-shadow:0 0 0 3px rgba(212,175,55,.18)}.feedback-modal-error{margin:0;padding:10px 12px;border-radius:10px;font-size:var(--font-size-sm);line-height:1.4;color:#b91c1c;background:rgba(239,68,68,.12);border:1px solid rgba(220,38,38,.35)}.feedback-modal-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.feedback-modal-success{display:grid;justify-items:center;gap:14px;padding:8px 0 4px;text-align:center}.feedback-modal-success-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:999px;font-size:28px;font-weight:700;color:#047857;background:rgba(16,185,129,.16);border:1px solid rgba(5,150,105,.45);box-shadow:0 0 16px rgba(16,185,129,.2)}.feedback-modal-success-text{margin:0;max-width:32ch;font-size:var(--font-size-sm);line-height:1.5;color:var(--color-text-secondary)}@media (max-width:768px){.feedback-modal-dialog{padding:20px 16px 16px}.feedback-modal-actions{flex-direction:column-reverse}.feedback-modal-actions .primary-button,.feedback-modal-actions .secondary-button{width:100%;justify-content:center}}@media (prefers-reduced-motion:reduce){.feedback-modal-dialog{animation:none}}.profile-achievements-lead{max-width:52rem}.profile-achievement-board{display:flex;flex-direction:column;gap:var(--space-lg)}.profile-achievement-section-title{margin:0 0 var(--space-sm);font-size:var(--font-size-sm);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-secondary)}.profile-achievement-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--space-md)}.profile-achievement-card{position:relative;border-radius:12px;border:1px solid rgba(212,175,55,.45);background:radial-gradient(circle at top left,rgba(250,204,21,.12),transparent 55%),var(--color-bg-secondary);padding:12px 12px 10px;display:flex;flex-direction:column;gap:8px;min-height:118px;transition:transform .2s,box-shadow .2s,border-color .2s;cursor:default}.profile-achievement-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.45);border-color:rgba(250,204,21,.65)}.profile-achievement-card--locked{border-color:var(--color-border);border-style:dashed;background:var(--color-bg-secondary)}.profile-achievement-card--locked:hover{border-color:var(--color-border);box-shadow:none;transform:none}.profile-achievement-card-icon{width:48px;height:48px;border-radius:10px;border:2px solid rgba(212,175,55,.35);background:linear-gradient(145deg,#2a2218 0,#1a1510 100%);display:flex;align-items:center;justify-content:center;font-size:1.35rem;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(0,0,0,.45),0 2px 6px rgba(0,0,0,.25)}.profile-achievement-card-icon img{width:44px;height:44px;object-fit:cover;border-radius:6px;filter:saturate(1.1) brightness(1.06)}.profile-achievement-card--locked .profile-achievement-card-icon{border-color:var(--color-border);box-shadow:inset 0 0 0 1px rgba(0,0,0,.35)}.profile-achievement-card--locked .profile-achievement-card-icon img{filter:grayscale(.35) brightness(.78) saturate(.88)}.profile-achievement-card-name{font-size:var(--font-size-sm);font-weight:600;line-height:1.25;color:var(--color-text)}.profile-achievement-card-meta{margin-top:auto;font-size:var(--font-size-xs);color:var(--color-text-secondary)}.profile-achievement-progress-track{width:100%;height:6px;border-radius:999px;background:rgba(156,163,175,.2);overflow:hidden;margin-bottom:6px}.profile-achievement-progress-fill{height:100%;border-radius:inherit;background:var(--gold-gradient);transition:width .35s}.profile-achievement-progress-label{display:block;line-height:1.3}.profile-level-track{width:min(100%,16rem);background:rgba(156,163,175,.25);border-radius:999px;overflow:visible;height:10px;margin-bottom:4px}.profile-level-bar{width:0%;height:100%;border-radius:999px;background:var(--gold-gradient);box-shadow:0 4px 10px rgba(212,175,55,.35);position:relative;overflow:hidden;transition:width .8s cubic-bezier(.4, 0, .2, 1)}.profile-level-xp{font-size:.85rem}.profile-achievements-card{margin-top:var(--space-sm)}.video-modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.75);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .25s,transform .25s;z-index:110}.video-modal-open{opacity:1;pointer-events:auto;transform:translateY(0)}.video-modal-open .video-modal-dialog{animation:ui-scale-in var(--dur-base) var(--ease-smooth) both}.video-modal-dialog{position:relative;width:100%;max-width:960px;margin:0 24px;background:var(--color-bg-secondary);border-radius:16px;border:1px solid var(--color-border);box-shadow:0 20px 50px rgba(0,0,0,.75);padding:20px 20px 24px;display:flex;flex-direction:column;gap:12px}.video-modal-close{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:999px;border:1px solid var(--color-border);background:rgba(0,0,0,.15);color:var(--color-text-main);cursor:pointer;font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center;transition:background-color .15s,transform .1s,box-shadow .15s}.video-modal-close:hover{background:rgba(0,0,0,.3);transform:translateY(-1px);box-shadow:0 4px 10px rgba(0,0,0,.4)}.video-modal-body{margin-top:16px;display:flex;flex-direction:column;gap:8px}.video-modal-frame-wrapper{position:relative;width:100%;padding-top:56.25%;border-radius:10px;overflow:hidden;background:#000}.video-modal-iframe{position:absolute;inset:0;width:100%;height:100%;border:none}.video-modal-hosted{position:absolute;inset:0}.video-modal-player{position:absolute;inset:0;width:100%;height:100%;background:#000}.video-modal-watermark{position:absolute;right:12px;top:12px;z-index:2;pointer-events:none;color:rgba(255,255,255,.72);font-size:14px;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.85);max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-modal-auth-gate{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:rgba(0,0,0,.85);color:#fff;padding:24px;text-align:center;z-index:3}.video-modal-auth-gate[hidden]{display:none!important}.video-modal-controls{position:absolute;left:10px;right:10px;bottom:52px;z-index:4;display:flex;flex-wrap:wrap;gap:8px;align-items:center;pointer-events:none}.video-modal-controls[hidden]{display:none!important}.video-modal-control,.video-modal-pip-btn{pointer-events:auto}.video-modal-control{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:8px;background:rgba(0,0,0,.62);backdrop-filter:blur(4px);font-size:12px;color:rgba(255,255,255,.92)}.video-modal-control-label{opacity:.85;white-space:nowrap}.video-modal-control select{min-width:72px;max-width:110px;border:1px solid rgba(255,255,255,.22);border-radius:6px;background:rgba(20,20,20,.9);color:#fff;font:inherit;padding:2px 6px}.video-modal-pip-btn{margin-left:auto;padding:5px 10px;border-radius:8px;border:1px solid rgba(255,255,255,.22);background:rgba(0,0,0,.62);backdrop-filter:blur(4px);color:rgba(255,255,255,.92);font-size:12px;cursor:pointer}.video-modal-pip-btn:hover{background:rgba(0,0,0,.8)}.video-modal-pip-btn.is-active{border-color:rgba(110,200,255,.65);background:rgba(20,70,110,.85);color:#fff}.video-modal-pip-btn:disabled,.video-modal-pip-btn[hidden]{display:none}.video-modal-pip-status{flex:1 1 100%;margin:0;padding:4px 8px;border-radius:8px;background:rgba(0,0,0,.72);color:rgba(255,255,255,.92);font-size:12px;line-height:1.35;pointer-events:none}.video-modal-pip-status.is-error{color:#ffb4b4}.video-modal-disclaimer{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.video-modal-error{font-size:var(--font-size-sm);color:var(--color-danger)}@media (max-width:640px){.video-modal-controls{bottom:44px;gap:6px}.video-modal-control-label{display:none}.video-modal-pip-btn{margin-left:0}}@media (max-width:768px){.auth-main,.catalog-container,.catalog-header,.exam-root{width:100%;max-width:100%;box-sizing:border-box}.auth-main,.catalog-container{padding-left:var(--space-md);padding-right:var(--space-md)}.auth-card{max-width:100%}.answer-row{flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px}body[data-page=steroid_train] .answer-row .primary-button,body[data-page=trainer] .answer-row .primary-button{width:auto;flex:0 1 auto;min-height:36px;padding:6px 12px;font-size:var(--font-size-xs)}.exam-top-bar{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.catalog-card-controls{flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px}.catalog-card-controls .catalog-btn{width:auto;max-width:100%;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:34px;padding:4px 10px;font-size:.75rem;line-height:1.2}.catalog-card-controls a.catalog-btn{text-decoration:none}.exam-result-actions{flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px}.exam-result-actions .catalog-btn{width:auto;min-height:34px;padding:4px 10px;font-size:.75rem}.difficulty-buttons{flex-wrap:wrap;justify-content:center}.video-modal-close{min-width:44px;min-height:44px}body[data-page=trainer] #task-title{font-size:1.28rem;line-height:1.35}body[data-page=trainer] .task-content,body[data-page=trainer] .task-text{font-size:1.125rem;line-height:1.65}body[data-page=trainer] .mjx-chtml{font-size:1.12em!important}body[data-page=steroid_train] .task-content .task-image,body[data-page=trainer] .task-content .task-image{max-height:min(40vh,18rem)}body[data-page=steroid_train] .task-content .task-image--compact,body[data-page=trainer] .task-content .task-image--compact{max-width:min(100%,18rem);max-height:min(36vh,16rem)}}@media (max-width:640px){.video-modal-dialog{margin:0 8px;padding:12px 12px 16px}.video-modal-close{top:6px;right:6px}}.task-draft-btn{margin-left:6px;padding:4px 10px;border-radius:999px;border:1px solid rgba(96,165,250,.5);background:rgba(59,130,246,.15);color:#93c5fd;font-size:var(--font-size-sm);line-height:1;cursor:pointer;vertical-align:middle;transition:background-color .2s,transform .1s,box-shadow .2s}.task-draft-btn:hover{background:rgba(59,130,246,.28);box-shadow:0 2px 8px rgba(59,130,246,.35);transform:translateY(-1px)}[data-theme=light] .task-draft-btn{color:#1d4ed8;border-color:rgba(37,99,235,.45);background:rgba(191,219,254,.5)}.draft-modal{display:none;opacity:0;pointer-events:none;transition:opacity .2s}.draft-modal--overlay{position:fixed;inset:0;align-items:center;justify-content:center;padding:12px;background:rgba(0,0,0,.82);backdrop-filter:blur(3px);z-index:120}.draft-modal--docked{position:static;width:100%;max-width:100%;padding:0;margin-top:12px;background:0 0;backdrop-filter:none;z-index:auto}.draft-modal-open.draft-modal--overlay{display:flex;opacity:1;pointer-events:auto}.draft-modal-open.draft-modal--docked{display:block;opacity:1;pointer-events:auto}body.draft-modal-active{overflow:hidden}.draft-modal-dialog{display:flex;flex-direction:column;width:100%;max-width:min(1100px,100vw - 24px);max-height:min(92vh,900px);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:16px;box-shadow:0 24px 60px rgba(0,0,0,.65);overflow:hidden;overscroll-behavior:contain}.draft-modal--docked .draft-modal-dialog{max-width:100%;max-height:none;box-shadow:0 8px 28px rgba(0,0,0,.35)}.draft-modal-close{flex-shrink:0;width:32px;height:32px;margin-left:auto;border-radius:999px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-main);font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.draft-modal-close:hover{filter:brightness(1.08)}.draft-toolbar{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:10px 14px;border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary);flex-shrink:0;position:relative;z-index:12}.draft-canvas-scroll{flex:1 1 auto;min-height:0;overflow:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;outline:0}.draft-modal--scrollable .draft-canvas-scroll,html.board-fullscreen .draft-canvas-scroll{overflow:auto}.draft-modal--scrollable .draft-modal-dialog,html.board-fullscreen .draft-modal--docked .draft-modal-dialog{min-height:0;overflow:hidden;display:flex;flex-direction:column}.draft-modal--scrollable.draft-modal--docked.draft-modal-open{display:flex;flex-direction:column;max-height:min(85vh,920px)}.draft-modal--scrollable.draft-modal--docked .draft-modal-dialog{flex:1 1 auto;min-height:0;max-height:100%}html.board-fullscreen .draft-modal--docked.draft-modal-open{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;max-height:none;display:flex}html.board-fullscreen .draft-modal--docked .draft-modal-dialog{flex:1 1 auto}body[data-page=board] #board-page-card,body[data-page=session] #session-page-card,body[data-page=session] .session-tab-panel[data-session-panel=board]{display:flex;flex-direction:column;min-height:0}body[data-page=session] .session-tab-panels{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.draft-toolbar-top{display:flex;flex-direction:row;align-items:flex-start;gap:10px;width:100%}.draft-toolbar-top-body{flex:1;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}.draft-toolbar-bottom{display:flex;justify-content:flex-end;align-items:center;width:100%}.draft-toolbar-group{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.draft-toolbar-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-right:4px}.draft-tool-btn{box-sizing:border-box;min-width:40px;min-height:40px;padding:8px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-main);font-size:var(--font-size-xs);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.draft-tool-icon{width:22px;height:22px;display:block;flex-shrink:0}.draft-tool-btn.is-active{border-color:var(--gold-primary);background:rgba(212,175,55,.12);color:var(--gold-primary)}.draft-toolbar .draft-color-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.draft-color-anchor,.draft-color-wrap{position:relative}.draft-color-swatch-btn{width:32px;height:32px;padding:0;border-radius:8px;border:2px solid var(--color-border);cursor:pointer;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);flex-shrink:0}.draft-color-swatch-btn:hover{filter:brightness(1.12)}.draft-color-popover{position:absolute;top:100%;left:0;z-index:20;margin-top:6px;padding:8px;display:flex;flex-wrap:wrap;gap:8px;width:max-content;max-width:min(220px,85vw);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:10px;box-shadow:0 10px 28px rgba(0,0,0,.45)}.draft-color-popover[hidden]{display:none!important}.draft-color-option{width:28px;height:28px;padding:0;border-radius:6px;border:2px solid var(--color-border);cursor:pointer;flex-shrink:0}.draft-color-option:hover{filter:brightness(1.1);transform:scale(1.06)}.draft-color-custom{flex:1 1 100%;margin:0;font-size:var(--font-size-xs);padding:6px 10px}.draft-tool-icon-btn{padding:6px 10px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-main);font-size:var(--font-size-xs);cursor:pointer;flex-shrink:0}.draft-tool-icon-btn:hover:not(:disabled){filter:brightness(1.08)}.draft-tool-icon-btn:disabled{opacity:.4;cursor:not-allowed}.draft-clear-btn{font-size:var(--font-size-xs)}.draft-height-range,.draft-width-range{width:120px;vertical-align:middle}.draft-toolbar-pages{display:flex;flex-wrap:wrap;align-items:center;gap:6px;justify-content:flex-end}.draft-page-tabs{display:flex;flex-wrap:wrap;gap:6px}.draft-add-page-btn{min-width:32px;height:32px;padding:0 8px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-main);font-size:1.1rem;line-height:1;font-weight:600;cursor:pointer;flex-shrink:0}.draft-add-page-btn:hover:not(:disabled){border-color:var(--gold-primary);color:var(--gold-primary)}.draft-add-page-btn:disabled{opacity:.45;cursor:not-allowed}.draft-page-tab{min-width:32px;height:32px;padding:0 8px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-main);font-size:var(--font-size-xs);cursor:pointer}.draft-page-tab.is-active{border-color:var(--gold-primary);background:rgba(212,175,55,.15);color:var(--gold-primary);font-weight:600}.draft-canvas-wrap{position:relative;flex-shrink:0;width:min(100%,1100px);max-width:1100px;min-width:0;height:auto;min-height:0;margin:12px auto;border-radius:12px;overflow:hidden;border:1px solid #333;touch-action:none}.draft-modal--board:not(.draft-modal--scrollable) .draft-canvas-wrap,.draft-modal--scrollable .draft-canvas-wrap,html.board-fullscreen .draft-canvas-wrap{width:min(100%,1100px);max-width:1100px;margin:12px auto}.draft-modal--board:not(.draft-modal--scrollable) .draft-canvas-scroll,.draft-modal--board:not(.draft-modal--scrollable) .draft-canvas-wrap,.draft-modal--board:not(.draft-modal--scrollable) .draft-modal-dialog{overscroll-behavior:auto}.draft-modal--board:not(.draft-modal--scrollable) .draft-canvas-draw,.draft-modal--board:not(.draft-modal--scrollable) .draft-canvas-wrap{touch-action:pan-y pinch-zoom}.draft-modal--board.draft-modal--docked.draft-modal-open{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;max-height:none}body[data-page=session] .draft-modal--board.draft-modal--docked{margin-top:0}.draft-modal--board:not(.draft-modal--scrollable) .draft-canvas-scroll{flex:0 0 auto;height:auto;overflow:hidden}body[data-page=board] #board-stage:empty,body[data-page=session] #board-stage:empty{display:none;margin:0;padding:0;min-height:0}.draft-modal--board .draft-modal-dialog{min-height:0;overflow:hidden;display:flex;flex-direction:column;flex:0 0 auto}.draft-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.board-collab-cursors{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:4}.board-remote-cursor{position:absolute;transform:translate(-2px,-2px);transition:left 50ms linear,top 50ms linear,opacity .15s;pointer-events:none;z-index:5}.board-remote-cursor-dot{display:block;width:14px;height:14px;border-radius:50%;background:var(--cursor-color,#3b82f6);border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.45)}.board-remote-cursor-label{display:inline-block;margin-top:2px;margin-left:10px;padding:2px 8px;border-radius:999px;background:var(--cursor-color,#3b82f6);color:#fff;font-size:11px;line-height:1.3;white-space:nowrap;box-shadow:0 1px 4px rgba(0,0,0,.35)}.board-presence-bar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0;flex:1 1 auto;justify-content:center;min-width:0}.board-page-header{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.board-page-header h2{margin:0;flex:0 0 auto}.board-page-header .secondary-button{margin-left:auto;flex:0 0 auto}.board-presence-avatars{display:flex;flex-wrap:wrap;gap:6px}.board-presence-chip{display:inline-flex;align-items:center;gap:6px;min-width:32px;height:32px;padding:0 10px 0 4px;border-radius:999px;background:color-mix(in srgb,var(--chip-color,#3b82f6) 22%,transparent);border:2px solid var(--chip-color,#3b82f6);color:#fff;font-size:12px;font-weight:600;letter-spacing:.02em}.board-presence-chip-initials{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;background:color-mix(in srgb,var(--chip-color,#3b82f6) 55%,#000);font-size:11px;line-height:1}.board-presence-chip-name{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-presence-chip.is-self{box-shadow:0 0 0 2px rgba(255,255,255,.35)}.board-presence-count{font-size:var(--font-size-sm, 14px);opacity:.85}.board-voice-controls{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px;flex:0 0 auto}.board-voice-btn[hidden]{display:none!important}.board-voice-status{font-size:var(--font-size-sm, 14px);opacity:.9;max-width:min(360px,100%);color:#fbbf24;flex:1 1 180px;min-width:120px}.board-voice-hint{font-size:11px;opacity:.65;max-width:220px;line-height:1.3}.board-voice-hint code{font-size:10px}.board-presence-chip.in-voice{box-shadow:0 0 0 1px rgba(34,197,94,.45)}.board-presence-voice{margin-left:4px;font-size:11px;line-height:1}.board-status-text{font-size:var(--font-size-sm, 14px);opacity:.85}.board-error-text{color:#f87171}.board-invite-modal{position:fixed;inset:0;z-index:12000;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(0,0,0,.55)}.board-invite-modal[hidden]{display:none!important}.board-invite-dialog{width:min(420px,100%);max-height:min(80vh,520px);overflow:auto;display:grid;gap:10px;padding:16px;border-radius:12px;border:1px solid var(--color-border);background:var(--color-bg-card);box-shadow:0 12px 40px rgba(0,0,0,.35)}.board-invite-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.board-invite-head h3{margin:0;font-size:1.05rem}.board-invite-close{border:0;background:0 0;color:var(--color-text-secondary);font-size:1.5rem;line-height:1;cursor:pointer;padding:0 4px}.board-invite-close:hover{color:var(--gold-primary)}.board-invite-status{font-size:var(--font-size-sm, 14px);min-height:1.2em}.board-invite-status.is-error{color:#f87171}.board-fullscreen-btn{display:inline-flex;align-items:center;gap:6px}.board-fullscreen-btn-icon{font-size:1.05rem;line-height:1}.board-exit-fullscreen-btn{display:none;position:fixed;top:calc(env(safe-area-inset-top,0px) + 10px);right:calc(env(safe-area-inset-right,0px) + 10px);z-index:220;width:40px;height:40px;border-radius:999px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-main);font-size:20px;line-height:1;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.45);align-items:center;justify-content:center}.board-exit-fullscreen-btn:hover{filter:brightness(1.08)}html.board-fullscreen{height:100%;overflow:hidden}html.board-fullscreen body{overflow:hidden;min-height:100dvh;height:100dvh;padding-top:env(safe-area-inset-top,0)}html.board-fullscreen #board-status,html.board-fullscreen .board-page-header,html.board-fullscreen .main-header,html.board-fullscreen .site-footer,html.board-fullscreen .xp-bar-root{display:none!important}html.board-fullscreen .main-wrapper{display:block;min-height:100dvh;height:100dvh;padding:0;margin:0;max-width:none}html.board-fullscreen .main-content{gap:0;min-height:100dvh;height:100dvh}html.board-fullscreen #board-page-card{margin:0;padding:0;border:none;border-radius:0;box-shadow:none;min-height:100dvh;height:100dvh;max-height:100dvh;display:flex;flex-direction:column;background:var(--color-bg-main)}html.board-fullscreen #board-page-card::before{display:none}html.board-fullscreen #board-stage{display:none;flex:0 0 auto;min-height:0;overflow:hidden;margin:0;padding:0}html.board-fullscreen .draft-modal--docked{margin:0;flex:1 1 auto;min-height:0;display:flex;flex-direction:column}html.board-fullscreen .draft-modal--docked .draft-modal-dialog{flex:1 1 auto;min-height:0;max-height:none;height:100%;max-width:100vw;width:100%;border-radius:0;border:none;box-shadow:none;display:flex;flex-direction:column}html.board-fullscreen .draft-canvas-wrap{width:min(100%,1100px);max-width:1100px;margin:12px auto;flex:0 0 auto;min-height:0}html.board-fullscreen .draft-canvas-scroll{flex:1 1 auto;min-height:0}html.board-fullscreen .board-exit-fullscreen-btn{display:inline-flex}.draft-canvas-draw{cursor:crosshair;touch-action:none}@media (max-width:768px){.draft-modal--docked .draft-modal-dialog{max-height:none;overflow:hidden}.draft-toolbar{gap:4px;padding:6px 8px}.draft-toolbar-top{align-items:center;gap:6px}.draft-toolbar-top-body{flex-wrap:nowrap;align-items:center;gap:6px;overflow-x:auto;overflow-y:hidden;padding-bottom:2px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.draft-toolbar-top-body::-webkit-scrollbar{display:none}.draft-toolbar-group{flex:0 0 auto;flex-wrap:nowrap;gap:5px}.draft-toolbar-label{display:none}.draft-tool-btn{min-width:36px;min-height:36px;padding:7px}.draft-tool-icon{width:20px;height:20px}.draft-tool-icon-btn{padding:6px 8px}.draft-clear-btn{max-width:32px;overflow:hidden;white-space:nowrap}.draft-width-range{width:86px}.draft-toolbar-bottom{justify-content:flex-start;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch}.draft-toolbar-bottom::-webkit-scrollbar{display:none}.draft-page-tabs,.draft-toolbar-pages{flex-wrap:nowrap}.draft-canvas-wrap{width:min(100%,1100px);max-width:calc(100vw - 16px);height:auto;margin:6px auto;border-left:0;border-right:0;border-radius:0}.draft-modal--board:not(.draft-modal--scrollable) .draft-canvas-wrap,.draft-modal--scrollable .draft-canvas-wrap,html.board-fullscreen .draft-canvas-wrap{width:min(100%,1100px);max-width:calc(100vw - 16px);margin:6px auto}.board-fullscreen-btn-label{display:none}}.draft-shape-anchor{position:relative;display:inline-flex}.draft-shape-popover,.draft-shape-prism-popover,.draft-shape-pyramid-popover,.draft-shape-round-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:30;display:grid;grid-template-columns:repeat(2,minmax(118px,1fr));gap:4px;min-width:260px;max-height:min(320px,50vh);overflow-y:auto;padding:8px;border-radius:10px;background:#1f2937;border:1px solid #374151;box-shadow:0 8px 24px rgba(0,0,0,.35)}.draft-shape-round-popover{grid-template-columns:1fr;min-width:180px}.draft-shape-popover[hidden],.draft-shape-prism-popover[hidden],.draft-shape-pyramid-popover[hidden],.draft-shape-round-popover[hidden]{display:none!important}.draft-shape-option{padding:6px 8px;border:1px solid transparent;border-radius:6px;background:#111827;color:#e5e7eb;font-size:12px;text-align:left;cursor:pointer}.draft-shape-option.is-active,.draft-shape-option:hover{border-color:#60a5fa;background:#1e3a5f}.board-laser-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:6}.board-collab-laser{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:6}.board-laser-dot{position:absolute;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:var(--laser-color,#ef4444);box-shadow:0 0 12px var(--laser-color,#ef4444);transition:opacity .12s;pointer-events:none}.board-laser-trail{position:absolute;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:var(--laser-color,#ef4444);opacity:.55;animation:.6s ease-out forwards board-laser-fade;pointer-events:none}@keyframes board-laser-fade{from{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(.35)}}.session-follow-btn{position:fixed;top:calc(env(safe-area-inset-top,0px) + 10px);right:calc(env(safe-area-inset-right,0px) + 10px);z-index:220;max-width:min(168px,calc(100vw - 80px));padding:8px 12px;font-size:13px;line-height:1.2;box-shadow:0 8px 24px rgba(0,0,0,.35)}html.board-fullscreen .session-follow-btn,html.session-canvas-fullscreen .session-follow-btn{right:calc(env(safe-area-inset-right,0px) + 58px)}.session-follow-btn[hidden]{display:none!important}.session-follow-btn.is-active{background:#1d4ed8;color:#fff;border-color:#2563eb}.session-page-header{flex-wrap:wrap;gap:.5rem .75rem}.session-tabs{display:flex;flex-wrap:wrap;gap:.35rem;margin:.75rem 0 .5rem;padding-bottom:.35rem;border-bottom:1px solid var(--border-color,rgba(255,255,255,.12))}.session-tab{appearance:none;border:1px solid transparent;border-radius:.5rem;background:0 0;color:inherit;cursor:pointer;font:inherit;padding:.45rem .85rem;opacity:.75}.session-tab.is-active,.session-tab[aria-selected=true]{opacity:1;border-color:var(--border-color,rgba(255,255,255,.18));background:rgba(255,255,255,.06)}.session-status-text{margin:.35rem 0 .75rem;font-size:.92rem;opacity:.85}.session-tab-panel{min-height:12rem}#draft-canvas-modal.session-canvas-hidden,.session-tab-panel[hidden]{display:none!important}.session-board-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.session-presentation-stub{padding:1.25rem .5rem;max-width:42rem}.session-presentation-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.5rem}.session-presentation-page-indicator{min-width:4.5rem;text-align:center;font-size:.95rem;opacity:.9}.presentation-status-text{margin:0 0 .5rem;font-size:.92rem;opacity:.85;min-height:1.25rem}.session-presentation-empty{padding:1.25rem .5rem;max-width:42rem}.session-presentation-empty h3{margin:0 0 .75rem}.session-presentation-stage-wrap{margin-top:0}.session-presentation-stage{min-height:0}body[data-page=session] #presentation-stage:empty{display:none;margin:0;padding:0;min-height:0}body[data-page=session] #presentation-stage+.draft-modal--docked{margin-top:0}.draft-modal--presentation:not(.draft-modal--scrollable) .draft-canvas-wrap{margin-top:0;margin-bottom:0}.draft-modal--presentation .draft-modal-dialog{border-radius:12px}html.session-canvas-fullscreen{height:100%;overflow:hidden}html.session-canvas-fullscreen body{overflow:hidden;min-height:100dvh;height:100dvh;padding-top:env(safe-area-inset-top,0)}html.session-canvas-fullscreen #session-status,html.session-canvas-fullscreen .main-header,html.session-canvas-fullscreen .session-page-header,html.session-canvas-fullscreen .session-tabs,html.session-canvas-fullscreen .site-footer,html.session-canvas-fullscreen .xp-bar-root{display:none!important}html.session-canvas-fullscreen .main-wrapper{display:block;min-height:100dvh;height:100dvh;padding:0;margin:0;max-width:none}html.session-canvas-fullscreen .main-content{gap:0;min-height:100dvh;height:100dvh}html.session-canvas-fullscreen #session-page-card{margin:0;padding:.5rem .75rem .75rem;border:none;border-radius:0;box-shadow:none;min-height:100dvh;height:100dvh;max-height:100dvh;display:flex;flex-direction:column;background:var(--color-bg-main)}html.session-canvas-fullscreen #session-page-card::before{display:none}html.session-canvas-fullscreen .session-tab-panel{min-height:0;flex:1 1 auto;display:flex;flex-direction:column}html.session-canvas-fullscreen .session-tab-panel[hidden],html.session-canvas-fullscreen--board .session-tab-panel:not([data-session-panel=board]),html.session-canvas-fullscreen--presentation .session-tab-panel:not([data-session-panel=presentation]){display:none!important}html.session-canvas-fullscreen--board .session-board-toolbar,html.session-canvas-fullscreen--presentation .session-presentation-toolbar{flex-shrink:0}html.session-canvas-fullscreen--presentation .session-presentation-stage-wrap{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}html.session-canvas-fullscreen--presentation #presentation-stage{flex:1 1 auto;min-height:0}html.session-canvas-fullscreen .draft-modal--docked{margin:0;flex:1 1 auto;min-height:0;display:flex;flex-direction:column}html.session-canvas-fullscreen .draft-modal--docked.draft-modal-open{display:flex}html.session-canvas-fullscreen .draft-modal--docked .draft-modal-dialog{flex:1 1 auto;min-height:0;max-height:none;height:100%;max-width:100vw;width:100%;border-radius:0;border:none;box-shadow:none;display:flex;flex-direction:column}html.session-canvas-fullscreen .draft-canvas-scroll{flex:1 1 auto;min-height:0}html.session-canvas-fullscreen .board-exit-fullscreen-btn,html.session-canvas-fullscreen .board-exit-fullscreen-btn.board-exit-fullscreen-btn,html.session-canvas-fullscreen .presentation-exit-fullscreen-btn{display:inline-flex}body[data-page=session] .draft-modal--session-docked .draft-height-group,body[data-page=session] .draft-modal--session-docked .draft-modal-close{display:none!important}.draft-modal--presentation .draft-canvas-grid,.draft-modal--presentation.draft-modal--board .draft-canvas-wrap{background:#f8fafc}.draft-modal--presentation .draft-add-page-btn,.draft-modal--presentation .draft-tool-image{display:none!important}.session-presentation-hint{opacity:.8;font-size:.95rem}.session-voice-panel{padding:1rem .25rem;max-width:40rem}.session-voice-intro{margin:0 0 1rem}.session-voice-controls{flex-direction:column;align-items:flex-start}.session-error-text{color:#f87171;margin-top:.75rem}.session-invite-user{display:flex;flex-direction:column;align-items:flex-start;width:100%;text-align:left;margin-bottom:.35rem}.session-invite-empty{opacity:.75;margin:.5rem 0}.voice-settings{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--color-border);display:grid;gap:.85rem;max-width:28rem}.voice-settings-title{margin:0 0 .25rem;font-size:1.05rem}.voice-settings-subtitle{margin:0 0 .35rem;font-size:.95rem;opacity:.9}.voice-settings-section{display:grid;gap:.65rem;margin-top:.25rem}.voice-settings-subsection{display:grid;gap:.65rem;padding:.65rem .75rem;border:1px solid var(--color-border);border-radius:8px;background:color-mix(in srgb,var(--color-bg) 92%,var(--color-accent) 8%)}#voice-client-nc-hint[hidden],#voice-server-nc-controls[hidden],#voice-server-nc-status[hidden]{display:none!important}.voice-settings-section--test{margin-top:.5rem}.voice-settings-row{display:grid;gap:.35rem}.voice-settings-row--toggle{grid-template-columns:1fr auto;align-items:center;gap:.75rem}.voice-settings-row--slider{gap:.45rem}.voice-settings-row--actions{margin-top:-.25rem}.voice-settings-label{font-size:var(--font-size-sm, 14px);opacity:.92}.voice-settings-select{width:100%}.voice-settings-refresh{width:auto;font-size:var(--font-size-sm, 14px)}.voice-settings-slider-wrap{display:flex;align-items:center;gap:.75rem}.voice-settings-slider{flex:1 1 auto;width:auto;min-width:0;padding:0;height:6px;border:none;border-radius:999px;background:var(--color-border);accent-color:var(--color-accent);cursor:pointer}.voice-settings-slider-value{flex:0 0 3rem;text-align:right;font-size:var(--font-size-sm, 14px);font-variant-numeric:tabular-nums;opacity:.85}.voice-settings-toggle{min-width:4.5rem;font-size:var(--font-size-sm, 14px)}.voice-settings-toggle--on{border-color:rgba(34,197,94,.55);background:rgba(34,197,94,.12)}.voice-settings-test-btn{width:auto}.voice-settings-meter{height:8px;border-radius:999px;background:var(--color-border);overflow:hidden}.voice-settings-meter-fill{height:100%;width:0%;border-radius:inherit;background:linear-gradient(90deg,#22c55e,#84cc16);transition:width 60ms linear}.voice-settings-meter-fill--hot{background:linear-gradient(90deg,#f59e0b,#ef4444)}.voice-settings-meter-fill--speech{background:linear-gradient(90deg,#38bdf8,#22c55e)}.voice-settings-hint{margin:.35rem 0 0;font-size:var(--font-size-sm, 14px);line-height:1.4}.voice-processing-status{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.45rem}.voice-processing-status__item{padding:.25rem .5rem;border:1px solid var(--color-border);border-radius:999px;font-size:12px;line-height:1.2;opacity:.8}.voice-processing-status__item--active{border-color:rgba(34,197,94,.55);background:rgba(34,197,94,.12);opacity:1}.voice-processing-status__item--triggered{border-color:rgba(245,158,11,.65);background:rgba(245,158,11,.16);opacity:1}.voice-settings-gate-wrap{display:grid;gap:.45rem}.voice-settings-meter--gate{position:relative}.voice-settings-gate-threshold{position:absolute;top:0;bottom:0;left:0;width:2px;margin-left:-1px;border-radius:1px;background:var(--color-accent,#6366f1);box-shadow:0 0 0 1px rgba(0,0,0,.15);pointer-events:none;z-index:1;transition:left 60ms linear}@keyframes ui-fade-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes ui-fade-in{from{opacity:0}to{opacity:1}}@keyframes ui-pop-in{0%{opacity:0;transform:scale(.82)}70%{transform:scale(1.06)}100%{opacity:1;transform:scale(1)}}@keyframes ui-scale-in{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes ui-sheen{0%,100%{transform:translateX(-130%) skewX(-18deg)}50%{transform:translateX(130%) skewX(-18deg)}}.reveal-stagger>*,.reveal-up{opacity:0;animation:ui-fade-up var(--dur-slow) var(--ease-smooth) forwards}.reveal-stagger>:first-child{animation-delay:40ms}.reveal-stagger>:nth-child(2){animation-delay:.1s}.reveal-stagger>:nth-child(3){animation-delay:.16s}.reveal-stagger>:nth-child(4){animation-delay:.22s}.reveal-stagger>:nth-child(5){animation-delay:.28s}.reveal-stagger>:nth-child(6){animation-delay:.34s}.reveal-stagger>:nth-child(7){animation-delay:.4s}.reveal-stagger>:nth-child(8){animation-delay:.46s}.xp-bar-root{position:fixed;top:calc(var(--header-bar-height) + var(--safe-area-top));left:0;right:0;z-index:95;display:flex;justify-content:center;pointer-events:none}.xp-bar-inner{max-width:1200px;width:100%;padding:6px var(--space-lg) 0;position:relative}.xp-bar-text{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:2px}.xp-boosts-tooltip{position:absolute;left:50%;top:calc(100% + 6px);z-index:5;min-width:210px;max-width:min(360px,85vw);padding:8px 10px;border-radius:10px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-main);box-shadow:var(--shadow-card);opacity:0;transform:translate(-50%,-3px);pointer-events:none;transition:opacity .15s,transform .15s;white-space:normal}.xp-boost-hover-target{position:relative}.xp-boost-hover-target:focus-within .xp-boosts-tooltip,.xp-boost-hover-target:hover .xp-boosts-tooltip{opacity:1;transform:translate(-50%,0)}.xp-boosts-tooltip-list{margin:0;padding-left:1rem}.xp-bar-track{width:100%;height:8px;border-radius:999px;background:rgba(156,163,175,.25);overflow:visible;pointer-events:auto}.xp-bar-fill{width:0%;height:100%;border-radius:999px;background:var(--gold-gradient);box-shadow:0 4px 15px rgba(212,175,55,.3);position:relative;overflow:hidden;transition:width .8s cubic-bezier(.4, 0, .2, 1),filter .3s,box-shadow .3s}.xp-bar-fill::before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(110deg,rgba(255,255,255,0) 22%,rgba(255,255,255,.28) 50%,rgba(255,255,255,0) 78%);transform:translateX(-130%);animation:3.5s linear infinite xp-bar-idle-sheen;pointer-events:none}@keyframes xp-bar-idle-sheen{0%{transform:translateX(-130%)}100%{transform:translateX(130%)}}.xp-bar-fill::after{content:"";position:absolute;top:50%;right:0;transform:translate(50%,-50%);width:14px;height:14px;border-radius:999px;background:var(--gold-primary);box-shadow:0 0 0 2px rgba(15,23,42,.9),0 0 12px rgba(250,204,21,.8)}.xp-bar-fill.xp-bar-highlight{filter:brightness(1.4)}.xp-fill-boosted{filter:saturate(1.2) brightness(1.08);box-shadow:0 4px 15px rgba(212,175,55,.45),0 0 20px rgba(250,204,21,.38);animation:1.8s ease-in-out infinite xp-boost-glow}.xp-fill-boosted::before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(110deg,rgba(255,255,255,0) 22%,rgba(255,255,255,.42) 50%,rgba(255,255,255,0) 78%);transform:translateX(-130%);animation:2.2s linear infinite xp-boost-sheen;pointer-events:none}.xp-bar-fill.xp-bar-no-transition{transition:none}@keyframes xp-boost-glow{0%,100%{filter:saturate(1.18) brightness(1.06)}50%{filter:saturate(1.32) brightness(1.22)}}@keyframes xp-boost-sheen{0%{transform:translateX(-130%)}100%{transform:translateX(130%)}}.dashboard{display:flex;flex-direction:column;gap:var(--space-lg)}.dashboard-hero{display:flex;justify-content:space-between;align-items:stretch;background:radial-gradient(circle at top left,rgba(250,204,21,.18),transparent 55%),radial-gradient(circle at bottom right,rgba(56,189,248,.18),transparent 55%);border-radius:16px;padding:20px 24px;border:1px solid var(--color-border);opacity:0;animation:ui-fade-up var(--dur-slow) var(--ease-smooth) 50ms forwards}.dashboard-main>.dashboard-card,.dashboard-quests .dashboard-quest-card{opacity:0;animation:ui-fade-up var(--dur-slow) var(--ease-smooth) forwards}.dashboard-main>.dashboard-card:first-child{animation-delay:.12s}.dashboard-main>.dashboard-card:nth-child(2){animation-delay:.2s}.dashboard-quests .dashboard-quest-card:first-child{animation-delay:.15s}.dashboard-quests .dashboard-quest-card:nth-child(2){animation-delay:.22s}.dashboard-quests .dashboard-quest-card:nth-child(3){animation-delay:.29s}.dashboard-quests .dashboard-quest-card:nth-child(4){animation-delay:.36s}.dashboard-quests .dashboard-quest-card:nth-child(n+5){animation-delay:.4s}.dashboard-level-value.level-pop,.xp-bar-text.level-pop{animation:ui-pop-in var(--dur-base) var(--ease-spring)}.dashboard-hero-text{max-width:640px}.dashboard-hero-greeting{margin:0 0 4px;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.dashboard-hero-title{margin:0 0 4px;font-size:28px}.dashboard-hero-subtitle{margin:0 0 12px;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.dashboard-level-card{margin-top:8px}.dashboard-level-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.dashboard-level-label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.dashboard-level-value{font-size:var(--font-size-lg);font-weight:700}.dashboard-xp-bar{width:100%;height:16px;border-radius:999px;background:rgba(15,23,42,.95);overflow:visible;box-shadow:0 0 0 1px rgba(148,163,184,.25),0 8px 24px rgba(0,0,0,.6)}.dashboard-xp-bar-fill{width:0%;height:100%;border-radius:inherit;background:var(--gold-gradient);box-shadow:0 4px 15px rgba(212,175,55,.3);position:relative;overflow:hidden;transition:width .8s cubic-bezier(.4, 0, .2, 1),box-shadow .3s}.dashboard-xp-bar-fill::before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(110deg,rgba(255,255,255,0) 22%,rgba(255,255,255,.28) 50%,rgba(255,255,255,0) 78%);transform:translateX(-130%);animation:3.5s linear infinite xp-bar-idle-sheen;pointer-events:none}.dashboard-xp-bar-fill::after{content:"";position:absolute;top:50%;right:0;transform:translate(50%,-50%);width:18px;height:18px;border-radius:999px;background:var(--gold-primary);box-shadow:0 0 0 2px rgba(15,23,42,.9),0 0 14px rgba(250,204,21,.9)}.dashboard-xp-text{margin-top:6px;font-size:var(--font-size-xs);color:var(--color-text-secondary)}.dashboard-quests{margin-top:var(--space-xl);padding:var(--space-lg);border-radius:16px;border:1px solid var(--color-border);background:var(--color-bg-card)}.dashboard-quests-heading{margin:0 0 var(--space-xs);font-size:var(--font-size-xl)}.dashboard-quests-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-lg)}.dashboard-quests-sub{margin:0 0 var(--space-sm);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}.dashboard-quests-list{display:flex;flex-direction:column;gap:var(--space-sm)}.dashboard-quest-card{position:relative;overflow:hidden;border-radius:12px;border:1px solid var(--color-border);background:var(--color-bg-secondary);padding:12px 14px;transition:border-color var(--dur-base) ease,box-shadow var(--dur-base) ease,transform var(--dur-fast) var(--ease-smooth)}.dashboard-quest-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gold-gradient);transform:scaleX(0);transform-origin:left;transition:transform var(--dur-base) var(--ease-smooth)}.dashboard-quest-card:hover{border-color:rgba(212,175,55,.55);box-shadow:0 6px 18px rgba(212,175,55,.14);transform:translateY(-2px)}.dashboard-quest-card:hover::before{transform:scaleX(1)}.dashboard-quest-card:hover .dashboard-quest-icon{transform:scale(1.1)}.dashboard-quest-card.dashboard-quest--done:hover{border-color:rgba(63,185,80,.65);box-shadow:0 6px 18px rgba(63,185,80,.16)}.dashboard-quest-card.dashboard-quest--done::before{background:linear-gradient(90deg,#3fb950,#22c55e)}.dashboard-quest-card.dashboard-quest--done{border-color:rgba(63,185,80,.45);background:rgba(63,185,80,.08)}.dashboard-quest-card.dashboard-quest--done .dashboard-quest-icon{animation:ui-pop-in var(--dur-base) var(--ease-spring)}.dashboard-quest-card.dashboard-quest--claimable{border-color:rgba(255,215,0,.4);animation:ui-fade-up var(--dur-slow) var(--ease-smooth) forwards,quest-claimable-pulse 2.2s ease-in-out infinite}@keyframes quest-claimable-pulse{0%,100%{box-shadow:0 0 0 rgba(255,215,0,0);border-color:rgba(255,215,0,.4)}50%{box-shadow:0 0 16px rgba(255,215,0,.22);border-color:rgba(255,215,0,.65)}}.dashboard-quest-bar-fill{height:100%;border-radius:99px;background:var(--gold-gradient);transition:width .35s;position:relative;overflow:hidden}.dashboard-quest-bar-fill.quest-bar-complete::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,rgba(255,255,255,0) 22%,rgba(255,255,255,.45) 50%,rgba(255,255,255,0) 78%);animation:2s linear infinite xp-bar-idle-sheen}.dashboard-quest-actions{margin-top:var(--space-sm)}.dashboard-quest-claim-btn{width:100%;padding:8px 12px;font-size:var(--font-size-xs);font-weight:600;border-radius:8px;border:none;cursor:pointer;color:var(--text-on-gold);background:var(--gold-gradient)}.dashboard-quest-claim-btn:disabled{opacity:.55;cursor:not-allowed}.dashboard-quest-head{display:flex;align-items:flex-start;gap:var(--space-sm)}.dashboard-quest-icon{flex-shrink:0;width:2.6rem;height:2.6rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;transition:transform var(--dur-fast) var(--ease-smooth)}.dashboard-quest-icon-img{width:2.6rem;height:2.6rem;object-fit:contain;display:block}.dashboard-quest-titles{flex:1;min-width:0}.dashboard-quest-title{font-weight:600;font-size:var(--font-size-sm)}.dashboard-quest-meta{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:2px;text-transform:capitalize}.dashboard-quest-reward{font-size:var(--font-size-xs);font-weight:700;color:var(--gold-primary);white-space:nowrap;display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:2px 4px;max-width:46%;text-align:right}.dashboard-quest-reward-sep{font-weight:500;opacity:.65}.dashboard-quest-reward-coins,.dashboard-quest-reward-xp{display:inline-flex;align-items:center;gap:2px}.dashboard-quest-coin-icon .coin-icon-svg{width:14px;height:14px;vertical-align:middle}.dashboard-quest-desc{margin:var(--space-sm) 0 0;font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:1.4}.dashboard-quest-bar{margin-top:var(--space-sm);height:6px;border-radius:99px;background:var(--color-border);overflow:hidden}.dashboard-quest-foot{margin-top:6px;font-size:var(--font-size-xs);color:var(--color-text-muted)}@media (max-width:768px){.dashboard-quests-grid{grid-template-columns:1fr}}.dashboard-main{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:var(--space-lg)}.dashboard-hero-meta{display:flex;align-items:center;gap:var(--space-sm);padding-left:var(--space-lg)}.dashboard-streak-icon-wrapper{width:56px;height:56px;border-radius:999px;background:radial-gradient(circle,rgba(250,204,21,.35),transparent 70%);display:flex;align-items:center;justify-content:center}.dashboard-streak-icon{font-size:32px;filter:drop-shadow(0 0 8px rgba(250, 204, 21, .9));animation:1.2s ease-in-out infinite streak-flame-flicker}.dashboard-streak-text{display:flex;flex-direction:column;gap:2px}.dashboard-streak-label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.dashboard-streak-value{font-size:var(--font-size-sm);font-weight:600;color:#facc15;animation:1.8s ease-in-out infinite streak-text-glow}@keyframes streak-flame-flicker{0%,100%{opacity:1;transform:scale(1);filter:drop-shadow(0 0 8px rgba(250, 204, 21, .85))}20%{opacity:.72;transform:scale(.94) rotate(-3deg);filter:drop-shadow(0 0 4px rgba(250, 204, 21, .45))}45%{opacity:1;transform:scale(1.1) rotate(2deg);filter:drop-shadow(0 0 14px rgba(251, 146, 60, .95))}70%{opacity:.82;transform:scale(.98);filter:drop-shadow(0 0 6px rgba(250, 204, 21, .6))}}@keyframes streak-text-glow{0%,100%{text-shadow:0 0 0 transparent;opacity:.92}50%{text-shadow:0 0 14px rgba(250,204,21,.65);opacity:1}}.dashboard-streak--live .dashboard-streak-icon{animation-duration:.9s}.dashboard-streak--live .dashboard-streak-value{animation-duration:1.2s}.dashboard-card{border-radius:16px;border:1px solid var(--color-border);background:var(--color-bg-card);box-shadow:var(--shadow-card)}.dashboard-card-primary{grid-column:1/-1;padding:20px 24px;border-color:#333;transition:transform .2s,box-shadow .2s,border-color .2s}.dashboard-card-primary:hover{transform:translateY(-3px);box-shadow:0 12px 32px rgba(0,0,0,.6);border-color:#4b5563}.dashboard-card-body{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-md)}.dashboard-card-title{margin:0 0 8px;font-size:24px;color:#fff}.dashboard-card-text{margin:0 0 4px;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.dashboard-card-text span#dashboard-roadmap-target{font-weight:600;color:var(--gold-primary)}.dashboard-card-meta{margin:0 0 16px;font-size:var(--font-size-xs);color:var(--color-text-secondary);opacity:.6}.dashboard-start-btn{min-width:160px;background:var(--gold-gradient);color:var(--text-on-gold);font-weight:700;box-shadow:0 4px 15px rgba(212,175,55,.3)}.dashboard-start-btn:hover{background:var(--gold-gradient);box-shadow:0 6px 20px rgba(212,175,55,.45)}.action-card{background:#1a1a1a;border-radius:20px;padding:30px;margin-top:30px;border:1px solid #333;box-shadow:0 8px 24px rgba(0,0,0,.6);transition:transform .2s,box-shadow .25s,border-color .25s}.action-card:hover{transform:translateY(-5px);box-shadow:0 12px 36px rgba(0,0,0,.85),0 0 0 1px rgba(212,175,55,.4),0 0 30px rgba(212,175,55,.3);border-color:rgba(212,175,55,.6)}[data-theme=light] .action-card{background:radial-gradient(circle at top left,rgba(250,204,21,.12),transparent 55%),radial-gradient(circle at bottom right,rgba(56,189,248,.12),transparent 55%),#fff;border-color:#e2e8f0}[data-theme=light] .dashboard-card-title{color:var(--color-text-main)}[data-theme=light] .dashboard-xp-bar{background:#e8ecf4;box-shadow:inset 0 0 0 1px rgba(148,163,184,.35)}[data-theme=light] .dashboard-xp-bar-fill::after{box-shadow:0 0 0 2px #fff,0 0 10px rgba(154,103,0,.45)}[data-theme=light] .dashboard-streak-value{color:var(--gold-primary)}[data-theme=light] .dashboard-card-text span#dashboard-roadmap-target,[data-theme=light] .dashboard-quest-reward{color:var(--gold-dark)}@media (max-width:900px){.dashboard-main{grid-template-columns:minmax(0,1fr)}.dashboard-card-primary{padding:16px 18px}.dashboard-hero{flex-direction:column}.dashboard-hero-meta{padding-left:0;margin-top:var(--space-md)}}.parent-cabinet{max-width:920px;margin:0 auto;padding:1rem 0 2.5rem;display:flex;flex-direction:column;gap:1.25rem}.parent-cabinet-hero{padding:1.35rem 1.5rem}.parent-cabinet-title{margin:0 0 .35rem;font-size:1.55rem;color:var(--color-text-main)}.parent-cabinet-lead,.parent-panel-lead{margin:0;color:var(--color-text-secondary);line-height:1.5}.parent-section{padding:1.35rem 1.5rem}.parent-section-title{margin:0 0 1rem;font-size:1.25rem;color:var(--color-text-main)}.parent-subsection{margin-bottom:1.5rem}.parent-subsection:last-child{margin-bottom:0}.parent-subsection-title{margin:0 0 .5rem;font-size:1.05rem;color:var(--color-text-main)}.parent-path-lead{margin-bottom:1rem}.parent-path-badge{color:var(--gold-primary,#d4af37);margin-right:.25rem}.parent-link-child-row{display:flex;gap:.5rem;flex-wrap:wrap}.parent-link-child-row .auth-input{flex:1 1 200px}.parent-children-list{display:flex;flex-direction:column;gap:.75rem}.parent-child-card{border:1px solid var(--color-border);border-radius:12px;padding:.85rem 1rem;display:flex;justify-content:space-between;gap:.75rem;flex-wrap:wrap;background:var(--color-bg-secondary)}.parent-child-card--active{border-color:var(--gold-primary,#d4af37);box-shadow:0 0 0 1px var(--gold-primary,#d4af37)}.parent-child-card-main{display:flex;flex-direction:column;gap:.25rem;color:var(--color-text-main)}.parent-child-card-main span{font-size:.88rem;color:var(--color-text-secondary)}.parent-child-card-actions{display:flex;gap:.5rem;align-items:center}.parent-premium-badge{display:inline-block;font-size:.78rem;padding:.12rem .5rem;border-radius:6px;background:rgba(212,175,55,.18);color:var(--gold-primary,#d4af37);width:fit-content;font-weight:600}.parent-path-progress{margin:0 0 1rem;padding:1rem;border-radius:12px;border:1px solid var(--color-border);background:var(--color-bg-secondary)}.parent-path-progress-head{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.65rem}.parent-path-progress-title{margin:0;font-size:1rem;color:var(--color-text-main)}.parent-path-progress-percent{font-size:1.35rem;font-weight:800;color:var(--gold-primary,#d4af37)}.parent-path-bar-track{height:10px;border-radius:999px;background:var(--color-border);overflow:hidden}.parent-path-bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--gold-dark,#b8860b),var(--gold-primary,#d4af37));transition:width .4s}.parent-path-numbers{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:.45rem;margin-top:.85rem}.parent-path-num{padding:.35rem .4rem;border-radius:8px;border:1px solid var(--color-border);font-size:.78rem;text-align:center;color:var(--color-text-secondary)}.parent-path-num--done{border-color:rgba(63,185,80,.45);background:rgba(63,185,80,.1);color:var(--color-success)}.parent-path-num--progress{border-color:rgba(212,175,55,.45);background:rgba(212,175,55,.1);color:var(--gold-primary,#d4af37)}.parent-daily-stats{margin-top:1rem}.parent-daily-stats-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.35rem 1rem;margin-bottom:.75rem}.parent-daily-stats-title{margin:0;font-size:.95rem;color:var(--color-text-main)}.parent-daily-stats-total{font-size:.85rem;color:var(--color-text-secondary)}.parent-daily-stats-list{display:flex;flex-direction:column;gap:.55rem}.parent-daily-row{display:grid;grid-template-columns:7.5rem 1fr 2.5rem;align-items:center;gap:.65rem}.parent-daily-row--today .parent-daily-label,.parent-daily-row--today .parent-daily-value{color:var(--gold-primary,#d4af37);font-weight:600}.parent-daily-label{font-size:.88rem;color:var(--color-text-secondary)}.parent-daily-bar-track{height:.65rem;border-radius:999px;background:var(--color-bg-secondary);border:1px solid var(--color-border);overflow:hidden}.parent-daily-bar-fill{height:100%;min-width:0;border-radius:999px;background:linear-gradient(90deg,rgba(212,175,55,.55),var(--gold-primary,#d4af37));transition:width .25s}.parent-daily-value{font-size:.95rem;font-weight:700;text-align:right;color:var(--color-text-main)}@media (max-width:520px){.parent-daily-row{grid-template-columns:5.5rem 1fr 2rem;gap:.45rem}.parent-daily-label{font-size:.8rem}}.parent-stats-name{margin:0 0 .75rem;font-size:1.05rem;color:var(--color-text-main)}.parent-status-text{margin-top:.5rem;font-size:.92rem;color:var(--color-text-secondary)}.parent-status-text--error{color:var(--color-danger)}.parent-empty-hint{color:var(--color-text-secondary);margin:.5rem 0 0}.parent-field-hint{margin:.35rem 0 0;font-size:.85rem;color:var(--color-text-muted)}.parent-empty-card{padding:1rem 1.1rem;border:1px dashed var(--color-border);border-radius:12px;background:var(--color-bg-secondary)}.parent-lookup-preview{margin-top:.75rem}.parent-lookup-card{display:flex;gap:.75rem;align-items:flex-start;padding:.85rem 1rem;border-radius:12px;border:1px solid rgba(63,185,80,.45);background:rgba(63,185,80,.08);color:var(--color-text-main)}.parent-lookup-icon{font-size:1.25rem;color:var(--color-success);font-weight:700}.parent-lookup-card p{margin:.25rem 0 0;font-size:.9rem;color:var(--color-text-secondary)}.parent-stats-child-picker{margin-bottom:1rem;max-width:320px}.parent-premium-layout{display:grid;grid-template-columns:1.1fr 0.9fr;gap:1rem;margin-top:1rem}@media (max-width:760px){.parent-premium-layout{grid-template-columns:1fr}}.parent-premium-product{display:flex;gap:1rem;padding:1.1rem;background:var(--color-bg-secondary)}.parent-premium-product-img{border-radius:12px;object-fit:cover}.parent-premium-product-title{margin:0 0 .35rem;font-size:1.1rem;color:var(--color-text-main)}.parent-premium-product-price{margin:0 0 .5rem;font-size:1.2rem;font-weight:700;color:var(--gold-primary,#d4af37)}.parent-premium-product-desc{margin:0 0 .85rem;font-size:.9rem;color:var(--color-text-secondary);line-height:1.45}.parent-premium-soon-hint{margin:.65rem 0;font-size:.85rem;color:var(--color-text-muted);line-height:1.4}.parent-premium-benefits{padding:1.1rem;background:var(--color-bg-secondary)}.parent-premium-benefits-title{margin:0 0 .65rem;font-size:1rem;color:var(--color-text-main)}.parent-premium-benefits-list{margin:0;padding-left:1.15rem;color:var(--color-text-secondary);line-height:1.55}.parent-premium-benefits-list li+li{margin-top:.35rem}.parent-premium-info-status{margin-top:.85rem;font-size:.9rem;color:var(--color-text-secondary)}.parent-premium-select{max-width:320px}.parent-feedback-form textarea.auth-input{min-height:120px;resize:vertical}.parent-guide-hero{padding:1.35rem 1.5rem;margin-bottom:1rem;background:radial-gradient(ellipse 70% 80% at 0 0,rgba(212,175,55,.14),transparent 55%),var(--color-bg-secondary);border:1px solid var(--color-border)}.parent-guide-hero-badge{display:inline-block;margin-bottom:.5rem;padding:.25rem .65rem;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--gold-primary,#d4af37);border:1px solid rgba(212,175,55,.45);background:rgba(212,175,55,.1)}.parent-guide-hero-title{margin:0 0 .65rem;font-size:1.25rem;color:var(--color-text-main)}.parent-guide-hero-text{margin:0 0 .85rem;color:var(--color-text-secondary);line-height:1.55}.parent-guide-hero-points{margin:0;padding-left:1.15rem;color:var(--color-text-secondary);line-height:1.5}.parent-guide-hero-points li+li{margin-top:.3rem}.parent-guide-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.parent-guide-item{padding:1rem;background:var(--color-bg-secondary)}.parent-guide-item h4{margin:0 0 .35rem;font-size:.98rem;color:var(--color-text-main)}.parent-guide-item p{margin:0;font-size:.88rem;color:var(--color-text-secondary);line-height:1.45}html.app-user-authed.app-user-parent #main-nav-left,html.app-user-authed.app-user-parent #parents-link,html.app-user-parent .header-coins,html.app-user-parent .header-notifications-root,html.app-user-parent .xp-bar{display:none!important}.teacher-verify-banner{padding:1rem 1.25rem;border-left:4px solid var(--color-accent,#c9a227)}.teacher-verify-banner-text{margin:0;color:var(--color-text-secondary);line-height:1.45}.teacher-sessions-actions{margin-bottom:1rem}.teacher-sessions-list{display:flex;flex-direction:column;gap:.75rem}.teacher-session-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1rem;border:1px solid var(--color-border,rgba(0,0,0,.08));border-radius:10px;background:var(--color-surface,#fff)}.teacher-session-meta{display:block;margin-top:.25rem;font-size:.9rem;color:var(--color-text-secondary)}.student-unlink-wrap{margin-top:1.5rem;text-align:right}.student-unlink-btn{background:0 0;border:none;color:var(--color-text-secondary);font-size:.8rem;text-decoration:underline;cursor:pointer;opacity:.65}.student-unlink-btn:hover{opacity:1}.header-notification-actions{display:flex;gap:.5rem;margin-top:.65rem}.header-notification-actions .primary-button,.header-notification-actions .secondary-button{font-size:.85rem;padding:.35rem .75rem}.archive-board-host,.archive-presentation-host{margin-top:1rem}.archive-pres-page{display:block;max-width:100%;margin:.75rem 0;border-radius:8px}.archive-snapshot-pre{overflow:auto;max-height:240px;font-size:.8rem;background:rgba(0,0,0,.04);padding:.75rem;border-radius:8px}.student-archive-head{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.admin-teachers-list{margin-top:1rem;overflow-x:auto}.session-end-btn{border-color:#c45c5c!important;color:#a33!important}.stats-card-ege,.stats-steroid-card{border-radius:16px;border:1px solid #333;background:radial-gradient(circle at top left,rgba(250,204,21,.12),transparent 55%),radial-gradient(circle at bottom right,rgba(56,189,248,.12),transparent 55%),var(--color-bg-card);box-shadow:0 8px 24px rgba(0,0,0,.6);padding:16px 18px}.stats-card-ege .stats-total-line{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--space-sm);font-size:var(--font-size-sm)}.stats-card-ege .stats-total-label{color:var(--color-text-secondary)}.stats-card-ege .stats-total-value{font-size:var(--font-size-lg);font-weight:700}.stats-metrics-card{margin-top:0}.stats-metrics-title{margin:0 0 var(--space-sm);font-size:var(--font-size-sm);font-weight:600}.stats-metrics-grid{margin:0;display:grid;grid-template-columns:max-content max-content;column-gap:1rem;row-gap:8px;justify-content:start;align-items:baseline}.stats-metric-row{display:contents;font-size:var(--font-size-sm)}.stats-metric-row dt{margin:0;color:var(--color-text-secondary);font-weight:400}.stats-metric-row dd{margin:0;font-weight:700;color:var(--gold-primary)}[data-theme=light] .stats-metric-row dd{color:var(--gold-dark)}.stats-by-task-compact{display:flex;flex-wrap:wrap;gap:6px}.stats-by-task-pill{display:inline-flex;align-items:baseline;gap:4px;padding:4px 8px;border-radius:999px;background:rgba(15,23,42,.9);border:1px solid var(--color-border);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.stats-by-task-pill-strong{border-color:var(--gold-primary);color:var(--gold-primary)}.stats-pill-label{opacity:.8}.stats-pill-value{font-weight:600}[data-theme=light] .stats-by-task-pill{background:#fff;border-color:var(--color-border)}[data-theme=light] .stats-by-task-pill-strong{border-color:var(--gold-primary);color:var(--gold-primary)}.stats-stack{display:flex;flex-direction:column;gap:var(--space-lg);align-items:stretch}.stats-streak-calendar{width:fit-content;max-width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.stats-streak-calendar-header{display:flex;justify-content:flex-start;align-items:center;flex-wrap:wrap;gap:var(--space-md);margin-bottom:var(--space-xs);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.stats-streak-calendar-title{font-weight:500}.stats-streak-calendar-legend{display:inline-flex;align-items:center;gap:4px}.legend-box{width:10px;height:10px;border-radius:2px;border:1px solid var(--color-border);display:inline-block}.legend-level-0{background:0 0}.legend-level-1{background:rgba(34,197,94,.25)}.legend-level-2{background:rgba(34,197,94,.5)}.legend-level-3{background:rgba(34,197,94,.9)}.streak-calendar-grid{display:grid;grid-auto-flow:column;grid-auto-columns:9px;grid-template-rows:repeat(7,9px);gap:2px;padding:6px;border-radius:6px;background:rgba(255,255,255,.02);border:1px solid var(--color-border);width:max-content;min-height:calc(7 * 9px + 6 * 2px + 12px);box-sizing:border-box}.streak-calendar-day{width:9px;height:9px;border-radius:2px;background:rgba(15,23,42,.6);border:1px solid rgba(31,41,55,.9)}.streak-calendar-day.active{background:rgba(34,197,94,.5);border-color:rgba(22,163,74,.8)}.streak-calendar-day.today{outline:#facc15 solid 1px;box-shadow:0 0 0 1px #facc15}.streak-day{width:9px;height:9px;border-radius:2px;background:rgba(255,255,255,.03);border:1px solid rgba(31,41,55,.8)}.streak-level-0{background:rgba(15,23,42,.6);border-color:rgba(31,41,55,.9)}.streak-level-1{background:rgba(34,197,94,.25);border-color:rgba(22,163,74,.4)}.streak-level-2{background:rgba(34,197,94,.5);border-color:rgba(22,163,74,.8)}.streak-level-3{background:rgba(34,197,94,.9);border-color:#15803d}.streak-day-today{outline:#facc15 solid 1px;box-shadow:0 0 0 1px #facc15}.stats-streak{align-self:flex-start;display:flex;align-items:center;gap:var(--space-sm);padding:6px 10px;border-radius:999px;background:rgba(210,153,34,.15)}.stats-streak-icon{font-size:1.1rem}.stats-streak-label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-warning)}.stats-streak-value{font-size:var(--font-size-sm);font-weight:600;color:var(--color-warning)}.stats-steroid-block{margin-top:var(--space-md)}.stats-steroid-percent{margin-top:var(--space-xs);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.steroid-roadmap-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:6px;margin-top:var(--space-sm)}.steroid-roadmap-cell{border-radius:10px;padding:6px 8px;text-align:center;font-size:var(--font-size-xs);border:1px solid var(--color-border);background:rgba(15,23,42,.9);color:var(--color-text-secondary);display:flex;flex-direction:column;align-items:center;gap:2px}.steroid-roadmap-cell.mastered{background:var(--gold-gradient);border-color:rgba(212,175,55,.9);color:var(--text-on-gold)}.steroid-roadmap-cell.in_progress{background:rgba(250,204,21,.18);border-color:rgba(212,175,55,.7);color:var(--color-warning)}.steroid-roadmap-cell.untouched{background:0 0;border-style:dashed}.steroid-roadmap-number{font-weight:600}.steroid-roadmap-progress{font-size:var(--font-size-xxs, 10px);opacity:.9}@keyframes xp-gain-float{0%{opacity:0;transform:translate(-50%,14px) scale(.9)}12%{opacity:1;transform:translate(-50%,-6px) scale(1.06)}22%{opacity:1;transform:translate(-50%,-12px) scale(1)}72%{opacity:1;transform:translate(-50%,-40px) scale(1)}100%{opacity:0;transform:translate(-50%,-56px) scale(.95)}}@keyframes xp-gain-float-after{0%{opacity:0;transform:translate(0,14px) scale(.9)}12%{opacity:1;transform:translate(0,-6px) scale(1.06)}22%{opacity:1;transform:translate(0,-12px) scale(1)}72%{opacity:1;transform:translate(0,-40px) scale(1)}100%{opacity:0;transform:translate(0,-56px) scale(.95)}}.xp-gain-badge{position:fixed;left:0;top:0;padding:8px 14px;border-radius:999px;font-size:var(--font-size-sm);font-weight:700;pointer-events:none;z-index:10050;white-space:nowrap;box-shadow:0 6px 24px rgba(22,163,74,.35);color:#ecfdf5;background:rgba(22,163,74,.35);border:2px solid rgba(74,222,128,.95);animation:2.6s ease-out forwards xp-gain-float}html[data-theme=light] .xp-gain-badge{color:#14532d;background:rgba(22,163,74,.22);border-color:#16a34a;box-shadow:0 6px 20px rgba(22,163,74,.28)}.xp-gain-badge.xp-gain-badge--after-result{animation:2.6s ease-out forwards xp-gain-float-after}.coin-gain-badge{position:fixed;left:0;top:0;padding:8px 12px;border-radius:999px;font-size:var(--font-size-sm);font-weight:700;pointer-events:none;z-index:10050;white-space:nowrap;display:inline-flex;align-items:center;gap:6px;color:#3d3514;background:rgba(232,197,71,.42);border:2px solid rgba(184,134,11,.95);box-shadow:0 6px 24px rgba(212,175,55,.45),0 0 0 1px rgba(255,236,160,.25) inset;animation:2.6s ease-out forwards xp-gain-float}.coin-gain-badge .coin-gain-icon-wrap{display:inline-flex;align-items:center;line-height:0}.coin-gain-badge .coin-icon-svg{width:20px;height:20px}html[data-theme=light] .coin-gain-badge{color:#5c4a12;background:rgba(250,226,140,.55);border-color:#b8860b;box-shadow:0 6px 20px rgba(212,175,55,.35)}@media (max-width:768px){.xp-bar-root{top:calc(var(--header-bar-height) + var(--safe-area-top))}.xp-bar-inner{padding-left:var(--space-md);padding-right:var(--space-md)}.dashboard-card-body,.dashboard-hero,.dashboard-hero-meta{flex-direction:column;align-items:stretch}.dashboard-main{grid-template-columns:1fr!important}.dashboard-hero-meta{padding-left:0}.profile-achievement-grid{grid-template-columns:1fr}.steroid-roadmap-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-by-task-compact{flex-direction:column;align-items:stretch}.stats-streak-calendar-header{flex-wrap:wrap;row-gap:6px;column-gap:8px}.streak-calendar-grid{width:max-content;min-height:calc(7 * 9px + 6 * 2px + 12px);box-sizing:border-box}.action-card{width:100%;box-sizing:border-box}}.profile-coins-value{font-weight:700;color:var(--gold-primary)}#profile-talent-stats-title{margin-top:var(--space-xl)}.profile-talent-stats-lead{font-size:var(--font-size-sm)}.profile-talent-stats{display:grid;grid-template-columns:max-content max-content;column-gap:.65rem;row-gap:.4rem;margin:0 0 1.25rem;padding:0;font-size:var(--font-size-sm);justify-content:start;align-items:baseline}.profile-talent-stats dt{margin:0;padding-right:.15rem;color:var(--color-text-secondary);font-weight:500}.profile-talent-stats dd{margin:0;font-weight:600;color:var(--color-text-main);text-align:left;font-variant-numeric:tabular-nums}@media (max-width:520px){.profile-talent-stats{grid-template-columns:1fr}.profile-talent-stats dd{margin-bottom:.35rem;padding-bottom:.35rem;border-bottom:1px solid var(--color-border)}}.rewards-page-card .loot-progress-block{margin-bottom:2.75rem}.loot-admin-tools{border:1px dashed var(--color-border);border-radius:10px;padding:10px}.loot-admin-tools-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:6px}.loot-admin-tools-row input,.loot-admin-tools-row select{min-height:34px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-main);padding:6px 8px}.loot-admin-tools-row input{width:92px}.loot-roll-modal{position:fixed;inset:0;z-index:1800;display:grid;place-items:center}.loot-roll-modal[hidden]{display:none!important}.loot-roll-modal-backdrop{position:absolute;inset:0;background:rgba(2,6,23,.68);backdrop-filter:blur(2px)}.loot-roll-modal-dialog{position:relative;width:min(860px,calc(100vw - 24px));border:1px solid var(--color-border);border-radius:14px;padding:12px;background:rgba(15,23,42,.92);box-shadow:0 18px 48px rgba(0,0,0,.45)}[data-theme=light] .loot-roll-modal-dialog{background:rgba(248,250,252,.97)}.loot-roll-title{font-weight:600}.loot-roll-viewport-wrap{position:relative}.loot-roll-center-marker{position:absolute;left:50%;top:4px;bottom:4px;width:2px;transform:translateX(-50%);background:linear-gradient(180deg,transparent 0,#facc15 12%,#f59e0b 88%,transparent 100%);box-shadow:0 0 10px rgba(250,204,21,.55);z-index:2}.loot-roll-viewport{overflow:hidden;border-radius:10px;border:1px solid var(--color-border);background:rgba(15,23,42,.42);width:min(798px,calc(100vw - 64px));margin:0 auto;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,0.55) 16%,#000 30%,#000 70%,rgba(0,0,0,0.55) 84%,transparent 100%)}[data-theme=light] .loot-roll-viewport{background:rgba(248,250,252,.95)}.loot-roll-track{display:flex;align-items:stretch;gap:8px;padding:8px;will-change:transform}.loot-roll-item{min-width:150px;border-radius:8px;padding:6px;border:1px solid var(--color-border);background:rgba(30,41,59,.45);font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-main);display:flex;flex-direction:column;justify-content:flex-start;gap:6px;opacity:.72;transition:opacity var(--dur-base) ease,border-color var(--dur-base) ease,box-shadow var(--dur-base) ease}[data-theme=light] .loot-roll-item{background:rgba(241,245,249,.96)}.loot-roll-item-icon{flex:0 0 auto;width:100%;height:106px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;background:rgba(15,23,42,.6)}.loot-roll-item-art{width:100%;height:100%;object-fit:cover;border-radius:6px}.loot-roll-item-icon--coin{border-radius:8px}.loot-roll-item-icon--coin .coin-icon-svg{width:56px;height:56px}.loot-roll-item-label{width:100%;text-align:center;line-height:1.2;padding:0 2px}.loot-roll-item.is-win{opacity:1;border-color:rgba(250,204,21,.92);box-shadow:0 0 14px rgba(250,204,21,.38)}.loot-roll-modal.is-finished .loot-roll-item{opacity:.35}.loot-roll-modal.is-finished .loot-roll-item.is-win{opacity:1}.loot-roll-item.is-reveal .loot-roll-item-label{color:#fbbf24}.loot-roll-result{margin-top:8px;font-weight:700;color:var(--gold-primary);min-height:1.25rem;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.loot-roll-result-prefix{color:var(--color-text-main)}.loot-roll-result-coin-value{font-size:1.45rem;line-height:1;font-weight:800}.loot-roll-result-coin-icon .coin-icon-svg{width:28px;height:28px;vertical-align:middle}.loot-roll-result-coin-word{font-size:1.05rem;font-weight:700}.loot-roll-actions{margin-top:10px;display:flex;justify-content:flex-end}.profile-loot-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,252px),1fr));gap:1.25rem 1.5rem;margin-top:.25rem;width:100%;align-items:stretch}.profile-loot-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:12px;border:2px solid var(--color-border);background:rgba(15,23,42,.35)}.profile-loot-row.profile-loot-box{position:relative;overflow:visible;flex-direction:column;align-items:stretch;padding:1.15rem 1.25rem 1rem;width:100%;min-width:0;box-sizing:border-box;transition:transform var(--dur-base) var(--ease-smooth),box-shadow var(--dur-base) ease,border-color var(--dur-base) ease}.profile-loot-box:not(.loot-box-opening):hover{transform:translateY(-4px)}.profile-achievement-card:not(.profile-achievement-card--locked){transition:transform var(--dur-base) var(--ease-smooth),box-shadow var(--dur-base) ease,border-color var(--dur-base) ease}[data-theme=light] .profile-loot-row{background:rgba(248,250,252,.9)}.profile-loot-box.loot-tier-common{--loot-lid:linear-gradient(180deg, #9ca3af 0%, #6b7280 55%, #4b5563 100%);--loot-body:linear-gradient(165deg, #6b7280 0%, #4b5563 40%, #374151 100%);--loot-ribbon:linear-gradient(135deg, #f3f4f6 0%, #d1d5db 50%, #9ca3af 100%);--loot-glow-inner:rgba(255, 255, 255, 0.18);border-color:rgba(200,200,200,.85);box-shadow:0 0 14px rgba(220,220,220,.14),inset 0 1px 0 rgba(255,255,255,.06)}.profile-loot-box.loot-tier-rare{--loot-lid:linear-gradient(180deg, #3b82f6 0%, #1d4ed8 100%);--loot-body:linear-gradient(165deg, #1e40af 0%, #172554 55%, #0f172a 100%);--loot-ribbon:linear-gradient(135deg, #bfdbfe 0%, #60a5fa 45%, #2563eb 100%);--loot-glow-inner:rgba(96, 165, 250, 0.35);border-color:#0070dd;box-shadow:0 0 18px rgba(0,112,221,.38),inset 0 1px 0 rgba(255,255,255,.08)}.profile-loot-box.loot-tier-epic{--loot-lid:linear-gradient(180deg, #a855f7 0%, #7c3aed 100%);--loot-body:linear-gradient(165deg, #6b21a8 0%, #4c1d95 50%, #2e1065 100%);--loot-ribbon:linear-gradient(135deg, #e9d5ff 0%, #c084fc 40%, #9333ea 100%);--loot-glow-inner:rgba(192, 132, 252, 0.4);border-color:#a335ee;box-shadow:0 0 22px rgba(163,53,238,.42),inset 0 1px 0 rgba(255,255,255,.09)}.profile-loot-box.loot-tier-legendary{--loot-lid:linear-gradient(180deg, #fb923c 0%, #ea580c 100%);--loot-body:linear-gradient(165deg, #c2410c 0%, #9a3412 45%, #7c2d12 100%);--loot-ribbon:linear-gradient(135deg, #ffedd5 0%, #fdba74 35%, #f97316 100%);--loot-glow-inner:rgba(253, 186, 116, 0.45);border-color:#ff8000;box-shadow:0 0 24px rgba(255,128,0,.48),inset 0 1px 0 rgba(255,255,255,.1)}.profile-loot-box.loot-tier-shop,.profile-loot-box.loot-tier-uncommon{--loot-lid:linear-gradient(180deg, #4ade80 0%, #22c55e 100%);--loot-body:linear-gradient(165deg, #166534 0%, #14532d 50%, #052e16 100%);--loot-ribbon:linear-gradient(135deg, #dcfce7 0%, #86efac 40%, #22c55e 100%);--loot-glow-inner:rgba(74, 222, 128, 0.35);border-color:#1eff00;box-shadow:0 0 18px rgba(30,255,0,.26),inset 0 1px 0 rgba(255,255,255,.08)}.profile-loot-row.loot-tier-common .profile-loot-type{color:#e2e2e2;font-weight:700}[data-theme=light] .profile-loot-row.loot-tier-common .profile-loot-type{color:#4b5563}.profile-loot-row.loot-tier-rare .profile-loot-type{color:#4da3ff;font-weight:700}.profile-loot-row.loot-tier-epic .profile-loot-type{color:#d084ff;font-weight:700}.profile-loot-row.loot-tier-legendary .profile-loot-type{color:#ffb84d;font-weight:700}.profile-loot-row.loot-tier-shop .profile-loot-type,.profile-loot-row.loot-tier-uncommon .profile-loot-type{color:#5cff5c;font-weight:700}[data-theme=light] .profile-loot-row.loot-tier-shop .profile-loot-type,[data-theme=light] .profile-loot-row.loot-tier-uncommon .profile-loot-type{color:#15803d}.loot-box-visual{position:relative;display:flex;justify-content:center;align-items:center;width:100%;margin-bottom:.35rem}.loot-box-icon{width:min(188px,86%);height:auto;object-fit:contain;user-select:none;pointer-events:none;transition:opacity var(--dur-base) ease,transform var(--dur-base) var(--ease-smooth),filter var(--dur-base) ease}.loot-box-icon--locked{width:100%;opacity:.98}.loot-box-visual--locked{margin-bottom:.45rem}.loot-box-visual-stack{width:min(188px,86%);display:flex;flex-direction:column;align-items:stretch;gap:.45rem}.loot-box-progress-inline{width:100%}.loot-box-info--locked{margin-bottom:0}.profile-loot-box--locked{border-style:dashed;border-color:rgba(156,163,175,.7);box-shadow:0 0 12px rgba(148,163,184,.2),inset 0 1px 0 rgba(255,255,255,.04)}.profile-loot-box--locked:hover{transform:none}.profile-loot-tooltip{position:absolute;left:calc(100% + 10px);top:50%;z-index:20;min-width:240px;width:max-content;max-width:min(420px,88vw);padding:10px 12px;border-radius:10px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-main);font-size:var(--font-size-xs);line-height:1.45;text-align:left;box-shadow:var(--shadow-card);pointer-events:none;opacity:0;transform:translate(6px,-50%);transition:opacity var(--dur-fast) ease,transform var(--dur-fast) ease}.profile-loot-box--has-tooltip:focus-visible .profile-loot-tooltip,.profile-loot-box--has-tooltip:focus-within .profile-loot-tooltip,.profile-loot-box--has-tooltip:hover .profile-loot-tooltip{opacity:1;transform:translate(0,-50%)}.loot-box-icon--base{opacity:1}.loot-box-icon--hover{position:absolute;opacity:0}.profile-loot-box:not(.loot-box-opening):hover .loot-box-icon--base{opacity:0}.profile-loot-box:not(.loot-box-opening):hover .loot-box-icon--hover{opacity:1;transform:scale(1.02)}.loot-box-info{display:flex;flex-direction:column;gap:2px;min-width:0;text-align:center;margin-bottom:.5rem}.profile-loot-type{font-weight:600;color:var(--color-text-main)}.profile-loot-when{font-size:var(--font-size-xs)}.loot-box-footer{width:100%;margin-top:auto;padding-top:.15rem}.loot-box-open-btn{width:100%;justify-content:center}@keyframes loot-box-wobble{0%,100%{transform:rotate(0) translateY(0)}20%{transform:rotate(-7deg) translateY(2px)}40%{transform:rotate(7deg) translateY(0)}60%{transform:rotate(-4deg) translateY(-4px)}80%{transform:rotate(3deg) translateY(-2px)}}@keyframes loot-box-pulse-glow{0%{filter:brightness(1)}40%{filter:brightness(1.35)}100%{filter:brightness(1.15)}}.profile-loot-box.loot-box-opening .loot-box-visual{animation:.5s ease-in-out loot-box-wobble,.65s ease-out .15s both loot-box-pulse-glow}.profile-loot-box.loot-box-opening .loot-box-icon{transform:scale(1.08);filter:brightness(1.2)}@keyframes loot-box-open-burst{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.35)}}.profile-loot-status{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.profile-shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;overflow:visible}.profile-shop-item-card{position:relative;overflow:visible;padding:0;min-height:280px;border-radius:12px;border:1px solid var(--color-border);background:rgba(15,23,42,.35);display:flex;flex-direction:column;justify-content:flex-end;transition:border-color var(--dur-base) ease,box-shadow var(--dur-base) ease,transform var(--dur-fast) var(--ease-smooth)}.profile-shop-item-card--premium_30d{min-height:330px}.profile-shop-item-tooltip{position:absolute;left:50%;bottom:calc(100% + 8px);z-index:30;min-width:200px;max-width:min(280px,88vw);padding:10px 12px;border-radius:10px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-main);font-size:var(--font-size-xs);line-height:1.45;box-shadow:var(--shadow-card);opacity:0;transform:translate(-50%,4px);pointer-events:none;transition:opacity var(--dur-fast) ease,transform var(--dur-fast) ease;text-align:left}.profile-shop-item-card--has-tooltip:focus-within .profile-shop-item-tooltip,.profile-shop-item-card--has-tooltip:hover .profile-shop-item-tooltip{opacity:1;transform:translate(-50%,0)}.shop-confirm-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:16px}.shop-confirm-modal[hidden]{display:none}.shop-confirm-modal-backdrop{position:absolute;inset:0;background:rgba(2,6,23,.62);backdrop-filter:blur(2px)}.shop-confirm-modal-dialog{position:relative;width:min(460px,calc(100vw - 24px));padding:18px;border-radius:14px;border:1px solid var(--color-border);background:var(--color-bg-card);box-shadow:var(--shadow-card)}.shop-confirm-modal-text{margin:0;color:var(--color-text-main);font-size:var(--font-size-md);line-height:1.45}.shop-confirm-modal-actions{margin-top:14px;display:flex;justify-content:flex-end;gap:10px}.shop-confirm-modal-actions .secondary-button{min-width:118px;justify-content:center}.profile-shop-lootbox-card{position:relative;overflow:hidden;padding:14px;border-radius:12px;border:1px solid var(--color-border);background:rgba(15,23,42,.35);transition:border-color var(--dur-base) ease,box-shadow var(--dur-base) ease,transform var(--dur-fast) var(--ease-smooth)}.profile-shop-item-card::before,.profile-shop-lootbox-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gold-gradient);transform:scaleX(0);transform-origin:left;transition:transform var(--dur-base) var(--ease-smooth)}.profile-shop-grid>.profile-shop-item-card{opacity:0;animation:ui-fade-up var(--dur-slow) var(--ease-smooth) forwards}.profile-shop-grid>.profile-shop-item-card:first-child{animation-delay:50ms}.profile-shop-grid>.profile-shop-item-card:nth-child(2){animation-delay:.11s}.profile-shop-grid>.profile-shop-item-card:nth-child(3){animation-delay:.17s}.profile-shop-grid>.profile-shop-item-card:nth-child(4){animation-delay:.23s}.profile-shop-grid>.profile-shop-item-card:nth-child(5){animation-delay:.29s}.profile-shop-grid>.profile-shop-item-card:nth-child(n+6){animation-delay:.35s}.profile-shop-extra .profile-shop-lootbox-card{opacity:0;animation:ui-fade-up var(--dur-slow) var(--ease-smooth) 40ms forwards}.profile-shop-item-card:hover,.profile-shop-lootbox-card:hover{border-color:rgba(212,175,55,.6);box-shadow:0 8px 22px rgba(212,175,55,.16);transform:translateY(-3px)}.profile-shop-item-card:hover::before,.profile-shop-lootbox-card:hover::before{transform:scaleX(1)}.profile-shop-item-card:active,.profile-shop-lootbox-card:active{transform:translateY(-1px) scale(.99)}[data-theme=light] .profile-shop-item-card,[data-theme=light] .profile-shop-lootbox-card{background:rgba(248,250,252,.9)}.profile-shop-item-title,.profile-shop-lootbox-title{font-weight:600;margin:0;text-align:center;display:flex;flex-direction:column;gap:4px}.profile-shop-item-title .profile-shop-item-meta{display:block;font-size:var(--font-size-xs);font-weight:500;color:var(--color-text-secondary)}.profile-shop-item-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;user-select:none;border-radius:12px}.profile-shop-item-art--premium_30d{object-fit:contain}.profile-shop-item-art--boost_big{transform:scale(.89);transform-origin:center}.profile-shop-item-art--placeholder{background:radial-gradient(ellipse 80% 60% at 50% 40%,rgba(99,102,241,.22),transparent 70%),linear-gradient(165deg,#1e293b 0,#0f172a 100%)}.profile-shop-item-overlay{position:relative;z-index:1;display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:12px 12px 14px;border-radius:0 0 12px 12px;background:linear-gradient(180deg,rgba(15,23,42,0) 0,rgba(15,23,42,.55) 28%,rgba(15,23,42,.94) 100%)}[data-theme=light] .profile-shop-item-overlay{background:linear-gradient(180deg,rgba(248,250,252,0) 0,rgba(248,250,252,.7) 30%,rgba(248,250,252,.96) 100%)}.profile-shop-item-meta,.profile-shop-lootbox-desc{font-size:var(--font-size-xs);margin:0;text-align:center;color:var(--color-text-secondary)}.profile-shop-extra .secondary-button,.profile-shop-grid .secondary-button{width:100%;justify-content:center}.profile-shop-item-overlay .profile-shop-buy-btn{margin-bottom:2px}.rewards-page-title,.shop-page-title{margin-top:0}.rewards-page-title{line-height:1.25;word-break:break-word}.rewards-page-card{width:100%;max-width:100%;box-sizing:border-box}.loot-progress{margin-bottom:var(--space-md)}.loot-progress-bar,.progress-bar{height:10px;border-radius:999px;background:rgba(156,163,175,.25);overflow:hidden}.progress-bar-fill{height:100%;border-radius:999px;background:var(--gold-gradient);width:0%;transition:width .35s}.profile-loot-status--pending{font-weight:600;color:var(--gold-primary)}.achievement-toast-stack{position:fixed;right:16px;bottom:16px;z-index:10038;display:flex;flex-direction:column-reverse;gap:10px;pointer-events:none;max-width:min(380px,calc(100vw - 32px))}.achievement-toast{position:relative;opacity:0;transform:translateY(22px);transition:opacity .38s,transform .45s cubic-bezier(.22, 1, .36, 1)}.achievement-toast--visible{opacity:1;transform:translateY(0)}.achievement-toast--visible .achievement-toast-icon-wrap{animation:ui-pop-in var(--dur-base) var(--ease-spring) .12s both}.achievement-toast--exit{opacity:0;transform:translateY(-32px);transition:opacity .48s,transform .52s}.achievement-toast-border{border-radius:14px;padding:2px;background:linear-gradient(125deg,#ca8a04,#facc15,#fde047,#eab308,#ca8a04,#facc15);background-size:280% 280%;animation:3s infinite achievement-toast-border-shift;pointer-events:none}@keyframes achievement-toast-border-shift{0%,100%{background-position:0 40%}50%{background-position:100% 60%}}.achievement-toast-inner{position:relative;border-radius:12px;padding:12px 14px;display:flex;gap:12px;align-items:flex-start;background:rgba(15,23,42,.96);border:1px solid rgba(51,65,85,.85);box-shadow:0 0 0 1px rgba(250,204,21,.12),0 12px 40px rgba(0,0,0,.55)}[data-theme=light] .achievement-toast-inner{background:#f8fafc;border-color:#e2e8f0;box-shadow:0 0 0 1px rgba(250,204,21,.2),0 12px 32px rgba(15,23,42,.12)}.achievement-toast-icon-wrap{flex-shrink:0;width:48px;height:48px;border-radius:10px;border:2px solid rgba(212,175,55,.45);background:linear-gradient(145deg,#2a2218 0,#1a1510 100%);display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,215,0,.15),0 0 12px rgba(255,215,0,.2)}.achievement-toast-icon-img{width:44px;height:44px;object-fit:cover;border-radius:6px;filter:saturate(1.12) brightness(1.08)}.achievement-toast-icon-fallback{font-size:1.5rem;line-height:1}.achievement-toast-title{font-size:1.05rem;font-weight:700;line-height:1.25;color:var(--color-text,#f1f5f9);margin-bottom:4px}.achievement-toast-desc{font-size:var(--font-size-xs);line-height:1.35;color:var(--color-text-secondary)}@media (max-width:768px){.achievement-toast-stack{right:10px;bottom:10px;max-width:calc(100vw - 20px)}}.talents-page-card{max-width:720px;margin-left:auto;margin-right:auto}.talents-page-title{margin-bottom:.35rem}.talents-points-line{font-size:var(--font-size-sm);color:var(--gold-primary);font-weight:600;letter-spacing:.02em}.talent-tree-root{position:relative;margin-top:1rem;min-height:320px;padding:1.25rem 1rem 1.5rem;border-radius:14px;border:2px solid #3d2f1a;background:radial-gradient(ellipse 120% 80% at 50% 0,rgba(80,55,25,.35),transparent 55%),linear-gradient(180deg,#1a1410 0,#0f0c0a 48%,#14100d 100%);box-shadow:inset 0 0 0 1px rgba(255,215,0,.08),inset 0 1px 24px rgba(0,0,0,.55),0 10px 32px rgba(0,0,0,.35)}[data-theme=light] .talent-tree-root{border-color:#8b6914;background:radial-gradient(ellipse 120% 80% at 50% 0,rgba(255,215,0,.12),transparent 55%),linear-gradient(180deg,#f0e6d2 0,#e2d4b8 48%,#d8c9a8 100%);box-shadow:inset 0 0 0 1px rgba(139,105,20,.2),inset 0 1px 16px rgba(255,255,255,.45),0 8px 24px rgba(15,23,42,.08)}.talent-tree-svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:visible}.talent-tree-svg path{fill:none;stroke:rgba(184,134,11,0.55);stroke-width:2;filter:drop-shadow(0 0 2px rgba(255, 215, 0, .25))}[data-theme=light] .talent-tree-svg path{stroke:rgba(139,105,20,0.65)}.talent-tree-rows{position:relative;z-index:1;display:flex;flex-direction:column;align-items:stretch;gap:1.1rem}.talent-tree-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:.65rem 1.35rem}.talents-flash-msg--err{color:var(--color-danger)}.talent-node-wrap{position:relative;display:inline-block;vertical-align:top;width:64px}.talent-node{width:64px;height:64px;padding:0;border:none;border-radius:0;background:0 0;cursor:default;transition:filter var(--dur-base) ease,transform var(--dur-fast) var(--ease-spring);text-align:center;user-select:none;-webkit-user-select:none}.talent-node.talent-node--learn-burst .talent-node__frame{animation:talent-learn-burst .65s var(--ease-spring)}@keyframes talent-learn-burst{0%,100%{transform:scale(1);box-shadow:inset 0 0 0 1px rgba(0,0,0,.65),0 2px 6px rgba(0,0,0,.45)}45%{transform:scale(1.14);box-shadow:inset 0 0 0 1px rgba(255,215,0,.5),0 0 22px rgba(255,215,0,.55),0 0 36px rgba(255,165,0,.28)}}.talent-node--active{cursor:pointer}.talent-node__frame{position:relative;width:64px;height:64px;border-radius:8px;border:2px solid #4a3a22;background:linear-gradient(145deg,#2a2218 0,#1a1510 100%);box-shadow:inset 0 0 0 1px rgba(0,0,0,.65),inset 0 1px 0 rgba(255,255,255,.06),0 2px 6px rgba(0,0,0,.45);overflow:hidden}.talent-node__icon{display:block;width:56px;height:56px;margin:2px auto 0;object-fit:cover;border-radius:4px;pointer-events:none}.talent-node__icon--fallback{display:block;width:56px;height:56px;margin:2px auto 0;border-radius:4px;background:#2a2218}.talent-node--learned .talent-node__icon{filter:saturate(1.1) brightness(1.06) contrast(1.02)}.talent-node--unlearned .talent-node__icon{filter:grayscale(.35) brightness(.78) saturate(.88)}.talent-node--unlearned .talent-node__frame::after{content:'';position:absolute;inset:0;border-radius:6px;background:rgba(0,0,0,.18);pointer-events:none}.talent-node--active .talent-node__frame{border-color:gold;box-shadow:inset 0 0 0 1px rgba(255,215,0,.35),0 0 10px rgba(255,215,0,.45),0 0 18px rgba(255,165,0,.22)}.talent-node--maxed .talent-node__frame{border-color:#3fb950;box-shadow:inset 0 0 0 1px rgba(63,185,80,.35),0 0 8px rgba(63,185,80,.28)}.talent-node--maxed .talent-node__icon{filter:saturate(1.12) brightness(1.08) contrast(1.03)}.talent-node__rank-badge{position:absolute;right:2px;bottom:1px;min-width:16px;height:16px;padding:0 3px;border-radius:4px;font-size:11px;font-weight:800;line-height:16px;text-align:center;color:#fff;background:rgba(0,0,0,.72);border:1px solid rgba(255,215,0,.45);text-shadow:0 1px 2px rgba(0,0,0,.8);pointer-events:none}.talent-node--maxed .talent-node__rank-badge{border-color:rgba(63,185,80,.65);color:#b7f5c4}.talent-node.talent-node--synergy-glow .talent-node__frame{animation:1.15s ease-in-out infinite talent-synergy-pulse;border-color:var(--gold-primary)!important;box-shadow:0 0 0 1px var(--gold-dark),0 0 22px rgba(255,215,0,.55)!important}.talent-node.talent-node--synergy-glow .talent-node__icon{filter:none!important}@keyframes talent-synergy-pulse{0%,100%{filter:brightness(1)}50%{filter:brightness(1.18)}}.talent-node-wrap:focus-within .talent-node--active,.talent-node-wrap:hover .talent-node--active{transform:translateY(-2px)}.talent-node-wrap:focus-within .talent-node__frame,.talent-node-wrap:hover .talent-node__frame{border-color:#ffe566;box-shadow:inset 0 0 0 1px rgba(255,215,0,.4),0 0 14px rgba(255,215,0,.5)}.talent-node-wrap:focus-within .talent-node--unlearned .talent-node__icon,.talent-node-wrap:hover .talent-node--unlearned .talent-node__icon{filter:grayscale(.2) brightness(.88) saturate(.95)}.talent-node-wrap:focus-within .talent-node--unlearned .talent-node__frame::after,.talent-node-wrap:hover .talent-node--unlearned .talent-node__frame::after{background:rgba(0,0,0,.08)}.talent-node-tooltip{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translateX(-50%);min-width:220px;max-width:min(300px,88vw);padding:.55rem .7rem .6rem;border-radius:6px;font-size:var(--font-size-xs);line-height:1.45;color:#e8e0d0;background:linear-gradient(180deg,#1c1814 0,#12100e 100%);border:2px solid #5c4a28;box-shadow:0 10px 28px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.04);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s,visibility .16s;z-index:30}[data-theme=light] .talent-node-tooltip{color:#2a2218;background:linear-gradient(180deg,#faf3e4 0,#efe2c8 100%);border-color:#8b6914;box-shadow:0 10px 24px rgba(15,23,42,.14),inset 0 1px 0 rgba(255,255,255,.65)}.talent-node-tooltip__title{margin:0 0 .3rem;font-size:13px;font-weight:800;line-height:1.25;color:gold;text-shadow:0 1px 2px rgba(0,0,0,.65)}[data-theme=light] .talent-node-tooltip__title{color:#8b6914;text-shadow:none}.talent-node-tooltip__desc{margin:0 0 .35rem;color:#d8d0c0}[data-theme=light] .talent-node-tooltip__desc{color:#3d3428}.talent-node-tooltip__bonus{margin:0 0 .3rem;font-weight:600;color:#7ee787}[data-theme=light] .talent-node-tooltip__bonus{color:#1a7f37}.talent-node-tooltip__rank{margin:0;color:#c4b8a0;font-size:11px}[data-theme=light] .talent-node-tooltip__rank{color:#5c4f3d}.talent-node-tooltip__action{margin:.35rem 0 0;font-weight:700;color:#7ee787;font-size:11px}[data-theme=light] .talent-node-tooltip__action{color:#1a7f37}.talent-node-wrap:focus-within .talent-node-tooltip,.talent-node-wrap:hover .talent-node-tooltip{opacity:1;visibility:visible}@media (max-width:520px){.talent-tree-root{padding:1rem .35rem 1.25rem}.talent-tree-row{gap:.5rem .85rem}.talent-node,.talent-node-wrap,.talent-node__frame{width:56px;height:56px}.talent-node__icon,.talent-node__icon--fallback{width:48px;height:48px}}.landing{display:flex;flex-direction:column;gap:var(--space-xl);max-width:1040px;margin:0 auto}.landing>section{opacity:0;animation:.7s cubic-bezier(.22,1,.36,1) forwards landing-fade-up}.landing>section:first-child{animation-delay:50ms}.landing>section:nth-child(2){animation-delay:.15s}.landing>section:nth-child(3){animation-delay:.25s}.landing>section:nth-child(4){animation-delay:.35s}.landing>section:nth-child(5){animation-delay:.45s}.landing>section:nth-child(6){animation-delay:.55s}.landing>section:nth-child(7){animation-delay:.65s}@keyframes landing-fade-up{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}.landing-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,0.85fr);gap:var(--space-lg);align-items:center;padding:40px 32px;border-radius:22px;border:1px solid var(--color-border);background:radial-gradient(circle at 0 0,rgba(250,204,21,.16),transparent 52%),radial-gradient(circle at 100% 100%,rgba(91,140,255,.16),transparent 55%),var(--color-bg-card);box-shadow:var(--shadow-card)}.landing-hero-glow{position:absolute;inset:-40% -10% auto auto;width:60%;height:160%;background:radial-gradient(circle at 70% 30%,rgba(250,204,21,.28),transparent 60%),radial-gradient(circle at 30% 70%,rgba(91,140,255,.22),transparent 60%);filter:blur(20px);pointer-events:none;z-index:0;animation:14s ease-in-out infinite landing-orb-drift}@keyframes landing-orb-drift{0%,100%{transform:translate(0,0) scale(1);opacity:.9}50%{transform:translate(-6%,8%) scale(1.12);opacity:1}}.landing-hero-content,.landing-hero-visual{position:relative;z-index:1}.landing-badge{display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;padding:6px 14px;border-radius:999px;font-size:var(--font-size-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--gold-primary);border:1px solid rgba(250,204,21,.45);background:rgba(250,204,21,.1)}.landing-badge-dot{width:8px;height:8px;border-radius:999px;background:var(--gold-primary);box-shadow:0 0 0 0 rgba(250,204,21,.6);animation:2s ease-out infinite landing-pulse-dot}@keyframes landing-pulse-dot{0%{box-shadow:0 0 0 0 rgba(250,204,21,.55)}70%{box-shadow:0 0 0 8px rgba(250,204,21,0)}100%{box-shadow:0 0 0 0 rgba(250,204,21,0)}}.landing-hero-title{margin:0 0 14px;font-size:clamp(28px, 4.2vw, 42px);line-height:1.13;letter-spacing:-.02em}.landing-gold{position:relative;background:linear-gradient(100deg,var(--gold-dark) 0,var(--gold-primary) 30%,#fff6cf 50%,var(--gold-primary) 70%,var(--gold-dark) 100%);background-size:220% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:5s linear infinite landing-gold-shimmer}@keyframes landing-gold-shimmer{0%{background-position:200% center}100%{background-position:-20% center}}.landing-hero-lead{margin:0 0 22px;max-width:52ch;font-size:var(--font-size-lg);line-height:1.55;color:var(--color-text-secondary)}.landing-hero-lead strong{color:var(--color-text-main);font-weight:600}.landing-hero-actions{display:flex;flex-wrap:wrap;gap:12px}.landing-cta-primary{position:relative;overflow:hidden;min-width:168px;padding:13px 24px;font-size:var(--font-size-base);font-weight:700;background:var(--gold-gradient);color:var(--text-on-gold);box-shadow:0 6px 20px rgba(212,175,55,.35)}.landing-cta-primary::after{content:"";position:absolute;top:0;left:-120%;width:60%;height:100%;background:linear-gradient(100deg,transparent 0,rgba(255,255,255,.55) 50%,transparent 100%);transform:skewX(-18deg);animation:3.6s ease-in-out infinite landing-cta-sheen}@keyframes landing-cta-sheen{0%,100%{left:-120%}40%,60%{left:140%}}.landing-cta-primary:hover{background:var(--gold-gradient);box-shadow:0 10px 30px rgba(212,175,55,.55);transform:translateY(-2px)}.landing-cta-secondary{min-width:120px;padding:13px 24px;font-size:var(--font-size-base);transition:transform .15s,border-color .2s,color .2s}.landing-cta-secondary:hover{transform:translateY(-2px)}.landing-hero-visual{display:grid;gap:14px;align-content:center}.landing-stat-card{position:relative;padding:18px 20px;border-radius:16px;border:1px solid var(--color-border);background:rgba(15,17,21,.55);backdrop-filter:blur(6px);transition:transform .25s,border-color .25s,box-shadow .25s;animation:6s ease-in-out infinite landing-float}.landing-hero-visual .landing-stat-card:first-child{animation-delay:0s}.landing-hero-visual .landing-stat-card:nth-child(2){animation-delay:1.1s}.landing-hero-visual .landing-stat-card:nth-child(3){animation-delay:2.2s}@keyframes landing-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}[data-theme=light] .landing-stat-card{background:rgba(255,255,255,.85)}.landing-stat-card:hover{transform:translateY(-5px);border-color:rgba(212,175,55,.6);box-shadow:0 14px 32px rgba(0,0,0,.3),0 0 22px rgba(250,204,21,.18)}.landing-stat-card--accent{border-color:rgba(250,204,21,.45);background:radial-gradient(circle at top right,rgba(250,204,21,.16),transparent 60%),rgba(15,17,21,.55)}[data-theme=light] .landing-stat-card--accent{background:radial-gradient(circle at top right,rgba(250,204,21,.18),transparent 60%),rgba(255,255,255,.92)}.landing-stat-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin-bottom:10px;border-radius:11px;font-size:20px;background:rgba(250,204,21,.12);border:1px solid rgba(250,204,21,.28)}.landing-stat-label{margin:0 0 4px;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-muted)}.landing-stat-value{margin:0;font-size:22px;font-weight:700;line-height:1.2}.landing-stat-value--xl{font-size:clamp(34px, 5vw, 46px);letter-spacing:-.02em;background:linear-gradient(100deg,var(--gold-dark) 0,var(--gold-primary) 35%,#fff6cf 50%,var(--gold-primary) 65%,var(--gold-dark) 100%);background-size:220% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:4s linear infinite landing-gold-shimmer}.landing-stat-hint{margin:6px 0 0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.landing-highlight-band{position:relative;overflow:hidden;padding:28px 30px;border-radius:20px;border:1px solid var(--color-border);background:radial-gradient(circle at top left,rgba(250,204,21,.16),transparent 55%),radial-gradient(circle at bottom right,rgba(56,189,248,.16),transparent 55%),var(--color-bg-card);box-shadow:var(--shadow-card)}.landing-highlight-band-glow{position:absolute;inset:auto -15% -60% auto;width:50%;height:150%;background:radial-gradient(circle,rgba(56,189,248,.22),transparent 62%);filter:blur(24px);pointer-events:none;animation:16s ease-in-out infinite reverse landing-orb-drift}.landing-highlight-band-inner{position:relative;z-index:1;display:flex;align-items:flex-start;gap:18px}.landing-highlight-emoji{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:15px;font-size:28px;background:rgba(250,204,21,.12);border:1px solid rgba(250,204,21,.3);animation:5.5s ease-in-out infinite landing-float}.landing-highlight-band-title{margin:4px 0 14px;font-size:clamp(20px, 3vw, 26px);letter-spacing:-.01em}.landing-highlight-list{margin:0;padding:0;display:flex;flex-direction:column;gap:10px;list-style:none;color:var(--color-text-secondary);font-size:var(--font-size-base);line-height:1.5}.landing-highlight-list li{position:relative;padding-left:28px}.landing-highlight-list li::before{content:"✓";position:absolute;left:0;top:0;display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;border-radius:999px;font-size:11px;font-weight:700;color:var(--text-on-gold);background:var(--gold-gradient)}.landing-section{display:flex;flex-direction:column;gap:var(--space-md)}.landing-section-title{margin:0;font-size:clamp(22px, 3vw, 28px);letter-spacing:-.01em}.landing-section-lead{margin:-4px 0 0;max-width:62ch;color:var(--color-text-secondary);font-size:var(--font-size-base);line-height:1.5}.landing-game-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md)}.landing-game-card{position:relative;overflow:hidden;padding:22px;border-radius:18px;border:1px solid var(--color-border);background:var(--color-bg-card);box-shadow:var(--shadow-card);transition:transform .25s,border-color .25s,box-shadow .25s}.landing-accent--gold{--landing-accent:linear-gradient(90deg, #facc15, #f59e0b);--landing-accent-border:rgba(250, 204, 21, 0.6);--landing-accent-glow:rgba(250, 204, 21, 0.22)}.landing-accent--green{--landing-accent:linear-gradient(90deg, #34d399, #10b981);--landing-accent-border:rgba(52, 211, 153, 0.6);--landing-accent-glow:rgba(52, 211, 153, 0.2)}.landing-accent--purple{--landing-accent:linear-gradient(90deg, #c084fc, #a855f7);--landing-accent-border:rgba(192, 132, 252, 0.6);--landing-accent-glow:rgba(192, 132, 252, 0.2)}.landing-accent--blue{--landing-accent:linear-gradient(90deg, #60a5fa, #3b82f6);--landing-accent-border:rgba(96, 165, 250, 0.6);--landing-accent-glow:rgba(96, 165, 250, 0.2)}.landing-accent--cyan{--landing-accent:linear-gradient(90deg, #22d3ee, #06b6d4);--landing-accent-border:rgba(34, 211, 238, 0.6);--landing-accent-glow:rgba(34, 211, 238, 0.2)}.landing-accent--orange{--landing-accent:linear-gradient(90deg, #fb923c, #f97316);--landing-accent-border:rgba(251, 146, 60, 0.6);--landing-accent-glow:rgba(251, 146, 60, 0.2)}.landing-benefit::before,.landing-feature-card::before,.landing-game-card::before,.landing-step::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--landing-accent,var(--gold-gradient));transform:scaleX(0);transform-origin:left;transition:transform .3s}.landing-benefit:hover,.landing-feature-card:hover,.landing-game-card:hover,.landing-step:hover{transform:translateY(-5px);border-color:var(--landing-accent-border,rgba(212,175,55,.6));box-shadow:0 16px 36px rgba(0,0,0,.4),0 0 26px var(--landing-accent-glow,rgba(250,204,21,.2))}.landing-benefit:hover::before,.landing-feature-card:hover::before,.landing-game-card:hover::before,.landing-step:hover::before{transform:scaleX(1)}.landing-game-icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;margin-bottom:14px;border-radius:13px;font-size:24px;background:rgba(255,255,255,.04);border:1px solid var(--color-border);transition:transform .25s}.landing-game-card:hover .landing-game-icon{transform:scale(1.1) rotate(-6deg)}.landing-game-tag{display:inline-block;margin-bottom:10px;margin-left:10px;padding:3px 10px;border-radius:999px;font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--gold-primary);border:1px solid rgba(250,204,21,.35);background:rgba(250,204,21,.08);vertical-align:middle}.landing-game-title{margin:0 0 8px;font-size:var(--font-size-lg)}.landing-game-text{margin:0;font-size:var(--font-size-sm);line-height:1.5;color:var(--color-text-secondary)}.landing-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-md)}.landing-features--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-feature-card{position:relative;overflow:hidden;padding:22px;border-radius:18px;border:1px solid var(--color-border);background:var(--color-bg-card);box-shadow:var(--shadow-card);transition:transform .25s,border-color .25s,box-shadow .25s}.landing-feature-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin-bottom:14px;border-radius:13px;font-size:22px;background:rgba(255,255,255,.04);border:1px solid var(--color-border);transition:transform .25s,border-color .25s}.landing-feature-card:hover .landing-feature-icon{border-color:var(--landing-accent-border,rgba(212,175,55,.5));transform:scale(1.1) rotate(-6deg)}.landing-feature-title{margin:0 0 8px;font-size:var(--font-size-lg)}.landing-feature-text{margin:0;font-size:var(--font-size-sm);line-height:1.5;color:var(--color-text-secondary)}.landing-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md);margin:0;padding:0;list-style:none}.landing-benefit{position:relative;overflow:hidden;padding:20px 22px;border-radius:16px;border:1px solid var(--color-border);background:var(--color-bg-secondary);transition:transform .25s,border-color .25s,box-shadow .25s}.landing-benefit-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;margin-bottom:12px;border-radius:12px;font-size:20px;background:rgba(255,255,255,.04);border:1px solid var(--color-border);transition:transform .25s,border-color .25s}.landing-benefit:hover .landing-benefit-icon{transform:scale(1.1) rotate(-6deg);border-color:var(--landing-accent-border,rgba(212,175,55,.5))}.landing-benefit strong{display:block;margin-bottom:6px;font-size:var(--font-size-base);color:var(--color-text-main)}.landing-benefit span{font-size:var(--font-size-sm);line-height:1.5;color:var(--color-text-secondary)}.landing-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-md)}.landing-step{position:relative;overflow:hidden;padding:24px 20px 20px;border-radius:16px;border:1px solid var(--color-border);background:var(--color-bg-card);transition:transform .25s,border-color .25s,box-shadow .25s}.landing-step-num{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin-bottom:12px;border-radius:999px;font-size:var(--font-size-base);font-weight:700;color:var(--text-on-gold);background:var(--gold-gradient);box-shadow:0 4px 14px rgba(212,175,55,.4)}.landing-step-title{margin:0 0 6px;font-size:var(--font-size-base)}.landing-step-text{margin:0;font-size:var(--font-size-sm);line-height:1.5;color:var(--color-text-secondary)}.landing-cta-band{position:relative;overflow:hidden;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-md);padding:30px 32px;border-radius:20px;border:1px solid rgba(250,204,21,.4);background:radial-gradient(circle at left center,rgba(250,204,21,.16),transparent 58%),var(--color-bg-card)}.landing-cta-band-glow{position:absolute;inset:-60% auto auto -10%;width:50%;height:220%;background:radial-gradient(circle,rgba(250,204,21,.26),transparent 62%);filter:blur(22px);pointer-events:none;animation:12s ease-in-out infinite landing-orb-drift}.landing-cta-band-text{position:relative;z-index:1;max-width:52ch}.landing-about-link-wrap{margin:0 0 10px}.landing-about-link{font-size:var(--font-size-sm);font-weight:600;color:var(--gold-primary);text-decoration:none;border-bottom:1px solid rgba(212,175,55,.45);transition:color .2s,border-color .2s}.landing-about-link:hover{color:var(--color-text-main);border-bottom-color:var(--gold-primary)}.landing-cta-band-title{margin:0 0 6px;font-size:var(--font-size-xl)}.landing-cta-band-lead{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.5}.landing-cta-band-actions{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:12px}@media (max-width:900px){.landing-hero{grid-template-columns:1fr;padding:28px 22px}.landing-hero-visual{grid-template-columns:repeat(3,minmax(0,1fr))}.landing-features{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.landing{gap:var(--space-lg)}.landing-hero-visual{grid-template-columns:1fr}.landing-highlight-band{padding:22px}.landing-highlight-band-inner{flex-direction:column;gap:12px}.landing-benefits,.landing-features,.landing-features--compact,.landing-game-grid,.landing-steps{grid-template-columns:1fr}.landing-cta-band{padding:22px}.landing-cta-band-actions{width:100%}.landing-cta-band-actions .landing-cta-primary,.landing-cta-band-actions .landing-cta-secondary{flex:1 1 100%;justify-content:center}}@media (prefers-reduced-motion:reduce){.landing-badge-dot,.landing-cta-band-glow,.landing-cta-primary::after,.landing-gold,.landing-hero-glow,.landing-highlight-band-glow,.landing-highlight-emoji,.landing-stat-card,.landing-stat-value--xl,.landing>section{animation:none!important}.landing>section{opacity:1}}html.app-user-authed .about-guest-only,html.auth-pending-authed .about-guest-only{display:none!important}.about-page{max-width:880px;margin:0 auto;padding:8px 0 32px;display:flex;flex-direction:column;gap:20px}.about-page>*{opacity:0;animation:.7s cubic-bezier(.22,1,.36,1) forwards about-fade-up}.about-page>:first-child{animation-delay:50ms}.about-page>:nth-child(2){animation-delay:.16s}.about-page>:nth-child(3){animation-delay:.26s}.about-page>:nth-child(4){animation-delay:.36s}.about-page>:nth-child(5){animation-delay:.46s}.about-page>:nth-child(6){animation-delay:.56s}@keyframes about-fade-up{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.about-hero{position:relative;overflow:hidden;padding:40px 32px;border-radius:22px;border:1px solid var(--color-border);background:radial-gradient(circle at 0 0,rgba(250,204,21,.16),transparent 52%),radial-gradient(circle at 100% 100%,rgba(91,140,255,.16),transparent 55%),var(--color-bg-card);box-shadow:var(--shadow-card)}.about-hero-glow{position:absolute;inset:-45% -10% auto auto;width:60%;height:165%;background:radial-gradient(circle at 70% 30%,rgba(250,204,21,.28),transparent 60%),radial-gradient(circle at 30% 70%,rgba(91,140,255,.22),transparent 60%);filter:blur(22px);pointer-events:none;z-index:0;animation:14s ease-in-out infinite about-orb-drift}@keyframes about-orb-drift{0%,100%{transform:translate(0,0) scale(1);opacity:.9}50%{transform:translate(-6%,8%) scale(1.12);opacity:1}}.about-hero-content{position:relative;z-index:1}.about-badge-pill{display:inline-flex;align-items:center;gap:8px;margin-bottom:16px;padding:6px 14px;border-radius:999px;font-size:var(--font-size-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--gold-primary);border:1px solid rgba(250,204,21,.45);background:rgba(250,204,21,.1)}.about-badge-dot{width:8px;height:8px;border-radius:999px;background:var(--gold-primary);box-shadow:0 0 0 0 rgba(250,204,21,.6);animation:2s ease-out infinite about-pulse-dot}@keyframes about-pulse-dot{0%{box-shadow:0 0 0 0 rgba(250,204,21,.55)}70%{box-shadow:0 0 0 8px rgba(250,204,21,0)}100%{box-shadow:0 0 0 0 rgba(250,204,21,0)}}.about-title{margin:0 0 16px;font-size:clamp(28px, 4.2vw, 40px);line-height:1.13;letter-spacing:-.02em}.about-gold{background:linear-gradient(100deg,var(--gold-dark) 0,var(--gold-primary) 30%,#fff6cf 50%,var(--gold-primary) 70%,var(--gold-dark) 100%);background-size:220% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:5s linear infinite about-gold-shimmer}@keyframes about-gold-shimmer{0%{background-position:200% center}100%{background-position:-20% center}}.about-intro{margin:0 0 24px;max-width:62ch;font-size:var(--font-size-lg);line-height:1.55;color:var(--color-text-secondary)}.about-author-inline{font-weight:600;color:var(--color-text-main)}.about-stats{display:flex;flex-wrap:wrap;gap:14px;margin:0 0 26px;padding:0;list-style:none}.about-stat{flex:1 1 150px;display:flex;flex-direction:column;gap:4px;padding:16px 18px;border-radius:16px;border:1px solid var(--color-border);background:rgba(15,17,21,.4);transition:transform .25s,border-color .25s,box-shadow .25s}[data-theme=light] .about-stat{background:rgba(255,255,255,.7)}.about-stat:hover{transform:translateY(-4px);border-color:rgba(212,175,55,.7);box-shadow:0 10px 26px rgba(212,175,55,.28)}.about-stat-value{font-size:clamp(26px, 3.4vw, 32px);font-weight:800;line-height:1;background:var(--gold-gradient);-webkit-background-clip:text;background-clip:text;color:transparent}.about-stat-label{font-size:var(--font-size-sm);line-height:1.35;color:var(--color-text-secondary)}.about-hero-actions{display:flex;flex-wrap:wrap;gap:12px}.about-card{padding:24px}.about-card:hover{transform:translateY(-2px);border-color:rgba(212,175,55,.7);box-shadow:0 10px 28px rgba(212,175,55,.28)}.about-section-title{margin:0 0 14px;font-size:var(--font-size-xl);line-height:1.25}.about-section p{margin:0 0 12px;line-height:1.6;color:var(--color-text-secondary)}.about-section p:last-child{margin-bottom:0}.about-list{margin:0;padding-left:1.25rem;display:flex;flex-direction:column;gap:10px;line-height:1.55;color:var(--color-text-secondary)}.about-list strong{color:var(--color-text-main)}.about-table-wrap{overflow-x:auto;margin:0 -4px;padding:0 4px}.about-table{width:100%;min-width:520px;border-collapse:collapse;font-size:var(--font-size-sm);line-height:1.45}.about-table td,.about-table th{padding:12px 14px;border:1px solid var(--color-border);text-align:left;vertical-align:top}.about-table thead th{background:rgba(212,175,55,.1);font-weight:600;color:var(--color-text-main)}.about-table tbody td:first-child{color:var(--color-text-secondary);width:38%}.about-table tbody td:last-child{color:var(--color-text-main)}.about-table tbody tr{transition:background-color .2s}.about-table tbody tr:hover td{background:rgba(212,175,55,.07)}[data-theme=light] .about-table thead th{background:rgba(212,175,55,.14)}.about-cta{position:relative;overflow:hidden;padding:36px 32px;border-radius:20px;border:1px solid rgba(250,204,21,.4);text-align:center;background:radial-gradient(circle at 50% 0,rgba(250,204,21,.18),transparent 60%),var(--color-bg-card);box-shadow:var(--shadow-card)}.about-cta-glow{position:absolute;inset:-60% auto auto 50%;width:55%;height:220%;transform:translateX(-50%);background:radial-gradient(circle,rgba(250,204,21,.26),transparent 62%);filter:blur(24px);pointer-events:none;animation:12s ease-in-out infinite about-orb-drift}.about-cta-inner{position:relative;z-index:1}.about-cta-title{margin:0 0 10px;font-size:clamp(22px, 3vw, 28px);line-height:1.2}.about-cta-lead{margin:0 0 22px;color:var(--color-text-secondary);line-height:1.5}.about-cta-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.about-cta-primary{position:relative;overflow:hidden;min-width:168px;padding:13px 26px;font-size:var(--font-size-base);font-weight:700;box-shadow:0 6px 20px rgba(212,175,55,.35)}.about-cta-primary:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(212,175,55,.55)}.about-cta-secondary{min-width:120px;padding:13px 26px;font-size:var(--font-size-base);transition:transform .15s}.about-cta-secondary:hover{transform:translateY(-2px)}.privacy-card{max-width:820px;margin:0 auto;padding:24px}.privacy-title{margin:0 0 14px;font-size:clamp(24px, 3.2vw, 32px);line-height:1.2}.privacy-intro{margin:0 0 18px;line-height:1.55;color:var(--color-text-secondary)}.privacy-section-title{margin:24px 0 10px;font-size:var(--font-size-lg)}.privacy-list{margin:0 0 12px;padding-left:1.25rem;display:flex;flex-direction:column;gap:8px;line-height:1.55;color:var(--color-text-secondary)}.privacy-updated{margin:20px 0 0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.privacy-actions{margin-top:24px}@media (max-width:640px){.about-hero{padding:28px 20px}.about-card{padding:18px}.about-stat{flex-basis:100%}.about-cta-actions .primary-button,.about-cta-actions .secondary-button,.about-hero-actions .primary-button,.about-hero-actions .secondary-button{flex:1 1 100%}}@media (prefers-reduced-motion:reduce){.about-badge-dot,.about-cta-glow,.about-gold,.about-hero-glow,.about-page>*{animation:none!important}.about-page>*{opacity:1!important;transform:none!important}.about-gold{color:var(--gold-primary);-webkit-text-fill-color:var(--gold-primary)}}html.app-user-authed .parents-guest-only,html.app-user-guest .parents-student-authed-only,html.app-user-parent .parents-student-authed-only,html.auth-pending-authed .parents-guest-only{display:none!important}html.app-user-authed:not(.app-user-parent) .parents-student-authed-only{display:flex!important}.parents-page{max-width:1040px;margin:0 auto;padding:8px 0 40px;display:flex;flex-direction:column;gap:28px}.parents-page>*{opacity:0;animation:.65s cubic-bezier(.22,1,.36,1) forwards parents-fade-up}.parents-page>:first-child{animation-delay:40ms}.parents-page>:nth-child(2){animation-delay:.12s}.parents-page>:nth-child(3){animation-delay:.2s}.parents-page>:nth-child(4){animation-delay:.28s}.parents-page>:nth-child(5){animation-delay:.36s}.parents-page>:nth-child(6){animation-delay:.44s}@keyframes parents-fade-up{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.parents-hero{position:relative;overflow:hidden;padding:36px 28px;border-radius:24px;border:1px solid var(--color-border);background:radial-gradient(ellipse 80% 60% at 0 0,rgba(167,139,250,.18),transparent 55%),radial-gradient(ellipse 70% 50% at 100% 100%,rgba(250,204,21,.14),transparent 50%),var(--color-bg-card);box-shadow:var(--shadow-card)}.parents-hero-glow{position:absolute;inset:-30% auto auto -20%;width:55%;height:140%;background:radial-gradient(circle,rgba(167,139,250,.25),transparent 65%);filter:blur(28px);pointer-events:none;animation:12s ease-in-out infinite parents-glow-drift}@keyframes parents-glow-drift{0%,100%{transform:translate(0,0)}50%{transform:translate(8%,6%)}}.parents-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr 0.9fr;gap:28px;align-items:center}@media (max-width:820px){.parents-hero-grid{grid-template-columns:1fr}.parents-hero-visual{order:-1}}.parents-badge{display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;padding:6px 14px;border-radius:999px;font-size:var(--font-size-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#a78bfa;border:1px solid rgba(167,139,250,.45);background:rgba(167,139,250,.1)}.parents-badge-dot{width:8px;height:8px;border-radius:999px;background:#a78bfa;animation:2s ease-out infinite parents-pulse}@keyframes parents-pulse{0%{box-shadow:0 0 0 0 rgba(167,139,250,.5)}70%{box-shadow:0 0 0 8px rgba(167,139,250,0)}}.parents-title{margin:0 0 14px;font-size:clamp(28px, 4vw, 42px);line-height:1.12;letter-spacing:-.02em}.parents-gold{background:linear-gradient(100deg,var(--gold-dark),var(--gold-primary),#fff6cf,var(--gold-primary));background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:5s linear infinite parents-shimmer}@keyframes parents-shimmer{0%{background-position:200% center}100%{background-position:-20% center}}.parents-lead{margin:0 0 22px;max-width:52ch;font-size:var(--font-size-lg);line-height:1.55;color:var(--color-text-secondary)}.parents-hero-actions{display:flex;flex-wrap:wrap;gap:10px}.parents-hero-visual{padding:22px;display:grid;grid-template-columns:1fr 1fr;gap:12px;background:linear-gradient(145deg,rgba(167,139,250,.08),rgba(250,204,21,.06)),var(--color-bg-card)}.parents-mock-stat{padding:14px 16px;border-radius:14px;border:1px solid var(--color-border);background:rgba(15,17,21,.35);display:flex;flex-direction:column;gap:4px}[data-theme=light] .parents-mock-stat{background:rgba(255,255,255,.75)}.parents-mock-stat--wide{grid-column:1/-1}.parents-mock-label{font-size:.8rem;color:var(--color-text-secondary)}.parents-mock-value{font-size:1.35rem;font-weight:800;color:var(--gold-primary)}.parents-mock-caption{grid-column:1/-1;margin:4px 0 0;font-size:.85rem;color:var(--color-text-secondary);text-align:center}.parents-section-title{margin:0 0 18px;font-size:clamp(22px, 3vw, 28px)}.parents-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.parents-feature{padding:20px;transition:transform .2s,box-shadow .2s}.parents-feature:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(0,0,0,.12)}.parents-feature-icon{font-size:1.6rem;display:block;margin-bottom:10px}.parents-feature h3{margin:0 0 8px;font-size:1.05rem}.parents-feature p{margin:0;font-size:.92rem;line-height:1.5;color:var(--color-text-secondary)}.parents-steps{padding:24px 28px}.parents-steps-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:18px}.parents-step{display:flex;gap:16px;align-items:flex-start}.parents-step-num{flex-shrink:0;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;background:linear-gradient(135deg,var(--gold-primary),var(--gold-dark));color:#111}.parents-step h3{margin:0 0 6px;font-size:1.05rem}.parents-step p{margin:0;color:var(--color-text-secondary);line-height:1.5}.parents-steps-cta{margin-top:22px}.parents-benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.parents-benefit{padding:18px 20px}.parents-benefit h3{margin:0 0 8px;font-size:1rem}.parents-benefit p{margin:0;font-size:.92rem;color:var(--color-text-secondary);line-height:1.5}.parents-faq{padding:24px 28px}.parents-faq-item{border-bottom:1px solid var(--color-border);padding:12px 0}.parents-faq-item:last-child{border-bottom:none}.parents-faq-item summary{cursor:pointer;font-weight:600;list-style:none}.parents-faq-item summary::-webkit-details-marker{display:none}.parents-faq-item p{margin:10px 0 0;color:var(--color-text-secondary);line-height:1.5}.parents-cta-inner{padding:32px 28px;text-align:center;background:radial-gradient(circle at 50% 0,rgba(250,204,21,.12),transparent 55%),var(--color-bg-card)}.parents-cta-title{margin:0 0 10px;font-size:clamp(22px, 3vw, 30px)}.parents-cta-text{margin:0 0 20px;color:var(--color-text-secondary)}.parents-cta-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}