body{color:#fff;background:#121212;min-height:100vh;margin:0;font-family:Segoe UI,system-ui,sans-serif}.auth-screen{background:linear-gradient(135deg,#121212 0%,#1a1a2e 100%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.auth-box{background:#1e1e1e;border:1px solid #333;border-radius:16px;width:100%;max-width:380px;padding:40px 32px;box-shadow:0 20px 60px #00000080}.auth-logo{text-align:center;margin-bottom:8px;font-size:48px}.auth-title{text-align:center;color:#38bdf8;margin:0 0 24px;font-size:22px;font-weight:700}.auth-error{color:#f87171;background:#3b1a1a;border:1px solid #7f1d1d;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:13px}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-input{color:#fff;background:#2c2c2c;border:1px solid #444;border-radius:8px;outline:none;width:100%;padding:12px 14px;font-size:15px;transition:border-color .2s}.auth-input:focus{border-color:#38bdf8}.auth-btn{color:#000;cursor:pointer;background:#38bdf8;border:none;border-radius:8px;padding:13px;font-size:15px;font-weight:700;transition:background .2s,transform .1s}.auth-btn:hover:not(:disabled){background:#0ea5e9}.auth-btn:active{transform:scale(.98)}.auth-btn:disabled{opacity:.6;cursor:not-allowed}.auth-toggle{color:#38bdf8;cursor:pointer;text-align:center;background:0 0;border:none;width:100%;margin-top:20px;padding:4px;font-size:13px;text-decoration:underline;display:block}.app-root{background:#121212;flex-direction:column;min-height:100vh;display:flex;overflow:hidden}.app-header{z-index:10;background:#1e1e1e;border-bottom:1px solid #2a2a2a;flex-shrink:0;justify-content:space-between;align-items:center;height:56px;padding:0 16px;display:flex}.app-header-logo{color:#38bdf8;align-items:center;gap:8px;margin:0;font-size:18px;font-weight:700;display:flex}.app-header-user{align-items:center;gap:12px;font-size:13px;display:flex}.app-header-email{color:#38bdf8;text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-weight:600;overflow:hidden}@media (width<=480px){.app-header-email-label{display:none}.app-header-email{max-width:120px;font-size:12px}}.logout-btn{cursor:pointer;color:#ccc;white-space:nowrap;background:#2c2c2c;border:1px solid #444;border-radius:6px;padding:5px 12px;font-size:12px;transition:background .2s}.logout-btn:hover{background:#3a3a3a}.notification-bar{flex-shrink:0;padding:0 12px}.challenge-banner,.draw-banner{border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0 0;padding:10px 14px;font-size:14px;font-weight:600;display:flex}.challenge-banner{color:#121212;background:#fbbf24}.draw-banner{color:#000;background:#38bdf8}.banner-btn{cursor:pointer;border:none;border-radius:6px;padding:5px 12px;font-size:13px;font-weight:700}.btn-accept{color:#fff;background:#10b981}.btn-decline{color:#fff;background:#ef4444}.game-layout{flex:1;align-items:flex-start;gap:16px;padding:12px 16px;display:flex;overflow:hidden}.col-board{flex-direction:column;flex-shrink:0;align-items:center;gap:10px;display:flex}.col-panels{flex-direction:column;flex-shrink:0;gap:12px;width:100%;min-width:280px;max-width:340px;max-height:calc(100vh - 70px);display:flex;overflow-y:auto}.col-ads{background:#1e1e1e;border:1px solid #2a2a2a;border-radius:12px;flex-direction:column;flex-shrink:0;width:100%;min-width:260px;max-width:310px;max-height:calc(100vh - 70px);display:flex;overflow:hidden}.timers-row{justify-content:space-between;gap:8px;width:100%;display:flex}.timer-box{text-align:center;background:#2c2c2c;border-radius:8px;flex:1;padding:8px 12px;font-size:18px;font-weight:700;transition:background .2s}.timer-box.active{color:#000;background:#38bdf8}.status-label{color:#fbbf24;text-align:center;min-height:20px;font-size:14px;font-weight:700}.chess-board{border:4px solid #2c2c2c;border-radius:4px;flex-shrink:0;grid-template-columns:repeat(8,1fr);display:grid;overflow:hidden;box-shadow:0 8px 32px #0009}.square{cursor:pointer;justify-content:center;align-items:center;transition:filter .1s;display:flex;position:relative}.square:hover{filter:brightness(1.2)}.square.light{background-color:#e8edf9}.square.dark{background-color:#5c7fb8}.square.selected{background-color:#f6f669!important}.square img{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:88%;height:88%}.star-wars-blast{pointer-events:none;z-index:9999;border-radius:50%;width:15px;height:15px;animation:.6s ease-out forwards blasterExplode;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes blasterExplode{0%{opacity:1;background:#fff;transform:translate(-50%,-50%)scale(.2);box-shadow:0 0 15px 15px #fff,0 0 30px 30px #fbbf24}40%{opacity:.9;background:#f43f5e;transform:translate(-50%,-50%)scale(1.8);box-shadow:0 0 30px 30px #ef4444,0 0 50px 50px #ef4444cc}to{opacity:0;background:0 0;transform:translate(-50%,-50%)scale(3);box-shadow:0 0 #ef4444}}.panel-card{background:#1e1e1e;border:1px solid #2a2a2a;border-radius:10px;overflow:hidden}.panel-card-header{text-transform:uppercase;letter-spacing:.08em;color:#38bdf8;border-bottom:1px solid #2a2a2a;padding:8px 12px;font-size:11px;font-weight:700}.panel-card-body{padding:10px 12px}.stats-row{text-align:center;justify-content:space-around;display:flex}.stat-item{flex-direction:column;gap:2px;display:flex}.stat-value{font-size:20px;font-weight:700}.stat-key{letter-spacing:.05em;font-size:10px;font-weight:700}.stat-key.win{color:#10b981}.stat-key.loss{color:#ef4444}.stat-key.draw{color:#aaa}.players-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.player-row{justify-content:space-between;align-items:center;padding:4px 0;font-size:13px;display:flex}.challenge-btn{cursor:pointer;color:#000;background:#38bdf8;border:none;border-radius:4px;padding:3px 8px;font-size:10px;font-weight:700}.view-select{color:#fff;cursor:pointer;background:#333;border:1px solid #444;border-radius:6px;outline:none;padding:4px 6px;font-size:11px}.tv-card{color:#fff;background:#2c2c2c;border:1px solid #3a3a3a;border-radius:8px;margin-bottom:6px;padding:8px 10px;text-decoration:none;transition:border-color .2s;display:block}.tv-card:hover{border-color:#38bdf8}.tv-card-ch{color:#fbbf24;text-transform:uppercase;margin-bottom:4px;font-size:10px;font-weight:700}.tv-card-row{justify-content:space-between;font-size:12px;display:flex}.streamer-card{color:#fff;background:#2c2c2c;border:1px solid #3a3a3a;border-radius:8px;align-items:center;gap:10px;margin-bottom:6px;padding:8px 10px;text-decoration:none;transition:border-color .2s;display:flex}.streamer-card:hover{border-color:#10b981}.streamer-avatar{object-fit:cover;border-radius:50%;width:32px;height:32px}.streamer-name{color:#10b981;font-size:13px;font-weight:700}.streamer-sub{color:#aaa;font-size:11px}.chat-box{flex-direction:column;height:200px;display:flex}.chat-messages{flex-direction:column;flex:1;gap:6px;padding:10px 12px;display:flex;overflow-y:auto}.chat-msg{display:flex}.chat-msg.mine{justify-content:flex-end}.chat-bubble{border-radius:14px;max-width:80%;padding:6px 12px;font-size:13px;line-height:1.4}.chat-bubble.mine{background:#075e54}.chat-bubble.theirs{background:#2a2a2a}.chat-form{border-top:1px solid #2a2a2a;display:flex}.chat-input{color:#fff;background:0 0;border:none;outline:none;flex:1;padding:10px 12px;font-size:13px}.chat-send{color:#000;cursor:pointer;background:#38bdf8;border:none;padding:0 16px;font-size:13px;font-weight:700}.controls-row{gap:8px;display:flex}.ctrl-btn{color:#fff;cursor:pointer;background:#2c2c2c;border:1px solid #3a3a3a;border-radius:8px;flex:1;padding:9px 6px;font-size:13px;transition:background .2s}.ctrl-btn:hover:not(:disabled){background:#3a3a3a}.ctrl-btn:disabled{opacity:.4;cursor:not-allowed}.play-computer-btn{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:8px;width:100%;padding:11px;font-size:14px;font-weight:700;transition:background .2s}.play-computer-btn:hover{background:#dc2626}.history-list{flex:1;max-height:140px;font-size:12px;overflow-y:auto}.history-row{border-bottom:1px solid #1a1a1a;gap:8px;padding:3px 0;display:flex}.history-num{color:#555}.history-move{font-weight:700}.history-move.current{color:#38bdf8}.history-nav{border-top:1px solid #2a2a2a;justify-content:space-around;margin-top:4px;padding:6px 0 0;display:flex}.nav-btn{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px;font-size:16px;transition:background .15s}.nav-btn:hover{background:#2c2c2c}.ads-header{color:#10b981;text-align:center;border-bottom:1px solid #2a2a2a;flex-shrink:0;padding:12px;font-size:12px;font-weight:700}.ads-scroll{flex-direction:column;flex:1;gap:14px;padding:12px;display:flex;overflow-y:auto}.ad-card{background:#2c2c2c;border:1px solid #3a3a3a;border-radius:10px;flex-shrink:0;text-decoration:none;transition:border-color .2s,transform .15s;display:block;overflow:hidden}.ad-card:hover{border-color:#38bdf8;transform:translateY(-2px)}.ad-img{object-fit:cover;background:#333;width:100%;height:130px;display:block}.ad-body{padding:10px 12px}.ad-tag{color:#38bdf8;margin-bottom:4px;font-size:11px;font-weight:700}.ad-name{color:#fff;font-size:14px;font-weight:600}.mobile-tab-bar{display:none}@media (width<=1100px){.col-ads{display:none}}@media (width<=900px){.col-panels{min-width:240px;max-width:280px}.game-layout{gap:10px;padding:10px}}@media (width<=720px){.game-layout{flex-direction:column;align-items:center;gap:0;max-height:calc(100vh - 116px);padding:8px;overflow-y:auto}.col-board,.col-panels,.col-ads{width:100%;max-width:100%;min-width:unset;max-height:none;display:none}.col-board.tab-active,.col-panels.tab-active,.col-ads.tab-active{display:flex}.col-board.tab-active{align-items:center;padding-bottom:8px}.col-panels.tab-active{flex-direction:column;max-height:calc(100vh - 116px);padding-bottom:8px;overflow-y:auto}.col-ads.tab-active{background:0 0;border:none;flex-direction:column;max-height:calc(100vh - 116px);overflow-y:auto}.mobile-tab-bar{background:#1e1e1e;border-top:1px solid #2a2a2a;flex-shrink:0;height:60px;display:flex}.mobile-tab{color:#666;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;font-size:10px;font-weight:600;transition:color .2s;display:flex}.mobile-tab .tab-icon{font-size:20px}.mobile-tab.active{color:#38bdf8}.mobile-tab.active .tab-icon{filter:drop-shadow(0 0 4px #38bdf8)}}@media (width<=400px){.app-header{padding:0 10px}.notification-bar{padding:0 8px}.game-layout{padding:6px}}*,:before,:after{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;padding:0}
