.chess-board-container{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;aspect-ratio:1 / 1;max-width:min(100%,80vh);max-height:min(100%,80vw);margin:0 auto}.chess-board-canvas{width:100%;height:100%;border-radius:var(--border-radius);box-shadow:0 12px 40px #0006,0 0 0 1px #ffffff1a,inset 0 0 0 1px #0003;cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:none;transition:box-shadow .3s ease}.chess-board-canvas:hover{box-shadow:0 16px 48px #00000080,0 0 0 1px #ffffff26,inset 0 0 0 1px #0003}.chess-board-container[data-disabled=true] .chess-board-canvas{cursor:not-allowed;opacity:.9}.chess-board-container[data-thinking=true] .chess-board-canvas{cursor:wait}.promotion-overlay{position:absolute;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;border-radius:var(--border-radius);animation:fadeIn .15s ease-out}.promotion-dialog{background:var(--color-surface);padding:1.5rem;border-radius:var(--border-radius-lg);box-shadow:0 12px 48px #0006;animation:scaleIn .15s ease-out}.promotion-title{text-align:center;font-size:1.1rem;font-weight:600;color:var(--color-text-primary);margin-bottom:1rem}.promotion-pieces{display:flex;gap:.75rem;justify-content:center}.promotion-piece-btn{padding:.5rem;background:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--border-radius);cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.promotion-piece-btn:hover{background:var(--color-primary);border-color:var(--color-primary);transform:scale(1.1)}.promotion-piece-btn:active{transform:scale(1.05)}.promotion-piece-btn canvas{display:block}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media (hover: none){.chess-board-canvas{cursor:default}.promotion-piece-btn:hover{transform:none}.promotion-piece-btn:active{transform:scale(1.05)}}@media (max-width: 768px){.chess-board-container{max-width:100%;max-height:65vh}.promotion-dialog{padding:1rem}.promotion-title{font-size:1rem}.promotion-pieces{gap:.5rem}}.status-bar{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:#1a1a2e99;backdrop-filter:blur(10px);border:1px solid rgba(99,102,241,.2);border-radius:16px;box-shadow:0 8px 32px #0000004d;gap:1.5rem}.status-info{display:flex;align-items:center;gap:1rem;flex:1;min-width:0}.turn-indicator{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#6366f11a;border:3px solid rgba(99,102,241,.3);transition:all .3s ease;flex-shrink:0;position:relative}.turn-indicator:before{content:"";position:absolute;inset:-4px;border-radius:50%;background:radial-gradient(circle,rgba(99,102,241,.2),transparent);opacity:0;transition:opacity .3s ease}.turn-indicator:hover:before{opacity:1}.turn-indicator[data-color=white]{border-color:#f0d9b5;box-shadow:0 4px 20px #f0d9b54d}.turn-indicator[data-color=black]{border-color:#b58863;box-shadow:0 4px 20px #b588634d}.turn-indicator[data-gameover=true]{border-color:var(--accent-primary);box-shadow:0 4px 20px #6366f180;animation:victoryPulse 1.5s ease-in-out infinite}.turn-indicator[data-thinking=true]{animation:thinkingPulse 1.2s ease-in-out infinite}@keyframes victoryPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes thinkingPulse{0%,to{transform:scale(1);box-shadow:0 4px 20px #6366f14d}50%{transform:scale(1.08);box-shadow:0 6px 30px #6366f199}}.turn-piece{width:32px;height:32px;border-radius:50%;transition:background .3s ease}.turn-indicator[data-color=white] .turn-piece{background:linear-gradient(145deg,#fff,#e0e0e0);box-shadow:inset 0 -2px 4px #0000001a}.turn-indicator[data-color=black] .turn-piece{background:linear-gradient(145deg,#444,#222);box-shadow:inset 0 -2px 4px #0000004d}.status-text{flex:1;min-width:0}.status-main{font-size:1.125rem;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:.35rem;text-shadow:0 2px 8px rgba(0,0,0,.3)}.status-secondary{font-size:.85rem;color:var(--text-secondary);margin-top:.125rem;font-weight:500}.thinking-dots span{animation:blink 1.4s infinite;font-weight:700}.thinking-dots span:nth-child(2){animation-delay:.2s}.thinking-dots span:nth-child(3){animation-delay:.4s}@keyframes blink{0%,60%,to{opacity:1}30%{opacity:.2}}.status-sub{display:flex;gap:1rem;font-size:.85rem;color:var(--color-text-secondary);margin-top:.25rem}.game-mode{font-weight:500}.move-count{opacity:.7}.turn-hint{color:var(--accent-primary);font-weight:600;animation:fadeInPulse 2s ease-in-out infinite}@keyframes fadeInPulse{0%,to{opacity:.6}50%{opacity:1}}.thinking-pulse{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;border-radius:50%;background:radial-gradient(circle,rgba(99,102,241,.4),transparent 70%);animation:pulsate 1.5s ease-out infinite}@keyframes pulsate{0%{transform:translate(-50%,-50%) scale(.8);opacity:1}to{transform:translate(-50%,-50%) scale(1.5);opacity:0}}.status-controls{display:flex;gap:.5rem}.control-btn{width:40px;height:40px;border:none;border-radius:var(--border-radius);background:var(--color-bg);color:var(--color-text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.control-btn:hover:not(:disabled){background:var(--color-primary);color:#fff;transform:translateY(-2px)}.control-btn:active:not(:disabled){transform:translateY(0)}.control-btn:disabled{opacity:.4;cursor:not-allowed}.control-btn.primary{background:var(--color-primary);color:#fff}.control-btn.primary:hover:not(:disabled){background:var(--color-primary-dark)}.control-btn svg{width:20px;height:20px}@media (max-width: 600px){.status-bar{flex-direction:column;padding:1rem;gap:.75rem}.status-info{width:100%}.status-controls{width:100%;justify-content:center}.turn-indicator{width:40px;height:40px}.turn-piece{width:26px;height:26px}.status-main{font-size:1rem}}.move-history{background:#1a1a2e99;backdrop-filter:blur(10px);border:1px solid rgba(99,102,241,.2);border-radius:16px;box-shadow:0 8px 32px #0000004d;display:flex;flex-direction:column;height:100%;min-height:300px;overflow:hidden}.move-history-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid rgba(99,102,241,.2);background:#6366f11a}.move-history-header h3{margin:0;font-size:1rem;font-weight:700;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px}.move-history-header .move-count{font-size:.75rem;color:var(--accent-primary);background:#6366f133;padding:.25rem .75rem;border-radius:12px;font-weight:600}.move-history-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--color-text-secondary);padding:2rem}.move-history-empty p{margin:0}.move-history-empty .hint{font-size:.85rem;opacity:.7;margin-top:.5rem}.move-history-list{flex:1;overflow-y:auto;overflow-x:hidden;padding:.75rem;scroll-behavior:smooth}.move-history-list::-webkit-scrollbar{width:6px}.move-history-list::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.move-history-list::-webkit-scrollbar-thumb{background:var(--accent-primary);border-radius:3px}.move-history-list::-webkit-scrollbar-thumb:hover{background:#7c7ef5}.move-pair{display:grid;grid-template-columns:2rem 1fr 1fr;gap:.25rem;margin-bottom:.25rem;align-items:center}.move-number{font-size:.8rem;color:var(--color-text-secondary);text-align:right;padding-right:.5rem;font-weight:500}.move-btn{background:transparent;border:none;color:var(--text-primary);padding:.5rem .75rem;border-radius:8px;cursor:pointer;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.9rem;text-align:left;transition:all .15s ease;position:relative;overflow:hidden}.move-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#6366f133,#f59e0b33);opacity:0;transition:opacity .15s ease;z-index:-1}.move-btn:hover:before{opacity:1}.move-btn:hover{transform:translate(2px);box-shadow:0 2px 8px #6366f14d}.move-btn.current{background:linear-gradient(135deg,var(--accent-primary),#7c7ef5);color:#fff;font-weight:700;box-shadow:0 4px 12px #6366f166;transform:scale(1.02)}.move-btn.check{color:var(--color-warning)}.move-btn.check.current{color:#fff}.move-btn.checkmate{color:var(--color-error);font-weight:600}.move-btn.checkmate.current{color:#fff;background:var(--color-error)}.move-history-nav{display:flex;gap:.5rem;padding:.75rem 1rem;border-top:1px solid var(--color-border);justify-content:center}.nav-btn{width:36px;height:36px;border:none;border-radius:var(--border-radius);background:var(--color-bg);color:var(--color-text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.nav-btn:hover:not(:disabled){background:var(--color-primary);color:#fff}.nav-btn:disabled{opacity:.4;cursor:not-allowed}.nav-btn svg{width:18px;height:18px}.move-history-list::-webkit-scrollbar{width:8px}.move-history-list::-webkit-scrollbar-track{background:var(--color-bg);border-radius:4px}.move-history-list::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}.move-history-list::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}@media (max-width: 768px){.move-history{max-height:250px}.move-pair{grid-template-columns:1.75rem 1fr 1fr}.move-btn{font-size:.85rem;padding:.3rem .4rem}}.ai-analysis{background:#1a1a2e99;backdrop-filter:blur(10px);border:1px solid rgba(99,102,241,.2);border-radius:16px;box-shadow:0 8px 32px #0000004d;padding:1.25rem;max-height:500px;overflow-y:auto;overflow-x:hidden}.ai-analysis::-webkit-scrollbar{width:6px}.ai-analysis::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.ai-analysis::-webkit-scrollbar-thumb{background:var(--accent-primary);border-radius:3px}.ai-analysis-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid rgba(99,102,241,.2)}.ai-analysis-header h3{margin:0;font-size:1rem;font-weight:700;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px}.thinking-badge{font-size:.7rem;padding:.35rem .75rem;background:linear-gradient(135deg,var(--accent-primary),#7c7ef5);color:#fff;border-radius:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;animation:pulse 1.5s ease-in-out infinite,glow 2s ease-in-out infinite;box-shadow:0 2px 12px #6366f166}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(.98)}}@keyframes glow{0%,to{box-shadow:0 2px 12px #6366f166}50%{box-shadow:0 4px 20px #6366f199}}.ai-analysis-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;color:var(--color-text-secondary);text-align:center}.ai-analysis-empty svg{width:48px;height:48px;margin-bottom:1rem;opacity:.3}.ai-analysis-empty p{margin:0;font-size:.9rem}.eval-bar-container{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.eval-bar{flex:1;height:28px;background:linear-gradient(90deg,#1f1f3a,#2a2a4a);border-radius:14px;overflow:hidden;position:relative;box-shadow:inset 0 2px 8px #0000004d;border:1px solid rgba(99,102,241,.2)}.eval-bar-white{height:100%;background:linear-gradient(90deg,#f3f4f6,#fff);transition:width .4s cubic-bezier(.4,0,.2,1);border-radius:14px;box-shadow:0 0 12px #ffffff4d;position:relative}.eval-bar-white:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.eval-score{font-family:JetBrains Mono,Fira Code,monospace;font-size:1rem;font-weight:700;min-width:4rem;text-align:right}.eval-score[data-advantage=white]{color:var(--color-success)}.eval-score[data-advantage=black]{color:var(--color-error)}.eval-score[data-advantage=equal]{color:var(--color-text-secondary)}.ai-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1rem}.stat{display:flex;flex-direction:column;align-items:center;padding:.75rem;background:var(--color-bg);border-radius:var(--border-radius)}.stat-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin-bottom:.25rem}.stat-value{font-family:JetBrains Mono,Fira Code,monospace;font-size:.95rem;font-weight:600;color:var(--color-text-primary)}.stat-value.highlight{color:var(--color-primary)}.pv-line{padding:.75rem;background:var(--color-bg);border-radius:var(--border-radius);font-size:.85rem}.pv-label{color:var(--color-text-secondary);margin-right:.5rem}.pv-moves{font-family:JetBrains Mono,Fira Code,monospace;color:var(--color-text-primary);word-break:break-word}@media (max-width: 600px){.ai-stats{grid-template-columns:1fr 1fr}.ai-stats .stat:last-child{grid-column:span 2}.eval-bar-container{flex-direction:column;align-items:stretch;gap:.5rem}.eval-score{text-align:center}}.settings-panel{background:#1a1a2e99;backdrop-filter:blur(10px);border:1px solid rgba(99,102,241,.2);border-radius:16px;box-shadow:0 8px 32px #0000004d;overflow:hidden}.settings-header{padding:1.25rem 1.5rem;border-bottom:1px solid rgba(99,102,241,.2);background:#6366f11a}.settings-header h3{margin:0;font-size:1rem;font-weight:700;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px}.settings-section{padding:1rem 1.25rem;border-bottom:1px solid var(--color-border)}.settings-section:last-child{border-bottom:none}.settings-label{display:block;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin-bottom:.75rem}.settings-hint{font-size:.75rem;color:var(--accent-primary);margin:-.5rem 0 .75rem;font-weight:500;font-style:italic}.mode-buttons{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.mode-btn{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.25rem;background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:12px;cursor:pointer;transition:all .2s ease;color:var(--text-primary);position:relative;overflow:hidden}.mode-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#6366f133,#f59e0b33);opacity:0;transition:opacity .2s ease}.mode-btn:hover:before{opacity:1}.mode-btn:hover{transform:translateY(-2px);border-color:var(--accent-primary);box-shadow:0 4px 16px #6366f14d}.mode-btn.active{background:linear-gradient(135deg,var(--accent-primary),#7c7ef5);color:#fff;border-color:var(--accent-primary);box-shadow:0 4px 20px #6366f166;transform:scale(1.02)}.mode-btn svg{width:32px;height:32px}.mode-btn span{font-size:.9rem;font-weight:500}.difficulty-list{display:flex;flex-direction:column;gap:.5rem}.difficulty-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem 1rem;background:var(--color-bg);border:2px solid transparent;border-radius:var(--border-radius);cursor:pointer;transition:all .15s ease;text-align:left}.difficulty-btn:hover{background:var(--color-surface);border-color:var(--color-primary)}.difficulty-btn.active{background:var(--color-primary);border-color:var(--color-primary)}.difficulty-name{font-size:.95rem;font-weight:600;color:var(--color-text-primary)}.difficulty-btn.active .difficulty-name{color:#fff}.difficulty-desc{font-size:.8rem;color:var(--color-text-secondary)}.difficulty-btn.active .difficulty-desc{color:#fffc}.color-buttons{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.color-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1rem;background:var(--color-bg);border:2px solid transparent;border-radius:var(--border-radius);cursor:pointer;transition:all .15s ease;color:var(--color-text-primary)}.color-btn:hover{border-color:var(--color-primary);transform:translateY(-2px)}.color-btn.active{border-color:var(--color-primary);background:var(--color-surface);box-shadow:0 4px 16px #6366f14d}.color-piece{width:32px;height:32px;border-radius:50%;box-shadow:0 2px 8px #0003}.color-piece.white{background:linear-gradient(145deg,#fff,#e0e0e0);border:2px solid #ccc}.color-piece.black{background:linear-gradient(145deg,#444,#222);border:2px solid #333}.color-btn>span:first-of-type{font-size:.95rem;font-weight:600}.color-hint{font-size:.7rem;color:var(--text-muted);font-weight:400}.color-btn.active .color-hint{color:var(--accent-primary);font-weight:500}.new-game-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;padding:1rem;background:var(--color-primary);color:#fff;border:none;border-radius:var(--border-radius);font-size:1rem;font-weight:600;cursor:pointer;transition:all .15s ease}.new-game-btn:hover{background:var(--color-primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px #4caf504d}.new-game-btn:active{transform:translateY(0)}.new-game-btn svg{width:20px;height:20px}@media (max-width: 600px){.mode-buttons,.color-buttons{grid-template-columns:1fr}.mode-btn{flex-direction:row;padding:.75rem 1rem}.mode-btn svg{width:24px;height:24px}}:root{--bg-primary: #0d0d1c;--bg-secondary: #151528;--bg-tertiary: #1f1f36;--bg-surface: rgba(255, 255, 255, .04);--text-primary: #f5f7ff;--text-secondary: #b7bedc;--text-muted: #8a8fb0;--accent-primary: #6366f1;--accent-secondary: #f59e0b;--accent-success: #10b981;--accent-warning: #f59e0b;--accent-error: #ef4444;--color-bg: rgba(255, 255, 255, .04);--color-surface: rgba(255, 255, 255, .08);--color-surface-strong: rgba(255, 255, 255, .12);--color-text-primary: #f5f7ff;--color-text-secondary: #a9b2d0;--color-border: rgba(255, 255, 255, .14);--color-primary: #6366f1;--color-primary-dark: #4f46e5;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--border-radius: 12px;--border-radius-lg: 16px;--shadow-sm: 0 2px 6px rgba(0, 0, 0, .15);--shadow-md: 0 6px 18px rgba(0, 0, 0, .25);--shadow-lg: 0 14px 40px rgba(0, 0, 0, .35);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s ease;--font-xs: 12px;--font-sm: 14px;--font-md: 16px;--font-lg: 18px;--font-xl: 24px;--font-2xl: 32px;--board-light: #f0d9b5;--board-dark: #b58863;--board-light-highlight: #f7ec5e;--board-dark-highlight: #dac34b;--board-light-selected: #829769;--board-dark-selected: #646f40;--board-light-check: #ff6b6b;--board-dark-check: #c93c3c;--board-legal-move: rgba(0, 0, 0, .15);--board-legal-capture: rgba(0, 0, 0, .3)}[data-theme=light]{--bg-primary: #f3f4f8;--bg-secondary: #ffffff;--bg-tertiary: #e7e9f2;--bg-surface: rgba(0, 0, 0, .03);--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #6b7280;--color-bg: rgba(0, 0, 0, .02);--color-surface: rgba(0, 0, 0, .05);--color-surface-strong: rgba(0, 0, 0, .08);--color-text-primary: #0f172a;--color-text-secondary: #4b5563;--color-border: rgba(0, 0, 0, .08)}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:radial-gradient(circle at 20% 20%,rgba(99,102,241,.12),transparent 30%),radial-gradient(circle at 80% 0%,rgba(245,158,11,.12),transparent 24%),linear-gradient(135deg,#0f0f1e,#16162b,#1e1e36);background-size:200% 200%;animation:gradientShift 18s ease infinite;color:var(--text-primary);min-height:100vh;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-y:auto;overflow-x:hidden}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}#root{min-height:100vh;display:flex;flex-direction:column}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:999px}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,var(--accent-primary),#7c7ef5);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#7c7ef5,var(--accent-primary))}*{scrollbar-width:thin;scrollbar-color:var(--accent-primary) var(--bg-tertiary)}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2}h1{font-size:var(--font-2xl)}h2{font-size:var(--font-xl)}h3{font-size:var(--font-lg)}button{font-family:inherit;font-size:var(--font-md);cursor:pointer;border:none;outline:none;background:none;color:inherit;transition:all var(--transition-fast)}button:disabled{cursor:not-allowed;opacity:.55}select{font-family:inherit;font-size:var(--font-md);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--bg-secondary);color:var(--text-primary);outline:none}select:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #6366f140}.text-muted{color:var(--text-muted)}.text-sm{font-size:var(--font-sm)}.glass-panel{background:linear-gradient(135deg,#ffffff0f,#ffffff08);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);backdrop-filter:blur(12px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.app{min-height:100vh;display:flex;flex-direction:column;color:var(--text-primary)}.app-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.5rem;background:#0d0d1cd1;border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-md);backdrop-filter:blur(14px)}.logo{display:flex;align-items:center;gap:.75rem;min-width:0}.logo-icon{width:36px;height:36px;color:var(--accent-primary);filter:drop-shadow(0 4px 12px rgba(99,102,241,.45));flex-shrink:0}.logo h1{font-size:1.25rem;font-weight:800;letter-spacing:-.2px}.header-actions{display:flex;align-items:center;gap:.5rem}.header-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:var(--color-surface);border:1px solid var(--color-border);color:var(--text-primary);box-shadow:var(--shadow-sm)}.header-btn:hover{background:var(--accent-primary);color:#fff;transform:translateY(-1px)}.header-btn:active{transform:translateY(0)}.header-btn svg{width:20px;height:20px}.app-main{flex:1;display:flex;justify-content:center;align-items:flex-start;padding:clamp(1rem,2vw,2rem)}.app-layout{width:100%;max-width:1400px;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.9fr);gap:clamp(1rem,2vw,1.5rem);align-items:flex-start}.board-section{display:flex;flex-direction:column;gap:1rem;min-width:0}.info-section{display:flex;flex-direction:column;gap:1rem;min-width:0;max-height:calc(100vh - 180px);overflow-y:auto;padding-right:4px}.panel{background:linear-gradient(135deg,#ffffff0f,#ffffff08);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);backdrop-filter:blur(12px)}.app-footer{padding:1.25rem 1.5rem;text-align:center;background:#0d0d1cd1;border-top:1px solid var(--color-border);box-shadow:0 -8px 24px #0003;backdrop-filter:blur(12px)}.app-footer p{margin:0;color:var(--text-secondary);font-size:.9rem}.footer-hint{color:var(--text-muted);margin-left:.35rem;font-size:.85rem}@media (max-width: 1100px){.app-layout{grid-template-columns:1fr}.info-section{max-height:none;overflow:visible;padding-right:0}}@media (max-width: 640px){.app-header{flex-direction:column;align-items:flex-start}.header-actions{width:100%;justify-content:flex-start}}
