@import url(https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700;900&family=Crimson+Pro:ital,wght@0,300;0,400;1,300&display=swap);.lobby{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:24px}.lobby-card{animation:fadeUp .5s ease;background:linear-gradient(160deg,var(--dark-3),var(--dark-2));border:1px solid #c9a84c33;border-radius:8px;box-shadow:var(--shadow),inset 0 1px 0 #c9a84c1a;max-width:420px;padding:48px 40px;text-align:center;width:100%}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.lobby-crown{filter:drop-shadow(0 4px 12px rgba(201,168,76,.5));font-size:3rem;line-height:1;margin-bottom:12px}.lobby-title{color:var(--gold);font-family:Cinzel,serif;font-size:2.8rem;font-weight:900;letter-spacing:.3em;margin-bottom:6px;text-shadow:0 0 40px #c9a84c4d}.lobby-subtitle{color:#f5f0e880;font-size:.9rem;font-style:italic;letter-spacing:.15em;margin-bottom:28px;text-transform:uppercase}.lobby-divider{align-items:center;color:#c9a84c66;display:flex;gap:12px;margin-bottom:28px}.lobby-divider-line{background:linear-gradient(90deg,#0000,#c9a84c4d,#0000);flex:1 1;height:1px}.lobby-field{margin-bottom:18px;text-align:left}.lobby-field label{color:var(--gold);display:block;font-family:Cinzel,serif;font-size:.65rem;letter-spacing:.2em;margin-bottom:8px;opacity:.8}.lobby-field input{background:#ffffff0a;border:1px solid #c9a84c33;border-radius:var(--radius);color:var(--ivory);font-size:1rem;padding:12px 16px;transition:border-color .2s;width:100%}.lobby-field input:focus{background:#ffffff0f;border-color:#c9a84c99}.lobby-field input::placeholder{color:#f5f0e840;font-style:italic}.room-code-input{font-family:Cinzel,serif!important;font-size:1.2rem!important;letter-spacing:.3em!important;text-align:center}.lobby-tabs{background:#0000004d;border-radius:var(--radius);display:flex;gap:4px;margin-bottom:20px;padding:4px}.tab-btn{background:#0000;border:none;border-radius:2px;color:#f5f0e866;cursor:pointer;flex:1 1;font-family:Cinzel,serif;font-size:.7rem;letter-spacing:.1em;padding:9px;transition:all .2s}.tab-btn.active{background:#c9a84c26;border:1px solid #c9a84c40;color:var(--gold)}.lobby-error{color:#e05c5c;font-size:.85rem;margin-bottom:14px;text-align:center}.lobby-btn{font-size:.8rem;margin-bottom:24px;padding:14px;width:100%}.lobby-footer{color:#f5f0e840;font-size:.8rem;letter-spacing:.05em}.chess-board-container{align-items:center;display:flex;flex-direction:column;-webkit-user-select:none;user-select:none}.board-files-label{color:#c9a84c80;display:flex;font-family:Cinzel,serif;font-size:.7rem;justify-content:space-around;margin-bottom:4px;padding:0 24px;width:480px}.board-files-label.bottom{margin-bottom:0;margin-top:4px}.board-with-ranks{align-items:center;display:flex;gap:4px}.board-ranks-label{align-items:center;color:#c9a84c80;display:flex;flex-direction:column;font-family:Cinzel,serif;font-size:.7rem;height:480px;justify-content:space-around;width:20px}.chess-board{border:2px solid #c9a84c4d;border-radius:2px;box-shadow:0 0 0 1px #c9a84c1a,0 20px 60px #000c;display:grid;grid-template-columns:repeat(8,60px);grid-template-rows:repeat(8,60px);overflow:hidden}.square{align-items:center;cursor:pointer;display:flex;height:60px;justify-content:center;position:relative;transition:filter .1s;width:60px}.square.light{background-color:var(--white-sq)}.square.dark{background-color:var(--black-sq)}.square.selected{background-color:#c9a84c99!important}.square.last-move{background-color:#c9a84c40!important}.square.in-check{background:radial-gradient(circle,#dc3232e6 0,#b41e1e80 100%)!important}.square:hover{filter:brightness(1.1)}.dot-hint{background:#c9a84c99;border-radius:50%;height:18px;width:18px}.capture-hint,.dot-hint{pointer-events:none;position:absolute;z-index:1}.capture-hint{border:3px solid #c9a84c99;border-radius:50%;box-sizing:border-box;height:100%;width:100%}.piece{cursor:pointer;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4));font-size:2.4rem;line-height:1;position:relative;transition:transform .1s;z-index:2}.piece:hover{transform:scale(1.05)}@media(max-width:600px){.chess-board{grid-template-columns:repeat(8,44px);grid-template-rows:repeat(8,44px)}.square{height:44px;width:44px}.piece{font-size:1.8rem}.board-files-label{width:352px}.board-ranks-label{height:352px}}.move-history{background:var(--dark-3);border:1px solid #c9a84c1a;border-radius:6px;display:flex;flex:1 1;flex-direction:column;max-height:400px;min-height:200px;overflow:hidden}.move-history-header{align-items:center;background:#c9a84c0d;border-bottom:1px solid #c9a84c1a;color:var(--gold);display:flex;font-family:Cinzel,serif;font-size:.7rem;gap:8px;letter-spacing:.15em;padding:12px 16px;text-transform:uppercase}.move-list{flex:1 1;overflow-y:auto;padding:8px;scrollbar-color:#c9a84c33 #0000;scrollbar-width:thin}.move-list::-webkit-scrollbar{width:4px}.move-list::-webkit-scrollbar-thumb{background:#c9a84c33;border-radius:2px}.move-pair{align-items:center;border-radius:3px;display:flex;font-size:.9rem;gap:8px;padding:3px 8px}.move-pair:hover{background:#ffffff08}.move-num{color:#f5f0e84d;font-family:Cinzel,serif;font-size:.75rem;min-width:24px}.move-san{border-radius:2px;flex:1 1;font-family:Crimson Pro,serif;padding:2px 6px}.white-move{color:var(--ivory)}.black-move{color:#f5f0e899}.no-moves{color:#f5f0e833;font-size:.9rem;font-style:italic;padding:20px;text-align:center}.player-card{align-items:center;background:var(--dark-3);border:1px solid #c9a84c1a;border-radius:6px;display:flex;gap:12px;padding:12px 16px;transition:all .3s ease;width:100%}.player-card.active{border-color:#c9a84c66;box-shadow:0 0 20px #c9a84c1a}.player-card.winner{background:linear-gradient(135deg,var(--dark-3),#c9a84c14);border-color:var(--gold)}.player-avatar{filter:drop-shadow(0 2px 6px rgba(201,168,76,.3));font-size:1.8rem;min-width:40px;text-align:center}.player-info{flex:1 1}.player-name{align-items:center;color:var(--ivory);display:flex;font-family:Cinzel,serif;font-size:.9rem;gap:8px}.player-color{color:#f5f0e859;font-size:.7rem;letter-spacing:.1em;margin-top:2px;text-transform:uppercase}.you-badge{background:#c9a84c33;border:1px solid #c9a84c4d;border-radius:2px;color:var(--gold);font-size:.55rem;letter-spacing:.15em;padding:1px 6px}.thinking-dots{align-items:center;display:flex;gap:4px}.thinking-dots span{animation:pulse 1.2s ease-in-out infinite;background:var(--gold);border-radius:50%;height:5px;width:5px}.thinking-dots span:nth-child(2){animation-delay:.2s}.thinking-dots span:nth-child(3){animation-delay:.4s}@keyframes pulse{0%,80%,to{opacity:.2;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.winner-icon{font-size:1.2rem}.game-layout{display:grid;grid-template-areas:"header header header" "main main sidebar";grid-template-columns:1fr auto 280px;grid-template-rows:auto 1fr;min-height:100vh}.game-header{align-items:center;background:#0000004d;border-bottom:1px solid #c9a84c1a;display:flex;grid-area:header;justify-content:space-between;padding:16px 28px}.game-logo{color:var(--gold);font-family:Cinzel,serif;font-size:1.1rem;font-weight:700;letter-spacing:.2em}.room-badge{align-items:center;background:var(--dark-3);border:1px solid #c9a84c40;border-radius:4px;cursor:pointer;display:flex;gap:10px;padding:8px 16px;transition:all .2s}.room-badge:hover{border-color:#c9a84c80}.room-label{color:#c9a84c80;font-size:.6rem;letter-spacing:.2em}.room-code,.room-label{font-family:Cinzel,serif}.room-code{color:var(--gold);font-size:1rem;font-weight:700;letter-spacing:.3em}.copy-hint{color:#c9a84c66;font-size:.8rem}.leave-btn{font-size:.7rem;padding:8px 18px}.game-main{flex-direction:column;gap:12px;grid-area:main;padding:20px 28px}.board-area,.game-main{align-items:center;display:flex;justify-content:center}.board-area{position:relative}.game-message{background:var(--dark-4);border:1px solid #c9a84c4d;border-radius:4px;color:var(--gold);font-family:Cinzel,serif;font-size:.8rem;left:50%;padding:8px 20px;position:absolute;top:-48px;transform:translateX(-50%);white-space:nowrap;z-index:10}.game-message.final{background:linear-gradient(135deg,var(--dark-3),#c9a84c1a);border-color:var(--gold);box-shadow:0 4px 20px #c9a84c33;font-size:.9rem;padding:10px 28px}.game-sidebar{background:#0003;border-left:1px solid #c9a84c1a;gap:16px;grid-area:sidebar;padding:20px 16px}.action-buttons,.game-sidebar{display:flex;flex-direction:column}.action-buttons{gap:8px}.action-buttons .btn-primary,.action-buttons .btn-secondary{width:100%}.resign-btn{border-color:#c850504d;color:#dc7878cc}.resign-btn:hover{background:#c8505014;border-color:#c8505099;color:#dc7878}@media(max-width:900px){.game-layout{grid-template-areas:"header" "main" "sidebar";grid-template-columns:1fr}.game-sidebar{border-left:none;border-top:1px solid #c9a84c1a}}:root{--gold:#c9a84c;--gold-light:#e8c87a;--gold-dark:#8b6914;--cream:#f5f0e8;--ivory:#faf7f0;--dark:#0d0d0d;--dark-2:#141414;--dark-3:#1e1c18;--dark-4:#252220;--dark-5:#2e2b25;--white-sq:#e8d5b7;--black-sq:#6b4c2a;--shadow:0 8px 40px #000c;--radius:4px}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#0d0d0d;background-color:var(--dark);color:#f5f0e8;color:var(--cream);font-family:Crimson Pro,serif;min-height:100vh;overflow-x:hidden}body:before{background:radial-gradient(ellipse at 20% 50%,#c9a84c0a 0,#0000 60%),radial-gradient(ellipse at 80% 20%,#c9a84c08 0,#0000 50%);content:"";inset:0;pointer-events:none;position:fixed;z-index:0}.app{align-items:center;display:flex;justify-content:center;min-height:100vh;position:relative;z-index:1}h1,h2,h3{letter-spacing:.05em}button,h1,h2,h3{font-family:Cinzel,serif}button{border:none;cursor:pointer;outline:none;transition:all .2s ease}input{font-family:Crimson Pro,serif;outline:none}.btn-primary{background:linear-gradient(135deg,#8b6914,#c9a84c,#8b6914);background:linear-gradient(135deg,var(--gold-dark),var(--gold),var(--gold-dark));border-radius:4px;border-radius:var(--radius);box-shadow:0 4px 20px #c9a84c4d;color:#0d0d0d;color:var(--dark);font-size:.85rem;font-weight:700;letter-spacing:.15em;padding:12px 32px;text-transform:uppercase;transition:all .3s ease}.btn-primary:hover{box-shadow:0 6px 30px #c9a84c80;transform:translateY(-1px)}.btn-secondary{background:#0000;border:1px solid #c9a84c66;border-radius:4px;border-radius:var(--radius);color:#c9a84c;color:var(--gold);font-size:.8rem;font-weight:600;letter-spacing:.12em;padding:10px 28px;text-transform:uppercase;transition:all .2s ease}.btn-secondary:hover{background:#c9a84c14;border-color:#c9a84c;border-color:var(--gold)}
/*# sourceMappingURL=main.62e5abb5.css.map*/