/**
 * Copyright (c) 2014 The xterm.js authors. All rights reserved.
 * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
 * https://github.com/chjj/term.js
 * @license MIT
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 *
 * Originally forked from (with the author's permission):
 *   Fabrice Bellard's javascript vt100 for jslinux:
 *   http://bellard.org/jslinux/
 *   Copyright (c) 2011 Fabrice Bellard
 *   The original design remains. The terminal itself
 *   has been extended to include xterm CSI codes, among
 *   other features.
 */.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;right:0;left:0;top:0;bottom:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}:root[data-theme=dark]{--bg: #090d14;--bg2: #121823;--bg3: #1b2330;--surface: linear-gradient(160deg, #161e2b, #0f141d);--border: #243044;--border-strong: #3a4861;--text: #eaf0f7;--muted: #93a1b4;--accent: #4f9dff;--accent-2: #43d68a;--accent-3: #8b7bff;--danger: #f85149;--glass: color-mix(in srgb, #121823 68%, transparent);--ring: color-mix(in srgb, var(--accent) 35%, transparent);--glow: 0 0 40px color-mix(in srgb, var(--accent) 22%, transparent);--shadow-sm: 0 2px 10px rgba(0,0,0,.35);--shadow-md: 0 12px 32px rgba(0,0,0,.45);--shadow-lg: 0 24px 64px rgba(0,0,0,.55);--radius: 16px}:root[data-theme=light]{--bg: #eef1f7;--bg2: #ffffff;--bg3: #e8ecf3;--surface: linear-gradient(160deg, #ffffff, #f4f7fc);--border: #d9e0ea;--border-strong: #c2ccda;--text: #111722;--muted: #59657a;--accent: #2f6fed;--accent-2: #14a05a;--accent-3: #7a5cff;--danger: #d62f2f;--glass: color-mix(in srgb, #ffffff 70%, transparent);--ring: color-mix(in srgb, var(--accent) 28%, transparent);--glow: 0 0 40px color-mix(in srgb, var(--accent) 14%, transparent);--shadow-sm: 0 2px 10px rgba(20,30,50,.07);--shadow-md: 0 12px 32px rgba(20,30,50,.1);--shadow-lg: 0 24px 64px rgba(20,30,50,.16);--radius: 16px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,-apple-system,Segoe UI,Roboto,Ubuntu,sans-serif;font-feature-settings:"cv02","cv03","cv04","cv11";-webkit-font-smoothing:antialiased;transition:background .25s,color .25s}:root[data-theme=dark] body{background:radial-gradient(900px 420px at 85% -10%,color-mix(in srgb,var(--accent) 9%,transparent),transparent 70%),radial-gradient(700px 380px at -10% 30%,color-mix(in srgb,var(--accent-2) 6%,transparent),transparent 70%),var(--bg);background-attachment:fixed}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1{font-size:1.85rem;font-weight:800;letter-spacing:-.02em;line-height:1.2}h2{font-size:1.25rem;font-weight:700;letter-spacing:-.01em}h3{font-size:.95rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.muted{color:var(--muted)}.small{font-size:.85rem}.mono{font-family:JetBrains Mono,Menlo,monospace}.center-page{display:grid;place-items:center;min-height:50vh;color:var(--muted)}.container{max-width:1200px;margin:0 auto;padding:1.25rem}.navbar{display:flex;align-items:center;gap:.75rem;padding:.6rem 1.25rem;background:color-mix(in srgb,var(--bg2) 82%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10}.nav-links a{position:relative;padding-bottom:2px}.nav-links a:hover{text-decoration:none;color:var(--accent)}.brand{font-weight:700;font-size:1.1rem;color:var(--text)}.brand:hover{text-decoration:none}.nav-links{display:flex;align-items:center;gap:1rem}.nav-links a{color:var(--text)}@media (min-width: 821px){.nav-links{gap:.6rem}.nav-links a:not(.btn):not(.nav-avatar){display:inline-flex;align-items:center;height:38px;padding:0 .7rem;border-radius:8px;font-weight:500;color:color-mix(in srgb,var(--text) 78%,transparent)}.nav-links a:not(.btn):not(.nav-avatar):hover{background:color-mix(in srgb,var(--text) 7%,transparent);color:var(--text)}.nav-links .btn{height:38px;display:inline-flex;align-items:center;padding:0 1.05rem;border-radius:9px;font-size:.9rem;font-weight:600}.nav-links .btn-ghost{background:transparent;border-color:color-mix(in srgb,var(--text) 20%,transparent);color:var(--text)}.nav-links .btn-ghost:hover{background:color-mix(in srgb,var(--text) 8%,transparent);border-color:color-mix(in srgb,var(--text) 34%,transparent);filter:none;box-shadow:none}}.points-chip{background:color-mix(in srgb,var(--accent) 14%,var(--bg3));border:1px solid color-mix(in srgb,var(--accent) 40%,var(--border));border-radius:999px;padding:.2rem .75rem;font-size:.85rem;font-weight:600}.icon-btn{background:none;border:none;font-size:1.1rem;cursor:pointer}.nav-toggle{display:none;background:none;border:none;cursor:pointer;font-size:1.4rem;line-height:1;color:var(--text);padding:4px 6px}.nav-meta{display:flex;align-items:center;gap:1rem}.nav-avatar-label{display:none}.btn{border:1px solid var(--border-strong);border-radius:10px;padding:.55rem 1.1rem;cursor:pointer;font-size:.95rem;font-weight:600;font-family:inherit;background:var(--bg3);color:var(--text);text-decoration:none;transition:transform .16s ease,filter .15s,box-shadow .22s,border-color .2s}.btn:hover,.btn:focus{filter:brightness(1.08);transform:translateY(-2px);text-decoration:none;box-shadow:0 6px 18px #0000004d,0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent)}.btn:active{transform:translateY(1px) scale(.99)}.btn-primary{background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent) 60%,var(--accent-2)));border-color:transparent;color:#fff;font-weight:600}.btn-primary:hover{filter:brightness(1.14);box-shadow:0 8px 26px color-mix(in srgb,var(--accent) 55%,transparent)}.btn-ghost{background:transparent}.btn-ghost:hover{border-color:color-mix(in srgb,var(--accent) 42%,var(--border-strong))}.btn-block{width:100%}.btn.danger{color:var(--danger)}.btn:disabled{opacity:.6;cursor:not-allowed}.admin-page{--auth-page-max: 1480px;display:grid;gap:1.15rem}.admin-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:1.2rem;padding:1.25rem;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));border-radius:14px;background:radial-gradient(720px 240px at 8% 0%,color-mix(in srgb,var(--accent) 16%,transparent),transparent),radial-gradient(520px 220px at 100% 0%,color-mix(in srgb,var(--accent-2) 9%,transparent),transparent),var(--surface);box-shadow:var(--shadow-md)}.admin-hero,.admin-stat,.admin-panel,.admin-table-wrap{animation:adminSurfaceIn .28s cubic-bezier(.22,1,.36,1) both}.admin-hero{animation-duration:.3s}.admin-hero-copy{max-width:760px}.admin-kicker{display:inline-block;margin-bottom:.35rem;color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.admin-hero h1{margin:0;font-size:clamp(1.5rem,2vw,2.15rem)}.admin-hero p{margin:.45rem 0 0;line-height:1.6}.admin-orbit-stage{position:relative;flex:0 0 230px;min-height:126px;display:grid;place-items:center;align-self:center;isolation:isolate}.admin-orbit-stage:before{content:"";position:absolute;top:6px;right:22px;bottom:6px;left:22px;border-radius:999px;background:radial-gradient(circle at 45% 45%,color-mix(in srgb,var(--accent) 26%,transparent),transparent 52%),radial-gradient(circle at 64% 54%,color-mix(in srgb,var(--accent-2) 18%,transparent),transparent 64%);filter:blur(22px);opacity:.75;animation:orbitGlow 5.8s ease-in-out infinite}.admin-globe{position:relative;z-index:2;width:104px;aspect-ratio:1;border-radius:50%;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 48%,var(--border));background:radial-gradient(circle at 28% 24%,rgba(255,255,255,.85),transparent 9%),radial-gradient(circle at 32% 28%,color-mix(in srgb,var(--accent) 70%,white),transparent 18%),radial-gradient(circle at 62% 72%,color-mix(in srgb,var(--accent-2) 24%,transparent),transparent 24%),linear-gradient(135deg,#123b60,#061d35 48%,#04101f);box-shadow:inset -18px -16px 26px #00000075,inset 14px 12px 22px #ffffff14,0 0 34px color-mix(in srgb,var(--accent) 26%,transparent);animation:globeFloat 5.6s ease-in-out infinite}.admin-globe:before{content:"";position:absolute;top:-4%;right:-4%;bottom:-4%;left:-4%;background:radial-gradient(ellipse at 14% 35%,transparent 0 12%,color-mix(in srgb,var(--accent-2) 74%,#d8fff0) 13% 20%,transparent 21%),radial-gradient(ellipse at 35% 22%,transparent 0 10%,color-mix(in srgb,var(--accent-2) 66%,#d8fff0) 11% 18%,transparent 19%),radial-gradient(ellipse at 54% 56%,transparent 0 13%,color-mix(in srgb,var(--accent-2) 74%,#d8fff0) 14% 24%,transparent 25%),radial-gradient(ellipse at 76% 35%,transparent 0 11%,color-mix(in srgb,var(--accent-2) 62%,#d8fff0) 12% 18%,transparent 19%),radial-gradient(ellipse at 88% 70%,transparent 0 8%,color-mix(in srgb,var(--accent-2) 64%,#d8fff0) 9% 15%,transparent 16%);background-size:190% 100%;mix-blend-mode:screen;opacity:.78;animation:globeMap 9s linear infinite}.admin-globe:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:repeating-linear-gradient(90deg,transparent 0 16px,rgba(206,236,255,.16) 17px 18px,transparent 19px 32px),repeating-linear-gradient(0deg,transparent 0 20px,rgba(206,236,255,.12) 21px 22px,transparent 23px 40px);opacity:.26;transform:rotate(-7deg)}.admin-globe-shine{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;border-radius:inherit;background:radial-gradient(circle at 30% 22%,rgba(255,255,255,.42),transparent 22%),linear-gradient(120deg,rgba(255,255,255,.16),transparent 38%,rgba(255,255,255,.05) 62%,transparent);pointer-events:none}.admin-orbit-ring{position:absolute;left:50%;top:50%;z-index:1;width:178px;height:58px;margin:-29px 0 0 -89px;border-radius:50%;border:1px solid color-mix(in srgb,var(--accent) 34%,transparent);box-shadow:0 0 18px color-mix(in srgb,var(--accent) 18%,transparent);opacity:.72}.admin-orbit-ring-one{transform:rotate(-17deg);animation:orbitTiltOne 8s linear infinite}.admin-orbit-ring-two{width:154px;height:46px;margin:-23px 0 0 -77px;border-color:color-mix(in srgb,var(--accent-2) 30%,transparent);transform:rotate(31deg);animation:orbitTiltTwo 10s linear infinite reverse}.admin-orbit-dot{position:absolute;left:50%;top:50%;z-index:4;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:999px;background:#fff;box-shadow:0 0 10px color-mix(in srgb,var(--accent) 90%,transparent),0 0 22px color-mix(in srgb,var(--accent-2) 60%,transparent);animation:orbitDot 6.6s linear infinite}@keyframes globeFloat{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-7px) rotate(2deg)}}@keyframes globeMap{0%{background-position:0% 0}to{background-position:-190% 0}}@keyframes orbitGlow{0%,to{opacity:.55;transform:scale(.94)}50%{opacity:.88;transform:scale(1.06)}}@keyframes orbitTiltOne{0%{transform:rotate(-17deg) rotate(0)}to{transform:rotate(-17deg) rotate(360deg)}}@keyframes orbitTiltTwo{0%{transform:rotate(31deg) rotate(0)}to{transform:rotate(31deg) rotate(360deg)}}@keyframes orbitDot{0%{transform:rotate(0) translate(88px) rotate(0)}to{transform:rotate(360deg) translate(88px) rotate(-360deg)}}.admin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.admin-head p{margin:.25rem 0 0;max-width:52ch}.admin-refresh-wrap{display:grid;justify-items:end;gap:.35rem}.admin-refresh-btn{min-width:132px;border-color:color-mix(in srgb,var(--accent) 42%,var(--border-strong))}.admin-refresh-btn:hover:not(:disabled){box-shadow:0 0 18px color-mix(in srgb,var(--accent) 28%,transparent)}.admin-refresh-btn.is-refreshing{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 70%,var(--border-strong));box-shadow:0 0 20px color-mix(in srgb,var(--accent) 24%,transparent)}.admin-refresh-icon{display:inline-block;line-height:1}.admin-refresh-btn.is-refreshing .admin-refresh-icon{animation:adminRefreshSpin .85s linear infinite}.admin-refresh-status{min-height:1em;text-align:right;color:var(--muted);font-weight:700}@keyframes adminRefreshSpin{to{transform:rotate(360deg)}}.admin-overview-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.85rem}.admin-overview-grid>*:nth-child(1){animation-delay:.01s}.admin-overview-grid>*:nth-child(2){animation-delay:.02s}.admin-overview-grid>*:nth-child(3){animation-delay:.03s}.admin-overview-grid>*:nth-child(4){animation-delay:.04s}.admin-overview-grid>*:nth-child(5){animation-delay:.05s}.admin-overview-grid>*:nth-child(6){animation-delay:.06s}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.9rem;margin:1.4rem 0}.admin-stat{position:relative;display:flex;align-items:center;gap:.85rem;min-width:0;border:1px solid var(--border);border-radius:12px;padding:.95rem;background:var(--bg2);overflow:hidden;transition:transform .14s ease,box-shadow .22s ease,border-color .22s}.admin-stat:hover{transform:translateY(-3px);box-shadow:0 12px 30px #00000047}.as-ic{flex-shrink:0;width:42px;height:42px;border-radius:10px;display:grid;place-items:center;font-size:1.3rem}.as-body{display:flex;flex-direction:column;min-width:0}.admin-stat strong{font-size:1.65rem;font-weight:800;line-height:1.05}.as-label{color:var(--muted);font-size:.8rem}.as-sub{color:var(--accent-2);font-size:.72rem;font-weight:600;margin-top:1px}.admin-stat.a-blue{background:linear-gradient(155deg,color-mix(in srgb,#4f9dff 10%,var(--bg2)),var(--bg2));border-color:color-mix(in srgb,#4f9dff 24%,var(--border))}.admin-stat.a-blue .as-ic{background:color-mix(in srgb,#4f9dff 22%,transparent)}.admin-stat.a-green{background:linear-gradient(155deg,color-mix(in srgb,#43d68a 10%,var(--bg2)),var(--bg2));border-color:color-mix(in srgb,#43d68a 24%,var(--border))}.admin-stat.a-green .as-ic{background:color-mix(in srgb,#43d68a 22%,transparent);animation:livePulse 2.4s ease-in-out infinite}.admin-stat.a-purple{background:linear-gradient(155deg,color-mix(in srgb,#9b8cff 10%,var(--bg2)),var(--bg2));border-color:color-mix(in srgb,#9b8cff 24%,var(--border))}.admin-stat.a-purple .as-ic{background:color-mix(in srgb,#9b8cff 22%,transparent)}.admin-stat.a-amber{background:linear-gradient(155deg,color-mix(in srgb,#f0a93c 10%,var(--bg2)),var(--bg2));border-color:color-mix(in srgb,#f0a93c 24%,var(--border))}.admin-stat.a-amber .as-ic{background:color-mix(in srgb,#f0a93c 22%,transparent)}.admin-stat.a-teal{background:linear-gradient(155deg,color-mix(in srgb,#2dd4bf 10%,var(--bg2)),var(--bg2));border-color:color-mix(in srgb,#2dd4bf 24%,var(--border))}.admin-stat.a-teal .as-ic{background:color-mix(in srgb,#2dd4bf 22%,transparent)}.admin-stat.a-red{background:linear-gradient(155deg,color-mix(in srgb,#ff6969 9%,var(--bg2)),var(--bg2));border-color:color-mix(in srgb,#ff6969 24%,var(--border))}.admin-stat.a-red .as-ic{background:color-mix(in srgb,#ff6969 20%,transparent)}.admin-chart-panel{margin-top:.95rem}.admin-chart-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:1rem;align-items:stretch}.admin-chart-bars{min-height:180px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.7rem;align-items:end;padding:.85rem .9rem .65rem;border:1px solid color-mix(in srgb,var(--accent) 16%,var(--border));border-radius:12px;background:linear-gradient(to top,color-mix(in srgb,var(--border) 36%,transparent) 1px,transparent 1px) 0 0 / 100% 25%,color-mix(in srgb,var(--bg) 35%,transparent)}.chart-day{min-width:0;height:100%;display:grid;grid-template-rows:minmax(120px,1fr) auto;gap:.45rem;align-items:end}.chart-bars{height:100%;display:flex;align-items:end;justify-content:center;gap:4px}.chart-bar{width:min(18px,26%);min-height:5px;border-radius:999px 999px 4px 4px;box-shadow:0 0 14px color-mix(in srgb,currentColor 18%,transparent)}.chart-active{color:var(--accent);background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 82%,#fff),var(--accent))}.chart-completions{color:var(--accent-2);background:linear-gradient(180deg,color-mix(in srgb,var(--accent-2) 82%,#fff),var(--accent-2))}.chart-signups{color:#f0a93c;background:linear-gradient(180deg,#f7c86c,#f0a93c)}.chart-label{color:var(--muted);font-size:.76rem;font-weight:800;text-align:center}.admin-chart-summary{display:grid;gap:.65rem}.admin-chart-summary>span{display:grid;gap:.12rem;padding:.75rem .85rem;border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--bg3) 44%,transparent)}.admin-chart-summary strong{font-size:1.35rem;line-height:1}.admin-chart-summary small{color:var(--muted);font-weight:750}.chart-legend{display:flex;flex-wrap:wrap;gap:.5rem .75rem;align-items:center;padding:.15rem .1rem;color:var(--muted);font-size:.78rem;font-weight:700}.chart-legend span{display:inline-flex;align-items:center;gap:.3rem}.legend-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.legend-dot.active{background:var(--accent)}.legend-dot.completions{background:var(--accent-2)}.legend-dot.signups{background:#f0a93c}.admin-presence-panel{margin-top:.95rem}.admin-presence-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.admin-presence-card{min-width:0;display:flex;align-items:center;gap:.85rem;padding:.95rem;border:1px solid color-mix(in srgb,var(--accent) 20%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--bg3) 54%,transparent);color:var(--text);cursor:pointer;font:inherit;text-align:left;transition:transform .16s ease,border-color .2s ease,box-shadow .22s ease,background .2s ease}.admin-presence-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 46%,var(--border))}.admin-presence-card.active{border-color:color-mix(in srgb,var(--accent-2) 60%,var(--border));background:radial-gradient(280px 120px at 0% 0%,color-mix(in srgb,var(--accent-2) 14%,transparent),transparent 70%),color-mix(in srgb,var(--bg3) 66%,transparent);box-shadow:0 0 22px color-mix(in srgb,var(--accent-2) 12%,transparent)}.presence-icon{flex:0 0 auto;width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent)}.admin-presence-card.active .presence-icon{background:color-mix(in srgb,var(--accent-2) 18%,transparent);color:var(--accent-2)}.presence-copy{min-width:0;display:grid;gap:.1rem}.presence-copy strong{font-size:1.5rem;line-height:1}.presence-copy span{color:var(--text);font-size:.88rem;font-weight:750}.presence-copy small{color:var(--muted);font-size:.76rem}.admin-presence-list{margin-top:.9rem;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));border-radius:12px;overflow:hidden;background:color-mix(in srgb,var(--bg) 36%,transparent)}.presence-list-head,.presence-row{display:grid;grid-template-columns:40px minmax(0,1fr) max-content;align-items:center;gap:.75rem;padding:.7rem .85rem}.presence-list-head{grid-template-columns:minmax(0,1fr) max-content;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg3) 34%,transparent)}.presence-filter-row{display:flex;flex-wrap:wrap;gap:.45rem;padding:.65rem .85rem;border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent);background:color-mix(in srgb,var(--bg2) 35%,transparent)}.presence-filter{border:1px solid color-mix(in srgb,var(--accent) 20%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--bg3) 48%,transparent);color:var(--muted);cursor:pointer;font:inherit;font-size:.78rem;font-weight:800;padding:.35rem .65rem}.presence-filter:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}.presence-filter.active{color:var(--text);border-color:color-mix(in srgb,var(--accent-2) 58%,var(--border));background:color-mix(in srgb,var(--accent-2) 12%,var(--bg3))}.presence-row+.presence-row{border-top:1px solid color-mix(in srgb,var(--border) 72%,transparent)}.presence-avatar{width:34px;height:34px;display:inline-grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 70%,#23314a),color-mix(in srgb,var(--accent-2) 64%,#14261f));color:#fff;font-size:.78rem;font-weight:850}.presence-user{min-width:0;display:grid;gap:.12rem}.presence-user strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.presence-time{color:var(--muted);font-size:.78rem;white-space:nowrap}.admin-empty-note{margin:0;padding:.9rem}@keyframes livePulse{0%,to{box-shadow:0 0 color-mix(in srgb,#43d68a 50%,transparent)}70%{box-shadow:0 0 0 7px color-mix(in srgb,#43d68a 0%,transparent)}}@keyframes adminSurfaceIn{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}.admin-skeleton{display:block;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--bg3) 78%,transparent),color-mix(in srgb,var(--accent) 12%,var(--bg2)),color-mix(in srgb,var(--bg3) 78%,transparent));background-size:220% 100%;animation:adminSkeletonSweep 1.15s ease-in-out infinite}.admin-stat-loading{min-height:88px;border-style:dashed;opacity:.92}.admin-stat-loading .as-ic{background:transparent;border-radius:10px}.admin-skeleton-number{width:44px;height:24px;margin-bottom:.34rem}.admin-skeleton-text{width:82px;height:12px;margin-bottom:.34rem}.admin-skeleton-short{width:110px;height:10px}.admin-skeleton-line{width:min(220px,100%);height:13px}.admin-skeleton-time{flex:0 0 54px;height:12px}.admin-skeleton-pill{width:76px;height:24px}.admin-feed-loading{display:grid;gap:.1rem}.admin-feed-placeholder{pointer-events:none}.admin-feed-placeholder .feed-icon{background:transparent}.admin-ticket-loading{pointer-events:none}@keyframes adminSkeletonSweep{0%{background-position:180% 0}to{background-position:-120% 0}}.admin-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.9fr) minmax(320px,.9fr);grid-template-areas:"activity support curriculum" "activity learners accounts";gap:.95rem;align-items:stretch}.admin-dashboard-grid>*:nth-child(1){animation-delay:.03s}.admin-dashboard-grid>*:nth-child(2){animation-delay:45ms}.admin-dashboard-grid>*:nth-child(3){animation-delay:.06s}.admin-dashboard-grid>*:nth-child(4){animation-delay:75ms}.admin-dashboard-grid>*:nth-child(5){animation-delay:.09s}.admin-dashboard-grid>*:nth-child(n+6){animation-delay:.105s}.admin-dashboard-grid>.admin-panel:nth-child(1){grid-area:activity}.admin-dashboard-grid>.admin-panel:nth-child(2){grid-area:support}.admin-dashboard-grid>.admin-panel:nth-child(3){grid-area:curriculum}.admin-dashboard-grid>.admin-panel:nth-child(4){grid-area:learners}.admin-dashboard-grid>.admin-panel:nth-child(5){grid-area:accounts}.admin-dashboard-grid>.admin-panel{height:100%;display:flex;flex-direction:column}.admin-dashboard-grid .admin-section-head{flex:0 0 auto}.admin-dashboard-grid .admin-feed-list,.admin-dashboard-grid .admin-feed-loading,.admin-dashboard-grid .admin-ticket-list,.admin-dashboard-grid .admin-mini-list,.admin-dashboard-grid .admin-snapshot-list{flex:1 1 auto}.admin-dashboard-grid .admin-ticket-list,.admin-dashboard-grid .admin-mini-list,.admin-dashboard-grid .admin-snapshot-list{align-content:start}.admin-panel{position:relative;min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1rem;box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .22s cubic-bezier(.22,1,.36,1),border-color .22s ease,box-shadow .28s ease,background .28s ease}.admin-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(120deg,transparent 0%,color-mix(in srgb,var(--accent) 8%,transparent) 28%,transparent 54%),radial-gradient(460px 160px at 12% 0%,color-mix(in srgb,var(--accent) 8%,transparent),transparent 70%);opacity:0;transform:translate(-18%);transition:opacity .28s ease,transform .42s ease}.admin-panel:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 28%,var(--border));box-shadow:var(--shadow-md),0 0 28px color-mix(in srgb,var(--accent) 12%,transparent)}.admin-panel:hover:before{opacity:1;transform:translate(0)}.admin-panel>*{position:relative;z-index:1}.admin-panel-wide{min-height:100%}.admin-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.9rem;margin-bottom:.85rem}.admin-section-head h2{display:flex;align-items:center;gap:.45rem;margin:0;color:var(--text);font-size:1rem;letter-spacing:0;text-transform:none}.admin-section-head p{margin:.25rem 0 0}.admin-feed{background:var(--bg2);border:1px solid var(--border);border-radius:18px;padding:1.1rem 1.2rem;margin-bottom:1.7rem}.feed-head{display:flex;align-items:center;gap:.5rem;margin:.1rem 0 0}.live-dot{width:9px;height:9px;border-radius:50%;background:#43d68a;animation:livePulse 1.8s ease-in-out infinite}.feed-list{list-style:none;padding:0;margin:.7rem 0 0;display:flex;flex-direction:column;gap:.1rem;max-height:400px;overflow-y:auto}.admin-feed-list{margin-top:0;max-height:460px}.feed-list::-webkit-scrollbar{width:8px}.feed-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:8px}.feed-item{display:flex;align-items:center;gap:.75rem;padding:.5rem .55rem;border-radius:12px;transition:background .15s,transform .18s ease}.feed-item:hover{background:color-mix(in srgb,var(--accent) 9%,transparent);transform:translate(3px)}.feed-icon{flex-shrink:0;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-size:.95rem;background:color-mix(in srgb,var(--accent) 13%,transparent)}.feed-text{flex:1;font-size:.9rem;min-width:0}.feed-text strong{font-weight:600}.feed-time{color:var(--muted);font-size:.78rem;white-space:nowrap}.admin-ticket-list,.admin-mini-list{display:grid;gap:.55rem}.admin-ticket{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.7rem;border:1px solid color-mix(in srgb,var(--text) 9%,transparent);border-radius:10px;background:color-mix(in srgb,var(--bg2) 76%,transparent);transition:transform .18s ease,border-color .2s ease,background .2s ease}.admin-ticket:hover{transform:translate(3px);border-color:color-mix(in srgb,var(--accent) 25%,var(--border));background:color-mix(in srgb,var(--accent) 7%,var(--bg2))}.admin-ticket strong,.admin-ticket span,.admin-mini-row strong,.admin-mini-row span{overflow:hidden;text-overflow:ellipsis}.admin-ticket>div:first-child{display:grid;gap:.1rem;min-width:0}.admin-ticket-meta{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;justify-content:flex-end}.admin-status-pill,.admin-role-pill{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:.12rem .55rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent);font-size:.72rem;font-weight:800;text-transform:lowercase}.admin-ticket-status{cursor:default;min-width:92px}.status-active,.status-open{color:var(--accent-2);border-color:color-mix(in srgb,var(--accent-2) 34%,var(--border));background:color-mix(in srgb,var(--accent-2) 8%,transparent)}.status-pending{color:#ffce3a;border-color:color-mix(in srgb,#ffce3a 42%,var(--border));background:color-mix(in srgb,#ffce3a 9%,transparent)}.status-approved{color:var(--accent-2);border-color:color-mix(in srgb,var(--accent-2) 36%,var(--border));background:color-mix(in srgb,var(--accent-2) 9%,transparent)}.status-rejected{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 44%,var(--border));background:color-mix(in srgb,var(--danger) 9%,transparent)}.status-private{color:var(--muted);border-color:color-mix(in srgb,var(--muted) 34%,var(--border));background:color-mix(in srgb,var(--muted) 7%,transparent)}.status-banned{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 48%,var(--border));background:color-mix(in srgb,var(--danger) 9%,transparent)}.admin-role-pill{margin-left:.4rem}.admin-snapshot-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.admin-snapshot-list span,.admin-mini-row{min-width:0;align-items:center;gap:.6rem;padding:.7rem;border-radius:10px;background:color-mix(in srgb,var(--bg2) 76%,transparent);border:1px solid color-mix(in srgb,var(--text) 8%,transparent);transition:transform .18s ease,border-color .2s ease,background .2s ease}.admin-mini-row{display:grid;grid-template-columns:32px minmax(0,1fr) max-content;min-height:46px}.admin-mini-row strong{justify-self:start;min-width:0;max-width:100%;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.admin-mini-row>.muted.small{justify-self:end;font-variant-numeric:tabular-nums;white-space:nowrap}.admin-snapshot-list span:hover,.admin-mini-row:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 24%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--bg2))}.admin-snapshot-list span{display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.admin-snapshot-list strong{font-size:1.1rem}.admin-snapshot-list small{color:var(--muted);font-size:.72rem;font-weight:700}.admin-review-panel{margin-top:.95rem}.admin-review-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.admin-review-card{min-width:0;display:grid;gap:.75rem;padding:.85rem;border:1px solid color-mix(in srgb,var(--accent) 17%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--bg2) 78%,transparent)}.admin-review-top,.admin-review-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.admin-review-top>div:first-child{display:grid;gap:.1rem;min-width:0}.admin-review-top strong,.admin-review-top span,.admin-review-message{overflow-wrap:break-word}.admin-review-meta{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;flex-wrap:wrap}.admin-review-stars{display:inline-flex;align-items:center;gap:.12rem;color:color-mix(in srgb,var(--muted) 65%,transparent)}.admin-review-stars svg.active{color:#ffce3a}.admin-review-message{margin:0;color:var(--text);line-height:1.55}.admin-review-actions{align-items:center;padding-top:.2rem;border-top:1px solid color-mix(in srgb,var(--text) 9%,transparent)}.admin-rank{display:inline-grid;justify-self:center;place-items:center;width:24px;height:24px;border-radius:999px;background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);font-weight:800;font-size:.78rem}.admin-user-dot{justify-self:center;width:9px;height:9px;border-radius:999px;background:var(--accent-2);box-shadow:0 0 12px color-mix(in srgb,var(--accent-2) 42%,transparent)}.admin-user-dot.is-banned{background:var(--danger);box-shadow:0 0 12px color-mix(in srgb,var(--danger) 42%,transparent)}.admin-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:10px}.admin-table-wrap .table{margin:0}.admin-users-table{table-layout:fixed;min-width:1120px}.admin-users-table th,.admin-users-table td{vertical-align:middle;white-space:nowrap}.admin-users-table th{letter-spacing:0}.admin-users-table th:nth-child(1),.admin-users-table td:nth-child(1){width:44px}.admin-users-table th:nth-child(2),.admin-users-table td:nth-child(2){width:165px}.admin-users-table th:nth-child(3),.admin-users-table td:nth-child(3){width:185px}.admin-users-table th:nth-child(4),.admin-users-table td:nth-child(4){width:230px}.admin-users-table th:nth-child(5),.admin-users-table td:nth-child(5){width:88px}.admin-users-table th:nth-child(6),.admin-users-table td:nth-child(6){width:74px}.admin-users-table th:nth-child(7),.admin-users-table td:nth-child(7){width:96px}.admin-users-table th:nth-child(8),.admin-users-table td:nth-child(8){width:128px}.admin-users-table th:nth-child(9),.admin-users-table td:nth-child(9){width:250px}.admin-users-table td:nth-child(4){overflow:hidden;text-overflow:ellipsis}.admin-table-wrap .table tr{transition:background .16s ease}.admin-table-wrap .table tbody tr:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}.admin-row-actions{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;justify-content:flex-end}.admin-panel .admin-form{padding:0;border:0;background:transparent;box-shadow:none}@media (max-width: 1280px){.admin-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-chart-layout{grid-template-columns:1fr}.admin-chart-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-review-list{grid-template-columns:1fr}.admin-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"activity activity" "support curriculum" "learners accounts"}}@media (max-width: 820px){.admin-hero{flex-direction:column}.admin-orbit-stage{width:100%;flex-basis:auto;min-height:108px}.admin-globe{width:88px}.admin-refresh-wrap{justify-items:start}.admin-overview-grid,.admin-dashboard-grid{grid-template-columns:1fr;grid-template-areas:"activity" "support" "curriculum" "learners" "accounts"}.admin-chart-summary,.admin-presence-tabs{grid-template-columns:1fr}.admin-snapshot-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 520px){.admin-chart-bars{gap:.35rem;padding-inline:.55rem}.chart-bars{gap:2px}.chart-label{font-size:.68rem}.admin-snapshot-list{grid-template-columns:1fr}.admin-ticket{align-items:flex-start;flex-direction:column}.admin-ticket-meta{justify-content:flex-start}.admin-review-top,.admin-review-actions{align-items:flex-start;flex-direction:column}.admin-review-meta,.admin-row-actions{justify-content:flex-start}.presence-list-head,.presence-row{grid-template-columns:34px minmax(0,1fr)}.presence-list-head{grid-template-columns:1fr}.presence-time{grid-column:2;justify-self:start}}@media (prefers-reduced-motion: reduce){.admin-orbit-stage:before,.admin-orbit-stage *,.admin-hero,.admin-stat,.admin-panel,.admin-table-wrap{animation:none!important}}.badges-head h1{margin-bottom:.2rem}.badge-track{max-width:420px;margin:.7rem 0 .5rem}.badge-shelf-link{font-size:.85rem;font-weight:600;color:var(--accent);align-self:center;white-space:nowrap}.badge-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:1rem;margin:.8rem 0 2rem}.badge-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.42rem;min-height:238px;background:radial-gradient(180px 110px at 50% 20%,color-mix(in srgb,var(--accent) 8%,transparent),transparent 70%),linear-gradient(180deg,color-mix(in srgb,var(--bg2) 92%,#111827),var(--bg2));border:1px solid color-mix(in srgb,var(--border) 82%,var(--accent));border-radius:18px;padding:1.05rem 1rem 1.15rem;transition:transform .14s ease,box-shadow .2s ease,border-color .2s}.badge-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #00000040}.badge-emblem{width:74px;height:74px;border-radius:50%;display:grid;place-items:center;margin-bottom:.3rem;color:var(--muted);background:radial-gradient(circle at 50% 32%,var(--bg3),color-mix(in srgb,var(--bg3) 65%,#000));border:1px solid var(--border)}.badge-emblem.badge-art{position:relative;width:118px;height:118px;border:0;border-radius:26px;background:transparent;box-shadow:none;isolation:isolate}.badge-emblem.badge-art:before,.badge-icon-lg.badge-art:before{content:"";position:absolute;top:8%;right:8%;bottom:8%;left:8%;z-index:-2;border-radius:28px;background:radial-gradient(circle at 50% 38%,rgba(255,255,255,.18),transparent 24%),radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--accent) 28%,transparent),transparent 62%),linear-gradient(180deg,color-mix(in srgb,var(--bg3) 94%,#1f2937),color-mix(in srgb,var(--bg) 90%,#020617));border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));box-shadow:inset 0 0 24px #ffffff0d,0 0 24px color-mix(in srgb,var(--accent) 13%,transparent),0 16px 28px #00000052}.badge-emblem.badge-art:after,.badge-icon-lg.badge-art:after{content:"";position:absolute;top:2%;right:2%;bottom:2%;left:2%;z-index:-1;border-radius:30px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 42%,transparent),transparent 32%,color-mix(in srgb,var(--accent-2) 32%,transparent));opacity:.18;filter:blur(7px)}.badge-card.earned{border-color:color-mix(in srgb,var(--accent-2) 35%,var(--border))}.badge-card.earned .badge-emblem,.badge-card.in-progress .badge-emblem{background:radial-gradient(circle at 50% 32%,color-mix(in srgb,currentColor 24%,var(--bg3)),var(--bg3));border-color:color-mix(in srgb,currentColor 48%,transparent);box-shadow:0 0 22px color-mix(in srgb,currentColor 22%,transparent)}.badge-card.earned .badge-emblem.badge-art,.badge-card.in-progress .badge-emblem.badge-art{background:transparent;border-color:transparent;box-shadow:none}.badge-card.locked .badge-emblem{color:var(--muted);opacity:.85}.badge-name{font-size:.98rem}.badge-status{font-size:.7rem;font-weight:700;padding:.12rem .65rem;border-radius:999px;margin-top:.2rem}.earned-tag{background:color-mix(in srgb,var(--accent-2) 20%,transparent);color:var(--accent-2)}.badge-progress{width:100%;display:flex;flex-direction:column;gap:.3rem;margin-top:.4rem}.badge-go{margin-top:.5rem}.points-chip{display:inline-flex;align-items:center;gap:.3rem}.icon-btn{display:inline-flex;align-items:center;justify-content:center;color:var(--muted)}.icon-btn:hover{color:var(--text)}.resume-cta,.resume-kicker,.resume-title{display:inline-flex;align-items:center;gap:.35rem}.resume-badge-img{width:24px;height:24px;flex:0 0 auto;filter:drop-shadow(0 0 8px rgba(67,214,138,.16))}.ch-icon{display:inline-flex;align-items:center;justify-content:center}.mod-ic{vertical-align:-3px}.podium-pts,.lb-pts{display:inline-flex;align-items:center;gap:.3rem}.badge-icon-lg{display:inline-flex;align-items:center;justify-content:center;color:var(--muted)}.badge-icon-lg.badge-art{position:relative;width:108px;height:108px;color:var(--muted);isolation:isolate}.stat-card strong{display:inline-flex;align-items:center;justify-content:center;gap:.3rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem}.desktop-notice{text-align:center}.desktop-notice h2{margin:.7rem 0 .5rem}.desktop-notice p{margin:0 0 1.3rem}.desktop-notice-icon{display:inline-grid;place-items:center;width:56px;height:56px;border-radius:14px;color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,transparent);border:1px solid color-mix(in srgb,var(--accent) 32%,transparent)}.dash-stat-icon{width:40px;height:40px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ds-amber{background:color-mix(in srgb,#f0a93c 22%,transparent);color:#f0a93c}.ds-gold{background:color-mix(in srgb,#ffce3a 22%,transparent);color:#ffce3a}.ds-orange{background:color-mix(in srgb,#ff6a3d 22%,transparent);color:#ff6a3d}.ds-green{background:color-mix(in srgb,#43d68a 22%,transparent);color:#43d68a}.module-head-text h2 .mod-ic{filter:drop-shadow(0 0 6px currentColor)}.module-bridge .mod-ic{color:var(--accent-2);vertical-align:-2px}.badge-card.earned .badge-emblem svg,.badge-card.in-progress .badge-emblem svg{filter:drop-shadow(0 0 9px currentColor)}.badge-img,.module-badge-img,.badge-pill-img,.resume-badge-img,.module-progress-badge{display:inline-block;object-fit:contain}.badge-img,.module-badge-img{width:100%;height:100%}.badge-emblem.badge-art .badge-img,.badge-icon-lg.badge-art .badge-img{position:relative;z-index:1;width:92%;height:92%;filter:drop-shadow(0 0 18px rgba(94,200,255,.18)) drop-shadow(0 14px 18px rgba(0,0,0,.3))}.badge-card.locked .badge-img,.badge-card.badge-locked .badge-img,.module-card.locked .module-badge-img{filter:grayscale(.72) opacity(.58)}.badge-lock-indicator{position:absolute;right:.45rem;bottom:.45rem;width:22px;height:22px;display:inline-grid;place-items:center;border-radius:999px;color:var(--text);background:color-mix(in srgb,var(--bg) 88%,transparent);border:1px solid color-mix(in srgb,var(--text) 16%,transparent);box-shadow:var(--shadow-sm)}.badge-card.locked .badge-emblem{opacity:.5}.footer-inner{flex-wrap:wrap;gap:.85rem}.footer-socials{display:flex;gap:.5rem;align-items:center}.footer-social{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;color:var(--muted);border:1px solid var(--border);transition:color .15s,border-color .15s,background .15s}.footer-social:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:color-mix(in srgb,var(--accent) 8%,transparent)}.auth-card{max-width:430px;margin:7vh auto;padding:2.4rem 2.4rem 2rem;background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow-lg)}.auth-card form{display:flex;flex-direction:column;gap:1.05rem}.auth-head{margin-bottom:1.6rem}.auth-kicker{display:inline-block;text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;font-weight:700;color:var(--accent);margin-bottom:.5rem}.auth-head h1{margin:0 0 .5rem}.auth-head p{margin:0;line-height:1.55;font-size:.95rem}.form-2col{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.field-hint{font-size:.78rem;color:var(--muted);margin-top:.15rem}.auth-foot{margin-top:1.3rem;text-align:center;font-size:.9rem}@media (max-width: 460px){.form-2col{grid-template-columns:1fr}}label{display:flex;flex-direction:column;gap:.4rem;font-size:.82rem;font-weight:600;color:var(--muted);letter-spacing:.01em}input,select,textarea{background:var(--bg2);border:1px solid var(--border-strong);border-radius:11px;padding:.72rem .85rem;color:var(--text);font-size:.95rem;font-weight:400;font-family:inherit;width:100%;transition:border-color .15s,box-shadow .15s,background .15s}input::placeholder{color:var(--muted);opacity:.7}input:hover,select:hover,textarea:hover{border-color:var(--accent)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);background:var(--bg);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}.password-field{position:relative}.password-field input{padding-right:44px}.password-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;line-height:0;background:none;border:none;cursor:pointer;color:var(--muted);transition:color .15s}.password-toggle:hover{color:var(--accent)}.error-box{background:color-mix(in srgb,var(--danger) 12%,transparent);border:1px solid var(--danger);color:var(--danger);border-radius:8px;padding:.6rem .8rem;font-size:.9rem}.dash-header{display:flex;justify-content:space-between;align-items:end;gap:2rem;flex-wrap:wrap}.dash-progress{min-width:240px;flex:0 0 240px}.dash-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.85rem;margin:1.3rem 0 .4rem}.dash-stat{display:flex;align-items:center;gap:.75rem;background:linear-gradient(180deg,var(--bg2),color-mix(in srgb,var(--bg2) 70%,var(--bg)));border:1px solid var(--border-strong);border-radius:14px;padding:.85rem 1rem;transition:transform .15s ease,border-color .2s ease}.dash-stat:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 45%,var(--border-strong))}.dash-stat-icon{font-size:1.6rem;line-height:1}.dash-stat strong{display:block;font-size:1.02rem;color:var(--text);line-height:1.2}.dash-stat .muted{font-size:.74rem}.badge-shelf{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.badge{display:inline-flex;align-items:center;gap:.35rem;background:var(--bg2);border:1px solid var(--border);border-radius:999px;padding:.2rem .75rem .2rem .35rem;font-size:.85rem}.badge-pill-img{width:28px;height:28px;border-radius:999px;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 12%,transparent),transparent 70%);filter:drop-shadow(0 0 9px rgba(94,200,255,.2))}.module-grid{display:grid;gap:1rem;margin-top:1rem;grid-template-columns:repeat(auto-fill,minmax(330px,1fr))}.module-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.15rem 1.3rem;transition:border-color .2s,transform .18s,box-shadow .2s;box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.module-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent),var(--accent-2));opacity:0;transition:opacity .2s}.module-card:hover{border-color:var(--border-strong);transform:translateY(-3px);box-shadow:var(--shadow-md)}.module-card:hover:before{opacity:1}.module-card.locked{opacity:.55}.module-card.in-progress:before{opacity:1}.module-card.completed:before{opacity:1;background:var(--accent-2)}.module-card.completed{border-color:color-mix(in srgb,var(--accent-2) 45%,var(--border-strong))}.module-head{min-height:78px;display:grid;grid-template-columns:76px minmax(0,1fr) 52px;align-items:center;gap:.85rem}.module-head-text{min-width:0;flex:1}.module-head-text h2{margin:0}.module-emblem{flex:0 0 auto;display:inline-grid;place-items:center;width:42px;height:42px;border-radius:11px;color:var(--accent);background:color-mix(in srgb,currentColor 16%,transparent);border:1px solid color-mix(in srgb,currentColor 32%,transparent)}.module-emblem.badge-art{position:relative;justify-self:center;align-self:center;width:72px;height:72px;border:0;border-radius:18px;background:radial-gradient(circle at 50% 38%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 64%),color-mix(in srgb,var(--bg3) 68%,transparent);box-shadow:inset 0 0 18px #ffffff0a,0 0 16px color-mix(in srgb,var(--accent) 10%,transparent)}.module-badge-img{position:absolute;top:50%;left:50%;width:64px;height:64px;transform:translate(-50%,-50%);object-position:center;filter:drop-shadow(0 0 13px rgba(94,200,255,.18)) drop-shadow(0 10px 14px rgba(0,0,0,.3))}.progress-ring{flex:0 0 auto;justify-self:end}.progress-ring-text{fill:var(--text);font-size:.8rem;font-weight:700;font-family:inherit}.challenge-list{list-style:none;padding:0;margin:.6rem 0 0}.challenge-list li{border-top:1px dashed var(--border)}.challenge-list a,.challenge-list .locked-item{display:flex;align-items:center;gap:.5rem;color:var(--text);padding:.45rem .4rem;border-radius:8px;transition:background .15s}.challenge-list a:hover{text-decoration:none;background:color-mix(in srgb,var(--accent) 8%,transparent)}.challenge-list a.done{color:var(--muted)}.challenge-list a.done .ch-title{text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--muted) 60%,transparent)}.ch-icon{font-size:.85rem;flex-shrink:0}.ch-title{flex:1}.challenge-list .pts{color:var(--muted);font-size:.78rem;flex-shrink:0}.locked-item{color:var(--muted)}.diff-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--muted)}.diff-beginner{background:var(--accent-2)}.diff-intermediate{background:var(--accent)}.diff-advanced{background:#e3a008}.diff-expert{background:var(--danger)}.progress-track{position:relative;height:18px;border-radius:999px;background:var(--bg3);border:1px solid var(--border);overflow:hidden;box-shadow:inset 0 1px 3px #00000040}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width .6s cubic-bezier(.4,0,.2,1);position:relative;box-shadow:0 0 12px color-mix(in srgb,var(--accent) 50%,transparent)}.progress-fill:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(255,255,255,.25),transparent 50%)}.progress-label{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:.7rem;font-weight:600}.challenge-layout{display:grid;grid-template-columns:420px 1fr;gap:1.25rem;min-height:calc(100vh - 120px)}@media (max-width: 900px){.challenge-layout{grid-template-columns:1fr}}.challenge-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.4rem;align-self:start;position:sticky;top:70px;box-shadow:var(--shadow-md)}.meta-row{display:flex;gap:.5rem;margin:.5rem 0 1rem}.chip{border:1px solid var(--border);border-radius:999px;padding:.1rem .6rem;font-size:.78rem;color:var(--muted)}.chip-beginner{color:var(--accent-2);border-color:var(--accent-2)}.chip-intermediate{color:var(--accent);border-color:var(--accent)}.chip-advanced{color:#d29922;border-color:#d29922}.chip-expert{color:var(--danger);border-color:var(--danger)}.chip-done{color:var(--accent-2);border-color:var(--accent-2)}.brief{line-height:1.65}.inline-code{background:var(--bg);border:1px solid var(--border);border-radius:5px;padding:.08rem .35rem;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.86em;color:var(--accent)}.task-box{background:var(--bg);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:8px;padding:.8rem 1rem;line-height:1.5}.challenge-nav{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.6rem}.resume-back-btn{margin-bottom:1rem}.reset-challenge-link{display:block;margin:.6rem auto 0}.back-module-name{margin-bottom:.2rem}.hint-area{margin-top:.4rem}.hint-nudge{background:color-mix(in srgb,var(--accent) 7%,var(--bg2));border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));border-radius:10px;padding:.8rem 1rem;display:grid;gap:.4rem}.hint-nudge p{margin:0;line-height:1.6}.hint-nudge strong{color:var(--accent);font-size:.8rem;text-transform:uppercase;letter-spacing:.06em}.hint-box{background:var(--bg);border:1px dashed var(--border);border-radius:8px;padding:.7rem .9rem;white-space:pre-wrap;font-size:.85rem;margin-top:.5rem}.validate-btn{margin-top:1rem;font-weight:600}.result-box{margin-top:1rem;border-radius:8px;padding:.9rem 1rem;display:grid;gap:.5rem}.result-box.pass{background:#06090e;border:1px solid color-mix(in srgb,var(--accent-2) 75%,transparent);box-shadow:0 0 24px color-mix(in srgb,var(--accent-2) 18%,transparent)}.result-box.fail{background:color-mix(in srgb,var(--danger) 10%,transparent);border:1px solid var(--danger)}.badge-earned{font-weight:600}.result-title{font-size:1rem;letter-spacing:.01em}.pass-title{color:var(--accent-2)}.fail-title{color:var(--danger)}.points-earned{font-weight:700;color:var(--accent-2)}.feedback-box{display:flex;gap:.55rem;align-items:flex-start;background:var(--bg);border:1px solid var(--border);border-left:3px solid var(--danger);border-radius:8px;padding:.7rem .9rem;line-height:1.6;font-size:.92rem}.feedback-icon{flex-shrink:0}.settings-page{max-width:620px;margin:0 auto}.settings-id{display:flex;align-items:center;gap:1rem;margin:1rem 0 1.5rem;padding:1.1rem 1.3rem;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.settings-id strong{font-size:1.1rem}.settings-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.4rem;margin-bottom:1.2rem;box-shadow:var(--shadow-sm)}.settings-card h2{margin-top:0;margin-bottom:.9rem}.settings-card form{display:grid;gap:.9rem;max-width:380px}.settings-card .check-row{flex-direction:row;align-items:flex-start;gap:.65rem;color:var(--text);font-size:.95rem;line-height:1.4}.settings-card .check-row input{width:auto;flex:0 0 auto;margin-top:.12rem;accent-color:var(--accent-2)}.settings-danger{border-color:color-mix(in srgb,var(--danger) 35%,var(--border))}.btn-danger{background:var(--danger);color:#fff;border:1px solid var(--danger)}.btn-danger:hover{filter:brightness(1.1)}.btn-row{display:flex;gap:.6rem;margin-top:.5rem}.danger-heading{color:var(--danger);margin-top:2rem}.info-box{background:color-mix(in srgb,var(--accent) 10%,transparent);border:1px solid var(--accent);border-radius:8px;padding:.7rem .9rem;margin:.6rem 0;font-size:.92rem}.row-banned td{opacity:.55;text-decoration:line-through}.row-banned td:last-child{text-decoration:none}.level-progress{margin:.8rem 0 1.5rem;display:grid;gap:.35rem;max-width:480px}.level-bar{height:10px;background:var(--bg);border:1px solid var(--border);border-radius:999px;overflow:hidden}.level-bar.slim{height:7px;flex:1}.level-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width .4s ease}.badges-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.8rem;margin:.8rem 0 1.5rem}.badge-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;display:grid;gap:.25rem;justify-items:center;text-align:center;box-shadow:var(--shadow-sm);transition:transform .18s,box-shadow .2s}.badge-grid .badge-card,.badges-grid .badge-card{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.42rem;min-height:238px;padding:1.05rem 1rem 1.15rem;border-radius:18px;background:radial-gradient(180px 110px at 50% 20%,color-mix(in srgb,var(--accent) 8%,transparent),transparent 70%),linear-gradient(180deg,color-mix(in srgb,var(--bg2) 92%,#111827),var(--bg2));border:1px solid color-mix(in srgb,var(--border) 82%,var(--accent))}.badge-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.badge-icon-lg{font-size:1.8rem}.badge-locked{opacity:.55;filter:grayscale(.7)}.badge-locked strong{color:var(--muted)}.confetti-layer{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:70}.confetti-piece{position:absolute;top:-20px;border-radius:2px;opacity:.9;animation-name:confettiFall;animation-timing-function:ease-in;animation-fill-mode:forwards}@keyframes confettiFall{0%{transform:translateY(-20px) rotate(0);opacity:1}to{transform:translateY(105vh) rotate(540deg);opacity:0}}.module-progress-list{display:grid;gap:.5rem;margin:.8rem 0 1.5rem;max-width:640px}.module-progress-row{display:flex;align-items:center;gap:.8rem}.module-progress-badge{width:20px;height:20px;margin-right:.4rem;vertical-align:-5px;filter:drop-shadow(0 0 7px rgba(67,214,138,.14))}.module-bridge{font-size:.82rem;line-height:1.45;margin:.5rem 0 .2rem;padding:.5rem .7rem;border-radius:8px;color:var(--text);background:color-mix(in srgb,var(--accent) 9%,transparent);border-left:3px solid var(--accent)}.module-progress-label{flex:0 0 240px;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.demo-block{background:#0d1117;border:1px solid var(--border);border-radius:8px;padding:.8rem 1rem;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.85rem;line-height:1.7;overflow-x:auto}.demo-cmd{color:#e6edf3}.demo-prompt{color:#3fb950;font-weight:700;-webkit-user-select:none;user-select:none}.demo-out{color:#8b949e;white-space:pre-wrap}.challenge-terminal{background:#0d1117;border:1px solid var(--border);border-radius:12px;padding:.6rem;min-height:480px;display:flex;flex-direction:column}.terminal-shell{position:relative;flex:1 1 auto;min-height:0;overflow:hidden}.terminal-wrap{height:100%;min-height:0;overflow:hidden}.xterm-helper-textarea{font-size:16px!important}.terminal-wrap .xterm,.terminal-wrap .xterm-viewport,.terminal-wrap .xterm-screen{height:100%!important}.terminal-status{position:absolute;top:10px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.5rem;z-index:2;padding:.35rem .85rem;border-radius:999px;font-size:.8rem;font-weight:600;background:color-mix(in srgb,#0d1117 80%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid var(--border-strong);transition:opacity .4s ease}.terminal-status-connecting{color:var(--accent)}.terminal-status-reconnecting,.terminal-status-updating{color:#e3a008}.terminal-status-connected{color:var(--accent-2);animation:statusFade .9s ease forwards}.terminal-status-error{color:var(--danger)}@keyframes statusFade{0%,60%{opacity:1}to{opacity:0}}.terminal-full-panel{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;text-align:center;padding:1.5rem;background:color-mix(in srgb,#0d1117 80%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.tfp-badge{width:46px;height:46px;border-radius:50%;margin-bottom:.3rem;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,#e3a008 14%,transparent);border:1px solid color-mix(in srgb,#e3a008 35%,transparent)}.tfp-spinner{width:18px;height:18px;border-radius:50%;border:2px solid color-mix(in srgb,#e3a008 30%,transparent);border-top-color:#e3a008;animation:tfpSpin .8s linear infinite}@keyframes tfpSpin{to{transform:rotate(360deg)}}.tfp-title{color:var(--text);font-weight:700;font-size:1.05rem}.tfp-position{display:flex;align-items:baseline;gap:.4rem;margin:.15rem 0 .1rem}.tfp-position-num{color:#e3a008;font-weight:800;font-size:1.7rem;line-height:1}.tfp-position-label{color:#e3a008;font-size:.74rem;font-weight:600;letter-spacing:.4px;text-transform:uppercase}.tfp-body{color:var(--muted);font-size:.85rem;line-height:1.55;max-width:340px}.term-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:timerPulse 1s ease-in-out infinite}.terminal-footer{flex:0 0 auto;padding:.6rem .5rem .1rem;text-align:right}.term-keys{display:none}.start-note{margin-top:.6rem;line-height:1.5}.limit-inline{margin-top:1rem;padding:1rem 1.1rem;border-radius:12px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--bg2));display:grid;gap:.4rem}.limit-inline p{margin:0;line-height:1.55}.start-msg{margin:.8rem 0}.terminal-gate{min-height:460px;display:grid;place-items:center;border:1px dashed var(--border-strong);border-radius:10px;background:radial-gradient(500px 200px at 50% 30%,color-mix(in srgb,var(--accent) 8%,transparent),transparent)}.terminal-gate-inner{text-align:center;display:grid;gap:.3rem}.terminal-gate-icon{font-size:2.2rem}.table{width:100%;border-collapse:collapse;margin-top:1rem}.table th,.table td{text-align:left;padding:.55rem .7rem;border-bottom:1px solid var(--border)}.table th{color:var(--muted);font-size:.8rem;text-transform:uppercase}.stat-row{display:flex;gap:1rem;margin:1rem 0}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.6rem;display:grid;text-align:center;gap:.15rem;transition:transform .18s,border-color .2s,box-shadow .2s;box-shadow:var(--shadow-sm)}.stat-card:hover{transform:translateY(-3px);border-color:var(--border-strong);box-shadow:var(--shadow-md)}.stat-card strong{font-size:1.7rem;font-weight:800;background:linear-gradient(90deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}.stat-card span{color:var(--muted);font-size:.85rem}.admin-form{display:grid;gap:.8rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.4rem;box-shadow:var(--shadow-sm)}.form-row{display:flex;gap:1rem;align-items:end;flex-wrap:wrap}.activity-list{list-style:none;padding:0}.activity-list li{padding:.25rem 0;border-bottom:1px dashed var(--border)}.brand{display:flex;align-items:center;gap:.5rem;margin-right:auto}.brand-logo{height:40px;width:auto;object-fit:contain}.brand-name{font-weight:800;letter-spacing:.02em}.brand-accent{color:var(--accent)}.app-shell{display:flex;flex-direction:column;min-height:100vh;overflow-x:clip}.app-shell .container{flex:1;width:100%}.footer{border-top:1px solid var(--border);background:var(--bg2);margin-top:3rem}.footer-inner{max-width:1200px;margin:0 auto;padding:1rem 1.25rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.footer-links{display:flex;gap:1.25rem;font-size:.85rem}:root{--auth-sidebar-width: 252px}:root[data-sidebar=collapsed]{--auth-sidebar-width: 76px}.auth-topbar{min-height:64px;justify-content:flex-start}.topbar-brand{margin-right:0}.topbar-context{display:grid;gap:.04rem;margin-right:auto;min-width:0}.topbar-context span{color:var(--text);font-size:.9rem;font-weight:850;letter-spacing:0;line-height:1;text-transform:none}.topbar-context .topbar-product span{color:var(--accent);font-size:inherit;font-weight:inherit;letter-spacing:0;text-transform:none}.topbar-context strong{color:var(--text);font-size:clamp(1.08rem,1.15vw,1.22rem);line-height:1.15;white-space:nowrap}.topbar-avatar{display:inline-flex;align-items:center;justify-content:center;color:var(--text);border-radius:999px;padding:.12rem;border:1px solid color-mix(in srgb,var(--accent) 18%,transparent)}.topbar-avatar:hover{text-decoration:none;border-color:color-mix(in srgb,var(--accent) 42%,transparent)}.side-nav,.mobile-side-drawer{background:linear-gradient(180deg,color-mix(in srgb,var(--bg2) 92%,#020817),color-mix(in srgb,var(--bg) 96%,#020817)),var(--bg2);border-right:1px solid color-mix(in srgb,var(--accent) 16%,var(--border));box-shadow:14px 0 34px #0000003d}.side-nav{overflow:visible}.side-nav-inner{width:100%;height:100%;min-height:0;display:flex;flex-direction:column;gap:1rem;padding:1rem .85rem}.side-shell-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.side-brand{margin:0;padding:.35rem .45rem}.side-brand .brand-logo{height:34px}.side-brand .brand-name{font-size:1.02rem;letter-spacing:.03em;transition:opacity .18s ease .08s,transform .24s ease,max-width .24s ease}.side-collapse-btn{flex:0 0 auto;width:34px;height:34px;border-radius:8px;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--border));background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 62%),color-mix(in srgb,var(--bg3) 76%,transparent);color:color-mix(in srgb,var(--accent) 86%,var(--text));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 10%,transparent),0 0 18px color-mix(in srgb,var(--accent) 18%,transparent);transition:transform .18s ease,color .18s ease,border-color .18s ease,background .18s ease,box-shadow .22s ease}.side-collapse-btn:hover{color:#fff;border-color:color-mix(in srgb,var(--accent) 68%,var(--border));background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--accent) 34%,transparent),transparent 64%),color-mix(in srgb,var(--accent) 16%,var(--bg3));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 28%,transparent),0 0 22px color-mix(in srgb,var(--accent) 44%,transparent);transform:translateY(-1px)}.side-collapse-btn:active{transform:translateY(0) scale(.96)}.side-collapse-btn svg{filter:drop-shadow(0 0 6px color-mix(in srgb,var(--accent) 48%,transparent))}.side-user{display:flex;align-items:center;gap:.75rem;padding:.8rem;color:var(--text);border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--bg3) 72%,transparent);position:relative;transition:padding .24s cubic-bezier(.22,1,.36,1),border-color .2s ease,background .2s ease,transform .2s ease}.side-user:hover{text-decoration:none;border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--bg3));transform:translate(2px)}.side-user .avatar{transition:box-shadow .22s ease,transform .22s ease}.side-user-copy{min-width:0;display:grid;gap:.12rem;opacity:1;transform:translate(0);max-width:150px;transition:opacity .18s ease .08s,transform .24s ease,max-width .24s ease}.side-user-copy strong,.side-user-copy span,.side-user-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-user-copy strong{font-size:.95rem;line-height:1.15}.side-user-copy span{color:var(--muted);font-size:.78rem}.side-user-copy small{color:color-mix(in srgb,var(--accent) 76%,var(--muted));font-size:.72rem;font-weight:700}.side-links{display:grid;gap:.25rem;min-height:0;overflow:visible;padding:.1rem 0}.side-link{width:100%;min-height:42px;display:flex;align-items:center;gap:.72rem;padding:.62rem .7rem;border-radius:8px;border:1px solid transparent;background:transparent;color:color-mix(in srgb,var(--text) 82%,transparent);font:inherit;font-weight:700;text-align:left;cursor:pointer;position:relative;transition:color .18s ease,background .18s ease,border-color .18s ease,box-shadow .24s ease,transform .2s ease,padding .24s cubic-bezier(.22,1,.36,1)}.side-link:hover{text-decoration:none;color:var(--text);background:color-mix(in srgb,var(--text) 7%,transparent);border-color:color-mix(in srgb,var(--text) 10%,transparent);transform:translate(2px)}.side-link.active{color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,transparent);border-color:color-mix(in srgb,var(--accent) 34%,var(--border));box-shadow:inset 3px 0 0 var(--accent)}.side-link svg{flex:0 0 auto;transition:transform .22s ease,filter .22s ease}.side-link:hover svg{transform:translate(1px) scale(1.05)}.side-link span{display:inline-block;opacity:1;transform:translate(0);max-width:150px;overflow:hidden;white-space:nowrap;transition:opacity .18s ease .08s,transform .24s ease,max-width .24s ease}.side-bottom{margin-top:auto;padding-top:.85rem;border-top:1px solid color-mix(in srgb,var(--text) 10%,transparent)}.side-logout{color:color-mix(in srgb,#ff6969 86%,var(--text))}.drawer-backdrop,.mobile-side-drawer,.drawer-head{display:none}@media (min-width: 921px){.desktop-side-nav{display:flex;position:fixed;inset:0 auto 0 0;width:var(--auth-sidebar-width);z-index:25;transition:width .26s cubic-bezier(.22,1,.36,1)}.app-shell-auth .navbar{margin-left:var(--auth-sidebar-width);width:calc(100% - var(--auth-sidebar-width));z-index:30;transition:margin-left .26s cubic-bezier(.22,1,.36,1),width .26s cubic-bezier(.22,1,.36,1)}.app-shell-auth .container{width:calc(100% - var(--auth-sidebar-width));max-width:none;margin-left:var(--auth-sidebar-width);margin-right:0;padding:1.4rem clamp(1rem,2vw,2rem);transition:margin-left .26s cubic-bezier(.22,1,.36,1),width .26s cubic-bezier(.22,1,.36,1)}.app-shell-auth .container>*{width:min(100%,var(--auth-page-max, 1180px));max-width:none;margin-left:auto;margin-right:auto}.app-shell-auth .container>.challenge-layout{--auth-page-max: none;width:100%;max-width:none}.dashboard-page{--auth-page-max: 1480px}.choose-path{--auth-page-max: 980px}.support-wrap{--auth-page-max: 720px}.settings-page{--auth-page-max: 660px}.cert-page{--auth-page-max: 1080px}.lb-list{--auth-page-max: 760px}.app-shell-auth .footer{width:calc(100% - var(--auth-sidebar-width));margin-left:var(--auth-sidebar-width);margin-top:2rem;transition:margin-left .26s cubic-bezier(.22,1,.36,1),width .26s cubic-bezier(.22,1,.36,1)}.app-shell-auth .footer-inner{max-width:1280px}.auth-topbar .nav-toggle,.auth-topbar .topbar-brand{display:none}.drawer-backdrop,.mobile-side-drawer{display:none!important}:root[data-sidebar=collapsed] .desktop-side-nav .side-nav-inner{align-items:center;gap:.85rem;padding:1rem 0}:root[data-sidebar=collapsed] .desktop-side-nav .side-shell-head{width:100%;flex-direction:column}:root[data-sidebar=collapsed] .desktop-side-nav .side-brand{justify-content:center;width:100%;padding:.25rem 0}:root[data-sidebar=collapsed] .desktop-side-nav .side-brand .brand-name,:root[data-sidebar=collapsed] .desktop-side-nav .side-user-copy,:root[data-sidebar=collapsed] .desktop-side-nav .side-link span{opacity:0;transform:translate(-8px);max-width:0;pointer-events:none;transition-delay:0s}:root[data-sidebar=collapsed] .desktop-side-nav .side-user{width:48px;height:48px;justify-content:center;padding:0;border-color:transparent;border-radius:999px;background:transparent;box-shadow:none}:root[data-sidebar=collapsed] .desktop-side-nav .side-user .avatar{transform:scale(1);box-shadow:inset 0 0 0 1px #ffffff29,0 0 0 4px color-mix(in srgb,var(--bg3) 88%,transparent),0 0 18px color-mix(in srgb,var(--accent-2) 28%,transparent)}:root[data-sidebar=collapsed] .desktop-side-nav .side-user:hover{border-color:transparent;background:transparent;box-shadow:none}:root[data-sidebar=collapsed] .desktop-side-nav .side-user:hover .avatar{transform:scale(1.06);box-shadow:inset 0 0 0 1px #ffffff2e,0 0 0 4px color-mix(in srgb,var(--accent-2) 16%,var(--bg3)),0 0 22px color-mix(in srgb,var(--accent-2) 42%,transparent)}:root[data-sidebar=collapsed] .desktop-side-nav .side-user:hover,:root[data-sidebar=collapsed] .desktop-side-nav .side-link:hover{transform:translate(0)}:root[data-sidebar=collapsed] .desktop-side-nav .side-links,:root[data-sidebar=collapsed] .desktop-side-nav .side-bottom{width:100%}:root[data-sidebar=collapsed] .desktop-side-nav .side-link{justify-content:center;gap:0;padding:.62rem}:root[data-sidebar=collapsed] .desktop-side-nav .side-link.active{box-shadow:inset 0 -3px 0 var(--accent)}:root[data-sidebar=collapsed] .desktop-side-nav .side-user:after,:root[data-sidebar=collapsed] .desktop-side-nav .side-link:after{content:attr(data-label);position:absolute;left:calc(100% + .65rem);top:50%;z-index:80;min-width:max-content;max-width:220px;padding:.45rem .65rem;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--bg2) 92%,#020817);color:var(--text);box-shadow:0 14px 34px #00000057;font-size:.82rem;font-weight:800;letter-spacing:0;line-height:1;opacity:0;pointer-events:none;transform:translate(-8px,-50%) scale(.96);transform-origin:left center;transition:opacity .16s ease,transform .2s cubic-bezier(.22,1,.36,1)}:root[data-sidebar=collapsed] .desktop-side-nav .side-user:before,:root[data-sidebar=collapsed] .desktop-side-nav .side-link:before{content:"";position:absolute;left:calc(100% + .43rem);top:50%;z-index:81;width:8px;height:8px;border-left:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));border-bottom:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));background:color-mix(in srgb,var(--bg2) 92%,#020817);opacity:0;pointer-events:none;transform:translate(-8px,-50%) rotate(45deg) scale(.9);transition:opacity .16s ease,transform .2s cubic-bezier(.22,1,.36,1)}:root[data-sidebar=collapsed] .desktop-side-nav .side-user:hover:after,:root[data-sidebar=collapsed] .desktop-side-nav .side-user:focus-visible:after,:root[data-sidebar=collapsed] .desktop-side-nav .side-link:hover:after,:root[data-sidebar=collapsed] .desktop-side-nav .side-link:focus-visible:after,:root[data-sidebar=collapsed] .desktop-side-nav .side-user:hover:before,:root[data-sidebar=collapsed] .desktop-side-nav .side-user:focus-visible:before,:root[data-sidebar=collapsed] .desktop-side-nav .side-link:hover:before,:root[data-sidebar=collapsed] .desktop-side-nav .side-link:focus-visible:before{opacity:1;transform:translateY(-50%) scale(1)}:root[data-sidebar=collapsed] .desktop-side-nav .side-user:hover:before,:root[data-sidebar=collapsed] .desktop-side-nav .side-user:focus-visible:before,:root[data-sidebar=collapsed] .desktop-side-nav .side-link:hover:before,:root[data-sidebar=collapsed] .desktop-side-nav .side-link:focus-visible:before{transform:translateY(-50%) rotate(45deg) scale(1)}}@media (max-width: 920px){.desktop-side-nav{display:none}.auth-topbar{min-height:58px;position:sticky;top:0;z-index:30}.auth-topbar .topbar-context,.auth-topbar .topbar-avatar{display:none}.auth-topbar .topbar-brand{display:inline-flex;margin-right:auto}.auth-topbar .brand-name{display:none}.auth-topbar .nav-meta{margin-left:auto}.auth-topbar .auth-menu-toggle{display:inline-flex}.drawer-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:35;padding:0;border:0;background:#00000094;opacity:0;pointer-events:none;transition:opacity .18s ease}.drawer-backdrop.open{opacity:1;pointer-events:auto}.mobile-side-drawer{display:block;position:fixed;inset:0 auto 0 0;width:min(86vw,320px);z-index:45;transform:translate(-102%);transition:transform .22s ease}.mobile-side-drawer.open{transform:translate(0)}.drawer-head{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.65rem .9rem;border-bottom:1px solid color-mix(in srgb,var(--accent) 16%,var(--border))}.drawer-brand{margin:0;min-width:0}.drawer-brand .brand-logo{height:38px}.drawer-brand .brand-name{display:inline;font-size:1.08rem;letter-spacing:.01em}.mobile-side-drawer .side-nav-inner{height:calc(100% - 64px);gap:.72rem;padding:.65rem .85rem 1rem}.mobile-side-drawer .side-user{margin-top:0}.mobile-side-drawer .side-links{gap:.18rem}}@media (max-width: 620px){.auth-topbar .xp-chip{display:none}}@media (max-width: 420px){.auth-topbar .streak-chip{display:none}}@media (prefers-reduced-motion: reduce){.desktop-side-nav,.app-shell-auth .navbar,.app-shell-auth .container,.app-shell-auth .footer,.side-brand .brand-name,.side-user,.side-user-copy,.side-link,.side-link span,.side-link svg,.desktop-side-nav .side-user:before,.desktop-side-nav .side-user:after,.desktop-side-nav .side-link:before,.desktop-side-nav .side-link:after{transition:none!important}}.landing{display:flex;flex-direction:column;gap:1rem}.hero{text-align:center;padding:3rem 1rem 2rem}.hero-logo{height:auto;width:auto;max-height:96px;max-width:200px;margin-bottom:1rem;object-fit:contain}.hero-title{font-size:2.6rem;margin:.2rem 0;line-height:1.15;font-weight:800}.hero-title .brand-accent{background:linear-gradient(90deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}.hero-sub{max-width:620px;margin:1rem auto;color:var(--muted);font-size:1.05rem;line-height:1.6}.hero-cta{display:flex;gap:.8rem;justify-content:center;margin:1.5rem 0;flex-wrap:wrap}.btn-lg{padding:.75rem 1.6rem;font-size:1.05rem}.hero-term{max-width:640px;margin:2rem auto 0;text-align:left;background:#0d1117;border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:0 20px 60px #00000059}.hero-term-bar{display:flex;gap:6px;padding:10px 12px;background:#161b22}.hero-term-bar span{width:11px;height:11px;border-radius:50%;background:#30363d}.hero-term-bar span:nth-child(1){background:#f85149}.hero-term-bar span:nth-child(2){background:#d29922}.hero-term-bar span:nth-child(3){background:#3fb950}.hero-term-body{margin:0;padding:1rem 1.2rem;color:#3fb950;font-family:JetBrains Mono,Menlo,monospace;font-size:.85rem;line-height:1.7;white-space:pre-wrap}.hero-term-body:after{content:"▊";animation:blink 1.1s steps(1) infinite;color:#3fb950}@keyframes blink{50%{opacity:0}}.section{padding:2rem 0}.section-title{text-align:center;font-size:1.5rem;margin-bottom:1.5rem}.feature-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.feature-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.4rem;transition:transform .18s,border-color .2s,box-shadow .2s;box-shadow:var(--shadow-sm)}.feature-card:hover{transform:translateY(-4px);border-color:var(--border-strong);box-shadow:var(--shadow-md)}.feature-icon{display:inline-grid;place-items:center;color:var(--accent);width:48px;height:48px;border-radius:12px;margin-bottom:.3rem;background:color-mix(in srgb,currentColor 15%,transparent);border:1px solid color-mix(in srgb,currentColor 32%,transparent)}.feature-title{margin:.5rem 0 .3rem;font-size:1.05rem;text-transform:none;letter-spacing:0;color:var(--text)}.steps{max-width:640px;margin:0 auto;display:grid;gap:.9rem;padding-left:1.4rem}.steps li{line-height:1.6}.preview-grid{display:grid;gap:.7rem;max-width:760px;margin:0 auto 1rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.preview-card{display:flex;align-items:center;gap:.7rem;background:var(--bg2);border:1px solid var(--border);border-radius:10px;padding:.7rem 1rem}.preview-card .chip{margin-left:auto}.preview-icon{display:inline-flex;align-items:center;color:var(--accent)}.center-text{text-align:center}.cta-band{text-align:center;border:1px solid var(--border);background:radial-gradient(600px 200px at 50% 120%,color-mix(in srgb,var(--accent) 16%,transparent),transparent),var(--bg2);border-radius:16px;padding:2.5rem 1rem;margin-bottom:1rem}.cta-band h2{margin-top:0}.legal-page{max-width:760px;margin:0 auto;line-height:1.7}.legal-page h1{margin-bottom:.2rem}.legal-page h2{margin-top:1.6rem;font-size:1.05rem;text-transform:none;letter-spacing:0;color:var(--text)}.legal-page.privacy-page{max-width:1120px;display:grid;gap:1.25rem;line-height:1.65}.privacy-hero{display:grid;gap:.75rem;padding:1.5rem;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border));border-radius:16px;background:radial-gradient(560px 220px at 100% 0%,color-mix(in srgb,var(--accent-2) 12%,transparent),transparent 72%),linear-gradient(145deg,color-mix(in srgb,var(--accent) 7%,transparent),transparent 55%),var(--surface);box-shadow:var(--shadow-sm)}.privacy-hero h1{margin:0;font-size:clamp(2.15rem,5vw,4rem);line-height:1;letter-spacing:0}.privacy-hero p{max-width:860px;margin:0;font-size:1rem}.privacy-updated{font-weight:800}.privacy-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;align-items:stretch}.privacy-summary-card{min-width:0;display:grid;grid-template-rows:30px minmax(42px,auto) 1fr;gap:.5rem;align-content:stretch;min-height:168px;padding:1rem;border:1px solid color-mix(in srgb,var(--accent) 20%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--surface) 86%,transparent)}.privacy-summary-card svg,.privacy-note svg,.privacy-contact-band svg{color:var(--accent-2)}.privacy-summary-card strong{color:var(--text);font-size:.98rem;line-height:1.3;align-self:start}.privacy-summary-card span{color:var(--muted);font-size:.86rem;line-height:1.5;align-self:start}.privacy-note{display:grid;grid-template-columns:28px minmax(0,1fr);gap:.75rem;align-items:start;padding:.95rem 1rem;border:1px solid color-mix(in srgb,var(--accent-2) 26%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--accent-2) 7%,var(--surface))}.privacy-note p{margin:0;color:var(--muted);font-weight:700}.terms-warning{border-color:color-mix(in srgb,#ffce3a 32%,var(--border));background:color-mix(in srgb,#ffce3a 7%,var(--surface))}.terms-warning svg{color:#ffce3a}.privacy-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.95rem;align-items:stretch}.privacy-section{min-width:0;display:grid;grid-template-rows:auto auto 1fr;gap:.75rem;height:100%;padding:1.05rem;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--surface) 88%,transparent)}.privacy-section-number{width:fit-content;color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 26%,transparent);border-radius:999px;background:color-mix(in srgb,var(--accent) 10%,transparent);padding:.18rem .52rem;font-size:.72rem;font-weight:850;letter-spacing:.08em}.legal-page.privacy-page .privacy-section h2,.legal-page.privacy-page .privacy-contact-band h2{margin:0;font-size:1.15rem}.privacy-list{display:grid;align-content:start;gap:.55rem}.privacy-list-item{display:grid;gap:.15rem;padding-top:.55rem;border-top:1px solid color-mix(in srgb,var(--text) 8%,transparent)}.privacy-list-item:first-child{padding-top:0;border-top:0}.privacy-list-item strong{color:var(--text);font-size:.9rem}.privacy-list-item p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.58}.privacy-contact-band{display:grid;grid-template-columns:34px minmax(0,1fr);gap:.85rem;align-items:start;padding:1.1rem;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border));border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 9%,transparent),transparent 56%),var(--surface)}.privacy-contact-band p,.privacy-footnote{margin:0;line-height:1.65}.privacy-footnote{padding:0 .15rem .6rem;font-size:.92rem}.about-page{gap:1.35rem}.about-hero{min-height:300px;align-content:center}.about-hero h1{max-width:900px}.about-hero-actions,.about-cta-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin-top:.35rem}.about-story-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);gap:.95rem;align-items:stretch}.about-story-card{min-width:0;display:grid;gap:.75rem;align-content:start;padding:1.2rem;border:1px solid var(--border);border-radius:16px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 6%,transparent),transparent 54%),var(--surface)}.about-story-card h2{margin:0;font-size:clamp(1.45rem,3vw,2.2rem);line-height:1.1;letter-spacing:0;text-transform:none}.about-story-card p,.about-audience-card p{margin:0;line-height:1.65}.about-story-card-accent{border-color:color-mix(in srgb,var(--accent-2) 28%,var(--border));background:radial-gradient(360px 180px at 100% 0%,color-mix(in srgb,var(--accent-2) 13%,transparent),transparent 70%),var(--surface)}.about-story-card-accent svg{color:var(--accent-2)}.about-flow-section,.about-audience-section{display:grid;gap:1rem}.about-flow-grid,.about-audience-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.about-audience-card{grid-template-rows:auto auto 1fr;min-height:190px}.about-audience-card .privacy-section-number{display:inline-grid;place-items:center;width:34px;height:34px;padding:0}.about-cta-band{align-items:center}.about-cta-band p{max-width:820px}.reviews-page{width:min(100%,1180px);margin:0 auto;display:grid;gap:2rem;min-width:0}.reviews-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,420px);align-items:start;gap:2rem;padding:2.25rem 0 .4rem}.reviews-hero-copy{display:grid;gap:1rem;align-content:start;padding-top:.85rem;min-width:0}.review-kicker{color:var(--accent);font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.reviews-hero h1{max-width:760px;margin:0;font-size:4rem;line-height:1;letter-spacing:0;overflow-wrap:break-word}.reviews-hero-copy p{max-width:660px;margin:0;font-size:1.05rem;line-height:1.75;overflow-wrap:break-word}.reviews-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.review-standards-panel{position:relative;display:grid;gap:1rem;padding:1.15rem;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));border-radius:16px;background:radial-gradient(320px 160px at 100% 0%,color-mix(in srgb,var(--accent-2) 14%,transparent),transparent 70%),var(--surface);box-shadow:var(--shadow-lg);align-self:start;min-width:0}.review-prompt-pill{justify-self:start;color:color-mix(in srgb,var(--accent-2) 85%,var(--text));border:1px solid color-mix(in srgb,var(--accent-2) 40%,transparent);border-radius:999px;background:color-mix(in srgb,var(--accent-2) 10%,transparent);padding:.24rem .6rem;font-size:.72rem;font-weight:800}.review-prompt-head{display:flex;align-items:center;gap:.8rem}.review-prompt-head h2{margin:0;font-size:1.2rem;letter-spacing:0;text-transform:none;overflow-wrap:break-word}.review-prompt-head p{margin:.15rem 0 0}.review-prompt-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;color:var(--accent-2);background:color-mix(in srgb,var(--accent-2) 14%,transparent)}.review-standard-list{display:grid;gap:.7rem}.review-standard-item{display:grid;grid-template-columns:38px minmax(0,1fr);gap:.75rem;align-items:start;padding:.85rem;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--bg3) 48%,transparent);min-width:0}.review-standard-item>span{width:34px;height:34px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--accent) 26%,transparent);border-radius:999px;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);font-size:.78rem;font-weight:850;letter-spacing:.02em}.review-standard-item strong{display:block;margin-bottom:.18rem;font-size:.92rem;overflow-wrap:break-word}.review-standard-item p,.review-standard-note{margin:0;color:var(--muted);font-size:.85rem;font-weight:700;line-height:1.5;overflow-wrap:break-word}.review-standard-note{padding-top:.2rem}.review-trust-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;align-items:stretch}.review-trust-item{display:grid;gap:.22rem;align-content:start;min-height:128px;padding:1rem;border:1px solid color-mix(in srgb,var(--accent) 20%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--surface) 84%,transparent)}.review-trust-item svg{color:var(--accent-2);margin-bottom:.25rem}.review-trust-item strong{font-size:.98rem}.review-trust-item span{color:var(--muted);font-size:.86rem;line-height:1.45;overflow-wrap:break-word}.reviews-section,.review-process-band{display:grid;gap:1rem}.reviews-section-head{max-width:760px;display:grid;gap:.35rem}.reviews-section-head h2{margin:0;font-size:2rem;letter-spacing:0;text-transform:none;overflow-wrap:break-word}.reviews-section-head p{margin:0;line-height:1.65}.review-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.review-empty-state{min-height:220px;display:grid;place-items:center;align-content:center;gap:.55rem;padding:1.6rem;text-align:center;border:1px dashed color-mix(in srgb,var(--accent) 32%,var(--border));border-radius:16px;background:radial-gradient(420px 160px at 50% 0%,color-mix(in srgb,var(--accent-2) 10%,transparent),transparent 70%),color-mix(in srgb,var(--surface) 74%,transparent)}.review-empty-state svg{color:var(--accent-2)}.review-empty-state strong{font-size:1.1rem}.review-empty-state p{max-width:520px;margin:0;line-height:1.6}.review-card{min-height:300px;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:.95rem;padding:1rem;border:1px solid var(--border);border-radius:14px;background:linear-gradient(160deg,color-mix(in srgb,var(--accent) 7%,transparent),transparent 45%),var(--surface);box-shadow:var(--shadow-sm);transition:transform .18s ease,border-color .2s ease,box-shadow .2s ease;min-width:0}.review-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 35%,var(--border-strong));box-shadow:var(--shadow-md)}.review-card-top{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.review-rating{display:inline-flex;align-items:center;gap:.22rem;color:color-mix(in srgb,var(--muted) 65%,transparent)}.review-rating svg.active{color:#ffce3a}.review-badge-art{width:58px;height:58px;object-fit:contain;filter:drop-shadow(0 8px 18px color-mix(in srgb,var(--accent) 22%,transparent))}.review-status{color:color-mix(in srgb,var(--accent-2) 82%,var(--text));border:1px solid color-mix(in srgb,var(--accent-2) 34%,transparent);border-radius:999px;background:color-mix(in srgb,var(--accent-2) 10%,transparent);padding:.22rem .55rem;font-size:.72rem;font-weight:800}.review-card-body{margin:0;color:var(--text);line-height:1.65;overflow-wrap:break-word}.review-card-facts{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.review-card-facts span{min-width:0;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--muted);padding:.24rem .56rem;font-size:.76rem;font-weight:800;line-height:1.25;overflow-wrap:break-word}.review-person{display:flex;align-items:center;gap:.75rem;padding-top:.8rem;border-top:1px solid var(--border)}.review-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;font-weight:850}.review-person div{display:grid;gap:.1rem;min-width:0}.review-person strong,.review-person span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-person span{color:var(--muted);font-size:.82rem;font-weight:700}.review-process-band{padding:1.2rem 0 1rem}.review-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:stretch}.review-process-card{display:grid;gap:.45rem;padding:1rem;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--bg2) 82%,transparent)}.review-process-card>span{width:34px;height:34px;display:inline-grid;place-items:center;border:1px solid color-mix(in srgb,var(--accent) 26%,transparent);border-radius:999px;background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent);font-weight:850;font-size:.78rem;letter-spacing:.02em}.review-process-card strong{font-size:1rem}.review-process-card p{margin:0;line-height:1.6;overflow-wrap:break-word}.review-process-grid.about-flow-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.oauth-block{display:grid;gap:.6rem;margin-top:1rem}.oauth-divider{text-align:center;position:relative;color:var(--muted);font-size:.8rem;margin:.4rem 0}.oauth-divider:before,.oauth-divider:after{content:"";position:absolute;top:50%;width:42%;height:1px;background:var(--border)}.oauth-divider:before{left:0}.oauth-divider:after{right:0}.btn-oauth{display:flex;align-items:center;justify-content:center;gap:.6rem;width:100%;background:var(--bg);border:1px solid var(--border);font-weight:600}.btn-oauth:hover{border-color:var(--accent);filter:none}.oauth-icon{font-weight:800}.path-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:1rem 0 .5rem;background:radial-gradient(400px 120px at 0% 0%,color-mix(in srgb,var(--accent) 12%,transparent),transparent),var(--bg2);border:1px solid var(--border);border-radius:12px;padding:.85rem 1.1rem}.path-banner-label{line-height:1.5}.btn.small{padding:.35rem .8rem;font-size:.85rem}.choose-path{max-width:920px;margin:0 auto}.choose-hero{text-align:center;padding:2rem 1rem 1.5rem;margin-bottom:.5rem;border-radius:16px;border:1px solid var(--border);background:radial-gradient(600px 240px at 50% -20%,color-mix(in srgb,var(--accent) 18%,transparent),transparent),radial-gradient(500px 200px at 10% 120%,color-mix(in srgb,var(--accent-2) 12%,transparent),transparent),var(--bg2)}.choose-kicker{display:inline-block;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:700;color:var(--accent);margin-bottom:.4rem}.choose-title{font-size:2.1rem;font-weight:800;margin:.2rem 0 .6rem;background:linear-gradient(90deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}.choose-sub{max-width:620px;margin:0 auto;color:var(--muted);line-height:1.65}.core-path-card{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;flex-wrap:wrap;margin:1.2rem 0 2rem;padding:1.1rem 1.3rem;border:1px dashed var(--border);border-radius:14px;background:var(--bg2)}.core-path-card p{margin:.3rem 0 0;max-width:520px}.choose-brand-name{font-weight:800;font-size:1.5rem;letter-spacing:.02em}.choose-showcase{display:grid;grid-template-columns:.9fr 1.15fr;gap:1.2rem;align-items:center;margin:1.9rem 0 .5rem;padding:1.05rem 1.15rem;border-radius:14px;border:1px solid var(--border);background:radial-gradient(500px 220px at 100% 0%,color-mix(in srgb,var(--accent) 12%,transparent),transparent),var(--surface);box-shadow:var(--shadow-md)}.choose-showcase-text p{margin:.5rem 0 0;line-height:1.6;max-width:320px}@media (max-width: 720px){.choose-showcase{grid-template-columns:1fr}}.aterm{background:#0a0e14;border:1px solid var(--border-strong);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-lg);font-family:JetBrains Mono,monospace}.aterm-bar{display:flex;align-items:center;gap:6px;padding:9px 12px;background:#11161f;border-bottom:1px solid #1d2530}.aterm-bar span{width:10px;height:10px;border-radius:50%;background:#30363d}.aterm-bar span:nth-child(1){background:#f85149}.aterm-bar span:nth-child(2){background:#d29922}.aterm-bar span:nth-child(3){background:#3fb950}.aterm-bar em{margin-left:auto;font-style:normal;font-size:.72rem;color:#6b7685}.aterm-body{padding:.75rem .9rem;min-height:118px;max-height:150px;overflow:hidden;font-size:.76rem;line-height:1.55;color:#cdd6e0}.aterm-cmd{color:#e9eef5;white-space:pre-wrap;word-break:break-all}.aterm-prompt{color:#45d483;font-weight:700}.aterm-out{color:#7d8794;white-space:pre-wrap}.aterm-cursor{display:inline-block;width:8px;height:1em;vertical-align:text-bottom;background:#45d483;margin-left:2px;animation:atermBlink 1s steps(1) infinite}@keyframes atermBlink{50%{opacity:0}}.track-grid{display:grid;gap:.85rem;margin:1.35rem 0;grid-template-columns:repeat(3,minmax(0,1fr))}.track-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.4rem;background:var(--bg2);border:1px solid var(--border);border-radius:14px;min-height:150px;padding:1.15rem .85rem;cursor:pointer;color:var(--text);font:inherit;transition:transform .15s,border-color .2s,box-shadow .2s}.track-body{display:flex;flex-direction:column;align-items:center;gap:.25rem;min-width:0}.track-chevron{display:none;flex:0 0 auto;color:var(--muted)}.track-card:hover:not(:disabled){transform:translateY(-3px);border-color:var(--accent);box-shadow:0 10px 28px color-mix(in srgb,var(--accent) 16%,transparent)}.track-icon{display:inline-grid;place-items:center;color:var(--accent);width:50px;height:50px;border-radius:13px;margin-bottom:.25rem;background:color-mix(in srgb,currentColor 15%,transparent);border:1px solid color-mix(in srgb,currentColor 30%,transparent)}.track-name{font-size:1.05rem}.track-soon{opacity:.55;cursor:not-allowed}.track-active{border-color:var(--accent-2);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-2) 40%,transparent)}@media (max-width: 980px) and (min-width: 821px){.track-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 820px){.track-grid{grid-template-columns:1fr;gap:.7rem}.track-card{flex-direction:row;align-items:center;text-align:left;gap:.9rem;padding:1.05rem 1.1rem}.track-card .track-body{align-items:flex-start;flex:1}.track-card .track-icon{margin-bottom:0;width:46px;height:46px}.track-card .track-chevron{display:block}.reviews-hero{grid-template-columns:1fr;gap:1.2rem;padding-top:1.3rem}.verify-cert-hero{grid-template-columns:1fr}.verify-cert-details,.verify-cert-preview-body{grid-template-columns:1fr 1fr}.reviews-hero-copy{padding-top:0}.reviews-hero h1{font-size:2.35rem;line-height:1.08}.reviews-hero-copy p{font-size:.98rem}.privacy-summary-grid,.review-trust-strip,.review-card-grid,.review-process-grid,.about-flow-grid,.about-audience-grid,.review-process-grid.about-flow-grid{grid-template-columns:1fr 1fr}.about-story-grid,.privacy-section-grid{grid-template-columns:1fr}.review-standards-panel{order:2}}@media (max-width: 640px){.app-shell-public .container{padding-inline:.85rem}.legal-page.privacy-page{gap:1rem}.privacy-hero,.verify-cert-hero,.privacy-summary-card,.about-story-card,.privacy-section,.privacy-contact-band{padding:1rem}.privacy-note,.privacy-contact-band{grid-template-columns:1fr}.reviews-page{width:100%;max-width:100%;gap:1.35rem}.reviews-hero h1{font-size:1.9rem;line-height:1.1}.reviews-hero-copy p{font-size:.96rem;line-height:1.65}.review-standards-panel{padding:1rem}.verify-cert-details,.verify-cert-preview-body{grid-template-columns:1fr}.verify-cert-preview-top{display:grid}.verify-cert-preview-badge{justify-self:start}.verify-cert-actions .btn{width:100%}.verify-cert-lookup>div{grid-template-columns:1fr}.verify-cert-lookup .btn{width:100%}.privacy-summary-grid,.review-trust-strip,.review-card-grid,.review-process-grid,.about-flow-grid,.about-audience-grid,.review-process-grid.about-flow-grid{grid-template-columns:1fr}.about-hero{min-height:auto}.about-hero-actions .btn,.about-cta-actions .btn{width:100%}.review-standard-item{grid-template-columns:34px minmax(0,1fr);padding:.75rem}.review-standard-item>span{width:30px;height:30px}.review-prompt-head{align-items:flex-start}.review-prompt-head h2{font-size:1.08rem}.review-card{min-height:auto}}.chip-soon{color:#d29922;border-color:#d29922}.chip-track{color:var(--accent);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.verify-cert-page{width:min(100%,1120px);margin:0 auto;display:grid;gap:1rem}.verify-cert-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:1.2rem;align-items:stretch;padding:clamp(1.2rem,3vw,2rem);border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border));border-radius:18px;background:radial-gradient(620px 260px at 100% 0%,color-mix(in srgb,var(--accent-2) 14%,transparent),transparent 72%),radial-gradient(520px 240px at 0% 100%,color-mix(in srgb,var(--accent) 9%,transparent),transparent 70%),var(--surface);box-shadow:var(--shadow-sm)}.verify-cert-hero.is-invalid{border-color:color-mix(in srgb,#ff6b6b 22%,var(--border))}.verify-cert-copy{display:grid;gap:.8rem;align-content:center}.verify-cert-copy h1{margin:0;font-size:clamp(2.2rem,5vw,4.2rem);line-height:1;letter-spacing:0}.verify-cert-copy p{max-width:760px;margin:0;color:var(--muted);font-size:1rem;line-height:1.65}.verify-cert-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:.2rem}.verify-cert-lookup{display:grid;gap:.5rem;max-width:520px;margin-top:.4rem}.verify-cert-lookup label{color:var(--text);font-size:.85rem;font-weight:850}.verify-cert-lookup>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem}.verify-cert-lookup input{min-width:0;height:42px;padding:0 .8rem;border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--bg2) 80%,transparent);color:var(--text);font-family:JetBrains Mono,ui-monospace,monospace;font-weight:750;letter-spacing:0;text-transform:uppercase}.verify-cert-lookup input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.verify-cert-status-card{min-width:0;display:grid;gap:.65rem;align-content:center;justify-items:center;text-align:center;padding:1.25rem;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border));border-radius:16px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 8%,transparent),transparent 60%),color-mix(in srgb,var(--bg2) 70%,transparent)}.verify-cert-seal{width:92px;height:92px;display:grid;place-items:center;border-radius:50%;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);box-shadow:0 0 42px color-mix(in srgb,var(--accent) 20%,transparent)}.verify-cert-seal.invalid{color:#ff6b6b;background:color-mix(in srgb,#ff6b6b 12%,transparent);box-shadow:0 0 38px color-mix(in srgb,#ff6b6b 18%,transparent)}.verify-cert-status-card strong{color:var(--text);font-size:1rem}.verify-cert-status-card span{max-width:100%;color:var(--muted);font-family:JetBrains Mono,ui-monospace,monospace;font-size:.86rem;overflow-wrap:anywhere}.verify-cert-sample-note{width:fit-content;max-width:100%;padding:.45rem .72rem;border:1px solid color-mix(in srgb,var(--accent-2) 32%,transparent);border-radius:999px;color:color-mix(in srgb,var(--accent-2) 86%,var(--text));background:color-mix(in srgb,var(--accent-2) 9%,transparent);font-size:.82rem;font-weight:850}.verify-cert-preview{position:relative;overflow:hidden;display:grid;gap:1.1rem;padding:clamp(1.1rem,2.8vw,1.7rem);border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));border-radius:18px;background:radial-gradient(circle at 86% 18%,color-mix(in srgb,var(--accent-2) 20%,transparent),transparent 30%),linear-gradient(135deg,color-mix(in srgb,var(--surface) 92%,transparent),color-mix(in srgb,var(--bg2) 92%,transparent));box-shadow:var(--shadow-sm)}.verify-cert-preview:after{content:"";position:absolute;inset:auto 0 0;height:4px;background:linear-gradient(90deg,var(--accent-2),var(--accent),#4aa3ff)}.verify-cert-preview.is-sample{border-color:color-mix(in srgb,var(--border) 88%,var(--accent))}.verify-cert-preview-top{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.verify-cert-preview-top h2{margin:.25rem 0 0;color:var(--text);font-size:clamp(1.75rem,4vw,3rem);line-height:1.05;letter-spacing:0}.verify-cert-preview-badge{flex:0 0 auto;display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .7rem;border:1px solid color-mix(in srgb,var(--accent-2) 42%,transparent);border-radius:999px;color:color-mix(in srgb,var(--accent-2) 88%,var(--text));background:color-mix(in srgb,var(--accent-2) 12%,transparent);font-size:.78rem;font-weight:900}.verify-cert-preview-body{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.verify-cert-preview-body>div{min-width:0;display:grid;align-content:start;gap:.35rem;min-height:104px;padding:.95rem;border:1px solid color-mix(in srgb,var(--border) 90%,transparent);border-radius:14px;background:color-mix(in srgb,var(--bg2) 66%,transparent)}.verify-cert-preview-body span{color:var(--muted);font-size:.75rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.verify-cert-preview-body strong{color:var(--text);font-size:1rem;line-height:1.35;overflow-wrap:anywhere}.verify-cert-confirmation{position:relative;z-index:1;display:grid;grid-template-columns:34px minmax(0,1fr);gap:.85rem;align-items:start;padding:.95rem;border:1px solid color-mix(in srgb,var(--accent-2) 28%,transparent);border-radius:14px;background:color-mix(in srgb,var(--accent-2) 9%,transparent)}.verify-cert-confirmation svg{color:var(--accent-2)}.verify-cert-confirmation p{margin:0;color:var(--text);line-height:1.6;font-weight:760}.verify-cert-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}.verify-cert-details article{min-width:0;display:grid;grid-template-rows:28px auto 1fr;gap:.45rem;padding:1rem;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--surface) 88%,transparent)}.verify-cert-details svg{color:var(--accent-2)}.verify-cert-details span{color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.verify-cert-details strong{color:var(--text);font-size:1rem;line-height:1.35;overflow-wrap:anywhere}.verify-cert-empty{display:grid;grid-template-columns:34px minmax(0,1fr);gap:.85rem;align-items:start;padding:1rem;border:1px solid color-mix(in srgb,var(--accent-2) 22%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--surface) 88%,transparent)}.verify-cert-empty svg{color:var(--accent-2)}.verify-cert-empty h2,.verify-cert-empty p{margin:0}.cert-page{max-width:1080px;margin:0 auto}.cert-preview-note{max-width:760px;margin:0 auto 1rem}.cert-name-gate{display:grid;gap:.9rem}.cert-name-gate .btn{justify-self:start}.cert-sheet{max-width:1000px;margin:1rem auto;background:#fdfcf8;padding:18px;box-shadow:var(--shadow-lg)}.cert-frame{position:relative;color:#1b2a44;border:1.5px solid #1b2a44;padding:clamp(2rem,5vw,3.4rem) clamp(2rem,6vw,4rem) clamp(1.8rem,4vw,2.6rem)}.cert-frame:before{content:"";position:absolute;top:7px;right:7px;bottom:7px;left:7px;pointer-events:none;border:1px solid #d7c79a}.cert-top{position:relative;z-index:1;text-align:center}.cert-logo{width:112px;height:112px;object-fit:contain;mix-blend-mode:multiply}.cert-wordmark{margin-top:.4rem;font-size:1.35rem;font-weight:850;letter-spacing:.3px;color:#1b2a44}.cert-wordmark span{color:#1f9d5b}.cert-eyebrow{margin-top:1.3rem;font-size:.8rem;letter-spacing:.22em;text-transform:uppercase;color:#9a8748;font-weight:700}.cert-lead{margin-top:1.6rem;font-size:.95rem;color:#6b7280}.cert-name{margin-top:.5rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.4rem,5vw,3.1rem);color:#1b2a44;line-height:1.1;font-weight:400;letter-spacing:0;overflow-wrap:anywhere}.cert-name-rule{width:340px;max-width:70%;height:1px;background:#c9c2b0;margin:1rem auto 0}.cert-body{margin:1.6rem auto 0;max-width:660px;font-size:1rem;line-height:1.75;color:#4b5563;text-align:center}.cert-body strong{color:#1b2a44;font-weight:600}.cert-footer{position:relative;z-index:1;margin-top:clamp(2.4rem,5vw,3.2rem);display:flex;justify-content:space-between;align-items:flex-end;gap:2.5rem}.cert-sig{flex:1;min-width:0}.cert-sig-space{height:64px;display:flex;align-items:flex-end;justify-content:center}.cert-sig-img{max-height:64px;max-width:230px;object-fit:contain;mix-blend-mode:multiply}.cert-sig-line{border-top:1.2px solid #1b2a44;margin-top:0;padding-top:.45rem;max-width:240px}.cert-sig-space{width:240px;margin-bottom:-10px}.cert-sig-title{font-size:.86rem;color:#1b2a44;font-weight:700;margin-top:.05rem}.cert-meta{flex:1;min-width:0;text-align:right}.cert-meta-label{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:#9aa1ab}.cert-meta-val{font-size:.9rem;color:#1b2a44;margin-bottom:.7rem;overflow-wrap:anywhere}.cert-meta-val.mono{font-family:JetBrains Mono,ui-monospace,monospace;font-size:.82rem;letter-spacing:.5px}.cert-verify{display:inline-block;margin-top:.3rem;font-size:.78rem;color:#1f9d5b;overflow-wrap:anywhere;text-decoration:none}.cert-verify:hover{text-decoration:underline}.cert-actions{display:flex;gap:.8rem;justify-content:center;margin:1.2rem 0}@media (max-width: 700px){.cert-footer{flex-direction:column;align-items:stretch;gap:1.6rem}.cert-meta{text-align:left}.cert-actions{flex-direction:column}}@media print{.navbar,.side-nav,.mobile-side-drawer,.drawer-backdrop,.footer,.cert-actions,.cert-preview-note,.cert-share-panel{display:none!important}body{background:#fff}.container{max-width:none;padding:0}.cert-page{max-width:none}.cert-sheet{margin:0;box-shadow:none;break-inside:avoid}.cert-logo,.cert-sig-img{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.badge-toast{position:fixed;top:74px;right:18px;z-index:60;cursor:pointer;display:flex;align-items:center;gap:.9rem;max-width:340px;padding:.9rem 1.1rem;border-radius:14px;background:radial-gradient(300px 120px at 100% 0%,color-mix(in srgb,#f5c451 22%,transparent),transparent),var(--surface);border:1px solid color-mix(in srgb,#f5c451 50%,var(--border));box-shadow:var(--shadow-lg);animation:toastIn .4s cubic-bezier(.34,1.56,.64,1)}.badge-toast-icon{font-size:1.8rem;display:grid;place-items:center;width:48px;height:48px;border-radius:12px;flex-shrink:0;background:color-mix(in srgb,#f5c451 18%,transparent)}.badge-toast-kicker{text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;font-weight:700;color:#f5c451}@keyframes toastIn{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:none}}@media (max-width: 480px){.badge-toast{left:12px;right:12px;max-width:none}}.share-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.share-actions .btn{white-space:nowrap}.badge-share-btn{display:inline-flex;align-items:center;gap:6px;margin-top:.5rem;padding:.34rem .7rem;font-size:.78rem;font-weight:600;color:#45d483;background:#45d48314;border:1px solid rgba(69,212,131,.4);border-radius:8px;cursor:pointer;transition:background .15s ease}.badge-share-btn:hover{background:#45d48329}.share-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#05080cbd;display:flex;align-items:center;justify-content:center;padding:20px}.share-modal{position:relative;width:min(560px,100%);max-height:90vh;overflow:auto;background:var(--surface, #161b22);border:1px solid var(--border, #232a33);border-radius:16px;padding:24px 24px 22px}.share-modal-close{position:absolute;top:10px;right:14px;background:none;border:none;color:var(--muted, #8a93a0);font-size:26px;line-height:1;cursor:pointer}.share-modal-close:hover{color:var(--text, #ffffff)}.share-modal-title{margin:0 0 16px;font-size:1.15rem}.share-modal-card{display:block;width:100%;border-radius:12px;border:1px solid rgba(174,185,197,.16);margin-bottom:18px}.share-tip{flex-basis:100%;color:var(--muted);font-size:.82rem;line-height:1.45}.share-actions-compact{width:100%;justify-content:center;gap:.45rem;margin-top:.45rem}.share-actions-compact .btn{min-height:36px;padding:.38rem .62rem;font-size:.76rem;border-radius:8px}.profile-cert-actions{display:flex;align-items:flex-start;gap:.7rem;flex-wrap:wrap;margin:1rem 0 1.2rem}.profile-cert-actions .share-actions-compact{width:auto;justify-content:flex-start;margin-top:0}.share-panel{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;max-width:760px;margin:1rem auto 1.4rem;padding:1rem 1.1rem;background:var(--surface);border:1px solid color-mix(in srgb,var(--accent-2) 34%,var(--border));border-radius:14px;box-shadow:var(--shadow-sm)}.share-panel h2{margin:.2rem 0 .3rem}.share-panel p{margin:0}.share-kicker{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:800;color:var(--accent-2)}.achievement-share-prompt,.discord-nudge{display:grid;gap:.8rem;margin-top:.9rem;padding:.9rem;background:color-mix(in srgb,var(--accent-2) 10%,var(--bg2));border:1px solid color-mix(in srgb,var(--accent-2) 34%,var(--border));border-radius:12px}.achievement-share-prompt p,.discord-nudge p{margin:.2rem 0 0}.discord-nudge{background:color-mix(in srgb,var(--accent) 10%,var(--bg2));border-color:color-mix(in srgb,var(--accent) 34%,var(--border))}.discord-nudge-actions{display:flex;gap:.6rem;flex-wrap:wrap}@media (max-width: 560px){.share-panel{align-items:stretch;flex-direction:column}.share-actions:not(.share-actions-compact){align-items:stretch;flex-direction:column}.share-actions:not(.share-actions-compact) .btn{width:100%}.profile-cert-actions{flex-direction:column;align-items:stretch}.profile-cert-actions .share-actions-compact{width:100%}}.avatar{display:inline-grid;place-items:center;border-radius:50%;color:#fff;font-weight:700;flex-shrink:0;line-height:1;box-shadow:inset 0 0 0 1px #ffffff1f}.nav-avatar{display:inline-flex}.nav-avatar:hover{text-decoration:none;filter:brightness(1.1)}.resume-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1rem 0;padding:1.1rem 1.3rem;border-radius:var(--radius);border:1px solid color-mix(in srgb,var(--accent) 40%,var(--border));background:radial-gradient(500px 200px at 0% 0%,color-mix(in srgb,var(--accent) 16%,transparent),transparent),var(--surface);box-shadow:var(--shadow-md);color:var(--text);transition:transform .18s,box-shadow .2s}.resume-card:hover{text-decoration:none;transform:translateY(-2px);box-shadow:var(--shadow-lg)}.resume-cta{transition:transform .18s ease,box-shadow .2s ease,filter .15s ease}.resume-card:hover .resume-cta{transform:translate(3px);filter:brightness(1.1);box-shadow:0 6px 20px color-mix(in srgb,var(--accent) 50%,transparent)}.resume-text{display:grid;gap:.2rem}.resume-kicker{text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;font-weight:700;color:var(--accent)}.resume-title{font-size:1.15rem}.resume-cta{flex-shrink:0;font-weight:700;padding:.6rem 1.2rem;border-radius:10px;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent) 55%,var(--accent-2)));color:#fff;box-shadow:0 4px 16px color-mix(in srgb,var(--accent) 40%,transparent)}.resume-done{border-style:dashed}.leaderboard-page{--auth-page-max: 980px}.leaderboard-hero{margin-top:.8rem;padding:1.2rem;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));border-radius:var(--radius);background:radial-gradient(560px 220px at 18% 0%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 70%),radial-gradient(420px 220px at 95% 100%,color-mix(in srgb,var(--accent-2) 10%,transparent),transparent 68%),color-mix(in srgb,var(--bg2) 84%,transparent);box-shadow:var(--shadow-sm)}.leaderboard-hero h1{margin:.2rem 0 .45rem}.leaderboard-hero p{max-width:720px;margin:0;line-height:1.55}.leaderboard-kicker{color:var(--accent);font-size:.74rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.leaderboard-tabs{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:.5rem;margin:1rem 0 .65rem}.leaderboard-tab{grid-column:span 2;width:100%;min-height:38px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--bg3) 62%,transparent);color:var(--muted);cursor:pointer;font:inherit;font-size:.8rem;font-weight:750;padding:.45rem .55rem;text-align:center;white-space:normal;line-height:1.15;transition:transform .15s ease,border-color .18s ease,color .18s ease,box-shadow .2s ease}.leaderboard-tab:nth-child(5){grid-column:2 / span 2}.leaderboard-tab:nth-child(6){grid-column:4 / span 2}.leaderboard-tab:nth-child(7){grid-column:6 / span 2}.leaderboard-tab:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 58%,var(--border));transform:translateY(-1px)}.leaderboard-tab.active{color:var(--text);border-color:color-mix(in srgb,var(--accent-2) 70%,var(--border));background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--accent-2) 20%,transparent),transparent 72%),color-mix(in srgb,var(--bg3) 78%,transparent);box-shadow:0 0 22px color-mix(in srgb,var(--accent-2) 14%,transparent)}.leaderboard-scope{margin:0 0 1.5rem}.podium{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;align-items:end;max-width:760px;margin:2rem auto 1.5rem}.podium-spot{display:grid;justify-items:center;gap:.3rem;text-align:center;padding:1.1rem .8rem 0;border:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;background:radial-gradient(260px 140px at 50% 0%,color-mix(in srgb,var(--accent) 10%,transparent),transparent 70%),var(--surface);box-shadow:var(--shadow-sm);position:relative}.podium-1{transform:translateY(-18px);border-color:color-mix(in srgb,#f5c451 60%,var(--border));box-shadow:0 0 30px color-mix(in srgb,#f5c451 22%,transparent)}.podium-medal{font-size:1.6rem}.podium-name{font-size:.95rem}.podium-pts{font-weight:700;color:var(--accent-2)}.podium-pts small,.lb-pts small{color:var(--muted);font-weight:700}.podium-base{margin-top:.6rem;width:100%;padding:.5rem;font-weight:800;font-size:1.2rem;background:var(--bg3);border-top:1px solid var(--border);color:var(--muted)}.podium-1 .podium-base{height:70px}.podium-2 .podium-base{height:52px}.podium-3 .podium-base{height:38px}.podium-spot.is-me{outline:2px solid var(--accent);outline-offset:2px}.lb-list{display:grid;gap:.5rem;max-width:760px;margin:1.5rem auto}.lb-row{display:grid;grid-template-columns:30px 34px minmax(150px,1fr) minmax(180px,.9fr) max-content;align-items:center;gap:.9rem;padding:.65rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-sm);transition:transform .12s}.lb-row:hover{transform:translate(3px)}.lb-rank{width:24px;text-align:center;font-weight:700;color:var(--muted)}.lb-person{display:grid;gap:.22rem;min-width:0}.lb-name{font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-track-pill{width:fit-content;max-width:100%;color:color-mix(in srgb,var(--accent) 78%,var(--text));border:1px solid color-mix(in srgb,var(--accent) 26%,transparent);border-radius:999px;background:color-mix(in srgb,var(--accent) 10%,transparent);font-size:.72rem;font-weight:750;line-height:1;padding:.22rem .48rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-meta{justify-self:end;text-align:right}.lb-pts{font-weight:800;color:var(--accent-2);min-width:104px;text-align:right}.lb-row.is-me{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--bg2))}.sk{display:block;border-radius:8px;background:linear-gradient(90deg,var(--bg3),var(--bg2),var(--bg3));background-size:200% 100%;animation:shimmer 1.3s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.sk-title{height:30px;width:240px;margin-bottom:.6rem}.sk-sub{height:16px;width:320px;margin-bottom:1.4rem}.skeleton-card{display:grid;gap:.7rem}.sk-line{height:16px;width:70%}.sk-line.short{width:40%}.sk-bar{height:18px;width:100%;border-radius:999px}.skeleton-row{background:var(--surface)}.sk-rank{width:20px;height:16px}.sk-avatar{width:34px;height:34px;border-radius:50%}.sk-name{width:120px;height:16px}.sk-pts{width:60px;height:16px;margin-left:auto}.timer-chip{font-variant-numeric:tabular-nums}.timer-paused{opacity:.7}.timer-low{background:color-mix(in srgb,var(--danger) 16%,var(--bg3));border-color:color-mix(in srgb,var(--danger) 50%,var(--border));color:var(--danger);animation:timerPulse 1.4s ease-in-out infinite}@keyframes timerPulse{50%{opacity:.6}}.limit-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:1.5rem;background:color-mix(in srgb,var(--bg) 75%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.limit-card{max-width:460px;text-align:center;padding:2.2rem;background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow-lg);display:grid;gap:.7rem}.limit-emoji{font-size:2.6rem}.limit-card h2{margin:0;line-height:1.3}.limit-card p{margin:0;line-height:1.65}.limit-actions{display:flex;gap:.7rem;justify-content:center;margin-top:.8rem}.review-gate-overlay{z-index:70}.review-gate-card{width:min(100%,520px);max-height:min(92vh,760px);overflow-y:auto;padding:1.25rem;border:1px solid color-mix(in srgb,var(--accent) 32%,var(--border));border-radius:18px;background:radial-gradient(360px 170px at 100% 0%,color-mix(in srgb,var(--accent-2) 13%,transparent),transparent 70%),var(--surface);box-shadow:var(--shadow-lg),0 0 44px color-mix(in srgb,var(--accent) 10%,transparent)}.review-gate-card form,.review-gate-card>div{display:grid;gap:1rem}.review-gate-head{display:grid;grid-template-columns:46px minmax(0,1fr);gap:.85rem;align-items:start}.review-gate-head h2{margin:.45rem 0 .25rem;font-size:1.35rem;letter-spacing:0;text-transform:none}.review-gate-head p{margin:0;line-height:1.6}.review-gate-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;color:var(--accent-2);background:color-mix(in srgb,var(--accent-2) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent-2) 26%,transparent)}.review-gate-stars{display:flex;align-items:center;gap:.3rem}.review-gate-stars button{width:44px;height:44px;display:grid;place-items:center;border:1px solid color-mix(in srgb,#ffce3a 20%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--bg3) 72%,transparent);color:color-mix(in srgb,var(--muted) 70%,transparent);cursor:pointer;transition:transform .15s ease,border-color .2s ease,color .2s ease,background .2s ease}.review-gate-stars button:hover,.review-gate-stars button.active{transform:translateY(-2px);color:#ffce3a;border-color:color-mix(in srgb,#ffce3a 62%,var(--border));background:color-mix(in srgb,#ffce3a 10%,var(--bg3))}.review-gate-field{display:grid;gap:.45rem;font-weight:800}.review-gate-field textarea{min-height:132px;resize:vertical}.review-gate-field .small{justify-self:end;font-weight:700}.review-gate-note{text-align:center;margin:0}.review-gate-choice-grid{display:grid;gap:.7rem}.review-gate-choice{display:grid;gap:.3rem;width:100%;padding:1rem;text-align:left;border:1px solid color-mix(in srgb,var(--text) 12%,transparent);border-radius:14px;background:color-mix(in srgb,var(--bg3) 64%,transparent);color:var(--text);cursor:pointer;transition:transform .16s ease,border-color .2s ease,background .2s ease}.review-gate-choice:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 34%,var(--border));background:color-mix(in srgb,var(--accent) 7%,var(--bg3))}.review-gate-choice.is-public{border-color:color-mix(in srgb,var(--accent-2) 36%,var(--border));background:color-mix(in srgb,var(--accent-2) 8%,var(--bg3))}.review-gate-choice strong{font-size:1rem}.review-gate-choice span{color:var(--muted);font-size:.9rem;font-weight:700;line-height:1.5}.review-gate-choice:disabled{opacity:.65;cursor:wait}.btn-link{background:none;border:none;color:var(--muted);cursor:pointer;font:inherit;font-size:.85rem;margin-top:.6rem;text-decoration:underline}.btn-link:hover{color:var(--text)}.vault-result{position:relative;overflow:hidden;border-radius:14px;border:2px solid #2fd06f;box-shadow:0 0 0 1px #2fd06f40,0 0 28px #2fd06f59;min-height:300px;margin-top:1rem;display:flex;flex-direction:column;justify-content:flex-end;background:#06090e}.vault-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block;z-index:0}.vault-overlay{position:relative;z-index:1;display:grid;gap:.7rem;justify-items:center;text-align:center;padding:2rem 1.2rem 1.2rem;background:linear-gradient(to top,rgba(2,5,9,.96) 28%,rgba(2,5,9,.72) 58%,transparent)}.vault-overlay .pass-title{font-size:1.35rem;font-weight:800;color:#6cf0a4;text-shadow:0 0 14px rgba(69,212,131,.6);display:inline-flex;align-items:center;gap:.45rem;animation:riseIn .5s cubic-bezier(.34,1.56,.64,1) .35s both,titleGlow 2.4s ease-in-out .9s infinite}.pass-check{display:inline-grid;place-items:center;width:1.5em;height:1.5em;border-radius:50%;background:#2fd06f;color:#04130a;font-size:.85em;font-weight:900;box-shadow:0 0 16px #2fd06fcc;animation:checkPop .5s cubic-bezier(.34,1.8,.64,1) .35s both}.vault-overlay .points-earned{display:inline-block;font-weight:800;color:#ffe08a;background:#f5c45124;border:1px solid rgba(245,196,81,.5);padding:.2rem .9rem;border-radius:999px;text-shadow:0 0 10px rgba(245,196,81,.5);animation:riseIn .5s cubic-bezier(.34,1.56,.64,1) .55s both}.vault-overlay .badge-earned{font-weight:600;color:#e9eef5;background:#ffffff14;border:1px solid rgba(255,255,255,.18);padding:.25rem .8rem;border-radius:999px;font-size:.9rem;animation:riseIn .5s cubic-bezier(.34,1.56,.64,1) .7s both}.next-challenge-btn{margin-top:.9rem;font-size:1.02rem;animation:riseIn .45s ease .5s both}.finished-note{font-weight:700;color:#ffe08a}.finished-note.all-done{text-align:center;margin-top:.9rem;padding:.9rem;border-radius:12px;background:var(--surface);border:1px solid var(--border)}@keyframes riseIn{0%{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}@keyframes checkPop{0%{opacity:0;transform:scale(0)}60%{transform:scale(1.25)}to{opacity:1;transform:scale(1)}}@keyframes titleGlow{0%,to{text-shadow:0 0 14px rgba(69,212,131,.5)}50%{text-shadow:0 0 22px rgba(69,212,131,.95)}}.vault-stage{position:relative;width:120px;height:120px;perspective:1400px}.vault-interior{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 50%,#3a2c05,#120d02 70%);border:2px solid color-mix(in srgb,#f5c451 60%,transparent);opacity:0;animation:vaultReveal .5s ease .55s forwards}.vault-glow{position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,#f5c451 75%,transparent),transparent 60%);opacity:0;animation:vaultGlow 1.6s ease-out .7s forwards}.vault-reward{position:relative;font-weight:800;font-size:1.6rem;color:#ffd86b;text-shadow:0 0 12px rgba(245,196,81,.8);opacity:0;animation:vaultReward 1s cubic-bezier(.34,1.56,.64,1) .8s forwards}.vault-door{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:left center;backface-visibility:hidden;-webkit-backface-visibility:hidden;animation:vaultSwing 1.3s cubic-bezier(.5,0,.2,1) forwards;filter:drop-shadow(0 6px 14px rgba(0,0,0,.5))}.vault-handle{transform-origin:60px 60px;animation:vaultHandle .55s ease-in-out}@keyframes vaultHandle{0%{transform:rotate(0)}to{transform:rotate(450deg)}}@keyframes vaultSwing{0%,42%{transform:rotateY(0)}to{transform:rotateY(-92deg)}}@keyframes vaultReveal{0%{opacity:0}to{opacity:1}}@keyframes vaultGlow{0%{opacity:0}40%{opacity:1}to{opacity:.5}}@keyframes vaultReward{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.fade-in{animation:fadeIn .35s ease both}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes fadeInLite{0%{opacity:0}to{opacity:1}}.pop-in{animation:popIn .25s cubic-bezier(.34,1.56,.64,1)}@keyframes popIn{0%{transform:scale(.92);opacity:0}to{transform:scale(1);opacity:1}}.shake{animation:shake .3s}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.module-grid>*,.track-grid>*,.feature-grid>*,.badges-grid>*{animation:cardIn .4s ease both}@keyframes cardIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.module-grid>*:nth-child(1),.track-grid>*:nth-child(1),.feature-grid>*:nth-child(1){animation-delay:.02s}.module-grid>*:nth-child(2),.track-grid>*:nth-child(2),.feature-grid>*:nth-child(2){animation-delay:.06s}.module-grid>*:nth-child(3),.track-grid>*:nth-child(3),.feature-grid>*:nth-child(3){animation-delay:.1s}.module-grid>*:nth-child(4),.track-grid>*:nth-child(4),.feature-grid>*:nth-child(4){animation-delay:.14s}.module-grid>*:nth-child(5),.track-grid>*:nth-child(5),.feature-grid>*:nth-child(5){animation-delay:.18s}.module-grid>*:nth-child(6),.track-grid>*:nth-child(6),.feature-grid>*:nth-child(6){animation-delay:.22s}.module-grid>*:nth-child(n+7){animation-delay:.26s}.dashboard-page.fade-in{animation-duration:.18s}.dashboard-page .module-grid>*{animation-duration:.22s}.dashboard-page .module-grid>*:nth-child(1){animation-delay:5ms}.dashboard-page .module-grid>*:nth-child(2){animation-delay:15ms}.dashboard-page .module-grid>*:nth-child(3){animation-delay:25ms}.dashboard-page .module-grid>*:nth-child(4){animation-delay:35ms}.dashboard-page .module-grid>*:nth-child(5){animation-delay:45ms}.dashboard-page .module-grid>*:nth-child(6){animation-delay:55ms}.dashboard-page .module-grid>*:nth-child(n+7){animation-delay:65ms}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important}}@media (max-width: 820px){.container{padding:.9rem}h1{font-size:1.5rem}input,select,textarea{font-size:16px}.navbar{padding:.55rem .9rem}.brand-name{font-size:1rem}.nav-toggle{display:inline-flex}.nav-links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:.1rem;padding:.5rem .9rem .9rem;background:var(--bg2);border-bottom:1px solid var(--border-strong);box-shadow:0 18px 38px #00000080}.nav-links.open{display:flex}.nav-links a{width:100%;padding:.75rem .6rem;font-size:1rem;border-radius:10px}.nav-links a:hover,.nav-links a:active{background:color-mix(in srgb,var(--accent) 12%,transparent)}.nav-links .btn{width:100%;text-align:center;margin-top:.4rem}.nav-links .points-chip{align-self:flex-start;font-size:.85rem}.nav-avatar{gap:.6rem;padding:.6rem;align-items:center}.nav-avatar-label{display:inline;font-weight:600}.nav-meta{gap:.35rem}.nav-meta .points-chip{padding:.15rem .5rem;font-size:.78rem}.nav-meta .icon-btn{font-size:1.1rem;padding:.1rem .2rem}.challenge-layout{grid-template-columns:1fr;gap:1rem;min-height:0}.challenge-panel{position:static;top:auto}.challenge-terminal{min-height:60vh}.terminal-wrap,.terminal-gate{min-height:56vh}.term-keys{display:none;position:fixed;left:50%;bottom:calc(var(--kb-bottom, 0px) + env(safe-area-inset-bottom) + 8px);z-index:80;width:max-content;max-width:calc(100vw - 16px);align-items:center;justify-content:center;gap:5px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:5px;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border-strong));border-radius:14px;background:color-mix(in srgb,#0d1117 90%,transparent);box-shadow:0 12px 34px #00000085;backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);transform:translate(-50%)}.term-keys.kb-open{display:flex}.term-keys::-webkit-scrollbar{display:none}.term-key-group{flex:0 0 auto;display:flex;align-items:center;gap:3px;padding:3px;border:1px solid color-mix(in srgb,var(--text) 8%,transparent);border-radius:11px;background:color-mix(in srgb,var(--bg3) 48%,transparent)}.term-keys .tk{flex:0 0 auto;min-width:34px;height:32px;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;background:#1b222c;color:#e6edf3;border:1px solid var(--border-strong);border-radius:8px;font-size:.84rem;font-family:inherit;font-weight:700;cursor:pointer;user-select:none;-webkit-user-select:none}.term-key-arrows .tk{min-width:32px;padding:0 7px;font-size:.98rem}.term-keys .tk:active,.term-keys .tk.on{background:var(--accent);color:#08130c;border-color:var(--accent)}.terminal-footer{text-align:left}.fade-in{animation-name:fadeInLite;animation-duration:.24s}.dash-header{gap:1rem}.dash-progress{flex:1 1 100%;min-width:0}.dash-stats{grid-template-columns:1fr 1fr;gap:.6rem}.dash-stat{padding:.7rem .8rem;gap:.55rem}.dash-stat-icon{font-size:1.35rem}.dash-stat strong{font-size:.92rem}.module-grid{grid-template-columns:1fr}.hero-title{font-size:1.9rem}.hero-sub{font-size:1rem}.choose-title{font-size:1.6rem}.choose-showcase{grid-template-columns:1fr}.resume-card{flex-direction:column;align-items:flex-start}.leaderboard-hero{padding:1rem}.leaderboard-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;padding-bottom:.2rem;scrollbar-width:none}.leaderboard-tabs::-webkit-scrollbar{display:none}.leaderboard-tab{flex:0 0 auto;grid-column:auto;width:auto;min-width:max-content}.podium{grid-template-columns:1fr;max-width:420px;gap:.6rem}.podium-1,.podium-2,.podium-3{transform:none}.podium-spot{grid-template-columns:28px auto minmax(0,1fr);justify-items:start;align-items:center;text-align:left;padding:.8rem .9rem;border-radius:12px}.podium-medal,.podium-spot .avatar{grid-row:span 3}.podium-pts{justify-self:start}.podium-base{display:none}.lb-row{grid-template-columns:28px 34px minmax(0,1fr);gap:.65rem;align-items:start}.lb-person{align-self:center}.lb-meta{display:block;grid-column:3;justify-self:start;text-align:left;margin-top:-.2rem}.lb-pts{grid-column:3;justify-self:start;text-align:left;min-width:0}}@media (max-width: 480px){.brand-name{display:none}.brand-logo{height:34px}.navbar{padding:.5rem .7rem;gap:.5rem}.nav-meta{gap:.3rem}.nav-meta .points-chip{padding:.12rem .45rem;font-size:.72rem}.nav-meta .icon-btn{font-size:1.05rem}.nav-toggle{font-size:1.3rem;padding:2px 4px}.reviews-page{gap:1.35rem}.reviews-hero h1{font-size:2rem}.reviews-hero-actions{align-items:stretch}.reviews-hero-actions .btn{width:100%}.review-trust-strip,.review-card-grid,.review-process-grid{grid-template-columns:1fr}.review-standards-panel,.review-card,.review-trust-item,.review-process-card{border-radius:12px}.review-prompt-head{align-items:flex-start}.points-chip{padding:.2rem .6rem;font-size:.8rem}.btn{padding:.6rem 1rem;min-height:44px}.btn-block{padding:.85rem}.limit-card,.auth-card{padding:1.4rem}.auth-card{width:100%}h1{font-size:1.35rem}h2{font-size:1.2rem}h3{font-size:1.05rem}.hero-title{font-size:1.6rem}.choose-title{font-size:1.4rem}.demo-block,.feedback-box,.brief,.task-box,.inline-code{word-break:break-word;overflow-wrap:anywhere}.demo-block{font-size:.82rem}.module-card,.track-card,.feature-card,.settings-card,.stat-card{padding:1rem}.module-head{grid-template-columns:68px minmax(0,1fr) 48px;gap:.65rem}.module-emblem.badge-art{width:64px;height:64px}.module-badge-img{width:58px;height:58px}}html{scroll-behavior:smooth}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--accent) 30%,var(--border-strong)) transparent}*::-webkit-scrollbar{width:11px;height:11px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent) 32%,var(--border-strong));border-radius:999px;border:3px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background:var(--accent);background-clip:content-box}::selection{background:color-mix(in srgb,var(--accent) 35%,transparent);color:var(--text)}:root[data-theme=dark] body:before{content:"";position:fixed;top:-25%;right:-25%;bottom:-25%;left:-25%;z-index:-1;pointer-events:none;background:radial-gradient(38% 38% at 16% 18%,color-mix(in srgb,var(--accent) 20%,transparent),transparent 70%),radial-gradient(36% 36% at 84% 20%,color-mix(in srgb,var(--accent-3) 18%,transparent),transparent 70%),radial-gradient(44% 44% at 62% 92%,color-mix(in srgb,var(--accent-2) 14%,transparent),transparent 70%);filter:blur(34px);opacity:.7;animation:aurora 24s ease-in-out infinite alternate}@keyframes aurora{0%{transform:translateZ(0) scale(1)}50%{transform:translate3d(-2%,2%,0) scale(1.06)}to{transform:translate3d(2%,-1.5%,0) scale(1.03)}}@media (max-width: 820px){:root[data-theme=dark] body:before{animation:none;filter:blur(20px);opacity:.5}}.navbar{background:color-mix(in srgb,var(--bg2) 66%,transparent);backdrop-filter:blur(18px) saturate(1.25);-webkit-backdrop-filter:blur(18px) saturate(1.25);border-bottom:1px solid color-mix(in srgb,var(--accent) 16%,var(--border))}.nav-links a{transition:color .2s ease}.nav-links a:after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--accent),var(--accent-2));transform:scaleX(0);transform-origin:left;transition:transform .28s ease}.nav-links a:hover:after{transform:scaleX(1)}.btn{transition:transform .12s ease,box-shadow .22s ease,filter .18s,border-color .2s}.btn-primary:hover{transform:translateY(-2px)}.module-card,.feature-card,.stat-card,.badge-card,.track-card,.lb-row,.settings-card,.resume-card,.support-card,.support-success,.admin-stat,.admin-panel,.admin-ticket,.admin-mini-row,.admin-snapshot-list span{transition:transform .2s ease,box-shadow .26s ease,border-color .2s ease}.module-card:hover,.feature-card:hover,.stat-card:hover,.badge-card:hover,.track-card:hover:not(:disabled),.resume-card:hover,.support-card:hover,.admin-stat:hover{box-shadow:var(--shadow-md),var(--glow)}.support-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 25%,var(--border))}.module-card:before{box-shadow:0 0 16px color-mix(in srgb,var(--accent) 55%,transparent)}.module-card,.feature-card,.stat-card,.auth-card,.challenge-panel,.settings-card,.badge-card,.support-card{background-image:linear-gradient(180deg,rgba(255,255,255,.035),transparent 42%),var(--surface)}.hero-title .brand-accent,.choose-title,.cert-name,.stat-card strong,.brand-accent{background-size:220% auto;animation:gradientShift 7s ease infinite}@keyframes gradientShift{0%,to{background-position:0% center}50%{background-position:100% center}}.chip,.points-chip{transition:transform .15s ease,box-shadow .2s ease,border-color .2s}.points-chip:hover{transform:translateY(-1px);box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 28%,transparent)}input:focus,select:focus,textarea:focus{box-shadow:0 0 0 3px var(--ring),var(--glow)}:where(a,button,input,select,textarea,.track-card,[tabindex]):focus-visible{outline:none;box-shadow:0 0 0 3px var(--ring);border-radius:10px}.inline-code{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 12%,transparent)}::view-transition-old(root),::view-transition-new(root){animation-duration:.5s;animation-timing-function:cubic-bezier(.4,0,.2,1)}@supports not (view-transition-name: root){body,.navbar,.module-card,.feature-card,.stat-card,.badge-card,.track-card,.auth-card,.challenge-panel,.settings-card,.lb-row,.resume-card,.points-chip,.chip,.btn,input,select,textarea,.task-box,.hint-nudge,.module-bridge{transition:background-color .45s ease,color .45s ease,border-color .45s ease}}.path-change-link{margin-left:8px;font-size:.85rem;font-weight:600;color:var(--accent);text-decoration:none;white-space:nowrap}.path-change-link:hover{text-decoration:underline}.info-box.already-done{border-color:color-mix(in srgb,var(--accent-2) 55%,transparent);background:color-mix(in srgb,var(--accent-2) 14%,transparent);color:var(--text)}.silent-tip{margin-top:10px;padding:10px 12px;font-size:.85rem;line-height:1.5;color:var(--muted);background:var(--bg3);border-left:3px solid var(--accent);border-radius:6px}.auth-consent{display:flex;align-items:flex-start;gap:8px;font-size:.85rem;color:var(--muted);margin:4px 0 12px}.auth-consent input{margin-top:3px;width:auto}.verify-banner{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;background:color-mix(in srgb,var(--accent) 14%,transparent);border-bottom:.5px solid var(--border-strong);padding:8px 16px;font-size:.88rem;color:var(--text)}.verify-banner-msg{color:var(--accent-2);font-weight:600}.auth-mail-badge{width:60px;height:60px;margin:0 auto 1.1rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:27px;background:color-mix(in srgb,var(--accent) 15%,transparent);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent)}.verify-success-banner{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;cursor:pointer;background:color-mix(in srgb,var(--accent-2) 16%,transparent);border-bottom:.5px solid color-mix(in srgb,var(--accent-2) 45%,var(--border-strong));padding:9px 16px;font-size:.9rem;font-weight:600;color:var(--accent-2);animation:fadeIn .3s ease both}.support-wrap{max-width:620px;margin:0 auto}.support-head{display:flex;align-items:center;gap:16px;margin:8px 0 22px}.support-badge{display:grid;place-items:center;flex:0 0 auto;width:52px;height:52px;border-radius:14px;color:var(--accent-2);background:color-mix(in srgb,var(--accent-2) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent-2) 32%,var(--border))}.support-head h1{margin:0 0 2px;font-size:1.5rem}.support-head p{margin:0}.support-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:24px 24px 26px;display:flex;flex-direction:column;gap:18px;animation:fadeIn .35s ease both}.support-identity{display:grid;grid-template-columns:1fr 1fr;gap:14px;background:color-mix(in srgb,var(--bg2) 60%,transparent);border:1px solid var(--border);border-radius:12px;padding:14px 16px}.support-identity>div{display:flex;flex-direction:column;gap:3px;min-width:0}.support-identity-value{font-weight:600;color:var(--text);overflow-wrap:anywhere}.support-identity-note{margin:-8px 0 0}.support-identity-note a,.support-card a{color:var(--accent)}.support-field{display:flex;flex-direction:column;gap:7px;position:relative}.support-field-label{font-size:.82rem;font-weight:700;letter-spacing:.2px;color:var(--muted)}.support-select,.support-textarea{width:100%;box-sizing:border-box;background:var(--bg2);color:var(--text);border:1px solid var(--border-strong);border-radius:11px;padding:12px 14px;font:inherit;font-size:.95rem;transition:border-color .15s ease,box-shadow .15s ease}.support-select:focus,.support-textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.support-textarea{resize:vertical;min-height:120px;line-height:1.55}.support-counter{align-self:flex-end}.support-drop{display:flex;flex-direction:column;align-items:center;gap:5px;padding:22px 16px;cursor:pointer;background:color-mix(in srgb,var(--bg2) 50%,transparent);border:1.5px dashed var(--border-strong);border-radius:12px;color:var(--text);font:inherit;transition:border-color .15s ease,background .15s ease,transform .15s ease}.support-drop:hover{border-color:var(--accent);transform:translateY(-1px);background:color-mix(in srgb,var(--accent) 7%,transparent)}.support-drop svg{color:var(--accent)}.support-file-input{display:none}.support-file{display:flex;align-items:center;gap:14px;background:var(--bg2);border:1px solid var(--border-strong);border-radius:12px;padding:10px 12px;animation:fadeIn .25s ease both}.support-file-thumb{width:52px;height:52px;flex:0 0 auto;object-fit:cover;border-radius:8px;border:1px solid var(--border)}.support-file-meta{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.support-file-meta strong{overflow-wrap:anywhere;font-size:.9rem}.support-file-remove{flex:0 0 auto;display:grid;place-items:center;width:30px;height:30px;border-radius:8px;cursor:pointer;background:transparent;border:1px solid var(--border);color:var(--muted);transition:color .15s ease,border-color .15s ease}.support-file-remove:hover{color:var(--danger);border-color:var(--danger)}.support-file-error{color:var(--danger);font-size:.85rem}.support-submit{align-self:flex-start;margin-top:2px}.support-success{text-align:center;max-width:460px;margin:40px auto 0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:40px 28px 34px;animation:fadeIn .35s ease both}.support-success-icon{color:var(--accent-2);margin-bottom:8px}.support-success h1{margin:0 0 10px;font-size:1.5rem}.support-success-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:22px}@media (max-width: 520px){.support-identity{grid-template-columns:1fr}}
