@import "https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;800&display=swap";:root{--bg-color:#0f172a;--bg-gradient:linear-gradient(135deg, #0f172a 0%, #1e1b4b 50%, #0f172a 100%);--header-bg:rgba(15,23,42,.7);--current-word-bg:rgba(99,102,241,.8);--tile-bg:#1e293b;--tile-text:#f8fafc;--tile-shadow:#020617;--tile-sel-bg:#6366f1;--tile-sel-text:#fff;--tile-sel-shadow:#3730a3;--line-color:#818cf8;--bonus-red:#ef4444;--bonus-purple:#d946ef;--accent-gold:#fbbf24;--text-main:#f8fafc;--text-muted:#94a3b8;--glass-bg:rgba(255,255,255,.05);--glass-border:rgba(255,255,255,.1)}*{box-sizing:border-box;margin:0;padding:0}body{color:var(--text-main);overscroll-behavior:none;touch-action:none;user-select:none;background-color:#050505;font-family:Outfit,sans-serif}.app-container{width:100%;max-width:1000px;height:100vh;background:var(--bg-gradient);touch-action:none;flex-direction:column;height:100dvh;margin:0 auto;display:flex;position:relative;overflow:hidden;box-shadow:0 0 30px rgba(0,0,0,.9)}.header{background:var(--header-bg);-webkit-backdrop-filter:blur(10px);color:#fff;border-bottom:1px solid var(--glass-border);z-index:50;justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.header-stat{flex-direction:column;align-items:center;display:flex}.header-stat span:first-child{color:var(--text-muted);letter-spacing:1px;font-size:13px;font-weight:500}.header-stat span:last-child{color:var(--accent-gold);font-size:24px;font-weight:800}.current-word-container{background:var(--current-word-bg);-webkit-backdrop-filter:blur(5px);color:#fff;text-transform:uppercase;letter-spacing:2px;z-index:40;justify-content:center;align-items:center;height:70px;font-size:32px;font-weight:800;display:flex;box-shadow:0 4px 15px rgba(0,0,0,.3)}.board-container{touch-action:none;flex:1;justify-content:center;align-items:center;padding:15px;display:flex;position:relative}.board{touch-action:none;grid-template-rows:repeat(5,1fr);grid-template-columns:repeat(5,1fr);gap:8px;width:100%;max-width:400px;max-height:400px;display:grid;position:relative}.tile{background-color:var(--tile-bg);color:var(--tile-text);box-shadow:0 4px 0 var(--tile-shadow);cursor:pointer;z-index:10;aspect-ratio:1;will-change:transform;border:1px solid rgba(255,255,255,.05);border-radius:8px;justify-content:center;align-items:center;font-size:max(26px,min(11vw,46px));font-weight:600;transition:transform .1s,box-shadow .1s,background-color .2s;display:flex;position:relative;transform:translateZ(0)}.tile:active{box-shadow:0 2px 0 var(--tile-shadow);transform:translateY(2px)}.tile.selected{background-color:var(--tile-sel-bg);color:var(--tile-sel-text);box-shadow:0 4px 0 var(--tile-sel-shadow);border-color:rgba(255,255,255,.2)}.tile.selected:active{box-shadow:0 2px 0 var(--tile-sel-shadow);transform:translateY(2px)}.letter-text{z-index:20;position:relative}.svg-lines{pointer-events:none;z-index:5;width:100%;height:100%;position:absolute;top:0;left:0}.svg-lines path{fill:none;stroke:var(--line-color);stroke-width:12px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 5px rgba(129,140,248,.5))}.tile-wx2:before{content:"";background-color:var(--bonus-red);clip-path:polygon(0 0,100% 0,0 100%);z-index:11;border-top-left-radius:8px;width:45%;height:45%;position:absolute;top:0;left:0}.tile-wx2:after{content:"x2";color:#fff;z-index:12;font-size:max(8px,min(3vw,14px));font-weight:800;line-height:1;position:absolute;top:2px;left:3px}.tile-wx3:before{content:"";background-color:var(--bonus-purple);clip-path:polygon(0 0,100% 0,0 100%);z-index:11;border-top-left-radius:8px;width:45%;height:45%;position:absolute;top:0;left:0}.tile-wx3:after{content:"x3";color:#fff;z-index:12;font-size:max(8px,min(3vw,14px));font-weight:800;line-height:1;position:absolute;top:2px;left:3px}.tile-w2:before{content:"";background-color:var(--bonus-red);clip-path:polygon(0 100%,100% 100%,0 0);z-index:11;border-bottom-left-radius:8px;width:45%;height:45%;position:absolute;bottom:0;left:0}.tile-w2:after{content:"с2";color:#fff;z-index:12;font-size:max(8px,min(3vw,14px));font-weight:800;line-height:1;position:absolute;bottom:2px;left:3px}.tile-w3:before{content:"";background-color:var(--bonus-purple);clip-path:polygon(0 100%,100% 100%,0 0);z-index:11;border-bottom-left-radius:8px;width:45%;height:45%;position:absolute;bottom:0;left:0}.tile-w3:after{content:"с3";color:#fff;z-index:12;font-size:max(8px,min(3vw,14px));font-weight:800;line-height:1;position:absolute;bottom:2px;left:3px}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:16px;margin-bottom:20px;padding:20px;box-shadow:0 8px 32px rgba(0,0,0,.2)}.btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6366f1 0%,#4f46e5 100%);border:1px solid rgba(255,255,255,.1);border-radius:12px;width:100%;padding:16px 20px;font-family:inherit;font-size:16px;font-weight:600;transition:all .2s;display:block;box-shadow:0 4px 15px rgba(0,0,0,.2)}.btn:hover{background:linear-gradient(135deg,#818cf8 0%,#6366f1 100%);transform:translateY(-2px);box-shadow:0 6px 20px rgba(99,102,241,.4)}.btn:active{transform:translateY(1px);box-shadow:0 2px 10px rgba(99,102,241,.4)}.btn.green{background:linear-gradient(135deg,#22c55e 0%,#16a34a 100%)}.btn.green:hover{background:linear-gradient(135deg,#4ade80 0%,#22c55e 100%);box-shadow:0 6px 20px rgba(34,197,94,.4)}.btn.purple{background:linear-gradient(135deg,#a855f7 0%,#9333ea 100%)}.btn.purple:hover{background:linear-gradient(135deg,#c084fc 0%,#a855f7 100%);box-shadow:0 6px 20px rgba(168,85,247,.4)}.btn.red{background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%)}.btn.red:hover{background:linear-gradient(135deg,#f87171 0%,#ef4444 100%);box-shadow:0 6px 20px rgba(239,68,68,.4)}.btn.duel{border:1px dashed var(--glass-border);background:rgba(255,255,255,.1);margin-top:10px}.screen{color:var(--text-main);flex-direction:column;flex:1;padding:20px;animation:.4s ease-out fadeIn;display:flex;overflow-y:auto}.screen h1{text-align:center;background:linear-gradient(90deg,#818cf8,#c084fc);-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));-webkit-background-clip:text;margin-bottom:25px;font-size:32px;font-weight:800}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.mode-list{flex-direction:column;gap:12px;display:flex}.word-list{border:1px solid var(--glass-border);background:rgba(15,23,42,.6);border-radius:12px;flex-direction:column;gap:8px;margin-top:15px;padding:15px;display:flex;overflow-y:auto}.word-item{color:var(--text-main);border-bottom:1px solid rgba(255,255,255,.05);justify-content:space-between;padding:8px 0;font-size:16px;display:flex}.word-item:last-child{border-bottom:none}.word-item span:last-child{color:var(--accent-gold);font-weight:600}.tabs{background:rgba(0,0,0,.2);border-radius:12px;gap:10px;margin-bottom:15px;padding:5px;display:flex}.tab{text-align:center;cursor:pointer;color:var(--text-muted);border-radius:8px;flex:1;padding:12px;font-weight:500;transition:all .2s}.tab.active{background:var(--tile-sel-bg);color:#fff;font-weight:600;box-shadow:0 4px 10px rgba(99,102,241,.3)}.switch{width:44px;height:24px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;background-color:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);transition:all .3s;position:absolute;top:0;bottom:0;left:0;right:0}.slider:before{content:"";background-color:#fff;width:18px;height:18px;transition:all .3s;position:absolute;bottom:2px;left:2px;box-shadow:0 2px 5px rgba(0,0,0,.2)}input:checked+.slider{background-color:#22c55e;border-color:#22c55e}input:checked+.slider:before{transform:translate(20px)}.slider.round{border-radius:24px}.slider.round:before{border-radius:50%}.diff-selector{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.diff-radio{display:none}.diff-label{cursor:pointer;color:var(--text-muted);user-select:none;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:8px 14px;font-size:14px;font-weight:500;transition:all .2s}.diff-radio:checked+.diff-label{background:var(--tile-sel-bg);color:#fff;border-color:var(--tile-sel-bg);box-shadow:0 4px 10px rgba(99,102,241,.3)}.diff-radio:checked+.diff-label.super-easy{background:#22c55e;border-color:#22c55e;box-shadow:0 4px 10px rgba(34,197,94,.3)}.diff-radio:checked+.diff-label.easy{background:#10b981;border-color:#10b981;box-shadow:0 4px 10px rgba(16,185,129,.3)}.diff-radio:checked+.diff-label.medium{background:#3b82f6;border-color:#3b82f6;box-shadow:0 4px 10px rgba(59,130,246,.3)}.diff-radio:checked+.diff-label.hard{background:#ef4444;border-color:#ef4444;box-shadow:0 4px 10px rgba(239,68,68,.3)}.diff-radio:checked+.diff-label.classic{background:#f59e0b;border-color:#f59e0b;box-shadow:0 4px 10px rgba(245,158,11,.3)}.diff-radio:checked+.diff-label.max{background:#8b5cf6;border-color:#8b5cf6;box-shadow:0 4px 10px rgba(139,92,246,.3)}.diff-radio:checked+.diff-label.random{background:#64748b;border-color:#64748b;box-shadow:0 4px 10px rgba(100,116,139,.3)}.hint-box{border-left:3px solid var(--tile-sel-bg);color:var(--text-muted);background:rgba(0,0,0,.2);border-radius:0 8px 8px 0;margin-top:15px;padding:12px 15px;font-size:13px;line-height:1.5}[data-theme=light]{--bg-color:#c8def8;--bg-gradient:linear-gradient(135deg, #c8def8 0%, #e0edfc 100%);--header-bg:#2b3240;--current-word-bg:#3f88f0;--tile-bg:#fff;--tile-text:#333;--tile-shadow:#d0daeb;--tile-sel-bg:#2c83f1;--tile-sel-text:#fff;--tile-sel-shadow:#1b62ba;--line-color:#1d5fb5;--text-main:#1e293b;--text-muted:#475569;--glass-bg:rgba(255,255,255,.7);--glass-border:rgba(255,255,255,.5)}[data-theme=light] body{background-color:#f1f5f9}[data-theme=light] .tile{border:none}[data-theme=light] .screen h1{-webkit-text-fill-color:var(--header-bg);filter:none;background:0 0;-webkit-background-clip:border-box;background-clip:border-box}[data-theme=light] .slider{background-color:rgba(0,0,0,.1);border-color:rgba(0,0,0,.2)}[data-theme=light] .word-list{background:#fff;border:1px solid #e2e8f0;box-shadow:inset 0 2px 4px rgba(0,0,0,.05)}[data-theme=light] .word-item{border-bottom:1px solid #f1f5f9}[data-theme=light] .hint-box{background:#f1f5f9}[data-theme=light] .btn{background:var(--tile-sel-bg);color:#fff;box-shadow:0 4px 0 var(--tile-sel-shadow);border:none}[data-theme=light] .btn:hover{box-shadow:0 2px 0 var(--tile-sel-shadow);transform:translateY(2px)}[data-theme=light] .btn:active{box-shadow:0 0 0 var(--tile-sel-shadow);transform:translateY(4px)}[data-theme=light] .btn.green{background:#22c55e;box-shadow:0 4px #16a34a}[data-theme=light] .btn.green:hover{box-shadow:0 2px #16a34a}[data-theme=light] .btn.purple{background:#8b5cf6;box-shadow:0 4px #7c3aed}[data-theme=light] .btn.purple:hover{box-shadow:0 2px #7c3aed}[data-theme=light] .btn.red{background:#ef4444;box-shadow:0 4px #dc2626}[data-theme=light] .btn.red:hover{box-shadow:0 2px #dc2626}[data-theme=light] .btn.duel{color:#475569;background:rgba(0,0,0,.05)}[data-theme=light] .diff-label{color:#475569;background:#fff;border:1px solid #cbd5e1}[data-theme=light] .diff-radio:checked+.diff-label{color:#fff}.hint-badge{z-index:15;background-color:#10b981;border-top-right-radius:8px;border-bottom-left-radius:6px;justify-content:center;align-items:center;width:35%;height:35%;display:flex;position:absolute;top:0;right:0;box-shadow:-2px 2px 4px rgba(0,0,0,.3)}.hint-badge-text{color:#fff;z-index:16;font-size:max(10px,min(3.5vw,16px));font-weight:800}.tile.hint-start{border:2px dashed #10b981}.hint-svg-path{stroke:rgba(16,185,129,.5);stroke-width:4px;fill:none;stroke-dasharray:8;animation:1s linear infinite dashMove}@keyframes dashMove{to{stroke-dashoffset:-16px}}.timer-blink{animation:1s step-end infinite blink}@keyframes blink{50%{opacity:0}}.sub-tab{white-space:nowrap;cursor:pointer;color:#fff;background-color:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.3);border-radius:20px;padding:8px 16px;font-size:14px;font-weight:700;transition:all .2s}[data-theme=light] .sub-tab{color:#334155;background-color:#e2e8f0;border-color:#cbd5e1}.sub-tab.completed{color:#10b981;background-color:rgba(16,185,129,.2);border-color:#10b981}[data-theme=light] .sub-tab.completed{color:#059669;background-color:#d1fae5;border-color:#10b981}.sub-tab.selected{background-color:var(--accent-gold);color:#000;border-color:var(--accent-gold);box-shadow:0 0 10px rgba(251,191,36,.5)}[data-theme=light] .sub-tab.selected{box-shadow:0 4px 6px rgba(251,191,36,.3)}
