*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color:#2c3e50;--secondary-color:#3498db;--success-color:#27ae60;--danger-color:#e74c3c;--warning-color:#f39c12;--light-bg:#ecf0f1;--dark-bg:#34495e;--text-dark:#2c3e50;--text-light:#7f8c8d;--board-light:#f0d9b5;--board-dark:#b58863;--highlight-color:rgba(255, 255, 0, 0.4);--hint-color:rgba(52, 152, 219, 0.5)}body.dark-mode,html.dark-mode{--primary-color:#ecf0f1;--secondary-color:#3498db;--success-color:#27ae60;--danger-color:#e74c3c;--warning-color:#f39c12;--light-bg:#2c3e50;--dark-bg:#1a252f;--text-dark:#ecf0f1;--text-light:#bdc3c7;--board-light:#f0d9b5;--board-dark:#b58863;--highlight-color:rgba(255, 255, 0, 0.4);--hint-color:rgba(52, 152, 219, 0.5)}body.dark-mode,html.dark-mode body{background:linear-gradient(135deg,#2c3e50 0,#1a252f 100%)}body.dark-mode .analysis-container,body.dark-mode .game-container,body.dark-mode .help-container,body.dark-mode .history-container,body.dark-mode .import-container,body.dark-mode .menu-container,body.dark-mode .progress-container,body.dark-mode .tutorial-container,html.dark-mode .analysis-container,html.dark-mode .game-container,html.dark-mode .help-container,html.dark-mode .history-container,html.dark-mode .import-container,html.dark-mode .menu-container,html.dark-mode .progress-container,html.dark-mode .tutorial-container{background:var(--dark-bg);color:var(--text-dark)}body.dark-mode .achievements,body.dark-mode .analysis-panel,body.dark-mode .captured-pieces,body.dark-mode .help-section,body.dark-mode .hint-box,body.dark-mode .import-examples,body.dark-mode .import-instructions,body.dark-mode .import-method,body.dark-mode .lesson-list,body.dark-mode .move-history,body.dark-mode .multi-pv-panel,body.dark-mode .status-box,html.dark-mode .achievements,html.dark-mode .analysis-panel,html.dark-mode .captured-pieces,html.dark-mode .help-section,html.dark-mode .hint-box,html.dark-mode .import-examples,html.dark-mode .import-instructions,html.dark-mode .import-method,html.dark-mode .lesson-list,html.dark-mode .move-history,html.dark-mode .multi-pv-panel,html.dark-mode .status-box{background:var(--light-bg)}body.dark-mode .achievement-item,body.dark-mode .lesson-item,body.dark-mode .piece-info,body.dark-mode .pv-item,html.dark-mode .achievement-item,html.dark-mode .lesson-item,html.dark-mode .piece-info,html.dark-mode .pv-item{background:var(--dark-bg);color:var(--text-dark)}body.dark-mode .pv-item.best,html.dark-mode .pv-item.best{background:linear-gradient(to right,rgba(39,174,96,.15),var(--dark-bg))}body.dark-mode .multi-pv-panel h4,body.dark-mode .pv-move,body.dark-mode .pv-rank,html.dark-mode .multi-pv-panel h4,html.dark-mode .pv-move,html.dark-mode .pv-rank{color:var(--text-dark)}body.dark-mode .history-item,html.dark-mode .history-item{background:var(--light-bg);color:var(--text-dark)}body.dark-mode .history-item:hover,html.dark-mode .history-item:hover{background:#3d566e;color:var(--text-dark)}body.dark-mode .modal-content,html.dark-mode .modal-content{background:var(--dark-bg);color:var(--text-dark)}body.dark-mode #pgn-input,html.dark-mode #pgn-input{background:var(--dark-bg);color:var(--text-dark);border-color:var(--light-bg)}body.dark-mode .menu-btn,body.dark-mode .stat-card,html.dark-mode .menu-btn,html.dark-mode .stat-card{background:linear-gradient(135deg,#2c5f77,#34495e)}body.dark-mode .btn-back,html.dark-mode .btn-back{background:#34495e}body.dark-mode .btn-back:hover,html.dark-mode .btn-back:hover{background:#2c3e50}body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:linear-gradient(135deg,#f5f7fa 0,#c3cfe2 100%);min-height:100vh;color:var(--text-dark)}.top-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;margin-bottom:15px;border-radius:16px;background:rgba(255,255,255,.85);border:1px solid rgba(44,62,80,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 2px 10px rgba(0,0,0,.05)}.nav-brand{color:var(--primary-color);text-decoration:none;font-weight:800;letter-spacing:.2px;white-space:nowrap}.nav-links{list-style:none;display:flex;align-items:center;gap:10px;padding:0;margin:0}.nav-links a{display:inline-block;padding:8px 10px;border-radius:10px;text-decoration:none;color:var(--primary-color);font-weight:600;font-size:.95rem;transition:background .2s,transform .2s}.nav-link-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border-radius:10px;border:none;background:0 0;color:var(--primary-color);font-weight:700;font-size:.95rem;cursor:pointer;transition:background .2s,transform .2s}.nav-link-btn:hover{background:rgba(52,152,219,.1);transform:translateY(-1px)}.nav-link-btn .dark-mode-icon{font-size:1.1rem;line-height:1}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.nav-links a:hover{background:rgba(255,255,255,.18);transform:translateY(-1px)}.nav-links a.active{background:rgba(255,255,255,.28)}.nav-toggle{display:none;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.12);color:#fff;padding:8px 10px;border-radius:10px;cursor:pointer}@media (max-width:920px){.nav-toggle{display:inline-flex;align-items:center;justify-content:center}.nav-links{display:none;width:100%;flex-direction:column;align-items:stretch;gap:6px;padding-top:10px}.nav-links.open{display:flex}.top-nav{flex-wrap:wrap}.nav-links a{width:100%}}body.dark-mode .top-nav,html.dark-mode .top-nav{background:rgba(0,0,0,.2);border-color:rgba(255,255,255,.12)}#app{max-width:1400px;margin:0 auto;padding:20px}.header{text-align:left;color:var(--primary-color);margin-bottom:30px;position:relative}.header h1{font-size:3rem;margin-bottom:10px;text-shadow:0 2px 4px rgba(0,0,0,.1);font-weight:800}.header h1::first-letter{font-size:3.5rem}.tagline{font-size:1.1rem;opacity:.8;font-style:italic;color:var(--text-light)}@media (max-width:768px){.header h1{font-size:2rem}.header h1::first-letter{font-size:2.3rem}.tagline{font-size:.95rem}}body.dark-mode .header,html.dark-mode .header{color:#fff}body.dark-mode .header h1,html.dark-mode .header h1{text-shadow:2px 2px 4px rgba(0,0,0,.3)}body.dark-mode .tagline,html.dark-mode .tagline{color:rgba(255,255,255,.9)}body.dark-mode a,html.dark-mode a{color:#5dade2}body.dark-mode a:hover,html.dark-mode a:hover{color:#85c1e9}body.dark-mode a:visited,html.dark-mode a:visited{color:#76a8c8}body.dark-mode .nav-brand,body.dark-mode .nav-link-btn,body.dark-mode .nav-links a,html.dark-mode .nav-brand,html.dark-mode .nav-link-btn,html.dark-mode .nav-links a{color:rgba(255,255,255,.95)}body.dark-mode .menu-btn,html.dark-mode .menu-btn{color:#fff}.dark-mode-toggle{display:none}.dark-mode-icon{width:18px;height:18px;display:inline-block}.screen{display:block;animation:.3s ease-in fadeIn}.screen.active{display:block}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.menu-container{background:#fff;border-radius:20px;padding:40px;box-shadow:0 10px 30px rgba(0,0,0,.2)}.menu-container h2{text-align:center;margin-bottom:30px;color:var(--primary-color)}.menu-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.menu-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px 20px;background:linear-gradient(135deg,var(--secondary-color),#5dade2);border:none;border-radius:15px;cursor:pointer;transition:.3s;color:#fff;text-align:center}a.menu-btn{text-decoration:none}.menu-btn:hover{transform:translateY(-5px);box-shadow:0 10px 20px rgba(0,0,0,.2)}.menu-btn .icon{margin-bottom:10px;line-height:1;display:inline-flex;align-items:center;justify-content:center}.menu-btn .icon i[data-lucide],.menu-btn .icon svg{width:48px;height:48px;flex-shrink:0}.lucide-icon{display:inline-block;vertical-align:middle}.menu-icon{width:48px;height:48px}.menu-btn .label{font-size:1.3rem;font-weight:700;margin-bottom:5px}.menu-btn .desc{font-size:.9rem;opacity:.9}.action-btn,.btn{padding:10px 20px;border:none;border-radius:8px;cursor:pointer;font-size:1rem;transition:.3s;background:var(--secondary-color);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn i[data-lucide],.btn svg{width:18px;height:18px;flex-shrink:0}.action-btn:hover,.btn:hover{background:#2980b9;transform:translateY(-2px)}.btn-back{display:inline-block;padding:10px 20px;background:var(--text-light);color:#fff;border:none;border-radius:8px;cursor:pointer;margin-bottom:20px;text-decoration:none;font-weight:500;transition:.3s}.btn-back:hover{background:#6c7a89;text-decoration:none}.game-container{background:#fff;border-radius:20px;padding:30px;box-shadow:0 10px 30px rgba(0,0,0,.2)}.game-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;flex-wrap:wrap;gap:20px}.game-settings{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.game-settings label{display:flex;align-items:center;gap:8px}.game-settings select{padding:5px 10px;border:2px solid var(--light-bg);border-radius:5px;font-size:1rem}.game-content{display:grid;grid-template-columns:250px 1fr 250px;gap:15px}@media (max-width:1200px){.game-content{grid-template-columns:1fr}.left-panel,.right-panel{order:2}.board-container{order:1}}@media (max-width:768px){.game-container{padding:20px}}@media (max-width:600px){.game-container{padding:15px;border-radius:15px}.game-header{gap:15px}.game-settings{width:100%;flex-direction:column;align-items:stretch;gap:12px}.game-settings label{width:100%;justify-content:space-between}.game-settings select{flex:1;min-width:0}.elo-strength-control{width:100%;min-width:0}}.left-panel,.right-panel{display:flex;flex-direction:column;gap:15px}.captured-pieces,.hint-box,.material-count,.move-history,.status-box{background:var(--light-bg);padding:15px;border-radius:10px}.captured-pieces h4,.hint-box h4,.material-count h4,.move-history h4,.status-box h3{margin-bottom:10px;color:var(--primary-color)}@media (max-width:600px){.left-panel,.right-panel{gap:12px}.captured-pieces,.hint-box,.material-count,.move-history,.status-box{padding:12px}}.material-count{background:var(--light-bg);padding:15px;border-radius:10px}.material-count h4{margin-bottom:12px;color:var(--primary-color);font-size:1rem}#material-display{display:flex;flex-direction:column;gap:10px;overflow:hidden}.material-row{display:flex;align-items:center;gap:8px;padding:8px;background:#fff;border-radius:6px;font-size:.9rem;width:100%;min-width:0}body.dark-mode .material-row,html.dark-mode .material-row{background:var(--dark-bg)}.material-label{font-weight:600;min-width:50px}.material-label.white-material{color:#2c3e50}.material-label.black-material{color:#34495e}body.dark-mode .material-label.white-material,html.dark-mode .material-label.white-material{color:#ecf0f1}body.dark-mode .material-label.black-material,html.dark-mode .material-label.black-material{color:#bdc3c7}.material-icons{display:flex;flex-wrap:wrap;align-items:center;gap:2px;font-size:1.1rem;line-height:1.3;min-height:24px;width:100%;order:1}.material-value{display:none}.material-row.material-advantage{background:linear-gradient(135deg,rgba(52,152,219,.1),rgba(52,152,219,.05));border-left:3px solid var(--secondary-color);padding-left:12px;justify-content:center}.material-text{font-weight:600;color:var(--text-dark);text-align:center;width:100%}body.dark-mode .material-text,html.dark-mode .material-text{color:var(--text-dark)}#game-status{font-weight:700;color:var(--secondary-color);margin:5px 0}#turn-indicator{color:var(--text-light);font-size:.9rem}.captured-list{display:flex;flex-wrap:wrap;gap:5px;min-height:30px;margin:5px 0;font-size:1.5rem}.game-actions{display:flex;flex-direction:column;gap:10px}.arrow-help-text{background:var(--light-bg);padding:12px;border-radius:8px;font-size:.85rem;line-height:1.5;color:var(--text-light);margin-top:10px}.arrow-help-text strong{color:var(--text-dark);display:block;margin-bottom:5px}.arrow-help-text ul{margin:5px 0 0 15px;padding:0}.arrow-help-text li{margin-bottom:3px}.action-btn{width:100%;text-align:left;padding:12px;justify-content:flex-start;min-height:44px}.action-btn i[data-lucide],.action-btn svg{width:18px;height:18px;flex-shrink:0}#btn-clear-arrows{background:var(--warning-color)}#btn-clear-arrows:hover{background:#e67e22}#btn-save-game{background:var(--success-color)}#btn-save-game:hover{background:#229954}.move-list{max-height:300px;overflow-y:auto;font-family:monospace}#analysis-move-list{max-height:400px;overflow-y:auto;font-family:monospace;border:1px solid var(--light-bg);border-radius:8px;padding:10px;margin-top:15px}@media (max-width:600px){.action-btn{padding:14px 12px;font-size:.95rem}#analysis-move-list{max-height:300px;padding:8px;font-size:.9rem}}#analysis-move-list::-webkit-scrollbar{width:8px}#analysis-move-list::-webkit-scrollbar-track{background:rgba(0,0,0,.05);border-radius:4px}#analysis-move-list::-webkit-scrollbar-thumb{background:var(--secondary-color);border-radius:4px}#analysis-move-list::-webkit-scrollbar-thumb:hover{background:#2980b9}.move-item{padding:8px;margin:2px 0;border-radius:3px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;transition:.2s}.move-item:hover{background:rgba(52,152,219,.1)}.move-item.active{background:linear-gradient(135deg,var(--secondary-color),#5dade2);color:#fff;font-weight:600;box-shadow:0 2px 8px rgba(52,152,219,.3);border-left:3px solid #fff;padding-left:5px}body.dark-mode .move-item.active,html.dark-mode .move-item.active{background:linear-gradient(135deg,#3498db,#2c7aa8);color:#fff;box-shadow:0 2px 8px rgba(52,152,219,.4)}.move-notation{flex:1}.move-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;cursor:pointer;transition:transform .2s}.move-badge:hover{transform:scale(1.1)}.move-badge.brilliant{background:linear-gradient(135deg,#1baca6,#17a398)}.move-badge.best,.move-badge.excellent,.move-badge.good{background:linear-gradient(135deg,#96bc4b,#7ea83a)}.move-badge.book{background:linear-gradient(135deg,#9ca3af,#6b7280)}.move-badge.inaccuracy{background:linear-gradient(135deg,#f0ad4e,#ec971f)}.move-badge.mistake{background:linear-gradient(135deg,#d9534f,#c9302c)}.move-badge.blunder{background:linear-gradient(135deg,#c0392b,#a93226)}.move-badge.computer{background:linear-gradient(135deg,#7f8c8d,#6b7280)}.move-badge-icon{width:14px!important;height:14px!important;stroke:white!important;stroke-width:2.5!important;fill:none!important}.board-container{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;position:relative;width:100%;max-width:500px;margin:0 auto}#analysis-board,#chess-board,#lesson-board,#online-chess-board{width:100%;max-width:500px;aspect-ratio:1/1;position:relative;opacity:0;transition:opacity .2s}#analysis-board.ready,#chess-board.ready,#lesson-board.ready,#online-chess-board.ready{opacity:1}.board-loading-spinner{position:absolute;width:100%;aspect-ratio:1/1;max-width:500px;display:flex;align-items:center;justify-content:center;z-index:10}.board-loading-spinner.hidden{display:none}.spinner{width:60px;height:60px;border:4px solid rgba(0,0,0,.1);border-top-color:var(--secondary-color);border-radius:50%;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.spinning-icon{animation:1s linear infinite spin}.arrow-svg-overlay{user-select:none}.hint-overlay{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.hint-overlay.hidden{display:none}.analysis-container,.help-container,.history-container,.import-container,.progress-container,.tutorial-container{background:#fff;border-radius:20px;padding:30px;box-shadow:0 10px 30px rgba(0,0,0,.2);min-height:500px}@media (max-width:768px){.board-container{max-width:100%}#analysis-board,#chess-board,#lesson-board,#online-chess-board{width:100%;max-width:100%}.analysis-container,.help-container,.history-container,.import-container,.progress-container,.tutorial-container{padding:20px}}@media (max-width:600px){.board-container{max-width:100%}.analysis-container,.help-container,.history-container,.import-container,.progress-container,.tutorial-container{padding:15px;border-radius:15px;min-height:auto}}.tutorial-content{display:grid;grid-template-columns:300px 1fr;gap:30px;margin-top:20px}@media (max-width:900px){.tutorial-content{grid-template-columns:1fr}}.lesson-list{background:var(--light-bg);padding:20px;border-radius:10px}.lesson-item{padding:15px;margin:10px 0;background:#fff;border-radius:8px;cursor:pointer;transition:.3s}.lesson-item:hover{background:var(--secondary-color);color:#fff;transform:translateX(5px)}.lesson-item.active{background:var(--success-color);color:#fff;border-left:4px solid var(--warning-color);font-weight:600;box-shadow:0 3px 10px rgba(39,174,96,.3)}.lesson-display{padding:20px}#lesson-board{width:100%;max-width:500px;aspect-ratio:1/1;margin:20px auto;opacity:0;transition:opacity .2s}#lesson-board.ready{opacity:1}#lesson-content{margin:20px 0;line-height:1.6}.lesson-controls{display:flex;justify-content:center;gap:20px;margin-top:20px}.welcome-content{max-width:800px;margin:0 auto;line-height:1.8}.welcome-content .intro-text{font-size:1.1rem;margin-bottom:20px}.welcome-content p{margin-bottom:20px}.welcome-content .cta-text{font-weight:500;margin-bottom:30px}.welcome-cta-box{text-align:center;padding:30px;background:var(--light-bg);border-radius:12px;margin-top:30px}.welcome-cta-box .cta-title{font-size:1.2rem;font-weight:600;margin-bottom:15px;color:var(--primary-color)}.welcome-cta-box p{margin-bottom:20px}.welcome-cta-box .btn{display:inline-block;text-decoration:none;color:#fff}body.dark-mode .welcome-cta-box .btn{color:rgba(255,255,255,.95)}.icon-inline{width:16px;height:16px;display:inline-block;vertical-align:middle}.settings-container{background:#fff;border-radius:20px;padding:30px;box-shadow:0 10px 30px rgba(0,0,0,.2);max-width:1000px;margin:0 auto}.settings-content{margin-top:20px}.settings-section{margin-bottom:40px;padding:25px;background:var(--light-bg);border-radius:15px}.settings-section h3{color:var(--primary-color);margin-bottom:10px;font-size:1.5rem}.settings-section h4{color:var(--secondary-color);margin:20px 0 15px;font-size:1.2rem}.settings-description{color:var(--text-light);margin-bottom:20px;font-size:.95rem}.piece-style-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-top:20px}.piece-style-option{background:#fff;padding:15px;border-radius:10px;text-align:center;cursor:pointer;transition:.3s;border:3px solid transparent}.piece-style-option:hover{transform:translateY(-3px);box-shadow:0 5px 15px rgba(0,0,0,.1)}.piece-style-option input[type=radio]{display:none}.piece-style-option input[type=radio]:checked+label{font-weight:700;color:var(--secondary-color)}.piece-style-option:has(input:checked){border-color:var(--secondary-color);background:rgba(52,152,219,.05)}.piece-preview{display:flex;justify-content:center;gap:10px;margin-bottom:10px}.piece-preview img{width:50px;height:50px}.piece-style-option label{cursor:pointer;display:block;font-size:1rem}.board-theme-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-top:20px}.board-theme-option{background:#fff;padding:15px;border-radius:10px;text-align:center;cursor:pointer;transition:.3s;border:3px solid transparent}.board-theme-option:hover{transform:translateY(-3px);box-shadow:0 5px 15px rgba(0,0,0,.1)}.board-theme-option input[type=radio]{display:none}.board-theme-option input[type=radio]:checked+label{font-weight:700;color:var(--secondary-color)}.board-theme-option:has(input:checked){border-color:var(--secondary-color);background:rgba(52,152,219,.05)}.board-preview{display:flex;justify-content:center;gap:5px;margin-bottom:10px}.preview-square{width:40px;height:40px;border:1px solid rgba(0,0,0,.1)}.board-theme-option label{cursor:pointer;display:block;font-size:.95rem}.custom-colors-section{margin-top:25px;padding:20px;background:#fff;border-radius:10px}.color-picker-group{display:flex;flex-direction:column;gap:15px;margin:15px 0}.color-picker{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.color-picker label{font-weight:500;color:var(--primary-color);min-width:140px}.color-picker input[type=color]{width:60px;height:40px;border:2px solid var(--light-bg);border-radius:5px;cursor:pointer}.color-picker input[type=range]{flex:1;min-width:150px}.color-picker span{font-family:monospace;color:var(--text-light);min-width:150px}.slider-control{margin:20px 0}.slider-control label{display:block;font-weight:500;color:var(--primary-color);margin-bottom:10px}.slider-control input[type=range]{width:100%;height:8px;border-radius:5px;background:linear-gradient(to right,var(--secondary-color),var(--success-color));outline:0;cursor:pointer}.slider-control input[type=range]::-webkit-slider-thumb{appearance:none;width:20px;height:20px;border-radius:50%;background:var(--secondary-color);cursor:pointer;box-shadow:0 2px 5px rgba(0,0,0,.2);transition:.2s}.slider-control input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2);background:#2980b9}.slider-control input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--secondary-color);cursor:pointer;border:none;box-shadow:0 2px 5px rgba(0,0,0,.2)}.slider-labels{display:flex;justify-content:space-between;margin-top:5px;font-size:.85rem;color:var(--text-light)}.preference-options{display:flex;flex-direction:column;gap:15px;margin-top:15px}.preference-item{background:#fff;padding:15px;border-radius:8px}.preference-item label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:1rem}.preference-item input[type=checkbox]{width:20px;height:20px;cursor:pointer}.settings-actions{display:flex;gap:15px;justify-content:center;margin:30px 0;flex-wrap:wrap}.btn-primary{background:linear-gradient(135deg,var(--success-color),#2ecc71);padding:15px 40px;font-size:1.1rem;font-weight:700}.btn-primary:hover{background:linear-gradient(135deg,#229954,var(--success-color))}.btn-secondary{background:linear-gradient(135deg,var(--text-light),#95a5a6);color:#fff;padding:15px 40px;font-size:1.1rem}.btn-secondary:hover{background:linear-gradient(135deg,#6c7a89,var(--text-light))}#preview-board{width:100%;max-width:400px;aspect-ratio:1/1;margin:20px auto}@media (max-width:768px){.settings-container,.settings-section{padding:20px}.board-theme-options,.piece-style-options{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.settings-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}@media (max-width:600px){#lesson-board{max-width:100%;margin:15px auto}#preview-board{max-width:100%}}body.dark-mode .settings-container,html.dark-mode .settings-container{background:var(--dark-bg);color:var(--text-dark)}body.dark-mode .settings-section,html.dark-mode .settings-section{background:var(--light-bg)}body.dark-mode .board-theme-option,body.dark-mode .custom-colors-section,body.dark-mode .piece-style-option,body.dark-mode .preference-item,html.dark-mode .board-theme-option,html.dark-mode .custom-colors-section,html.dark-mode .piece-style-option,html.dark-mode .preference-item{background:var(--dark-bg);color:var(--text-dark)}body.dark-mode .board-theme-option:has(input:checked),body.dark-mode .piece-style-option:has(input:checked),html.dark-mode .board-theme-option:has(input:checked),html.dark-mode .piece-style-option:has(input:checked){background:rgba(52,152,219,.15)}.hero-section{position:relative;overflow:hidden;margin-bottom:60px;padding:80px 40px;background:linear-gradient(135deg,rgba(52,152,219,.1),rgba(39,174,96,.1));border-radius:24px;box-shadow:0 8px 32px rgba(0,0,0,.08)}body.dark-mode .hero-section,html.dark-mode .hero-section{background:linear-gradient(135deg,rgba(52,152,219,.15),rgba(39,174,96,.1));box-shadow:0 8px 32px rgba(0,0,0,.3)}.hero-content{max-width:800px;margin:0 auto;text-align:center;position:relative;z-index:2}.hero-title{font-size:3.5rem;font-weight:800;margin-bottom:24px;color:var(--primary-color);line-height:1.2;background:linear-gradient(135deg,var(--secondary-color),#27ae60);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}body.dark-mode .hero-title,html.dark-mode .hero-title{background:linear-gradient(135deg,#5dade2,#2ecc71);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.3rem;color:var(--text-light);margin-bottom:40px;line-height:1.6;max-width:600px;margin-left:auto;margin-right:auto}.hero-cta{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.btn-lg{padding:16px 40px;font-size:1.1rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:12px;text-decoration:none;transition:.3s}.btn-lg i[data-lucide],.btn-lg svg{width:20px;height:20px;flex-shrink:0}.btn-primary{background:linear-gradient(135deg,var(--secondary-color),#2980b9);color:#fff;box-shadow:0 4px 15px rgba(52,152,219,.3)}.btn-primary:hover{background:linear-gradient(135deg,#2980b9,#1f618d);transform:translateY(-4px);box-shadow:0 8px 25px rgba(52,152,219,.4)}body.dark-mode .btn-primary,body.dark-mode .btn-primary:hover,body.dark-mode .hero-section .btn-primary,body.dark-mode .hero-section .btn-primary:hover,html.dark-mode .btn-primary,html.dark-mode .btn-primary:hover,html.dark-mode .hero-section .btn-primary,html.dark-mode .hero-section .btn-primary:hover{color:#fff!important}.btn-secondary{background:0 0;color:var(--secondary-color);border:2px solid var(--secondary-color);box-shadow:none}body.dark-mode .btn-secondary,html.dark-mode .btn-secondary{color:#85c1e9!important;border-color:#5dade2}.btn-secondary:hover{background:var(--secondary-color);color:#fff;transform:translateY(-4px);box-shadow:0 8px 25px rgba(52,152,219,.2)}body.dark-mode .btn-secondary:hover,html.dark-mode .btn-secondary:hover{background:#3498db;color:#fff!important}.hero-accent{position:absolute;top:50%;right:-80px;width:600px;height:600px;z-index:1;transform:translateY(-50%)}.chess-piece{position:absolute;font-size:400px;line-height:1;color:var(--secondary-color);opacity:.5;font-weight:700;display:block;white-space:nowrap;text-align:center}.chess-piece:first-child{top:-50px;right:20px;transform:rotate(-15deg)}.chess-piece:nth-child(2){bottom:50px;right:120px;transform:rotate(25deg)}body.dark-mode .chess-piece,html.dark-mode .chess-piece{color:#5dade2}@media (max-width:768px){.hero-section{padding:60px 24px;margin-bottom:40px}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.1rem}.hero-cta{flex-direction:column;align-items:center}.btn-lg{width:100%;justify-content:center}}.section-header{text-align:center;margin-bottom:50px}.section-header h2{font-size:2.8rem;font-weight:800;color:var(--primary-color);margin-bottom:12px}.section-header p{font-size:1.2rem;color:var(--text-light)}@media (max-width:768px){.section-header h2{font-size:2rem}.section-header p{font-size:1rem}}.features-section{margin-bottom:80px}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px}.feature-card{background:#fff;padding:32px 28px;border-radius:16px;box-shadow:0 4px 20px rgba(0,0,0,.08);transition:.3s;display:flex;flex-direction:column;height:100%}body.dark-mode .feature-card,html.dark-mode .feature-card{background:var(--light-bg);box-shadow:0 4px 20px rgba(0,0,0,.3)}.feature-card:hover{transform:translateY(-8px);box-shadow:0 12px 40px rgba(0,0,0,.15)}body.dark-mode .feature-card:hover,html.dark-mode .feature-card:hover{box-shadow:0 12px 40px rgba(0,0,0,.4)}.feature-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;background:linear-gradient(135deg,var(--secondary-color),#5dade2);border-radius:14px;margin-bottom:20px;font-size:32px;color:#fff}.feature-icon i{width:32px!important;height:32px!important;stroke:white!important;stroke-width:2!important;fill:white!important;color:#fff!important}.feature-card h3{font-size:1.5rem;font-weight:700;color:var(--primary-color);margin-bottom:12px}.feature-card p{color:var(--text-light);line-height:1.6;margin-bottom:20px;flex-grow:1}.card-link{display:inline-flex;align-items:center;gap:8px;color:var(--secondary-color);text-decoration:none;font-weight:600;transition:.3s;align-self:flex-start;display:inline-flex;align-items:center}body.dark-mode .card-link,html.dark-mode .card-link{color:#5dade2}.card-link:hover{color:#2980b9;transform:translateX(4px)}body.dark-mode .card-link:hover,html.dark-mode .card-link:hover{color:#85c1e9}.card-link i{width:18px!important;height:18px!important;stroke:currentColor!important;stroke-width:2!important;fill:none!important}.benefits-section{margin-bottom:80px}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.benefit-card{background:#fff;padding:32px 28px;border-radius:16px;box-shadow:0 4px 20px rgba(0,0,0,.08);transition:.3s;display:flex;gap:20px}body.dark-mode .benefit-card,html.dark-mode .benefit-card{background:var(--light-bg);box-shadow:0 4px 20px rgba(0,0,0,.3)}.benefit-card:hover{box-shadow:0 8px 32px rgba(0,0,0,.12)}body.dark-mode .benefit-card:hover,html.dark-mode .benefit-card:hover{box-shadow:0 8px 32px rgba(0,0,0,.35)}.benefit-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:56px;height:56px;background:linear-gradient(135deg,var(--secondary-color),#5dade2);border-radius:12px;font-size:28px;color:#fff}.benefit-icon i{width:28px!important;height:28px!important;stroke:white!important;stroke-width:2!important;fill:white!important;color:#fff!important}.benefit-content h3{font-size:1.3rem;font-weight:700;color:var(--primary-color);margin-bottom:8px}.benefit-content p{color:var(--text-light);line-height:1.6;font-size:.95rem}.getting-started-section{margin-bottom:80px}.steps-container{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:20px;align-items:center;max-width:1000px;margin:0 auto}.step-card{background:#fff;padding:32px 28px;border-radius:16px;box-shadow:0 4px 20px rgba(0,0,0,.08);text-align:center;transition:.3s;position:relative}body.dark-mode .step-card,html.dark-mode .step-card{background:var(--light-bg);box-shadow:0 4px 20px rgba(0,0,0,.3)}.step-card:hover{transform:translateY(-4px);box-shadow:0 8px 32px rgba(0,0,0,.12)}body.dark-mode .step-card:hover,html.dark-mode .step-card:hover{box-shadow:0 8px 32px rgba(0,0,0,.35)}.step-number{position:absolute;top:-14px;left:50%;transform:translateX(-50%);width:40px;height:40px;background:linear-gradient(135deg,var(--secondary-color),#2980b9);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:800;box-shadow:0 4px 15px rgba(52,152,219,.3)}.step-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;background:linear-gradient(135deg,var(--secondary-color),#5dade2);border-radius:12px;margin:0 auto 20px;font-size:28px;color:#fff}.step-icon i{width:28px!important;height:28px!important;stroke:white!important;stroke-width:2!important;fill:white!important;color:#fff!important}.step-card h3{font-size:1.4rem;font-weight:700;color:var(--primary-color);margin-bottom:12px;margin-top:12px}.step-card p{color:var(--text-light);line-height:1.6}.step-divider{display:none;width:3px;height:80px;background:linear-gradient(to bottom,var(--secondary-color),transparent)}@media (min-width:1000px){.step-divider{display:block}}@media (max-width:1000px){.steps-container{grid-template-columns:1fr;gap:40px}.step-divider{display:none}}.final-cta-section{margin-bottom:60px;padding:60px 40px;background:linear-gradient(135deg,var(--secondary-color),#2980b9);border-radius:20px;text-align:center;box-shadow:0 8px 32px rgba(52,152,219,.3);position:relative;overflow:hidden}body.dark-mode .final-cta-section,html.dark-mode .final-cta-section{background:linear-gradient(135deg,#3498db,#2c7aa8);box-shadow:0 8px 32px rgba(52,152,219,.5)}.final-cta-section::before{content:'';position:absolute;top:-50%;right:-10%;width:400px;height:400px;background:radial-gradient(circle,rgba(255,255,255,.1),transparent);border-radius:50%;z-index:0}.cta-content{position:relative;z-index:1;max-width:600px;margin:0 auto}.final-cta-section h2{font-size:2.5rem;font-weight:800;color:#fff;margin-bottom:16px}.final-cta-section p{font-size:1.2rem;color:rgba(255,255,255,.95);margin-bottom:32px;line-height:1.6}.final-cta-section .btn-primary{background:#fff!important;color:#2980b9!important;box-shadow:0 4px 20px rgba(0,0,0,.15)}.final-cta-section .btn-primary:hover{background:rgba(255,255,255,.95)!important;color:#1f618d!important;transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,.25)}body.dark-mode .final-cta-section .btn-primary,html.dark-mode .final-cta-section .btn-primary{background:#fff!important;color:#2980b9!important}body.dark-mode .final-cta-section .btn-primary:hover,html.dark-mode .final-cta-section .btn-primary:hover{background:rgba(255,255,255,.95)!important;color:#1f618d!important}.final-cta-section .btn-primary i{width:20px!important;height:20px!important;stroke:currentColor!important;stroke-width:2!important;fill:none!important}.cta-accent{position:absolute;top:50%;left:-80px;width:600px;height:600px;z-index:1;transform:translateY(-50%)}.chess-piece-cta{position:absolute;font-size:400px;line-height:1;color:rgba(255,255,255,.15);font-weight:700;display:block;white-space:nowrap;text-align:center}.chess-piece-cta:first-child{top:-50px;left:50px;transform:rotate(-15deg)}.chess-piece-cta:nth-child(2){bottom:50px;left:150px;transform:rotate(25deg)}@media (max-width:768px){.final-cta-section{padding:40px 24px}.final-cta-section h2{font-size:2rem}.final-cta-section p{font-size:1rem}}.loading-spinner{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10001;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.loading-spinner.hidden{display:none}.loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:-1}.loading-content{background:#fff;border-radius:20px;padding:40px;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.3);min-width:300px;max-width:400px;animation:.3s ease-out slideInScale}body.dark-mode .loading-content,html.dark-mode .loading-content{background:var(--dark-bg);color:var(--text-dark)}@keyframes slideInScale{from{opacity:0;transform:scale(.95) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.loading-content .spinner{width:60px;height:60px;margin:0 auto 20px;border:4px solid rgba(0,0,0,.1);border-top-color:var(--secondary-color);border-radius:50%;animation:.8s linear infinite spin}body.dark-mode .loading-content .spinner,html.dark-mode .loading-content .spinner{border-color:rgba(255,255,255,.1);border-top-color:var(--secondary-color)}.loading-message{font-size:1.2rem;font-weight:600;color:var(--primary-color);margin:0 0 20px}body.dark-mode .loading-message,html.dark-mode .loading-message{color:var(--text-dark)}.loading-content .progress-bar{width:100%;height:8px;background:rgba(0,0,0,.1);border-radius:10px;overflow:hidden;margin-top:20px}body.dark-mode .loading-content .progress-bar,html.dark-mode .loading-content .progress-bar{background:rgba(255,255,255,.1)}.loading-content .progress-bar.hidden{display:none}.loading-content .progress-fill{height:100%;background:linear-gradient(90deg,var(--secondary-color),#2ecc71);border-radius:10px;width:0%;transition:width .3s}.loading-content .progress-text{font-size:.85rem;color:var(--text-light);margin-top:8px;margin-bottom:0}body.dark-mode .loading-content .progress-text,html.dark-mode .loading-content .progress-text{color:var(--text-light)}.action-btn.loading,.btn.loading{position:relative;pointer-events:none;opacity:.8}.action-btn.loading:disabled,.btn.loading:disabled{cursor:not-allowed}.action-btn.loading i.spinning-icon,.btn.loading i.spinning-icon{display:inline-block;animation:1s linear infinite spin}.multiplayer-container{max-width:1400px;margin:0 auto;padding:20px}.multiplayer-menu{max-width:600px;margin:40px auto}.multiplayer-options{display:flex;flex-direction:column;gap:20px}.multiplayer-screen{max-width:1200px;margin:0 auto}.multiplayer-screen.hidden{display:none}.game-setup-form{max-width:500px;margin:30px auto;padding:30px;background:var(--light-bg);border-radius:10px;box-shadow:0 4px 6px rgba(0,0,0,.1)}.form-title{margin-top:0;margin-bottom:25px;text-align:center}.uppercase-input{text-transform:uppercase}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--text-dark)}.form-group input,.form-group select{width:100%;padding:12px;border:2px solid var(--border-color);border-radius:8px;font-size:16px;transition:border-color .3s}.form-group input:focus,.form-group select:focus{outline:0;border-color:var(--primary-color)}.form-group small{display:block;margin-top:5px;color:var(--text-light);font-size:14px}.btn-large{width:100%;padding:15px;font-size:18px;margin-top:10px;display:inline-flex;align-items:center;justify-content:center;gap:10px;display:inline-flex;align-items:center;justify-content:center}.btn-large i[data-lucide],.btn-large svg{width:20px;height:20px;flex-shrink:0}.game-code-display{text-align:center;margin:40px 0}.game-code-box{display:flex;align-items:center;justify-content:center;gap:15px;margin:20px 0}.game-code{font-size:48px;font-weight:700;font-family:'Courier New',monospace;color:var(--primary-color);letter-spacing:8px;padding:20px 30px;background:var(--light-bg);border:3px dashed var(--primary-color);border-radius:10px}.game-code-hint{color:var(--text-light);font-size:14px;margin-top:10px}.waiting-indicator{text-align:center;margin:40px auto;max-width:600px}.waiting-indicator .spinner{margin:20px auto}.waiting-screen{text-align:center}#btn-back-from-waiting,.waiting-screen>.btn-back{margin-top:20px!important;margin-bottom:20px!important}.waiting-screen .btn{margin:20px auto 0;display:inline-block}.connection-status{color:var(--success-color);font-size:14px;margin-top:10px}.board-container .player-info{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center;padding:15px;background:var(--light-bg);border-radius:10px;margin-bottom:15px;width:100%;max-width:500px}.player-card{display:flex;align-items:center;gap:12px;padding:12px;background:var(--light-bg);border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1)}.dark-mode .player-card{background:rgba(255,255,255,.05);box-shadow:0 2px 4px rgba(0,0,0,.3)}.player-avatar{font-size:32px;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:var(--light-bg);border-radius:50%}.player-details{display:flex;flex-direction:column;gap:4px}.player-name{font-weight:600;font-size:16px}.player-color{font-size:12px;color:var(--text-light);text-transform:capitalize}.connection-indicator{font-size:10px;color:var(--text-light)}.connection-indicator.connected{color:var(--success-color)}.game-info-center{text-align:center}.game-code-small{font-size:14px;margin-bottom:10px}.game-code-small strong{font-family:'Courier New',monospace;font-size:16px;color:var(--primary-color);letter-spacing:2px}.turn-indicator{font-size:18px;font-weight:600;color:var(--primary-color)}.btn-icon{background:var(--secondary-color);color:#fff;border:none;padding:10px 15px;border-radius:6px;cursor:pointer;transition:opacity .3s}.btn-icon:hover{opacity:.8}.dark-mode .btn-icon{background:var(--secondary-color);color:#fff}.btn-icon-small{background:0 0;border:none;cursor:pointer;opacity:.6;transition:opacity .3s;padding:4px;color:var(--text-dark)}.btn-icon-small:hover{opacity:1}@media (max-width:768px){.player-info{grid-template-columns:1fr}.game-content{flex-direction:column}.left-panel,.right-panel{width:100%}}.help-content{margin-top:20px}.help-section{margin-bottom:30px;padding:20px;background:var(--light-bg);border-radius:10px}.help-section h3{color:var(--primary-color);margin-bottom:15px}.help-section h4{color:var(--secondary-color);margin-top:20px;margin-bottom:12px;font-size:1.2rem}.help-section ol,.help-section ul{margin-left:30px;margin-bottom:15px;line-height:1.8}.help-section li{margin-bottom:8px;padding-left:10px}.help-section p{margin-bottom:12px;line-height:1.7}.help-section strong{color:var(--primary-color)}.help-section em{color:var(--text-light);display:block;margin-left:20px;margin-top:5px}.pieces-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-top:15px}.piece-info{background:#fff;padding:15px;border-radius:8px}.piece-info h4{font-size:1.5rem;margin-bottom:8px;color:var(--secondary-color)}.analysis-content{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:20px}@media (max-width:900px){.analysis-content{grid-template-columns:1fr}}.analysis-content>div:first-child{display:flex;justify-content:center;align-items:flex-start;width:100%}#analysis-board{width:100%;max-width:500px;aspect-ratio:1/1;margin:0 auto;opacity:0;transition:opacity .2s}#analysis-board.ready{opacity:1}.analysis-panel{background:var(--light-bg);padding:20px;border-radius:10px}@media (max-width:768px){.analysis-content{gap:20px}#analysis-board{max-width:100%}.analysis-panel{padding:15px}}.evaluation-bar{display:flex;height:40px;border-radius:8px;overflow:hidden;margin-bottom:15px}.eval-side{transition:.3s}#eval-white{background:#fff;width:50%}#eval-black{background:var(--dark-bg);width:50%}@media (max-width:600px){.analysis-content{gap:15px}#analysis-board{max-width:100%}.analysis-panel{padding:12px}.evaluation-bar{height:30px;margin-bottom:12px}}.evaluation-bar-vertical{display:flex;flex-direction:row;width:100%;max-width:500px;height:30px;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.15);transition:opacity .3s;margin-bottom:15px;border:2px solid rgba(0,0,0,.2)}body.dark-mode .evaluation-bar-vertical,html.dark-mode .evaluation-bar-vertical{border-color:rgba(255,255,255,.3)}.evaluation-bar-vertical.hidden{display:none}.eval-side-vertical{transition:.3s}#play-eval-black{background:var(--dark-bg);width:50%}#play-eval-white{background:#fff;width:50%}.move-navigation{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0}@media (max-width:600px){.move-navigation{grid-template-columns:repeat(2,1fr);gap:8px;margin:15px 0}.move-navigation .btn{font-size:.9rem;padding:10px 8px}}@media (max-width:400px){.move-navigation{grid-template-columns:1fr;gap:8px}}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin:20px 0}.stat-card{background:linear-gradient(135deg,var(--secondary-color),#5dade2);color:#fff;padding:30px;border-radius:15px;text-align:center;box-shadow:0 5px 15px rgba(0,0,0,.1)}.stat-card h3{font-size:1rem;margin-bottom:10px;opacity:.9}.stat-value{font-size:3rem;font-weight:700}.progress-actions{display:flex;justify-content:center;margin-top:40px}.btn-danger{background:linear-gradient(135deg,var(--danger-color),#c0392b);color:#fff;padding:15px 30px;font-size:1rem;font-weight:600;display:inline-flex;align-items:center;gap:10px;display:inline-flex;align-items:center;justify-content:center}.btn-danger:hover{background:linear-gradient(135deg,#c0392b,#a93226)}.btn-danger i[data-lucide],.btn-danger svg{width:18px;height:18px;flex-shrink:0}.achievements{margin-top:30px;background:var(--light-bg);padding:20px;border-radius:10px}.achievements h3{margin-bottom:15px;color:var(--primary-color)}.achievement-item{background:#fff;padding:15px;margin:10px 0;border-radius:8px;display:flex;align-items:center;gap:15px}.achievement-item .icon{font-size:2rem}.history-tabs{display:flex;gap:10px;margin-bottom:20px;border-bottom:2px solid var(--light-bg)}.history-tab{padding:12px 24px;background:0 0;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:1rem;font-weight:600;color:var(--text-light);transition:.3s;margin-bottom:-2px}.history-tab:hover{color:var(--secondary-color)}.history-tab.active{color:var(--secondary-color);border-bottom-color:var(--secondary-color)}.history-list{margin-top:20px}.history-item{background:var(--light-bg);padding:20px;margin:15px 0;border-radius:10px;transition:.3s;position:relative}.history-item:hover{background:#dfe4e8;transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.1)}@media (max-width:600px){.history-item{padding:15px;margin:12px 0}}.history-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.history-item-title{font-weight:700;color:var(--primary-color);font-size:1.1rem}.history-item-details{color:var(--text-light);font-size:.9rem;line-height:1.6;margin-bottom:15px}.history-item-actions{display:flex;gap:10px;flex-wrap:wrap}.history-item-actions button{padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;transition:.3s;display:inline-flex;align-items:center;gap:6px;min-height:38px;display:inline-flex;align-items:center;justify-content:center}.history-item-actions button i,.history-item-actions button svg{width:18px!important;height:18px!important;stroke-width:2!important}@media (max-width:600px){.history-item-actions{gap:8px}.history-item-actions button{padding:10px 12px;font-size:.85rem;flex:1;justify-content:center;min-width:0}}@media (max-width:400px){.history-item-actions{flex-direction:column;gap:8px}.history-item-actions button{width:100%}}.btn-resume{background:var(--success-color);color:#fff}.btn-resume:hover{background:#229954}.btn-delete{background:var(--danger-color);color:#fff}.btn-delete:hover{background:#c0392b}.btn-view{background:var(--secondary-color);color:#fff}.btn-view:hover{background:#2980b9}.btn-view-analysis{background:var(--secondary-color);color:#fff}.btn-view-analysis:hover{background:#2980b9}.saved-game-badge{display:inline-block;padding:4px 10px;background:var(--success-color);color:#fff;border-radius:12px;font-size:.8rem;font-weight:600}.empty-message{text-align:center;color:var(--text-light);padding:40px}.modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);display:flex;justify-content:center;align-items:center;z-index:1000}.modal.hidden{display:none}.modal-content{background:#fff;padding:40px;border-radius:20px;max-width:500px;text-align:center;box-shadow:0 10px 30px rgba(0,0,0,.3)}.modal-content h2{color:var(--primary-color);margin-bottom:20px}.modal-content p{margin-bottom:30px;font-size:1.1rem}.modal-actions{display:flex;flex-direction:column;gap:10px}.modal-actions .btn{width:100%}.stockfish-status{margin-top:10px;padding:10px;border-radius:8px;font-size:.9rem;text-align:center;font-weight:500;animation:.3s fadeIn}.stockfish-status.loading{background:linear-gradient(135deg,#3498db,#5dade2);color:#fff}.stockfish-status.ready{background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff}.stockfish-status.thinking{background:linear-gradient(135deg,#f39c12,#f1c40f);color:#fff;animation:1.5s ease-in-out infinite pulse}.stockfish-status.error{background:linear-gradient(135deg,#e74c3c,#ec7063);color:#fff}.elo-strength-control{display:flex;flex-direction:column;gap:8px;padding:10px;background:var(--light-bg);border-radius:8px;min-width:200px}.elo-strength-control label{font-weight:500;color:var(--primary-color)}#elo-display{font-weight:700;color:var(--secondary-color)}#elo-slider{width:100%;height:6px;border-radius:5px;background:linear-gradient(to right,#27ae60,#f39c12,#e74c3c);outline:0;cursor:pointer}#elo-slider::-webkit-slider-thumb{appearance:none;width:18px;height:18px;border-radius:50%;background:var(--secondary-color);cursor:pointer;box-shadow:0 2px 5px rgba(0,0,0,.2);transition:.2s}#elo-slider::-webkit-slider-thumb:hover{transform:scale(1.2);background:#2980b9}#elo-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--secondary-color);cursor:pointer;border:none;box-shadow:0 2px 5px rgba(0,0,0,.2)}.elo-label{font-size:.85rem;color:var(--text-light);font-style:italic}.multi-pv-panel{background:var(--light-bg);padding:15px;border-radius:10px;margin-top:15px}.multi-pv-panel h4{color:var(--primary-color);margin-bottom:10px}#multi-pv-list{display:flex;flex-direction:column;gap:8px}.pv-item{background:#fff;padding:10px;border-radius:6px;border-left:4px solid var(--secondary-color);transition:.2s;cursor:pointer}.pv-item:hover{transform:translateX(3px);box-shadow:0 2px 8px rgba(0,0,0,.1)}.pv-item.best{border-left-color:#27ae60;background:linear-gradient(to right,rgba(39,174,96,.05),#fff)}.pv-item.second{border-left-color:#f39c12}.pv-item.third{border-left-color:#3498db}.pv-rank{font-weight:700;color:var(--primary-color);margin-right:8px}.pv-move{font-family:monospace;font-size:1.1rem;color:var(--secondary-color);font-weight:500}.pv-eval{float:right;font-weight:500;padding:2px 8px;border-radius:4px;font-size:.9rem}.pv-eval.positive{background:rgba(39,174,96,.1);color:#27ae60}.pv-eval.negative{background:rgba(231,76,60,.1);color:#e74c3c}.pv-eval.neutral{background:rgba(149,165,166,.1);color:#95a5a6}.analysis-progress{margin:15px 0;padding:15px;background:var(--light-bg);border-radius:8px}.progress-bar-container{width:100%;height:20px;background:rgba(0,0,0,.1);border-radius:10px;overflow:hidden;margin-bottom:10px}.progress-bar{height:100%;background:linear-gradient(90deg,#3498db,#2ecc71);border-radius:10px;transition:width .3s;width:0%;animation:2s ease-in-out infinite progressGlow}@keyframes progressGlow{0%,100%{box-shadow:0 0 10px rgba(52,152,219,.5)}50%{box-shadow:0 0 20px rgba(52,152,219,.8)}}#analysis-progress-text{text-align:center;font-size:.9rem;color:var(--text-light);margin:0}.multi-pv-analysis{margin-top:15px;padding:15px;background:var(--light-bg);border-radius:10px}.multi-pv-analysis h4{color:var(--primary-color);margin-bottom:10px}#multi-pv-analysis-list{display:flex;flex-direction:column;gap:10px}.multi-pv-analysis-item{background:#fff;padding:12px;border-radius:6px;border-left:3px solid var(--secondary-color)}.multi-pv-analysis-item.best{border-left-color:#27ae60}.move-indicator{position:absolute;top:-5px;right:-5px;width:90px;height:90px;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:100;opacity:0;transform:scale(.5);transition:.3s cubic-bezier(.34, 1.56, .64, 1);pointer-events:none;box-shadow:0 4px 16px rgba(0,0,0,.4)}.move-indicator.active{opacity:1;transform:scale(1)}.move-indicator-icon{width:52px!important;height:52px!important;stroke:white!important;stroke-width:3!important;fill:none!important}.move-indicator-brilliant{background:linear-gradient(135deg,#1baca6,#17a398)!important}.move-indicator-best,.move-indicator-excellent,.move-indicator-good{background:linear-gradient(135deg,#96bc4b,#7ea83a)!important}.move-indicator-book{background:linear-gradient(135deg,#9ca3af,#6b7280)!important}.move-indicator-inaccuracy{background:linear-gradient(135deg,#f0ad4e,#ec971f)!important}.move-indicator-mistake{background:linear-gradient(135deg,#d9534f,#c9302c)!important}.move-indicator-blunder{background:linear-gradient(135deg,#c0392b,#a93226)!important}.hidden{display:none!important}.text-center{text-align:center}.mt-20{margin-top:20px}.mb-20{margin-bottom:20px}.highlight-square{box-shadow:none!important}.highlight-square img{filter:drop-shadow(0 0 0 var(--highlight-box-color, var(--highlight-color))) drop-shadow(0 0 8px var(--highlight-box-color, var(--highlight-color))) drop-shadow(0 0 12px var(--highlight-box-color, var(--highlight-color)))}.hint-square{position:relative}.hint-square::before{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40%;height:40%;background-color:var(--hint-dot-color,var(--hint-color));border-radius:50%;pointer-events:none;z-index:10}.last-move-highlight{background-color:rgba(255,255,0,.3)!important}.timer-container{width:100%;max-width:500px;margin-bottom:15px}.timer-display{display:flex;justify-content:space-between;gap:10px;width:100%}.timer{flex:1;background:var(--light-bg);padding:15px;border-radius:10px;text-align:center;transition:.3s}.timer-label{display:block;font-size:.9rem;margin-bottom:5px;color:var(--text-light)}.timer-time{display:block;font-size:1.8rem;font-weight:700;font-family:'Courier New',monospace;color:var(--text-dark)}.timer-active{background:var(--secondary-color);transform:scale(1.05)}.timer-active .timer-label,.timer-active .timer-time{color:#fff}.timer-warning{background:var(--danger-color);animation:1s infinite pulse}.timer-warning .timer-label,.timer-warning .timer-time{color:#fff}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.7}}@media (max-width:600px){.timer{padding:10px 8px}.timer-label{font-size:.8rem}.timer-time{font-size:1.4rem}}.import-content{margin-top:20px}.import-instructions{background:var(--light-bg);padding:20px;border-radius:10px;margin-bottom:30px}.import-instructions h3{color:var(--primary-color);margin-bottom:10px;display:flex;align-items:center;gap:8px}.import-instructions h3 i[data-lucide],.import-instructions h3 svg{width:20px;height:20px;flex-shrink:0}.import-instructions p{margin-bottom:10px}.import-instructions ul{margin-left:25px;line-height:1.8}.import-methods{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:30px}@media (max-width:900px){.import-methods{grid-template-columns:1fr}}.import-method{background:var(--light-bg);padding:20px;border-radius:10px}.import-method h4{color:var(--secondary-color);margin-bottom:15px;display:flex;align-items:center;gap:8px}.import-method h4 i[data-lucide],.import-method h4 svg{width:20px;height:20px;flex-shrink:0}#pgn-input{width:100%;min-height:200px;padding:15px;border:2px solid var(--light-bg);border-radius:8px;font-family:monospace;font-size:.9rem;resize:vertical;margin-bottom:15px}#pgn-input:focus{outline:0;border-color:var(--secondary-color)}#btn-import-text,#btn-upload-file{width:100%;justify-content:center}.import-examples{background:var(--light-bg);padding:20px;border-radius:10px}.import-examples h4{color:var(--primary-color);margin-bottom:15px;display:flex;align-items:center;gap:8px}.import-examples h4 i[data-lucide],.import-examples h4 svg{width:20px;height:20px;flex-shrink:0}.example-btn{width:100%;margin:10px 0;text-align:left;justify-content:flex-start}.help-container h3 a{text-decoration:none}.help-container h3 a:hover{text-decoration:underline}.blog-description{color:var(--text-light)}.blog-post-title{margin-bottom:8px}.blog-post-date{color:var(--text-light);margin-bottom:10px}.blog-read-btn{display:inline-block;margin-top:10px}.help-container .btn,.help-container a.btn{color:rgba(255,255,255,.95)!important;text-decoration:none}body.dark-mode .help-container .btn,body.dark-mode .help-container a.btn{color:rgba(255,255,255,.95)!important}.post-title{margin-bottom:5px}.post-date{color:var(--text-light);margin-bottom:20px}.help-nav-section{background:linear-gradient(135deg,var(--secondary-color),#5dade2);color:#fff}.help-nav-section h3{color:#fff}.help-nav-links{opacity:.9}.help-nav-links a,.help-nav-links a:visited{color:#fff}.help-icon-inline{width:20px;height:20px;display:inline-block;vertical-align:middle}.help-terminology-columns{columns:2;column-gap:30px}.help-toc{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.help-toc a{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.18);text-decoration:none;font-weight:700;color:#fff}.help-toc a:visited{color:#fff}.help-nav-note{margin-top:12px;line-height:1.6;opacity:.95}.help-muted{color:var(--text-light)}.help-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;padding:2px 6px;border-radius:6px;background:rgba(0,0,0,.06)}body.dark-mode .help-mono,html.dark-mode .help-mono{background:rgba(255,255,255,.08)}.help-kbd{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;border:1px solid rgba(0,0,0,.15);border-bottom-width:2px;padding:1px 6px;border-radius:6px;background:rgba(255,255,255,.75)}body.dark-mode .help-kbd,html.dark-mode .help-kbd{border-color:rgba(255,255,255,.16);background:rgba(0,0,0,.18)}.help-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:12px}.help-card{background:#fff;border-radius:12px;padding:14px;border:1px solid rgba(44,62,80,.08)}body.dark-mode .help-card,html.dark-mode .help-card{background:var(--dark-bg);border-color:rgba(255,255,255,.1)}.help-card h5{display:flex;align-items:center;gap:8px;margin-bottom:8px;color:var(--primary-color);font-size:1.05rem}.help-card p{margin:0}.help-callout{border-radius:12px;padding:14px;margin:12px 0;background:rgba(52,152,219,.08);border-left:4px solid var(--secondary-color)}.help-callout h4{margin-top:0}.help-callout.help-tip{background:rgba(39,174,96,.1);border-left-color:var(--success-color)}.help-callout.help-warning{background:rgba(243,156,18,.12);border-left-color:var(--warning-color)}.help-table{width:100%;border-collapse:collapse;margin-top:12px;background:#fff;border-radius:12px;overflow:hidden}body.dark-mode .help-table,html.dark-mode .help-table{background:var(--dark-bg)}.help-table td,.help-table th{padding:12px;border-bottom:1px solid rgba(44,62,80,.1);text-align:left;vertical-align:top}body.dark-mode .help-table td,body.dark-mode .help-table th,html.dark-mode .help-table td,html.dark-mode .help-table th{border-bottom-color:rgba(255,255,255,.1)}.help-table th{background:rgba(52,152,219,.08);color:var(--primary-color)}@media (max-width:720px){.help-terminology-columns{columns:1}}.visually-hidden{display:none}.file-name-display{margin-top:10px;color:var(--text-light)}.btn-full-width{width:100%;margin:15px 0;justify-content:center}.btn-full-width i[data-lucide],.btn-full-width svg{width:18px;height:18px;flex-shrink:0}#btn-back-from-create,#btn-back-from-join,#btn-back-from-waiting,#waiting-screen .btn-back{margin-top:20px!important}.warning-banner{background:linear-gradient(135deg,var(--warning-color),#f1c40f);color:#fff;padding:12px 20px;border-radius:8px;margin-bottom:20px;margin-top:20px;display:flex;align-items:center;gap:10px;font-weight:500;box-shadow:0 2px 8px rgba(243,156,18,.3)}.warning-banner i{width:20px;height:20px;flex-shrink:0}body.dark-mode .warning-banner,html.dark-mode .warning-banner{background:linear-gradient(135deg,rgba(230,126,34,.3),rgba(243,156,18,.3));border:1px solid rgba(243,156,18,.5);box-shadow:0 2px 8px rgba(0,0,0,.2)}