:root{--sidebar-bg:#fff;--sidebar-border:#e6e8ec;--icon-color:#6b7280;--icon-hover-bg:#f3f4f6;--text-color:#111827;--muted-text:#6b7280;--sidebar-collapsed-width:72px;--sidebar-expanded-width:280px;--transition-fast:0.2s ease;--transition-normal:0.3s ease}.side-bar{align-items:center;background:#fff;background:var(--sidebar-bg);border-right:1px solid #e6e8ec;border-right:1px solid var(--sidebar-border);display:flex;flex-direction:column;height:100vh;position:-webkit-sticky;position:sticky;top:0;transition:width .3s ease;transition:width var(--transition-normal);width:72px;width:var(--sidebar-collapsed-width)}.logo{margin:16px 0 24px}.logo img{height:36px;object-fit:contain;width:36px}.icon{all:unset;align-items:center;border-radius:12px;color:#6b7280;color:var(--icon-color);cursor:pointer;display:flex;height:44px;justify-content:center;margin:6px 0;transition:background .2s ease,color .2s ease;transition:background var(--transition-fast),color var(--transition-fast);width:44px}.icon:hover{background:#f3f4f6;background:var(--icon-hover-bg);color:#111827;color:var(--text-color)}.icon svg{height:22px;width:22px}.user-img{margin-bottom:16px;margin-top:auto}.user-img img{border-radius:50%;height:40px;object-fit:cover;width:40px}.expanded{animation:slideIn .25s ease forwards;background:#fff;background:var(--sidebar-bg);border-right:1px solid #e6e8ec;border-right:1px solid var(--sidebar-border);display:flex;flex-direction:column;height:100%;left:100%;margin-left:16px;padding:20px;position:absolute;top:0;width:280px;width:var(--sidebar-expanded-width)}.expanded-title{color:#6b7280;color:var(--muted-text);font-size:14px;font-weight:600;margin-bottom:20px}.expanded-item{align-items:center;border-radius:10px;color:#111827;color:var(--text-color);cursor:pointer;display:flex;padding:10px 12px;transition:background .2s ease;transition:background var(--transition-fast)}.expanded-item:hover{background:#f3f4f6;background:var(--icon-hover-bg)}.expanded-item svg{color:#6b7280;color:var(--icon-color);height:20px;margin-right:12px;width:20px}.expanded-item span{font-size:14px;font-weight:500}.expanded-item a{color:inherit;text-decoration:none;width:100%}.expanded-item a,.user-info{align-items:center;display:flex}.user-info{border-top:1px solid #e6e8ec;border-top:1px solid var(--sidebar-border);gap:12px;margin-top:auto;padding-top:16px}.user-info span{color:#111827;color:var(--text-color);font-size:14px;font-weight:600}.user-info p{color:#6b7280;color:var(--muted-text);font-size:12px;margin:0}.logout-btn{color:#6b7280;color:var(--icon-color);margin-left:auto;transition:color .2s ease;transition:color var(--transition-fast)}.logout-btn:hover{color:#ef4444}.logout-btn svg{height:20px;width:20px}@keyframes slideIn{0%{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}.royale-container{background:linear-gradient(180deg,#2a2418,#1a1816);border:2px solid #5c4a1f;border-radius:8px;gap:14px;padding:16px;width:100%}.royale-container,.royale-tier{display:flex;flex-direction:column}.royale-tier{gap:8px}.royale-tier-label{color:#d4a843;font-size:11px;font-weight:700;letter-spacing:1px;text-align:left;text-transform:uppercase}.royale-tier-row{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}.royale-button{align-items:center;background:linear-gradient(180deg,#3d3528,#2a2418);border:1px solid #5c4a1f;border-radius:6px;color:#f0e6c8;cursor:pointer;display:flex;flex-direction:column;font-family:inherit;justify-content:center;min-height:64px;padding:14px 8px;transition:background .15s,border-color .15s,transform .1s,opacity .2s}.royale-button:hover{background:linear-gradient(180deg,#4a4030,#353020);border-color:#d4a843;transform:translateY(-1px)}.royale-button.dimmed{opacity:.5}.royale-button.dimmed:hover{opacity:.85}.royale-button.seeking{background:linear-gradient(180deg,#4a3a15,#3a2e10);border-color:#d4a843;box-shadow:0 0 12px #d4a84340;color:#fff}.royale-button.seeking:hover{border-color:#e6912c}.royale-button .seek-spinner{animation:seek-spin .75s linear infinite;border:3px solid #d4a84333;border-radius:50%;border-top-color:#d4a843;height:26px;width:26px}.royale-button .seek-cancel-label{color:#a89878;font-size:.65rem;letter-spacing:.5px;margin-top:6px;text-transform:uppercase}.royale-button.seeking:hover .seek-cancel-label{color:#e6912c}.royale-time{font-size:1.4rem;font-weight:700;line-height:1}.royale-unit{font-size:.6rem;letter-spacing:.3px;line-height:1.2;margin-top:4px;opacity:.6;text-align:center;text-transform:uppercase}.lobby-panel.royale-panel{background:linear-gradient(180deg,#2a2620,#262421);border:1px solid #5c4a1f}.lobby-panel.royale-panel h2{color:#d4a843}.lobby-panel.royale-panel .lobby-desc{color:#a89878}.lobby-panels-stack{display:flex;flex-direction:column;gap:24px;width:100%}.challenge-btn-wrap{position:relative}.challenge-btn{align-items:center;background:#262421;border:1px solid #403d39;border-radius:8px;cursor:pointer;display:flex;height:40px;justify-content:center;transition:background .15s,border-color .15s,transform .15s;width:40px}.challenge-btn.open,.challenge-btn:hover{background:#33302c;border-color:#555}.challenge-btn.waiting{border-color:#d4a8438c;box-shadow:0 0 0 1px #d4a84326}.challenge-btn-icon{font-size:18px;line-height:1}.challenge-panel{background:#262421;border:1px solid #403d39;border-radius:10px;box-shadow:0 12px 40px #00000073;padding:16px;position:absolute;right:0;top:calc(100% + 8px);width:min(340px,calc(100vw - 24px));z-index:200}.challenge-panel-head h2{color:#fff;font-size:15px;font-weight:600;margin:0 0 4px}.challenge-panel-head p{color:#888;font-size:12px;line-height:1.45;margin:0 0 14px}.challenge-mode-tabs{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr;margin-bottom:12px}.challenge-mode-tabs button{background:#1a1816;border:1px solid #403d39;border-radius:6px;color:#aaa;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;padding:8px 10px}.challenge-mode-tabs button.active{background:#62992426;border-color:#629924;color:#b8e88a}.challenge-time-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,1fr);margin-bottom:12px}.challenge-time-btn{background:#1a1816;border:1px solid #403d39;border-radius:6px;color:#ddd;cursor:pointer;font-family:inherit;font-size:14px;font-weight:700;padding:10px 8px}.challenge-time-btn.selected{background:#5b8def1f;border-color:#5b8def;color:#b8d4ff}.challenge-recipient{color:#888;display:flex;flex-direction:column;font-size:12px;gap:6px;margin-bottom:12px}.challenge-recipient input{background:#1a1816;border:1px solid #403d39;border-radius:6px;color:#ddd;font-family:inherit;font-size:14px;padding:9px 10px}.challenge-create-btn{background:linear-gradient(180deg,#629924,#4d7a1c);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:14px;font-weight:700;padding:11px 14px;width:100%}.challenge-create-btn:disabled{cursor:not-allowed;opacity:.6}.challenge-error{color:#e08080;font-size:12px;margin:0 0 10px}.challenge-created-label{color:#ccc;font-size:13px;font-weight:600;margin:0 0 10px}.challenge-link-row{display:flex;gap:8px;margin-bottom:12px}.challenge-link-row input{background:#1a1816;border:1px solid #403d39;border-radius:6px;color:#bbb;flex:1 1;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;min-width:0;padding:9px 10px}.challenge-copy-btn{align-items:center;background:#5b8def;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:5px;padding:0 12px;white-space:nowrap}.challenge-waiting{align-items:center;color:#d4a843;display:flex;font-size:13px;gap:8px;margin:0 0 12px}.challenge-wait-pulse{animation:challenge-pulse 1.2s ease-in-out infinite;background:#d4a843;border-radius:50%;height:8px;width:8px}@keyframes challenge-pulse{0%,to{opacity:.35;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}.challenge-new-btn{background:#0000;border:1px solid #403d39;border-radius:6px;color:#aaa;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;padding:9px 12px;width:100%}.challenge-new-btn:hover{background:#2e2b28;color:#ddd}.notification-bell-wrap{position:relative}.notification-bell-btn{align-items:center;background:#262421;border:1px solid #403d39;border-radius:8px;color:#ccc;cursor:pointer;display:flex;height:40px;justify-content:center;position:relative;transition:background .15s,color .15s,border-color .15s;width:40px}.notification-bell-btn.open,.notification-bell-btn:hover{background:#33302c;border-color:#555;color:#fff}.notification-badge{background:#c33;border-radius:999px;color:#fff;font-size:10px;font-weight:700;height:18px;line-height:18px;min-width:18px;padding:0 5px;position:absolute;right:-4px;text-align:center;top:-4px}.notification-panel{background:#262421;border:1px solid #403d39;border-radius:10px;box-shadow:0 12px 40px #00000073;display:flex;flex-direction:column;max-height:min(420px,calc(100vh - 80px));overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);width:min(360px,calc(100vw - 24px));z-index:200}.notification-panel-head{align-items:center;border-bottom:1px solid #403d39;display:flex;gap:12px;justify-content:space-between;padding:14px 16px}.notification-panel-head h2{color:#fff;font-size:15px;font-weight:600;margin:0}.notification-mark-all{background:none;border:none;color:#8eb8ff;cursor:pointer;font-size:12px;font-weight:600;padding:0}.notification-mark-all:hover{color:#b8d4ff}.notification-list{overflow-y:auto}.notification-empty{color:#888;font-size:13px;margin:0;padding:24px 16px;text-align:center}.notification-item{background:#0000;border:none;border-bottom:1px solid #332f2c;cursor:pointer;display:block;font-family:inherit;padding:12px 16px;text-align:left;transition:background .12s;width:100%}.notification-item:hover{background:#2e2b28}.notification-item.unread{background:#62992414}.notification-item.unread:hover{background:#6299241f}.notification-item-top{align-items:flex-start;display:flex;gap:10px;justify-content:space-between;margin-bottom:4px}.notification-item-title{color:#eee;font-size:13px;font-weight:600;line-height:1.35}.notification-item-time{color:#777;flex-shrink:0;font-size:11px}.notification-item-body{color:#999;font-size:12px;line-height:1.45;margin:0}.app-topbar{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#161512eb;border-bottom:1px solid #2a2724;display:flex;justify-content:flex-end;min-height:52px;padding:8px 16px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.app-topbar-actions{align-items:center;display:flex;gap:8px}.brand-mark{align-items:baseline;color:inherit;display:inline-flex;font-weight:800;letter-spacing:-.03em;line-height:1;white-space:nowrap}.brand-che,.brand-strikes{font-feature-settings:none;font-variant-ligatures:none}.brand-strikes{letter-spacing:-.02em}.brand-ss{display:inline-block;flex-shrink:0;height:1em;margin:0 -.02em;position:relative;width:.72em}.brand-s{bottom:0;font-weight:900;left:0;line-height:1;position:absolute}.brand-s-back{color:#629924;opacity:.85;transform:translate(-.14em,.06em) scale(1.05)}.brand-s-front{color:#d4a843;text-shadow:0 0 18px #d4a84359;transform:translate(.08em,-.02em)}.brand-mark-sm{font-size:.95rem}.brand-mark-md{font-size:inherit}.brand-mark-lg{font-size:2rem}.brand-mark-lg .brand-ss{width:.78em}.auth-brand-title{display:flex;justify-content:center;margin-bottom:8px}.auth-brand-title .brand-mark-lg{font-size:2.15rem}.auth-page{align-items:center;background:#161512;display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-card{background:#262421;border-radius:8px;box-shadow:0 8px 32px #0006;max-width:400px;padding:40px;width:100%}.auth-brand-title,.auth-card h1{color:#fff;font-size:2rem;margin-bottom:8px;text-align:center}.auth-brand-title{font-size:inherit;font-weight:inherit}.auth-subtitle{color:#999;margin-bottom:28px;text-align:center}.auth-card form{gap:16px}.auth-card form,.auth-card label{display:flex;flex-direction:column}.auth-card label{color:#bbb;font-size:14px;gap:6px}.auth-card input{background:#1a1816;border:1px solid #403d39;border-radius:4px;color:#fff;font-size:16px;padding:12px}.auth-card input:focus{border-color:#629924;outline:none}.auth-card button{background:#629924;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:8px;padding:14px}.auth-card button:hover:not(:disabled){background:#7ab82e}.auth-card button:disabled{cursor:not-allowed;opacity:.6}.auth-error{background:#3d2020;border-radius:4px;color:#ff6b6b;font-size:14px;padding:10px 14px}.auth-switch{color:#999;font-size:14px;margin-top:20px;text-align:center}.auth-switch a{color:#629924;text-decoration:none}.auth-switch a:hover{text-decoration:underline}.page-loading{align-items:center;background:#161512;color:#999;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:100vh}.spinner{animation:spin .8s linear infinite;border:3px solid #403d39;border-radius:50%;border-top-color:#629924;height:32px;width:32px}@keyframes spin{to{transform:rotate(1turn)}}.chess-container{background-color:#1a1a1a;border-radius:4px;display:flex;justify-content:center;margin-top:0;padding:20px}.chess-grid{grid-gap:2px;background-color:#404040;border:2px solid #404040;display:grid;gap:2px;grid-template-columns:repeat(3,120px);grid-template-rows:repeat(4,80px)}.grid-button{align-items:center;background-color:#262626;border:none;color:#bababa;cursor:pointer;display:flex;flex-direction:column;font-family:sans-serif;justify-content:center;position:relative;transition:background-color .2s,opacity .2s}.grid-button:hover{background-color:#333}.grid-button.dimmed{opacity:.55}.grid-button.dimmed:hover{background-color:#333;opacity:.85}.grid-button.seeking{background-color:#2d3a22;color:#fff;cursor:pointer}.grid-button.seeking:hover{background-color:#3a4a2a}.grid-button .seek-spinner{animation:seek-spin .75s linear infinite;border:3px solid #ffffff26;border-radius:50%;border-top-color:#629924;height:28px;width:28px}.grid-button .seek-cancel-label{color:#999;font-size:.75rem;letter-spacing:.5px;margin-top:6px;text-transform:uppercase}.grid-button.seeking:hover .seek-cancel-label{color:#e6912c}@keyframes seek-spin{to{transform:rotate(1turn)}}.time-text{display:block;font-size:1.5rem;font-weight:300}.label-text{font-size:.85rem;margin-top:4px;opacity:.7}.grid-button:last-child .time-text{font-size:1.1rem}.lobby-page{align-items:center;background:#161512;color:#fff;display:flex;flex:1 1;flex-direction:column;min-height:100vh;padding:32px}.lobby-header{align-items:baseline;display:flex;justify-content:space-between;margin-bottom:32px;max-width:480px;width:100%}.lobby-header h1{font-size:2rem;font-weight:600}.player-info{align-items:center;display:flex;gap:16px}.player-name{color:#fff;font-weight:600}.player-rating{color:#629924;font-weight:600}.lobby-content{gap:32px;max-width:480px}.lobby-content,.lobby-panel{align-items:center;display:flex;flex-direction:column;width:100%}.lobby-panel{background:#262421;border-radius:8px;padding:28px;text-align:center}.lobby-panel h2{font-size:1.25rem;margin-bottom:8px}.lobby-desc{color:#999;font-size:14px;margin-bottom:24px}.pairing-grid-wrap{display:flex;justify-content:center;width:100%}.connection-warning{color:#e6912c;font-size:13px;margin-top:12px}.connection-warning.seek-error{color:#ff6b6b}.lobby-stats{background:#262421;border-radius:8px;padding:24px;width:100%}.lobby-stats h3{color:#999;font-size:1rem;margin-bottom:16px;text-align:center}.stat-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.stat{align-items:center;display:flex;flex-direction:column;gap:4px}.stat-value{color:#fff;font-size:1.5rem;font-weight:700}.stat-label{color:#777;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.rating-pools-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.rating-pool-stat{align-items:center;background:#1e1c1a;border-radius:6px;display:flex;flex-direction:column;gap:4px;padding:12px 8px}.rating-pool-stat .stat-value{color:#629924;font-size:1.35rem;font-weight:700}.rating-pool-stat .stat-label{font-size:11px}.rating-pool-stat .stat-sub{color:#666;font-size:11px}.lobby-no-ratings{color:#777;font-size:13px;grid-column:1/-1;padding:8px 0;text-align:center}.piece{align-items:center;cursor:pointer;display:inline-flex;font-weight:700;justify-content:center;text-shadow:1px 1px 2px #0000004d;transition:transform .2s ease;-webkit-user-select:none;user-select:none;z-index:2}.piece:hover{transform:scale(1.1)}.piece.selected{filter:drop-shadow(0 0 8px rgba(255,255,0,.8));transform:scale(1.15)}.piece.dragging{cursor:grabbing;opacity:.8;transform:scale(1.1);z-index:10}.piece-image{-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%}.piece-symbol{display:inline-block;line-height:1}@keyframes pieceMove{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.piece.moving{animation:pieceMove .3s ease-in-out}.piece.in-check{animation:checkPulse 1s infinite;filter:drop-shadow(0 0 8px #ff6b6b)}@media (prefers-contrast:high){.piece{text-shadow:2px 2px 4px #000c}.piece-image{filter:contrast(1.2)}}@media (prefers-reduced-motion:reduce){.piece,.piece-image{transition:none}.piece.in-check,.piece.moving{animation:none}}@media (hover:none) and (pointer:coarse){.piece:hover{transform:none}.piece.selected{transform:scale(1.05)}}.arrow{filter:drop-shadow(0 1px 2px rgba(0,0,0,.2));pointer-events:none;z-index:10}.arrow line,.arrow polygon{transition:opacity .3s ease}.arrow line{stroke-linecap:round}.arrow line,.arrow polygon{stroke-linejoin:round}.arrow polygon[fill]{filter:drop-shadow(0 0 1px rgba(0,0,0,.3))}.arrow polygon[fill=none]{stroke-linecap:round}.arrow:hover line,.arrow:hover polygon{opacity:1!important}.arrow.primary{z-index:15}.arrow.secondary{z-index:10}.arrow.highlight{z-index:20}.arrow.red line,.arrow.red polygon{stroke:#ff6b6b;fill:#ff6b6b}.arrow.blue line,.arrow.blue polygon{stroke:#4dabf7;fill:#4dabf7}.arrow.green line,.arrow.green polygon{stroke:#51cf66;fill:#51cf66}.arrow.yellow line,.arrow.yellow polygon{stroke:#ffd43b;fill:#ffd43b}.arrow.purple line,.arrow.purple polygon{stroke:#9775fa;fill:#9775fa}@media (max-width:768px){.arrow line{stroke-width:1.5}.arrow polygon{transform:scale(.8)}}@media (prefers-reduced-motion:reduce){.arrow line,.arrow polygon{transition:none}}.chessboard-container{display:inline-block;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.chessboard{background:#8b4513;border:2px solid #8b4513;border-radius:4px;box-shadow:0 4px 8px #0000004d;display:flex;flex-direction:column;position:relative}.rank{display:flex;flex:1 1}.square{align-items:center;cursor:pointer;display:flex;justify-content:center;position:relative;transition:all .2s ease;-webkit-user-select:none;user-select:none}.square-light{background-color:#f0d9b5}.square-dark{background-color:#b58863}.square:hover{box-shadow:inset 0 0 0 2px #ffff0080}.square.selected{background-color:#ff0!important;box-shadow:inset 0 0 0 3px #ff6b6b}.square.highlighted{background-color:#ffff94!important;box-shadow:inset 0 0 0 2px #4ecdc4}.square.possible-move{background-color:#ffff94!important;position:relative}.square.possible-move:after{background-color:#0000004d;border-radius:50%;content:"";height:20%;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:20%}.square.capture{background-color:#fcc!important;position:relative}.square.capture:after{border:3px solid #ff6b6b;border-radius:2px;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.square.last-move{background-color:#cdd26a!important;box-shadow:inset 0 0 0 2px #769656}.square.in-check{animation:checkPulse 1s ease-in-out infinite alternate;box-shadow:inset 0 0 0 3px red}.coordinate{color:#8b4513;font-size:.7em;font-weight:700;pointer-events:none;position:absolute;text-shadow:1px 1px 1px #fffc;z-index:1}.file-coordinate{bottom:2px;right:4px}.rank-coordinate{left:4px;top:2px}@media (max-width:600px){.chessboard{max-height:100vw;max-width:100%}.coordinate{font-size:.6em}}.square.drag-over{background-color:#4ecdc4!important;opacity:.7}.square.in-check{animation:checkPulse 1s infinite;background-color:#ff6b6b!important}@keyframes checkPulse{0%,to{box-shadow:inset 0 0 0 3px #ff6b6b}50%{box-shadow:inset 0 0 0 6px #ff6b6b}}.chessboard.flipped,.chessboard.flipped .coordinate{transform:rotate(180deg)}.square:focus{outline:3px solid #4ecdc4;outline-offset:-3px}@media (prefers-contrast:high){.square-light{background-color:#fff}.square-dark{background-color:#000}.piece{text-shadow:2px 2px 4px #000c}}@media (prefers-reduced-motion:reduce){.piece,.square{transition:none}.piece.moving,.square.in-check{animation:none}}.game-social-panel{display:flex;flex-direction:column;gap:12px;margin-top:12px}.social-section{background:#262421;border-radius:8px;padding:12px}.social-section-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.social-section-head h4{color:#777;font-size:13px;margin:0;text-transform:uppercase}.social-mute-btn{background:#0000;border:none;border-radius:4px;cursor:pointer;font-size:14px;opacity:.75;padding:2px 6px}.social-mute-btn:hover{background:#403d39;opacity:1}.social-mute-btn.muted{opacity:.5}.social-muted-note{color:#666;font-size:13px;font-style:italic;margin:0;padding:8px 0;text-align:center}.reaction-burst-stage{margin-bottom:8px;min-height:220px;overflow:visible;position:relative}.reaction-burst{align-items:center;animation:burst-rise 2s ease-out forwards;bottom:0;display:flex;flex-direction:column;left:50%;pointer-events:none;position:absolute;transform:translateX(-50%);z-index:2}.reaction-burst.self-burst{z-index:3}.burst-emoji{filter:drop-shadow(0 4px 16px rgba(0,0,0,.5));font-size:8rem;line-height:1}.burst-user{color:#999;font-size:13px;margin-top:6px}@keyframes burst-rise{0%{opacity:0;transform:translateX(-50%) translateY(24px) scale(.4)}15%{opacity:1;transform:translateX(-50%) translateY(0) scale(1.1)}70%{opacity:1;transform:translateX(-50%) translateY(-32px) scale(1)}to{opacity:0;transform:translateX(-50%) translateY(-80px) scale(.9)}}.reaction-picker{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(9,1fr)}.reaction-btn{align-items:center;aspect-ratio:1;background:#1f1d1b;border:1px solid #403d39;border-radius:6px;cursor:pointer;display:flex;font-size:1.15rem;justify-content:center;padding:0;transition:transform .15s ease,background .15s ease,border-color .15s ease}.reaction-btn:hover{background:#3d3829;border-color:#629924;transform:scale(1.12)}.reaction-btn:active{transform:scale(.95)}.reaction-emoji{display:block;line-height:1}.reaction-btn.react-bounce:hover .reaction-emoji{animation:react-bounce .6s ease infinite}.reaction-burst.react-bounce .burst-emoji{animation:react-bounce-burst .6s ease infinite}.reaction-btn.react-flame:hover .reaction-emoji{animation:react-flame .45s ease infinite alternate}.reaction-burst.react-flame .burst-emoji{animation:react-flame-burst .45s ease infinite alternate}.reaction-btn.react-flex:hover .reaction-emoji{animation:react-flex .5s ease infinite}.reaction-burst.react-flex .burst-emoji{animation:react-flex-burst .5s ease infinite}.reaction-btn.react-wiggle:hover .reaction-emoji{animation:react-wiggle .4s ease infinite}.reaction-burst.react-wiggle .burst-emoji{animation:react-wiggle-burst .4s ease infinite}.reaction-btn.react-zap:hover .reaction-emoji{animation:react-zap .35s steps(2) infinite}.reaction-burst.react-zap .burst-emoji{animation:react-zap-burst .35s steps(2) infinite}.reaction-btn.react-float:hover .reaction-emoji{animation:react-float 1s ease-in-out infinite}.reaction-burst.react-float .burst-emoji{animation:react-float-burst 1s ease-in-out infinite}.reaction-btn.react-party:hover .reaction-emoji{animation:react-party .5s ease infinite}.reaction-burst.react-party .burst-emoji{animation:react-party-burst .5s ease infinite}.reaction-btn.react-pop:hover .reaction-emoji{animation:react-pop .45s ease infinite}.reaction-burst.react-pop .burst-emoji{animation:react-pop-burst .45s ease infinite}@keyframes react-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes react-bounce-burst{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes react-flame{0%{filter:hue-rotate(0deg);transform:scale(1) rotate(-3deg)}to{filter:hue-rotate(15deg);transform:scale(1.12) rotate(3deg)}}@keyframes react-flame-burst{0%{filter:hue-rotate(0deg);transform:scale(1) rotate(-6deg)}to{filter:hue-rotate(15deg);transform:scale(1.18) rotate(6deg)}}@keyframes react-flex{0%,to{transform:scale(1) rotate(0deg)}25%{transform:scale(1.08) rotate(-8deg)}75%{transform:scale(1.08) rotate(8deg)}}@keyframes react-flex-burst{0%,to{transform:scale(1) rotate(0deg)}25%{transform:scale(1.12) rotate(-14deg)}75%{transform:scale(1.12) rotate(14deg)}}@keyframes react-wiggle{0%,to{transform:rotate(0deg)}25%{transform:rotate(-12deg)}75%{transform:rotate(12deg)}}@keyframes react-wiggle-burst{0%,to{transform:rotate(0deg)}25%{transform:rotate(-18deg)}75%{transform:rotate(18deg)}}@keyframes react-zap{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.2)}}@keyframes react-zap-burst{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.15)}}@keyframes react-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes react-float-burst{0%,to{transform:translateY(0)}50%{transform:translateY(-24px)}}@keyframes react-party{0%,to{transform:rotate(0deg) scale(1)}33%{transform:rotate(-10deg) scale(1.1)}66%{transform:rotate(10deg) scale(1.1)}}@keyframes react-party-burst{0%,to{transform:rotate(0deg) scale(1)}33%{transform:rotate(-14deg) scale(1.12)}66%{transform:rotate(14deg) scale(1.12)}}@keyframes react-pop{0%,to{transform:scale(1)}50%{transform:scale(1.25)}}@keyframes react-pop-burst{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.chat-scroll{margin-bottom:8px;max-height:140px;overflow-y:auto;padding-right:4px}.chat-empty{color:#555;font-size:13px;font-style:italic;margin:0;padding:12px 0;text-align:center}.chat-line{font-size:13px;margin-bottom:8px}.chat-line.self .chat-author{color:#8bb866}.chat-meta{align-items:baseline;display:flex;gap:8px;margin-bottom:2px}.chat-author{color:#ccc;font-size:12px;font-weight:600}.chat-time{color:#555;font-size:11px}.chat-text{color:#ddd;line-height:1.35;word-break:break-word}.chat-form{align-items:flex-end;display:flex;gap:6px}.chat-input-wrap{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.chat-error{background:#e6912c1f;border-radius:4px;color:#f0a070;font-size:12px;line-height:1.35;margin:0 0 8px;padding:6px 8px}.chat-char-count{color:#555;font-size:10px;padding-right:2px;text-align:right}.chat-char-count.near-limit{color:#e6912c}.chat-input{background:#1f1d1b;border:1px solid #403d39;border-radius:4px;color:#eee;flex:1 1;font-size:13px;min-width:0;padding:8px 10px}.chat-input:focus{border-color:#629924;outline:none}.chat-send{background:#403d39;border:none;border-radius:4px;color:#eee;cursor:pointer;font-size:13px;font-weight:600;padding:8px 12px}.chat-send:hover:not(:disabled){background:#629924}.chat-send:disabled{cursor:not-allowed;opacity:.45}@media (max-width:900px){.reaction-picker{grid-template-columns:repeat(5,1fr)}}.game-page{background:#161512;color:#fff;flex:1 1;min-height:100vh;padding:24px}.game-layout{display:flex;gap:24px;margin:0 auto;max-width:1100px}.game-board-area{flex-shrink:0}.player-bar{padding:8px 0}.player-bar.opponent{margin-bottom:8px}.player-bar.self{margin-top:8px}.game-clock{align-items:center;background:#262421;border-radius:4px;display:flex;gap:12px;padding:8px 12px;width:-webkit-fit-content;width:fit-content}.game-clock.active{background:#3d3829;box-shadow:inset 0 0 0 2px #629924}.clock-label{color:#bbb;font-size:14px}.clock-time{font-feature-settings:"tnum";font-size:1.5rem;font-variant-numeric:tabular-nums;font-weight:700;min-width:60px}.clock-display{align-items:center;display:flex;justify-content:flex-end}.clock-display.royale-display{min-height:2.4rem;min-width:88px}.clock-display.standard-display{min-height:2.4rem;min-width:60px}.game-clock.standard-clock:not(.active) .waiting-dot{background:#777}.clock-waiting{gap:12px;justify-content:space-between;min-height:2.4rem;width:100%}.clock-waiting,.waiting-dots{align-items:center;display:flex}.waiting-dots{flex:1 1;gap:5px;justify-content:center}.waiting-dot{animation:waiting-dot-pulse 1.2s ease-in-out infinite;background:#888;border-radius:50%;height:7px;width:7px}.waiting-dot:nth-child(2){animation-delay:.15s}.waiting-dot:nth-child(3){animation-delay:.3s}@keyframes waiting-dot-pulse{0%,70%,to{opacity:.25;transform:translateY(0) scale(.85)}35%{opacity:1;transform:translateY(-3px) scale(1)}}.game-clock.royale-clock:not(.active) .waiting-dot{background:#a89878}.clock-time.low{color:#e6912c}.board-wrapper{border-radius:4px;overflow:hidden;position:relative}.board-wrapper.board-shaking{animation:board-shake .65s cubic-bezier(.36,.07,.19,.97)}@keyframes board-shake{0%,to{transform:translate(0) rotate(0deg)}10%{transform:translate(-6px,2px) rotate(-1.2deg)}20%{transform:translate(7px,-3px) rotate(1.4deg)}30%{transform:translate(-8px,-2px) rotate(-1deg)}40%{transform:translate(8px,3px) rotate(1.2deg)}50%{transform:translate(-5px,1px) rotate(-.8deg)}60%{transform:translate(5px,-2px) rotate(.9deg)}70%{transform:translate(-3px,2px) rotate(-.5deg)}80%{transform:translate(3px,-1px) rotate(.4deg)}90%{transform:translate(-1px) rotate(-.2deg)}}.strike-overlay{align-items:center;animation:strike-flash 1.2s ease-out forwards;display:flex;inset:0;justify-content:center;pointer-events:none;position:absolute;z-index:10}.strike-text{animation:strike-shake .5s ease-in-out;color:#f44;font-size:3rem;font-weight:900;letter-spacing:4px;text-shadow:0 0 24px #f44c,0 2px 8px #000c}@keyframes strike-flash{0%{background:#ff28288c}40%{background:#ff282859}to{background:#0000}}@keyframes strike-shake{0%,to{transform:translateX(0)}20%{transform:translateX(-8px) rotate(-2deg)}40%{transform:translateX(8px) rotate(2deg)}60%{transform:translateX(-6px)}80%{transform:translateX(6px)}}.game-clock.royale-clock.active{background:#3d3520;box-shadow:inset 0 0 0 2px #d4a843}.clock-time.royale-time{align-items:baseline;display:flex;font-size:2rem;gap:2px;justify-content:flex-end;min-height:2.4rem;min-width:88px}.clock-unit{color:#999;font-size:.9rem;font-weight:600}.royale-timer{align-items:center;display:flex;gap:8px;justify-content:flex-end;width:100%}.royale-timer.royale-watching{opacity:.85}.clock-phase,.royale-timer.royale-grace .clock-time{color:#8ecae6}.clock-phase{font-size:.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.royale-status-hint{color:#8ecae6}.strike-pips{display:flex;flex-shrink:0;gap:6px}.clock-waiting .strike-pips{gap:5px}.clock-waiting .strike-pip{height:11px;width:11px}.clock-game-result{align-items:center;display:flex;justify-content:center;min-height:2.4rem;width:100%}.result-emoji{animation:result-emoji-pop .45s cubic-bezier(.34,1.56,.64,1);font-size:2rem;line-height:1}@keyframes result-emoji-pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.strike-pip{background:#629924;border:2px solid #629924;border-radius:50%;height:14px;width:14px}.strike-pip.used{background:#0000;border-color:#e6912c}.royale-hint{color:#a89878;font-size:12px;line-height:1.4;margin-bottom:12px}.position-status{font-size:13px;margin:0 0 12px}.position-status.check{color:#e68a00}.position-status.ending{color:#81b64c}.game-sidebar{display:flex;flex:1 1;flex-direction:column;gap:12px;max-width:320px;min-width:280px}.game-info-panel{background:#262421;border-radius:8px;padding:20px}.game-info-panel h3{color:#999;font-size:1rem;margin-bottom:16px}.resign-btn{background:#0000;border:1px solid #403d39;border-radius:4px;color:#bbb;cursor:pointer;font-size:14px;padding:12px;width:100%}.resign-btn:hover{background:#403d39;color:#fff}.draw-actions{margin-bottom:10px}.draw-accept-btn,.draw-decline-btn,.draw-offer-btn{border:1px solid #403d39;border-radius:4px;cursor:pointer;font-size:14px;padding:12px;width:100%}.draw-offer-btn{background:#0000;color:#bbb}.draw-offer-btn:hover{background:#403d39;color:#fff}.draw-offer-text{color:#c9b896;font-size:13px;margin:0 0 8px;text-align:center}.draw-offer-sent{color:#888;font-size:13px;margin:0 0 10px;text-align:center}.draw-offer-btns{display:flex;gap:8px;margin-bottom:10px}.draw-accept-btn{background:#3d4a2a;border-color:#629924;color:#d4e4bc;flex:1 1}.draw-accept-btn:hover{background:#4a5a32}.draw-decline-btn{background:#0000;color:#bbb;flex:1 1}.draw-decline-btn:hover{background:#403d39;color:#fff}.game-result{text-align:center}.result-text{font-size:1.25rem;font-weight:700;margin-bottom:8px}.rating-change{color:#629924;font-weight:600;margin-bottom:8px}.termination{color:#777;font-size:13px;margin-bottom:16px;text-transform:capitalize}.play-again-btn{background:#629924;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:600;padding:12px;width:100%}.play-again-btn:hover{background:#7ab82e}.move-list{background:#262421;border-radius:8px;display:flex;flex:0 0 auto;flex-direction:column;padding:16px}.move-list h4{color:#777;font-size:13px;margin-bottom:12px;text-transform:uppercase}.moves-scroll{flex:0 1 auto;font-size:14px;line-height:1.8;max-height:200px;overflow-y:auto}.move-token{margin-right:6px}.move-num{color:#777;margin-right:4px}.no-moves{color:#555;font-style:italic}@media (max-width:900px){.game-layout{align-items:center;flex-direction:column}}.review-page{margin:0 auto;max-width:1100px;padding:20px}.review-header{margin-bottom:16px}.review-header h1{font-size:1.4rem;margin:0 0 6px}.review-meta{color:#888;font-size:14px;line-height:1.5}.review-meta strong{color:#ccc}.review-layout{align-items:flex-start;display:flex;flex-wrap:wrap;gap:24px}.review-board-col{flex:0 0 auto}.review-sidebar{flex:1 1;min-width:260px}.review-controls{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:12px}.review-controls button{background:#262421;border:1px solid #403d39;border-radius:6px;color:#ddd;cursor:pointer;font-size:16px;height:40px;min-width:44px;padding:0 12px}.review-controls button:hover:not(:disabled){background:#403d39}.review-controls button:disabled{cursor:not-allowed;opacity:.35}.review-controls .play-btn{background:#3d4a2a;border-color:#629924;color:#d4e4bc;font-size:13px;font-weight:600;min-width:72px}.review-controls .play-btn.playing{background:#4a3820;border-color:#d4a843;color:#f0d890}.review-ply-label{color:#999;font-size:13px;min-width:64px;text-align:center}.review-moves{background:#262421;border-radius:8px;max-height:480px;overflow-y:auto;padding:14px}.review-moves h4{color:#777;font-size:13px;margin:0 0 10px;text-transform:uppercase}.review-move-grid{display:flex;flex-wrap:wrap;font-family:ui-monospace,monospace;font-size:14px;gap:4px 10px}.review-move-token{border-radius:3px;color:#bbb;cursor:pointer;padding:2px 4px}.review-move-token:hover{background:#403d39}.review-move-token.active{background:#629924;color:#fff}.review-move-num{color:#666;margin-right:4px}.review-result{background:#262421;border-radius:8px;color:#aaa;font-size:14px;margin-top:12px;padding:12px}.review-back{color:#81b64c;display:inline-block;font-size:14px;margin-bottom:12px;text-decoration:none}.review-back:hover{text-decoration:underline}@media (max-width:800px){.review-layout{align-items:center;flex-direction:column}}.ladder-page{background:#161512;color:#fff;flex:1 1;max-width:900px;min-height:100vh;padding:32px}.ladder-page h1{font-size:2rem;margin-bottom:8px}.ladder-desc{color:#999;margin-bottom:28px}.ladder-table{background:#262421;border-radius:8px;overflow:hidden}.ladder-header-row,.ladder-row{align-items:center;display:grid;font-size:14px;grid-template-columns:48px 1fr 80px 64px 120px;padding:12px 20px}.ladder-header-row{background:#1a1816;color:#777;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.ladder-row{border-top:1px solid #302e2b}.ladder-row.highlight{background:#2a3320}.ladder-row .rank{color:#777;font-weight:600}.ladder-row .name{font-weight:600}.ladder-row .rating{color:#629924;font-weight:700}.ladder-row .record{color:#999;font-size:13px}.empty-ladder{color:#777;padding:40px;text-align:center}.ladder-mode-tabs,.ladder-pool-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.ladder-mode-tab,.ladder-pool-tab{background:#262421;border:1px solid #403d39;border-radius:6px;color:#bbb;cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px;transition:background .15s,border-color .15s,color .15s}.ladder-mode-tab:hover,.ladder-pool-tab:hover{background:#302e2b;color:#fff}.ladder-mode-tab.active{background:#3d3829;border-color:#629924;color:#fff}.ladder-pool-tab.active{background:#2a3320;border-color:#629924;color:#fff}.ladder-my-rating{background:#262421;border-radius:8px;color:#ccc;font-size:14px;margin-bottom:20px;padding:14px 18px}.ladder-my-rating strong{color:#629924;font-size:1.25rem;margin-left:4px}.ladder-my-record{color:#888;display:block;font-size:13px;margin-top:6px}.ladder-loading{background:#0000;min-height:200px}.ladder-toolbar{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px}.ladder-sort{color:#888;display:flex;flex-direction:column;font-size:12px;gap:6px;letter-spacing:.4px;text-transform:uppercase}.ladder-sort select{background:#262421;border:1px solid #403d39;border-radius:6px;color:#fff;font-size:14px;min-width:220px;padding:10px 12px}.ladder-viewer-chip{align-items:center;background:#262421;border-radius:8px;color:#ccc;display:flex;flex-wrap:wrap;font-size:14px;gap:10px;padding:10px 14px}.ladder-viewer-chip strong{color:#629924}.ladder-viewer-meta{color:#888;font-size:13px}.ladder-jump-btn{background:#0000;border:1px solid #629924;border-radius:4px;color:#81b64c;cursor:pointer;font-size:12px;padding:6px 10px}.ladder-jump-btn:hover{background:#2a3320}.ladder-pagination{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-top:16px}.ladder-pagination button{background:#262421;border:1px solid #403d39;border-radius:6px;color:#fff;cursor:pointer;padding:10px 16px}.ladder-pagination button:disabled{cursor:not-allowed;opacity:.4}.ladder-page-indicator{color:#bbb;font-size:14px;text-align:center}.ladder-page-count{color:#777;display:block;font-size:12px;margin-top:2px}.competitions-page{background:#161512;color:#fff;flex:1 1;max-width:1100px;min-height:100vh;padding:32px}.competitions-page h1{font-size:2rem;font-weight:600;margin-bottom:8px}.competitions-top{align-items:flex-start;display:flex;gap:24px;justify-content:space-between;margin-bottom:24px}.competitions-top .competitions-desc{margin-bottom:0}.competitions-create-btn{align-items:center;animation:create-btn-gradient 14s ease infinite;background:linear-gradient(135deg,#629924,#81b64c 18%,#4ecdc4 36%,#d4a843 54%,#9b59b6 72%,#629924);background-size:400% 400%;border:none;border-radius:50%;box-shadow:0 0 32px #62992473,0 8px 24px #00000059;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:96px;justify-content:center;position:relative;transition:transform .25s ease;width:96px}.competitions-create-btn:hover{transform:scale(1.06)}.competitions-create-btn:active{transform:scale(.97)}.competitions-create-btn-glow{animation:create-btn-spin 18s linear infinite;background:conic-gradient(from 0deg,#629924,#81b64c,#4ecdc4,#d4a843,#9b59b6,#629924);border-radius:50%;filter:blur(14px);inset:-6px;opacity:.55;position:absolute;z-index:-1}.competitions-create-btn-ring{animation:create-btn-spin 22s linear infinite reverse;background:conic-gradient(from 0deg,#629924,#4ecdc4,#d4a843,#9b59b6,#81b64c,#629924);border-radius:50%;inset:-3px;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask-composite:xor;opacity:.85;padding:3px;pointer-events:none;position:absolute}.competitions-create-btn svg{filter:drop-shadow(0 2px 4px rgba(0,0,0,.35));position:relative;z-index:1}@keyframes create-btn-gradient{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes create-btn-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.competitions-desc{color:#999}.competitions-dock{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.competitions-dock .dock-btn{background:#1f1d1b;border:1px solid #403d39;border-radius:999px;color:#bbb;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;padding:8px 18px}.competitions-dock .dock-btn:hover{background:#403d39;color:#fff}.competitions-dock .dock-btn.active{background:#3d4a2a;border-color:#629924;color:#d4e4bc}.competitions-table{background:#262421;border-radius:8px;overflow:hidden}.competitions-header-row,.competitions-row{grid-gap:8px;align-items:center;display:grid;font-size:14px;gap:8px;grid-template-columns:1.2fr .9fr 72px 88px 1.3fr 1.4fr;padding:12px 20px}.competitions-header-row{background:#1a1816;color:#777;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.competitions-row{border-top:1px solid #302e2b}.competitions-row-clickable{cursor:pointer;transition:background .15s ease}.competitions-row-clickable:hover{background:#2f2c28}.competitions-row-joined{background:#2a3320;box-shadow:inset 3px 0 0 #629924}.competitions-row-joined:hover{background:#314028}.comp-name-cell{align-items:center;display:flex;gap:8px;min-width:0}.comp-joined-pill{flex-shrink:0;font-size:10px;padding:2px 8px}.comp-name{font-weight:600;min-width:0}.comp-creator{color:#ccc}.comp-mode{font-size:13px;font-weight:600}.comp-mode-standard{color:#629924}.comp-mode-royale{color:#d4a843}.comp-format{color:#bbb;font-weight:600}.comp-schedule{color:#bbb;display:flex;flex-direction:column;font-size:13px;gap:2px;line-height:1.35}.comp-schedule-countdown{font-feature-settings:"tnum";color:#81b64c;font-variant-numeric:tabular-nums;font-weight:700}.comp-notes{color:#999;font-size:13px;line-height:1.4}.competitions-empty{color:#777;padding:40px 20px;text-align:center}.competitions-pagination{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-top:16px}.competitions-pagination button{background:#0000;border:1px solid #403d39;border-radius:4px;color:#bbb;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;padding:8px 14px}.competitions-pagination button:disabled{cursor:not-allowed;opacity:.4}.competitions-pagination span{color:#777;font-size:13px}@media (max-width:860px){.competitions-top{align-items:center;flex-direction:column;text-align:center}.competitions-create-btn{height:88px;width:88px}.competitions-create-btn svg{height:40px;width:40px}.competitions-header-row,.competitions-row{gap:6px 12px;grid-template-columns:1fr 1fr}.competitions-header-row span:nth-child(n+3),.competitions-row span:nth-child(n+3){grid-column:span 1}.comp-name{grid-column:1/-1}}.create-competition-page{background:#161512;color:#fff;flex:1 1;margin:0 auto;max-width:720px;min-height:100vh;padding:32px 20px 48px}.create-comp-back{align-items:center;background:none;border:none;color:#999;cursor:pointer;display:inline-flex;font-family:inherit;font-size:14px;gap:8px;margin-bottom:20px;padding:0}.create-comp-back:hover{color:#fff}.create-comp-card{background:#262421;border-radius:8px;padding:32px}.create-comp-card h1{font-size:1.75rem;font-weight:600;margin-bottom:6px}.create-comp-subtitle{color:#999;margin-bottom:28px}.create-comp-section{margin-bottom:28px}.create-comp-section h2{color:#777;font-size:13px;font-weight:600;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.create-comp-section label{color:#bbb;display:flex;flex-direction:column;font-size:14px;gap:6px;margin-bottom:12px}.create-comp-section input,.create-comp-section textarea{background:#1a1816;border:1px solid #403d39;border-radius:4px;color:#fff;font-family:inherit;font-size:15px;padding:12px}.create-comp-section input:focus,.create-comp-section textarea:focus{border-color:#629924;outline:none}.create-comp-dock{display:flex;flex-wrap:wrap;gap:8px}.create-comp-dock .dock-btn{background:#1f1d1b;border:1px solid #403d39;border-radius:999px;color:#bbb;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;padding:8px 16px}.create-comp-dock .dock-btn:hover{background:#403d39;color:#fff}.create-comp-dock .dock-btn.active{background:#3d4a2a;border-color:#629924;color:#d4e4bc}.create-comp-dock .dock-btn.royale-active.active{background:#3d3520;border-color:#d4a843;color:#f0d890}.create-comp-hint{color:#777;font-size:13px;line-height:1.45;margin-top:10px}.create-comp-fifm-note{background:#1a1816;border-left:3px solid #629924;border-radius:0 4px 4px 0;color:#aaa;font-size:13px;line-height:1.5;margin-top:12px;padding:12px 14px}.create-comp-format-grid{grid-gap:10px;display:grid;gap:10px}.format-card{align-items:flex-start;background:#1f1d1b;border:1px solid #403d39;border-radius:6px;color:#bbb;cursor:pointer;display:flex;flex-direction:column;font-family:inherit;gap:4px;padding:14px 16px;text-align:left}.format-card:hover{background:#302e2b}.format-card.active{background:#2a3320;border-color:#629924}.format-card-label{color:#fff;font-size:15px;font-weight:700}.format-card-desc{color:#888;font-size:13px;line-height:1.4}.create-comp-tc-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(72px,1fr))}.tc-btn{background:#1f1d1b;border:1px solid #403d39;border-radius:4px;color:#ccc;cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;padding:10px 8px}.tc-btn:hover{background:#403d39}.tc-btn.active{background:#3d4a2a;border-color:#629924;color:#d4e4bc}.create-comp-royale-tiers{display:flex;flex-direction:column;gap:12px}.royale-tier-row-form{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.royale-tier-name{color:#777;font-size:13px;font-weight:600;width:56px}.royale-tier-btns{display:flex;flex-wrap:wrap;gap:8px}.create-comp-visibility{margin-top:16px}.field-label{color:#bbb;display:block;font-size:14px;margin-bottom:8px}.create-comp-limits-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.create-comp-limits-grid label{margin-bottom:0}.duration-dock{margin-bottom:12px}.create-comp-error{color:#e6912c;font-size:14px;margin-bottom:12px}.create-comp-submit{background:#629924;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:inherit;font-size:16px;font-weight:600;padding:14px;width:100%}.create-comp-submit:hover:not(:disabled){background:#7ab82e}.create-comp-submit:disabled{cursor:not-allowed;opacity:.6}@media (max-width:600px){.create-comp-card{padding:20px}.create-comp-limits-grid{grid-template-columns:1fr}}.swiss-bracket-section{margin-top:28px}.swiss-bracket-head{margin-bottom:14px}.swiss-bracket-head h2{color:#eee;font-size:1.15rem;font-weight:700;margin:0 0 4px}.swiss-bracket-rules{color:#888;font-size:13px;margin:0}.swiss-bracket-scroll{display:flex;gap:14px;overflow-x:auto;padding-bottom:8px;scrollbar-color:#403d39 #0000;scrollbar-width:thin}.swiss-round-col{flex:0 0 auto;max-width:220px;min-width:168px}.swiss-round-label{color:#999;font-size:12px;font-weight:700;letter-spacing:.06em;margin-bottom:10px;text-align:center;text-transform:uppercase}.swiss-round-groups{display:flex;flex-direction:column;gap:10px}.swiss-record-box{background:#1e1c1a;border:2px solid #403d39;border-radius:8px;overflow:hidden}.swiss-record-positive{border-color:#3d7a32;box-shadow:inset 0 0 0 1px #62992426}.swiss-record-negative{border-color:#8b3a3a;box-shadow:inset 0 0 0 1px #b446461f}.swiss-record-even{border-color:#9a7b2e;box-shadow:inset 0 0 0 1px #d4a8431f}.swiss-record-header{align-items:center;background:#00000040;border-bottom:1px solid #ffffff0f;display:flex;gap:6px;justify-content:space-between;padding:6px 10px}.swiss-record-score{font-feature-settings:"tnum";color:#eee;font-size:15px;font-variant-numeric:tabular-nums;font-weight:800}.swiss-record-tag{border-radius:3px;font-size:9px;font-weight:800;letter-spacing:.08em;padding:2px 6px;text-transform:uppercase}.swiss-record-tag.advance{background:#2d5a24;color:#b8e88a}.swiss-record-tag.eliminated{background:#5a2424;color:#f0a0a0}.swiss-record-body{display:flex;flex-direction:column;gap:6px;padding:8px}.swiss-match{grid-gap:4px;align-items:center;background:#262421;border:1px solid #353330;border-radius:6px;display:grid;gap:4px;grid-template-columns:1fr auto 1fr;padding:6px 8px;position:relative}.swiss-match.clickable{cursor:pointer;transition:border-color .15s,background .15s}.swiss-match.clickable:hover{background:#2a2d35;border-color:#5b8def}.swiss-match-vs{color:#666;font-size:10px;font-weight:700;text-transform:uppercase}.swiss-match-badge{border-radius:3px;font-size:9px;font-weight:800;letter-spacing:.06em;padding:1px 5px;position:absolute;right:6px;text-transform:uppercase;top:-6px}.swiss-match-badge.live{background:#629924;color:#fff}.swiss-match-badge.joining{background:#5b8def;color:#fff}.swiss-match-badge.scheduled{background:#555;color:#ddd}.swiss-match-result{color:#d4a843;font-size:11px;font-weight:700;grid-column:1/-1;margin-top:2px;text-align:center}.swiss-player{color:#ddd;display:block;font-size:12px;font-weight:600;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.swiss-player.compact{font-size:11px}.swiss-player.is-viewer{color:#8eb8ff}.swiss-player-advanced{color:#9fd86a}.swiss-player-eliminated{color:#c08080;opacity:.85;text-decoration:line-through}.swiss-idle-row{align-items:center;background:#00000026;border:1px dashed #403d39;border-radius:6px;display:flex;gap:6px;justify-content:space-between;padding:4px 8px}.swiss-idle-label{color:#666;flex-shrink:0;font-size:10px;letter-spacing:.05em;text-transform:uppercase}.swiss-bracket-footer{border-top:1px solid #403d39;display:flex;flex-wrap:wrap;gap:16px;margin-top:16px;padding-top:14px}.swiss-status-block{flex:1 1;min-width:180px}.swiss-status-title{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;margin-bottom:8px;text-transform:uppercase}.swiss-status-advanced .swiss-status-title{color:#9fd86a}.swiss-status-eliminated .swiss-status-title{color:#e08080}.swiss-status-chips{display:flex;flex-wrap:wrap;gap:6px}.swiss-status-chips .swiss-player{background:#262421;border:1px solid #403d39;border-radius:4px;display:inline-block;padding:4px 10px}.swiss-status-advanced .swiss-status-chips .swiss-player{background:#2d5a2440;border-color:#3d7a32}.swiss-status-eliminated .swiss-status-chips .swiss-player{background:#5a242433;border-color:#6a3030}@media (max-width:720px){.swiss-round-col{min-width:150px}}.comp-detail-page{background:#161512;color:#fff;flex:1 1;margin:0 auto;max-width:960px;min-height:100vh;padding:32px 20px 48px}.comp-detail-back{align-items:center;background:none;border:none;color:#999;cursor:pointer;display:inline-flex;font-family:inherit;font-size:14px;gap:8px;margin-bottom:20px;padding:0}.comp-detail-back:hover{color:#fff}.comp-detail-empty,.comp-detail-loading{color:#777;padding:40px 0;text-align:center}.comp-detail-error{color:#e6912c;margin-bottom:16px}.comp-detail-header{align-items:flex-start;border-radius:8px;display:flex;gap:20px;justify-content:space-between;margin-bottom:24px;padding:16px 20px}.comp-detail-header-joined{background:#2a3320;box-shadow:inset 4px 0 0 #629924}.comp-detail-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:8px}.comp-detail-header-joined .comp-detail-title-row{margin-bottom:0}.comp-detail-header-joined h1{margin-top:8px}.comp-joined-pill{background:#3d4a2a;border:1px solid #629924;border-radius:999px;color:#d4e4bc;font-size:11px;font-weight:700;letter-spacing:.4px;padding:3px 10px;text-transform:uppercase}.comp-detail-header h1{font-size:2rem;font-weight:600;margin:8px 0 6px}.comp-detail-meta{color:#999;font-size:14px}.comp-detail-schedule{background:#1a1816;border-radius:6px;color:#bbb;display:flex;flex-direction:column;font-size:14px;gap:4px;line-height:1.4;margin-top:12px;padding:10px 14px}.comp-detail-schedule-upcoming{border-left:3px solid #629924}.comp-detail-schedule-running{border-left:3px solid #d4a843}.comp-detail-schedule-done{border-left:3px solid #555}.comp-detail-schedule-countdown{font-feature-settings:"tnum";color:#81b64c;font-size:1.25rem;font-variant-numeric:tabular-nums;font-weight:700}.comp-detail-status{border-radius:999px;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.4px;padding:4px 10px;text-transform:uppercase}.status-upcoming{background:#2a3320;color:#81b64c}.status-running{background:#3d3520;color:#d4a843}.status-done{background:#302e2b;color:#777}.comp-detail-actions{align-items:center;display:flex;flex-shrink:0;flex-wrap:wrap;gap:10px;justify-content:flex-end}.comp-join-btn{background:#629924;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:15px;font-weight:600;padding:12px 24px}.comp-join-btn:hover:not(:disabled){background:#7ab82e}.comp-join-btn:disabled{cursor:not-allowed;opacity:.6}.comp-leave-btn{background:#0000;border:1px solid #6a4040;border-radius:6px;color:#c08080;cursor:pointer;font-family:inherit;font-size:15px;font-weight:600;padding:12px 20px}.comp-leave-btn:hover:not(:disabled){background:#6a303040;border-color:#8a5050;color:#e8a0a0}.comp-leave-btn:disabled{cursor:not-allowed;opacity:.6}.comp-edit-btn{align-items:center;background:#0000;border:1px solid #555;border-radius:6px;color:#ccc;cursor:pointer;display:inline-flex;font-family:inherit;font-size:14px;font-weight:600;gap:6px;padding:12px 18px}.comp-edit-btn:hover{background:#33302c;border-color:#888;color:#fff}.comp-pool-btn{background:#3d3520;border:1px solid #d4a843;border-radius:6px;color:#f0d890;cursor:pointer;font-family:inherit;font-size:15px;font-weight:600;margin-right:10px;overflow:hidden;padding:12px 24px;position:relative;transition:transform .2s ease,box-shadow .2s ease}.comp-pool-btn:hover:not(:disabled){background:#4a4028;transform:translateY(-1px)}.comp-pool-btn.seeking{animation:pool-btn-shimmer 3s ease infinite;background:linear-gradient(135deg,#3d3520,#4a4028,#3d3520);background-size:200% 200%;border-color:#d4a843;box-shadow:0 0 20px #d4a84359,inset 0 0 12px #d4a84314;color:#f0d890}@keyframes pool-btn-shimmer{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.comp-pool-btn:disabled{cursor:not-allowed;opacity:.5}.comp-pool-banner{background:#1a1816;border:1px solid #403d39;border-radius:8px;margin-bottom:20px;overflow:hidden;padding:20px 24px;position:relative}.comp-pool-banner-glow{animation:pool-banner-spin 8s linear infinite;background:conic-gradient(from 0deg,#0000,#d4a84326,#0000,#6299241f,#0000);inset:-40%;pointer-events:none;position:absolute}@keyframes pool-banner-spin{to{transform:rotate(1turn)}}.comp-pool-rings{height:64px;pointer-events:none;position:absolute;right:28px;top:50%;transform:translateY(-50%);width:64px}.comp-pool-ring{animation:pool-ring-pulse 2.4s ease-out infinite;border:2px solid #d4a84380;border-radius:50%;inset:0;position:absolute}.comp-pool-ring:nth-child(2){animation-delay:.8s}.comp-pool-ring:nth-child(3){animation-delay:1.6s}@keyframes pool-ring-pulse{0%{opacity:.9;transform:scale(.35)}to{opacity:0;transform:scale(1.4)}}.comp-pool-banner-content{align-items:center;display:flex;gap:12px;position:relative;z-index:1}.comp-pool-pulse-dot{animation:pool-dot-pulse 1.2s ease-in-out infinite;background:#d4a843;border-radius:50%;box-shadow:0 0 12px #d4a843cc;flex-shrink:0;height:10px;width:10px}@keyframes pool-dot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.65;transform:scale(1.35)}}.comp-pool-banner-text{color:#f0d890;font-size:15px;font-weight:600;letter-spacing:.2px;margin:0}.comp-joined-badge{background:#2a3320;border:1px solid #629924;border-radius:6px;color:#d4e4bc;display:inline-block;font-weight:600;padding:12px 24px}.comp-join-blocked{background:#1f1d1b;border:1px solid #403d39;border-radius:6px;color:#888;display:inline-block;font-size:13px;line-height:1.4;max-width:220px;padding:12px 16px;text-align:center}.comp-detail-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr;margin-bottom:24px}.comp-detail-card-wide{max-width:480px}.comp-leaderboard-section{background:#262421;border-radius:8px;overflow:hidden;padding:20px}.comp-leaderboard-head{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:12px}.comp-leaderboard-head h2{color:#777;font-size:13px;font-weight:600;letter-spacing:.5px;margin:0;text-transform:uppercase}.comp-viewer-rank{color:#999;font-size:14px}.comp-viewer-rank strong{color:#629924}.comp-leaderboard-hint{color:#777;font-size:13px;margin:0 0 12px}.comp-leaderboard-table{overflow-x:auto}.comp-leaderboard-header,.comp-leaderboard-row{grid-gap:8px;align-items:center;display:grid;font-size:14px;gap:8px;grid-template-columns:40px 1fr 72px 56px 40px 40px 40px 56px;min-width:520px;padding:12px 4px}.comp-leaderboard-header{border-bottom:1px solid #403d39;color:#777;font-size:12px;font-weight:600;letter-spacing:.4px;text-transform:uppercase}.comp-leaderboard-header span:not(:first-child):not(:nth-child(2)),.comp-leaderboard-row span:not(:first-child):not(:nth-child(2)){font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:center}.comp-leaderboard-row{border-bottom:1px solid #302e2b;color:#ccc}.comp-leaderboard-row.highlight{background:#2a3320}.comp-leaderboard-row .lb-rank{color:#777;font-weight:700}.comp-leaderboard-row .lb-name{color:#fff;font-weight:600}.comp-leaderboard-row .lb-rating{color:#629924;font-weight:700;text-align:center}.comp-leaderboard-row .lb-score{color:#d4a843;font-weight:700}.comp-detail-card{background:#262421;border-radius:8px;padding:20px}.comp-detail-card h2{color:#777;font-size:13px;font-weight:600;letter-spacing:.5px;margin:0 0 16px;text-transform:uppercase}.comp-detail-dl{grid-gap:12px;display:grid;gap:12px}.comp-detail-dl div{display:flex;font-size:14px;gap:12px;justify-content:space-between}.comp-detail-dl dt{color:#888}.comp-detail-dl dd{color:#ddd;font-weight:600;text-align:right}.comp-detail-notes{border-top:1px solid #403d39;color:#aaa;font-size:14px;line-height:1.5;margin-top:16px;padding-top:16px}.comp-detail-fifm-hint,.comp-detail-lock-hint,.comp-detail-scheduled-hint{background:#1a1816;border-radius:4px;color:#999;font-size:13px;line-height:1.45;margin-top:14px;padding:10px 12px}.comp-detail-fifm-hint{border-left:3px solid #629924}.comp-detail-scheduled-hint{border-left:3px solid #5b8def}.comp-detail-lock-hint{border-left:3px solid #d4a843}.comp-match-offer{background:linear-gradient(135deg,#1a2332f2,#141820fa);border:1px solid #5b8def73;border-radius:10px;margin:0 0 20px;overflow:hidden;padding:20px 22px;position:relative}.comp-match-offer.urgent{animation:comp-match-shake .4s ease-in-out infinite alternate;border-color:#d4a843a6}@keyframes comp-match-shake{0%{transform:translateX(-1px)}to{transform:translateX(1px)}}.comp-match-offer-glow{animation:comp-pool-glow-pulse 2.5s ease-in-out infinite;background:radial-gradient(circle at 30% 50%,#5b8def2e,#0000 55%);inset:-40%;pointer-events:none;position:absolute}.comp-match-offer.urgent .comp-match-offer-glow{background:radial-gradient(circle at 30% 50%,#d4a84333,#0000 55%)}.comp-match-offer-content{position:relative;z-index:1}.comp-match-offer-head{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:8px}.comp-match-offer-badge{color:#8eb8ff;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.comp-match-offer-timer{font-feature-settings:"tnum";color:#c8daff;font-size:14px;font-variant-numeric:tabular-nums;font-weight:700}.comp-match-offer-timer.urgent{color:#f0c96a}.comp-match-offer-vs{color:#eee;font-size:22px;margin:0 0 6px}.comp-match-offer-vs strong{color:#fff}.comp-match-offer-hint{color:#9aa8bc;font-size:13px;margin:0 0 14px}.comp-match-join-btn{background:linear-gradient(180deg,#5b8def,#3d6fd4);border:none;border-radius:6px;box-shadow:0 4px 14px #3b6fd459;color:#fff;cursor:pointer;font-size:15px;font-weight:700;padding:10px 22px;transition:transform .15s,box-shadow .15s}.comp-match-join-btn:hover:not(:disabled){box-shadow:0 6px 18px #3b6fd473;transform:translateY(-1px)}.comp-match-join-btn:disabled{cursor:not-allowed;opacity:.55}.comp-match-waiting{color:#a8c4ff;font-weight:600;gap:10px}.comp-match-waiting,.comp-waiting-banner{align-items:center;display:flex;font-size:14px}.comp-waiting-banner{background:#1a1816;border:1px dashed #403d39;border-radius:8px;color:#888;gap:12px;margin:0 0 20px;padding:14px 18px}.comp-waiting-banner p{margin:0}.comp-invite-welcome{background:#5b8def14;border:1px solid #5b8def59;border-radius:8px;color:#b8cff5;font-size:14px;margin:0 0 16px;padding:12px 14px}.comp-invite-panel{background:#262421;border:1px solid #403d39;border-radius:10px;margin:0 0 20px;padding:18px 20px}.comp-invite-panel h2{font-size:1rem;font-weight:600;margin:0 0 6px}.comp-invite-hint{color:#999;font-size:13px;line-height:1.45;margin:0 0 12px}.comp-invite-row{align-items:stretch;display:flex;gap:8px}.comp-invite-input{background:#1a1816;border:1px solid #403d39;border-radius:6px;color:#ddd;flex:1 1;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;min-width:0;padding:10px 12px}.comp-invite-copy{align-items:center;background:#629924;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:0 14px;white-space:nowrap}.comp-invite-copy:hover{background:#73ad2a}@media (max-width:720px){.comp-detail-header,.comp-invite-row{flex-direction:column}}.challenge-page{align-items:center;display:flex;justify-content:center;min-height:calc(100vh - 120px);padding:24px}.challenge-page-loading{color:#888}.challenge-card{background:#262421;border:1px solid #403d39;border-radius:12px;padding:28px 26px;text-align:center;width:min(420px,100%)}.challenge-card-badge{color:#d4a843;display:inline-block;font-size:13px;font-weight:700;letter-spacing:.06em;margin-bottom:10px;text-transform:uppercase}.challenge-card h1{color:#fff;font-size:1.35rem;margin:0 0 8px}.challenge-card-clock{color:#8eb8ff;font-size:15px;font-weight:700;margin:0 0 14px}.challenge-card-hint{color:#999;font-size:14px;line-height:1.5;margin:0 0 18px}.challenge-page-error{color:#e08080;font-size:13px;margin:0 0 12px}.challenge-card button{background:#403d39;border:none;border-radius:6px;color:#eee;cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;padding:11px 22px}.challenge-accept-btn{background:linear-gradient(180deg,#629924,#4d7a1c)!important;color:#fff!important;min-width:180px}.challenge-accept-btn:disabled{cursor:not-allowed;opacity:.65}.challenge-card button:hover:not(:disabled){filter:brightness(1.06)}.profile-page{background:#161512;color:#fff;flex:1 1;font-family:inherit;margin:0 auto;max-width:960px;min-height:100vh;padding:32px 20px 48px}.profile-header{margin-bottom:24px}.profile-header h1{font-size:2rem;font-weight:600;margin:0 0 4px}.profile-meta{color:#999;font-size:14px}.profile-charts{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:20px}.rating-spider-grid{display:contents}.spider-chart-wrap{background:#262421;border-radius:8px;padding:16px;text-align:center}.spider-chart-wrap h4{color:#777;font-size:12px;font-weight:600;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.spider-chart{height:auto;max-width:240px;width:100%}.spider-chart text{font-family:inherit}.spider-label{fill:#ccc;font-size:12px;font-weight:600}.spider-rating{fill:#629924;font-size:11px;font-weight:700}.spider-chart-wrap:last-child .spider-rating{fill:#d4a843}.ratings-table{background:#262421;border-radius:8px;margin-bottom:24px;overflow:hidden}.ratings-header-row,.ratings-row{align-items:center;display:grid;font-size:14px;grid-template-columns:1fr 72px 56px 40px 40px 40px;padding:12px 20px}.ratings-header-row{background:#1a1816;color:#777;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.ratings-header-row span:not(:first-child),.ratings-row span:not(:first-child){font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:center}.ratings-row{border-top:1px solid #302e2b}.pool-cell,.pool-mode{font-weight:600}.pool-mode{color:#777;display:inline-block;font-size:12px;letter-spacing:.3px;margin-right:8px;text-transform:uppercase}.rating-cell{color:#629924;font-weight:700}.num-cell{color:#999}.profile-docks{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.dock-row{display:flex;flex-wrap:wrap;gap:8px}.dock-btn{background:#1f1d1b;border:1px solid #403d39;border-radius:999px;color:#bbb;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;padding:8px 16px}.dock-btn:hover{background:#403d39;color:#fff}.dock-btn.active{background:#3d4a2a;border-color:#629924;color:#d4e4bc}.dock-btn.royale-active.active{background:#3d3520;border-color:#d4a843;color:#f0d890}.history-section{background:#262421;border-radius:8px;overflow:hidden;padding:16px 0}.history-section h3{color:#999;font-size:1rem;font-weight:600;margin:0 0 12px;padding:0 20px}.history-table{width:100%}.history-header-row,.history-row{align-items:center;display:grid;font-size:14px;grid-template-columns:1.4fr 1.2fr 72px 72px 48px;padding:12px 20px}.history-header-row{background:#1a1816;color:#777;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.history-row{border-top:1px solid #302e2b;cursor:pointer;transition:background .15s ease}.history-row:hover{background:#2f2c28}.history-row span:last-child{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600}.outcome-win{color:#629924;font-weight:700}.outcome-loss{color:#e6912c;font-weight:700}.outcome-draw{color:#8ecae6;font-weight:700}.history-empty{color:#777;padding:24px 20px;text-align:center}.history-pagination{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-top:12px;padding:0 20px}.history-pagination button{background:#0000;border:1px solid #403d39;border-radius:4px;color:#bbb;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;padding:8px 14px}.history-pagination button:disabled{cursor:not-allowed;opacity:.4}.history-pagination span{color:#777;font-size:13px}@media (max-width:720px){.profile-charts{grid-template-columns:1fr}.ratings-header-row,.ratings-row{font-size:13px;grid-template-columns:1fr 64px 48px 36px 36px 36px;padding:10px 12px}.history-header-row,.history-row{font-size:13px;grid-template-columns:1fr 1fr 56px 56px 40px;padding:10px 12px}}*{box-sizing:border-box;margin:0;padding:0}body{background:#161512;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.layout{display:flex;min-height:100vh}.main-content{display:flex;flex:1 1;flex-direction:column;min-width:0}.lichess-sidebar .logo-text{font-size:28px;line-height:1}.lichess-sidebar .logo-link{all:unset;align-items:center;cursor:pointer;display:flex;height:44px;justify-content:center;margin:16px 0 24px;width:44px}.lichess-sidebar .icon.active{background:#629924;color:#fff}.sidebar-spacer{flex:1 1}.sidebar-user{align-items:center;background:#262421;border-radius:50%;color:#629924;display:flex;font-size:11px;font-weight:700;height:44px;justify-content:center;margin-bottom:8px;text-decoration:none;width:44px}.sidebar-user-link:hover{background:#403d39}.logout-icon{margin-bottom:16px}
/*# sourceMappingURL=main.fdbb9109.css.map*/