:root{--cheese-dark: #c9a227;--cheese-main: #F2C94C;--cheese-light: #f8d96e;--cheese-cream: #fffef0;--cheese-hole: rgba(180, 130, 20, .4);--crust: #c4842d;--text: #5c4813;--text-light: #8b7355;--white: #ffffff;--shadow: rgba(92, 72, 19, .2);--theme-bg: linear-gradient(180deg, var(--cheese-light) 0%, var(--cheese-main) 100%);--theme-btn: linear-gradient(135deg, #E8A030 0%, #D4893A 100%);--theme-btn-hover: linear-gradient(135deg, #F0B040 0%, #E09040 100%);--theme-btn-active: linear-gradient(135deg, #D4893A 0%, #C07830 100%);--theme-btn-border: #C4782A;--theme-btn-shadow: #C4782A}*{margin:0;padding:0;box-sizing:border-box}html,body{overscroll-behavior:none}body{font-family:Comfortaa,cursive;min-height:100vh;background:radial-gradient(ellipse 80px 70px at 5% 10%,var(--cheese-hole) 40%,transparent 70%),radial-gradient(ellipse 120px 100px at 90% 5%,var(--cheese-hole) 40%,transparent 70%),radial-gradient(ellipse 60px 50px at 80% 80%,var(--cheese-hole) 40%,transparent 70%),radial-gradient(ellipse 100px 80px at 15% 75%,var(--cheese-hole) 40%,transparent 70%),radial-gradient(ellipse 50px 60px at 50% 90%,var(--cheese-hole) 40%,transparent 70%),radial-gradient(ellipse 70px 60px at 95% 45%,var(--cheese-hole) 40%,transparent 70%),radial-gradient(ellipse 40px 50px at 3% 45%,var(--cheese-hole) 40%,transparent 70%),var(--theme-bg);background-color:var(--cheese-main);color:var(--text);overflow-x:hidden;transition:background-color .5s ease}.app-container{max-width:900px;margin:0 auto;padding:20px;min-height:100vh;position:relative;z-index:1}.page{display:none;animation:fadeIn .4s ease}.page.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes dropIn{0%{opacity:0;transform:translateY(-60px)}to{opacity:1;transform:translateY(0)}}@keyframes riseUp{0%{opacity:0;transform:translateY(80px)}70%{opacity:1;transform:translateY(-12px)}85%{transform:translateY(4px)}to{transform:translateY(0)}}button,.nav-btn,.auth-btn,.auth-password-btn,.auth-guest-btn,.spin-btn,.add-movie-btn,.game-btn,.admin-btn,.drawer-add-btn,.drawer-upload-btn,.nav-pwd-submit{-webkit-transform:translateZ(0);will-change:transform}body.theme-newyear{--theme-btn: linear-gradient(135deg, #c41e3a 0%, #8b0000 100%);--theme-btn-hover: linear-gradient(135deg, #d42a4c 0%, #a00000 100%);--theme-btn-active: linear-gradient(135deg, #228b22 0%, #145214 100%);--theme-btn-border: #ffd700;--theme-btn-shadow: #ffd700;background-color:#2d5a3d;background:radial-gradient(ellipse 80px 70px at 5% 10%,var(--cheese-hole) 40%,transparent 70%),radial-gradient(ellipse 120px 100px at 90% 5%,var(--cheese-hole) 40%,transparent 70%),radial-gradient(ellipse 60px 50px at 80% 80%,var(--cheese-hole) 40%,transparent 70%),radial-gradient(ellipse 100px 80px at 15% 75%,var(--cheese-hole) 40%,transparent 70%),radial-gradient(ellipse 50px 60px at 50% 90%,var(--cheese-hole) 40%,transparent 70%),radial-gradient(ellipse 70px 60px at 95% 45%,var(--cheese-hole) 40%,transparent 70%),radial-gradient(ellipse 40px 50px at 3% 45%,var(--cheese-hole) 40%,transparent 70%),linear-gradient(180deg,#1a472a 0%,#2d5a3d 50%,var(--cheese-main) 100%)}.snowflakes{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1000;overflow:hidden;display:none}body.theme-newyear .snowflakes{display:block}.snowflake{position:absolute;top:-10px;color:#fff;font-size:1rem;text-shadow:0 0 5px rgba(255,255,255,.8);animation:fall linear infinite;opacity:.9}@keyframes fall{0%{transform:translateY(-10px) rotate(0)}to{transform:translateY(100vh) rotate(360deg)}}.garland{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none;overflow:hidden;display:none}body.theme-newyear .garland{display:block}.light{position:absolute;width:10px;height:10px;border-radius:50%;animation:glow 1.5s ease-in-out infinite alternate;box-shadow:0 0 15px currentColor,0 0 30px currentColor}.light:nth-child(5n+1){color:red;background:red;animation-delay:0s}.light:nth-child(5n+2){color:#0f0;background:#0f0;animation-delay:.3s}.light:nth-child(5n+3){color:#0080ff;background:#0080ff;animation-delay:.6s}.light:nth-child(5n+4){color:#ff0;background:#ff0;animation-delay:.9s}.light:nth-child(5n+5){color:#f0f;background:#f0f;animation-delay:1.2s}@keyframes glow{0%{opacity:.3;transform:scale(.8)}to{opacity:1;transform:scale(1.2)}}body.theme-newyear .nav-btn,body.theme-newyear .auth-btn,body.theme-newyear .spin-btn,body.theme-newyear .add-movie-btn,body.theme-newyear .auth-password-btn{background:linear-gradient(135deg,#c41e3a,#8b0000);border-color:gold}body.theme-newyear .nav-btn:hover,body.theme-newyear .auth-btn:hover,body.theme-newyear .add-movie-btn:hover,body.theme-newyear .auth-password-btn:hover{background:linear-gradient(135deg,#d42a4c,#a00000)}body.theme-newyear .nav-btn.active,body.theme-newyear .auth-btn.selected{background:linear-gradient(135deg,#228b22,#145214)}body.theme-newyear .spin-btn{box-shadow:0 4px 14px #8b000066,0 0 20px #ffd7004d}body.theme-newyear .spin-btn:hover:not(:disabled){background:linear-gradient(135deg,#d42a4c,#a00000);box-shadow:0 4px 20px #8b000080,0 0 20px #ffd70066}body.theme-newyear .spin-btn:active:not(:disabled){background:linear-gradient(135deg,#a01830,#700000);box-shadow:0 2px 8px #8b000066}body.theme-newyear .watched-table th{background:linear-gradient(135deg,#c41e3a,#8b0000);border-bottom-color:gold}body.theme-newyear .watched-table th:hover{background:linear-gradient(135deg,#d42a4c,#a00000)}body.theme-newyear .wheel-center{background:linear-gradient(135deg,#c41e3a,#8b0000);border-color:gold}body.theme-newyear .wheel-outer{background:conic-gradient(from 0deg,#c41e3a,#8b0000,#c41e3a,#8b0000,#c41e3a,#8b0000,#c41e3a,#8b0000,#c41e3a,#8b0000,#c41e3a,#8b0000,#c41e3a,#8b0000,#c41e3a,#8b0000,#c41e3a,#8b0000,#c41e3a,#8b0000,#c41e3a,#8b0000,#c41e3a,#8b0000,#c41e3a,#8b0000,#c41e3a,#8b0000,#c41e3a,#8b0000,#c41e3a,#8b0000,#c41e3a,#8b0000,#c41e3a,#8b0000,#c41e3a 360deg);box-shadow:0 0 0 4px gold,0 0 25px #c41e3a66,0 15px 40px #00000059}body.theme-newyear .nav-user-btn,body.theme-newyear .nav-dropdown,body.theme-newyear .nav-user,body.theme-newyear .spin-duration,body.theme-newyear .auth-password-input,body.theme-newyear .add-movie,body.theme-newyear .add-movie-input,body.theme-newyear .watched-table-wrapper,body.theme-newyear .watched-add-movie,body.theme-newyear .stat-card,body.theme-newyear .search-bar,body.theme-newyear .rating-select,body.theme-newyear .movie-tag,body.theme-newyear .drawer,body.theme-newyear .drawer-add-input,body.theme-newyear .drawer-header,body.theme-newyear .drawer-add-form,body.theme-newyear .drawer-movie-item,body.theme-newyear .drawer-footer,body.theme-newyear .drawer-center-section{border-color:gold}body.theme-newyear .stat-card-value,body.theme-newyear .stats-user-avg{color:#c41e3a}body.theme-newyear .connection-status{border-color:gold}body.theme-newyear .modal-content{box-shadow:0 0 50px #c41e3a66,0 20px 60px #0000004d}body.theme-newyear .admin-btn{background:linear-gradient(135deg,#c41e3a,#8b0000);border-color:gold}body.theme-spring{--theme-btn: linear-gradient(135deg, #66bb6a 0%, #43a047 100%);--theme-btn-hover: linear-gradient(135deg, #81c784 0%, #66bb6a 100%);--theme-btn-active: linear-gradient(135deg, #ec407a 0%, #d81b60 100%);--theme-btn-border: #2e7d32;--theme-btn-shadow: #2e7d32;background-color:#c8e6c9;background:radial-gradient(ellipse 80px 70px at 5% 10%,rgba(144,238,144,.3) 40%,transparent 70%),radial-gradient(ellipse 120px 100px at 90% 5%,rgba(255,182,193,.3) 40%,transparent 70%),radial-gradient(ellipse 60px 50px at 80% 80%,rgba(144,238,144,.3) 40%,transparent 70%),radial-gradient(ellipse 100px 80px at 15% 75%,rgba(255,182,193,.3) 40%,transparent 70%),radial-gradient(ellipse 50px 60px at 50% 90%,rgba(144,238,144,.3) 40%,transparent 70%),radial-gradient(ellipse 70px 60px at 95% 45%,rgba(255,218,185,.3) 40%,transparent 70%),radial-gradient(ellipse 40px 50px at 3% 45%,rgba(255,182,193,.3) 40%,transparent 70%),linear-gradient(180deg,#e8f5e9,#c8e6c9 30%,#fff9c4 70%,#ffe0b2)}.petals{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1000;overflow:hidden;display:none}body.theme-spring .petals{display:block}.petal{position:absolute;top:-30px;font-size:1.2rem;animation:petalFall linear infinite;opacity:.8;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}@keyframes petalFall{0%{transform:translateY(-30px) translate(0) rotate(0)}25%{transform:translateY(25vh) translate(20px) rotate(90deg)}50%{transform:translateY(50vh) translate(-15px) rotate(180deg)}75%{transform:translateY(75vh) translate(25px) rotate(270deg)}to{transform:translateY(100vh) translate(-10px) rotate(360deg)}}body.theme-spring .nav-btn,body.theme-spring .auth-btn,body.theme-spring .spin-btn,body.theme-spring .add-movie-btn,body.theme-spring .auth-password-btn{background:linear-gradient(135deg,#66bb6a,#43a047);border-color:#2e7d32}body.theme-spring .nav-btn:hover,body.theme-spring .auth-btn:hover,body.theme-spring .add-movie-btn:hover,body.theme-spring .auth-password-btn:hover{background:linear-gradient(135deg,#81c784,#66bb6a)}body.theme-spring .nav-btn.active,body.theme-spring .auth-btn.selected{background:linear-gradient(135deg,#ec407a,#d81b60)}body.theme-spring .spin-btn{box-shadow:0 4px 14px #1b5e2066,0 0 20px #66bb6a4d}body.theme-spring .spin-btn:hover:not(:disabled){background:linear-gradient(135deg,#81c784,#66bb6a);box-shadow:0 4px 20px #1b5e2080,0 0 20px #66bb6a66}body.theme-spring .spin-btn:active:not(:disabled){background:linear-gradient(135deg,#4caf50,#388e3c);box-shadow:0 2px 8px #1b5e2066}body.theme-spring .watched-table th{background:linear-gradient(135deg,#66bb6a,#43a047);border-bottom-color:#2e7d32}body.theme-spring .watched-table th:hover{background:linear-gradient(135deg,#81c784,#66bb6a)}body.theme-spring .wheel-center{background:linear-gradient(135deg,#ec407a,#d81b60);border-color:#fff}body.theme-spring .wheel-outer{background:conic-gradient(from 0deg,#66bb6a,#43a047,#66bb6a,#43a047,#66bb6a,#43a047,#66bb6a,#43a047,#66bb6a,#43a047,#66bb6a,#43a047,#66bb6a,#43a047,#66bb6a,#43a047,#66bb6a,#43a047,#66bb6a,#43a047,#66bb6a,#43a047,#66bb6a,#43a047,#66bb6a,#43a047,#66bb6a,#43a047,#66bb6a,#43a047,#66bb6a,#43a047,#66bb6a,#43a047,#66bb6a,#43a047,#66bb6a 360deg);box-shadow:0 0 0 4px #fff,0 0 25px #66bb6a66,0 15px 40px #0003}body.theme-spring .nav-user-btn,body.theme-spring .nav-dropdown,body.theme-spring .nav-user,body.theme-spring .spin-duration,body.theme-spring .auth-password-input,body.theme-spring .add-movie,body.theme-spring .add-movie-input,body.theme-spring .watched-table-wrapper,body.theme-spring .watched-add-movie,body.theme-spring .stat-card,body.theme-spring .search-bar,body.theme-spring .rating-select,body.theme-spring .movie-tag,body.theme-spring .drawer,body.theme-spring .drawer-add-input,body.theme-spring .drawer-header,body.theme-spring .drawer-add-form,body.theme-spring .drawer-movie-item,body.theme-spring .drawer-footer,body.theme-spring .drawer-center-section{border-color:#66bb6a}body.theme-spring .stat-card-value,body.theme-spring .stats-user-avg{color:#2e7d32}body.theme-spring .connection-status{border-color:#66bb6a}body.theme-spring .modal-content{box-shadow:0 0 50px #66bb6a66,0 20px 60px #0003}body.theme-spring .admin-btn{background:linear-gradient(135deg,#66bb6a,#43a047);border-color:#2e7d32}.toast-container{position:fixed;top:20px;right:20px;z-index:3000;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast{background:#fffffff7;border-radius:14px;padding:14px 22px;box-shadow:0 8px 32px #0000002e;border-left:5px solid var(--cheese-dark);font-size:.95rem;color:var(--text);pointer-events:auto;animation:toastIn .35s ease,toastOut .35s ease 2.65s forwards;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);max-width:340px;display:flex;align-items:center;gap:10px}.toast.toast-success{border-left-color:#27ae60}.toast.toast-error{border-left-color:#e74c3c}.toast.toast-info{border-left-color:#3498db}.toast-icon{font-size:1.2rem;flex-shrink:0}@keyframes toastIn{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes toastOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(40px)}}.nav{display:flex;justify-content:center;gap:10px;margin-bottom:30px;flex-wrap:wrap}.nav-btn{background:var(--theme-btn);border:3px solid var(--theme-btn-border);border-radius:30px;padding:12px 25px;font-family:Comfortaa,cursive;font-size:1rem;font-weight:600;color:#fff;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;-webkit-transform:translateZ(0)}.nav-btn:hover{background:var(--theme-btn-hover)}.nav-btn.active{background:var(--theme-btn-active)}.nav-user{position:relative;margin-left:auto;-webkit-backface-visibility:hidden}.nav-user-btn{display:flex;align-items:center;justify-content:center;gap:8px;background:#fffffff2;border:3px solid var(--theme-btn-border);border-radius:30px;padding:10px 20px;color:var(--text);cursor:pointer;font-family:Comfortaa,cursive;font-size:1rem;transition:transform .2s ease,box-shadow .2s ease}.nav-user-btn:hover{background:#fff}.nav-user-name{font-weight:700}.nav-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:#fffffff7;border:3px solid var(--theme-btn-border);border-radius:15px;padding:6px;min-width:200px;box-shadow:0 8px 24px #00000040;z-index:100;display:flex;flex-direction:column;gap:4px}.nav-dropdown-item{background:none;border:none;padding:10px 15px;font-family:Comfortaa,cursive;font-size:.9rem;color:var(--text);cursor:pointer;border-radius:10px;text-align:left;transition:background .15s}.nav-dropdown-item:hover{background:#d4a01726}.nav-dropdown-logout{border-top:2px solid #eee;margin-top:2px;padding-top:10px;color:#c0392b;font-weight:600}.nav-password-form{display:flex;flex-direction:column;gap:8px;padding:8px}.nav-password-form input{padding:8px 12px;border:2px solid #ddd;border-radius:10px;font-family:Comfortaa,cursive;font-size:.85rem;outline:none;transition:border-color .2s}.nav-password-form input:focus{border-color:var(--theme-btn-border)}.nav-pwd-error{color:#c0392b;font-size:.8rem;text-align:center}.nav-pwd-submit{background:var(--theme-btn)!important;color:#fff!important;font-weight:700;text-align:center!important}.nav-pwd-submit:hover{background:var(--theme-btn-hover)!important}.auth-page{display:none;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;text-align:center}.auth-page.active{display:flex}.auth-logo{font-size:80px;margin-bottom:10px;animation:bounce 2s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}.auth-title{font-family:Caveat,cursive;font-size:3rem;color:#fff;margin-bottom:10px;text-shadow:2px 2px 4px rgba(0,0,0,.5),0 0 20px var(--cheese-dark)}.auth-subtitle{font-size:1.1rem;color:#fffc;margin-bottom:40px}.auth-users{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:400px}.auth-btn-center{grid-column:1 / -1;justify-self:center;width:calc(50% - 10px)}.auth-btn{background:var(--theme-btn);border:4px solid var(--theme-btn-border);border-radius:20px;padding:25px 35px;font-family:Comfortaa,cursive;font-size:1.2rem;font-weight:700;color:#fff;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 6px 0 var(--theme-btn-border),0 10px 20px #0000004d;position:relative;overflow:hidden}.auth-btn:before{content:"";position:absolute;top:5px;right:8px;font-size:1rem;opacity:.7}.auth-btn:hover{transform:translateY(-3px);box-shadow:0 9px 0 var(--theme-btn-border),0 15px 30px #0006;background:var(--theme-btn-hover)}.auth-btn:active{transform:translateY(3px);box-shadow:0 3px 0 var(--theme-btn-border),0 5px 10px #0000004d}.auth-btn.selected{background:var(--theme-btn-active);box-shadow:0 6px 0 var(--theme-btn-border),0 10px 20px #0000004d}.auth-password-container{margin-top:30px;display:flex;flex-direction:column;align-items:center;gap:15px}.auth-password-input{padding:15px 25px;border:4px solid var(--theme-btn-border);border-radius:15px;font-family:Comfortaa,cursive;font-size:1rem;width:280px;text-align:center;background:#fffffff2}.auth-password-input:focus{outline:none;border-color:var(--theme-btn-border)}.auth-password-btn{background:var(--theme-btn);border:4px solid var(--theme-btn-border);border-radius:15px;padding:15px 40px;font-family:Comfortaa,cursive;font-size:1.1rem;font-weight:700;color:#fff;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 0 var(--theme-btn-border),0 8px 15px #0000004d}.auth-password-btn:hover{background:var(--theme-btn-hover);transform:translateY(-2px)}.auth-error{color:#ff6b6b;font-size:.9rem;min-height:20px}.auth-guest-btn{margin-top:30px;background:#fff3;border:3px solid rgba(255,255,255,.5);border-radius:30px;padding:12px 30px;font-family:Comfortaa,cursive;font-size:1rem;color:#fff;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.auth-guest-btn:hover{background:#ffffff4d;border-color:#fff}.wheel-container{display:flex;flex-direction:column;align-items:center;margin-bottom:40px}.wheel-wrapper{position:relative;margin:30px 0;animation:riseUp .7s cubic-bezier(.22,1,.36,1);-webkit-backface-visibility:hidden}.wheel-center-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:90px;height:90px;border-radius:50%;border:4px solid var(--theme-btn-border);background:none;padding:0;cursor:pointer;z-index:5;overflow:hidden;transition:transform .2s,box-shadow .2s;box-shadow:0 0 0 2px #ffffff80,0 3px 12px #0000004d}.wheel-center-btn:hover:not(:disabled){transform:translate(-50%,-50%) scale(1.1);box-shadow:0 0 0 2px #ffffffb3,0 4px 18px #0006}.wheel-center-btn:active:not(:disabled){transform:translate(-50%,-50%) scale(.95)}.wheel-center-btn:disabled{cursor:not-allowed}.wheel-center-img{width:100%;height:100%;object-fit:cover;border-radius:50%;pointer-events:none}.wheel-pointer{position:absolute;top:-14px;left:50%;transform:translate(-50%);z-index:10;width:0;height:0;border-left:16px solid transparent;border-right:16px solid transparent;border-top:30px solid #c0392b;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));font-size:0;transition:transform .1s ease}.wheel-pointer:after{content:"";position:absolute;top:-33px;left:-13px;width:0;height:0;border-left:13px solid transparent;border-right:13px solid transparent;border-top:26px solid #e74c3c}.wheel-pointer.bounce{animation:pointerBounce .15s ease}@keyframes pointerBounce{0%{transform:translate(-50%) rotate(0)}40%{transform:translate(-50%) rotate(4deg)}to{transform:translate(-50%) rotate(0)}}.wheel-outer{position:relative;width:480px;height:480px;max-width:100%;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 6px 20px rgba(100,80,0,.15))}.wheel-canvas-wrap{width:480px;height:480px;max-width:100%;position:relative;will-change:transform;border-radius:50%;overflow:hidden;-webkit-mask-image:-webkit-radial-gradient(white,black);isolation:isolate}#wheel-canvas{width:100%;height:100%;display:block}.wheel-empty{width:350px;height:350px;border-radius:50%;background:var(--cheese-cream);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:15px;box-shadow:0 0 0 12px var(--crust),0 0 0 18px var(--cheese-dark),0 0 30px #ffd70080,0 15px 40px #0000004d}.wheel-empty-icon{font-size:60px;opacity:.5}.wheel-empty-text{font-size:1.1rem;color:var(--text-light);text-align:center;padding:0 30px}@keyframes wheelGlow{0%,to{filter:drop-shadow(0 6px 20px rgba(100,80,0,.15))}50%{filter:drop-shadow(0 6px 30px rgba(106,170,90,.5))}}.wheel-outer.spinning{animation:wheelGlow 1s ease-in-out infinite}.spin-controls{display:flex;align-items:center;gap:15px;margin-top:20px;flex-wrap:wrap;justify-content:center}.spin-btn{background:linear-gradient(135deg,#6aaa5a,#4a8c3f);border:none;border-radius:14px;padding:16px 50px;font-family:Nunito,Comfortaa,sans-serif;font-size:1.2rem;font-weight:800;color:#fff;cursor:pointer;transition:background .2s ease,box-shadow .2s ease;box-shadow:0 4px 14px #4a8c3f4d}.spin-btn:hover:not(:disabled){background:linear-gradient(135deg,#7abb6a,#5a9c4f);box-shadow:0 4px 20px #4a8c3f73}.spin-btn:active:not(:disabled){background:linear-gradient(135deg,#5a9a4a,#3a7c2f);box-shadow:0 2px 8px #4a8c3f4d}.spin-btn:disabled{opacity:.6;cursor:not-allowed}.spin-duration{display:flex;align-items:center;gap:8px;background:#fff8dc;border:1px solid #e8d48a;border-radius:10px;padding:10px 16px;color:#7a6a3a}.spin-duration label{font-size:.9rem;font-weight:600}.spin-duration input{width:52px;padding:4px 6px;border:1px solid #dcc870;border-radius:8px;font-family:Nunito,Comfortaa,sans-serif;font-size:.95rem;text-align:center;background:#fffef5}.spin-duration input:focus{outline:none;border-color:#d4a820}.drawer-toggle{position:fixed;bottom:20px;left:20px;z-index:999;background:var(--theme-btn);border:3px solid var(--theme-btn-border);border-radius:50%;width:52px;height:52px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 15px #0000004d;transition:background .2s,box-shadow .2s,transform .2s}.drawer-toggle:hover{background:var(--theme-btn-hover);box-shadow:0 6px 20px #0006;transform:scale(1.1)}.drawer-toggle:active{background:var(--theme-btn-active);transform:scale(.95)}.drawer-toggle-cheese{font-size:1.6rem;line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.drawer-toggle-count{position:absolute;top:-6px;right:-6px;background:linear-gradient(135deg,#c0392b,#e74c3c);color:#fff;font-size:.7rem;font-weight:800;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-family:Nunito,sans-serif;box-shadow:0 2px 6px #c0392b66;border:2px solid #fff;animation:countPulse 2s ease-in-out infinite}@keyframes countPulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.drawer-backdrop{position:fixed;inset:0;background:#0000004d;z-index:999;opacity:0;pointer-events:none;transition:opacity .3s ease}.drawer-backdrop.visible{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;left:-320px;width:310px;height:100%;background:#fffffff7;border-right:3px solid var(--cheese-dark);box-shadow:4px 0 20px #0003;z-index:1000;display:flex;flex-direction:column;overflow-y:auto;transition:left .3s cubic-bezier(.4,0,.2,1);padding-top:16px}.drawer.open{left:0}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:2px solid var(--cheese-dark)}.drawer-header h3{font-family:Caveat,cursive;font-size:1.6rem;margin:0;color:var(--text)}.drawer-close{background:none;border:none;font-size:1.3rem;cursor:pointer;opacity:.5;transition:opacity .2s;padding:4px 8px}.drawer-close:hover{opacity:1}.drawer-add-form{display:flex;gap:8px;padding:14px 16px;border-bottom:2px solid var(--cheese-dark)}.drawer-add-input{flex:1;padding:10px 14px;border:2px solid var(--cheese-dark);border-radius:12px;font-family:Comfortaa,cursive;font-size:.9rem;outline:none;transition:border-color .2s;min-width:0}.drawer-add-input:focus{border-color:var(--crust)}.drawer-add-btn{background:var(--theme-btn);border:2px solid var(--theme-btn-border);border-radius:12px;padding:10px 14px;font-family:Comfortaa,cursive;font-size:.85rem;font-weight:700;color:#fff;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;white-space:nowrap}.drawer-add-btn:hover{background:var(--theme-btn-hover)}.drawer-movie-list{overflow-y:auto;padding:8px 0;max-height:220px}.drawer-next-section{border-top:2px dashed var(--cheese-dark);background:#ffd23212}.drawer-next-header{display:flex;flex-direction:column;gap:2px;padding:10px 16px 6px}.drawer-next-header span:first-child{font-weight:700;font-size:.95rem;color:var(--text)}.drawer-next-hint{font-size:.72rem;color:var(--text-light);opacity:.65}.drawer-next-list{max-height:180px}.drawer-next-item{background:#ffd2320d;opacity:.85}.drawer-empty{padding:30px 20px;text-align:center;color:var(--text-light);opacity:.6;font-size:.9rem}.drawer-disabled-msg{padding:12px 16px;text-align:center;color:var(--text-light);font-size:.85rem;font-style:italic;opacity:.7}.drawer-movie-item{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-bottom:1px solid var(--cheese-dark);transition:background .15s}.drawer-movie-item:hover{background:#ffc80014}.drawer-movie-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.drawer-movie-title{font-size:.95rem;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drawer-movie-author{font-size:.75rem;color:var(--text-light);opacity:.7}.drawer-movie-remove{background:none;border:none;font-size:1rem;cursor:pointer;opacity:.4;transition:opacity .2s;padding:4px 8px;flex-shrink:0}.drawer-movie-remove:hover{opacity:1;color:#c0392b}.drawer-movie-remove:disabled{opacity:.2;cursor:not-allowed}.drawer-footer{padding:12px 16px;border-top:2px solid var(--cheese-dark)}.drawer-center-section{margin-top:12px;padding-top:12px;border-top:1px solid var(--cheese-dark)}.drawer-center-label{font-size:.85rem;font-weight:700;color:var(--text);margin-bottom:8px}.drawer-center-preview{display:flex;align-items:center;gap:10px;margin-bottom:8px}.drawer-center-img{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid var(--cheese-dark)}.drawer-center-delete{background:none;border:none;font-size:1rem;cursor:pointer;opacity:.4;transition:opacity .2s}.drawer-center-delete:hover{opacity:1;color:#c0392b}.drawer-upload-btn{display:inline-block;background:var(--theme-btn);border:2px solid var(--theme-btn-border);border-radius:10px;padding:6px 14px;font-family:Comfortaa,cursive;font-size:.8rem;font-weight:700;color:#fff;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.drawer-upload-btn:hover{background:var(--theme-btn-hover)}.modal{display:none;position:fixed;inset:0;background:#000000b3;z-index:1001;align-items:center;justify-content:center;padding:20px}.modal.active{display:flex}.result-card{width:320px;max-width:90vw;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 2px 4px #00000014,0 12px 40px #00000040;animation:cardSlideUp .35s cubic-bezier(.34,1.56,.64,1)}@keyframes cardSlideUp{0%{transform:translateY(40px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.result-card-header{background:var(--theme-btn);padding:18px 24px}.result-card-label{font-family:Caveat,cursive;font-size:1.6rem;color:#fff;letter-spacing:.5px}.result-card-body{padding:28px 24px 20px}.result-card-title{font-size:1.4rem;font-weight:700;color:var(--text);line-height:1.3;margin-bottom:8px;word-break:break-word}.result-card-suggested{font-size:.85rem;color:var(--text-light);font-style:italic;margin-top:10px}.result-card-footer{padding:0 24px 24px}.result-card-btn{width:100%;padding:14px;background:var(--theme-btn);border:none;border-radius:12px;font-family:Comfortaa,cursive;font-size:1rem;font-weight:700;color:#fff;cursor:pointer;transition:background .2s,transform .1s}.result-card-btn:hover{background:var(--theme-btn-hover)}.result-card-btn:active{transform:scale(.97)}.admin-btn{position:fixed;bottom:20px;left:20px;background:var(--theme-btn);border:3px solid var(--theme-btn-border);border-radius:50%;width:50px;height:50px;font-size:1.5rem;cursor:pointer;box-shadow:0 4px 15px #0000004d;z-index:999;display:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.admin-btn:hover{transform:scale(1.1);box-shadow:0 6px 20px #0006}.admin-btn.visible{display:flex;align-items:center;justify-content:center}.admin-btn.with-drawer{left:80px}.admin-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;z-index:2000;align-items:center;justify-content:center}.admin-modal.active{display:flex}.admin-modal-content{background:var(--cheese-cream);border-radius:20px;padding:30px;max-width:400px;width:90%;box-shadow:0 10px 40px #0000004d}.admin-modal-title{font-family:Caveat,cursive;font-size:2rem;color:var(--text);margin-bottom:20px;text-align:center}.admin-modal-close{position:absolute;top:15px;right:20px;background:none;border:none;font-size:2rem;cursor:pointer;color:var(--text);opacity:.7}.admin-modal-close:hover{opacity:1}.theme-selector{display:flex;flex-direction:column;gap:15px}.theme-option{display:flex;align-items:center;gap:15px;padding:15px;border:3px solid var(--cheese-dark);border-radius:15px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;background:#fff}.theme-option:hover{border-color:var(--theme-btn-border)}.theme-option.active{border-color:var(--theme-btn-border);background:#fff5e6}.theme-option-icon{font-size:2rem}.theme-option-info{flex:1}.theme-option-name{font-weight:700;font-size:1.1rem;color:var(--text)}.theme-option-desc{font-size:.85rem;color:var(--text-light)}.theme-option-check{font-size:1.5rem;color:var(--crust);display:none}.theme-option.active .theme-option-check{display:block}.admin-section{margin-top:20px;padding-top:20px;border-top:2px solid var(--cheese-dark)}.admin-section-title{font-family:Caveat,cursive;font-size:1.4rem;color:var(--text);margin-bottom:12px}.admin-center-preview{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding:10px;background:#fff;border:2px solid var(--cheese-dark);border-radius:12px}.admin-center-img{width:60px;height:60px;border-radius:50%;object-fit:cover;border:2px solid var(--cheese-dark)}.admin-center-delete{margin-left:auto;background:none;border:2px solid #c0392b;border-radius:10px;padding:6px 14px;font-family:Comfortaa,cursive;font-size:.8rem;color:#c0392b;cursor:pointer;transition:background .2s,color .2s}.admin-center-delete:hover{background:#c0392b;color:#fff}.admin-upload-btn{display:block;background:var(--theme-btn);border:2px solid var(--theme-btn-border);border-radius:12px;padding:10px 20px;font-family:Comfortaa,cursive;font-size:.9rem;font-weight:700;color:#fff;cursor:pointer;text-align:center;transition:background .2s}.admin-upload-btn:hover{background:var(--theme-btn-hover)}.admin-upload-hint{font-size:.75rem;color:var(--text-light);margin-top:6px;text-align:center}.admin-toggle{display:flex;align-items:center;gap:12px;cursor:pointer;padding:10px 0}.admin-toggle+.admin-toggle{border-top:1px solid #eee}.admin-toggle input{display:none}.admin-toggle-slider{position:relative;width:44px;height:24px;background:#ccc;border-radius:12px;transition:background .2s;flex-shrink:0}.admin-toggle-slider:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;background:#fff;border-radius:50%;transition:transform .2s}.admin-toggle input:checked+.admin-toggle-slider{background:#27ae60}.admin-toggle input:checked+.admin-toggle-slider:after{transform:translate(20px)}.admin-toggle-label{font-family:Comfortaa,cursive;font-size:.9rem;color:var(--text);font-weight:600}.watched-title{font-family:Caveat,cursive;font-size:2.5rem;text-align:center;margin-bottom:30px;display:flex;align-items:center;justify-content:center;gap:15px;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.watched-table-wrapper{background:#fffffff2;border-radius:20px;box-shadow:0 10px 30px #0003;border:3px solid var(--cheese-dark);overflow:hidden;margin-bottom:30px;animation:riseUp .6s cubic-bezier(.22,1,.36,1);-webkit-backface-visibility:hidden}.watched-table{width:100%;border-collapse:collapse}.watched-table th{background:var(--theme-btn);padding:18px 15px;font-weight:700;text-align:center;cursor:pointer;transition:background .2s;border-bottom:3px solid var(--theme-btn-border);white-space:nowrap;color:#fff}.watched-table th:hover{background:var(--theme-btn-hover)}.watched-table th:nth-child(2){text-align:left;padding-left:15px}.sort-icon{margin-left:5px;opacity:.7}.sort-icon.active{opacity:1}.watched-table td{padding:15px;text-align:center;border-bottom:2px solid var(--cheese-cream);color:var(--text)}.watched-table td:first-child{text-align:center;padding:15px 5px;width:40px}.watched-table td:nth-child(2){text-align:left;padding-left:15px;font-weight:600}.watched-date{font-size:.75rem;font-weight:400;color:#999;opacity:.7;margin-top:2px}.watched-table th:first-child{width:40px;cursor:default}.watched-table th:first-child:hover{background:var(--theme-btn)}.watched-table tr:last-child td{border-bottom:none}.watched-table tr:hover{background:var(--cheese-cream)}.rating-select{padding:8px 12px;border:2px solid var(--cheese-dark);border-radius:10px;font-family:Comfortaa,cursive;font-size:.9rem;background:#fff;cursor:pointer;min-width:60px}.rating-select:focus{outline:none;border-color:var(--crust)}.rating-display{font-weight:600;color:var(--text-light)}.rating-avg{font-weight:700;font-size:1.1rem;color:#fff;padding:5px 12px;border-radius:10px;display:inline-block}.rating-avg.rating-bad{background:linear-gradient(135deg,#e74c3c,#c0392b);box-shadow:0 2px 8px #e74c3c66}.rating-avg.rating-mid{background:linear-gradient(135deg,#f39c12,#d68910);box-shadow:0 2px 8px #f39c1266}.rating-avg.rating-good{background:linear-gradient(135deg,#27ae60,#1e8449);box-shadow:0 2px 8px #27ae6066}.rating-avg.rating-cheese{background:linear-gradient(135deg,#f4c430,#d4a017);color:var(--text);box-shadow:0 2px 8px #f4c43080,0 0 15px #ffd7004d;animation:cheesePulse 1.5s ease-in-out infinite}@keyframes cheesePulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.watched-empty{text-align:center;padding:60px 20px;color:var(--text)}.watched-empty-icon{font-size:60px;opacity:.5;margin-bottom:15px}.watched-empty-text{font-size:1.2rem;color:var(--text-light)}.delete-watched-btn{background:none;border:none;font-size:1rem;cursor:pointer;opacity:.4;transition:opacity .2s;padding:5px 10px;color:var(--crust);font-weight:700}.delete-watched-btn:hover{opacity:1;transform:scale(1.3)}.watched-add-movie{background:#fffffff2;border-radius:20px;padding:25px;box-shadow:0 10px 30px #0003;border:3px solid var(--cheese-dark)}.watched-add-movie h3{font-family:Caveat,cursive;font-size:1.6rem;margin-bottom:15px;display:flex;align-items:center;gap:10px;color:var(--text)}.add-movie-form{display:flex;gap:10px}.add-movie-input{flex:1;padding:12px 20px;border:3px solid var(--cheese-dark);border-radius:15px;font-family:Comfortaa,cursive;font-size:1rem;outline:none;transition:border-color .2s}.add-movie-input:focus{border-color:var(--crust)}.add-movie-btn{background:var(--theme-btn);border:3px solid var(--theme-btn-border);border-radius:15px;padding:12px 25px;font-family:Comfortaa,cursive;font-size:1rem;font-weight:700;color:#fff;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.add-movie-btn:hover{background:var(--theme-btn-hover)}.movie-title-cell{cursor:pointer;border-radius:8px;padding:4px 6px;margin:-4px -6px;transition:background .15s}.movie-title-cell:hover{background:#ff8c0014}.edit-movie-cell{display:flex;flex-direction:column;gap:8px}.edit-movie-title{width:100%;padding:8px 12px;border:2px solid var(--cheese-dark);border-radius:10px;font-family:Comfortaa,cursive;font-size:.95rem;font-weight:600;outline:none;transition:border-color .2s}.edit-movie-title:focus{border-color:var(--crust)}.edit-movie-date-row{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--text-light)}.edit-movie-date-row label{white-space:nowrap}.edit-movie-date{padding:5px 8px;border:2px solid var(--cheese-dark);border-radius:8px;font-family:Comfortaa,cursive;font-size:.8rem;outline:none}.edit-movie-date:focus{border-color:var(--crust)}.edit-movie-actions{display:flex;gap:6px}.edit-movie-save,.edit-movie-cancel{padding:6px 14px;border-radius:8px;font-family:Comfortaa,cursive;font-size:.8rem;font-weight:600;cursor:pointer;border:none;transition:background .15s}.edit-movie-save{background:var(--theme-btn);color:#fff}.edit-movie-save:hover{background:var(--theme-btn-hover)}.edit-movie-cancel{background:#eee;color:var(--text)}.edit-movie-cancel:hover{background:#ddd}.search-bar{display:flex;align-items:center;gap:10px;background:#fffffff2;border:3px solid var(--cheese-dark);border-radius:16px;padding:10px 18px;margin-bottom:20px;box-shadow:0 4px 15px #00000014}.search-bar input{flex:1;border:none;outline:none;font-family:Comfortaa,cursive;font-size:1rem;background:transparent;color:var(--text)}.search-bar input::placeholder{color:var(--text-light)}.search-icon{font-size:1.2rem;opacity:.5}.search-clear{background:none;border:none;font-size:1.1rem;cursor:pointer;opacity:.4;transition:opacity .2s;display:none}.search-clear.visible{display:block}.search-clear:hover{opacity:1}.stats-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:25px;animation:statsAppear .35s ease-out}@keyframes statsAppear{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.stat-card{background:#fffffff2;border-radius:16px;padding:20px;text-align:center;box-shadow:0 4px 15px #00000014;border:2px solid var(--cheese-dark);transition:transform .2s;display:flex;flex-direction:column;justify-content:center}.stat-card:hover{transform:translateY(-2px)}.stat-card-value{font-size:1.4rem;font-weight:700;color:var(--crust);margin-bottom:4px}.stat-card-label{font-size:.85rem;color:var(--text-light)}.stat-card-sub{font-size:.8rem;color:var(--text-light);margin-top:4px;opacity:.7}.stats-users{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}.stats-user-item{display:flex;flex-direction:column;align-items:center;gap:4px}.stats-user-name{font-size:.85rem;font-weight:600;color:var(--text)}.stats-user-avg{font-size:1.3rem;font-weight:700;color:var(--crust)}.connection-status{position:fixed;bottom:20px;right:20px;background:#fffffff2;border:3px solid var(--cheese-dark);border-radius:20px;padding:10px 15px;font-size:.85rem;box-shadow:0 5px 15px #0003;z-index:998;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-radius .2s}.connection-status.expanded{border-radius:15px}.connection-status-main{display:flex;align-items:center;gap:8px}.connection-arrow{font-size:.65rem;opacity:.5;transition:transform .2s;margin-left:4px}.connection-arrow.up{transform:rotate(0)}.connection-arrow:not(.up){transform:rotate(180deg)}.connection-users-list{display:flex;flex-direction:column;gap:6px;padding-bottom:10px;margin-bottom:8px;border-bottom:2px solid var(--cheese-dark)}.connection-user-item{display:flex;align-items:center;gap:8px;font-size:.85rem;padding:2px 0}.connection-dot{width:10px;height:10px;border-radius:50%;background:#e74c3c;flex-shrink:0}.connection-dot.connected{background:#27ae60;box-shadow:0 0 10px #27ae60}.games-container{max-width:800px;margin:0 auto;padding-top:24px}.games-title{font-family:Caveat,cursive;font-size:2.5rem;color:#fff;text-align:center;margin-bottom:30px;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.game-card{background:#fffffff2;border-radius:20px;padding:25px;display:flex;align-items:center;gap:20px;box-shadow:0 5px 20px #0000001a;border:3px solid var(--cheese-dark);animation:riseUp .6s cubic-bezier(.22,1,.36,1);-webkit-backface-visibility:hidden}.game-card-icon{font-size:3rem;width:80px;height:80px;background:var(--theme-btn);border-radius:15px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.game-card-info{flex:1}.game-card-info h3{font-size:1.3rem;color:var(--text);margin-bottom:5px}.game-card-info p{color:var(--text-light);font-size:.95rem}.game-mode-select{display:flex;gap:10px;margin-top:12px}.game-mode-option{cursor:pointer}.game-mode-option input{display:none}.mode-btn{display:inline-block;padding:8px 14px;background:#f0f0f0;border:2px solid #ddd;border-radius:8px;font-size:.85rem;font-family:Comfortaa,cursive;transition:border-color .2s;cursor:pointer}.game-mode-option input:checked+.mode-btn{background:var(--theme-btn);color:#fff;border-color:var(--theme-btn-border)}.mode-btn:hover{border-color:var(--theme-btn-border)}.game-screen{position:fixed;top:0;left:0;width:100%;height:100%;background:#1a472a;z-index:2000;display:flex;flex-direction:column}.game-header{display:flex;justify-content:space-between;align-items:center;padding:10px 20px;background:#000000b3}.game-stats{display:flex;gap:30px;align-items:center}.stat-item{display:flex;align-items:center;gap:8px;color:#fff;font-size:1rem}.hp-bar{width:150px;height:18px;background:#333;border-radius:9px;overflow:hidden}.hp-fill{height:100%;width:100%;background:linear-gradient(90deg,#e74c3c,#c0392b);transition:width .2s}.game-close-btn{background:#fff3;border:none;color:#fff;font-size:1.5rem;width:40px;height:40px;border-radius:50%;cursor:pointer}.game-close-btn:hover{background:#ff000080}.game-canvas-2d,.game-canvas-3d{flex:1;width:100%;cursor:crosshair}.pointer-lock-msg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#000c;color:#fff;padding:20px 40px;border-radius:10px;font-size:1.2rem;z-index:100;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.game-controls-info{display:flex;justify-content:center;gap:25px;padding:8px;background:#000000b3;color:#fffc;font-size:.85rem}.game-over-screen{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000e6;z-index:2001;display:flex;align-items:center;justify-content:center}.game-over-content{text-align:center;color:#fff}.game-over-icon{font-size:5rem;margin-bottom:20px}.game-over-title{font-size:3rem;margin-bottom:10px}.game-over-stats{font-size:1.1rem;color:#ffffffb3;margin-bottom:25px}.game-over-buttons{display:flex;gap:15px;justify-content:center}.game-btn{background:var(--theme-btn);border:3px solid var(--theme-btn-border);border-radius:15px;padding:12px 25px;font-family:Comfortaa,cursive;font-size:1rem;font-weight:700;color:#fff;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.game-btn:hover{background:var(--theme-btn-hover)}@media(max-width:768px){.game-card{flex-direction:column;text-align:center;padding:15px}.game-card-icon{width:60px;height:60px;font-size:2rem}.hp-bar{width:100px}.game-controls-info{flex-wrap:wrap;gap:10px;font-size:.75rem}}.reviews-page{max-width:800px;margin:0 auto;padding:20px 16px 40px}.reviews-title{font-size:1.6rem;color:var(--text);margin-bottom:20px;text-align:center}.review-form{background:#ffffffb3;border:2px solid var(--cheese-dark);border-radius:12px;padding:16px;margin-bottom:24px;display:flex;flex-direction:column;gap:10px}.review-form-input{width:100%;padding:8px 12px;border:1.5px solid var(--cheese-dark);border-radius:8px;font-size:1rem;background:var(--cheese-cream);color:var(--text);outline:none}.review-form-input:focus{border-color:var(--crust)}.review-form-textarea{width:100%;padding:8px 12px;border:1.5px solid var(--cheese-dark);border-radius:8px;font-size:.95rem;background:var(--cheese-cream);color:var(--text);resize:vertical;min-height:90px;outline:none;font-family:inherit}.review-form-textarea:focus{border-color:var(--crust)}.review-form-footer{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.recommend-toggle-group{display:flex;gap:6px;flex-wrap:wrap}.review-recommend-toggle{padding:6px 14px;border-radius:20px;border:2px solid #ddd;font-size:.9rem;font-weight:600;cursor:pointer;background:#f0f0f099;color:#aaa;transition:opacity .15s,background .15s,color .15s,border-color .15s}.review-recommend-toggle.yes.active{background:#d4edda;color:#155724;border-color:#c3e6cb}.review-recommend-toggle.meh.active{background:#fff3cd;color:#856404;border-color:#ffeeba}.review-recommend-toggle.no.active{background:#f8d7da;color:#721c24;border-color:#f5c6cb}.review-recommend-toggle:hover{opacity:.8}.review-submit-btn{margin-left:auto;padding:8px 20px;background:var(--theme-btn);color:var(--white);border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:opacity .15s}.review-submit-btn:disabled{opacity:.5;cursor:not-allowed}.review-submit-btn:hover:not(:disabled){opacity:.85}.reviews-empty{text-align:center;color:var(--text-light);font-size:1rem;margin:32px 0}.reviews-list{display:flex;flex-direction:column;gap:14px}.review-card{background:#ffffffbf;border:1.5px solid var(--cheese-dark);border-radius:12px;padding:14px 16px}.review-card-header{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px}.review-card-title{font-size:1.05rem;font-weight:700;color:var(--text);flex:1;min-width:0}.review-badge{padding:2px 10px;border-radius:12px;font-size:.8rem;font-weight:600;white-space:nowrap}.review-badge.yes{background:#d4edda;color:#155724}.review-badge.meh{background:#fff3cd;color:#856404}.review-badge.no{background:#f8d7da;color:#721c24}.review-delete-btn{background:none;border:none;cursor:pointer;font-size:1rem;padding:2px 4px;border-radius:4px;opacity:.5;transition:opacity .15s;margin-left:auto}.review-delete-btn:hover{opacity:1}.review-edit-btn{background:none;border:none;cursor:pointer;font-size:1rem;padding:2px 4px;border-radius:4px;opacity:.5;transition:opacity .15s}.review-edit-btn:hover{opacity:1}.review-edit-form{display:flex;flex-direction:column;gap:10px}.review-edit-cancel{padding:8px 14px;background:transparent;border:1.5px solid var(--cheese-dark);border-radius:8px;color:var(--text);font-size:.9rem;cursor:pointer;transition:opacity .15s}.review-edit-cancel:hover{opacity:.7}.review-card-meta{display:flex;gap:12px;font-size:.82rem;color:var(--text-light);margin-bottom:8px}.review-author{font-weight:600}.review-content{font-size:.95rem;color:var(--text);line-height:1.55;white-space:pre-wrap;word-break:break-word}.wine-meta-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.wine-type-toggle{display:flex;gap:6px;flex-wrap:wrap}.wine-type-btn{padding:5px 12px;border-radius:16px;border:1.5px solid var(--cheese-dark);background:transparent;color:var(--text);font-size:.85rem;cursor:pointer;transition:background .15s,color .15s}.wine-type-btn.active{background:var(--cheese-dark);color:var(--white)}.wine-fields-row{display:flex;gap:8px;flex-wrap:wrap}.wine-field{flex:1;min-width:130px}.wine-field-short{flex:0 1 110px;min-width:90px}.wine-type-badge{padding:2px 10px;border-radius:12px;font-size:.8rem;font-weight:600;background:#d4a01726;color:var(--text);white-space:nowrap}.wine-card-details{display:flex;flex-wrap:wrap;gap:10px;font-size:.82rem;color:var(--text-light);margin-bottom:6px}.review-reactions{display:flex;gap:8px;margin-top:10px}.reaction-btn{display:flex;align-items:center;gap:4px;padding:4px 12px;border-radius:16px;border:1.5px solid var(--cheese-dark);background:transparent;color:var(--text);font-size:.85rem;cursor:pointer;transition:background .15s,color .15s}.reaction-btn:hover{background:#d4a01726}.reaction-btn.like.active{background:#d4edda;border-color:#c3e6cb;color:#155724}.reaction-btn.dislike.active{background:#f8d7da;border-color:#f5c6cb;color:#721c24}@media(max-width:480px){.review-form-footer{flex-direction:column;align-items:stretch}.review-submit-btn{margin-left:0}}@media(max-width:768px){.auth-title{font-size:2.2rem}.auth-users{grid-template-columns:1fr;max-width:250px}.wheel-outer{width:320px;height:320px}.wheel-canvas-wrap,#wheel-canvas,.wheel-empty{width:300px;height:300px}.wheel-peg{width:8px;height:8px}.add-movie-form{flex-direction:column}.drawer{width:280px}.drawer-toggle{width:46px;height:46px;bottom:16px;left:16px}.admin-btn{left:70px}.nav{gap:8px}.nav-btn{padding:10px 18px;font-size:.9rem}.nav-user{margin-left:0;width:100%;display:flex;justify-content:center}.nav-dropdown{right:auto;left:50%;transform:translate(-50%)}.spin-controls{flex-direction:column}.watched-table-wrapper{overflow-x:auto}.watched-table{min-width:700px}.light{width:8px;height:12px}}
