@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-base:#05050f;--bg-surface:#0d0d22;--bg-card:#ffffff0a;--bg-card-hover:#ffffff12;--border:#ffffff14;--border-glow:#7c3aed80;--violet:#7c3aed;--violet-light:#a78bfa;--violet-glow:#7c3aed59;--gold:#f59e0b;--gold-light:#fcd34d;--gold-glow:#f59e0b66;--green:#10b981;--red:#ef4444;--text:#e8e8f4;--text-muted:#e8e8f480;--text-subtle:#e8e8f440;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--shadow-glow:0 0 30px #7c3aed33;--shadow-card:0 8px 32px #0009}html,body,#root{width:100%;height:100%}body{background:var(--bg-base);color:var(--text);background-image:radial-gradient(80% 60% at 50% -10%,#7c3aed2e 0%,#0000 70%),radial-gradient(50% 40% at 90% 100%,#f59e0b14 0%,#0000 60%);background-attachment:fixed;font-family:Inter Variable,Inter,system-ui,sans-serif;line-height:1.5;overflow-x:hidden}.app{flex-direction:column;min-height:100vh;display:flex}.app-header{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:100;background:#05050fcc;justify-content:space-between;align-items:center;padding:16px 28px;display:flex;position:sticky;top:0}.app-logo{align-items:center;gap:10px;font-size:22px;display:flex}.app-logo-text{background:linear-gradient(135deg, var(--violet-light), var(--gold-light));-webkit-text-fill-color:transparent;letter-spacing:-.5px;-webkit-background-clip:text;background-clip:text;font-size:20px;font-weight:800}.app-header-right{gap:10px;display:flex}.app-main{flex:1;align-items:flex-start;gap:24px;width:100%;max-width:1480px;margin:0 auto;padding:28px;display:flex}.app-sidebar{flex-direction:column;flex-shrink:0;gap:16px;width:240px;display:flex}.app-board{flex-direction:column;flex:1;align-items:center;gap:16px;min-width:0;display:flex}.app-board-hint{color:var(--text-muted);text-align:center;font-size:13px}.btn-primary,.btn-ghost,.btn-listen{cursor:pointer;border-radius:var(--radius-sm);border:none;font-family:inherit;font-weight:600;transition:all .2s}.btn-primary{background:var(--violet);color:#fff;padding:10px 24px;font-size:15px}.btn-primary:hover{background:#6d28d9;transform:translateY(-1px)}.btn-ghost{border:1px solid var(--border);color:var(--text-muted);background:0 0;padding:8px 14px;font-size:13px}.btn-ghost:hover{border-color:var(--violet-light);color:var(--text)}.btn-link{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.btn-listen{background:linear-gradient(135deg, var(--violet), #5b21b6);color:#fff;border-radius:var(--radius-md);width:100%;box-shadow:0 4px 20px var(--violet-glow);letter-spacing:.3px;padding:14px;font-size:15px}.btn-listen:hover{box-shadow:0 6px 28px var(--violet-glow);transform:translateY(-2px)}.btn-listen:active{transform:translateY(0)}.btn-listen--active{background:linear-gradient(135deg,#dc2626,#991b1b);animation:2s infinite pulse-btn;box-shadow:0 4px 20px #dc262666}@keyframes pulse-btn{0%,to{box-shadow:0 4px 20px #dc262666}50%{box-shadow:0 4px 32px #dc2626b3}}.loading-screen{justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.loading-orb{pointer-events:none;background:radial-gradient(circle,#7c3aed33 0%,#0000 70%);border-radius:50%;width:600px;height:600px;animation:4s ease-in-out infinite orb-pulse;position:absolute}@keyframes orb-pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.loading-content{z-index:1;flex-direction:column;align-items:center;gap:24px;width:100%;max-width:460px;padding:0 24px;display:flex}.loading-logo{flex-direction:column;align-items:center;gap:12px;display:flex}.loading-logo-icon{filter:drop-shadow(0 0 20px #7c3aedcc);font-size:56px}.loading-title{background:linear-gradient(135deg, var(--violet-light) 0%, var(--gold-light) 100%);-webkit-text-fill-color:transparent;letter-spacing:-1px;-webkit-background-clip:text;background-clip:text;font-size:40px;font-weight:800}.loading-subtitle{color:var(--text-muted);letter-spacing:2px;font-size:15px}.loading-card{border:1px solid var(--border);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:100%;box-shadow:var(--shadow-card);background:#ffffff08;flex-direction:column;gap:16px;padding:24px;display:flex}.loading-status-text{color:var(--text-muted);text-align:center;font-size:14px}.loading-progress-wrap{flex-direction:column;gap:8px;display:flex}.loading-progress-bar{background:var(--border);border-radius:10px;height:6px;overflow:hidden}.loading-progress-fill{background:linear-gradient(90deg, var(--violet), var(--gold));height:100%;box-shadow:0 0 10px var(--violet-glow);border-radius:10px;transition:width .3s}.loading-progress-info{color:var(--text-subtle);justify-content:space-between;font-size:12px;display:flex}.loading-hint{color:var(--text-subtle);text-align:center;font-size:12px;line-height:1.6}.loading-dots{gap:8px;display:flex}.loading-dots span{background:var(--violet-light);border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite dot-bounce}.loading-dots span:nth-child(2){animation-delay:.16s}.loading-dots span:nth-child(3){animation-delay:.32s}@keyframes dot-bounce{0%,80%,to{opacity:.3;transform:scale(0)}40%{opacity:1;transform:scale(1)}}.error-screen{justify-content:center;align-items:center;min-height:100vh;display:flex}.error-card{background:var(--bg-card);border-radius:var(--radius-lg);text-align:center;border:1px solid #ef44444d;flex-direction:column;gap:16px;max-width:400px;padding:40px;display:flex}.error-icon{font-size:48px}.error-card h2{color:var(--red);font-size:22px}.error-card p{color:var(--text-muted);word-break:break-word;font-size:14px}.bingo-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card), var(--shadow-glow);width:100%;max-width:520px;overflow:hidden}.bingo-header{background:linear-gradient(135deg, var(--violet) 0%, #4c1d95 100%);grid-template-columns:repeat(5,1fr);display:grid}.bingo-header-cell{color:#fff;letter-spacing:2px;text-shadow:0 2px 8px #0006;justify-content:center;align-items:center;padding:14px 0;font-size:22px;font-weight:800;display:flex}.bingo-grid{background:var(--border);grid-template-columns:repeat(5,1fr);gap:1px;display:grid}.bingo-cell{background:var(--bg-surface);cursor:default;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:80px;padding:10px 6px;transition:all .25s;display:flex;position:relative;overflow:hidden}.bingo-cell:before{content:"";opacity:0;transition:opacity .25s;position:absolute;inset:0}.bingo-cell--marked{background:#7c3aed26}.bingo-cell--hit{animation:.6s ease-out cell-hit}@keyframes cell-hit{0%{transform:scale(1)}30%{background:#f59e0b4d;transform:scale(1.12)}60%{transform:scale(.97)}to{transform:scale(1)}}.bingo-cell--win{box-shadow:inset 0 0 20px #f59e0b40;background:#f59e0b2e!important}.bingo-cell--win:before{opacity:1;background:linear-gradient(135deg,#f59e0b1a,#0000)}.bingo-cell--free{background:linear-gradient(135deg,#7c3aed40,#5b21b626)}.bingo-cell-emoji{font-size:14px;line-height:1}.bingo-cell-text{color:var(--text);text-align:center;word-break:break-word;font-size:12px;font-weight:600;line-height:1.3}.bingo-cell-copy{flex-direction:column;align-items:center;gap:2px;max-width:100%;display:flex}.bingo-cell-reading{color:var(--text-subtle);text-align:center;word-break:break-word;max-width:100%;font-size:10px;line-height:1.2}.bingo-cell--marked .bingo-cell-text{color:var(--violet-light)}.bingo-cell--marked .bingo-cell-reading{color:#a78bfabf}.bingo-cell--win .bingo-cell-text{color:var(--gold-light)}.bingo-cell--win .bingo-cell-reading{color:#fcd34dcc}.bingo-cell-check{color:var(--violet-light);font-size:16px;font-weight:700;line-height:1;animation:.4s cubic-bezier(.34,1.56,.64,1) checkmark-pop}.bingo-cell--win .bingo-cell-check{color:var(--gold-light)}@keyframes checkmark-pop{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.bingo-cell-free-star{color:var(--gold-light);filter:drop-shadow(0 0 10px var(--gold-glow));font-size:28px;animation:8s linear infinite star-spin}@keyframes star-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.voice-indicator{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;align-items:center;gap:12px;padding:16px;transition:border-color .3s;display:flex}.voice-indicator--active{border-color:var(--violet);box-shadow:0 0 20px var(--violet-glow)}.voice-bars{align-items:flex-end;gap:3px;height:48px;display:flex}.voice-bar{background:linear-gradient(to top, var(--violet), var(--violet-light));opacity:.4;border-radius:3px;width:5px;height:4px;transition:height 50ms}.voice-indicator--active .voice-bar{opacity:1;filter:drop-shadow(0 0 4px var(--violet-glow))}.voice-label{color:var(--text-muted);font-size:12px;font-weight:500}.transcript-feed{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;flex:1;min-height:200px;display:flex;overflow:hidden}.transcript-header{color:var(--text-subtle);letter-spacing:1px;text-transform:uppercase;border-bottom:1px solid var(--border);padding:10px 14px;font-size:11px;font-weight:600}.transcript-list{flex-direction:column;flex:1;gap:6px;padding:8px;display:flex;overflow-y:auto}.transcript-empty{color:var(--text-subtle);text-align:center;padding:20px 0;font-size:13px}.transcript-entry{border-radius:var(--radius-sm);background:#ffffff08;align-items:center;gap:8px;padding:7px 10px;font-size:13px;animation:.25s entry-slide;display:flex}.transcript-entry--hit{background:#7c3aed26;border:1px solid #7c3aed4d}@keyframes entry-slide{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.transcript-lang{flex-shrink:0;font-size:14px}.transcript-text{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.transcript-entry--hit .transcript-text{color:var(--violet-light);font-weight:500}.transcript-hit-badge{color:var(--green);flex-shrink:0;font-size:11px;font-weight:700}.win-banner{background:linear-gradient(135deg, var(--gold) 0%, #f97316 100%);text-align:center;z-index:99;padding:14px;animation:.5s cubic-bezier(.34,1.56,.64,1) banner-drop;position:sticky;top:65px;box-shadow:0 4px 20px #f59e0b80}.win-banner-text{color:#fff;letter-spacing:1px;text-shadow:0 2px 8px #0000004d;font-size:20px;font-weight:800}.typing-nav{flex-shrink:0;width:340px;display:flex}.mode-select-panel,.typing-nav-card{box-shadow:var(--shadow-card), 0 0 40px #7c3aed14;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(#ffffff0a,#ffffff06),linear-gradient(145deg,#7c3aed1f,#0a0a1814 42%);border:1px solid #ffffff17;border-radius:32px;flex-direction:column;gap:16px;width:100%;height:100%;padding:28px 24px 24px;display:flex;position:relative;overflow:hidden}.mode-select-panel:before,.typing-nav-card:before{content:"";pointer-events:none;background:radial-gradient(circle at 0 0,#7c3aed24,#0000 42%),linear-gradient(#ffffff05,#0000 35%);position:absolute;inset:0}.typing-nav-kicker,.typing-panel-kicker{color:var(--text-subtle);text-transform:uppercase;letter-spacing:1.1px;font-size:11px;font-weight:700}.typing-nav-title,.typing-panel-title{letter-spacing:-.8px;font-size:24px;font-weight:800;line-height:1.15}.typing-nav-copy{color:var(--text-muted);max-width:none;margin-top:2px;font-size:14px;line-height:1.65}.typing-nav-links{z-index:1;flex:1;grid-template-rows:repeat(4,minmax(0,1fr));gap:12px;display:grid;position:relative}.mode-card,.typing-nav-link{color:var(--text);background:linear-gradient(135deg,#2b1852eb,#1e123aeb);border:1px solid #7c3aed73;border-radius:20px;justify-content:space-between;align-items:center;gap:14px;padding:16px 20px;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s,background .2s;display:flex}.mode-card:hover,.typing-nav-link:hover{border-color:var(--violet-light);background:linear-gradient(135deg,#3a1f6df5,#221444f5);transform:translateY(-2px);box-shadow:0 12px 30px #7c3aed33}.typing-nav-link-main{align-items:center;gap:14px;display:flex}.typing-nav-link-code{color:#fff;letter-spacing:.4px;min-width:40px;font-size:19px;font-weight:800}.typing-nav-link-stack{flex-direction:column;gap:3px;display:flex}.typing-nav-link-name{color:var(--text-muted);font-size:13px;font-weight:600}.typing-nav-link-native{color:var(--text-subtle);font-size:11px}.typing-nav-link-tail{color:#ffffffe0;letter-spacing:.8px;font-size:15px;font-weight:700}.typing-page-main{flex:1;justify-content:center;width:100%;padding:32px 24px 40px;display:flex}.typing-panel{flex-direction:column;gap:18px;width:100%;max-width:920px;display:flex}.typing-panel-header{flex-direction:column;gap:8px;padding:0 4px;display:flex}.typing-current-card,.typing-controls-card,.typing-history-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:22px}.typing-current-card{flex-direction:column;justify-content:center;gap:18px;min-height:260px;display:flex}.typing-section-label{color:var(--text-subtle);text-transform:uppercase;letter-spacing:1px;font-size:11px;font-weight:700}.typing-current-text{letter-spacing:-1px;word-break:break-word;font-size:clamp(30px,4vw,46px);font-weight:800;line-height:1.2}.typing-current-text--placeholder{color:#e8e8f438;letter-spacing:2px}.typing-current-hint{color:var(--text-muted);font-size:14px}.typing-controls-card{flex-direction:column;gap:14px;display:flex}.typing-controls{gap:12px;display:flex}.typing-control-button{flex:1}.typing-control-button:disabled{cursor:not-allowed;opacity:.75;transform:none;box-shadow:0 4px 20px #7c3aed29}.typing-clear-button{min-width:132px;font-size:14px}.typing-history-card{flex-direction:column;gap:14px;min-height:320px;display:flex}.typing-history-list{flex-direction:column;flex:1;gap:10px;max-height:380px;padding-right:4px;display:flex;overflow-y:auto}.typing-history-empty{min-height:220px;color:var(--text-subtle);text-align:center;flex:1;justify-content:center;align-items:center;font-size:14px;display:flex}.typing-history-entry{border-radius:var(--radius-md);color:var(--text-muted);background:#ffffff0a;border:1px solid #0000;padding:14px 16px;font-size:15px;line-height:1.55;transition:background .2s,border-color .2s}.typing-history-entry--latest{color:var(--text);background:#7c3aed2e;border-color:#7c3aed47;box-shadow:inset 0 0 0 1px #7c3aed14}.typing-error-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}@keyframes banner-drop{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px}@media (width<=1180px){.app-main{flex-wrap:wrap}.app-board{flex-basis:min(100%,520px)}.typing-nav{width:100%}}@media (width<=700px){.app-main{flex-direction:column;gap:14px;padding:14px}.app-sidebar{flex-flow:wrap;width:100%}.voice-indicator{flex:1;min-width:140px}.btn-listen{flex:1;min-width:120px}.transcript-feed{flex-basis:100%}.typing-nav-card{padding:18px}.typing-page-main{padding:18px 14px 28px}.typing-current-card,.typing-controls-card,.typing-history-card{padding:18px}.typing-controls{flex-direction:column}.typing-clear-button{width:100%}}.mode-select-page,.lang-select,.custom-mix{flex-direction:column;align-items:center;gap:36px;min-height:100vh;padding:48px 24px 64px;display:flex}.mode-select-shell{justify-content:center;align-items:stretch;gap:34px;width:100%;max-width:1380px;display:flex}.mode-select{flex-direction:column;flex:1;min-width:0;max-width:820px;display:flex}.mode-select-panel{gap:18px}.mode-select-header,.typing-nav-header{text-align:left;z-index:1;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:10px;min-height:206px;padding:8px 6px 0;display:flex;position:relative}.mode-select-logo{color:var(--text-muted);letter-spacing:1px;text-transform:uppercase;font-size:15px;font-weight:700}.mode-select-title{background:linear-gradient(135deg, var(--violet-light), var(--gold-light));-webkit-text-fill-color:transparent;letter-spacing:-1.8px;text-wrap:balance;-webkit-background-clip:text;background-clip:text;font-size:58px;font-weight:800;line-height:.98}.mode-select-subtitle{color:var(--text-muted);font-size:15px}.typing-nav-header .typing-nav-title{margin-top:2px}.mode-grid{z-index:1;flex:1;grid-template-rows:repeat(4,minmax(0,1fr));gap:16px;width:100%;max-width:none;display:grid;position:relative}.mode-card{cursor:pointer;width:100%;color:var(--text);text-align:left;gap:18px;font-family:inherit;transition:all .2s;position:relative;overflow:hidden}.mode-card:before{content:"";background:linear-gradient(135deg, var(--violet-glow), transparent);opacity:0;transition:opacity .2s;position:absolute;inset:0}.mode-card:hover:before{opacity:1}.mode-card:active{transform:translateY(0)}.mode-card-icon{filter:drop-shadow(0 0 8px #7c3aed66);flex-shrink:0;font-size:40px}.mode-card-body{z-index:1;flex-direction:column;flex:1;gap:3px;display:flex;position:relative}.mode-card-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.mode-card-title{color:var(--text);font-size:19px;font-weight:700}.mode-card-subtitle{color:var(--text-muted);font-size:14px;font-weight:500}.mode-card-desc{color:var(--text-subtle);margin-top:4px;font-size:13px;line-height:1.5}.mode-card-arrow{color:var(--text-subtle);z-index:1;flex-shrink:0;font-size:28px;transition:transform .2s;position:relative}.mode-card:hover .mode-card-arrow{color:var(--violet-light);transform:translate(3px)}.mode-card-tag{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;padding:2px 8px;font-size:10px;font-weight:700}.tag--green{color:#34d399;background:#10b98126;border:1px solid #10b9814d}.tag--yellow{color:#fcd34d;background:#f59e0b26;border:1px solid #f59e0b4d}.tag--red{color:#f87171;background:#ef444426;border:1px solid #ef44444d}.tag--blue{color:#93c5fd;background:#4f8ef726;border:1px solid #4f8ef74d}.lang-grid{grid-template-columns:repeat(2,1fr);gap:14px;width:100%;max-width:480px;display:grid}.lang-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;color:var(--text);flex-direction:column;align-items:center;gap:8px;padding:28px 16px;font-family:inherit;transition:all .2s;display:flex}.lang-card:hover{border-color:var(--violet-light);box-shadow:var(--shadow-card), 0 0 24px var(--violet-glow);background:var(--bg-card-hover);transform:translateY(-3px)}.lang-card:active{transform:translateY(0)}.lang-card-flag{font-size:40px}.lang-card-native{font-size:18px;font-weight:700}.lang-card-name{color:var(--text-muted);font-size:12px}.back-btn{border:1px solid var(--border);color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;background:0 0;align-self:flex-start;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:600;transition:all .2s}.back-btn:hover{border-color:var(--violet-light);color:var(--text)}.custom-mix{gap:28px}.custom-mix-langs{flex-direction:column;gap:10px;width:100%;max-width:480px;display:flex}.custom-lang-row{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:8px;padding:14px 16px;transition:border-color .2s;display:flex}.custom-lang-row.active{border-color:#7c3aed66}.custom-lang-row.inactive{opacity:.55}.custom-lang-toggle{cursor:pointer;color:var(--text);text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:0;font-family:inherit;display:flex}.custom-lang-flag{font-size:22px}.custom-lang-name{flex:1;font-size:15px;font-weight:600}.custom-lang-check{color:var(--violet-light);text-align:center;width:24px;font-size:16px;font-weight:700}.custom-lang-row.inactive .custom-lang-check{color:var(--text-subtle)}.custom-lang-slider-row{align-items:center;gap:12px;padding-left:32px;display:flex}.custom-slider{appearance:none;background:var(--border);cursor:pointer;border-radius:4px;outline:none;flex:1;height:4px}.custom-slider::-webkit-slider-thumb{appearance:none;background:var(--violet-light);cursor:pointer;width:18px;height:18px;box-shadow:0 0 8px var(--violet-glow);border-radius:50%;transition:transform .15s}.custom-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.custom-pct{color:var(--violet-light);text-align:right;min-width:38px;font-size:13px;font-weight:700}.custom-mix-preview{flex-direction:column;gap:10px;width:100%;max-width:480px;display:flex}.custom-mix-preview-label{color:var(--text-subtle);text-transform:uppercase;letter-spacing:1px;font-size:11px;font-weight:600}.custom-mix-preview-bar{background:var(--border);border-radius:8px;height:10px;display:flex;overflow:hidden}.custom-mix-preview-segment{min-width:2px;height:100%;transition:width .3s}.custom-mix-preview-legend{flex-wrap:wrap;gap:12px;display:flex}.custom-mix-legend-item{color:var(--text-muted);align-items:center;gap:5px;font-size:12px;display:flex}.custom-mix-legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.start-btn{background:linear-gradient(135deg, var(--violet), #5b21b6);color:#fff;border-radius:var(--radius-md);cursor:pointer;box-shadow:0 4px 24px var(--violet-glow);letter-spacing:.3px;border:none;padding:16px 48px;font-family:inherit;font-size:17px;font-weight:700;transition:all .2s}.start-btn:hover{box-shadow:0 6px 32px var(--violet-glow);transform:translateY(-2px)}.start-btn:active{transform:translateY(0)}.app-header-center{position:absolute;left:50%;transform:translate(-50%)}.app-mode-badge{color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border);border-radius:20px;padding:4px 14px;font-size:13px;font-weight:600}@media (width<=600px){.mode-select-page,.lang-select,.custom-mix{gap:24px;padding:28px 16px 48px}.mode-select-shell{flex-direction:column;gap:24px}.mode-select{width:100%}.mode-select-panel{padding:18px 14px 14px}.mode-select-header,.typing-nav-header{min-height:auto;padding:6px 2px 0}.mode-select-title{font-size:34px}.lang-grid{grid-template-columns:repeat(2,1fr)}.mode-card{border-radius:24px;padding:16px 18px}.mode-card-icon{font-size:28px}.mode-grid,.typing-nav-links{grid-template-rows:none}.typing-nav-card{padding:18px 14px 14px}.typing-nav-header{min-height:auto}.app-header-center{display:none}}
