:root{--primary:#60a5fa;--primary-hover:#3b82f6;--secondary:#94a3b8;--accent:#f59e0b;--danger:#ef4444;--success:#22c55e;--bg-main:#0f172a;--bg-card:#1e293b;--bg-input:#334155;--text-main:#f8fafc;--text-muted:#cbd5e1;--text-inverted:#0f172a;--border:#334155;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:"JetBrains Mono","Fira Code",monospace;--radius-sm:0.25rem;--radius-md:0.5rem;--radius:0.5rem;--radius-lg:1rem;--container-width:1200px;--focus-ring:0 0 0 3px rgba(96,165,250,0.5)}:focus{outline:none}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;box-shadow:var(--focus-ring)}[data-theme=light]{--primary:#3b82f6;--primary-hover:#2563eb;--secondary:#64748b;--bg-main:#f8fafc;--bg-card:#ffffff;--bg-input:#f1f5f9;--text-main:#0f172a;--text-muted:#475569;--text-inverted:#ffffff;--border:#e2e8f0;--focus-ring:0 0 0 3px rgba(59,130,246,0.5)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-main);color:var(--text-main);line-height:1.6;transition:background-color .3s ease,color .3s ease}img{max-width:100%;height:auto}input,select,textarea{font:inherit;color:inherit}.skip-link{position:absolute;top:.75rem;left:.75rem;z-index:1000;padding:.75rem 1rem;border-radius:var(--radius-md);background:var(--bg-card);border:2px solid var(--primary);color:var(--text-main);transform:translateY(-200%);transition:transform .2s ease}.skip-link:focus-visible{transform:translateY(0)}@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}a{text-decoration:none;color:var(--primary);transition:color .2s}a:hover{color:var(--primary-hover)}button{cursor:pointer;border:none;background:none;font-family:inherit;transition:all .2s cubic-bezier(.4,0,.2,1)}button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}button:active{transform:scale(.95)}.container{max-width:var(--container-width);margin:0 auto;padding:0 1.25rem}@media (max-width:479px){.container{padding:0 .75rem}}@media (max-width:359px){.container{padding:0 .5rem}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.btn{gap:.5rem;padding:clamp(.45rem,1.2vw,.75rem) clamp(.75rem,2.5vw,1.5rem);font-weight:600;font-size:clamp(.8rem,1.5vw,1rem);transition:all .2s;white-space:nowrap}.btn,.btn-icon{display:inline-flex;align-items:center;border-radius:var(--radius-md)}.btn-icon{padding:.5rem;flex-shrink:0;width:2.25rem;height:2.25rem;justify-content:center;border:1px solid var(--border)}.btn-primary{background-color:var(--primary);color:var(--text-inverted)}.btn-primary:hover{background-color:var(--primary-hover);transform:translateY(-1px)}.btn-outline{border:2px solid var(--primary);color:var(--primary)}.btn-outline:hover{background-color:var(--primary);color:var(--text-inverted)}.h1{font-size:2.5rem;font-weight:800;letter-spacing:-.02em}.h1,.h2{margin-bottom:1rem}.h2{font-size:2rem;font-weight:700;letter-spacing:-.01em}.h3{font-size:1.5rem;font-weight:600;margin-bottom:.75rem}.lead{font-size:1.25rem;color:var(--text-muted)}.card{background-color:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.typing-area{font-family:var(--font-mono);font-size:1.5rem;line-height:1.8}.char{opacity:.6}.char.correct{color:var(--text-main);opacity:1}.char.incorrect{color:var(--danger);text-decoration:underline;opacity:1;font-weight:700;background:rgba(239,68,68,.1)}.char.current{border-left:2px solid var(--primary);animation:blink 1s infinite}@keyframes blink{50%{border-color:transparent}}.desktop-nav{display:none!important}.mobile-toggle{display:block!important}@media (min-width:768px){.desktop-nav{display:flex!important}.mobile-toggle{display:none!important}}.keyboard-container{display:flex;flex-direction:column;gap:.5rem;align-items:center;margin-top:.5rem;padding:1rem;background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border);-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%;max-width:900px;overflow-x:auto}.keyboard-row{gap:.4rem;width:100%}.key,.keyboard-row{display:flex;justify-content:center}.key{height:2.5rem;align-items:center;border-radius:.4rem;border:1px solid var(--border);background:var(--bg-input);color:var(--text-main);font-size:.85rem;font-weight:700;transition:all .1s ease;min-width:2rem;flex:1 1}.key.active{background:var(--primary);color:#fff;box-shadow:0 0 10px var(--primary);border-color:var(--primary)}.key-space{flex:5 1}.key-backspace{flex:1.5 1}.key-tab{flex:1.2 1}.key-caps{flex:1.3 1}.key-enter{flex:1.5 1}.key-shift{flex:1.8 1}@media (max-width:768px){.keyboard-container{padding:.5rem;gap:.25rem}.keyboard-row{gap:.25rem}.key{height:2.2rem;font-size:.7rem;min-width:1.5rem;border-radius:.25rem}}@media (max-width:480px){.keyboard-container{display:none}.keyboard-container.show{display:flex}.key{height:3rem;font-size:.8rem}}.admin-header{border-bottom:1px solid var(--border);background:var(--bg-card);padding:.75rem 0;position:-webkit-sticky;position:sticky;top:0;z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.admin-toolbar{justify-content:space-between;flex-wrap:nowrap}.admin-toolbar,.admin-toolbar-left{display:flex;align-items:center;gap:.5rem;min-width:0}.admin-toolbar-left{flex:1 1;overflow:hidden}.admin-toolbar-right{display:flex;align-items:center;gap:.4rem;flex:0 0 auto}.admin-toolbar-title{font-size:clamp(.85rem,2.5vw,1.15rem);font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2;min-width:0}.admin-toolbar-title-prefix,.btn-label{display:inline}.btn-label{white-space:nowrap}@media (max-width:359px){.admin-header{padding:.5rem 0}.admin-toolbar-title{font-size:.78rem}.admin-toolbar-title-prefix,.btn-label{display:none}}@media (max-width:479px){.admin-toolbar-title{font-size:.88rem;max-width:28vw}.btn-label{display:none}}@media (max-width:599px){.admin-toolbar-title{max-width:38vw}.btn-label{display:none}}@media (min-width:600px) and (max-width:767px){.admin-toolbar-title{max-width:44vw}.btn-label{display:inline}}@media (min-width:768px){.admin-header{padding:.875rem 0}.admin-toolbar{gap:.75rem}.admin-toolbar-title{max-width:50vw;font-size:clamp(1rem,1.5vw,1.2rem)}.btn-label{display:inline}}@media (min-width:1200px){.admin-toolbar-title{max-width:60ch}}.editor-layout{display:grid;grid-template-columns:1fr 320px;grid-gap:1.5rem;gap:1.5rem;align-items:start}@media (max-width:900px){.editor-layout{grid-template-columns:1fr;gap:1.5rem}}@media (min-width:1200px){.editor-layout{grid-template-columns:1fr 360px;gap:2.5rem}}.vkb-toggle{display:none!important}@media (min-width:768px){.vkb-toggle{display:inline-flex!important;color:var(--text-muted);border:1.5px solid var(--border);border-radius:var(--radius-md);padding:.5rem;transition:all .2s}.vkb-toggle:hover{background:rgba(59,130,246,.08)}.vkb-toggle--active,.vkb-toggle:hover{color:var(--primary);border-color:var(--primary)}.vkb-toggle--active{background:rgba(59,130,246,.12)}}.vkb-panel{margin-top:1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-input);overflow:hidden;animation:vkb-slide-in .2s ease}@keyframes vkb-slide-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.vkb-panel-header{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background:var(--bg-card);border-bottom:1px solid var(--border);font-size:.85rem;font-weight:600;color:var(--text-muted)}.vkb-panel-close{margin-left:auto;font-size:.8rem;color:var(--text-muted);padding:.1rem .35rem;border-radius:var(--radius-sm);line-height:1}.vkb-panel-close:hover{background:var(--border);color:var(--text-main)}.vkb-shortcuts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:.4rem;gap:.4rem;padding:.75rem 1rem}.vkb-shortcut-item{display:flex;align-items:center;gap:.5rem}.vkb-key{display:inline-flex;align-items:center;background:var(--bg-card);border:solid var(--border);border-width:1px 1px 2px;border-radius:.3rem;padding:.15rem .45rem;font-size:.72rem;font-family:var(--font-mono);font-weight:700;white-space:nowrap;color:var(--text-main);box-shadow:0 1px 0 var(--border);flex-shrink:0}.vkb-shortcut-label{font-size:.8rem;color:var(--text-muted)}.ta-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.7rem;padding:.5rem .6rem;background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border);box-shadow:0 2px 10px rgba(0,0,0,.05);width:100%}.ta-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .85rem;border-radius:var(--radius-sm);background:rgba(148,163,184,.1);color:var(--text-muted);border:1px solid var(--border);cursor:pointer;font-weight:700;font-size:.82rem;white-space:nowrap;transition:background .15s,color .15s,border-color .15s;flex-shrink:0}.ta-btn:hover{background:rgba(148,163,184,.2);color:var(--text-main)}.ta-btn--blue{background:var(--primary);color:#fff;border-color:var(--primary-hover)}.ta-btn--blue:hover{background:var(--primary-hover)}.ta-btn--red{background:var(--danger);color:#fff;border-color:#dc2626}.ta-btn--red:hover{background:#dc2626}.ta-btn--amber{background:var(--accent);color:#fff;border-color:#d97706}.ta-btn--amber:hover{background:#d97706}.ta-btn-label{display:inline;white-space:nowrap}.ta-btn--kb-toggle{display:none}@media (min-width:769px){.ta-btn--kb-toggle{display:inline-flex}}.ta-volume{display:flex;align-items:center;gap:.4rem;padding:0 .4rem;border-left:1px solid var(--border);margin-left:.2rem}.ta-volume-icon{color:var(--text-muted);flex-shrink:0}.ta-volume-slider{width:72px;cursor:pointer;accent-color:var(--primary)}@media (max-width:600px){.ta-btn-label{display:none}.ta-btn{padding:.5rem;font-size:0}.ta-volume-slider{width:52px}}@media (max-width:400px){.ta-volume-icon{display:none}.ta-volume-slider{width:44px}}.ta-stats{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;background:var(--bg-input)}.ta-stats,.ta-stats-left{display:flex;flex-wrap:wrap}.ta-stats-left{gap:clamp(.75rem,3vw,2rem)}.ta-stat{text-align:center;min-width:48px}.ta-stat-label{font-size:clamp(.7rem,1.5vw,.875rem);color:var(--text-muted);white-space:nowrap}.ta-stat-value{font-size:clamp(1.1rem,3vw,1.5rem);font-weight:700}@media (max-width:400px){.ta-stats{flex-direction:column;align-items:flex-start}.ta-stats-left{gap:.6rem;width:100%;justify-content:space-between}.ta-restart-btn{align-self:flex-end}}.blog-card{transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s ease}.blog-card:hover{transform:translateY(-8px);box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04)}.blog-card:hover .blog-card-thumb-img{transform:scale(1.05)}.blog-card-thumb{width:100%;aspect-ratio:16/9;background:var(--bg-input);overflow:hidden;position:relative;border-bottom:1px solid var(--border)}.blog-card-thumb-img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.blog-card-thumb-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;color:var(--text-muted);background:linear-gradient(135deg,var(--bg-input),var(--border))}.blog-card-thumb-placeholder span{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;opacity:.8}.footer-nav-link:hover{color:var(--primary)!important;padding-left:4px}.nav-link-social{transition:transform .2s,color .2s;color:var(--text-muted)}.nav-link-social:hover{transform:translateY(-3px);color:var(--primary)}.footer-bottom-link{display:flex;align-items:center;gap:.4rem;font-size:.825rem;color:var(--text-muted);text-decoration:none;font-weight:500}.footer-bottom-link:hover{color:var(--primary)}.ad-desktop-only{display:block}.ad-mobile-only{display:none}@media (max-width:768px){.ad-desktop-only{display:none}.ad-mobile-only{display:block}}.content-with-sidebar{display:block;max-width:1000px;margin:0 auto;padding-bottom:3rem}@media (max-width:768px){footer .container>div:first-child{gap:2rem}}body,html{overflow-x:hidden}iframe[id^=aswift_],iframe[src*=highperformanceformat]{max-width:100%!important}@media (max-width:600px){article table,div table,section table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;font-size:.85rem}article table td,article table th,section table td,section table th{white-space:nowrap}}@media (max-width:480px){.seo-body,article{font-size:.95rem;line-height:1.7;word-break:break-word}.seo-body h2,article h2{font-size:1.35rem}.seo-body h3,article h3{font-size:1.15rem}}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback;font-style:normal}.__variable_f367f3{--font-sans:"Inter","Inter Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/886030b0b59bc5a7-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/0aa834ed78bf6d07-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/67957d42bae0796d-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/f911b923c6adde36-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/939c4f875ee75fbb-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/bb3ef058b751a6ad-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_3c557b{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_3c557b{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}