:root{--bg-0:#090b12;--bg-1:#11162b;--bg-2:#1a2340;--bg-glow-a:rgba(77,141,255,.35);--bg-glow-b:rgba(0,231,255,.24);--surface:rgba(18,26,53,.58);--surface-strong:rgba(22,33,70,.85);--text-primary:#f8fbff;--text-secondary:#b4bfd6;--text-muted:#8090b1;--accent-cyan:#00e7ff;--accent-blue:#4d8dff;--accent-green:#4affb7;--accent-rose:#ff6b8a;--ring:rgba(0,231,255,.25);--border:rgba(157,191,255,.2);--btn-primary-text:#021421;--btn-primary-start:var(--accent-cyan);--btn-primary-end:#a8f5ff;--btn-primary-shadow:rgba(0,231,255,.28);--btn-primary-shadow-hover:rgba(0,231,255,.32);--btn-ghost-hover-border:rgba(77,141,255,.5);--btn-ghost-hover-bg:rgba(77,141,255,.16);--runs-wpm-a:var(--accent-cyan);--runs-wpm-b:var(--accent-blue);--runs-acc-a:var(--accent-rose);--runs-acc-b:var(--accent-green);--radius-card:20px;--radius-button:12px;--shadow-soft:0 16px 40px rgba(6,10,20,.35);--shadow-glow:0 0 0 1px rgba(77,141,255,.18),0 24px 70px rgba(0,231,255,.2)}html[data-theme=ocean]{--bg-0:#061018;--bg-1:#0b1d2e;--bg-2:#12364b;--bg-glow-a:rgba(0,160,255,.28);--bg-glow-b:rgba(56,232,215,.24);--surface:rgba(13,34,52,.6);--surface-strong:rgba(18,42,62,.86);--text-primary:#eefaff;--text-secondary:#b2cee2;--text-muted:#85a7bf;--accent-cyan:#38e8d7;--accent-blue:#00a8ff;--accent-green:#77ffce;--accent-rose:#ff7ea8;--ring:rgba(56,232,215,.24);--border:rgba(131,187,225,.24);--btn-primary-text:#02272b;--btn-primary-start:#38e8d7;--btn-primary-end:#90f4ff;--btn-primary-shadow:rgba(56,232,215,.28);--btn-primary-shadow-hover:rgba(56,232,215,.34);--btn-ghost-hover-border:rgba(0,168,255,.52);--btn-ghost-hover-bg:rgba(0,168,255,.18)}html[data-theme=light]{--bg-0:#f4f8ff;--bg-1:#eaf2ff;--bg-2:#dde9ff;--bg-glow-a:rgba(91,148,255,.22);--bg-glow-b:rgba(88,224,255,.18);--surface:hsla(0,0%,100%,.74);--surface-strong:hsla(0,0%,100%,.92);--text-primary:#0f2342;--text-secondary:#406188;--text-muted:#5f7ba0;--accent-cyan:#12b9e8;--accent-blue:#4c7fff;--accent-green:#14c289;--accent-rose:#e85b8c;--ring:rgba(18,185,232,.2);--border:rgba(76,127,255,.22);--btn-primary-text:#04223a;--btn-primary-start:#6fe7ff;--btn-primary-end:#7bb8ff;--btn-primary-shadow:rgba(58,150,255,.24);--btn-primary-shadow-hover:rgba(58,150,255,.3);--btn-ghost-hover-border:rgba(76,127,255,.42);--btn-ghost-hover-bg:rgba(76,127,255,.13);--shadow-soft:0 12px 26px rgba(46,84,140,.16);--shadow-glow:0 0 0 1px rgba(76,127,255,.14),0 18px 42px rgba(73,156,255,.2)}html[data-theme=carbon]{--bg-0:#0a0b0f;--bg-1:#121620;--bg-2:#1f2434;--bg-glow-a:rgba(129,153,255,.22);--bg-glow-b:rgba(151,173,255,.18);--surface:rgba(22,28,42,.62);--surface-strong:rgba(27,35,52,.88);--text-primary:#f5f8ff;--text-secondary:#b9c4dc;--text-muted:#8d9dbd;--accent-cyan:#8db2ff;--accent-blue:#6e86ff;--accent-green:#b7c8ff;--accent-rose:#ff9bbb;--ring:rgba(141,178,255,.22);--border:rgba(155,171,214,.25);--btn-primary-text:#0b1326;--btn-primary-start:#8db2ff;--btn-primary-end:#c8d7ff;--btn-primary-shadow:rgba(126,151,255,.3);--btn-primary-shadow-hover:rgba(126,151,255,.36);--btn-ghost-hover-border:rgba(141,178,255,.52);--btn-ghost-hover-bg:rgba(141,178,255,.16)}html[data-theme=aurora]{--bg-0:#060d12;--bg-1:#0b1924;--bg-2:#133042;--bg-glow-a:rgba(0,208,255,.28);--bg-glow-b:rgba(124,255,179,.2);--surface:rgba(10,26,40,.62);--surface-strong:rgba(12,33,50,.88);--text-primary:#eefcff;--text-secondary:#b2d7e3;--text-muted:#7fa8b7;--accent-cyan:#00d0ff;--accent-blue:#39a8ff;--accent-green:#7cffb3;--accent-rose:#ff8fbf;--ring:rgba(0,208,255,.24);--border:rgba(122,202,235,.24);--btn-primary-text:#03202a;--btn-primary-start:#00d0ff;--btn-primary-end:#9ff5ff;--btn-primary-shadow:rgba(0,208,255,.28);--btn-primary-shadow-hover:rgba(0,208,255,.34);--btn-ghost-hover-border:rgba(57,168,255,.52);--btn-ghost-hover-bg:rgba(57,168,255,.16)}html[data-theme=midnight]{--bg-0:#05070d;--bg-1:#0b1020;--bg-2:#161d34;--bg-glow-a:rgba(126,114,255,.25);--bg-glow-b:rgba(46,202,255,.16);--surface:rgba(17,22,39,.64);--surface-strong:rgba(21,28,48,.9);--text-primary:#f3f6ff;--text-secondary:#bbc6df;--text-muted:#8e9fc3;--accent-cyan:#7e72ff;--accent-blue:#4d8dff;--accent-green:#9ab4ff;--accent-rose:#ff9ec7;--ring:rgba(126,114,255,.24);--border:rgba(159,173,216,.24);--btn-primary-text:#0d1330;--btn-primary-start:#7e72ff;--btn-primary-end:#adc4ff;--btn-primary-shadow:rgba(126,114,255,.28);--btn-primary-shadow-hover:rgba(126,114,255,.34);--btn-ghost-hover-border:rgba(126,114,255,.5);--btn-ghost-hover-bg:rgba(126,114,255,.16)}html[data-theme=crimson]{--bg-0:#0f0508;--bg-1:#1a0b11;--bg-2:#2b1520;--bg-glow-a:rgba(255,88,132,.24);--bg-glow-b:rgba(255,170,110,.16);--surface:rgba(34,15,25,.64);--surface-strong:rgba(43,18,31,.9);--text-primary:#fff4f8;--text-secondary:#e4bccc;--text-muted:#bf93a6;--accent-cyan:#ff6fa3;--accent-blue:#ff8f7a;--accent-green:#ffc29e;--accent-rose:#ff5f8f;--ring:rgba(255,111,163,.24);--border:rgba(235,152,181,.28);--btn-primary-text:#2d0e19;--btn-primary-start:#ff6fa3;--btn-primary-end:#ffbe92;--btn-primary-shadow:rgba(255,111,163,.28);--btn-primary-shadow-hover:rgba(255,111,163,.34);--btn-ghost-hover-border:rgba(255,111,163,.48);--btn-ghost-hover-bg:rgba(255,111,163,.15)}html[data-theme=emerald]{--bg-0:#040d0a;--bg-1:#0a1a15;--bg-2:#123027;--bg-glow-a:rgba(61,255,190,.22);--bg-glow-b:rgba(0,218,180,.2);--surface:rgba(10,31,25,.64);--surface-strong:rgba(12,38,30,.9);--text-primary:#f1fff9;--text-secondary:#bbdfd0;--text-muted:#8bb6a4;--accent-cyan:#31e8b8;--accent-blue:#00dab4;--accent-green:#8dffd6;--accent-rose:#ff97bf;--ring:rgba(49,232,184,.24);--border:rgba(132,215,188,.24);--btn-primary-text:#02261b;--btn-primary-start:#31e8b8;--btn-primary-end:#93ffe1;--btn-primary-shadow:rgba(49,232,184,.28);--btn-primary-shadow-hover:rgba(49,232,184,.34);--btn-ghost-hover-border:rgba(0,218,180,.5);--btn-ghost-hover-bg:rgba(0,218,180,.16)}html[data-theme=violet]{--bg-0:#090513;--bg-1:#120a24;--bg-2:#211140;--bg-glow-a:rgba(166,112,255,.24);--bg-glow-b:rgba(120,90,255,.2);--surface:rgba(25,16,49,.64);--surface-strong:rgba(30,19,58,.9);--text-primary:#f7f3ff;--text-secondary:#cdbde8;--text-muted:#a28fc3;--accent-cyan:#a670ff;--accent-blue:#7a5dff;--accent-green:#d0b7ff;--accent-rose:#ff9ad6;--ring:rgba(166,112,255,.24);--border:rgba(180,154,235,.24);--btn-primary-text:#1a0e39;--btn-primary-start:#a670ff;--btn-primary-end:#d4bcff;--btn-primary-shadow:rgba(166,112,255,.28);--btn-primary-shadow-hover:rgba(166,112,255,.34);--btn-ghost-hover-border:rgba(122,93,255,.52);--btn-ghost-hover-bg:rgba(122,93,255,.16)}*{box-sizing:border-box}*,:after,:before,a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus:not(:focus-visible),button:focus:not(:focus-visible),input:focus:not(:focus-visible),select:focus:not(:focus-visible),textarea:focus:not(:focus-visible){outline:none;box-shadow:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:0 0 0 2px rgba(0,231,255,.22)}body,html{margin:0;padding:0;min-height:100%}body{font-family:var(--font-dm-sans),sans-serif;color:var(--text-primary);background:radial-gradient(1200px 600px at 8% -10%,var(--bg-glow-a),transparent 60%),radial-gradient(1000px 540px at 96% 0,var(--bg-glow-b),transparent 58%),linear-gradient(165deg,var(--bg-0),var(--bg-1) 48%,var(--bg-2));-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}.site-shell{width:min(1140px,calc(100% - 2.2rem));margin:0 auto}.app-loading-screen{position:fixed;inset:0;z-index:120;display:grid;place-items:center;overflow:hidden;background:radial-gradient(1100px 560px at 5% -10%,rgba(77,141,255,.28),transparent 60%),radial-gradient(1050px 540px at 95% -6%,rgba(0,231,255,.2),transparent 58%),linear-gradient(165deg,var(--bg-0),var(--bg-1) 48%,var(--bg-2))}.app-loading-orb{position:absolute;border-radius:50%;pointer-events:none;filter:blur(8px)}.app-loading-orb-a{width:280px;height:280px;left:16%;top:22%;background:radial-gradient(circle,rgba(77,141,255,.42),rgba(77,141,255,.02));animation:loader-orb-float-a 2.6s ease-in-out infinite alternate}.app-loading-orb-b{width:300px;height:300px;right:12%;bottom:18%;background:radial-gradient(circle,rgba(0,231,255,.34),rgba(0,231,255,.02));animation:loader-orb-float-b 2.9s ease-in-out infinite alternate}.app-loading-card{width:min(440px,calc(100% - 2rem));border-radius:22px;padding:1.1rem 1.2rem 1rem;display:grid;grid-gap:.75rem;gap:.75rem;border-color:rgba(157,191,255,.3)}.app-loading-badge{margin:0;justify-self:start;display:inline-flex;align-items:center;gap:.35rem;border:1px solid rgba(74,255,183,.4);border-radius:999px;padding:.26rem .65rem;font-size:.8rem;font-weight:700;color:#8effd2;background:rgba(6,27,35,.52)}.app-loading-logo{width:15px;height:15px;object-fit:contain;filter:drop-shadow(0 2px 8px rgba(97,206,255,.32))}.app-loading-title{margin:0;display:inline-flex;align-items:center;gap:.45rem;font-family:var(--font-outfit),sans-serif;letter-spacing:-.01em;font-size:clamp(1.1rem,1.4vw,1.35rem);color:#e8f4ff}.app-loading-bar{height:8px;border-radius:999px;overflow:hidden;background:rgba(157,191,255,.18)}.app-loading-bar span{display:block;width:42%;height:100%;border-radius:inherit;background:linear-gradient(90deg,rgba(77,141,255,.95),rgba(0,231,255,.96));box-shadow:0 0 22px rgba(0,231,255,.5);animation:loader-bar-slide .85s linear infinite}@keyframes loader-bar-slide{0%{transform:translateX(-115%)}to{transform:translateX(325%)}}@keyframes loader-orb-float-a{0%{transform:translateZ(0) scale(1);opacity:.75}to{transform:translate3d(8px,-10px,0) scale(1.05);opacity:.94}}@keyframes loader-orb-float-b{0%{transform:translateZ(0) scale(1);opacity:.72}to{transform:translate3d(-10px,8px,0) scale(1.04);opacity:.9}}.side-rail{position:fixed;left:max(.55rem,calc((100vw - min(1140px, calc(100vw - 2.2rem))) / 2 - 188px));top:11.25rem;transform:none;z-index:40;border-radius:18px;padding:.45rem;width:176px}.side-rail-nav{display:grid;grid-gap:.36rem;gap:.36rem}.side-rail-brand{width:100%;display:inline-flex;align-items:center;gap:.58rem;margin-bottom:.5rem;padding:.08rem .2rem .2rem;color:#cce7ff;font-size:.8rem;font-weight:700;letter-spacing:.01em;line-height:1.1}.side-rail-brand span{min-width:0;overflow:visible;text-overflow:clip;white-space:normal;line-height:1.15}.side-rail-brand-logo{width:36px;height:36px;object-fit:contain;filter:drop-shadow(0 2px 8px rgba(113,218,255,.32))}.side-rail-brand-logo-placeholder{display:inline-block;background:transparent;filter:none}.side-rail-link{width:100%;min-height:34px;border-radius:0;display:inline-flex;align-items:center;gap:.45rem;padding:.25rem .2rem .25rem .5rem;color:#9fb3d7;border-left:2px solid transparent;transition:color .14s ease,border-color .14s ease;position:relative}.side-rail-link span{position:static;opacity:1;pointer-events:auto;font-size:.84rem;font-weight:600;letter-spacing:.01em}.side-rail-unread-badge{position:absolute;top:2px;right:4px;min-width:16px;height:16px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;padding:0 4px;font-size:10px;font-weight:800;letter-spacing:.01em;line-height:1;color:#e9f8ff;background:linear-gradient(135deg,rgba(10,199,255,.92),rgba(123,235,255,.92));border:1px solid rgba(122,236,255,.7);box-shadow:0 0 10px rgba(77,214,255,.34);pointer-events:none;z-index:2}.side-rail-link:hover{color:#e6f0ff;border-left-color:rgba(157,191,255,.4)}.side-rail-link.active{color:#b9f6ff;border-left-color:rgba(0,231,255,.75)}.glass{background:linear-gradient(160deg,hsla(0,0%,100%,.07),hsla(0,0%,100%,.03));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border);box-shadow:var(--shadow-soft)}.top-nav{position:-webkit-sticky;position:sticky;top:16px;z-index:20;margin:1.2rem auto 0;border-radius:999px;padding:.52rem .82rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.brand{font-family:var(--font-outfit),sans-serif;font-size:clamp(1rem,1.15vw,1.2rem);font-weight:800;letter-spacing:.01em;margin-left:.15rem;white-space:nowrap;flex:0 0 auto;background:linear-gradient(100deg,#dff3ff,#83d8ff 28%,#fff 46%,#6fffdc 64%,#83d8ff);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:brand-shine 7.5s linear infinite}.brand-wrap{display:inline-flex;align-items:center;flex:0 0 auto;min-width:0}.brand-wordmark{width:auto;height:40px;max-width:clamp(200px,21vw,320px);display:block;object-fit:contain;object-position:left center;filter:drop-shadow(0 2px 10px rgba(76,184,255,.26))}.brand-wordmark-placeholder{width:clamp(200px,21vw,320px);height:40px;border-radius:8px;background:transparent}@keyframes brand-shine{0%{background-position:200% 0}to{background-position:-20% 0}}.nav-links{display:none;flex:1 1 auto;justify-content:center;align-items:center;gap:.32rem;min-width:0;white-space:nowrap;color:var(--text-secondary);font-size:.9rem}.nav-links a{position:relative;display:inline-flex;align-items:center;gap:.42rem;padding:.36rem .62rem;border-radius:999px;transition:color .15s ease,background-color .15s ease}.nav-links a:hover{color:var(--text-primary);background:rgba(77,141,255,.18)}.nav-links a:after{content:"";position:absolute;left:.58rem;right:.58rem;bottom:.16rem;height:2px;border-radius:999px;background:linear-gradient(90deg,rgba(0,231,255,.9),rgba(124,214,255,.92));box-shadow:0 0 10px rgba(0,231,255,.35);opacity:0;transform:scaleX(.55);transition:opacity .14s ease,transform .14s ease}.nav-links a.active{color:#e9f6ff;background:rgba(77,141,255,.2)}.nav-links a.active:after{opacity:1;transform:scaleX(1)}.nav-actions{display:flex;align-items:center;gap:.5rem;flex:0 0 auto}.auth-pill{display:inline-flex;align-items:center;gap:.34rem;border:1px solid rgba(157,191,255,.3);border-radius:999px;padding:.33rem .54rem;color:#deebff;background:rgba(10,20,42,.78);font-size:.8rem;font-weight:600;line-height:1;white-space:nowrap;max-width:240px;overflow:hidden;text-overflow:ellipsis}.auth-user-menu{position:relative}.auth-pill-trigger{cursor:pointer}.auth-user-menu-panel{position:absolute;right:0;top:calc(100% + .42rem);min-width:168px;border-radius:12px;border:1px solid rgba(157,191,255,.28);background:rgba(8,16,34,.96);box-shadow:0 16px 36px rgba(4,10,20,.44);padding:.28rem;display:grid;grid-gap:.2rem;gap:.2rem;opacity:0;visibility:hidden;transform:translateY(4px);pointer-events:none;transition:opacity .14s ease,transform .14s ease,visibility .14s ease;z-index:42}.auth-user-menu.open .auth-user-menu-panel{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.auth-user-menu-item{border:1px solid transparent;border-radius:9px;color:#dbe8ff;background:transparent;display:inline-flex;align-items:center;gap:.38rem;justify-content:flex-start;width:100%;padding:.42rem .48rem;font:inherit;font-size:.82rem;font-weight:600;text-decoration:none;cursor:pointer}.auth-user-menu-item:hover{background:rgba(77,141,255,.15);border-color:rgba(157,191,255,.26)}.auth-user-menu-item.danger{color:#ffd1db}.auth-user-menu-item.danger:hover{background:rgba(255,107,138,.14);border-color:rgba(255,107,138,.36)}.auth-role-badge{display:inline-flex;align-items:center;border-radius:999px;border:1px solid rgba(255,196,92,.62);background:rgba(255,196,92,.2);color:#ffe4b2;padding:.08rem .31rem;font-size:.62rem;font-weight:800;line-height:1;letter-spacing:.01em}.auth-btn{min-width:82px;padding-inline:.82rem}.auth-btn.need-login{animation:exit-shake .36s ease-in-out 3;box-shadow:0 0 0 3px rgba(0,231,255,.18),0 12px 30px rgba(0,231,255,.3)}.auth-modal-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:1rem;background:rgba(4,9,18,.7);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);animation:auth-fade-in .18s ease-out}.auth-modal{width:min(440px,100%);border-radius:18px;padding:1rem;display:grid;grid-gap:.8rem;gap:.8rem;border:1px solid rgba(157,191,255,.26);animation:auth-pop-in .2s ease-out}.auth-modal-head h2{margin:0;font-family:var(--font-outfit),sans-serif;letter-spacing:-.01em;font-size:1.3rem}.auth-modal-head p{margin:.35rem 0 0;color:var(--text-secondary);font-size:.9rem}.auth-switch-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.5rem;gap:.5rem}.auth-form-grid{display:grid;grid-gap:.58rem;gap:.58rem}.auth-form-grid label{display:grid;grid-gap:.35rem;gap:.35rem;color:var(--text-secondary);font-size:.9rem}.auth-form-grid input{border-radius:10px;border:1px solid rgba(157,191,255,.28);background:rgba(8,16,34,.82);color:var(--text-primary);padding:.68rem .76rem;font:inherit}.auth-form-grid input:focus{outline:none;border-color:rgba(0,231,255,.54);box-shadow:0 0 0 3px rgba(0,231,255,.16)}.auth-password-wrap{display:grid;grid-template-columns:1fr auto;grid-gap:.45rem;gap:.45rem;align-items:center}.auth-toggle-btn{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:9px;border:1px solid rgba(157,191,255,.26);background:hsla(0,0%,100%,.04);color:#cfe0ff;padding:0;font:inherit;cursor:pointer}.auth-toggle-btn:hover{border-color:rgba(0,231,255,.45);background:rgba(0,231,255,.1)}.auth-strength{margin-top:-.2rem;display:grid;grid-gap:.24rem;gap:.24rem}.auth-strength-track{height:6px;border-radius:999px;overflow:hidden;background:hsla(0,0%,100%,.08)}.auth-strength-fill{display:block;height:100%;border-radius:inherit;transition:width .18s ease,background-color .18s ease}.auth-strength-fill.strength-0{background:hsla(0,0%,100%,.14)}.auth-strength-fill.strength-1{background:rgba(255,107,138,.88)}.auth-strength-fill.strength-2{background:rgba(255,193,89,.9)}.auth-strength-fill.strength-3{background:rgba(124,214,255,.88)}.auth-strength-fill.strength-4{background:rgba(106,255,208,.9)}.auth-strength-label{margin:0;color:var(--text-muted);font-size:.78rem}.auth-requirements{margin:.1rem 0 0;padding:0;list-style:none;display:grid;grid-gap:.18rem;gap:.18rem}.auth-requirements li{display:inline-flex;align-items:center;gap:.34rem;font-size:.76rem}.auth-requirements li.met{color:#b8ffe5}.auth-requirements li.unmet{color:#99a9c8}.auth-requirement-dot{width:7px;height:7px;border-radius:999px;background:currentColor;opacity:.9}.auth-error{margin:0;color:#ffc7d4}.auth-modal-actions{display:flex;justify-content:flex-end;gap:.55rem}.auth-resend-wrap{display:flex;justify-content:flex-start;margin-top:.4rem}.auth-spinner{width:13px;height:13px;border-radius:999px;border:2px solid rgba(2,20,33,.28);border-top-color:rgba(2,20,33,.96);animation:auth-spin .65s linear infinite}.auth-toast{position:fixed;right:1rem;bottom:1rem;z-index:90;margin:0;border-radius:10px;border:1px solid rgba(157,191,255,.28);background:rgba(12,23,47,.92);color:#d8e7ff;padding:.52rem .72rem;font-size:.84rem;box-shadow:0 14px 38px rgba(4,10,22,.5);animation:auth-toast-in .18s ease-out}.auth-message-btn{position:relative;min-width:28px;height:28px;padding:0}.auth-top-icon-btn{border:0;border-radius:0;background:transparent;color:#cfe2ff;display:inline-flex;align-items:center;justify-content:center;line-height:1;position:relative;transition:color .14s ease,transform .14s ease,filter .14s ease}.auth-top-icon-btn .ui-icon{width:1.22rem;height:1.22rem}.auth-top-icon-svg{stroke-width:2.35}.auth-top-icon-btn[data-tooltip]:after{content:attr(data-tooltip);position:absolute;top:calc(100% + 9px);left:50%;transform:translateX(-50%) translateY(-2px);white-space:nowrap;font-size:.69rem;font-weight:700;line-height:1;color:#dff6ff;background:rgba(5,16,34,.96);border:1px solid rgba(120,179,255,.42);border-radius:8px;padding:.3rem .42rem;box-shadow:0 12px 30px rgba(2,10,24,.56);opacity:0;pointer-events:none;z-index:300;transition:opacity .12s ease,transform .12s ease}.auth-top-icon-btn:hover{color:#8ff7ff;transform:translateY(-1px);filter:drop-shadow(0 0 7px rgba(0,231,255,.34))}.auth-top-icon-btn:focus-visible:after,.auth-top-icon-btn:hover:after{opacity:1;transform:translateX(-50%) translateY(0)}.auth-top-icon-btn:focus-visible{outline:none;box-shadow:none;color:#8ff7ff}.notif-pulse .auth-top-icon-svg{animation:auth-notif-bounce .76s cubic-bezier(.22,.95,.32,1)}@keyframes auth-notif-bounce{0%{transform:translateY(0) scale(1);filter:drop-shadow(0 0 0 rgba(143,247,255,0))}28%{transform:translateY(-2px) scale(1.16);filter:drop-shadow(0 0 12px rgba(143,247,255,.44))}54%{transform:translateY(1px) scale(.94)}78%{transform:translateY(-1px) scale(1.03)}to{transform:translateY(0) scale(1);filter:drop-shadow(0 0 0 rgba(143,247,255,0))}}.messages-page{padding-top:5.2rem;padding-bottom:3rem;display:grid;grid-gap:.82rem;gap:.82rem}.messages-shell{width:min(1140px,calc(100% - 2.2rem));margin-left:auto;margin-right:auto}.messages-page-card{margin-bottom:1.1rem}.messages-login-actions{display:flex;align-items:center;justify-content:flex-start}.notification-wrap{display:grid;grid-gap:.7rem;gap:.7rem}.notification-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.notification-list{display:grid;grid-gap:.5rem;gap:.5rem}.notification-item{width:100%;border:1px solid rgba(157,191,255,.24);border-radius:12px;background:rgba(10,20,42,.62);color:#d9e8ff;padding:.62rem .72rem;display:flex;align-items:flex-start;justify-content:space-between;gap:.7rem;text-align:left;cursor:pointer}.notification-item.unread{border-color:rgba(0,231,255,.5);background:rgba(0,231,255,.08)}.notification-item-main{min-width:0;display:grid;grid-gap:.16rem;gap:.16rem}.notification-item-title{margin:0;font-size:.95rem;font-weight:700}.notification-item-body{margin:0;font-size:.86rem;color:#a8bbda}.notification-item-meta{display:inline-flex;align-items:center;gap:.42rem;flex:0 0 auto;font-size:.74rem;color:#93a8cd}.notification-unread-dot{width:8px;height:8px;border-radius:999px;background:linear-gradient(120deg,#8ff7ff,#4d8dff)}.auth-message-badge{position:absolute;top:-7px;right:-7px;min-width:18px;height:18px;border-radius:999px;display:grid;place-items:center;font-size:.66rem;font-weight:800;color:#031423;background:linear-gradient(120deg,#8ff7ff,#4d8dff);border:1px solid rgba(157,191,255,.5)}.message-center-backdrop{position:fixed;inset:0;z-index:85;display:grid;place-items:center;padding:1rem;background:rgba(4,9,18,.62);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.message-center-card{width:min(920px,100%);border-radius:18px;border:1px solid rgba(157,191,255,.28);padding:.9rem;display:grid;grid-gap:.68rem;gap:.68rem}.message-center-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.message-center-head h3{margin:0;display:inline-flex;align-items:center;gap:.38rem;font-family:var(--font-outfit),sans-serif}.message-center-start{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.45rem;gap:.45rem}.message-center-grid{display:grid;grid-template-columns:260px minmax(0,1fr);grid-gap:.6rem;gap:.6rem;min-height:360px}.message-center-list{border:1px solid rgba(157,191,255,.22);border-radius:12px;background:rgba(8,16,34,.54);padding:.45rem;display:grid;grid-gap:.38rem;gap:.38rem;align-content:start;max-height:430px;overflow:auto}.message-conversation-item{width:100%;border:1px solid rgba(157,191,255,.2);border-radius:10px;background:rgba(10,19,40,.68);color:#dbe9ff;padding:.45rem .52rem;display:grid;justify-items:start;grid-gap:.2rem;gap:.2rem;cursor:pointer;text-align:left;position:relative}.message-conversation-item-wrap{display:grid;grid-gap:.22rem;gap:.22rem}.message-conversation-item.active{border-color:rgba(0,231,255,.58);background:rgba(0,231,255,.1)}.message-conversation-name{font-weight:700;font-size:.85rem}.message-conversation-preview{font-size:.74rem;color:#9cb2d6;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-conversation-unread{position:absolute;right:.42rem;top:.38rem;min-width:16px;height:16px;border-radius:999px;display:grid;place-items:center;font-size:.62rem;font-weight:800;color:#021421;background:linear-gradient(120deg,#8ff7ff,#4d8dff)}.message-peer-profile-link{font-size:.72rem;color:#8fdfff;text-decoration:underline;-webkit-text-decoration-color:rgba(143,223,255,.68);text-decoration-color:rgba(143,223,255,.68);text-underline-offset:2px}.message-peer-profile-link:hover{color:#d7f6ff;-webkit-text-decoration-color:rgba(215,246,255,.95);text-decoration-color:rgba(215,246,255,.95)}.message-center-thread{border:1px solid rgba(157,191,255,.22);border-radius:12px;background:rgba(8,16,34,.5);padding:.6rem;display:grid;grid-gap:.42rem;gap:.42rem}.message-thread-list{border:1px solid rgba(157,191,255,.16);border-radius:10px;background:rgba(5,12,26,.62);padding:.5rem;display:grid;grid-gap:.35rem;gap:.35rem;max-height:290px;overflow:auto;align-content:start}.message-bubble{max-width:86%;border-radius:10px;padding:.44rem .52rem;display:grid;grid-gap:.22rem;gap:.22rem}.message-bubble p{margin:0;font-size:.84rem;line-height:1.35}.message-bubble span{font-size:.68rem;color:#9db2d4}.message-bubble.mine{justify-self:end;text-align:right;border:1px solid rgba(0,231,255,.4);background:rgba(0,231,255,.12)}.message-bubble.peer{justify-self:start;border:1px solid rgba(157,191,255,.28);background:rgba(157,191,255,.1)}.message-thread-input{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.42rem;gap:.42rem}.messages-page .message-thread-input .chat-input{min-height:40px;padding-block:.5rem;font-size:.95rem}.messages-page .message-thread-input .btn{min-height:40px;padding:.5rem .9rem;font-size:.95rem}@media (max-width:920px){.message-center-card{max-height:calc(100vh - 2rem);overflow:auto}.message-center-grid{grid-template-columns:1fr;min-height:0}.message-center-list{max-height:220px}}@media (max-width:720px){.messages-shell{width:calc(100% - 1rem);margin-left:auto;margin-right:auto}}@keyframes auth-fade-in{0%{opacity:0}to{opacity:1}}@keyframes auth-pop-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes auth-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes auth-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.42rem;border:1px solid transparent;border-radius:var(--radius-button);padding:.7rem 1rem;font-weight:600;font-size:.93rem;line-height:1;cursor:pointer;transition:transform .14s ease,box-shadow .16s ease,border-color .16s ease,background-color .16s ease}.btn:active{transform:translateY(1px)}.btn-primary{color:var(--btn-primary-text);background:linear-gradient(95deg,var(--btn-primary-start),var(--btn-primary-end));box-shadow:0 12px 30px var(--btn-primary-shadow)}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 18px 40px var(--btn-primary-shadow-hover)}.btn-ghost{color:var(--text-primary);background:hsla(0,0%,100%,.03);border-color:var(--border)}.btn-ghost:hover{border-color:var(--btn-ghost-hover-border);background:var(--btn-ghost-hover-bg)}.theme-menu{position:relative}.theme-menu-trigger .ui-icon{width:1.14rem;height:1.14rem}.theme-menu-panel{position:absolute;right:0;top:calc(100% + .42rem);min-width:220px;border-radius:12px;border:1px solid rgba(157,191,255,.3);background:rgba(8,16,34,.96);box-shadow:0 16px 36px rgba(4,10,20,.44);padding:.3rem;display:grid;grid-gap:.28rem;gap:.28rem;opacity:0;visibility:hidden;transform:translateY(4px);pointer-events:none;transition:opacity .14s ease,transform .14s ease,visibility .14s ease;z-index:120}.theme-menu.open .theme-menu-panel{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.theme-menu-title{margin:.15rem .28rem .08rem;font-size:.72rem;font-weight:700;color:var(--text-secondary)}.theme-option{border:1px solid transparent;border-radius:10px;background:hsla(0,0%,100%,.02);color:#dbe8ff;display:grid;grid-template-columns:auto 1fr;align-items:center;grid-gap:.5rem;gap:.5rem;width:100%;text-align:left;padding:.44rem .48rem;cursor:pointer}.theme-option:hover{border-color:rgba(157,191,255,.3);background:rgba(77,141,255,.12)}.theme-option.active{border-color:rgba(0,231,255,.52);background:rgba(0,231,255,.12)}.theme-swatch{width:28px;height:16px;border-radius:999px;border:1px solid rgba(157,191,255,.45);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.06)}.theme-swatch.nebula{background:linear-gradient(90deg,#4d8dff,#00e7ff)}.theme-swatch.ocean{background:linear-gradient(90deg,#00a8ff,#38e8d7)}.theme-swatch.light{background:linear-gradient(90deg,#6fe7ff,#7bb8ff)}.theme-swatch.carbon{background:linear-gradient(90deg,#8db2ff,#6e86ff)}.theme-swatch.aurora{background:linear-gradient(90deg,#00d0ff,#7cffb3)}.theme-swatch.midnight{background:linear-gradient(90deg,#7e72ff,#4d8dff)}.theme-swatch.crimson{background:linear-gradient(90deg,#ff6fa3,#ffbe92)}.theme-swatch.emerald{background:linear-gradient(90deg,#31e8b8,#00dab4)}.theme-swatch.violet{background:linear-gradient(90deg,#a670ff,#7a5dff)}.theme-option-label{font-size:.8rem;font-weight:700;color:#e9f6ff}.hero{padding:4.8rem 0 2.8rem}.hero-grid{display:grid;grid-gap:1.2rem;gap:1.2rem}.hero-copy h1{font-family:var(--font-outfit),sans-serif;font-size:clamp(2.2rem,8vw,4.6rem);line-height:1.02;letter-spacing:-.03em;margin:0}.gradient-title{background:linear-gradient(100deg,#d3ecff,#7ecfff 35%,#6dffe6 70%,#ecfffb);background-clip:text;-webkit-background-clip:text;color:transparent}.hero-copy p{margin:1rem 0 1.7rem;color:var(--text-secondary);max-width:60ch;font-size:1.02rem}.hero-cta{display:flex;flex-wrap:wrap;gap:.8rem}.hero-panel{box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.hero-illustration-wrap,.hero-panel{border-radius:0;padding:0;border:0;background:transparent}.hero-illustration{width:100%;height:auto;display:block;border-radius:12px;box-shadow:0 16px 34px rgba(6,16,40,.36);animation:heroFloat 5.6s ease-in-out infinite}.hero-illustration-placeholder{min-height:clamp(220px,32vw,360px);box-shadow:none;animation:none;background:transparent}.hero-illustration-logo{object-fit:contain;max-height:360px}@keyframes heroFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.typing-preview{margin:0;border-radius:14px;padding:1.15rem;background:rgba(5,11,24,.65);border:1px solid rgba(130,170,255,.2);font-family:var(--font-jetbrains-mono),monospace;font-size:clamp(.95rem,2.2vw,1.1rem);line-height:1.7;color:#c2d8ff}.typing-preview strong{color:var(--accent-cyan)}.typing-preview em{color:var(--accent-rose);font-style:normal;text-decoration:line-through}.section{margin-top:1.3rem}.section h2{font-family:var(--font-outfit),sans-serif;margin:0 0 .95rem;letter-spacing:-.02em}.section-title{display:inline-flex;align-items:center;gap:.46rem}.grid-3{display:grid;grid-template-columns:1fr;grid-gap:.95rem;gap:.95rem}.card{border-radius:var(--radius-card);padding:1rem}.kpi{font-family:var(--font-outfit),sans-serif;font-size:1.8rem;margin:0}.kpi-label{margin:.5rem 0 0;color:var(--text-secondary)}.wpm-label{gap:.45rem}.wpm-boost,.wpm-label{display:inline-flex;align-items:center}.wpm-boost{gap:.25rem;border-radius:999px;padding:.14rem .42rem;font-size:.76rem;color:#012034;border:1px solid rgba(0,231,255,.52);background:linear-gradient(120deg,#87f6ff,#4d8dff)}.feature-title{display:inline-flex;align-items:center;gap:.42rem;font-family:var(--font-outfit),sans-serif;margin:0;font-size:1.1rem}.feature-copy{color:var(--text-secondary);margin:.55rem 0 0}.feature-grid-advanced,.quick-actions-grid{display:grid;grid-template-columns:1fr;grid-gap:.95rem;gap:.95rem}.quick-action-card{display:grid;grid-gap:.48rem;gap:.48rem;align-content:start;min-height:150px;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}.quick-action-card:hover{transform:translateY(-2px);border-color:rgba(0,231,255,.42);box-shadow:0 16px 40px rgba(0,231,255,.16)}.flow-card{display:grid;grid-gap:.75rem;gap:.75rem}.flow-steps{display:flex;flex-wrap:wrap;gap:.55rem}.flow-steps span{border-radius:999px;border:1px solid rgba(157,191,255,.28);background:hsla(0,0%,100%,.04);color:#d7e6ff;padding:.32rem .62rem;font-size:.82rem;font-weight:600}.home-highlights{margin-top:.95rem;display:grid;grid-template-columns:1fr;grid-gap:.95rem;gap:.95rem}.home-highlight-card{min-height:142px;align-content:start}.home-meta-chips{margin-top:.72rem;display:flex;flex-wrap:wrap;gap:.5rem}.live-snapshot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.95rem;gap:.95rem}.snapshot-card{border:1px solid rgba(157,191,255,.2);background:rgba(8,16,34,.56);box-shadow:var(--shadow-soft)}.snapshot-card-unified{position:relative;display:grid;grid-gap:.62rem;gap:.62rem;overflow:hidden;padding:.9rem 1.1rem .95rem;background:linear-gradient(180deg,rgba(12,24,48,.72),rgba(8,16,34,.58)),radial-gradient(420px 120px at 0 0,rgba(77,141,255,.08),transparent 70%)}.snapshot-card-headline{position:absolute;top:.58rem;right:.78rem;z-index:2}.snapshot-stat{min-width:0;padding:.14rem .2rem .18rem;display:grid;grid-gap:.14rem;gap:.14rem;position:relative}.snapshot-stat:not(:last-child):after{content:"";position:absolute;top:.2rem;right:-.48rem;width:1px;height:calc(100% - .4rem);border-radius:999px;background:linear-gradient(180deg,rgba(157,191,255,0),rgba(157,191,255,.22),rgba(0,231,255,.18),rgba(157,191,255,0));pointer-events:none}.snapshot-card-top{display:flex;align-items:center;justify-content:flex-start;min-height:30px}.snapshot-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.16rem .44rem;font-size:.72rem;font-weight:600;letter-spacing:.02em;color:#bde4ff;border:1px solid rgba(157,191,255,.28);background:rgba(77,141,255,.16)}.snapshot-icon-badge{margin-bottom:0;box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.06),0 8px 20px rgba(0,231,255,.08);background:linear-gradient(180deg,rgba(18,62,94,.92),rgba(15,45,73,.92))}.snapshot-value{margin-top:.3rem;font-size:clamp(2rem,2.2vw,2.5rem);line-height:.95;letter-spacing:-.03em;color:#f3fbff;text-shadow:0 8px 20px rgba(0,231,255,.08)}.snapshot-label{margin-top:.2rem;font-size:.82rem;letter-spacing:.01em;color:rgba(214,228,255,.78)}@media (max-width:720px){.live-snapshot-grid{grid-template-columns:1fr;gap:.78rem}.snapshot-stat:not(:last-child):after{top:auto;bottom:-.38rem;left:0;right:0;width:100%;height:1px;background:linear-gradient(90deg,rgba(157,191,255,0),rgba(157,191,255,.22),rgba(0,231,255,.18),rgba(157,191,255,0))}.home-latest-run-item{grid-template-columns:42px minmax(120px,1fr) auto}.home-latest-run-mode{display:none}}.snapshot-meta-chips{margin-top:.78rem;padding:.56rem;border-radius:14px;border:1px solid rgba(157,191,255,.2);background:rgba(8,16,34,.44)}.snapshot-meta-chips .leaderboard-chip{border-color:rgba(157,191,255,.3);background:rgba(77,141,255,.12);color:#d4e6ff}.home-global-language-tabs{margin-top:0;display:grid;grid-gap:.72rem;gap:.72rem;height:100%}.home-insight-grid{margin-top:.9rem;display:grid;grid-template-columns:1fr;grid-gap:.9rem;gap:.9rem;align-items:stretch}.home-insight-grid>.card{height:100%}.home-global-tab-row{display:flex;flex-wrap:wrap;gap:.5rem}.home-global-language-list{display:grid;grid-gap:.45rem;gap:.45rem}.home-latest-runs{display:grid;grid-gap:.72rem;gap:.72rem;height:100%}.home-latest-runs-list{display:grid;grid-gap:.45rem;gap:.45rem;overflow:visible}.home-latest-run-item{border:1px solid rgba(157,191,255,.18);border-radius:10px;padding:.4rem .54rem;background:rgba(8,16,34,.52);display:grid;grid-template-columns:minmax(180px,1fr) auto auto;align-items:center;grid-gap:.45rem;gap:.45rem;overflow:visible}.home-latest-run-item.is-empty{opacity:.5;border-style:dashed}.home-latest-run-user{min-width:0;display:flex;align-items:center;gap:.42rem;flex-wrap:nowrap;overflow:visible}.home-latest-run-user .typing-mini-name-btn{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-latest-run-placeholder{color:#a7b9d7;font-size:.9rem}.home-latest-run-wpm{color:#d8ebff;font-weight:650;font-size:.82rem}.home-latest-run-meta{gap:.35rem;white-space:nowrap}.home-latest-run-language,.home-latest-run-meta{display:inline-flex;align-items:center;min-width:0;overflow:hidden}.home-latest-run-language{gap:.24rem;color:#99b3da;font-size:.74rem;text-overflow:ellipsis}.home-latest-run-language-link{text-decoration:none;transition:color .18s ease,opacity .18s ease}.home-latest-run-language-link:focus-visible,.home-latest-run-language-link:hover{color:#c6ebff;opacity:1}.home-latest-run-sep{color:rgba(157,191,255,.44);font-size:.72rem}.home-latest-run-mode-icon{display:inline-flex;align-items:center;justify-content:center;color:rgba(170,200,236,.85)}.home-latest-run-mode-icon .ui-icon{width:.84rem;height:.84rem}.home-global-language-item{border:1px solid rgba(157,191,255,.18);border-radius:10px;padding:.44rem .56rem;background:rgba(8,16,34,.52);display:grid;grid-template-columns:46px minmax(130px,1fr) auto;align-items:center;grid-gap:.5rem;gap:.5rem}.home-global-language-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#e8f2ff;display:inline-flex;align-items:center;gap:.35rem}.home-feature-grid-minimal{display:block}.home-feature-card-minimal{padding:0}.home-feature-card-minimal .feature-title{font-size:inherit}.home-feature-card-minimal .feature-copy{margin-top:0;font-size:inherit}.home-quick-links{display:flex;flex-wrap:wrap;gap:.6rem}.home-feature-panel{padding:.88rem .92rem}.home-feature-list{display:grid;grid-gap:.75rem;gap:.75rem;grid-template-columns:1fr}.home-feature-row{border:0;border-radius:12px;padding:.66rem .72rem;background:linear-gradient(270deg,rgba(8,16,34,0) 0,rgba(8,16,34,.46) 52%,rgba(8,16,34,.46))}.home-feature-row .feature-title{font-size:1rem}.home-feature-row .feature-copy{margin-top:.36rem;font-size:.9rem}.language-panel{overflow:visible;display:grid;grid-gap:.78rem;gap:.78rem;align-items:start}.language-panel,.section-language{position:relative;z-index:22}.section-stats{position:relative;z-index:8}.language-panel select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;border-radius:12px;border:1px solid var(--border);background:rgba(8,16,34,.8);color:var(--text-primary);padding:.82rem .9rem;font:inherit}.language-preference-meta{display:flex;flex-wrap:wrap;gap:.45rem}.language-recent-wrap{display:grid;grid-gap:.45rem;gap:.45rem}.language-recent-list{display:flex;flex-wrap:wrap;gap:.45rem}.language-recent-chip{border:1px solid rgba(77,141,255,.38);border-radius:999px;background:rgba(77,141,255,.16);color:#d5e6ff;padding:.27rem .52rem;font:inherit;font-size:.8rem;display:inline-flex;align-items:center;gap:.35rem;cursor:pointer;transition:border-color .12s ease,transform .12s ease,color .12s ease}.language-recent-chip:hover{transform:translateY(-1px);border-color:rgba(143,247,255,.62);color:#eff8ff}.badge{display:inline-flex;align-items:center;gap:.35rem;width:-moz-fit-content;width:fit-content;border:1px solid rgba(74,255,183,.35);color:#8affd0;border-radius:999px;font-size:.78rem;padding:.25rem .55rem;letter-spacing:.02em}.footer-note{color:var(--text-muted);font-size:.9rem;margin:2.2rem 0 2.8rem}@media (min-width:800px){.hero-grid{grid-template-columns:1.15fr .85fr;gap:1rem;align-items:start}.feature-grid-advanced,.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.home-highlights,.home-insight-grid,.quick-actions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-insight-grid{align-items:start}.language-panel{grid-template-columns:1fr;gap:.9rem}.home-feature-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:.9rem;row-gap:.72rem}}.top-nav .nav-links{display:none!important}.typing-page{padding-top:5.2rem;padding-bottom:3rem}.typing-header h1{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-outfit),sans-serif;font-size:clamp(1.8rem,4vw,2.7rem);letter-spacing:-.02em;margin:0}.typing-header p{margin:.7rem 0 0;color:var(--text-secondary);max-width:70ch}.competition-page .typing-header{display:grid;grid-gap:.62rem;gap:.62rem;align-content:start}.competition-page .typing-header .kpi-label,.competition-page .typing-header p{margin:0}.competition-page .typing-header>.btn{justify-self:start}.typing-controls{position:relative;z-index:12;margin-top:1rem;display:grid;grid-template-columns:1fr;grid-gap:.9rem;gap:.9rem;align-items:end}.typing-controls>.btn{align-self:end;min-height:46px;white-space:nowrap}.typing-controls label{display:grid;grid-gap:.4rem;gap:.4rem;color:var(--text-secondary);font-size:.92rem}.typing-controls select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:12px;border:1px solid var(--border);background:rgba(8,16,34,.8);color:var(--text-primary);padding:.72rem .85rem;font:inherit}.typing-control-block{display:grid;grid-gap:.45rem;gap:.45rem}.typing-control-label{display:inline-flex;align-items:center;gap:.35rem;margin:0;color:var(--text-secondary);font-size:.86rem;letter-spacing:.01em}.modern-select,.typing-select-wrap{position:relative}.modern-select-trigger{width:100%;border-radius:12px;border:1px solid rgba(157,191,255,.34);background:linear-gradient(160deg,rgba(77,141,255,.18),rgba(8,16,34,.9)),rgba(8,16,34,.85);color:var(--text-primary);padding:.72rem .85rem;font:inherit;font-size:.93rem;display:flex;align-items:center;justify-content:space-between;gap:.7rem;cursor:pointer;transition:border-color .14s ease,box-shadow .14s ease}.modern-select-trigger:hover{border-color:rgba(157,191,255,.5)}.modern-select-trigger.open{border-color:rgba(0,231,255,.55);box-shadow:0 0 0 3px rgba(0,231,255,.16)}.modern-select-trigger:disabled{opacity:.65;cursor:not-allowed}.modern-select-chevron{color:#9ed6ff;font-size:.8rem;line-height:1}.modern-select-panel{position:absolute;top:calc(100% + .38rem);bottom:auto;left:0;right:0;z-index:40;border-radius:12px;padding:.36rem;border:1px solid rgba(157,191,255,.35);background:linear-gradient(165deg,rgba(13,22,44,.98),rgba(24,36,70,.98));box-shadow:0 20px 45px rgba(5,11,24,.45);display:grid;grid-gap:.16rem;gap:.16rem;max-height:260px;overflow:auto}.modern-select-option{border:0;width:100%;text-align:left;border-radius:9px;padding:.55rem .62rem;font:inherit;color:#d7e6ff;background:transparent;cursor:pointer;transition:background-color .12s ease,color .12s ease}.modern-select-value{display:inline-flex;align-items:center;gap:.45rem}.language-flag{font-size:1rem;line-height:1}.language-flag-icon{width:1rem;height:1rem;min-width:1rem;display:inline-grid;place-items:center;border-radius:999px;overflow:hidden}.modern-select-option:hover{background:rgba(77,141,255,.2);color:#f4f9ff}.modern-select-option.active{color:#032033;background:linear-gradient(120deg,#85f5ff,#6ea7ff)}.typing-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;border-radius:12px;border:1px solid rgba(157,191,255,.34);background:linear-gradient(160deg,rgba(77,141,255,.18),rgba(8,16,34,.9)),rgba(8,16,34,.85);color:var(--text-primary);padding:.72rem 2.25rem .72rem .85rem;font:inherit;font-size:.93rem}.typing-select-wrap:after{content:"v";position:absolute;right:.8rem;top:50%;transform:translateY(-50%);color:#9ed6ff;font-size:.82rem;pointer-events:none}.typing-segmented{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.42rem;gap:.42rem}.typing-duration-segmented{grid-template-columns:repeat(4,minmax(0,1fr))}.segment-btn{border-radius:10px;border:1px solid rgba(157,191,255,.28);background:rgba(8,16,34,.68);color:#c9d9f6;padding:.62rem .4rem;font:inherit;font-size:.87rem;text-transform:capitalize;cursor:pointer;transition:border-color .14s ease,background-color .14s ease,color .14s ease,transform .12s ease}.segment-btn:hover{border-color:rgba(77,141,255,.55);background:rgba(77,141,255,.18)}.segment-btn:disabled{opacity:.65;cursor:not-allowed}.segment-btn.active{color:#041728;border-color:rgba(0,231,255,.75);background:linear-gradient(120deg,#7deeff,#a6f9ff);box-shadow:0 8px 24px rgba(0,231,255,.25)}.typing-stats{position:relative;z-index:1}.typing-progress,.typing-stats{margin-top:1rem;contain:paint}.typing-page .typing-arena.card.glass,.typing-page .typing-controls.card.glass,.typing-page .typing-progress.card.glass,.typing-page .typing-stats .card.glass{backdrop-filter:none;-webkit-backdrop-filter:none;background:linear-gradient(160deg,rgba(12,20,40,.96),rgba(10,18,36,.96))}.typing-progress-track{width:100%;height:10px;border-radius:999px;background:hsla(0,0%,100%,.08);overflow:hidden}.typing-progress-label-row{display:flex;align-items:center;justify-content:space-between;gap:.45rem;margin-bottom:.35rem}.typing-progress-mini-label{display:inline-flex;align-items:center;border-radius:999px;padding:.08rem .4rem;font-size:.66rem;font-weight:700;line-height:1;color:#dff5ff;border:1px solid rgba(77,141,255,.45);background:rgba(77,141,255,.16)}.typing-progress-mini-label.ghost{color:#e7efff;border-color:rgba(184,202,255,.45);background:rgba(184,202,255,.16)}.typing-progress-track-ghost{margin-top:.42rem;height:7px;opacity:.8}.typing-progress-bar{height:100%;border-radius:999px;background:linear-gradient(95deg,var(--accent-cyan),var(--accent-blue));transition:width .12s linear}.typing-progress-bar-ghost{background:linear-gradient(95deg,hsla(0,0%,100%,.6),rgba(157,191,255,.65))}.typing-progress p{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;margin:.7rem 0 0;color:var(--text-secondary)}.typing-player-name-linklike{color:#78c5ff;text-decoration:underline;-webkit-text-decoration-color:rgba(120,197,255,.38);text-decoration-color:rgba(120,197,255,.38);text-underline-offset:2px;transition:color .12s ease,-webkit-text-decoration-color .12s ease;transition:color .12s ease,text-decoration-color .12s ease;transition:color .12s ease,text-decoration-color .12s ease,-webkit-text-decoration-color .12s ease}.typing-player-name-linklike:hover{color:#a9ddff;-webkit-text-decoration-color:rgba(169,221,255,.78);text-decoration-color:rgba(169,221,255,.78)}.typing-ghost-motivation{margin:.42rem 0 0;display:inline-flex;align-items:center;gap:.3rem;font-size:.74rem;color:#95abcf}.typing-ghost-motivation .ui-icon{width:.82rem;height:.82rem;color:#8fdfff}.typing-arena{margin-top:1rem}.typing-target{margin:0;padding:1rem;border-radius:14px;background:rgba(5,11,24,.67);border:1px solid rgba(130,170,255,.2);font-family:var(--font-jetbrains-mono),monospace;line-height:1.8;font-size:clamp(.96rem,2.3vw,1.08rem);word-break:break-word}.typing-target-lines{display:grid;grid-gap:.25rem;gap:.25rem;min-height:118px}.typing-target-viewport{position:relative;min-height:118px;overflow:hidden}.typing-target-layer{position:absolute;inset:0;will-change:opacity;transform:none}.typing-line{line-height:1.75;white-space:nowrap;display:flex;align-items:center;justify-content:flex-start;gap:.2rem;overflow:hidden}.typing-word{display:inline-block;flex:0 0 auto;margin:0 0 .3rem;padding:.2rem .38rem;border-radius:7px}.typing-target .word-pending{color:#8da1c8}.typing-target .word-correct{color:#4affb7}.typing-target .word-incorrect{color:#ff6b8a;text-decoration:line-through;text-decoration-thickness:1.5px;-webkit-text-decoration-color:rgba(255,107,138,.9);text-decoration-color:rgba(255,107,138,.9)}.typing-target .word-current{color:#f5fbff;background:rgba(0,0,0,.28);box-shadow:none}.typing-input{margin-top:.9rem;width:100%;min-height:130px;resize:vertical;border-radius:12px;border:1px solid var(--border);background:rgba(8,16,34,.85);color:var(--text-primary);font:inherit;font-size:.98rem;line-height:1.55;padding:.9rem;outline:none}.typing-input-word{min-height:auto;height:52px}.typing-input:focus{border-color:rgba(0,231,255,.5);box-shadow:0 0 0 3px var(--ring)}.typing-result{margin-top:1rem}.typing-result h2{margin:0;font-family:var(--font-outfit),sans-serif;font-size:1.3rem}.typing-result p{margin:.65rem 0 0}.practice-page{display:grid;grid-gap:.95rem;gap:.95rem}.practice-controls{display:grid;grid-gap:.75rem;gap:.75rem}.practice-course-shell{display:grid;grid-template-columns:280px minmax(0,1fr);grid-gap:.8rem;gap:.8rem;align-items:start}.practice-course-list{display:grid;grid-gap:.5rem;gap:.5rem}.practice-course-item{text-align:left;border-radius:12px;border:1px solid rgba(157,191,255,.2);background:rgba(8,16,34,.78);color:var(--text-primary);padding:.62rem .66rem;display:grid;grid-gap:.22rem;gap:.22rem;transition:border-color .16s ease,background-color .16s ease}.practice-course-item:hover{border-color:rgba(129,243,255,.6)}.practice-course-item.active{border-color:rgba(129,243,255,.86);background:linear-gradient(135deg,rgba(34,235,255,.2),rgba(29,165,255,.14))}.practice-course-item.locked{opacity:.48;cursor:not-allowed}.practice-course-item-title{font-weight:700;font-size:.9rem}.practice-course-item-subtitle{color:var(--text-secondary);font-size:.78rem}.practice-course-main{display:grid;grid-gap:.75rem;gap:.75rem}.practice-course-goal{margin:0}.practice-target-text{border-radius:11px;border:1px solid rgba(157,191,255,.22);background:rgba(5,12,26,.78);padding:.7rem .8rem;font-family:var(--font-jetbrains-mono),monospace;color:#dcecff;line-height:1.6}.practice-course-stats{margin-top:.56rem;display:flex;flex-wrap:wrap;gap:.45rem}.practice-course-result{margin-top:.5rem}.practice-course-result .kpi-label{margin:0;display:inline-flex;align-items:center;gap:.4rem}.practice-course-actions{margin-top:.58rem;display:flex;gap:.46rem}.practice-label{display:grid;grid-gap:.38rem;gap:.38rem;color:var(--text-secondary);font-size:.88rem}.practice-label select{width:240px;max-width:100%;border-radius:10px;border:1px solid rgba(157,191,255,.28);background:rgba(8,16,34,.84);color:var(--text-primary);padding:.55rem .65rem;font:inherit}.practice-label select:focus{outline:none;border-color:rgba(0,231,255,.54);box-shadow:0 0 0 3px rgba(0,231,255,.16)}.practice-lesson-group{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.practice-lesson-group .duration-link-btn{min-height:40px}.practice-lesson-group .duration-link-btn.disabled{opacity:.42;cursor:not-allowed;border-color:rgba(157,191,255,.18)}.practice-kpis{margin-top:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.78rem;gap:.78rem}.practice-coach{margin-top:0;padding:.72rem .9rem;border:1px solid rgba(157,191,255,.22);background:linear-gradient(160deg,rgba(11,22,43,.78),rgba(7,15,31,.74)),radial-gradient(380px 80px at 0 0,rgba(0,231,255,.08),transparent 70%)}.practice-coach .kpi-label{margin:0;line-height:1.45}.practice-beginner-flow{display:grid;grid-gap:.6rem;gap:.6rem;padding:.78rem .9rem}.practice-step-track{display:flex;flex-wrap:wrap;gap:.46rem}.practice-step-chip{display:inline-flex;align-items:center;border-radius:999px;border:1px solid rgba(157,191,255,.26);background:rgba(10,20,42,.62);color:#a9bfdf;font-size:.76rem;font-weight:700;padding:.32rem .68rem}.practice-step-chip.active{border-color:rgba(129,243,255,.85);background:linear-gradient(135deg,rgba(34,235,255,.32),rgba(29,165,255,.2));color:#eafcff}.practice-beginner-text{margin:0;line-height:1.5}.practice-beginner-actions{display:flex;flex-wrap:wrap;gap:.45rem}.practice-page .typing-main-card{margin-top:0}.practice-keyboard{margin-bottom:.72rem;background:rgba(5,12,26,.58);padding:.7rem}.practice-keyboard,.practice-pro-keyboard-stage{border-radius:12px;border:1px solid rgba(157,191,255,.2)}.practice-pro-keyboard-stage{position:relative;background:linear-gradient(160deg,rgba(38,44,57,.92),rgba(33,39,52,.9));overflow:hidden;min-height:300px}.practice-pro-keyboard{position:relative;z-index:3;padding:.58rem;display:grid;grid-gap:.34rem;gap:.34rem}.practice-pro-row{display:flex;gap:.32rem}.practice-pro-key{min-height:39px;border-radius:8px;border:1px solid rgba(150,158,177,.42);background:linear-gradient(180deg,rgba(242,244,248,.96),rgba(224,229,238,.94));color:#273247;display:inline-flex;align-items:flex-start;justify-content:space-between;flex-direction:column;font-family:var(--font-jetbrains-mono),monospace;font-size:.69rem;font-weight:700;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:.2rem .35rem .23rem}.practice-pro-key-sub{font-size:.55rem;line-height:1;color:#596783}.practice-pro-key-main{font-size:.71rem;line-height:1;align-self:center}.practice-pro-key.home{border-color:rgba(75,224,255,.52)}.practice-pro-key.target{border-color:rgba(19,214,255,.96);box-shadow:0 0 0 2px rgba(42,227,255,.22);background:linear-gradient(180deg,rgba(204,252,255,.98),rgba(171,240,255,.95))}.practice-pro-key.pressed{background:linear-gradient(180deg,rgba(255,240,211,.98),rgba(255,222,167,.95));border-color:rgba(255,177,87,.92)}.practice-overlay-hands{position:absolute;inset:46px -16px -26px -16px;width:100%;height:auto;z-index:2;pointer-events:none}.practice-overlay-finger,.practice-overlay-thumb{fill:hsla(0,30%,79%,.32);stroke:rgba(120,92,100,.28);stroke-width:2.3;transition:fill .17s ease,stroke .17s ease,filter .17s ease}.practice-overlay-finger.active,.practice-overlay-thumb.active{fill:rgba(70,222,255,.46);stroke:rgba(115,242,255,.9);filter:drop-shadow(0 0 10px rgba(70,222,255,.42))}.practice-phase-note{margin:0 0 .56rem;color:var(--text-secondary);font-size:.84rem}.practice-keyboard-grid{display:grid;grid-gap:.36rem;gap:.36rem}.practice-keyboard-row{display:flex;gap:.34rem;justify-content:center}.practice-keyboard-row-space{margin-top:.14rem}.practice-key{min-width:34px;height:34px;border-radius:8px;border:1px solid rgba(157,191,255,.2);background:rgba(8,16,34,.82);color:#cfe0ff;font-size:.75rem;font-weight:700;letter-spacing:.03em;display:inline-flex;align-items:center;justify-content:center}.practice-key.home{border-color:rgba(92,236,255,.34)}.practice-key.target{border-color:rgba(129,243,255,.9);background:linear-gradient(135deg,rgba(34,235,255,.35),rgba(29,165,255,.2));color:#edfcff;box-shadow:0 0 0 2px rgba(34,235,255,.18)}.practice-key.pressed{transform:translateY(1px);border-color:rgba(255,222,128,.92);background:linear-gradient(135deg,rgba(255,199,90,.36),rgba(255,126,86,.26));color:#fff8ee}.practice-key-space{width:min(420px,80%);max-width:100%;height:32px;border-radius:10px;letter-spacing:.05em}.practice-finger-visual{margin-top:.62rem;display:grid;grid-gap:.5rem;gap:.5rem}.practice-hands-visual{margin-top:.62rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.5rem;gap:.5rem}.practice-hand-svg-card{border-radius:10px;border:1px solid rgba(157,191,255,.2);background:radial-gradient(120% 90% at 10% 0,rgba(65,125,255,.16),transparent 58%),rgba(7,15,31,.78);padding:.5rem;box-shadow:inset 0 1px 0 rgba(170,206,255,.08)}.practice-hand-svg{width:100%;height:auto;display:block}.practice-palm{fill:rgba(29,50,86,.82);stroke:rgba(157,191,255,.3);stroke-width:2}.practice-finger-shape,.practice-thumb-shape{fill:rgba(18,33,60,.96);stroke:rgba(157,191,255,.34);stroke-width:2;transition:fill .18s ease,stroke .18s ease,filter .18s ease,transform .18s ease}.practice-finger-shape.active,.practice-thumb-shape.active{fill:rgba(40,223,255,.62);stroke:rgba(168,248,255,.96);filter:drop-shadow(0 0 9px rgba(40,223,255,.5));transform:translateY(-.6px)}.practice-joint{fill:rgba(129,162,208,.55);stroke:rgba(182,216,255,.42);stroke-width:1.1;transition:fill .18s ease,stroke .18s ease,filter .18s ease}.practice-joint.active{fill:rgba(132,241,255,.95);stroke:#d4fcff;filter:drop-shadow(0 0 5px rgba(40,223,255,.62))}.practice-finger-hand{border-radius:10px;border:1px solid rgba(157,191,255,.2);background:rgba(7,15,31,.72);padding:.52rem}.practice-finger-hand-title{margin:0 0 .42rem;color:#9cc2ff;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700}.practice-finger-lane{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.4rem;gap:.4rem}.practice-finger-thumb{display:flex;justify-content:center}.practice-finger-dot{border-radius:9px;border:1px solid rgba(157,191,255,.2);background:rgba(5,12,26,.74);color:#d9edff;font-size:.72rem;font-weight:700;padding:.36rem .48rem;display:inline-flex;flex-direction:column;gap:.12rem}.practice-finger-legend{margin-top:.48rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.34rem;gap:.34rem}.practice-finger-dot small{color:#9cb2d9;font-size:.64rem;font-weight:600;letter-spacing:.04em}.practice-finger-dot.active{border-color:rgba(129,243,255,.9);background:linear-gradient(135deg,rgba(34,235,255,.32),rgba(29,165,255,.2));box-shadow:0 0 0 2px rgba(34,235,255,.16),0 0 18px rgba(56,220,255,.26);animation:practice-finger-pulse 1.1s ease-in-out infinite}@keyframes practice-finger-pulse{0%,to{transform:translateY(0);filter:brightness(1)}50%{transform:translateY(-1px);filter:brightness(1.08)}}.practice-keyboard-fingers{margin-top:.6rem;display:flex;flex-wrap:wrap;gap:.4rem}.practice-finger-chip{border-radius:999px;border:1px solid rgba(157,191,255,.25);background:rgba(10,20,42,.74);color:#d3e6ff;font-size:.72rem;font-weight:600;padding:.28rem .52rem}.practice-hand-map{margin-top:.62rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.5rem;gap:.5rem}.practice-hand-card{border-radius:10px;border:1px solid rgba(157,191,255,.2);background:rgba(7,15,31,.72);padding:.5rem}.practice-hand-title{margin:0 0 .42rem;color:#9cc2ff;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700}.practice-hand-fingers{display:grid;grid-gap:.32rem;gap:.32rem}.practice-hand-finger{border-radius:8px;border:1px solid rgba(157,191,255,.18);background:rgba(5,12,26,.74);padding:.32rem .42rem;display:flex;justify-content:space-between;align-items:center;gap:.4rem}.practice-hand-finger.active{border-color:rgba(129,243,255,.82);background:linear-gradient(135deg,rgba(34,235,255,.2),rgba(29,165,255,.14));box-shadow:0 0 0 2px rgba(34,235,255,.14)}.practice-hand-finger-label{color:#d9edff;font-size:.72rem;font-weight:700}.practice-hand-finger-keys{color:#9cb2d9;font-size:.68rem;font-weight:600;letter-spacing:.04em}.practice-page .typing-word-grid{min-height:150px;max-height:230px;overflow:auto;border-radius:12px;border:1px solid rgba(157,191,255,.22);background:rgba(5,12,26,.72);padding:.75rem .75rem .55rem;align-content:start}.practice-page .typing-word.done-correct{color:#4affb7}.practice-page .typing-word.done-incorrect{color:#ff6b8a;text-decoration:line-through;text-decoration-thickness:1.5px;-webkit-text-decoration-color:rgba(255,107,138,.9);text-decoration-color:rgba(255,107,138,.9)}.practice-page .typing-word.active{color:#f5fbff;background:rgba(0,0,0,.28)}.practice-recap{display:grid;grid-gap:.62rem;gap:.62rem}.practice-weak-keys{display:flex;flex-wrap:wrap;gap:.45rem}.practice-weak-keys .leaderboard-chip{min-width:40px;justify-content:center}.practice-patterns{margin-top:.1rem}.practice-heatmap{margin-top:.2rem;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));grid-gap:.35rem;gap:.35rem}.practice-heatmap-key{min-height:30px;border-radius:7px;border:1px solid rgba(157,191,255,.22);display:grid;place-items:center;font-size:.72rem;font-weight:700;color:#e8f3ff;letter-spacing:.02em;-webkit-user-select:none;-moz-user-select:none;user-select:none}@media (max-width:920px){.practice-course-shell{grid-template-columns:1fr}.practice-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-key{min-width:30px;height:30px;border-radius:7px;font-size:.69rem}.practice-pro-key{min-height:34px;font-size:.62rem;padding:.14rem .26rem .18rem}.practice-pro-key-sub{font-size:.5rem}.practice-pro-key-main{font-size:.63rem}.practice-pro-keyboard-stage{min-height:250px}.practice-overlay-hands{inset:42px -10px -18px -10px;height:auto}.practice-key-space{width:min(320px,84%);height:30px}.practice-finger-lane,.practice-hands-visual{grid-template-columns:1fr}.practice-finger-legend{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-hand-map{grid-template-columns:1fr}.practice-heatmap{grid-template-columns:repeat(9,minmax(0,1fr))}}.typing-daily-leaderboard{margin-top:1rem;position:relative;isolation:isolate;contain:paint}.typing-daily-leaderboard.glass{backdrop-filter:none;-webkit-backdrop-filter:none;background:linear-gradient(160deg,rgba(12,20,40,.96),rgba(10,18,36,.96))}.typing-mini-leaderboard{margin-top:.72rem;display:grid;grid-gap:.42rem;gap:.42rem;isolation:isolate}.typing-mini-leaderboard-row{border:1px solid rgba(157,191,255,.18);border-radius:10px;padding:.46rem .58rem;background:rgba(8,16,34,.52);display:grid;grid-template-columns:54px minmax(0,1fr) auto auto;align-items:center;grid-gap:.55rem;gap:.55rem;position:relative;z-index:1}.typing-mini-leaderboard-row:has(.user-rank-badge.open),.typing-mini-leaderboard-row:hover{z-index:15}.typing-mini-rank{color:#9feaff;font-family:var(--font-outfit),sans-serif;font-weight:700}.typing-daily-leaderboard .typing-mini-rank:not(.medal){border-radius:999px;color:#2c1a0a;background:linear-gradient(120deg,#d7ad86,#b67f56);border:1px solid rgba(255,191,137,.4)}.typing-daily-leaderboard .typing-mini-rank:not(.medal),.typing-mini-rank.medal{display:inline-flex;align-items:center;justify-content:center;min-width:44px;padding:.15rem .38rem;font-size:.74rem}.typing-mini-rank.medal{position:relative;overflow:hidden;border-radius:999px}.typing-mini-rank.medal:after{content:"";position:absolute;top:-140%;left:-45%;width:38%;height:280%;transform:rotate(20deg);background:linear-gradient(90deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.38),hsla(0,0%,100%,0));animation:medal-shine 3.8s ease-in-out infinite;pointer-events:none}.typing-page .typing-mini-rank.medal:after{display:none}.typing-daily-leaderboard .typing-mini-rank.medal:after{display:none!important;animation:none!important}.typing-mini-rank.medal-1{color:#2a1900;background:linear-gradient(120deg,#ffe699,#ffca5d)}.typing-mini-rank.medal-2{color:#12233a;background:linear-gradient(120deg,#dce4f7,#b7c6e6)}.typing-mini-rank.medal-3{color:#2f1708;background:linear-gradient(120deg,#e8be9a,#ce8f63)}@keyframes medal-shine{0%{left:-48%;opacity:0}12%{opacity:.85}35%{left:120%;opacity:0}to{left:120%;opacity:0}}.typing-mini-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#e8f2ff}.typing-mini-name-btn{border:0;background:transparent;padding:0;text-align:left;font:inherit;color:#e8f2ff;cursor:pointer}.typing-mini-name-btn:hover{color:#9fefff}.typing-mini-user{min-width:0;display:grid;grid-gap:.1rem;gap:.1rem}.typing-mini-name-wrap{min-width:0;display:inline-flex;align-items:flex-start;gap:.3rem}.user-avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;overflow:hidden;border:1px solid rgba(134,214,255,.42);background:rgba(12,24,52,.72);color:#d7ebff;flex-shrink:0}.user-avatar-image{width:100%;height:100%;object-fit:cover;display:block}.user-avatar-fallback{font-weight:700;line-height:1}.user-avatar-xs{width:1.12rem;height:1.12rem}.user-avatar-xs .user-avatar-fallback{font-size:.56rem}.user-avatar-sm{width:1.35rem;height:1.35rem}.user-avatar-sm .user-avatar-fallback{font-size:.64rem}.user-avatar-md{width:4.5rem;height:4.5rem}.user-avatar-md .user-avatar-fallback{font-size:1.35rem}.typing-mini-time{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;color:#8ea3c9}.typing-mini-metric{color:#bfd0ee;font-size:.84rem}.typing-mini-actions{margin-top:.72rem;display:flex;justify-content:flex-end}.typing-top-duration-tabs{margin:.1rem 0 .2rem}.leaderboard-user-tags{margin-top:.34rem;display:flex;flex-wrap:wrap;gap:.28rem}.leaderboard-title-row{margin:0;gap:.34rem}.leaderboard-title-row,.user-rank-tag{display:inline-flex;align-items:center}.user-rank-tag{gap:.22rem;border-radius:999px;padding:.12rem .42rem;font-size:.7rem;font-weight:700;letter-spacing:.01em;color:#dff6ff;border:1px solid rgba(0,231,255,.42);background:rgba(0,231,255,.14)}.user-rank-tag-icon{width:.78rem;height:.78rem}.user-rank-tag-mini{font-size:.64rem;padding:.08rem .34rem}.user-rank-tag-lang_daily_1{border-color:rgba(0,231,255,.45);background:rgba(0,231,255,.14)}.user-rank-tag-lang_weekly_1{border-color:rgba(124,214,255,.5);background:rgba(124,214,255,.16)}.user-rank-tag-lang_alltime_1{border-color:rgba(255,206,102,.52);background:rgba(255,206,102,.16)}.user-name-inline-with-rank{display:inline-flex;align-items:flex-start;gap:.28rem;margin-left:.34rem;vertical-align:baseline}.profile-name-with-rank{display:inline-flex;align-items:center;gap:.24rem;vertical-align:baseline}.profile-name-with-rank .user-rank-badge{transform:none;animation:none}.profile-name-with-rank .user-rank-flag-badge{width:.9rem;min-width:.9rem;flex-basis:0.9rem;height:.9rem;transform:none}.user-rank-badge{position:relative;display:inline-flex;align-items:center;gap:.22rem;transform:translateY(-.22rem);animation:champ-float 3.4s ease-in-out infinite;z-index:260;isolation:isolate}.user-rank-badge.open,.user-rank-badge:hover{z-index:2147483000}.user-role-tag{display:inline-flex;align-items:center;gap:.16rem;border-radius:999px;border:1px solid rgba(202,214,232,.58);background:rgba(166,182,206,.18);color:#e8f2ff;padding:.08rem .3rem;font-size:.58rem;font-weight:800;line-height:1;letter-spacing:.01em}.user-role-tag .ui-icon{width:.54rem;height:.54rem}.user-rank-flag-badge{display:inline-grid;place-items:center;width:.95rem;min-width:.95rem;flex:0 0 0.95rem;height:.95rem;border-radius:999px;border:1px solid rgba(157,191,255,.45);background:rgba(8,16,34,.72);font-size:.62rem;line-height:1;transform:translateY(-.2rem);overflow:hidden}.user-rank-flag-img{width:100%;height:100%;display:block;object-fit:cover}.user-rank-flag-fallback{font-size:.62rem;line-height:1}.user-rank-icon-btn{width:1.02rem;height:1.02rem;border-radius:0;border:0;background:transparent;color:#ffd47d;display:inline-grid;place-items:center;padding:0;cursor:pointer;box-shadow:none;animation:none;filter:drop-shadow(0 0 6px rgba(255,196,92,.45))}.user-rank-icon-btn:hover{filter:drop-shadow(0 0 8px rgba(255,209,120,.55))}.user-rank-icon-btn.tier-today,.user-rank-icon-btn:hover{border-color:transparent;background:transparent;box-shadow:none}.user-rank-icon-btn.tier-today{color:#9ff9ff;filter:drop-shadow(0 0 6px rgba(0,231,255,.5))}.user-rank-icon-btn.tier-today:hover{filter:drop-shadow(0 0 8px rgba(125,245,255,.62))}.user-rank-icon-btn.tier-week{border-color:transparent;background:transparent;color:#d3e2ff;box-shadow:none;filter:drop-shadow(0 0 6px rgba(141,172,255,.55))}.user-rank-icon-btn.tier-week:hover{filter:drop-shadow(0 0 8px rgba(176,197,255,.65))}.user-rank-icon-btn.tier-alltime{border-color:transparent;background:transparent;color:#ffd47d;box-shadow:none;filter:drop-shadow(0 0 6px rgba(255,196,92,.5))}.user-rank-icon-btn.tier-alltime:hover{filter:drop-shadow(0 0 8px rgba(255,209,120,.64))}.user-rank-icon-btn.mode-advanced{color:#d9bdff;filter:drop-shadow(0 0 7px rgba(170,112,255,.58))}.user-rank-icon-btn.mode-advanced.tier-today{color:#caadff;filter:drop-shadow(0 0 7px rgba(160,120,255,.58))}.user-rank-icon-btn.mode-advanced.tier-week{color:#e0c8ff;filter:drop-shadow(0 0 7px rgba(170,125,255,.62))}.user-rank-icon-btn.mode-advanced.tier-alltime{color:#f3d6ff;filter:drop-shadow(0 0 8px rgba(193,136,255,.68))}.user-rank-icon-btn .ui-icon{width:1.02rem;height:1.02rem;stroke-width:2.2}.user-rank-count{position:absolute;right:-.34rem;top:-.34rem;min-width:.72rem;height:.72rem;padding:0 .12rem;border-radius:999px;display:inline-grid;place-items:center;font-size:.52rem;font-weight:800;line-height:1;color:#201200;border:1px solid rgba(255,228,161,.92);background:linear-gradient(135deg,#fff0ba,#ffc96b);box-shadow:0 2px 6px rgba(255,186,71,.48)}.user-rank-icon-btn.tier-today .user-rank-count{color:#003948;border-color:rgba(159,246,255,.9);background:linear-gradient(135deg,#d7fcff,#7defff);box-shadow:0 2px 6px rgba(85,227,255,.44)}.user-rank-icon-btn.tier-week .user-rank-count{color:#0e204a;border-color:rgba(190,208,255,.9);background:linear-gradient(135deg,#e6efff,#b8ccff);box-shadow:0 2px 6px rgba(127,153,255,.45)}.user-rank-icon-btn.tier-alltime .user-rank-count{color:#201200;border-color:rgba(255,228,161,.92);background:linear-gradient(135deg,#fff0ba,#ffc96b);box-shadow:0 2px 6px rgba(255,186,71,.48)}.user-rank-popover{position:absolute;left:50%;top:calc(100% + 8px);bottom:auto;transform:translateX(-50%) translateY(4px);min-width:124px;border-radius:10px;border:1px solid rgba(157,191,255,.28);background:rgba(8,16,34,.94);box-shadow:0 16px 36px rgba(4,10,20,.42);padding:.3rem;display:grid;grid-gap:.2rem;gap:.2rem;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .14s ease,transform .14s ease,visibility .14s ease;z-index:2147483640}.user-rank-badge.open .user-rank-popover,.user-rank-badge:hover .user-rank-popover{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);pointer-events:auto}.user-rank-popover-item{border-radius:8px;padding:.18rem .34rem;font-size:.64rem;font-weight:700;color:#dff6ff;border:1px solid rgba(157,191,255,.2);background:hsla(0,0%,100%,.03);white-space:nowrap}.user-rank-popover-item.lang_daily_1{border-color:rgba(0,231,255,.45);background:rgba(0,231,255,.14)}.user-rank-popover-item.lang_weekly_1{border-color:rgba(124,214,255,.5);background:rgba(124,214,255,.16)}.user-rank-popover-item.lang_alltime_1{border-color:rgba(255,206,102,.52);background:rgba(255,206,102,.16)}.user-rank-popover-item.adv_daily_1{border-color:rgba(176,137,255,.48);background:rgba(161,111,255,.16)}.user-rank-popover-item.adv_weekly_1{border-color:rgba(198,160,255,.52);background:rgba(180,132,255,.18)}.user-rank-popover-item.adv_alltime_1{border-color:rgba(226,187,255,.58);background:rgba(203,156,255,.2)}.user-rank-popover-item.role_mod{border-color:rgba(202,214,232,.6);background:rgba(166,182,206,.2);color:#e8f2ff}.user-rank-popover-note{margin-top:.12rem;padding-top:.22rem;border-top:1px solid rgba(157,191,255,.18);font-size:.56rem;line-height:1.25;color:rgba(180,191,214,.92);letter-spacing:.01em}@keyframes champ-glow{0%,to{box-shadow:0 0 0 1px rgba(255,196,92,.2),0 4px 10px rgba(255,157,38,.28)}50%{box-shadow:0 0 0 1px rgba(255,212,130,.34),0 6px 14px rgba(255,176,66,.45)}}@keyframes champ-float{0%,to{transform:translateY(-.22rem)}50%{transform:translateY(-.28rem)}}.result-modal-backdrop{position:fixed;inset:0;background:rgba(4,8,18,.72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;padding:1rem;z-index:60}.result-modal{width:min(640px,100%);border-radius:22px;padding:1.1rem;border:1px solid rgba(157,191,255,.3);box-shadow:0 24px 80px rgba(6,10,24,.6)}.result-modal-title{margin:.7rem 0 0;font-family:var(--font-outfit),sans-serif;font-size:clamp(1.6rem,4vw,2.1rem);letter-spacing:-.02em}.result-modal-stats{margin-top:.9rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.7rem;gap:.7rem}.result-modal-stats article{border:1px solid rgba(157,191,255,.2);border-radius:12px;padding:.7rem .75rem;background:rgba(7,14,31,.6)}.result-modal-actions{margin-top:1rem;display:flex;justify-content:flex-end}.result-level-up-banner{margin-top:.72rem;gap:.42rem;padding:.38rem .62rem;border-radius:999px;border:1px solid rgba(134,255,214,.45);background:linear-gradient(120deg,rgba(16,56,81,.76),rgba(19,78,61,.68));color:rgba(204,255,238,.98);box-shadow:inset 0 0 0 1px rgba(12,26,46,.5),0 12px 26px rgba(7,20,36,.42),0 0 22px rgba(48,226,183,.24);line-height:1.15}.levelup-toast,.result-level-up-banner{display:inline-flex;align-items:center;font-size:.84rem;font-weight:700;letter-spacing:.01em}.levelup-toast{position:fixed;right:1rem;top:5.4rem;z-index:65;gap:.4rem;padding:.52rem .7rem;border-radius:12px;border:1px solid rgba(151,255,220,.52);background:linear-gradient(130deg,rgba(14,48,74,.9),rgba(16,67,53,.84));color:rgba(222,255,245,.98);box-shadow:0 12px 24px rgba(6,14,27,.42),0 0 22px rgba(66,233,182,.24);line-height:1.2}@media (min-width:900px){.typing-controls{grid-template-columns:minmax(320px,1.35fr) minmax(420px,1.15fr) auto;column-gap:.8rem}.typing-duration-segmented .segment-btn{min-width:0;padding-inline:.3rem}}.admin-page,.competition-page,.leaderboard-page,.multiplayer-page,.profile-page{padding-top:5.2rem;padding-bottom:3rem}.profile-kpis,.profile-summary{margin-top:1rem}.profile-hero-section{margin-top:1rem;display:grid;grid-template-columns:minmax(0,1fr);grid-gap:.9rem;gap:.9rem}.profile-hero-card{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:.7rem;gap:.7rem}.profile-hero-main{display:grid;grid-template-columns:minmax(240px,.42fr) minmax(0,1fr);grid-gap:.9rem;gap:.9rem;align-items:start}.profile-hero-identity{min-width:0;display:grid;grid-gap:.5rem;gap:.5rem}.profile-avatar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.6rem}.profile-avatar-head-actions{display:inline-flex;align-items:center;gap:.42rem}.profile-hero-icon-btn{width:1.9rem;height:1.9rem;border-radius:10px;border:1px solid rgba(157,191,255,.26);background:rgba(8,16,34,.56);color:#bcd3fb;display:inline-grid;place-items:center;text-decoration:none;cursor:pointer;transition:border-color .14s ease,color .14s ease,background-color .14s ease,transform .14s ease}.profile-hero-icon-btn:hover{border-color:rgba(143,239,255,.55);color:#d8f4ff;background:rgba(11,24,50,.78);transform:translateY(-1px)}.profile-hero-icon-btn:disabled{opacity:.55;cursor:not-allowed}.profile-hero-stats-grid{min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.18rem .8rem;gap:.18rem .8rem;align-content:start}.profile-hero-metric{border:0;border-radius:0;background:transparent;padding:.42rem .1rem .5rem;border-bottom:1px solid rgba(157,191,255,.18)}.profile-hero-metric .kpi{font-size:1.52rem;line-height:1.02}.profile-hero-metric .kpi-label{margin-top:.2rem}@media (max-width:920px){.profile-hero-main{grid-template-columns:1fr}}@media (max-width:620px){.profile-hero-stats-grid{grid-template-columns:1fr}}.profile-recent-grid{margin-top:1rem;display:grid;grid-template-columns:1fr;grid-gap:1rem;gap:1rem}.profile-recent-grid>*{min-width:0}.profile-achievements,.profile-missions,.profile-social,.profile-trend{margin-top:1rem}.profile-mission-list,.profile-trend-list{margin-top:.7rem;display:grid;grid-gap:.6rem;gap:.6rem}.profile-mission-item{border:1px solid rgba(157,191,255,.18);border-radius:12px;padding:.62rem .68rem;background:rgba(8,16,34,.52)}.profile-trend-item{border:0;border-radius:0;padding:.12rem 0;background:transparent;min-width:0}.profile-trend-line{margin:0;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;word-break:break-word;line-height:1.45}.profile-trend-link{display:block;width:100%;min-width:0;color:#cfe0ff;transition:color .12s ease}.profile-trend-link:hover{color:#8fefff;text-decoration:underline;-webkit-text-decoration-color:rgba(143,239,255,.7);text-decoration-color:rgba(143,239,255,.7);text-underline-offset:2px}.profile-competition-link{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.2rem 0}.profile-competition-main{min-width:0;display:grid;grid-gap:.08rem;gap:.08rem}.profile-competition-title{display:block;min-width:0;color:#dceaff;font-weight:700;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-competition-meta{margin:0;color:#9fb4d7;font-size:.78rem;line-height:1.25}.profile-competition-chip{display:inline-flex;align-items:center;border-radius:999px;border:1px solid rgba(255,206,102,.46);background:rgba(255,206,102,.14);color:#ffe2a4;padding:.11rem .4rem;font-size:.68rem;font-weight:700;line-height:1;white-space:nowrap}.public-profile-identity{display:inline-flex;align-items:center;gap:.62rem}.public-profile-avatar-lg{width:5rem;height:5rem}.public-profile-name{margin:0}.public-profile-meta{display:flex;flex-wrap:wrap;gap:.42rem .62rem}.runs-chart-shell{margin-top:.72rem;border-radius:16px;border:1px solid rgba(157,191,255,.24);background:radial-gradient(120% 120% at 18% 0,hsla(0,0%,100%,.04),hsla(0,0%,100%,0) 46%),linear-gradient(160deg,rgba(8,16,34,.84),rgba(8,16,34,.55));padding:.72rem;display:grid;grid-gap:.54rem;gap:.54rem}.runs-chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.7rem;flex-wrap:wrap}.runs-chart-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.42rem}.runs-chart-toggle,.runs-mode-toggle{display:inline-flex;align-items:center;gap:.28rem;border:1px solid rgba(157,191,255,.24);border-radius:999px;padding:.14rem;background:rgba(9,19,40,.72)}.runs-mode-btn{border:1px solid transparent;border-radius:999px;background:transparent;color:#aec2df;font:inherit;font-size:.68rem;font-weight:700;line-height:1;padding:.22rem .5rem;cursor:pointer;transition:color .12s ease,border-color .12s ease,background-color .12s ease,opacity .12s ease}.runs-mode-btn:hover{color:#dff3ff;border-color:rgba(157,191,255,.34)}.runs-mode-btn.active{color:#031d27;border-color:color-mix(in oklab,var(--runs-wpm-a),#fff 36%);background:linear-gradient(120deg,color-mix(in oklab,var(--runs-wpm-a),#fff 28%),color-mix(in oklab,var(--runs-wpm-b),#fff 20%))}.runs-mode-btn:disabled{opacity:.45;cursor:not-allowed}.runs-toggle-btn{border:1px solid transparent;border-radius:999px;background:transparent;color:#aac2e4;font:inherit;font-size:.68rem;font-weight:700;line-height:1;padding:.22rem .46rem;cursor:pointer;transition:color .12s ease,border-color .12s ease,background-color .12s ease}.runs-toggle-btn:hover{color:#dff3ff;border-color:rgba(157,191,255,.34)}.runs-toggle-btn.active{color:#031d27;border-color:color-mix(in oklab,var(--runs-wpm-a),#fff 36%);background:linear-gradient(120deg,color-mix(in oklab,var(--runs-wpm-a),#fff 28%),color-mix(in oklab,var(--runs-wpm-b),#fff 20%))}.runs-chart-chip{display:inline-flex;align-items:center;border-radius:999px;border:1px solid rgba(157,191,255,.3);background:rgba(12,24,50,.64);color:#cfe4ff;font-size:.66rem;font-weight:700;line-height:1;padding:.18rem .4rem}.runs-chart-chip.accent{border-color:color-mix(in oklab,var(--runs-wpm-a),#fff 28%);background:color-mix(in oklab,var(--runs-wpm-a),transparent 86%);color:color-mix(in oklab,var(--runs-wpm-a),#fff 30%)}.runs-chart{width:100%;height:auto;display:block}.runs-chart-wrap{position:relative}.runs-plot-bg{fill:rgba(9,20,44,.72);stroke:rgba(157,191,255,.18);stroke-width:1}.runs-grid-line{stroke:rgba(157,191,255,.16);stroke-width:1}.runs-y-label{font-size:10.5px;fill:#9eb6da;font-weight:600}.runs-y-label-right{fill:#b3c5e4}.runs-area{pointer-events:none}.runs-series{animation:runs-series-in .22s ease-out}.runs-line{fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;opacity:.96}.runs-line.wpm{stroke:var(--runs-wpm-a);filter:drop-shadow(0 0 8px color-mix(in oklab,var(--runs-wpm-a),transparent 62%))}.runs-line.acc{stroke:var(--runs-acc-a);filter:drop-shadow(0 0 8px color-mix(in oklab,var(--runs-acc-a),transparent 64%))}.runs-dot{stroke-width:1.4}.runs-dot.wpm{fill:color-mix(in oklab,var(--runs-wpm-a),#fff 22%);stroke:rgba(16,29,57,.95)}.runs-dot.acc{fill:color-mix(in oklab,var(--runs-acc-a),#fff 20%);stroke:rgba(16,29,57,.95)}.runs-crosshair-line{stroke:color-mix(in oklab,var(--runs-wpm-a),#fff 25%);stroke-width:1.2;stroke-dasharray:3 4;opacity:.82}.runs-crosshair-line.soft{stroke-width:1;opacity:.48}.runs-crosshair-line.soft.acc{stroke:color-mix(in oklab,var(--runs-acc-a),#fff 24%)}.runs-dot-focus{stroke-width:1.6}.runs-dot-focus.wpm{fill:color-mix(in oklab,var(--runs-wpm-a),#fff 28%);stroke:rgba(12,22,42,.94);filter:drop-shadow(0 0 8px color-mix(in oklab,var(--runs-wpm-a),transparent 58%))}.runs-dot-focus.acc{fill:color-mix(in oklab,var(--runs-acc-a),#fff 24%);stroke:rgba(12,22,42,.94);filter:drop-shadow(0 0 8px color-mix(in oklab,var(--runs-acc-a),transparent 58%))}.runs-tooltip{position:absolute;z-index:4;min-width:146px;pointer-events:none;border:1px solid rgba(157,191,255,.34);border-radius:12px;background:linear-gradient(160deg,rgba(9,18,40,.96),rgba(8,16,33,.9));box-shadow:0 14px 28px rgba(4,10,20,.5),0 0 0 1px rgba(67,102,166,.16);padding:.42rem .5rem;transition:left 90ms linear,top 90ms linear}.runs-tooltip-date{margin:0 0 .2rem;font-size:.66rem;color:#b6cae9;white-space:nowrap}.runs-tooltip-line{margin:.1rem 0 0;display:flex;align-items:center;justify-content:space-between;gap:.7rem;font-size:.72rem;color:#cadbf4}.runs-tooltip-line strong{color:#e5f3ff;font-weight:700}@keyframes runs-series-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.runs-x-label{font-size:10.5px;fill:#9eb6da;font-weight:600}.runs-chart-legend{display:flex;align-items:center;gap:.8rem;font-size:.72rem;color:#adc0df}.runs-legend-item{display:inline-flex;align-items:center;gap:.35rem}.runs-legend-swatch{width:18px;height:5px;border-radius:999px}.runs-legend-swatch.wpm{background:linear-gradient(90deg,var(--runs-wpm-a),var(--runs-wpm-b))}.runs-legend-swatch.acc{background:linear-gradient(90deg,var(--runs-acc-a),var(--runs-acc-b))}@media (max-width:640px){.runs-chart-head{gap:.54rem}.runs-chart-meta{width:100%}.runs-chart-toggle,.runs-mode-toggle{width:100%;justify-content:center}}.profile-social-row{margin-top:.7rem;display:flex;gap:.55rem;flex-wrap:wrap}.profile-social>.btn{margin-top:.58rem}.profile-social-row .chat-input{min-width:180px}.profile-name-row{display:flex;align-items:center;gap:.45rem;margin-top:.58rem}.profile-name-row .kpi{margin:0}.profile-edit-name-btn{width:1.8rem;height:1.8rem;border-radius:9px;border:1px solid rgba(157,191,255,.24);background:rgba(8,16,34,.58);color:#bcd3fb;display:inline-grid;place-items:center;cursor:pointer;transition:border-color .14s ease,color .14s ease,background-color .14s ease,transform .14s ease}.profile-edit-name-btn:hover:not(:disabled){border-color:rgba(143,239,255,.55);color:#d8f4ff;background:rgba(11,24,50,.78);transform:translateY(-1px)}.profile-edit-name-btn:disabled{opacity:.55;cursor:not-allowed}.profile-avatar-wrap{width:4.5rem;height:4.5rem;border-radius:14px;overflow:hidden;border:1px solid rgba(132,199,255,.28);background:rgba(7,16,35,.58)}.profile-avatar-image{width:100%;height:100%;object-fit:cover;display:block}.profile-avatar-fallback{width:100%;height:100%;border-radius:0;border:0;background:linear-gradient(140deg,rgba(35,72,120,.8),rgba(12,23,45,.9))}.profile-avatar-actions{margin-top:.45rem}.profile-avatar-input{display:none}.profile-displayname-hint{margin:.52rem 0 0;display:inline-flex;align-items:center;gap:.34rem;font-size:.83rem;line-height:1.35;color:#9fb1d0}.profile-displayname-hint .ui-icon{width:.82rem;height:.82rem;color:#84a1cc}.profile-displayname-actions{margin-top:.52rem;display:flex;gap:.42rem;flex-wrap:wrap}.profile-username-linklike{margin-top:.08rem;color:#77b9ff;text-decoration:underline;-webkit-text-decoration-color:rgba(119,185,255,.8);text-decoration-color:rgba(119,185,255,.8);text-underline-offset:2px;cursor:default}.profile-social-actions{margin-top:.45rem;display:flex;gap:.4rem;flex-wrap:wrap}.profile-friend-chip{cursor:pointer;transition:transform .12s ease,border-color .12s ease,color .12s ease}.profile-friend-chip:hover{transform:translateY(-1px);border-color:rgba(143,247,255,.62);color:#e9f8ff}.public-profile-add-friend-btn{display:inline-flex;align-items:center;gap:.35rem;margin-left:.5rem;border-radius:999px;border:1px solid rgba(126,224,255,.42);background:linear-gradient(180deg,rgba(20,48,88,.56),rgba(9,23,49,.64));color:#dff6ff;font-size:.74rem;font-weight:700;padding:.28rem .56rem}.public-profile-add-friend-btn .public-profile-add-friend-icon{font-size:.9rem;line-height:1}.public-profile-add-friend-btn:not(:disabled):hover{transform:translateY(-1px);border-color:rgba(137,237,255,.62);box-shadow:0 8px 18px rgba(0,236,255,.18)}.public-profile-add-friend-btn.state-locked{opacity:.86}.public-profile-friend-notice{margin-top:.22rem;color:#8ef5ff}.friends-dock{position:fixed;right:.9rem;bottom:.5rem;--friends-panel-width:286px;z-index:115;display:flex;flex-direction:column}.friends-dock,.friends-dock-stack{align-items:flex-end;gap:.34rem;pointer-events:none}.friends-dock-stack{display:inline-flex;max-width:calc(100vw - 1.2rem);width:auto}.friends-dock-bar{pointer-events:auto;display:flex;gap:0;border-radius:10px 10px 0 0;width:var(--friends-panel-width);min-width:0;flex:0 0 auto}.friends-dock-bar,.friends-dock-chat-tab{align-items:center;border:1px solid rgba(126,165,226,.26);padding:.24rem .38rem;background:rgba(12,24,48,.95)}.friends-dock-chat-tab{color:#d8ecff;border-radius:10px 10px 0 0;min-width:170px;max-width:220px;display:inline-flex;justify-content:space-between;gap:.5rem;font-size:.72rem;font-weight:650}.friends-dock-chat-tab span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friends-dock-chat-tab.active{border-color:rgba(142,232,255,.52);color:#ecfbff}.friends-dock-chat-tab-close{width:16px;height:16px;border-radius:5px;border:1px solid rgba(115,161,232,.28);background:rgba(10,22,44,.72);color:#d2e9ff;font-size:.72rem;line-height:1}.friends-dock-chat-tab-close,.friends-dock-trigger{display:inline-flex;align-items:center;justify-content:center}.friends-dock-trigger{border:0;background:transparent;color:#d8ecff;position:relative;pointer-events:auto;gap:.32rem;font-size:.74rem;font-weight:650;padding:.18rem .04rem;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;width:100%}.friends-dock-trigger:hover{color:#ecfaff;transform:translateY(-1px)}.friends-dock-count{position:absolute;top:-8px;right:-10px;min-width:18px;height:18px;border-radius:999px;background:linear-gradient(180deg,#ff7676,#ff4e6a);border:1px solid hsla(0,0%,100%,.25);color:#fff;font-size:.68rem;display:inline-flex;align-items:center;justify-content:center;padding:0 .25rem}.friends-dock-panel{width:var(--friends-panel-width);height:290px;padding:.66rem;border-radius:12px 12px 0 0;border:1px solid rgba(130,176,244,.26);overflow:auto;display:grid;grid-gap:.3rem;gap:.3rem;align-content:start;grid-auto-rows:max-content;pointer-events:auto;animation:friendsDockIn .22s ease;background:rgba(9,20,40,.96);flex:0 0 auto}.friends-dock-panel .kpi-label{margin:0}@keyframes friendsDockIn{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.friends-dock-head{display:flex;align-items:center;justify-content:space-between;gap:.4rem}.friends-dock-head h3{margin:0;display:inline-flex;align-items:center;gap:.32rem;font-size:.84rem}.friends-dock-head-actions{display:inline-flex;align-items:center;gap:.28rem}.friends-dock-close{border:1px solid rgba(116,160,232,.3);background:rgba(13,25,47,.72);color:#d7e9ff;border-radius:999px;padding:.24rem .58rem;font-size:.72rem;font-weight:600}.friends-dock-add{display:grid;grid-template-columns:1fr auto;grid-gap:.32rem;gap:.32rem}.friends-dock-toast{margin:0;color:#90f7ff;font-size:.82rem}.friends-dock-section{display:grid;grid-gap:.24rem;gap:.24rem}.friends-dock-list{display:grid;grid-gap:.12rem;gap:.12rem}.friends-dock-item,.friends-dock-request-item{display:grid;grid-template-columns:1fr auto;grid-gap:.42rem;gap:.42rem;align-items:center;border:1px solid rgba(113,158,225,.2);border-radius:9px;background:rgba(12,25,49,.52);padding:.32rem .4rem}.friends-dock-item-linklike{border:0;border-bottom:1px solid rgba(111,152,214,.2);border-radius:0;background:transparent;padding:.14rem .08rem}.friends-dock-item-linklike:last-child{border-bottom:0}.friends-dock-user{min-width:0;display:inline-flex;align-items:center;gap:.45rem;color:#deedff;text-decoration:none}.friends-dock-user span{font-size:.77rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friends-dock-chat-link{border:0;padding:0;background:transparent;color:inherit;min-width:0;display:inline-flex;align-items:center;gap:.45rem;text-align:left}.friends-dock-chat-link:hover span{color:#ecf8ff;text-decoration:underline;-webkit-text-decoration-color:rgba(180,226,255,.55);text-decoration-color:rgba(180,226,255,.55);text-underline-offset:2px}.friends-dock-chat-link.active span{color:#8feeff}.friends-dock-profile-link{width:24px;height:24px;border-radius:7px;border:1px solid rgba(115,166,243,.26);background:rgba(11,23,44,.55);color:#b9defe;display:inline-flex;align-items:center;justify-content:center}.friends-dock-profile-link:hover{border-color:rgba(133,225,255,.52);color:#e9fdff}.friends-dock-chat-btn{width:28px;height:28px;border-radius:8px;border:1px solid rgba(115,166,243,.28);background:rgba(11,23,44,.7);color:#b8dcff;display:inline-flex;align-items:center;justify-content:center}.friends-dock-chat-btn.active,.friends-dock-chat-btn:hover{border-color:rgba(130,229,255,.62);color:#eaffff}.friends-dock-request-actions{display:inline-flex;gap:.28rem}.friends-dock-request-actions .btn{padding:.3rem .48rem;font-size:.72rem}.friends-chat-box{pointer-events:auto;width:var(--friends-panel-width);height:290px;border-radius:10px 10px 0 0;border:1px solid rgba(124,170,240,.3);background:rgba(8,19,39,.97);display:grid;grid-template-rows:auto minmax(120px,1fr) auto auto;overflow:hidden;animation:friendsDockIn .18s ease;flex:0 0 auto}.friends-chat-head{display:flex;align-items:center;justify-content:space-between;gap:.46rem;padding:.44rem .5rem;border-bottom:1px solid rgba(124,167,235,.24);background:rgba(14,30,58,.9)}.friends-chat-peer{min-width:0;display:inline-flex;align-items:center;gap:.38rem;color:#e4f2ff;font-size:.8rem;font-weight:700}.friends-chat-peer span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friends-chat-head-actions{display:inline-flex;align-items:center;gap:.3rem}.friends-chat-close{border:1px solid rgba(117,166,238,.3);border-radius:7px;background:rgba(10,22,43,.72);color:#d9ecff;font-size:.78rem;font-weight:600;font-size:.92rem;line-height:1;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;padding:0}.friends-chat-messages{overflow-y:auto;padding:.4rem;display:grid;grid-gap:.3rem;gap:.3rem;align-content:start}.friends-chat-message{max-width:86%;border-radius:9px;border:1px solid rgba(120,161,222,.2);padding:.28rem .42rem;display:grid;grid-gap:.14rem;gap:.14rem}.friends-chat-message p{margin:0;font-size:.76rem;color:#dfeeff;word-break:break-word}.friends-chat-message time{font-size:.62rem;color:#8ba7cf}.friends-chat-message.mine{justify-self:end;background:rgba(26,73,124,.42);border-color:rgba(102,177,232,.4)}.friends-chat-message.theirs{justify-self:start;background:rgba(12,24,46,.58)}.friends-chat-input-row{padding:.34rem;border-top:1px solid rgba(116,158,224,.18);display:grid;grid-template-columns:1fr auto;grid-gap:.36rem;gap:.36rem}.friends-chat-input-row .chat-input{min-height:32px;font-size:.76rem;padding:.4rem .56rem}.friends-chat-input-row .btn{min-width:56px;padding:.4rem .56rem;font-size:.72rem}.profile-friend-modal-backdrop{position:fixed;inset:0;z-index:70;background:rgba(4,9,20,.68);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:1rem;display:grid;place-items:center}.profile-friend-modal{width:min(920px,100%);max-height:min(88vh,860px);overflow-x:hidden;overflow-y:auto;border-radius:20px}.profile-friend-modal-head{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.profile-friend-modal-actions{display:inline-flex;align-items:center;gap:.45rem}.profile-friend-modal-body{margin-top:.9rem;display:grid;grid-gap:.85rem;gap:.85rem}.profile-friend-modal .profile-name-with-rank{display:inline-flex;flex-wrap:wrap;align-items:center;row-gap:.16rem;column-gap:.24rem;max-width:100%;width:100%}.profile-friend-modal .profile-name-with-rank>span:first-child{flex:1 1 100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-friend-modal .profile-name-with-rank .user-rank-badge,.profile-friend-modal .profile-name-with-rank .user-rank-flag-badge{transform:none}.profile-friend-modal .grid-3{position:relative;z-index:1}.profile-friend-modal .grid-3:first-child:has(.user-rank-badge.open),.profile-friend-modal .grid-3:first-child:has(.user-rank-badge:hover){z-index:2147483600}.leaderboard-filters{margin-top:1rem;display:grid;grid-template-columns:1fr;grid-gap:.8rem;gap:.8rem}.leaderboard-modes{margin-top:1rem;display:flex;gap:.6rem}.leaderboard-duration-wrap{margin-top:.6rem;display:grid;grid-gap:.38rem;gap:.38rem;justify-items:start}.leaderboard-sub-separator{width:220px;height:1px;background:linear-gradient(90deg,rgba(0,231,255,.62),rgba(157,191,255,.18))}.leaderboard-duration-links{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center;justify-content:flex-start}.duration-link-btn{border:0;border-bottom:1px solid transparent;background:transparent;color:#9fb4d7;padding:.12rem 0;font:inherit;font-size:.82rem;font-weight:600;cursor:pointer;transition:border-color .13s ease,color .13s ease}.duration-link-btn:hover{border-bottom-color:rgba(157,191,255,.55);color:#dce9ff}.duration-link-btn.active{border-bottom-color:rgba(0,231,255,.82);color:#dff7ff}.leaderboard-filters label,.multiplayer-form label{display:grid;grid-gap:.35rem;gap:.35rem;color:var(--text-secondary);font-size:.92rem}.leaderboard-filters select,.multiplayer-form input{border-radius:10px;border:1px solid var(--border);background:rgba(8,16,34,.85);color:var(--text-primary);padding:.7rem .8rem;font:inherit}.leaderboard-table-wrap{margin-top:1rem}.competition-grid{margin-top:1rem}.competition-grid,.competition-main-col{display:grid;grid-gap:.9rem;gap:.9rem}.competition-create-card{position:relative;z-index:24;overflow:visible}.competition-create-grid{margin-top:.75rem;display:grid;grid-gap:.7rem;gap:.7rem;grid-template-columns:1fr}.competition-create-grid label{display:grid;grid-gap:.34rem;gap:.34rem;color:var(--text-secondary);font-size:.9rem}.competition-create-grid select{border-radius:10px;border:1px solid var(--border);background:rgba(8,16,34,.85);color:var(--text-primary);padding:.7rem .8rem;font:inherit}.competition-create-actions{margin-top:.7rem}.competition-room-list{margin-top:0;position:relative;z-index:8}.competition-language-select .modern-select-panel{z-index:56}.competition-room-card{gap:.65rem}.competition-room-card.selected{border-color:rgba(0,231,255,.52);box-shadow:inset 0 0 0 2px rgba(0,231,255,.14)}.competition-room-select{border:0;padding:0;margin:0;text-align:left;background:transparent;color:inherit;width:100%;cursor:pointer}.competition-room-title-row{display:flex;align-items:center;justify-content:space-between;gap:.55rem;flex-wrap:wrap}.competition-room-entry{width:100%;text-align:left;cursor:pointer;color:inherit}.competition-room-entry .leaderboard-title{color:#e8f2ff}.competition-room-open-text{color:#b8c9e6;font-size:.82rem;font-weight:600;text-transform:lowercase;letter-spacing:.01em}.competition-room-actions{display:inline-flex;align-items:center;gap:.45rem;flex-wrap:wrap;justify-content:flex-end}.competition-room-joined-badge{display:inline-flex;align-items:center;padding:.14rem .44rem;border-radius:999px;border:1px solid rgba(0,231,255,.42);background:rgba(0,231,255,.14);color:#dff7ff;font-size:.72rem;font-weight:700;letter-spacing:.01em;text-transform:lowercase}.competition-room-entry:hover .competition-room-open-text{color:#e3f3ff}.competition-room-warning-chip{display:inline-flex;align-items:center;gap:.34rem;padding:.16rem .5rem;border-radius:999px;border:1px solid rgba(255,190,92,.56);background:rgba(255,190,92,.16);color:#ffe2b0;font-size:.72rem;font-weight:700;letter-spacing:.01em;white-space:nowrap;box-shadow:inset 0 0 0 1px rgba(255,190,92,.18);animation:competition-warning-pulse 1.9s ease-in-out infinite}.competition-room-warning-chip .ui-icon{width:.82rem;height:.82rem;color:#ffd594}@keyframes competition-warning-pulse{0%,to{box-shadow:inset 0 0 0 1px rgba(255,190,92,.18),0 0 0 rgba(255,190,92,0)}50%{box-shadow:inset 0 0 0 1px rgba(255,190,92,.3),0 0 18px rgba(255,190,92,.22)}}.competition-detail{display:grid;align-content:start;grid-gap:.55rem;gap:.55rem}.competition-meta{display:flex;flex-wrap:wrap;gap:.45rem}.competition-detail-top{display:block}.competition-countdown-chip,.competition-meta span{display:inline-flex;align-items:center;gap:.3rem;border:1px solid rgba(157,191,255,.2);background:hsla(0,0%,100%,.03);border-radius:999px;padding:.24rem .54rem;font-size:.8rem;color:#d7e5ff}.competition-countdown-chip{white-space:nowrap}.competition-actions{margin-top:.2rem}.competition-host-edit{border:1px solid rgba(157,191,255,.18);border-radius:12px;padding:.62rem .68rem;background:rgba(8,16,34,.44);display:grid;grid-gap:.55rem;gap:.55rem}.competition-edit-grid{display:grid;grid-gap:.6rem;gap:.6rem}.competition-edit-grid label{display:grid;grid-gap:.34rem;gap:.34rem;color:var(--text-secondary);font-size:.9rem}.competition-edit-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.62rem;margin-bottom:.2rem}.competition-edit-actions .btn.is-refreshing .ui-icon{animation:competition-refresh-spin .85s linear infinite}@keyframes competition-refresh-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.competition-ranking{display:grid;grid-gap:.45rem;gap:.45rem;width:100%}.competition-rank-row{border:1px solid rgba(157,191,255,.18);border-radius:10px;padding:.45rem .58rem;background:rgba(8,16,34,.52);display:grid;grid-template-columns:54px minmax(96px,1fr) 88px minmax(0,1fr);grid-gap:.55rem;gap:.55rem;align-items:center}.competition-rank-row .typing-mini-rank{justify-self:start}.competition-rank-row .competition-profile-link{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.competition-rank-row .typing-mini-metric{justify-self:start;text-align:left;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.competition-rank-row .typing-mini-time{min-width:0;overflow:hidden;text-overflow:ellipsis;text-align:right;justify-self:end;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.competition-rank-row.winner{border-color:rgba(0,231,255,.54);background:linear-gradient(120deg,rgba(0,231,255,.12),rgba(77,141,255,.12))}.competition-profile-link{border:0;background:transparent;color:#dff1ff;font:inherit;text-align:left;font-weight:600;padding:0;cursor:pointer}.competition-profile-link:hover{color:#9fefff}.competition-chip-list{margin-top:.6rem;display:flex;flex-wrap:wrap;gap:.42rem}.competition-chip{border-radius:8px;padding:.24rem .45rem;border:1px solid rgba(77,141,255,.38);background:rgba(77,141,255,.16);color:#d5e6ff;font-size:.78rem;cursor:pointer}.competition-chip.winner{border-color:rgba(0,231,255,.62);color:#dff8ff;background:rgba(0,231,255,.16)}.competition-history-list{margin-top:.7rem;display:grid;grid-gap:.4rem;gap:.4rem}.competition-history-row{border:1px solid rgba(157,191,255,.16);border-radius:10px;padding:.42rem .56rem;background:rgba(8,16,34,.5);display:grid;grid-template-columns:44px minmax(120px,1fr) auto minmax(130px,auto);grid-gap:.48rem;gap:.48rem;align-items:center}.competition-history-row.winner{border-color:rgba(0,231,255,.54);background:rgba(0,231,255,.1)}.competition-typing-full{margin-top:1rem}.competition-room-stack{margin-top:1rem;display:grid;grid-gap:1rem;gap:1rem}.competition-room-stack .competition-typing-full{margin-top:0}.admin-panel-card{margin-top:1rem;display:grid;grid-gap:.9rem;gap:.9rem}.admin-panel-top{display:grid;grid-gap:.7rem;gap:.7rem}.admin-tabs{display:inline-flex;align-items:center;gap:.42rem;margin-bottom:.75rem}.admin-tab-dot{width:.48rem;height:.48rem;border-radius:999px;margin-left:.34rem;background:linear-gradient(135deg,#7cf6ff,#48b7ff);box-shadow:0 0 0 1px rgba(124,214,255,.4),0 0 8px rgba(0,231,255,.45)}.admin-search{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;grid-gap:.5rem;gap:.5rem}.admin-feedback{margin:0;display:inline-flex;align-items:center;gap:.35rem}.admin-feedback-error{color:#ffc7d4}.admin-feedback-success{color:#9af5c7}.admin-workspace-grid{display:grid;grid-gap:.7rem;gap:.7rem;grid-template-columns:1fr}.admin-form-card{border:1px solid rgba(157,191,255,.2);border-radius:14px;padding:.74rem;background:rgba(8,16,34,.5);display:grid;grid-gap:.65rem;gap:.65rem}.admin-form-grid{display:grid;grid-gap:.55rem;gap:.55rem;grid-template-columns:1fr}.admin-form-grid label{display:grid;grid-gap:.3rem;gap:.3rem;color:var(--text-secondary);font-size:.86rem}.admin-form-actions{display:flex;gap:.5rem;flex-wrap:wrap}.admin-modal-card{width:min(520px,100%)}.admin-user-list{margin-top:.15rem;display:grid;grid-gap:.55rem;gap:.55rem}.admin-user-item{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.5rem .2rem;border-bottom:1px solid rgba(157,191,255,.18)}.admin-user-item:last-child{border-bottom:0}.admin-user-line{min-width:0;display:inline-flex;align-items:center;gap:.36rem;flex-wrap:wrap}.admin-user-name{font-family:var(--font-outfit),sans-serif;font-size:.98rem;font-weight:700;color:#e9f2ff}.admin-user-meta{color:var(--text-secondary);font-size:.84rem}.admin-user-username{color:#86c7ff;font-weight:600;letter-spacing:.01em}.admin-user-sep{min-width:.34rem;color:rgba(157,191,255,.45)}.admin-edit-btn,.admin-user-sep{display:inline-flex;align-items:center;justify-content:center;font-size:.8rem;line-height:1}.admin-edit-btn{min-width:66px;padding:.42rem .58rem}.admin-user-status{margin-left:.5rem;display:inline-flex;align-items:center;border-radius:999px;border:1px solid rgba(157,191,255,.3);padding:.08rem .36rem;font-size:.68rem;font-weight:700;line-height:1;letter-spacing:.01em}.admin-user-status.active{border-color:rgba(74,255,183,.42);color:#a9ffd7;background:rgba(74,255,183,.14)}.admin-user-status.disabled{border-color:rgba(255,107,138,.42);color:#ffc7d4;background:rgba(255,107,138,.14)}.admin-user-role{margin-left:.34rem;display:inline-flex;align-items:center;border-radius:999px;border:1px solid rgba(157,191,255,.32);background:rgba(157,191,255,.12);color:#dbe9ff;padding:.08rem .34rem;font-size:.68rem;font-weight:700;line-height:1;letter-spacing:.01em}.admin-user-role.mod{border-color:rgba(255,196,92,.5);background:rgba(255,196,92,.16);color:#ffe4b2}.admin-user-role.admin{border-color:rgba(124,214,255,.54);background:rgba(124,214,255,.18);color:#def6ff}.admin-role-actions{display:inline-flex;gap:.4rem;flex-wrap:wrap}.admin-branding-row{margin-top:.55rem;display:grid;grid-template-columns:minmax(220px,320px) 1fr;grid-gap:.75rem;gap:.75rem;align-items:center}.admin-branding-list{display:grid;grid-gap:.8rem;gap:.8rem}.admin-branding-item{border:1px solid rgba(157,191,255,.18);border-radius:12px;background:rgba(8,16,34,.38);padding:.65rem}.admin-branding-item-head{display:grid;grid-gap:.14rem;gap:.14rem}.admin-branding-item-head .kpi-label,.admin-branding-item-head .leaderboard-title{margin:0}.admin-branding-preview{border:1px solid rgba(157,191,255,.24);border-radius:12px;background:rgba(8,16,34,.54);min-height:66px;display:grid;align-items:center;padding:.5rem .65rem}.admin-branding-image{width:100%;max-height:52px;object-fit:contain}.admin-branding-actions{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.admin-branding-state{display:inline-flex;align-items:center;border-radius:999px;padding:.2rem .58rem;font-size:.78rem;font-weight:700;letter-spacing:.01em}.admin-branding-state.default{color:#c9d8f2;border:1px solid rgba(157,191,255,.24);background:rgba(157,191,255,.12)}.admin-branding-state.custom{color:#cffff3;border:1px solid rgba(74,255,183,.45);background:rgba(74,255,183,.16)}.admin-file-btn{position:relative;overflow:hidden}.admin-file-btn input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.admin-word-bank-list{display:grid;grid-gap:.85rem;gap:.85rem}.admin-word-bank-head{display:flex;justify-content:space-between;align-items:center;gap:.65rem;flex-wrap:wrap}.admin-word-bank-head .kpi-label{margin:0}.admin-word-bank-head code{font-family:var(--font-space),monospace;font-size:.78em;color:#9dd8ff}.admin-word-bank-grid{display:grid;grid-gap:.75rem;gap:.75rem}.admin-word-bank-item{border:1px solid rgba(157,191,255,.18);border-radius:12px;background:rgba(8,16,34,.38);padding:.65rem}.admin-word-bank-item.open{border-color:rgba(124,214,255,.34)}.admin-word-bank-item-head .leaderboard-title{margin:0;display:inline-flex;align-items:center;gap:.38rem}.admin-word-bank-item-head.compact{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.admin-word-bank-language-btn{display:inline-flex;align-items:center;gap:.38rem;border:0;outline:0;background:transparent;color:var(--text-primary);font-family:var(--font-outfit),sans-serif;font-size:.95rem;font-weight:700;cursor:pointer;padding:0}.admin-word-bank-language-btn:hover{color:#b9ecff}.admin-word-bank-summary-chips{display:inline-flex;align-items:center;gap:.35rem;flex-wrap:wrap}.admin-word-bank-mode-grid{margin-top:.5rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.58rem;gap:.58rem}.admin-word-bank-mode-card{border:1px solid rgba(157,191,255,.2);border-radius:10px;background:rgba(7,14,31,.58);padding:.56rem;display:grid;grid-gap:.45rem;gap:.45rem;align-content:start}.admin-word-bank-mode-card .kpi-label{margin:0}.admin-word-bank-actions{display:inline-flex;align-items:center;gap:.45rem;flex-wrap:wrap}.leaderboard-list{display:grid;grid-gap:.55rem;gap:.55rem}.leaderboard-item{border:1px solid rgba(157,191,255,.18);border-radius:14px;padding:.58rem .65rem;background:rgba(7,14,31,.62);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:.45rem .7rem;gap:.45rem .7rem}.leaderboard-item-head{display:flex;align-items:center;gap:.56rem;min-width:0}.leaderboard-rank{min-width:34px;height:34px;border-radius:999px;display:grid;place-items:center;font-weight:800;font-size:.82rem;color:#031423;background:linear-gradient(120deg,#8ff7ff,#4d8dff)}.leaderboard-rank,.leaderboard-title{font-family:var(--font-outfit),sans-serif}.leaderboard-title{margin:0;font-size:.95rem;line-height:1.1}.leaderboard-sub{margin:.08rem 0 0;color:var(--text-muted);font-size:.78rem;line-height:1.1}.leaderboard-metrics{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.34rem;margin-top:0}.leaderboard-metrics span{display:inline-flex;align-items:center;gap:.24rem;border:1px solid rgba(157,191,255,.2);background:hsla(0,0%,100%,.03);border-radius:999px;padding:.2rem .46rem;font-size:.76rem;line-height:1.05;color:#d7e5ff}.leaderboard-metrics .ui-icon{width:.72rem;height:.72rem}.leaderboard-metric-green{border-color:rgba(157,191,255,.36)!important;background:rgba(12,24,48,.9)!important;color:#cfe5ff!important;box-shadow:inset 0 0 0 1px rgba(77,141,255,.15)}.leaderboard-chips{margin-top:.6rem;display:flex;flex-wrap:wrap;gap:.42rem}.leaderboard-chip{border-radius:8px;padding:.24rem .45rem;border:1px solid rgba(77,141,255,.38);background:rgba(77,141,255,.16);color:#d5e6ff;font-size:.78rem}.leaderboard-table{width:100%;border-collapse:collapse;min-width:760px}.leaderboard-table td,.leaderboard-table th{text-align:left;padding:.72rem .55rem;border-bottom:1px solid rgba(157,191,255,.17);white-space:nowrap;font-size:.92rem}.leaderboard-table th{color:#d8e6ff;font-family:var(--font-outfit),sans-serif;letter-spacing:.01em}.multiplayer-grid,.multiplayer-layout{margin-top:1rem;display:grid;grid-template-columns:1fr;grid-gap:.9rem;gap:.9rem}.multiplayer-main-col{display:grid;grid-gap:.9rem;gap:.9rem}.multiplayer-room-directory{margin-top:1rem}.room-directory-list{margin-top:.7rem;display:grid;grid-gap:.62rem;gap:.62rem}.room-directory-card{border:1px solid rgba(157,191,255,.2);border-radius:12px;padding:.65rem .7rem;background:rgba(8,16,34,.56);display:flex;justify-content:space-between;gap:.8rem;align-items:center}.multiplayer-typing{margin-top:.8rem;padding:0;border:0;background:transparent;box-shadow:none}.multiplayer-form{margin-top:.7rem;display:grid;grid-gap:.7rem;gap:.7rem}.multiplayer-room{margin-top:1rem}.multiplayer-connection{margin-top:1rem;display:grid;grid-gap:.7rem;gap:.7rem;position:relative;z-index:12}.multiplayer-meta-row{display:flex;flex-wrap:wrap;gap:.55rem}.multiplayer-meta-pill{margin:0;display:inline-flex;align-items:center;gap:.38rem;border-radius:999px;border:1px solid rgba(157,191,255,.32);background:rgba(8,16,34,.68);color:var(--text-secondary);padding:.34rem .62rem;font-size:.84rem;line-height:1.2}.multiplayer-meta-pill .ui-icon{width:.86rem;height:.86rem;color:#9ed6ff}.multiplayer-meta-pill strong{color:var(--text-primary);font-weight:700}.multiplayer-language-select .modern-select-panel{z-index:58}.multiplayer-create-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,320px);grid-gap:.7rem;gap:.7rem;align-items:end}.multiplayer-create-row .create-room-btn{height:44px}@media (max-width:860px){.multiplayer-create-row{grid-template-columns:1fr}}.multiplayer-buttons{margin-top:.8rem;display:flex;gap:.6rem;flex-wrap:wrap}.exit-room-btn{border-color:rgba(255,107,138,.38)}.exit-room-btn.need-exit{border-color:rgba(255,107,138,.82);background:rgba(255,107,138,.16);color:#ffdce5;animation:exit-shake .36s ease-in-out 3}.exit-room-alert{color:#ffc7d4}@keyframes exit-shake{0%,to{transform:translateX(0)}20%{transform:translateX(-2px)}40%{transform:translateX(2px)}60%{transform:translateX(-2px)}80%{transform:translateX(2px)}}.battle-arena{margin-top:1rem}.battle-target{margin-top:.7rem}.battle-bars{margin-top:.9rem;display:grid;grid-gap:.75rem;gap:.75rem}.battle-bar-card{border:1px solid rgba(157,191,255,.18);border-radius:12px;padding:.65rem;background:rgba(7,14,31,.55)}.battle-bar-head{display:flex;justify-content:space-between;gap:.7rem;margin-bottom:.5rem;color:#d7e5ff;font-size:.92rem}.multiplayer-chat{margin-top:1rem}.multiplayer-chat-inline{margin-top:0;align-self:start}.multiplayer-chat-sidebar{margin-top:0}.chat-list{margin-top:.7rem;max-height:260px;overflow:auto;display:grid;align-content:start;grid-auto-rows:max-content;grid-gap:.45rem;gap:.45rem;padding-right:.34rem;margin-right:-.22rem;scrollbar-width:thin;scrollbar-color:rgba(125,226,255,.62) rgba(22,35,64,.68)}.chat-list::-webkit-scrollbar{width:9px}.chat-list::-webkit-scrollbar-track{background:linear-gradient(180deg,rgba(18,28,52,.82),rgba(12,20,40,.92));border-radius:999px;border:1px solid rgba(157,191,255,.2)}.chat-list::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(145,243,255,.95),rgba(87,178,255,.92));border-radius:999px;border:2px solid rgba(12,20,40,.9);box-shadow:0 0 10px rgba(0,231,255,.28)}.chat-list::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,rgba(170,248,255,.98),rgba(112,196,255,.95))}.chat-item{margin:0;padding:.08rem 0;border-radius:0;border:0;background:transparent;color:#c7d5ee;min-height:0;height:auto;box-shadow:none}.chat-item.chat-self{background:transparent;color:#e5efff}.multiplayer-profile-link{color:#9ed9ff;text-decoration:underline;-webkit-text-decoration-color:rgba(158,217,255,.62);text-decoration-color:rgba(158,217,255,.62);text-underline-offset:2px}.multiplayer-profile-link:hover{color:#e4f7ff;-webkit-text-decoration-color:rgba(228,247,255,.95);text-decoration-color:rgba(228,247,255,.95)}.chat-input{flex:1 1;border-radius:10px;border:1px solid var(--border);background:rgba(8,16,34,.85);color:var(--text-primary);padding:.7rem .8rem;font:inherit}.room-player-list{list-style:none;margin:.7rem 0 0;padding:0;display:grid;grid-gap:.55rem;gap:.55rem}.room-player-list li{border:1px solid rgba(157,191,255,.18);border-radius:10px;padding:.6rem .7rem;display:flex;justify-content:space-between;gap:.5rem;align-items:center;color:var(--text-secondary);background:rgba(8,16,34,.52)}.room-player-main{display:flex;align-items:center;gap:.55rem}.room-player-avatar{width:28px;height:28px;border-radius:999px;display:grid;place-items:center;background:linear-gradient(120deg,rgba(0,231,255,.3),rgba(77,141,255,.36));border:1px solid rgba(157,191,255,.35);color:#eaf4ff;font-size:.8rem;font-weight:700}.room-player-badges{display:flex;gap:.35rem}.status-badge{font-size:.76rem;border-radius:999px;padding:.18rem .45rem;border:1px solid transparent}.status-badge.online{color:#8affd0;border-color:rgba(74,255,183,.4);background:rgba(74,255,183,.12)}.status-badge.offline{color:#ff9aac;border-color:rgba(255,107,138,.35);background:rgba(255,107,138,.12)}.status-badge.ready{color:#a1e7ff;border-color:rgba(0,231,255,.38);background:rgba(0,231,255,.12)}.status-badge.waiting{color:#c6d3ee;border-color:rgba(157,191,255,.28);background:rgba(157,191,255,.1)}.ui-icon{width:1em;height:1em;flex:0 0 auto}.ui-icon-accent{color:#9defff}.ui-icon-badge{width:30px;height:30px;border-radius:10px;display:inline-grid;place-items:center;margin-bottom:.45rem;border:1px solid rgba(157,191,255,.28);background:linear-gradient(145deg,rgba(0,231,255,.24),rgba(77,141,255,.18));color:#ccf6ff}@media (min-width:840px){.leaderboard-filters{grid-template-columns:repeat(4,minmax(0,1fr))}.battle-bars,.competition-create-grid,.multiplayer-grid,.profile-recent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-recent-grid{align-items:start}.admin-workspace-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1100px){.multiplayer-layout{grid-template-columns:minmax(0,1.75fr) minmax(340px,.85fr);align-items:start;gap:1rem}.multiplayer-chat-sidebar{margin-top:0;align-self:start;display:flex;flex-direction:column;height:620px}.multiplayer-chat-sidebar .chat-list{flex:1 1;max-height:none;min-height:0}.competition-grid{grid-template-columns:minmax(0,1.55fr) minmax(360px,.95fr);align-items:start;gap:1rem}}@media (max-width:1280px){.top-nav{padding-inline:.72rem}.brand{font-size:1rem}.nav-links{gap:.18rem;font-size:.84rem}.nav-links a{padding:.32rem .48rem}.auth-pill{font-size:.76rem}.auth-user-menu-panel{min-width:154px}.side-rail{left:max(.45rem,calc((100vw - min(1140px, calc(100vw - 2.2rem))) / 2 - 172px));top:10.9rem;width:162px}.side-rail-link{min-height:32px}}@media (max-width:980px){.site-shell{width:min(1140px,calc(100% - 1.4rem))}.top-nav{padding:.48rem .58rem;gap:.55rem}.brand-wordmark{width:auto;height:34px;max-width:clamp(148px,27vw,215px)}.hero-copy p,.typing-header p{max-width:100%;font-size:.96rem}.typing-controls>.btn{width:100%}.typing-target{padding:.8rem;font-size:.95rem}.typing-word{padding:.16rem .3rem;margin-bottom:.2rem}.typing-progress p{font-size:.88rem;line-height:1.45}.multiplayer-page .typing-header p{max-width:100%}.room-directory-card{align-items:flex-start;flex-direction:column}.room-directory-card .btn{width:100%}.room-player-badges,.room-player-list li{flex-wrap:wrap}.multiplayer-buttons .btn{flex:1 1 180px}.multiplayer-chat-sidebar .multiplayer-buttons{flex-wrap:nowrap}.admin-branding-row,.admin-search,.admin-word-bank-mode-grid{grid-template-columns:1fr}.chat-input{min-width:0}}@media (max-width:1400px) and (min-width:721px){.side-rail{display:block;width:58px;left:.6rem;top:10.3rem;padding:.34rem .26rem .4rem;border-radius:16px;background:rgba(8,14,30,.9);border:1px solid rgba(157,191,255,.26);box-shadow:0 12px 28px rgba(4,10,22,.42);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.side-rail-brand{justify-content:center;margin-bottom:.72rem;padding:.06rem 0}.side-rail-brand span{display:none}.side-rail-brand-logo{width:30px;height:30px}.side-rail-nav{gap:.84rem}.side-rail-link{min-height:26px;justify-content:center;padding:0;border-radius:0;background:transparent;border:0;position:relative}.side-rail-link .ui-icon{width:1.18rem;height:1.18rem;color:#a9bce2;transition:color .14s ease,transform .14s ease,filter .14s ease}.side-rail-link:not(:last-child):after{content:"";position:absolute;left:50%;transform:translateX(-50%);bottom:-.46rem;width:34px;height:1px;border-radius:999px;background:linear-gradient(90deg,rgba(157,191,255,0),rgba(157,191,255,.42),rgba(157,191,255,0));pointer-events:none}.side-rail-link span{display:none}.side-rail-unread-badge{top:-6px;right:-8px}.side-rail-link:before{content:attr(data-tooltip);position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%) scale(.98);padding:.28rem .5rem;border-radius:8px;border:1px solid rgba(157,191,255,.34);background:rgba(8,16,34,.96);color:#dcecff;font-size:.76rem;font-weight:700;letter-spacing:.01em;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease,transform .12s ease,visibility .12s ease;z-index:56;box-shadow:0 10px 22px rgba(4,10,22,.45)}.side-rail-link.active,.side-rail-link:hover{border-color:transparent;background:transparent}.side-rail-link:hover .ui-icon{color:#d8ecff;transform:translateY(-1px) scale(1.06);filter:drop-shadow(0 0 8px rgba(124,214,255,.32))}.side-rail-link:focus-visible:before,.side-rail-link:hover:before{opacity:1;visibility:visible;transform:translateY(-50%) scale(1)}.side-rail-link.active .ui-icon{color:#7deeff;transform:scale(1.08);filter:drop-shadow(0 0 10px rgba(0,231,255,.45))}}@media (max-width:720px){body{padding-bottom:5.2rem}.site-shell{width:calc(100% - 1rem)}.top-nav{margin-top:.75rem;top:10px;border-radius:16px}.hero{padding-top:4.2rem}.leaderboard-modes{flex-wrap:wrap}.leaderboard-modes .btn{flex:1 1 150px}.leaderboard-sub-separator{width:100%}.typing-controls{gap:.72rem}.typing-duration-segmented{grid-template-columns:repeat(2,minmax(0,1fr))}.typing-stats.grid-3{grid-template-columns:1fr}.typing-target-lines,.typing-target-viewport{min-height:104px}.typing-mini-leaderboard-row{grid-template-columns:48px minmax(0,1fr);row-gap:.22rem}.result-modal-stats{grid-template-columns:1fr}.multiplayer-chat-sidebar{height:auto}.chat-list{max-height:220px}.side-rail{left:.55rem;top:auto;bottom:.75rem;transform:none;width:calc(100% - 1.1rem);max-width:none;padding:.35rem;border-radius:14px;background:rgba(8,14,30,.92);border:1px solid rgba(157,191,255,.24);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}.side-rail-nav{display:flex;flex-wrap:nowrap;gap:.72rem;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;scroll-snap-type:x proximity;padding-bottom:0;justify-content:center;align-items:center}.side-rail-nav::-webkit-scrollbar{display:none}.side-rail-brand{display:none}.side-rail-link{width:auto;min-height:34px;min-width:34px;flex:0 0 auto;justify-content:center;padding:.22rem .3rem;gap:0;border-radius:0;background:transparent;border:0;scroll-snap-align:start;position:relative}.side-rail-link:not(:last-child):after{content:"";position:absolute;right:-.39rem;top:50%;transform:translateY(-50%);width:1px;height:16px;border-radius:999px;background:linear-gradient(180deg,rgba(157,191,255,0),rgba(157,191,255,.5),rgba(157,191,255,0));pointer-events:none}.side-rail-link span{display:none}.side-rail-unread-badge{top:-5px;right:-6px}.side-rail-link .ui-icon{width:1.08rem;height:1.08rem;color:#9fb3d7;transition:color .14s ease,transform .14s ease,filter .14s ease}.side-rail-link:hover{border-color:transparent;background:transparent}.side-rail-link:hover .ui-icon{color:#d8ecff;transform:translateY(-1px) scale(1.04);filter:drop-shadow(0 0 8px rgba(124,214,255,.28))}.side-rail-link.active{border-color:transparent;background:transparent}.side-rail-link.active .ui-icon{color:#7deeff;filter:drop-shadow(0 0 10px rgba(0,231,255,.42))}.notification-head{align-items:flex-start}.notification-head,.notification-item{flex-direction:column}.friends-dock{right:.72rem;bottom:5.9rem;--friends-panel-width:min(320px,calc(100vw - 1.4rem))}.friends-chat-box,.friends-dock-panel{height:300px}.friends-dock-stack{flex-direction:column;align-items:flex-end}}@media (max-width:1080px){.friends-dock{--friends-panel-width:min(300px,calc(100vw - 1.4rem))}.friends-dock-stack{flex-direction:column;align-items:flex-end}}@media (max-width:520px){.btn{padding:.65rem .78rem;font-size:.87rem}.typing-header h1{font-size:clamp(1.45rem,8vw,1.9rem)}.leaderboard-item{grid-template-columns:1fr;align-items:start;gap:.42rem}.leaderboard-item-head{align-items:flex-start}.leaderboard-metrics{justify-content:flex-start}.competition-rank-row{grid-template-columns:48px minmax(88px,1fr) 66px}.competition-rank-row .typing-mini-time{grid-column:2/-1;justify-self:end}.competition-history-row{grid-template-columns:40px minmax(100px,1fr) auto}.competition-history-row .typing-mini-time{grid-column:2/-1}.leaderboard-rank{min-width:36px;height:36px;font-size:.84rem}.multiplayer-buttons{gap:.5rem}.multiplayer-buttons .btn{flex:1 1 100%}.multiplayer-chat-sidebar .multiplayer-buttons{flex-wrap:wrap}.multiplayer-chat-sidebar .multiplayer-buttons .btn{flex-basis:auto}}