body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:0;padding:0}*,:after,:before{box-sizing:border-box}.main-content{margin:0 auto;max-width:1200px;padding:20px}nav{background:#007bff;padding:10px 20px}nav,nav a{color:#fff}nav a{margin-right:15px;text-decoration:none}nav a:hover{text-decoration:underline}a{color:#007bff;text-decoration:none}a:hover{text-decoration:underline}button{background-color:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:10px 20px}button:hover{background-color:#0056b3}input,select,textarea{border:1px solid #ddd;border-radius:5px;margin-bottom:10px;padding:10px}table{border-collapse:collapse;width:100%}td,th{border:1px solid #ddd;padding:10px}.text-center{text-align:center}.hidden{display:none}.player-wrapper{margin:0 auto;max-width:800px;padding-top:56.25%;position:relative;width:100%}.react-player{left:0;position:absolute;top:0}.module-card{border:1px solid #ddd;box-shadow:0 4px 8px #0000001a;box-sizing:border-box;float:left;margin:16px;padding:16px;width:calc(33.33% - 32px)}.module-actions,.module-video{margin-top:16px}.course-modules-page:after{clear:both;content:"";display:table}.delete-button,.edit-button{margin-right:10px}.course-modules-page{background-color:#f9f9f9;border-radius:8px;box-shadow:0 4px 8px #0000001a;margin:auto;max-width:1200px;padding:20px}.page-title{font-size:2.5em;font-weight:700;margin-bottom:20px}.loading,.page-title{color:#333;text-align:center}.loading{font-size:1.5em}.module-list{margin-top:20px}.add-module-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;display:block;font-size:1em;margin:10px auto 20px;padding:10px 20px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.add-module-button:hover{background-color:#0056b3}.module-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.module-card h3{color:#333;margin-top:0}.module-card p{color:#555}.module-actions{display:flex;justify-content:flex-end;margin-top:10px}.delete-button,.edit-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-left:10px;padding:10px 15px}.delete-button:hover,.edit-button:hover{background-color:#0056b3}.module-form{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.module-form input,.module-form textarea{border:1px solid #ddd;border-radius:4px;display:block;margin:10px;padding:10px;width:calc(100% - 20px)}.submit-button{background-color:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:10px 20px}.submit-button:hover{background-color:#218838}.module-video{margin-top:20px}.navbar{background:linear-gradient(135deg,#1a1a2e,#16213e);box-shadow:0 4px 20px #0000004d;padding:0;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.navbar-container{align-items:center;display:flex;height:70px;justify-content:space-between;margin:0 auto;max-width:1400px;padding:0 24px}.navbar-brand{align-items:center;display:flex;gap:12px;text-decoration:none;transition:transform .3s ease}.navbar-brand:hover{transform:scale(1.02)}.brand-icon{filter:drop-shadow(0 0 8px rgba(255,193,7,.5));font-size:32px}.brand-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#ffc107,#ff9800);-webkit-background-clip:text;background-clip:text;font-size:22px;font-weight:700;letter-spacing:-.5px}.navbar-menu{flex:1 1;gap:16px;justify-content:space-between;margin-left:48px}.nav-links,.navbar-menu{align-items:center;display:flex}.nav-links{gap:8px}.nav-link{align-items:center;border-radius:8px;color:#b0b0c0;display:flex;font-size:15px;font-weight:500;gap:6px;padding:10px 18px;position:relative;text-decoration:none;transition:all .3s ease}.nav-link:hover{background:#ffffff1a;color:#fff}.nav-link.active{background:#ffc10726;color:#ffc107}.nav-link.active:after{background:#ffc107;border-radius:3px;bottom:0;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:30px}.nav-icon{font-size:16px}.admin-link{color:#ff6b6b}.admin-link:hover{background:#ff6b6b26}.nav-actions{gap:16px}.cart-btn,.nav-actions{align-items:center;display:flex}.cart-btn{border-radius:8px;color:#b0b0c0;font-size:15px;font-weight:500;gap:6px;padding:10px 16px;position:relative;text-decoration:none;transition:all .3s ease}.cart-btn:hover{background:#ffffff1a;color:#fff}.cart-icon{font-size:18px}.auth-buttons{align-items:center;display:flex;gap:12px}.auth-btn{border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;text-decoration:none;transition:all .3s ease}.login-btn{background:#0000;border:2px solid #ffffff4d;color:#fff}.login-btn:hover{background:#ffffff1a;border-color:#ffffff80}.register-btn{background:linear-gradient(135deg,#ffc107,#ff9800);border:none;box-shadow:0 4px 15px #ffc1074d;color:#1a1a2e}.register-btn:hover{box-shadow:0 6px 20px #ffc10766;transform:translateY(-2px)}.user-menu{gap:12px}.profile-btn,.user-menu{align-items:center;display:flex}.profile-btn{background:#ffffff1a;border-radius:30px;gap:10px;padding:6px 16px 6px 6px;text-decoration:none;transition:all .3s ease}.profile-btn:hover{background:#ffffff26}.profile-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;font-size:16px;font-weight:600;height:36px;justify-content:center;width:36px}.profile-name{color:#fff;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-btn,.profile-name{font-size:14px;font-weight:500}.logout-btn{background:#ff6b6b33;border:none;border-radius:8px;color:#ff6b6b;cursor:pointer;padding:10px 20px;transition:all .3s ease}.logout-btn:hover{background:#ff6b6b4d}.mobile-toggle{background:#0000;border:none;cursor:pointer;display:none;padding:8px}.hamburger{display:flex;flex-direction:column;gap:5px;width:24px}.hamburger span{background:#fff;border-radius:3px;display:block;height:3px;transition:all .3s ease}.hamburger.open span:first-child{transform:rotate(45deg) translate(5px,5px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}@media (max-width:900px){.navbar-container{height:60px;padding:0 16px}.mobile-toggle{display:block}.navbar-menu{background:linear-gradient(135deg,#1a1a2e,#16213e);bottom:0;flex-direction:column;gap:24px;justify-content:flex-start;left:0;margin-left:0;padding:24px;position:fixed;right:0;top:60px;transform:translateX(-100%);transition:transform .3s ease}.navbar-menu.active{transform:translateX(0)}.nav-links{flex-direction:column;gap:8px;width:100%}.nav-link{font-size:16px;padding:14px 20px;width:100%}.nav-actions{flex-direction:column;gap:16px;width:100%}.cart-btn{background:#ffffff0d;font-size:16px;justify-content:center;padding:14px 20px;width:100%}.auth-buttons{flex-direction:column;width:100%}.auth-btn{font-size:16px;padding:14px 24px;text-align:center;width:100%}.user-menu{flex-direction:column;gap:12px;width:100%}.profile-btn{justify-content:center;padding:12px 20px;width:100%}.logout-btn{padding:14px 20px;width:100%}.brand-text{font-size:18px}.brand-icon{font-size:26px}}@media (max-width:480px){.cart-text,.profile-name{display:none}}.course-details-container{background:#fff;border:1px solid #e8e8e8;border-radius:12px;box-shadow:0 2px 8px #00000014;margin:0;max-width:100%;overflow:hidden;padding:0;transition:all .3s ease}.course-details-container:hover{box-shadow:0 8px 25px #0000001f;transform:translateY(-4px)}.course-image{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;font-size:3rem;height:160px;justify-content:center;overflow:hidden;position:relative;width:100%}.course-image img{height:100%;object-fit:cover;width:100%}.course-image-placeholder{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;font-size:3rem;height:100%;justify-content:center;width:100%}.course-category-badge{background:#0009;border-radius:4px;color:#fff;font-size:.75rem;font-weight:600;left:10px;padding:4px 10px;position:absolute;text-transform:capitalize;top:10px}.course-card-content{padding:16px}.course-title{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:#1a1a1a;display:-webkit-box;font-size:1.1rem;font-weight:700;line-height:1.3;margin-bottom:8px;overflow:hidden}.course-author{color:#666;font-size:.9rem;margin-bottom:12px}.course-author span{color:#333}.course-subtitle{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:#666;display:-webkit-box;font-size:.9rem;line-height:1.5;margin-bottom:0;overflow:hidden}.course-meta{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:15px}.course-meta-item{align-items:center;color:#888;display:flex;font-size:.8rem;gap:6px}.course-footer{background:#fafafa;border-top:1px solid #eee;flex-direction:column;gap:12px;padding:16px}.course-price{color:#1a1a1a;font-size:1.2rem}.course-price-free{color:#2ecc71;font-size:1rem;font-weight:700}.enrollment-notice{align-items:center;color:#2ecc71;display:flex;font-size:.8rem;gap:6px;margin-top:0}.enrollment-notice:before{align-items:center;background:#e8f5e9;border-radius:50%;color:#2ecc71;content:"✓";display:inline-flex;font-size:.65rem;height:16px;justify-content:center;width:16px}.delete-button,.edit-button,.enroll-button,.view-modules-button{align-items:center;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:6px;justify-content:center;padding:10px 16px;text-decoration:none;transition:all .2s ease}.view-modules-button{background:#2563eb;width:100%}.view-modules-button:hover{background:#1d4ed8}.enroll-button{background:#16a34a;width:100%}.enroll-button:hover{background:#15803d}.edit-delete-buttons{display:flex;gap:8px;width:100%}.edit-button{background:#f59e0b;flex:1 1}.edit-button:hover{background:#d97706}.delete-button{background:#dc2626;flex:1 1}.delete-button:hover{background:#b91c1c}.enrolled-students{border-top:1px solid #eee;display:none;padding:12px 16px}.course-details-container:hover .enrolled-students{display:block}.enrolled-students h4{align-items:center;color:#333;display:flex;font-size:.85rem;gap:6px;margin-bottom:8px}.enrolled-students h4:before{content:"👥"}.enrolled-students ul{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}.enrolled-students li{padding:0}.enrolled-students li a{background:#f0f0f0;border-radius:15px;color:#2563eb;display:inline-block;font-size:.75rem;font-weight:500;padding:4px 10px;text-decoration:none;transition:all .2s ease}.enrolled-students li a:hover{background:#e0e7ff;color:#1d4ed8}.course-enrollment-status{display:flex;flex-direction:column;gap:6px;width:100%}.centered-link{text-align:center}@media (max-width:768px){.course-details-container{border-radius:10px}.course-price,.course-title{font-size:1rem}}.search-bar-container{display:flex;flex-direction:column;gap:10px}.search-bar-input{border:1px solid #ccc;border-radius:4px;padding:10px;width:100%}.search-bar-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:10px 15px;transition:background-color .3s}.search-bar-button:hover{background-color:#0056b3}.title-search-bar-container{display:flex;flex-direction:column;gap:10px}.title-search-bar-select{background-color:#fff;border:1px solid #ccc;border-radius:4px;cursor:pointer;padding:10px;width:100%}.title-search-bar-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:10px 15px;transition:background-color .3s}.title-search-bar-button:hover{background-color:#0056b3}.chess-analyzer{background:#f5f5f5;border-radius:16px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.analyzer-header{align-items:center;background:#fff;border:1px solid #e8e8e8;border-radius:12px;box-shadow:0 2px 8px #00000014;color:#333;display:flex;justify-content:space-between;margin-bottom:20px;padding:15px 20px}.analyzer-header h2{font-size:1.8rem;font-weight:700;margin:0}.ai-status{align-items:center;border-radius:20px;display:flex;font-size:.9rem;font-weight:600;gap:8px;padding:8px 16px;text-transform:uppercase}.ai-status.online{background:#2ecc7133;color:#2ecc71}.ai-status.degraded{background:#f1c40f33;color:#f1c40f}.ai-status.offline{background:#e74c3c33;color:#e74c3c}.status-dot{animation:pulse 2s infinite;background:currentColor;border-radius:50%;height:10px;width:10px}.mode-selector{display:flex;gap:10px;justify-content:center;margin-bottom:20px}.mode-btn{background:#f0f0f0;border:none;border-radius:8px;color:#333;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.mode-btn:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.mode-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.play-dropdown-container{position:relative}.play-dropdown-menu{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 20px #00000026;left:0;margin-top:5px;min-width:200px;overflow:hidden;position:absolute;top:100%;z-index:1000}.dropdown-item{background:#0000;border:none;color:#333;cursor:pointer;display:block;font-size:.95rem;padding:12px 16px;text-align:left;transition:background .2s ease;width:100%}.dropdown-item:hover:not(.disabled){background:#f0f0f0}.dropdown-item.disabled{color:#aaa;cursor:not-allowed}.analyzer-content{gap:30px}.analyzer-content,.board-with-eval{align-items:flex-start;display:flex}.board-with-eval{gap:15px}.board-column{align-items:center;display:flex;flex-direction:column}.eval-bar-wrapper{align-items:stretch;display:flex;gap:8px;height:450px}.eval-bar{background:#2a2a2a;border:2px solid #444;border-radius:14px;box-shadow:inset 0 2px 8px #00000080,0 4px 12px #0000004d;cursor:pointer;height:100%;overflow:hidden;position:relative;width:28px}.eval-bar:hover{border-color:#667eea;box-shadow:inset 0 2px 8px #00000080,0 4px 16px #667eea66}.eval-bar-inner{display:flex;flex-direction:column-reverse;height:100%;position:relative;width:100%}.eval-white{align-items:flex-start;background:linear-gradient(0deg,#e8e8e8,#fff);padding-top:5px}.eval-black,.eval-white{display:flex;justify-content:center;transition:height .4s cubic-bezier(.4,0,.2,1)}.eval-black{align-items:flex-end;background:linear-gradient(180deg,#1a1a1a,#3a3a3a);padding-bottom:5px}.eval-score-inside{color:inherit;font-size:.65rem;font-weight:700;text-orientation:mixed;writing-mode:vertical-rl}.eval-white .eval-score-inside{color:#333}.eval-black .eval-score-inside{color:#ddd}.eval-marker{background:#ff6b6b;border-radius:2px;box-shadow:0 0 8px #ff6b6bcc;height:3px;left:-3px;position:absolute;transition:bottom .4s cubic-bezier(.4,0,.2,1);width:calc(100% + 6px)}.eval-labels{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:space-between;padding:5px 0}.eval-label-bottom,.eval-label-top{font-size:1.2rem;opacity:.8}.eval-score-display{background:#f0f0f0;border-radius:6px;box-shadow:0 2px 6px #0000001a;color:#333;font-size:.9rem;font-weight:700;padding:6px 8px;transition:all .3s ease}.eval-score-display.white-winning{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.eval-score-display.black-winning{background:linear-gradient(135deg,#f44336,#d32f2f);color:#fff}.board-wrapper{flex-shrink:0;height:450px;width:450px}.game-message{background:#f8f9fa;border-radius:8px;box-sizing:border-box;font-size:.95rem;font-weight:500;margin-top:15px;max-width:450px;padding:12px 24px;text-align:center;transition:all .3s ease;width:100%}.game-message.thinking{animation:thinking-pulse 1.5s infinite;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.game-message.edit-mode{background:linear-gradient(135deg,#ff9a56,#ff6b35);color:#fff}@keyframes thinking-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.02)}}.control-buttons{flex-wrap:wrap;gap:10px;justify-content:center;margin-top:15px}.ctrl-btn{border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 18px;transition:all .3s ease}.ctrl-btn:disabled{cursor:not-allowed;opacity:.5}.ctrl-btn:not(:disabled):hover{box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.ctrl-btn.new-game{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.ctrl-btn.undo{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff}.ctrl-btn.analyze{background:linear-gradient(135deg,#43e97b,#38f9d7);color:#fff}.ctrl-btn.copy{background:linear-gradient(135deg,#fa709a,#fee140);color:#fff}.ctrl-btn.clear{background:linear-gradient(135deg,#eb3349,#f45c43);color:#fff}.control-buttons.edit-controls{background:#ff6b351a;border:1px dashed #ff6b35;border-radius:10px;padding:12px}.fen-input-section{box-sizing:border-box;display:flex;gap:10px;margin-top:15px;max-width:450px;width:100%}.fen-input{border:2px solid #ddd;border-radius:8px;flex:1 1;font-size:.9rem;min-width:0;padding:10px 15px;transition:border-color .3s ease}.fen-input:focus{border-color:#667eea;outline:none}.fen-load-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .3s ease}.fen-load-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.analysis-section{display:flex;flex-direction:column;gap:15px;width:320px}.move-history{background:#f8f9fa;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:15px}.move-history h4{color:#333;font-size:1rem;margin:0 0 10px}.moves-list{display:flex;flex-wrap:wrap;gap:5px;max-height:120px;overflow-y:auto}.no-moves{color:#999;font-style:italic}.move-item{border-radius:4px;font-size:.85rem;font-weight:500;padding:4px 8px}.move-item.white{background:#fff;border:1px solid #ddd}.move-item.black{background:#333;color:#fff}.move-number{color:#666}.variations-panel{background:linear-gradient(135deg,#f5f7fa,#e4e8eb);border-radius:10px;box-shadow:0 2px 8px #00000014;overflow:hidden}.variations-panel.compact{padding:0}.variations-header{align-items:center;background:#667eea1a;cursor:pointer;display:flex;justify-content:space-between;padding:10px 14px;transition:background .2s ease}.variations-header:hover{background:#667eea33}.variations-title{color:#333;font-size:.9rem;font-weight:600}.variations-toggle{color:#667eea;font-size:.75rem}.variations-content{padding:8px}.variation-item{align-items:center;background:#fff;border-left:3px solid #0000;border-radius:6px;cursor:pointer;display:flex;gap:8px;margin-bottom:4px;padding:8px 10px;transition:all .2s ease}.variation-item.compact{padding:6px 10px}.variation-item:hover{box-shadow:0 2px 6px #0000001f;transform:translateX(3px)}.variation-item.best{background:linear-gradient(90deg,#2ecc711a,#fff);border-left-color:#2ecc71}.variation-rank{align-items:center;background:#667eea;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.7rem;font-weight:700;height:20px;justify-content:center;width:20px}.variation-move{color:#333;font-size:.9rem;font-weight:700;min-width:40px}.variation-score{background:#f0f0f0;border-radius:4px;color:#666;font-size:.8rem;font-weight:600;padding:2px 6px}.detailed-analysis{background:#fff;border:1px solid #eee;border-radius:12px;box-shadow:0 4px 16px #0000001a;padding:20px}.detailed-analysis h4{border-bottom:2px solid #667eea;color:#333;font-size:1.1rem;margin:0 0 15px;padding-bottom:10px}.analysis-row{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:8px 0}.analysis-row .label{color:#555;font-weight:600}.analysis-row .value{color:#333;font-weight:500}.analysis-row .value.warning{color:#e74c3c}.analysis-row .value.white-advantage{color:#2ecc71}.analysis-row .value.black-advantage{color:#e74c3c}.analysis-row.highlight{background:linear-gradient(90deg,#2ecc711a,#0000);border-radius:6px;margin:5px -10px;padding:10px}.analysis-row .best-move{color:#2ecc71;font-size:1.2rem;font-weight:700}.analysis-explanation{background:#f8f9fa;border-radius:8px;margin-top:10px;padding:10px}.analysis-explanation p{color:#555;line-height:1.5;margin:5px 0 0}.material-count{margin-top:10px}.material-bar{background:#f0f0f0;border-radius:6px;display:flex;justify-content:space-between;margin-top:5px;padding:10px}.black-material,.white-material{color:#333;font-weight:600}.threats-section{background:#e74c3c1a;border-left:3px solid #e74c3c;border-radius:8px;margin-top:10px;padding:10px}.threats-section ul{margin:5px 0 0;padding-left:20px}.threats-section li{color:#c0392b;font-size:.9rem;margin-bottom:5px}.close-analysis{background:#f0f0f0;border:none;border-radius:6px;cursor:pointer;font-weight:600;margin-top:15px;padding:10px;transition:background .3s ease;width:100%}.close-analysis:hover{background:#e0e0e0}@media (max-width:900px){.analyzer-content{align-items:center;flex-direction:column}.evaluation-bar-container{flex-direction:row;margin-bottom:15px;order:-1}.evaluation-bar{flex-direction:row;height:20px;width:300px}.evaluation-score{margin-left:10px;margin-top:0}.board-wrapper{height:350px;width:350px}.analysis-section{max-width:450px;width:100%}}@media (max-width:480px){.analyzer-header{flex-direction:column;gap:10px;text-align:center}.analyzer-header h2{font-size:1.4rem}.mode-selector{flex-direction:column}.mode-btn{width:100%}.board-wrapper{height:300px;width:300px}.control-buttons{flex-direction:column}.ctrl-btn{width:100%}}.homepage-container{background:linear-gradient(135deg,#f5f7fa,#e4e8eb);margin:0 auto;max-width:1400px;min-height:100vh;padding:20px}.hero-section{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);border-radius:20px;box-shadow:0 10px 40px #0003;color:#fff;display:flex;justify-content:space-between;margin-bottom:30px;padding:40px}.hero-content{flex:1 1}.hero-title{font-size:3rem;font-weight:800;margin:0 0 15px}.gradient-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2 50%,#f093fb);-webkit-background-clip:text;background-clip:text}.hero-subtitle{align-items:center;color:#b8c5d6;display:flex;flex-wrap:wrap;font-size:1.3rem;gap:15px;margin:0 0 10px}.username-highlight{color:#667eea;font-weight:700}.rank-badge{background:linear-gradient(135deg,#f093fb,#f5576c);border-radius:20px;color:#fff;font-size:.9rem;font-weight:600;padding:5px 15px}.hero-description{color:#8899a6;font-size:1rem;line-height:1.6;margin:0;max-width:500px}.hero-stats{display:flex;gap:20px}.stat-card{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #ffffff1a;border-radius:16px;display:flex;flex-direction:column;padding:20px 25px;transition:transform .3s ease}.stat-card:hover{transform:translateY(-5px)}.stat-icon{font-size:2rem;margin-bottom:8px}.stat-value{font-size:1.2rem;font-weight:700}.stat-label{color:#8899a6;font-size:.85rem}.main-content{display:flex;gap:30px}.chess-main-column{flex:1 1;min-width:0}.tab-navigation{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000000d;display:flex;gap:10px;margin-bottom:20px;padding:10px}.tab-btn{background:#0000;border:none;border-radius:8px;color:#666;flex:1 1;padding:12px 20px}.tab-btn:hover{background:#f0f0f0}.tab-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 15px #667eea66;color:#fff}.tab-content{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:25px}.courses-section h2{color:#333;margin:0 0 20px}.course-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.empty-state{color:#888;padding:60px 20px;text-align:center}.empty-icon{display:block;font-size:4rem;margin-bottom:15px}.empty-state p{font-size:1.1rem;margin-bottom:20px}.browse-btn{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;display:inline-block;font-weight:600;padding:12px 30px;text-decoration:none;transition:all .3s ease}.browse-btn:hover{box-shadow:0 4px 15px #667eea66;transform:translateY(-2px)}.chesstv-section h2{color:#333;margin:0 0 20px}.broadcasts-grid-home{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(2,1fr);margin-bottom:20px}.broadcast-card-home{background:#fff;border:1px solid #eee;border-radius:12px;color:inherit;overflow:hidden;text-decoration:none;transition:all .3s ease}.broadcast-card-home:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-3px)}.broadcast-card-home.live{border-color:#e74c3c}.broadcast-image-home{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e);display:flex;height:100px;justify-content:center;overflow:hidden;position:relative}.broadcast-image-home img{height:100%;object-fit:cover;width:100%}.broadcast-image-home .no-image{align-items:center;color:#ffffff80;display:flex;font-size:2.5rem;height:100%;justify-content:center;width:100%}.image-placeholder-home{color:#ffffff4d;font-size:2.5rem}.live-badge-home{animation:pulse-badge 2s infinite;background:#e74c3c;border-radius:10px;color:#fff;font-size:.7rem;font-weight:700;padding:3px 8px;position:absolute;right:8px;top:8px}.broadcast-info-home{padding:12px}.broadcast-info-home h4{color:#333;font-size:.9rem;margin:0 0 5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.broadcast-info-home .round-name{color:#666;font-size:.8rem}.view-all-btn{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;display:inline-block;font-weight:600;padding:10px 20px;text-decoration:none;transition:all .3s ease}.view-all-btn:hover{box-shadow:0 4px 15px #667eea66;transform:translateY(-2px)}.events-section h2{color:#333;margin:0 0 20px}.events-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.event-card-new{background:linear-gradient(135deg,#f5f7fa,#fff);border:1px solid #eee;border-radius:12px;padding:20px;position:relative;transition:all .3s ease}.event-card-new:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-5px)}.event-badge{border-radius:20px;font-size:.75rem;font-weight:700;padding:5px 12px;position:absolute;right:15px;text-transform:uppercase;top:15px}.event-badge.live{animation:pulse-badge 2s infinite;background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff}.event-badge.upcoming{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff}@keyframes pulse-badge{0%,to{opacity:1}50%{opacity:.7}}.event-card-new h4{color:#333;font-size:1.2rem;margin:0 0 15px}.event-meta{display:flex;flex-direction:column;gap:8px;margin-bottom:15px}.event-meta span{color:#666;font-size:.9rem}.event-card-new p{color:#666;font-size:.95rem;line-height:1.5;margin-bottom:15px}.rsvp-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px;transition:all .3s ease;width:100%}.rsvp-btn:hover{box-shadow:0 4px 15px #667eea66;transform:translateY(-2px)}.sidebar-column{display:flex;flex-direction:column;flex-shrink:0;gap:20px;width:320px}.search-section{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:20px}.search-section h3{color:#333;font-size:1.2rem;margin:0 0 8px}.search-hint{color:#888;font-size:.9rem;margin:0 0 15px}.search-wrapper,.title-search-wrapper{margin-bottom:15px}.quick-links{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:20px}.quick-links h3{color:#333;font-size:1.2rem;margin:0 0 15px}.quick-link{align-items:center;background:#f8f9fa;border-radius:10px;color:#333;display:flex;gap:12px;margin-bottom:10px;padding:12px 15px;text-decoration:none;transition:all .3s ease}.quick-link:hover{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;transform:translateX(5px)}.link-icon{font-size:1.2rem}.ai-features,.features-card{background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:16px;box-shadow:0 4px 20px #00000026;color:#fff;padding:20px}.ai-features h3,.features-card h3{font-size:1.2rem;margin:0 0 15px}.feature-list{list-style:none;margin:0;padding:0}.feature-list li{align-items:center;border-bottom:1px solid #ffffff1a;color:#b8c5d6;display:flex;font-size:.95rem;gap:10px;padding:10px 0}.feature-list li:last-child{border-bottom:none}.feature-icon{font-size:1rem}@media (max-width:1100px){.main-content{flex-direction:column}.sidebar-column{flex-direction:row;flex-wrap:wrap;width:100%}.sidebar-column>div{flex:1 1;min-width:280px}}@media (max-width:768px){.hero-section{flex-direction:column;padding:30px 20px;text-align:center}.hero-title{font-size:2rem}.hero-subtitle{justify-content:center}.hero-description{margin:0 auto}.hero-stats{margin-top:25px}.sidebar-column,.tab-navigation{flex-direction:column}.sidebar-column>div{min-width:100%}}@media (max-width:480px){.homepage-container{padding:10px}.hero-stats{flex-direction:column;width:100%}.stat-card{width:100%}.events-grid{grid-template-columns:1fr}}.overlay{align-items:center;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0}.modal{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;max-width:500px;padding:20px;width:90%}.modal h2{color:#333;margin-bottom:15px}.modal p{color:#666;margin-bottom:20px}.modal button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;margin-right:10px;padding:10px 15px;transition:background-color .3s ease}.modal button:hover{background-color:#0056b3}.courses-container{background:#f5f5f5;min-height:100vh;padding:40px 20px}.courses-header{margin-bottom:30px;margin-left:auto;margin-right:auto;max-width:1400px;text-align:center}.courses-header h1{color:#1a1a2e;font-size:2.5rem;font-weight:700;margin-bottom:10px}.courses-header p{color:#666;font-size:1.1rem;margin:0 auto;max-width:600px}.category-tabs{border-bottom:1px solid #e0e0e0;display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:40px;margin-left:auto;margin-right:auto;max-width:1400px;padding:0 20px 20px}.category-tab{background:#0000;border:none;color:#666;cursor:pointer;font-size:1rem;font-weight:500;padding:10px 20px;position:relative;transition:all .3s ease}.category-tab:hover{color:#1a1a2e}.category-tab.active{color:#2563eb}.category-tab.active:after{background:#2563eb;border-radius:3px 3px 0 0;bottom:-21px;content:"";height:3px;left:0;position:absolute;right:0}.course-list{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin:0 auto;max-width:1400px;padding:0 20px}.blog-container{margin:auto;max-width:800px;padding:20px}.blog-post{background-color:#f9f9f9;border:1px solid #ddd;border-radius:8px;margin-bottom:40px;padding:20px}.blog-post h2{color:#333;cursor:pointer;transition:color .3s ease}.blog-post h2:hover{color:#007bff}.blog-post img{border-radius:4px;height:auto;margin-top:10px;width:100%}.blog-post p{color:#666;line-height:1.6}.blog-post em{color:#999;font-size:.9em}form{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;margin:auto;max-width:300px;padding:20px}form input{border:1px solid #ddd;border-radius:4px;font-size:16px;margin-bottom:15px;padding:10px}form input::placeholder{color:#999}form button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;padding:10px;transition:background-color .3s}form button:hover{background-color:#0056b3}.cart-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;font-family:Arial,sans-serif;margin:2rem auto;max-width:800px;padding:1rem}.cart-items{border-bottom:1px solid #eaeaea;padding-bottom:1rem}.cart-item,.cart-items{margin-bottom:1rem}.course-title{color:#333;font-size:1.2em}.course-description{color:#666;margin:.5rem 0}.course-footer{align-items:center;display:flex;justify-content:space-between}.course-price{color:#333;font-weight:700}.cart-checkout{text-align:right}.total-amount{font-size:1.2em;margin:1rem 0}.total-price{font-weight:700}.checkout-button{background-color:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:16px;padding:10px 20px;transition:background-color .3s ease}.checkout-button:hover{background-color:#0056b3}.profile-form{max-width:400px}.profile-form,.profile-info{display:flex;flex-direction:column}.profile-info{margin-bottom:10px}.profile-info label{margin-bottom:5px}.profile-info input[type=text],.profile-info textarea{border:1px solid #ccc;box-sizing:border-box;padding:8px;width:100%}body{background-color:#f4f4f4;color:#444;font-family:Helvetica Neue,Arial,sans-serif;line-height:1.6;padding:20px}.container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:40px auto;max-width:600px;padding:20px}h1{font-size:24px;margin-bottom:20px}h1,h2{color:#333}h2{border-bottom:1px solid #eaeaea;font-size:20px;margin-top:30px;padding-bottom:5px}.profile-info{font-size:16px;margin:10px 0}.profile-info span{font-weight:700}.button{background-color:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:16px;padding:10px 20px}.button:hover{background-color:#0056b3}.list{list-style-type:none;padding-left:0}.list-item{padding:5px 0}.email{font-style:italic}.puzzle-page{background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);min-height:100vh;padding:80px 20px 20px}.puzzle-container{display:flex;flex-wrap:wrap;gap:30px;margin:0 auto;max-width:1200px}.puzzle-stats-panel{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;flex:0 0 250px;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;padding:24px;position:-webkit-sticky;position:sticky;top:100px}.puzzle-stats-panel h2{color:#fff;font-size:1.3rem;margin-bottom:20px;text-align:center}.stat-item{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:12px 0}.stat-item:last-child{border-bottom:none}.stat-label{color:#8892b0;font-size:.9rem}.stat-value{color:#fff;font-size:1.1rem;font-weight:600}.stat-value.rating{color:#64ffda;font-size:1.4rem}.stat-value.streak{color:#ff6b6b}.login-prompt{color:#8892b0;padding:20px 0;text-align:center}.login-prompt a{color:#64ffda;text-decoration:none}.login-prompt a:hover{text-decoration:underline}.puzzle-main{flex:1 1;min-width:300px}.puzzle-info{margin-bottom:20px;text-align:center}.puzzle-info h1{color:#fff;font-size:2rem;margin-bottom:10px}.puzzle-meta{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.puzzle-rating{background:#64ffda33;border-radius:20px;color:#64ffda;font-size:.9rem;font-weight:600;padding:6px 16px}.puzzle-themes{color:#8892b0;font-size:.9rem;text-transform:capitalize}.puzzle-board{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;padding:15px}.puzzle-status{border-radius:12px;margin-bottom:20px;padding:20px;text-align:center;transition:all .3s ease}.puzzle-status.loading{background:#ffffff0d}.puzzle-status.playing{background:#2196f31a;border:1px solid #2196f34d}.puzzle-status.correct{background:#4caf501a;border:1px solid #4caf504d}.puzzle-status.wrong{background:#f443361a;border:1px solid #f443364d}.puzzle-status.complete{background:#64ffda1a;border:1px solid #64ffda4d}.status-message{color:#fff;font-size:1.2rem;margin:0}.rating-change{font-size:1.1rem;font-weight:600;margin-top:10px}.rating-change.positive{color:#4caf50}.rating-change.negative{color:#f44336}.puzzle-controls{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.puzzle-controls .btn{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-hint{background:#ffc10733;border:1px solid #ffc1074d;color:#ffc107}.btn-hint:hover:not(:disabled){background:#ffc1074d}.btn-hint:disabled{cursor:not-allowed;opacity:.5}.btn-next{background:linear-gradient(135deg,#64ffda,#00bcd4);color:#1a1a2e}.btn-next:hover{box-shadow:0 4px 15px #64ffda4d;transform:translateY(-2px)}.btn-retry{background:#ffffff1a;border:1px solid #fff3;color:#fff}.btn-retry:hover:not(:disabled){background:#fff3}.btn-retry:disabled{cursor:not-allowed;opacity:.5}.puzzle-solution{background:#f443361a;border:1px solid #f443364d;border-radius:12px;margin-top:20px;padding:20px;text-align:center}.puzzle-solution h3{color:#f44336;margin-bottom:10px}.puzzle-solution p{color:#fff;font-family:monospace;font-size:1rem}@media (max-width:900px){.puzzle-container{flex-direction:column}.puzzle-stats-panel{flex:none;position:static;width:100%}}@media (max-width:600px){.puzzle-page{padding:70px 10px 10px}.puzzle-info h1{font-size:1.5rem}.puzzle-controls .btn{font-size:.9rem;padding:10px 18px}}.turn-indicator{align-items:center;animation:pulse 2s infinite;border-radius:12px;display:flex;font-size:1.2rem;font-weight:600;gap:10px;justify-content:center;margin-bottom:15px;padding:12px 24px}.turn-indicator.white{background:linear-gradient(135deg,#f0f0f0,#d4d4d4);border:2px solid #fff;box-shadow:0 4px 15px #ffffff4d;color:#333}.turn-indicator.black{background:linear-gradient(135deg,#333,#1a1a1a);border:2px solid #555;box-shadow:0 4px 15px #00000080;color:#fff}.turn-icon{font-size:1.5rem}.turn-text{letter-spacing:1px;text-transform:uppercase}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.02)}}.puzzle-board-container{align-items:center;display:flex;flex-direction:column;justify-content:center;margin-bottom:20px}.leaderboard-page{background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);min-height:100vh;padding:100px 20px 20px}.leaderboard-container{margin:0 auto;max-width:1000px}.leaderboard-header{margin-bottom:30px;text-align:center}.leaderboard-header h1{color:#fff;font-size:2.5rem;margin-bottom:10px}.leaderboard-header p{color:#8892b0;font-size:1.1rem}.leaderboard-tabs{display:flex;gap:15px;justify-content:center;margin-bottom:30px}.tab-btn{background:#ffffff0d;border:2px solid #fff3;border-radius:30px;color:#8892b0;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 28px;transition:all .3s ease}.tab-btn:hover{border-color:#64ffda80;color:#fff}.tab-btn.active{background:linear-gradient(135deg,#64ffda,#00bcd4);border-color:#0000;color:#1a1a2e}.user-rank-card{align-items:center;background:#64ffda1a;border:1px solid #64ffda4d;border-radius:16px;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:30px;padding:20px 30px}.your-rank-label{color:#64ffda;font-size:.9rem;letter-spacing:1px;text-transform:uppercase}.your-rank-content{align-items:center;display:flex;flex-wrap:wrap;gap:30px}.rank-info{align-items:baseline;display:flex;gap:15px}.rank-number{color:#fff;font-size:2rem;font-weight:700}.rank-rating{color:#64ffda;font-size:1.5rem;font-weight:600}.rank-tier{font-size:1.1rem;font-weight:600}.rank-percentile{background:#ffffff1a;border-radius:20px;color:#fff;font-size:.9rem;padding:6px 14px}.leaderboard-table-container{background:#ffffff08;border:1px solid #ffffff1a;border-radius:16px;overflow:hidden}.empty-state,.loading{color:#8892b0;font-size:1.1rem;padding:60px;text-align:center}.leaderboard-table{border-collapse:collapse;width:100%}.leaderboard-table th{background:#ffffff0d;border-bottom:1px solid #ffffff1a;color:#8892b0;font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:16px 20px;text-align:left;text-transform:uppercase}.leaderboard-table td{border-bottom:1px solid #ffffff0d;color:#fff;padding:16px 20px}.leaderboard-table tr:hover{background:#ffffff08}.leaderboard-table tr.current-user{background:#64ffda1a}.leaderboard-table tr.current-user:hover{background:#64ffda26}.rank-cell{width:80px}.rank{align-items:center;background:#ffffff1a;border-radius:50%;display:inline-flex;font-size:.9rem;font-weight:700;height:40px;justify-content:center;width:40px}.rank.gold{background:linear-gradient(135deg,gold,#ffb700)}.rank.gold,.rank.silver{color:#1a1a2e;font-size:1.2rem}.rank.silver{background:linear-gradient(135deg,silver,#a0a0a0)}.rank.bronze{background:linear-gradient(135deg,#cd7f32,#b5651d);color:#1a1a2e;font-size:1.2rem}.rank.top10{background:#64ffda33;color:#64ffda}.player-cell{min-width:200px}.player-info{gap:12px}.player-avatar,.player-info{align-items:center;display:flex}.player-avatar{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;height:40px;justify-content:center;overflow:hidden;width:40px}.player-avatar img{height:100%;object-fit:cover;width:100%}.player-avatar span{color:#fff;font-size:1.1rem;font-weight:600}.player-name{font-weight:500}.rating-cell .rating-value{color:#64ffda;font-size:1.1rem;font-weight:700}.tier-badge{border-radius:15px;font-size:.85rem;font-weight:600;padding:4px 12px}.stat-cell{color:#8892b0}.pagination{margin-top:30px}.page-btn{background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#fff;transition:all .3s ease}.page-btn:hover:not(:disabled){background:#fff3}.page-info{color:#8892b0}@media (max-width:768px){.leaderboard-page{padding:80px 10px 10px}.leaderboard-header h1{font-size:1.8rem}.leaderboard-tabs{flex-direction:column}.tab-btn{width:100%}.user-rank-card{flex-direction:column;text-align:center}.your-rank-content{justify-content:center}.leaderboard-table td,.leaderboard-table th{font-size:.85rem;padding:12px 10px}.leaderboard-table td:nth-child(5),.leaderboard-table td:nth-child(6),.leaderboard-table th:nth-child(5),.leaderboard-table th:nth-child(6){display:none}.player-info{flex-direction:column;gap:6px}}.chess-tv-page{background:#f5f5f5;min-height:100vh;padding-bottom:40px}.chess-tv-header{background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff;padding:40px 20px;text-align:center}.header-content h1{align-items:center;display:flex;font-size:2.5rem;font-weight:700;gap:15px;justify-content:center;margin:0 0 10px}.live-icon{font-size:2rem}.header-content p{color:#a0a0b0;font-size:1.1rem;margin:0}.chess-tv-section{margin:0 auto;max-width:1400px;padding:30px 20px}.section-title{align-items:center;color:#1a1a2e;display:flex;font-size:1.5rem;font-weight:700;gap:12px;margin-bottom:25px}.live-badge{animation:pulse-live 2s infinite;background:#e74c3c;border-radius:4px;color:#fff;font-size:.75rem;font-weight:600;padding:4px 10px}@keyframes pulse-live{0%,to{opacity:1}50%{opacity:.7}}.broadcasts-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.broadcast-card{background:#fff;border:1px solid #e8e8e8;border-radius:12px;box-shadow:0 2px 8px #00000014;color:inherit;overflow:hidden;text-decoration:none;transition:all .3s ease}.broadcast-card:hover{box-shadow:0 8px 25px #0000001f;transform:translateY(-4px)}.broadcast-card.live{border-color:#e74c3c;box-shadow:0 2px 8px #e74c3c26}.broadcast-card.live:hover{box-shadow:0 8px 25px #e74c3c33}.broadcast-image{background:linear-gradient(135deg,#667eea,#764ba2);height:160px;overflow:hidden;position:relative;width:100%}.broadcast-image img{height:100%;object-fit:cover;width:100%}.image-placeholder{align-items:center;color:#ffffff80;display:flex;font-size:4rem;height:100%;justify-content:center;width:100%}.live-tag{animation:pulse-live 2s infinite;background:#e74c3c;border-radius:4px;color:#fff;font-size:.7rem;font-weight:700;padding:4px 8px;position:absolute;right:10px;top:10px}.broadcast-content{padding:16px}.broadcast-title{color:#1a1a2e;font-size:1.1rem;font-weight:700;line-height:1.3;margin:0 0 8px}.broadcast-description,.broadcast-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.broadcast-description{color:#666;font-size:.9rem;margin:0 0 12px}.broadcast-meta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.date-info,.round-info{color:#888;font-size:.8rem}.players-preview{display:flex;flex-wrap:wrap;gap:6px}.player-tag{background:#f0f0f0;border-radius:4px;color:#333}.more-players,.player-tag{font-size:.75rem;padding:4px 8px}.more-players{color:#888}.loading-container{padding:60px 20px;text-align:center}.loading-spinner{margin:0 auto 15px}.loading-container p{color:#666}.error-container{padding:60px 20px;text-align:center}.error-container p{color:#e74c3c;margin-bottom:15px}.error-container button{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:10px 20px}.pagination{align-items:center;display:flex;gap:20px;justify-content:center;padding:30px 20px}.page-btn{background:#fff;border:1px solid #e8e8e8;border-radius:6px;cursor:pointer;font-weight:500;padding:10px 20px;transition:all .2s ease}.page-btn:hover:not(:disabled){background:#667eea;border-color:#667eea;color:#fff}.page-btn:disabled{cursor:not-allowed;opacity:.5}.page-info{color:#666;font-weight:500}@media (max-width:768px){.header-content h1{font-size:1.8rem}.broadcasts-grid{grid-template-columns:1fr}}.game-viewer{align-items:center;display:flex;flex-direction:column;gap:15px;padding:20px}.game-viewer.no-game{color:#666;justify-content:center;min-height:400px}.player-bar{font-weight:500;padding:12px 15px}.player-bar.white{background:linear-gradient(135deg,#f0f0f0,#e8e8e8);color:#333}.player-bar.black{background:linear-gradient(135deg,#333,#222)}.player-name{align-items:center;display:flex;gap:5px}.player-name .title{color:#c9a227}.player-rating{font-size:.9rem;opacity:.8}.board-container{position:relative}.board-loading{background:#ffffffe6;border-radius:8px;left:50%;padding:20px;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:10}.loading-spinner.small{border-width:3px;height:30px;width:30px}.move-controls{align-items:center;display:flex;flex-direction:column;gap:10px;width:500px}.control-buttons{display:flex;gap:8px}.control-btn{align-items:center;background:#f0f0f0;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:1.1rem;height:40px;justify-content:center;transition:all .2s ease;width:50px}.control-btn:hover:not(:disabled){background:#e0e0e0;transform:translateY(-1px)}.control-btn:disabled{cursor:not-allowed;opacity:.4}.control-btn.play-btn{background:#667eea;color:#fff;width:60px}.control-btn.play-btn:hover:not(:disabled){background:#5a6fd6}.move-info{align-items:center;color:#555;display:flex;font-size:.9rem;gap:15px}.move-counter{background:#f5f5f5;border-radius:15px;padding:5px 12px}.current-move{font-family:Courier New,monospace;font-weight:600}.game-status{gap:5px;margin-top:5px}.result-badge{border-radius:20px;font-weight:600;padding:8px 16px}.result-badge.ongoing{background:#e8f5e9;color:#2e7d32}.result-badge.waiting{color:#ef6c00}.result-badge.upcoming{background:#e3e8ff;color:#5c6bc0}.result-badge.white-win{background:#f5f5f5;border:2px solid #333;color:#333}.result-badge.draw{background:#e3f2fd;color:#1565c0}.move-list{background:#f9f9f9;border-radius:8px;margin-top:10px;max-height:200px;padding:12px;width:500px}.move-list h4{color:#666;font-size:.9rem;margin:0 0 10px}.moves-scroll{display:flex;flex-wrap:wrap;font-family:Courier New,monospace;font-size:.85rem;gap:4px;max-height:150px;overflow-y:auto}.move-item{border-radius:3px;cursor:pointer;padding:3px 6px;transition:all .15s ease}.move-item:hover{background:#e0e0e0}.move-item.active{background:#667eea;color:#fff}@media (max-width:768px){.move-controls,.move-list,.player-bar{max-width:350px;width:100%}.control-btn{font-size:1rem;height:36px;width:40px}.control-btn.play-btn{width:50px}}.broadcast-view{background:#f5f5f5;min-height:100vh}.broadcast-view.error,.broadcast-view.loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #e8e8e8;border-radius:50%;border-top-color:#667eea;height:40px;margin-bottom:15px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.broadcast-header{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff;display:flex;justify-content:space-between;padding:20px 30px}.back-link{color:#a0a0b0;font-size:.9rem;text-decoration:none;transition:color .2s}.back-link:hover{color:#fff}.broadcast-info{text-align:center}.broadcast-info h1{font-size:1.4rem;margin:0 0 5px}.broadcast-info p{color:#a0a0b0;font-size:.9rem;margin:0}.round-selector{margin-top:8px}.round-dropdown{background:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;min-width:200px;padding:8px 16px}.round-dropdown:hover{background:#ffffff26}.round-dropdown option{background:#1a1a2e;color:#fff}.refresh-toggle label{align-items:center;color:#a0a0b0;cursor:pointer;display:flex;font-size:.85rem;gap:8px}.refresh-toggle input{cursor:pointer}.broadcast-content{display:flex;gap:20px;margin:0 auto;max-width:1400px;padding:20px}.games-sidebar{flex-shrink:0;width:280px}.games-sidebar h3{border-bottom:1px solid #e8e8e8;color:#333;font-size:1rem;margin:0 0 15px;padding-bottom:10px}.games-list{display:flex;flex-direction:column;gap:10px;max-height:calc(100vh - 200px);overflow-y:auto}.no-games-message{color:#666;padding:40px 20px;text-align:center}.no-games-message .icon{display:block;font-size:3rem;margin-bottom:15px}.no-games-message p{font-size:1rem;margin:5px 0}.no-games-message .sub-text{color:#888;font-size:.85rem;margin-top:10px}.game-card{align-items:center;background:#fff;border:2px solid #0000;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;padding:12px;transition:all .2s ease}.game-card.selected,.game-card:hover{border-color:#667eea}.game-card.selected{background:#f0f4ff}.game-card.ongoing{border-left:3px solid #e74c3c}.game-players{flex:1 1}.game-card .player{align-items:center;display:flex;font-size:.85rem;gap:8px;margin-bottom:4px}.game-card .player:last-child{margin-bottom:0}.color-indicator{border-radius:2px;height:10px;width:10px}.color-indicator.white{background:#fff;border:1px solid #ccc}.color-indicator.black{background:#333}.game-card .name{flex:1 1;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-card .elo{color:#888;font-size:.75rem}.game-card .game-result{border-radius:4px;font-size:.9rem;font-weight:700;padding:4px 8px}.game-result.white-win{background:#e8f5e9;color:#2e7d32}.game-result.black-win{background:#333;color:#fff}.game-result.draw{background:#e0e0e0;color:#666}.game-result.ongoing{animation:pulse-result 2s infinite;background:#ffebee;color:#e74c3c}@keyframes pulse-result{0%,to{opacity:1}50%{opacity:.6}}.main-board-area{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;flex:1 1;flex-direction:column;padding:20px}.main-board-area,.player-bar{align-items:center;display:flex}.player-bar{border-radius:8px;justify-content:space-between;margin:10px 0;padding:12px 16px;width:500px}.player-bar.white{background:#f8f8f8;border:1px solid #e8e8e8}.player-bar.black{background:#2c2c2c;color:#fff}.player-name{font-size:1rem;font-weight:600}.player-rating{font-size:.85rem;opacity:.7}.board-container{margin:10px 0}.move-navigation{align-items:center;display:flex;gap:10px;margin:15px 0}.move-navigation button{background:#f0f0f0;border:none;border-radius:8px;cursor:pointer;font-size:1rem;height:40px;transition:all .2s ease;width:40px}.move-navigation button:hover{background:#667eea;color:#fff}.move-counter{color:#666;font-size:.9rem;min-width:60px;text-align:center}.moves-panel{background:#f8f8f8;border-radius:8px;max-height:150px;overflow-y:auto;padding:12px;width:500px}.moves-panel .moves-list{display:flex;flex-wrap:wrap;gap:4px}.moves-panel .move{border-radius:4px;cursor:pointer;font-size:.85rem;padding:4px 6px;transition:background .2s}.moves-panel .move:hover{background:#e0e0e0}.moves-panel .move.played{color:#333}.moves-panel .move.current{background:#667eea;color:#fff}.moves-panel .move:not(.played){color:#aaa}.move-number{color:#888;margin-right:2px}.game-result{font-weight:700;margin-left:10px}.no-game-selected{color:#888;height:400px;justify-content:center}.game-status,.no-game-selected{align-items:center;display:flex}.game-status{flex-direction:column;gap:8px;margin-top:15px}.result-badge{border-radius:6px;font-size:.9rem;font-weight:500;padding:6px 12px}.result-badge.white-win{background:#e8f5e9;color:#2e7d32}.result-badge.black-win{background:#333;color:#fff}.result-badge.draw{background:#e0e0e0;color:#666}.result-badge.ongoing{animation:pulse-status 2s infinite;background:#ffebee;color:#e74c3c}.result-badge.waiting{background:#fff3e0;color:#f57c00}@keyframes pulse-status{0%,to{opacity:1}50%{opacity:.6}}.last-move{color:#666;font-size:.85rem}.player-name .title{color:#b8860b;font-weight:700}@media (max-width:900px){.broadcast-content{flex-direction:column}.games-sidebar{width:100%}.games-list{flex-direction:row;flex-wrap:wrap;max-height:none}.game-card{flex:1 1 200px}.moves-panel,.player-bar{max-width:500px;width:100%}}
/*# sourceMappingURL=main.57d9ec1a.css.map*/