body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{min-height:100vh;position:relative;text-align:center}.app-header{display:none}.login-button,.user-button{background-color:#4caf50;border:none;border-radius:6px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 16px;transition:background-color .2s ease}.login-button:hover,.user-button:hover{background-color:#45a049}.user-button{background-color:#2196f3}.user-button:hover{background-color:#1976d2}.loading-screen{align-items:center;color:#666;display:flex;flex-direction:column;justify-content:center;min-height:100vh}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#4caf50;height:40px;margin-bottom:16px;width:40px}.loading-screen p{font-size:16px;margin:0}:root{--container-padding:clamp(10px,3vw,20px);--max-width:min(95vw,400px);--spelling-bar-height:clamp(50px,8vh,70px);--spelling-slot-size:clamp(26px,5vw,32px);--spelling-slot-gap:clamp(2px,0.6vw,3px);--letter-tile-size:clamp(40px,8vw,55px);--letter-grid-gap:clamp(6px,2vw,12px);--header-margin:clamp(8px,2vh,15px);--section-spacing:clamp(15px,3vh,25px);--game-area-gap:clamp(15px,3vh,25px);--spelling-bar-horizontal-padding:clamp(10px,2.5vw,18px);--spelling-bar-vertical-padding:clamp(3px,1vw,8px)}.game-container{-webkit-overflow-scrolling:touch;align-items:center;background-color:#1da1f2;bottom:0;box-sizing:border-box;display:flex;flex-direction:column;height:100vh;height:100dvh;justify-content:flex-start;left:0;min-height:100vh;min-height:-webkit-fill-available;overflow:hidden;padding:clamp(10px,3vw,20px);padding:var(--container-padding);position:fixed;right:0;top:0;transform:translateZ(0);width:100%}.game-content{grid-gap:0;box-sizing:border-box;display:grid;gap:0;grid-template-columns:1fr;grid-template-rows:auto auto auto;height:calc(100vh - clamp(10px, 3vw, 20px)*2);height:calc(100vh - var(--container-padding)*2);height:calc(100dvh - clamp(10px, 3vw, 20px)*2);height:calc(100dvh - var(--container-padding)*2);justify-items:center}.game-content,.game-header{align-items:center;max-width:min(95vw,400px);max-width:var(--max-width);width:100%}.game-header{align-self:start;display:flex;grid-row:1;justify-content:center;margin-bottom:clamp(15px,3vh,25px);margin-bottom:var(--section-spacing)}.player-hud{flex-direction:column;gap:clamp(2px,.5vh,4px);max-width:min(95vw,400px);max-width:var(--max-width)}.hud-row,.player-hud{align-items:center;display:flex;justify-content:center;width:100%}.hud-row{gap:clamp(4px,1vw,8px)}.hud-row.controls-row{flex-wrap:wrap;gap:clamp(8px,2vw,12px);justify-content:center;margin-bottom:clamp(4px,1vh,8px)}.hud-login-button,.hud-user-button{border-radius:clamp(4px,1vw,6px);box-shadow:0 2px 4px #0003;font-size:clamp(11px,2.5vw,14px);min-height:auto;padding:clamp(5px,1.2vw,8px) clamp(10px,2.5vw,14px);white-space:nowrap}.hud-login-button:hover,.hud-user-button:hover{box-shadow:0 3px 6px #0000004d;transform:translateY(-1px)}.hud-stat{align-items:center;display:flex;flex-direction:column;min-width:clamp(50px,12vw,75px);text-align:center}.stat-label{color:#fffc;font-size:clamp(8px,2vw,11px);font-weight:700;margin-bottom:1px;text-shadow:0 1px 2px #00000080;white-space:nowrap}.stat-value{font-family:Courier New,Monaco,Menlo,monospace;font-size:clamp(11px,2.5vw,14px);font-weight:700;min-width:clamp(35px,8vw,50px);text-align:center;text-shadow:0 2px 4px #0000004d}.category-hint-container{display:flex;justify-content:center;margin-bottom:clamp(4px,.8vh,6px);width:100%}.category-hint-box{align-items:center;background:linear-gradient(135deg,#ffd70026,#ffa50026);border:2px solid #ffd70099;border-radius:clamp(6px,1.5vw,8px);box-shadow:0 2px 6px #ffd7004d,inset 0 1px 2px #fff3;display:flex;flex-direction:row;gap:clamp(6px,1.5vw,10px);padding:clamp(3px,.6vh,5px) clamp(10px,2.5vw,16px);transition:all .3s ease}.category-hint-box:hover{border-color:#ffd700cc;box-shadow:0 3px 8px #ffd70066,inset 0 1px 2px #ffffff4d;transform:translateY(-1px)}.category-label{color:#ffeb96e6;font-size:clamp(10px,2.5vw,13px);font-weight:600;letter-spacing:.3px;text-shadow:0 1px 2px #0000004d;white-space:nowrap}.category-value{color:#ffe66d;font-size:clamp(11px,2.8vw,15px);font-weight:700;letter-spacing:.3px;text-shadow:0 2px 4px #0006}.game-over-overlay{align-items:center;background-color:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.game-over-message{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#1da1f2,#1565c0);border:2px solid #ffffff1a;border-radius:clamp(12px,3vw,20px);box-shadow:0 16px 64px #0009;box-sizing:border-box;color:#fff;display:flex;flex-direction:column;max-height:85vh;max-width:min(95vw,420px);overflow-y:auto;padding:clamp(12px,3vw,24px);text-align:center}.game-over-message h2{font-size:clamp(20px,5vw,30px);font-weight:700;margin:0 0 clamp(6px,1.5vh,12px);text-shadow:0 3px 6px #0006}.game-over-message p{font-size:clamp(14px,3.5vw,18px);line-height:1.3;margin:0 0 clamp(8px,2vh,16px);opacity:.95}.level-complete-actions{display:flex;justify-content:center;margin-top:clamp(10px,2vh,16px)}.next-level-btn{align-items:center;background:linear-gradient(135deg,#ffd54f,#ffb300);border:none;border-radius:clamp(10px,2.5vw,14px);box-shadow:0 6px 18px #00000040,inset 0 1px 0 #fff9;color:#1a1a1a;cursor:pointer;display:inline-flex;font-size:clamp(14px,3.5vw,18px);font-weight:700;gap:8px;justify-content:center;padding:clamp(10px,2.2vh,14px) clamp(16px,4vw,24px);transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}.next-level-btn:hover{box-shadow:0 8px 22px #0000004d,inset 0 1px 0 #ffffffb3;filter:brightness(1.03);transform:translateY(-1px)}.next-level-btn:active{box-shadow:0 4px 12px #0003,inset 0 1px 0 #ffffff80;transform:translateY(0)}.next-level-btn:focus{box-shadow:0 0 0 3px #ffd74f59,0 8px 22px #0000004d;outline:none}.wrong-word-overlay .wrong-word-message{background:linear-gradient(135deg,#d32f2f,#8e0000)}.wrong-word-body{margin-top:clamp(8px,2vh,12px)}.wrong-word-text{white-space:pre-line}.wrong-word-actions{display:flex;justify-content:center;margin-top:clamp(12px,2.5vh,16px)}.error-dismiss-btn{border:none;border-radius:clamp(8px,2vw,12px);box-shadow:0 6px 16px #00000040;color:#fff;cursor:pointer;font-size:clamp(13px,3.2vw,16px);font-weight:700;padding:clamp(8px,2vh,12px) clamp(14px,3.5vw,20px);transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}.error-dismiss-btn:hover{box-shadow:0 8px 20px #0000004d;filter:brightness(1.03);transform:translateY(-1px)}.error-dismiss-btn:active{transform:translateY(0)}.error-dismiss-btn:focus{outline:none}.level-failed-overlay .level-failed-message{background:linear-gradient(135deg,#d32f2f,#8e0000)}.level-failed-stats{display:flex;flex-direction:column;gap:clamp(6px,1.5vh,10px);margin-top:clamp(10px,2vh,14px)}.level-failed-stats .stat-item{color:#ffffffe6;font-size:clamp(13px,3.2vw,16px)}.level-failed-stats .solution-revealed{animation:fadeIn .3s ease-out;background:#ffd70026;border:2px solid #ffd70099;border-radius:clamp(6px,1.5vw,8px);padding:clamp(8px,2vh,12px)}.target-word-highlight{color:#ffe66d;font-size:clamp(16px,4vw,20px);letter-spacing:1px;text-shadow:0 2px 4px #0006}.level-failed-actions{display:flex;flex-wrap:wrap;gap:clamp(8px,2vw,12px);justify-content:center;margin-top:clamp(12px,2.5vh,18px)}.retry-level-btn{align-items:center;background:linear-gradient(135deg,#4caf50,#2e7d32);border:none;border-radius:clamp(10px,2.5vw,14px);box-shadow:0 6px 18px #00000040,inset 0 1px 0 #ffffff4d;color:#fff;cursor:pointer;display:inline-flex;font-size:clamp(14px,3.5vw,18px);font-weight:700;gap:6px;justify-content:center;padding:clamp(10px,2.2vh,14px) clamp(16px,4vw,24px);transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}.retry-level-btn:hover{box-shadow:0 8px 22px #0000004d,inset 0 1px 0 #fff6;filter:brightness(1.05);transform:translateY(-1px)}.retry-level-btn:active{box-shadow:0 4px 12px #0003,inset 0 1px 0 #fff3;transform:translateY(0)}.retry-level-btn:focus{box-shadow:0 0 0 3px #4caf5059,0 8px 22px #0000004d;outline:none}.see-solution-btn{align-items:center;background:linear-gradient(135deg,#ffd54f,#ffb300);border:none;border-radius:clamp(10px,2.5vw,14px);box-shadow:0 6px 18px #00000040,inset 0 1px 0 #fff9;color:#1a1a1a;cursor:pointer;display:inline-flex;font-size:clamp(14px,3.5vw,18px);font-weight:700;gap:6px;justify-content:center;padding:clamp(10px,2.2vh,14px) clamp(16px,4vw,24px);transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}.see-solution-btn:hover{box-shadow:0 8px 22px #0000004d,inset 0 1px 0 #ffffffb3;filter:brightness(1.03);transform:translateY(-1px)}.see-solution-btn:active{box-shadow:0 4px 12px #0003,inset 0 1px 0 #ffffff80;transform:translateY(0)}.see-solution-btn:focus{box-shadow:0 0 0 3px #ffd74f59,0 8px 22px #0000004d;outline:none}.game-over-stats{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:linear-gradient(135deg,#ffffff1a,#ffffff0d);border:1px solid #fff3;border-radius:clamp(8px,2vw,12px);column-gap:clamp(8px,2vw,12px);display:flex;flex-wrap:wrap;justify-content:center;margin:clamp(12px,3vh,18px) 0;padding:clamp(12px,3vw,16px);row-gap:clamp(6px,1.5vh,8px)}.game-over-stats.compact{margin:clamp(8px,2vh,12px) 0;padding:clamp(8px,2vw,12px);row-gap:clamp(4px,1vh,6px)}.stat-item{align-items:center!important;background:#00000026;border:1px solid #ffffff1a;border-radius:clamp(4px,1vw,6px);display:flex!important;flex-direction:column!important;justify-content:center!important;min-width:calc(50% - 6px);padding:clamp(6px,1.5vw,8px);text-align:center!important}.game-over-stats .stat-item .stat-label{color:#ffffffd9!important;display:block!important;font-size:clamp(11px,2.8vw,13px);font-weight:500;margin:0 0 2px!important;text-align:center!important;width:100%}.game-over-stats .stat-item .stat-value{background:#ff00001a!important;border:1px solid #ff00004d!important;color:gold!important;display:block!important;font-family:Courier New,Monaco,Menlo,monospace!important;font-size:clamp(14px,3.5vw,16px)!important;font-weight:700!important;margin:0!important;padding:0!important;text-align:center!important;text-shadow:0 1px 2px #0000004d;width:100%}.stat-item.new-record{animation:recordGlow 2s ease-in-out infinite alternate;background:linear-gradient(135deg,#ffd70040,#ffd70026);border:1px solid #ffd70066;color:gold;font-size:clamp(13px,3.3vw,15px);font-weight:700;margin:clamp(2px,.5vh,3px) 0;min-width:100%;padding:clamp(6px,1.5vw,8px) clamp(8px,2vw,12px)}.stat-item.compact-stat,.stat-item.new-record{align-items:center;flex-direction:row;justify-content:center;text-align:center}.stat-item.compact-stat{background:#ffffff14;border:1px solid #ffffff26;border-radius:clamp(4px,1vw,6px);color:#fffffff2;font-size:clamp(12px,3vw,14px);font-weight:500;margin:clamp(1px,.3vh,2px) 0;min-width:auto;padding:clamp(4px,1vw,6px) clamp(8px,2vw,12px);width:100%}@keyframes recordGlow{0%{box-shadow:0 0 8px #ffd7004d}to{box-shadow:0 0 16px #ffd70080}}.player-achievements{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(135deg,#90ee9026,#90ee9014);border:1px solid #90ee904d;border-radius:clamp(8px,2vw,12px);box-shadow:0 4px 16px #0003;margin:clamp(8px,2vh,12px) 0;padding:clamp(8px,2vw,12px)}.player-achievements h3{color:#90ee90;font-size:clamp(14px,3.8vw,18px);font-weight:700;margin:0 0 clamp(6px,1.5vh,8px);text-align:center;text-shadow:0 2px 4px #00000080}.achievement-item{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;font-size:clamp(13px,3.2vw,15px);justify-content:space-between;padding:clamp(4px,1vw,6px) 0}.achievement-item:last-child{border-bottom:none}.achievement-label{color:#ffffffe6;font-weight:600}.achievement-value{color:#90ee90;font-family:Courier New,Monaco,Menlo,monospace;font-weight:700}.final-meters,.final-score{align-items:center;display:flex;justify-content:space-between;text-shadow:0 1px 2px #0000004d}.final-meters,.final-score,.restart-btn{color:#fff;font-size:clamp(14px,3.5vw,18px);font-weight:700}.restart-btn{background:linear-gradient(135deg,#4caf50,#45a049);border:none;border-radius:clamp(8px,2vw,12px);box-shadow:0 4px 12px #0000004d;cursor:pointer;margin-top:clamp(8px,2vh,12px);max-width:240px;overflow:hidden;padding:clamp(8px,2vw,12px) clamp(16px,4vw,24px);position:relative;text-shadow:0 2px 4px #0000004d;transition:all .3s ease;width:100%}.restart-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.restart-btn:hover{background:linear-gradient(135deg,#45a049,#3d8b40);box-shadow:0 8px 20px #0006;transform:translateY(-3px)}.restart-btn:hover:before{left:100%}.restart-btn:active{transform:translateY(-1px)}.game-controls{align-self:end;grid-row:3;margin-bottom:clamp(15px,3vh,25px);margin-bottom:var(--section-spacing)}.game-area,.game-controls{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;gap:clamp(15px,3vh,25px);gap:var(--game-area-gap);justify-content:flex-start;position:relative;width:100%;z-index:10}.score-section{gap:clamp(10px,3vw,20px);justify-content:space-between;margin-bottom:clamp(10px,2vh,15px)}.score-section,.submit-section{align-items:center;display:flex;max-width:min(95vw,400px);max-width:var(--max-width);width:100%}.submit-section{justify-content:flex-end;margin-top:clamp(10px,2vh,15px)}.score-value{color:gold}.meters-value{color:#87ceeb}.top-word-value{color:plum}.primary-stats{background:#0000001a;border:1px solid #ffffff26;border-radius:clamp(4px,1vw,6px);box-shadow:0 1px 4px #0003;padding:clamp(3px,.7vh,5px) clamp(6px,1.5vw,9px)}.top-word-display{margin-top:clamp(1px,.2vh,2px);opacity:.85}.top-word-item{min-width:clamp(100px,25vw,160px)}.top-word-value{font-size:clamp(9px,2.2vw,12px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dictionary-status{align-items:center;display:flex;font-size:clamp(12px,3vw,16px);font-weight:700}.dictionary-loading{animation:pulse 1.5s ease-in-out infinite;color:orange}.dictionary-error{color:#ff6b6b;cursor:help}.dictionary-loaded{color:#4caf50;cursor:help}.submit-btn{border:none;border-radius:clamp(6px,1.5vw,10px);cursor:pointer;font-size:clamp(14px,3.5vw,18px);font-weight:700;padding:clamp(8px,2vw,12px) clamp(16px,4vw,24px);text-shadow:0 1px 2px #0003;transition:all .2s ease}.submit-btn.enabled{background:linear-gradient(135deg,#4caf50,#45a049);box-shadow:0 4px 8px #0003;color:#fff}.submit-btn.enabled:hover{background:linear-gradient(135deg,#45a049,#3d8b40);box-shadow:0 6px 12px #0000004d;transform:translateY(-2px)}.submit-btn.disabled{background:linear-gradient(135deg,#ccc,#999);box-shadow:0 2px 4px #0000001a;color:#666;cursor:not-allowed}.submit-btn.submitting{background:linear-gradient(135deg,#2196f3,#1976d2);box-shadow:0 4px 8px #0003;color:#fff;cursor:wait}.submit-btn .spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:14px;margin-right:8px;width:14px}@keyframes spin{to{transform:rotate(1turn)}}.button-section{align-items:center;align-self:end;display:flex;gap:clamp(8px,2vw,12px);grid-row:4;justify-content:space-between;margin:0 auto;max-width:min(95vw,400px);max-width:var(--max-width);padding:0 clamp(8px,2vw,16px);width:100%}.button-section .buy-letter-btn,.button-section .hint-btn,.button-section .submit-btn{align-items:center;display:flex;flex:1 1;justify-content:center;min-height:clamp(44px,6vh,60px);min-width:0;text-align:center}.buy-letter-section{align-items:center;display:flex;justify-content:flex-start;margin:0 auto;max-width:min(95vw,400px);max-width:var(--max-width);padding:0 clamp(8px,2vw,16px);width:100%}.buy-letter-btn{border:none;border-radius:clamp(6px,1.5vw,10px);cursor:pointer;font-size:clamp(14px,3.5vw,18px);font-weight:700;padding:clamp(8px,2vw,12px) clamp(16px,4vw,24px);text-shadow:0 1px 2px #0003;transition:all .2s ease}.buy-letter-btn.enabled{background:linear-gradient(135deg,#ff8c00,#ff7f00);box-shadow:0 3px 6px #0003;color:#fff}.buy-letter-btn.enabled:hover{background:linear-gradient(135deg,#ff7f00,#f60);box-shadow:0 4px 8px #0000004d;transform:translateY(-1px)}.buy-letter-btn.disabled{background:linear-gradient(135deg,#ccc,#999);box-shadow:0 2px 4px #0000001a;color:#666;cursor:not-allowed}.hint-btn{border:none;border-radius:clamp(6px,1.5vw,10px);cursor:pointer;font-size:clamp(14px,3.5vw,18px);font-weight:700;padding:clamp(8px,2vw,12px) clamp(16px,4vw,24px);text-shadow:0 1px 2px #0003;transition:all .2s ease}.hint-btn.enabled{background:linear-gradient(135deg,#ffb300,#ffa000);box-shadow:0 3px 6px #0003;color:#fff}.hint-btn.enabled:hover{background:linear-gradient(135deg,#ffa000,#ff8f00);box-shadow:0 4px 8px #0000004d;transform:translateY(-1px)}.hint-btn.enabled:active{box-shadow:0 2px 4px #0003;transform:translateY(0)}.hint-btn.disabled{background:linear-gradient(135deg,#ccc,#999);box-shadow:0 2px 4px #0000001a;color:#666;cursor:not-allowed}.spelling-bar-container{align-items:center;display:flex;justify-content:center;width:100%}.spelling-bar{background-color:#fff3;border-radius:clamp(6px,1.5vw,10px);box-sizing:border-box;flex-basis:auto;height:clamp(50px,8vh,70px);height:var(--spelling-bar-height);max-width:min(95vw,400px);max-width:var(--max-width);min-width:calc(clamp(26px, 5vw, 32px)*10 + clamp(2px, .6vw, 3px)*9 + clamp(10px, 2.5vw, 18px)*2);min-width:calc(var(--spelling-slot-size)*10 + var(--spelling-slot-gap)*9 + var(--spelling-bar-horizontal-padding)*2);padding:clamp(3px,1vw,8px) clamp(10px,2.5vw,18px);padding:var(--spelling-bar-vertical-padding) var(--spelling-bar-horizontal-padding);width:-webkit-fit-content;width:fit-content}.spelling-bar,.spelling-slot{align-items:center;display:flex;flex-shrink:0;justify-content:center}.spelling-slot{background-color:#ffffff26;border:1px solid #fff3;border-radius:clamp(3px,1vw,6px);height:clamp(26px,5vw,32px);height:var(--spelling-slot-size);margin:0 clamp(2px,.6vw,3px);margin:0 var(--spelling-slot-gap);transition:background-color .2s ease,border .2s ease;width:clamp(26px,5vw,32px);width:var(--spelling-slot-size)}.spelling-slot.drag-over{background-color:#ffffff4d;border:2px solid #fff9}.spelling-slot.word-dragging{position:relative;transition:all .2s ease}.spelling-slot.single-letter-dragging .letter-tile-graphic,.spelling-slot.word-dragging .letter-tile-graphic{opacity:0;pointer-events:none;visibility:hidden}.position-indicator{font-size:clamp(8px,2vw,12px);font-weight:700;left:50%;pointer-events:none;position:absolute;text-align:center;text-shadow:0 1px 2px #00000080;top:2px;transform:translateX(-50%);z-index:5}.position-indicator.mandatory{color:gold;filter:drop-shadow(0 0 3px rgba(255,215,0,.8));font-size:clamp(12px,3vw,16px)}.position-indicator.modifier{background:#000000b3;border-radius:3px;color:#fff;line-height:1;min-width:clamp(16px,4vw,20px);padding:1px 3px}.spelling-slot.modifier-dl{background-color:#87cefa4d}.spelling-slot.modifier-tl{background-color:#00bfff4d}.spelling-slot.modifier-dw{background-color:#ffb6c14d}.spelling-slot.modifier-tw{background-color:#ff14934d}.spelling-slot.mandatory-position{background-color:#ffd70033;border:2px solid #ffd70066}.floating-word{display:flex;filter:drop-shadow(0 8px 16px rgba(0,0,0,.4));gap:5px;transform:rotate(-5deg) scale(.9)}.floating-single-letter,.floating-word{pointer-events:none;position:fixed;z-index:10000}.floating-single-letter{filter:drop-shadow(0 6px 12px rgba(0,0,0,.4));transform:rotate(-3deg) scale(.95)}.floating-letter-slot{align-items:center;animation:floatCursor .8s ease-in-out infinite;background-color:#ffffffe6;border:2px solid #fffc;border-radius:clamp(4px,1vw,8px);box-shadow:0 4px 12px #0000004d;display:flex;height:clamp(26px,5vw,32px);height:var(--spelling-slot-size);justify-content:center;width:clamp(26px,5vw,32px);width:var(--spelling-slot-size)}.floating-letter-slot:first-child{animation-delay:0ms}.floating-letter-slot:nth-child(2){animation-delay:.1s}.floating-letter-slot:nth-child(3){animation-delay:.2s}.floating-letter-slot:nth-child(4){animation-delay:.3s}.floating-letter-slot:nth-child(5){animation-delay:.4s}.floating-letter-slot:nth-child(6){animation-delay:.5s}.floating-letter-slot:nth-child(7){animation-delay:.6s}.floating-letter-slot:nth-child(8){animation-delay:.7s}.floating-letter{transform:scale(.8)}@keyframes floatCursor{0%,to{transform:translateY(0) rotate(2deg)}50%{transform:translateY(-3px) rotate(-2deg)}}.confetti-container{height:100%;left:0;overflow:hidden;pointer-events:none;position:fixed;top:0;width:100%;z-index:9999}.confetti-piece{animation:confettiFall 2s linear forwards;height:8px;position:absolute;top:-10px;transform-origin:center;width:8px}@keyframes confettiFall{0%{opacity:1;transform:translateY(-10px) rotate(0deg)}to{opacity:0;transform:translateY(100vh) rotate(2turn)}}.letter-pool.fading-out .letter-tile-graphic,.spelling-bar-container.fading-out .letter-tile-graphic{animation:fadeOutTile .3s ease-out forwards}@keyframes fadeOutTile{0%{opacity:1}to{opacity:0}}.letter-tile-graphic.entering{animation:letterEntrance .3s cubic-bezier(.68,-.55,.265,1.55) forwards;opacity:0;transform:scale(0)}.letter-slot:first-child .letter-tile-graphic.entering{animation-delay:0ms}.letter-slot:nth-child(2) .letter-tile-graphic.entering{animation-delay:50ms}.letter-slot:nth-child(3) .letter-tile-graphic.entering{animation-delay:.1s}.letter-slot:nth-child(4) .letter-tile-graphic.entering{animation-delay:.15s}.letter-slot:nth-child(5) .letter-tile-graphic.entering{animation-delay:.2s}.letter-slot:nth-child(6) .letter-tile-graphic.entering{animation-delay:.25s}.letter-slot:nth-child(7) .letter-tile-graphic.entering{animation-delay:.3s}.letter-slot:nth-child(8) .letter-tile-graphic.entering{animation-delay:.35s}.letter-slot:nth-child(9) .letter-tile-graphic.entering{animation-delay:.4s}.letter-slot:nth-child(10) .letter-tile-graphic.entering{animation-delay:.45s}.letter-slot:nth-child(11) .letter-tile-graphic.entering{animation-delay:.5s}.letter-slot:nth-child(12) .letter-tile-graphic.entering{animation-delay:.55s}.letter-slot:nth-child(13) .letter-tile-graphic.entering{animation-delay:.6s}.letter-slot:nth-child(14) .letter-tile-graphic.entering{animation-delay:.65s}.letter-slot:nth-child(15) .letter-tile-graphic.entering{animation-delay:.7s}@keyframes letterEntrance{0%{opacity:0;transform:scale(0)}50%{opacity:.8;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.empty-slot{background:#0000;border-radius:clamp(4px,1vw,8px);height:clamp(40px,8vw,55px);height:var(--letter-tile-size,clamp(40px,8vw,55px));width:clamp(40px,8vw,55px);width:var(--letter-tile-size,clamp(40px,8vw,55px))}.letter-tile{align-items:center;background-color:#000;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:24px;font-weight:700;height:50px;justify-content:center;position:relative;width:50px}.letter-tile.used{opacity:.5;pointer-events:none}.letter-tile.dragging{opacity:0;visibility:hidden}.letter-tile sub{bottom:2px;font-size:12px;position:absolute;right:5px}.letter{align-items:center;display:flex;font-size:clamp(16px,3.5vw,24px);font-weight:700;height:100%;justify-content:center;position:relative;width:100%}@media (max-aspect-ratio:9/20){:root{--container-padding:clamp(8px,2vw,15px);--spelling-bar-height:clamp(45px,7vh,60px);--spelling-slot-size:clamp(22px,4vw,26px);--spelling-slot-gap:clamp(1px,0.3vw,2px);--letter-tile-size:clamp(35px,7vw,45px);--letter-grid-gap:clamp(4px,1.5vw,8px);--section-spacing:clamp(10px,2vh,18px);--game-area-gap:clamp(8px,1.5vh,15px);--spelling-bar-horizontal-padding:clamp(8px,2vw,12px);--spelling-bar-vertical-padding:clamp(2px,0.8vw,6px)}.game-container{justify-content:flex-start}.score-section{flex-direction:column;gap:clamp(5px,1vh,8px);text-align:center}.player-hud{gap:clamp(1px,.3vh,2px)}.hud-row{gap:clamp(3px,.8vw,6px)}.hud-row.controls-row{gap:clamp(6px,1.5vw,10px);margin-bottom:clamp(3px,.8vh,6px)}.hud-login-button,.hud-user-button{font-size:clamp(10px,2.2vw,12px);padding:clamp(4px,1vw,6px) clamp(8px,2vw,12px)}.hud-stat{min-width:clamp(40px,10vw,60px)}.stat-value{font-size:clamp(9px,2.2vw,12px);min-width:clamp(25px,6vw,35px)}.stat-label{font-size:clamp(7px,1.8vw,9px)}.category-hint-box{padding:clamp(2px,.5vh,4px) clamp(8px,2vw,12px)}.category-label{font-size:clamp(9px,2.2vw,11px)}.category-value{font-size:clamp(10px,2.5vw,13px)}.primary-stats{border-radius:clamp(3px,.8vw,4px);padding:clamp(2px,.5vh,3px) clamp(4px,1vw,6px)}.top-word-value{font-size:clamp(8px,2vw,10px)}.dictionary-status{font-size:clamp(10px,2.5vw,14px)}.button-section{flex-direction:column;gap:clamp(8px,2vh,12px)}.button-section .buy-letter-btn,.button-section .hint-btn,.button-section .submit-btn{flex:none;width:100%}}@media (min-aspect-ratio:9/20) and (max-aspect-ratio:3/4){:root{--container-padding:clamp(12px,3vw,18px);--spelling-bar-height:clamp(55px,8vh,65px);--spelling-slot-size:clamp(26px,5vw,30px);--spelling-slot-gap:clamp(2px,0.6vw,3px);--letter-tile-size:clamp(42px,8vw,52px);--letter-grid-gap:clamp(8px,2vw,10px);--section-spacing:clamp(18px,3vh,22px);--game-area-gap:clamp(12px,2vh,20px);--spelling-bar-horizontal-padding:clamp(10px,2.5vw,16px);--spelling-bar-vertical-padding:clamp(2px,0.9vw,7px)}}@media (min-aspect-ratio:3/4){:root{--container-padding:clamp(15px,3vw,25px);--spelling-bar-height:clamp(60px,8vh,75px);--spelling-slot-size:clamp(28px,5vw,32px);--spelling-slot-gap:clamp(2px,0.6vw,3px);--letter-tile-size:clamp(48px,8vw,58px);--letter-grid-gap:clamp(10px,2vw,14px);--section-spacing:clamp(20px,3vh,28px);--game-area-gap:clamp(18px,3vh,30px);--spelling-bar-horizontal-padding:clamp(12px,3vw,18px);--spelling-bar-vertical-padding:clamp(3px,1.2vw,10px)}}@media (min-aspect-ratio:3/4) and (min-width:500px){:root{--spelling-slot-size:30px;--spelling-slot-gap:3px;--spelling-bar-horizontal-padding:18px}.game-container{display:block;padding:0;position:fixed}.game-container:after,.game-container:before{background-color:#1565c0;bottom:0;content:"";position:fixed;top:0;width:max(0px,calc((100vw - min(100vh * 3/4, 95vw))/2));z-index:-1}.game-container:before{left:0}.game-container:after{right:0}.game-content{height:100vh;height:100dvh;margin-left:auto;margin-right:auto;max-width:400px;padding:clamp(10px,2vh,20px) 0;width:min(100vh * 3/4,95vw)}.letter-pool{justify-self:center;margin:0 auto}.button-section,.buy-letter-section,.submit-section{margin-left:auto;margin-right:auto;max-width:min(100vh * 3/4,95vw)}}@media (orientation:landscape) and (max-aspect-ratio:3/4){.game-container,.game-content{align-items:center;display:flex;flex-direction:row;justify-content:center}.game-content{gap:clamp(15px,3vh,25px);gap:var(--section-spacing);height:auto}.game-controls,.game-header{align-self:auto;grid-row:unset;margin-bottom:0}.button-section{align-self:auto;grid-row:unset;margin:0}.letter-pool{margin:0 auto;max-height:80vh;max-width:none}}@media (orientation:landscape) and (min-aspect-ratio:3/4){.game-container{justify-content:center}.game-container,.game-content{align-items:center;flex-direction:column}.game-content{height:100%;justify-content:space-between}.letter-pool{margin:0 auto}}.drag-handle{-webkit-user-drag:element;-webkit-user-select:none;user-select:none}@supports (-webkit-touch-callout:none){.game-container{height:-webkit-fill-available}.game-content{flex-shrink:0}.drag-handle,.letter-tile,.spelling-slot{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}}@media screen and (max-height:500px){:root{--game-area-gap:clamp(5px,1vh,12px)}.game-container{justify-content:space-between;padding:clamp(5px,1vw,10px)}}@media (orientation:portrait) and (max-aspect-ratio:1/2){:root{--game-area-gap:clamp(6px,1.2vh,12px);--container-padding:clamp(6px,1.5vw,12px)}.game-container{justify-content:space-between}}.player-records{align-items:center;display:flex;flex-direction:column;gap:clamp(4px,1vh,8px)}.record-item{color:#fff;font-size:clamp(11px,2.8vw,15px);font-weight:700;text-align:center;text-shadow:0 2px 4px #0000004d}.record-value{color:#90ee90;font-size:clamp(12px,3vw,16px)}.registration-prompt{background:linear-gradient(135deg,#ff6b6b26,#ff6b6b14);border:1px solid #ff6b6b4d;border-radius:clamp(8px,2vw,12px);box-shadow:0 4px 16px #ff6b6b1a;margin:clamp(8px,2vh,12px) 0;padding:clamp(8px,2vw,12px);text-align:center}.registration-prompt p{color:gold;font-size:clamp(13px,3.3vw,16px);font-weight:700;margin:0 0 clamp(4px,1vh,6px);text-shadow:0 1px 2px #0000004d}.registration-prompt .save-progress-note{color:#ffffffe6;font-size:clamp(12px,3vw,14px);font-weight:500;margin-bottom:clamp(6px,1.5vh,8px)}.register-btn{background:linear-gradient(135deg,#ff6b6b,#ff5252);border:none;border-radius:clamp(6px,1.5vw,10px);box-shadow:0 4px 12px #ff6b6b4d;color:#fff;cursor:pointer;font-size:clamp(13px,3.5vw,16px);font-weight:700;max-width:220px;overflow:hidden;padding:clamp(8px,2vw,12px) clamp(16px,4vw,24px);position:relative;text-shadow:0 1px 2px #0000004d;transition:all .3s ease;width:100%}.register-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.register-btn:hover{background:linear-gradient(135deg,#ff5252,#f44336);box-shadow:0 8px 20px #ff6b6b66;transform:translateY(-3px)}.register-btn:hover:before{left:100%}.register-btn:active{transform:translateY(-1px)}@media (max-width:320px){.player-records{gap:2px}.record-item{font-size:10px}.record-value{font-size:11px}}.attempt-history{background:#fffffff2;border-radius:clamp(6px,1.5vw,8px);box-shadow:0 2px 6px #0000001a;margin:0 auto clamp(6px,1.5vh,10px);max-width:min(95vw,400px);max-width:var(--max-width);padding:clamp(6px,1.5vw,8px);width:100%}.attempt-history-title{color:#333;font-size:clamp(11px,2.8vw,13px);font-weight:600;margin:0 0 clamp(4px,1vh,6px);text-align:center}.attempt-list{gap:clamp(3px,.8vh,4px)}.attempt-item,.attempt-list{display:flex;flex-direction:column}.attempt-item{animation:slideIn .3s ease-out;border-radius:clamp(4px,1vw,6px);font-size:clamp(11px,2.8vw,13px);font-weight:500;gap:clamp(4px,1vh,6px);padding:clamp(4px,1vh,6px) clamp(8px,2vw,10px);transition:transform .2s ease}.attempt-item.correct{background:linear-gradient(135deg,#d4edda,#c3e6cb);border:2px solid #28a745;color:#155724}.attempt-item.incorrect{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border:2px solid #dc3545;color:#721c24}.attempt-main-row{align-items:center;display:flex;gap:clamp(6px,1.5vw,8px)}.attempt-number{font-size:clamp(10px,2.5vw,12px);font-weight:700;min-width:clamp(18px,4.5vw,22px)}.attempt-word{flex:1 1;font-weight:700;letter-spacing:.3px}.attempt-indicator{font-size:clamp(14px,3.5vw,16px)}.letter-feedback-row{display:flex;flex-direction:column;gap:clamp(3px,.8vh,4px)}.feedback-label{font-size:clamp(9px,2.2vw,10px);font-weight:600;letter-spacing:.3px;opacity:.7;text-transform:uppercase}.letter-feedback-tiles{display:flex;flex-wrap:wrap;gap:clamp(2px,.5vw,3px)}.feedback-letter{align-items:center;border-radius:clamp(3px,.8vw,4px);display:inline-flex;font-size:clamp(10px,2.5vw,11px);font-weight:700;height:clamp(18px,4.5vw,22px);justify-content:center;letter-spacing:.3px;min-width:clamp(18px,4.5vw,22px);padding:0 clamp(3px,.8vw,5px);transition:transform .2s ease}.feedback-letter:hover{transform:scale(1.05)}.feedback-letter.correct{background:linear-gradient(135deg,#28a745,#20c997);border:1px solid #1e7e34;box-shadow:0 2px 4px #28a7454d;color:#fff}.feedback-letter.absent{background:linear-gradient(135deg,#6c757d,#5a6268);border:1px solid #545b62;box-shadow:0 2px 4px #6c757d4d;color:#fff;opacity:.6}.flying-word{align-items:center;animation:flyUp .6s ease-out forwards;border-radius:12px;bottom:30%;box-shadow:0 4px 12px #0003;display:flex;font-size:18px;font-weight:700;gap:8px;left:50%;padding:12px 20px;pointer-events:none;position:fixed;transform:translateX(-50%);z-index:9998}.flying-word.correct{background:linear-gradient(135deg,#28a745,#20c997);border:3px solid #155724;color:#fff}.flying-word.incorrect{background:linear-gradient(135deg,#dc3545,#e83e8c);border:3px solid #721c24;color:#fff}.flying-word-text{letter-spacing:1px}.flying-word-score{font-size:14px;opacity:.9}.flying-word-indicator{font-size:24px}@keyframes flyUp{0%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}50%{opacity:1;transform:translateX(-50%) translateY(-100px) scale(1.1)}to{opacity:0;transform:translateX(-50%) translateY(-200px) scale(.8)}}@media (max-width:480px){.attempt-history{margin-bottom:clamp(6px,1.5vh,8px);padding:clamp(4px,1vw,6px)}.attempt-history-title,.attempt-item{font-size:clamp(10px,2.5vw,11px)}.attempt-item{gap:clamp(3px,.8vh,4px);padding:clamp(3px,.8vh,5px) clamp(6px,1.5vw,8px)}.attempt-number{font-size:clamp(9px,2.2vw,10px);min-width:clamp(16px,4vw,18px)}.attempt-indicator{font-size:clamp(13px,3.2vw,14px)}.feedback-label{font-size:clamp(8px,2vw,9px)}.letter-feedback-tiles{gap:clamp(2px,.5vw,3px)}.feedback-letter{font-size:clamp(9px,2.2vw,10px);height:clamp(16px,4vw,18px);min-width:clamp(16px,4vw,18px);padding:0 clamp(2px,.5vw,3px)}.flying-word{font-size:16px;padding:10px 16px}.flying-word-score{font-size:12px}.flying-word-indicator{font-size:20px}}.letter-tile-graphic{align-items:center;background:#0000;border-radius:clamp(4px,1vw,8px);cursor:pointer;display:flex;height:clamp(40px,8vw,55px);height:var(--letter-tile-size,clamp(40px,8vw,55px));justify-content:center;position:relative;width:clamp(40px,8vw,55px);width:var(--letter-tile-size,clamp(40px,8vw,55px))}.letter-tile-graphic.used{opacity:.5;pointer-events:none}.letter-tile-graphic.loading{opacity:.8}.letter-image-container{align-items:center;display:flex;justify-content:center}.letter-image,.letter-image-container{height:100%;position:relative;width:100%}.letter-image{object-fit:contain;z-index:1}.number-image{bottom:clamp(1px,.5vw,3px);height:clamp(12px,3vw,18px);object-fit:contain;position:absolute;right:clamp(1px,.5vw,3px);width:clamp(12px,3vw,18px);z-index:2}.spelling-slot .letter-tile-graphic{height:100%;width:100%}.spelling-slot .letter-image{height:90%;width:90%}.spelling-slot .number-image{bottom:clamp(0px,.3vw,2px);height:clamp(10px,2.5vw,16px);right:clamp(0px,.3vw,2px);width:clamp(10px,2.5vw,16px)}.letter-setting-card .letter-tile-graphic{height:40px;margin-right:10px;width:40px}.letter-setting-card .letter-image{height:100%;width:100%}.letter-setting-card .number-image{bottom:1px;height:12px;right:1px;width:12px}.letter-tile-graphic:hover:not(.used){transform:scale(1.05);transition:transform .1s ease}.letter-tile-graphic:active:not(.used){transform:scale(.95)}.letter-tile-graphic.dragging{opacity:.7;transform:rotate(5deg)}.letter-fallback{align-items:center;background-color:#000;border-radius:clamp(4px,1vw,8px);color:#fff;display:flex;font-size:clamp(18px,4vw,28px);font-weight:700;height:100%;justify-content:center;position:relative;width:100%;z-index:1}.number-fallback{background-color:#ffffffe6;border-radius:clamp(1px,.3vw,3px);bottom:clamp(1px,.5vw,3px);color:#333;font-size:clamp(10px,2vw,14px);font-weight:700;min-width:clamp(10px,2.5vw,16px);padding:clamp(1px,.2vw,2px) clamp(2px,.5vw,4px);position:absolute;right:clamp(3px,1vw,6px);text-align:center;z-index:2}.spelling-slot .letter-fallback{font-size:clamp(14px,3vw,22px);height:90%;width:90%}.spelling-slot .number-fallback{bottom:clamp(0px,.3vw,2px);font-size:clamp(8px,1.5vw,12px);min-width:clamp(8px,2vw,14px);right:clamp(0px,.3vw,2px)}.letter-setting-card .letter-fallback{font-size:18px;height:100%;width:100%}.letter-setting-card .number-fallback{bottom:1px;font-size:10px;min-width:10px;right:1px}.letter-tile-graphic.hint-revealed{position:relative}.hint-glow{animation:hintPulse 2s ease-in-out infinite;background:radial-gradient(circle,#0f06 0,#0f03 40%,#0000 70%);border-radius:clamp(4px,1vw,8px);bottom:5%;box-shadow:0 0 clamp(4px,1vw,8px) #00ff00e6,inset 0 0 clamp(3px,.8vw,6px) #00ff0080;left:5%;pointer-events:none;position:absolute;right:5%;top:5%;z-index:3}@keyframes hintPulse{0%,to{box-shadow:0 0 clamp(4px,1vw,8px) #00ff00e6,inset 0 0 clamp(3px,.8vw,6px) #00ff0080;opacity:1}50%{box-shadow:0 0 clamp(6px,1.5vw,10px) #0f0,inset 0 0 clamp(4px,1vw,8px) #00ff00b3;opacity:.8}}.settings-overlay{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.settings-modal{background-color:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;max-height:90vh;max-width:800px;overflow:hidden;width:90%}.settings-header{align-items:center;background-color:#f8f9fa;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:20px}.settings-header h2{color:#333;margin:0}.close-btn{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;width:30px}.close-btn:hover{color:#333}.settings-content{max-height:calc(90vh - 80px);overflow-y:auto;padding:20px}.settings-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.settings-actions button{border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:8px 16px;transition:background-color .2s}.save-btn{background-color:#28a745}.save-btn:hover:not(:disabled){background-color:#218838}.save-btn:disabled{background-color:#6c757d;cursor:not-allowed}.reset-btn{background-color:#dc3545;color:#fff}.reset-btn:hover{background-color:#c82333}.export-btn{background-color:#007bff;color:#fff}.export-btn:hover{background-color:#0056b3}.letters-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.letter-setting-card{background-color:#f8f9fa;border:1px solid #ddd;border-radius:8px;padding:15px}.letter-display{align-items:center;display:flex;gap:10px;justify-content:flex-start;margin-bottom:10px}.settings-letter-tile{flex-shrink:0;height:40px;width:40px}.letter-points-text{background-color:#e9ecef;border-radius:4px;color:#666;font-size:14px;font-weight:500;padding:2px 6px}.letter-controls label{color:#555;display:block;font-size:14px;margin-bottom:8px}.letter-controls input[type=number]{border:1px solid #ccc;border-radius:4px;margin-left:8px;padding:4px;width:60px}.checkboxes{display:flex;flex-direction:column;gap:5px}.checkboxes label{align-items:center;display:flex;margin-bottom:5px}.checkboxes input[type=checkbox]{margin-left:0;margin-right:8px}@media (max-width:600px){.letters-grid{grid-template-columns:1fr}.settings-actions{flex-direction:column}.settings-actions button{width:100%}}.letter-pool{background-color:#fff3;border-radius:clamp(6px,1.5vw,10px);box-sizing:border-box;flex-shrink:0;height:calc(var(--letter-tile-size)*3 + var(--letter-grid-gap)*2 + clamp(8px, 2vw, 16px)*2);margin:0 auto;max-width:var(--max-width);min-width:calc(var(--letter-tile-size)*6 + var(--letter-grid-gap)*5 + clamp(8px, 2vw, 16px)*2);padding:clamp(8px,2vw,16px);transition:background-color .2s ease;width:-webkit-fit-content;width:fit-content}.letter-pool.drag-over{background-color:#ffffff4d;border:2px dashed #fff9}.letter-pool-grid{grid-column-gap:var(--letter-grid-gap);grid-row-gap:var(--letter-grid-gap);align-items:center;box-sizing:border-box;column-gap:var(--letter-grid-gap);display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(3,var(--letter-tile-size));height:100%;justify-items:center;overflow:visible;row-gap:var(--letter-grid-gap);width:100%}.letter-slot{align-items:center;display:flex;height:clamp(40px,8vw,55px);height:var(--letter-tile-size,clamp(40px,8vw,55px));justify-content:center;position:relative;width:clamp(40px,8vw,55px);width:var(--letter-tile-size,clamp(40px,8vw,55px))}.slot-background{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFIAAABSCAYAAADHLIObAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NzFBMzI2Nzg2RTk2MTFFNDhFQzdEQTAyREU2OUMyQTQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NzFBMzI2Nzk2RTk2MTFFNDhFQzdEQTAyREU2OUMyQTQiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo3MUEzMjY3NjZFOTYxMUU0OEVDN0RBMDJERTY5QzJBNCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo3MUEzMjY3NzZFOTYxMUU0OEVDN0RBMDJERTY5QzJBNCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pi1MKc0AAAYHSURBVHja7J1rbFRFFMfvPO5u2e1uS9fatbSlFFoTU2oLpAmiGI1gJLy+yIca20QFFdvGtoaqMX7HigrEADHhkUgErH6AQEQb+QIhvKy2jRBCkFhEK0ra7Wvbu3uv/2l3l+1zb4Mmlp5/Msydmdtp5seZc85s0llmWZZGunexqby8bv16N6rFKCs45wX46WcEF58JzuunM4SwaW41TfNFrOkGmqcYY99iTRcOHTrUb3cOaRPgI6g+Qnk2rvs8Stp9ZFRBlMdUAdB1qAvLXijbD6gNBz8/+PM9gQTADFSNKI+PHoNL0PFLNM6Zc7oTVGuAh+uJ26b5qEJY3waNsdXlFRWXsdQNB/Yf+GPKWxsQy1AdHNXd63K5TqZ4PV6HQy9gjGdP1T38jwXbMNsNw7ja19ffa4RCcwByiRCiBUssAOxeztgbe/fuO2wLJACqvgaUurjuv9If8J11u90r8ezUZoaCAwPBpr7+AWx11s40Nk9IHgbcTwH3/d279liJtvY2lJpoI8npPOH3P4itzdbMsECMpSetRgn09Pb+hq2drFwZINZzxpWxvRf/shhljRWotkbbabNTj/l8vtWA6NRmrpwOhyMf2/oM/GUxspTLsNA1paWl7efPX/hpzNYGxDmobsZBPOr1etdShnhXSJGOwo+WIDYkwTr/Zpyv3P7J9vahgBX33tGYTSclHSeI40V3vhYQW1Df4kJkSiF2xsYi1qiS7EWRvtv+jPTlhG1CmMuFlD2AqANmzpb6LUviLTJGVkVn7HgPIZtQHmzvO4DZJwRPRvB5Z8hHwhpTUHdGXgrkzs2ZhVonXpPKcLndtxCAlDoQhFYqiyyNjrpdriaCaEs60vcfhJC6lDrTpV6q8shV0VGv10Nb2qYGjUGPy+WGUSIXZ/wJBfLJ6CCOfQsIkc1PjELh+RxJJbyjcoVFCuTCWFLJeBYhsn0wzwKvQfjIdDRnSSnFjrjBWnUMIiUWOOngtTP6wbjEYbw2DqRGIO2SHPq3dkRCTvoXEnVCQCAJJIEkEUgCSSAJJIlAEkgCSSKQBJJAEkgSgSSQBJJAkggkgSSQJAJJIAkkgSQRSAJJIAkkiUASSAJJIpAEkkASSBKBJJAEkkQgCSSBJJAkAvnfS1rD1xkOibG7f3JMSiCA44x/PPwEkKZpPo1a3WXhBEhDo8tB7HG0LMPhdETvkOuSGtMUvPnDg+YvjPF5hCmxGGc3dSGVOQYA9brykaejg4ZhXCNE9uR0OK/BF95hTEvjjLUrkCdQBlHaunv6OgmRPaWmzu4FxMVwh9mwzuMSDvMiGuq2lcJgMJijDJP8ZEIZKSkp6pqfVsQY5S/P8a8aG5UVnou80Nnf3/8NcZpcHo9HMZqNspBz3lVVVdXFI2lPNTquSCFyAoHupQg73YRrQgWys3MeBq+2SLs6lpB/eeTIRTjMLjz2MM5vdQW6TxOv8ZU7N/c0MpsCzkWhlPrJzZs3N4842cAqnxdCqKuki4xQyB8cGDhG2EbK5/Mdcyd7VsV1vRR9iN2x29bWFih6tOh30M4TXBSHw6E+RKNLUsgCQjgM0e/PjL+wuXzTpo1nxoBUam1p/bG4pCQfYV3dIVtimpahWeZZKWWmNnOuzR7PJ36PdCcLftEf6dsGiB+OOGuP+RSDs7dQfcCHb71X1piJRP2KlKID1roC7aQZAjCI6Nzk9z+UAYDPqevOTDPcDN/4HcbeHnPSmWiWVza+XIYJ3kVxIppnA2IYz7e5EM2YNBnHyXycj3K0++hmfOzCX3Vdv4ocscvrSXkKrk19BtGN2OGN5NZlCC5fjHtknGzm115/NQP+ch+MMx0g3YDo1aV0CiktQDXgP0PY9l9jljen+cl5B9axDGsyYTQM68zDOToN67oEuOr0chhj1YD450QzTPqlF7t37elAtaqqqrKQDVvngsh1fnrEv0o0Byxten8njloDqrDybNhtKh6kmZZ1g2vsOmCWV1ZWJvz2kClty7q62mRY4yL4zmWw1CIhZB7+J08BZP30BskbsH2XAugdWGQr1tiEGHGxpqamx+4c/wgwAK3bhLdPuQyUAAAAAElFTkSuQmCC);background-position:50%;background-repeat:no-repeat;background-size:contain;height:100%;left:0;position:absolute;top:0;width:100%;z-index:0}.letter-slot .rack-letter{position:relative;z-index:1}.letter-pool .empty-slot{background:#0000;border-radius:clamp(4px,1vw,8px);height:clamp(40px,8vw,55px);height:var(--letter-tile-size,clamp(40px,8vw,55px));width:clamp(40px,8vw,55px);width:var(--letter-tile-size,clamp(40px,8vw,55px))}@media (max-aspect-ratio:9/20){.letter-pool{height:calc(var(--letter-tile-size)*3 + var(--letter-grid-gap)*2 + clamp(6px, 1.5vw, 12px)*2);min-width:calc(var(--letter-tile-size)*6 + var(--letter-grid-gap)*5 + clamp(6px, 1.5vw, 12px)*2);padding:clamp(6px,1.5vw,12px)}.letter-pool-grid{row-gap:var(--letter-grid-gap)}}@media (min-aspect-ratio:9/20) and (max-aspect-ratio:3/4){.letter-pool{height:calc(var(--letter-tile-size)*3 + var(--letter-grid-gap)*2 + clamp(7px, 1.8vw, 14px)*2);min-width:calc(var(--letter-tile-size)*6 + var(--letter-grid-gap)*5 + clamp(7px, 1.8vw, 14px)*2);padding:clamp(7px,1.8vw,14px)}.letter-pool-grid{row-gap:var(--letter-grid-gap)}}@media (min-aspect-ratio:3/4){.letter-pool{height:calc(var(--letter-tile-size)*3 + var(--letter-grid-gap)*2 + clamp(8px, 2vw, 16px)*2);min-width:calc(var(--letter-tile-size)*6 + var(--letter-grid-gap)*5 + clamp(8px, 2vw, 16px)*2);padding:clamp(8px,2vw,16px)}.letter-pool-grid{row-gap:var(--letter-grid-gap)}}@media (min-aspect-ratio:3/4) and (orientation:portrait){.letter-pool{height:calc(var(--letter-tile-size)*3 + var(--letter-grid-gap)*2 + clamp(8px, 2vw, 16px)*2);justify-self:center;margin:0 auto}.letter-pool-grid{row-gap:var(--letter-grid-gap)}}@media (orientation:landscape){.letter-pool{max-height:min(60vh,calc(var(--letter-tile-size)*3 + 24px + clamp(8px, 2vw, 16px)*2));max-width:none}.letter-pool-grid{grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(6,1fr)}}.language-toggle{gap:8px}.language-btn,.language-toggle{align-items:center;display:flex}.language-btn{background-color:#f0f0f0;border:2px solid #ddd;border-radius:6px;box-shadow:0 2px 4px #0000001a;color:#333;cursor:pointer;font-size:14px;font-weight:500;gap:4px;padding:6px 12px;transition:all .2s ease}.language-btn:hover{background-color:#e0e0e0;border-color:#ccc;box-shadow:0 3px 6px #00000026;transform:translateY(-1px)}.language-btn.active{background-color:#4caf50;border-color:#4caf50;box-shadow:0 2px 6px #4caf504d;color:#fff}.language-btn.active:hover{background-color:#45a049;border-color:#45a049}@media (max-width:768px){.language-toggle{gap:6px}.language-btn{font-size:12px;padding:5px 10px}}.message-popup-overlay{align-items:center;animation:fadeIn .2s ease-out;background:#000000bf;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:9999}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.message-popup-content{animation:slideIn .3s ease-out;border-radius:clamp(10px,2.5vw,16px);box-shadow:0 clamp(8px,2vh,16px) clamp(24px,6vw,48px) #0006;color:#fff;max-width:clamp(280px,85vw,480px);padding:clamp(16px,4vh,24px) clamp(20px,5vw,32px);text-align:center;width:90%}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.message-popup-content h2{font-size:clamp(18px,4.5vw,24px);font-weight:700;margin:0 0 clamp(10px,2.5vh,16px);text-shadow:0 2px 4px #0000004d}.message-popup-body{margin-top:clamp(8px,2vh,12px)}.message-popup-text{font-size:clamp(14px,3.5vw,16px);line-height:1.5;margin:0;white-space:pre-line}.message-popup-actions{display:flex;justify-content:center;margin-top:clamp(12px,2.5vh,16px)}.message-dismiss-btn{border:none;border-radius:clamp(6px,1.5vw,8px);box-shadow:0 6px 16px #00000040;color:#fff;cursor:pointer;font-size:clamp(13px,3.2vw,16px);font-weight:700;padding:clamp(8px,2vh,12px) clamp(14px,3.5vw,20px);transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}.message-dismiss-btn:hover{box-shadow:0 8px 20px #0000004d;filter:brightness(1.03);transform:translateY(-1px)}.message-dismiss-btn:active{transform:translateY(0)}.message-dismiss-btn:focus{box-shadow:0 0 0 3px #ffffff59;outline:none}.error-overlay .error-message{background:linear-gradient(135deg,#d32f2f,#8e0000)}.error-dismiss-btn{background:linear-gradient(135deg,#ff6b6b,#d32f2f)}.error-dismiss-btn:focus{box-shadow:0 0 0 3px #ff6b6b59}.warning-overlay .warning-message{background:linear-gradient(135deg,#f57c00,#e65100)}.warning-dismiss-btn{background:linear-gradient(135deg,#ffa726,#f57c00)}.warning-dismiss-btn:focus{box-shadow:0 0 0 3px #ffa72659}.info-overlay .info-message{background:linear-gradient(135deg,#1976d2,#0d47a1)}.info-dismiss-btn{background:linear-gradient(135deg,#42a5f5,#1976d2)}.info-dismiss-btn:focus{box-shadow:0 0 0 3px #42a5f559}.success-overlay .success-message{background:linear-gradient(135deg,#388e3c,#1b5e20)}.success-dismiss-btn{background:linear-gradient(135deg,#66bb6a,#388e3c)}.success-dismiss-btn:focus{box-shadow:0 0 0 3px #66bb6a59}.google-button{background-color:#fff;border:2px solid #dadce0;border-radius:clamp(4px,1vw,8px);box-sizing:border-box;color:#3c4043;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:clamp(14px,3.5vw,18px);font-weight:500;line-height:1.2;min-height:clamp(44px,8vw,52px);padding:clamp(10px,2.5vw,16px) clamp(12px,3vw,20px);transition:all .2s ease;width:100%}.google-button:hover:not(.disabled){background-color:#f8f9fa;border-color:#dadce0;box-shadow:0 2px 6px #00000026;transform:translateY(-1px)}.google-button:active:not(.disabled){background-color:#f1f3f4;box-shadow:0 1px 3px #0000001a;transform:translateY(0)}.google-button.disabled{background-color:#f8f9fa;border-color:#e8eaed;box-shadow:none!important;cursor:not-allowed;opacity:.6;transform:none!important}.google-button-content{align-items:center;display:flex;gap:clamp(8px,2vw,16px);justify-content:center}.google-icon{flex-shrink:0;height:clamp(16px,3.5vw,20px);width:clamp(16px,3.5vw,20px)}.google-button-text{color:#3c4043;font-weight:500;line-height:1.2;white-space:nowrap}.google-button.disabled .google-button-text{color:#9aa0a6}.google-button:focus{border-color:#4285f4;box-shadow:0 0 0 3px #4285f433;outline:none}@media (max-aspect-ratio:9/20){.google-button{font-size:clamp(13px,3vw,16px);min-height:clamp(40px,7vw,48px);padding:clamp(8px,2vw,12px) clamp(10px,2.5vw,16px)}.google-button-content{gap:clamp(6px,1.5vw,10px)}.google-icon{height:clamp(14px,3vw,18px);width:clamp(14px,3vw,18px)}}@media (min-aspect-ratio:9/20) and (max-aspect-ratio:3/4){.google-button{min-height:clamp(42px,7.5vw,50px)}}@media (min-aspect-ratio:3/4){.google-button{min-height:clamp(44px,8vw,52px)}}@media (max-height:600px){.google-button{min-height:clamp(36px,6vw,44px);padding:clamp(8px,2vw,12px) clamp(10px,2.5vw,16px)}}.auth-form{margin:0 auto;max-width:100%;padding:0;width:100%}.auth-form h2{color:#333;font-size:clamp(20px,5vw,28px);font-weight:600;line-height:1.2;margin-bottom:clamp(16px,4vw,28px);text-align:center}.auth-error{background-color:#fee;border:1px solid #fcc;border-radius:clamp(4px,1vw,8px);color:#c33;font-size:clamp(12px,3vw,16px);line-height:1.4;padding:clamp(10px,2.5vw,16px);text-align:center}.auth-error,.form-group{margin-bottom:clamp(16px,3vw,24px)}.form-group label{color:#555;display:block;font-size:clamp(13px,3vw,16px);font-weight:500;line-height:1.3;margin-bottom:clamp(4px,1vw,8px)}.form-group input{border:2px solid #ddd;border-radius:clamp(4px,1vw,8px);box-sizing:border-box;font-size:clamp(16px,3.5vw,18px);line-height:1.4;min-height:clamp(44px,8vw,52px);padding:clamp(10px,2.5vw,16px);transition:border-color .2s ease,box-shadow .2s ease;width:100%}.form-group input:focus{border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a;outline:none}.form-group input.error{border-color:#f44336;box-shadow:0 0 0 3px #f443361a}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.7}.field-error{color:#f44336;display:block;font-size:clamp(11px,2.5vw,14px);line-height:1.3;margin-top:clamp(3px,.8vw,6px)}.auth-button{border:none;border-radius:clamp(4px,1vw,8px);box-sizing:border-box;cursor:pointer;font-size:clamp(14px,3.5vw,18px);font-weight:600;line-height:1.2;min-height:clamp(44px,8vw,52px);padding:clamp(12px,3vw,18px);transition:all .2s ease;width:100%}.auth-button.primary{background-color:#4caf50;box-shadow:0 2px 4px #4caf5033;color:#fff}.auth-button.primary:hover:not(:disabled){background-color:#45a049;box-shadow:0 4px 8px #4caf504d;transform:translateY(-1px)}.auth-button.secondary{background-color:#f5f5f5;border:2px solid #ddd;color:#333}.auth-button.secondary:hover:not(:disabled){background-color:#e9e9e9;border-color:#ccc;transform:translateY(-1px)}.auth-button:disabled{box-shadow:none!important;cursor:not-allowed;opacity:.6;transform:none!important}.auth-switch{border-top:1px solid #eee;margin-top:clamp(20px,4vw,28px);padding-top:clamp(16px,3vw,24px);text-align:center}.auth-switch p{color:#666;line-height:1.4;margin:0}.auth-link,.auth-switch p{font-size:clamp(13px,3vw,16px)}.auth-link{align-items:center;background:none;border:none;color:#4caf50;cursor:pointer;display:inline-flex;margin-left:clamp(3px,.8vw,6px);min-height:32px;padding:0;text-decoration:underline}.auth-link:hover:not(:disabled){color:#45a049}.auth-link:disabled{cursor:not-allowed;opacity:.6}.auth-separator{align-items:center;display:flex;margin:clamp(16px,3vw,24px) 0;width:100%}.separator-line{background-color:#ddd;flex:1 1;height:1px}.separator-text{background-color:#fff;color:#666;font-size:clamp(12px,3vw,16px);font-weight:500;line-height:1.2;padding:0 clamp(12px,3vw,20px)}@media (max-aspect-ratio:9/20){.auth-form h2{font-size:clamp(18px,4.5vw,24px);margin-bottom:clamp(12px,3vw,20px)}.form-group{margin-bottom:clamp(12px,2.5vw,18px)}.form-group input{padding:clamp(8px,2vw,12px)}.auth-button,.form-group input{min-height:clamp(40px,7vw,48px)}.auth-button{padding:clamp(10px,2.5vw,14px)}}@media (min-aspect-ratio:9/20) and (max-aspect-ratio:3/4){.auth-form h2{font-size:clamp(20px,4.8vw,26px)}.auth-button,.form-group input{min-height:clamp(42px,7.5vw,50px)}}@media (min-aspect-ratio:3/4){.auth-form h2{font-size:clamp(22px,5vw,28px)}.auth-button,.form-group input{min-height:clamp(44px,8vw,52px)}}@media (max-height:600px){.auth-form h2{margin-bottom:clamp(10px,2.5vw,16px)}.form-group{margin-bottom:clamp(10px,2vw,16px)}.auth-switch{margin-top:clamp(12px,3vw,20px);padding-top:clamp(10px,2.5vw,16px)}}.auth-modal-backdrop{align-items:center;background-color:#000000b3;bottom:0;box-sizing:border-box;display:flex;justify-content:center;left:0;padding:clamp(8px,2vw,20px);position:fixed;right:0;top:0;z-index:1000}.auth-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:clamp(8px,2vw,16px);box-shadow:0 clamp(6px,2vw,12px) clamp(20px,5vw,40px) #0000004d;max-height:clamp(400px,85vh,90vh);max-width:clamp(280px,90vw,480px);min-width:280px;overflow-y:auto;position:relative;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-modal-close{align-items:center;background:none;border:none;border-radius:50%;color:#999;cursor:pointer;display:flex;font-size:clamp(20px,4vw,28px);height:clamp(32px,6vw,40px);justify-content:center;min-height:32px;min-width:32px;position:absolute;right:clamp(10px,2vw,18px);top:clamp(10px,2vw,18px);transition:all .2s ease;width:clamp(32px,6vw,40px);z-index:1}.auth-modal-close:hover:not(:disabled){background-color:#f5f5f5;color:#666;transform:scale(1.1)}.auth-modal-close:disabled{cursor:not-allowed;opacity:.5}.auth-modal-content{padding:clamp(45px,8vw,60px) clamp(12px,3vw,24px) clamp(12px,3vw,24px)}.auth-modal-footer{border-top:1px solid #eee;margin-top:clamp(16px,3vw,24px);padding:clamp(16px,3vw,24px) clamp(12px,3vw,24px) clamp(12px,3vw,24px)}.auth-modal-footer .auth-button{margin-top:0}@media (max-aspect-ratio:9/20){.auth-modal{max-height:80vh;max-width:clamp(260px,95vw,320px)}.auth-modal-content{padding:clamp(40px,7vw,50px) clamp(10px,2.5vw,16px) clamp(10px,2.5vw,16px)}}@media (min-aspect-ratio:9/20) and (max-aspect-ratio:3/4){.auth-modal{max-width:clamp(300px,85vw,420px)}}@media (min-aspect-ratio:3/4){.auth-modal{max-width:clamp(350px,80vw,480px)}}@media (max-height:600px){.auth-modal{max-height:85vh}.auth-modal-content{padding-top:clamp(35px,6vw,45px)}}@media (max-height:500px){.auth-modal{max-height:90vh}.auth-modal-content{padding:clamp(30px,5vw,40px) clamp(8px,2vw,12px) clamp(8px,2vw,12px)}}.user-profile-backdrop{align-items:center;background-color:#000000b3;bottom:0;box-sizing:border-box;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.user-profile-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:700px;width:100%}.user-profile-header{align-items:center;background:#fff;border-bottom:1px solid #eee;border-radius:12px 12px 0 0;display:flex;flex-shrink:0;justify-content:space-between;padding:20px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.user-profile-header h2{color:#333;font-size:24px;font-weight:600;margin:0}.profile-close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#999;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;transition:all .2s ease;width:30px}.profile-close-btn:hover:not(:disabled){background-color:#f5f5f5;color:#666}.user-profile-content{flex:1 1;overflow-y:auto;padding:20px}.profile-section{margin-bottom:24px}.profile-section.levels-section{margin-bottom:32px}.profile-section label{color:#555;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.profile-value{color:#333;font-size:16px}.record-value{color:#4caf50;font-weight:600}.display-name-container{align-items:center;display:flex;gap:12px}.player-name{color:#333;flex:1 1;font-size:16px}.edit-btn{background-color:#f5f5f5;border:1px solid #ddd;border-radius:4px;color:#666;cursor:pointer;font-size:12px;padding:6px 12px;transition:all .2s ease}.edit-btn:hover:not(:disabled){background-color:#e9e9e9;border-color:#ccc}.edit-name-container input{border:2px solid #ddd;border-radius:6px;box-sizing:border-box;font-size:16px;margin-bottom:12px;padding:8px 12px;width:100%}.edit-name-container input:focus{border-color:#4caf50;outline:none}.edit-name-buttons{display:flex;gap:8px}.save-btn{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .2s ease}.save-btn:hover:not(:disabled){background-color:#45a049}.cancel-btn{background-color:#f5f5f5;border:1px solid #ddd;border-radius:4px;color:#666;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s ease}.cancel-btn:hover:not(:disabled){background-color:#e9e9e9;border-color:#ccc}.top-words-list{border:1px solid #eee;border-radius:6px;max-height:200px;overflow-y:auto;padding:8px}.top-word-item{align-items:center;border-bottom:1px solid #f5f5f5;display:flex;gap:12px;padding:8px}.top-word-item:last-child{border-bottom:none}.word-rank{color:#666;font-size:14px;font-weight:600;min-width:30px}.word-text{color:#333;flex:1 1;font-size:16px;font-weight:500}.word-points{color:#4caf50;font-size:14px;font-weight:600}.no-words{color:#999;display:block;font-style:italic;padding:20px;text-align:center}.levels-header{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.levels-header label{color:#333;font-size:16px;font-weight:700;margin-bottom:0}.completion-stats{align-items:center;display:flex;gap:12px}.completion-count{color:#666;font-size:14px;font-weight:600;min-width:50px}.progress-bar{background-color:#e0e0e0;border-radius:4px;flex:1 1;height:8px;overflow:hidden}.progress-fill{border-radius:4px;height:100%;transition:width .3s ease}.progress-fill-en{background:linear-gradient(90deg,#4caf50,#66bb6a)}.progress-fill-da{background:linear-gradient(90deg,#2196f3,#42a5f5)}.completion-percentage{color:#333;font-size:14px;font-weight:700;min-width:40px;text-align:right}.levels-grid{grid-gap:3px;background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;display:grid;gap:3px;grid-template-columns:repeat(10,1fr);padding:8px}.level-badge{align-items:center;border-radius:3px;cursor:default;display:flex;font-size:9px;font-weight:600;height:18px;justify-content:center;position:relative;transition:all .2s ease;width:18px}.level-number{position:relative;z-index:1}.level-check,.level-failed-indicator{font-size:8px;position:absolute;right:1px;top:1px;z-index:2}.level-failed-indicator{color:#fff}.level-current-indicator{font-size:6px;left:1px;position:absolute;top:1px;z-index:2}.level-badge.completed{background:linear-gradient(135deg,#4caf50,#66bb6a);box-shadow:0 2px 4px #4caf504d;color:#fff}.level-badge.completed:hover{box-shadow:0 4px 8px #4caf5066;transform:translateY(-2px)}.level-badge.failed{background:linear-gradient(135deg,#f44336,#e57373);box-shadow:0 2px 4px #f443364d;color:#fff}.level-badge.failed:hover{box-shadow:0 4px 8px #f4433666;transform:translateY(-2px)}.level-badge.current{animation:pulse 2s ease-in-out infinite;background:linear-gradient(135deg,#ffd54f,#ffc107);box-shadow:0 2px 4px #ffc1074d;color:#333}.level-badge.locked{background-color:#e0e0e0;border:1px solid #d0d0d0;color:#999}@keyframes pulse{0%,to{box-shadow:0 2px 4px #ffc1074d}50%{box-shadow:0 4px 12px #ffc10799}}.user-profile-footer{border-top:1px solid #eee;flex-shrink:0;padding:20px;text-align:center}.logout-btn{background-color:#f44336;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:background-color .2s ease}.logout-btn:hover:not(:disabled){background-color:#d32f2f}.logout-btn:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.levels-grid{gap:2.5px;grid-template-columns:repeat(8,1fr)}.level-badge{font-size:8px;height:16px;width:16px}}@media (max-width:480px){.user-profile-backdrop{padding:10px}.user-profile-modal{border-radius:8px;max-width:100%}.user-profile-content,.user-profile-footer,.user-profile-header{padding:15px}.levels-grid{gap:2px;grid-template-columns:repeat(5,1fr);padding:6px}.level-badge{border-radius:2px;font-size:7px;height:14px;width:14px}.level-check{font-size:6px}.completion-stats{gap:8px}.completion-count{font-size:12px;min-width:45px}.completion-percentage{font-size:12px;min-width:35px}}
/*# sourceMappingURL=main.d0b489f5.css.map*/