*{margin:0;padding:0;box-sizing:border-box}
:root{
    --primary:#325aaf;
    --primary-hover:#2a4d96;
    --primary-light:#e8edf5;
    --primary-dark:#264080;
    --bg:#f0f2f5;
    --bg-card:#ffffff;
    --text:#222222;
    --text-secondary:#666666;
    --text-light:#999999;
    --border:#d8dce3;
    --border-light:#eef0f3;
    --board-bg:#ffffff;
    --cell-bg:#ffffff;
    --cell-selected:#bbd5f1;
    --cell-highlight:#e3edf7;
    --cell-same-num:#d0dff0;
    --cell-error:#f8d7da;
    --cell-given:#e9ecf0;
    --cell-given-text:#222222;
    --cell-hint:#d4edda;
    --thick-border:#4a5568;
    --num-btn-bg:#ffffff;
    --num-btn-border:#cdd3dc;
    --num-btn-hover:#e3edf7;
    --num-completed-bg:#f0f2f5;
    --num-completed-text:#c0c4cc;
    --ctrl-active:#325aaf;
    --ctrl-active-text:#ffffff;
    --shadow-sm:0 1px 3px rgba(0,0,0,0.06);
    --shadow:0 2px 8px rgba(0,0,0,0.1);
    --shadow-lg:0 8px 24px rgba(0,0,0,0.15);
    --radius:8px;
    --radius-sm:6px;
    --radius-lg:12px;
    --transition:0.2s ease;
}
body.dark{
    --primary:#5b8bd6;
    --primary-hover:#4a7ac5;
    --primary-light:#1e2d4a;
    --primary-dark:#7ba5e6;
    --bg:#141821;
    --bg-card:#1e2530;
    --text:#dce1e8;
    --text-secondary:#8a93a0;
    --text-light:#5a6370;
    --border:#2e3644;
    --border-light:#252d3a;
    --board-bg:#1e2530;
    --cell-bg:#1e2530;
    --cell-selected:#2a4a72;
    --cell-highlight:#1c2e48;
    --cell-same-num:#243e5c;
    --cell-error:#4a2020;
    --cell-given:#2a3040;
    --cell-given-text:#d0d5dc;
    --cell-hint:#1e3a28;
    --thick-border:#8a93a0;
    --num-btn-bg:#1e2530;
    --num-btn-border:#2e3644;
    --num-btn-hover:#243050;
    --num-completed-bg:#181c24;
    --num-completed-text:#404650;
    --ctrl-active:#5b8bd6;
    --ctrl-active-text:#ffffff;
    --shadow-sm:0 1px 3px rgba(0,0,0,0.3);
    --shadow:0 2px 8px rgba(0,0,0,0.4);
    --shadow-lg:0 8px 24px rgba(0,0,0,0.5);
}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Microsoft YaHei',Roboto,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;line-height:1.5}

.header{display:flex;align-items:center;justify-content:space-between;padding:0 24px;height:52px;background:var(--bg-card);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:100}
.header-left{display:flex;align-items:center}
.logo{display:flex;align-items:center;gap:8px;font-size:1.1rem;font-weight:700;color:var(--primary);text-decoration:none}
.logo svg{flex-shrink:0}
.header-nav{display:flex;gap:4px}
.nav-link{padding:6px 14px;border-radius:var(--radius-sm);text-decoration:none;color:var(--text-secondary);font-weight:500;font-size:0.88rem;transition:all var(--transition)}
.nav-link:hover{background:var(--primary-light);color:var(--primary)}
.nav-link.active{background:var(--primary);color:white}
.header-right{display:flex;align-items:center;gap:4px}
.icon-btn{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;padding:8px;border-radius:var(--radius-sm);color:var(--text-secondary);transition:all var(--transition)}
.icon-btn:hover{background:var(--primary-light);color:var(--primary)}
.lang-text{font-size:0.8rem;font-weight:700}

.main-container{max-width:1200px;margin:0 auto;padding:16px 20px}

.difficulty-bar{display:flex;gap:2px;background:var(--bg-card);padding:3px;border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:16px;justify-content:center}
.diff-btn{padding:8px 22px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font-weight:600;font-size:0.9rem;cursor:pointer;transition:all var(--transition)}
.diff-btn:hover{color:var(--primary);background:var(--primary-light)}
.diff-btn.active{background:var(--primary);color:white}

.game-layout{display:flex;gap:20px;align-items:flex-start;justify-content:center}

.game-panel{display:flex;flex-direction:column;align-items:center;gap:0}

.board-container{position:relative;flex-shrink:0}
.board{display:grid;grid-template-columns:repeat(9,1fr);grid-template-rows:repeat(9,1fr);width:min(460px,85vw);height:min(460px,85vw);background:var(--thick-border);border:3px solid var(--thick-border);border-radius:4px;overflow:hidden}
.cell{display:flex;align-items:center;justify-content:center;font-size:min(1.8rem,5vw);font-weight:500;background:var(--cell-bg);cursor:pointer;transition:background 0.1s;user-select:none;position:relative;color:var(--text)}
.cell.given{font-weight:700;background:var(--cell-given);color:var(--cell-given-text)}
.cell.selected{background:var(--cell-selected)}
.cell.highlighted{background:var(--cell-highlight)}
.cell.same-number{background:var(--cell-same-num)}
.cell.error{background:var(--cell-error);color:#c0392b}
body.dark .cell.error{color:#e57373}
.cell.hint-highlight{background:var(--cell-hint)}
.cell .notes{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);width:100%;height:100%;position:absolute;top:0;left:0}
.cell .notes span{display:flex;align-items:center;justify-content:center;font-size:min(0.55rem,1.6vw);font-weight:400;color:var(--primary)}
.cell[data-col="2"],.cell[data-col="5"]{border-right:2px solid var(--thick-border)}
.cell[data-row="2"],.cell[data-row="5"]{border-bottom:2px solid var(--thick-border)}

.paused-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(255,255,255,0.92);display:flex;align-items:center;justify-content:center;border-radius:4px;z-index:10}
body.dark .paused-overlay{background:rgba(20,24,33,0.92)}
.paused-content{display:flex;flex-direction:column;align-items:center;gap:12px}
.paused-play-btn{width:60px;height:60px;border-radius:50%;background:var(--primary);display:flex;align-items:center;justify-content:center;cursor:pointer;border:none;transition:all var(--transition);box-shadow:0 4px 12px rgba(50,90,175,0.4)}
.paused-play-btn:hover{transform:scale(1.05);background:var(--primary-hover)}
.paused-play-btn svg{width:28px;height:28px}
.paused-text{font-size:1rem;font-weight:600;color:var(--text-secondary)}

.controls-area{display:flex;flex-direction:column;gap:10px;min-width:220px;max-width:260px}

.info-bar{display:flex;align-items:center;background:var(--bg-card);padding:0;border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}
.info-item{flex:1;display:flex;flex-direction:column;align-items:center;padding:10px 12px;border-right:1px solid var(--border-light)}
.info-item:last-of-type{border-right:none}
.info-label{font-size:0.7rem;color:var(--text-light);text-transform:uppercase;letter-spacing:0.5px;font-weight:500}
.info-value{font-size:1.05rem;font-weight:700;color:var(--text)}
.pause-btn-wrap{display:flex;align-items:center;justify-content:center;width:44px;height:100%;cursor:pointer;background:transparent;border:none;border-left:1px solid var(--border-light);color:var(--primary);transition:all var(--transition);padding:0}
.pause-btn-wrap:hover{background:var(--primary-light)}
.pause-btn-wrap svg{width:20px;height:20px}

.action-bar{display:flex;gap:6px;background:var(--bg-card);padding:10px 12px;border-radius:var(--radius);box-shadow:var(--shadow-sm);justify-content:center}
.ctrl-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 10px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all var(--transition);font-size:0.68rem}
.ctrl-btn:hover{background:var(--primary-light);color:var(--primary)}
.ctrl-btn.active{background:var(--primary);color:white}
.ctrl-btn.active:hover{background:var(--primary-hover);color:white}
.ctrl-icon{display:flex;align-items:center;justify-content:center;width:22px;height:22px}
.ctrl-icon svg{width:20px;height:20px}
.ctrl-label{display:flex;align-items:center;gap:3px;white-space:nowrap}
.notes-toggle{font-size:0.6rem;font-weight:700;padding:1px 5px;border-radius:3px;background:var(--border);color:var(--text-secondary)}
.notes-toggle.on{background:#27ae60;color:white}

.numpad{width:100%}
.numpad-row{display:flex;gap:4px;justify-content:center}
.num-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;max-width:48px;aspect-ratio:1;border:2px solid var(--num-btn-border);border-radius:var(--radius-sm);background:var(--num-btn-bg);color:var(--text);cursor:pointer;transition:all var(--transition);position:relative}
.num-btn:hover{background:var(--num-btn-hover);border-color:var(--primary);color:var(--primary)}
.num-btn:active{transform:scale(0.95)}
.num-btn.completed{background:var(--num-completed-bg);border-color:var(--num-completed-bg);color:var(--num-completed-text);pointer-events:none}
.num-value{font-size:1.15rem;font-weight:700;line-height:1}
.num-remaining{font-size:0.55rem;font-weight:600;color:var(--primary);line-height:1;min-height:0.65rem}
.num-btn.completed .num-remaining{color:var(--num-completed-text)}

.bottom-panel{display:flex;gap:8px;justify-content:center;padding:10px 12px;background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow-sm);width:100%}
.toggle-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border:2px solid var(--border);border-radius:var(--radius);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all var(--transition);font-size:0.8rem;font-weight:500}
.toggle-btn:hover{border-color:var(--primary);color:var(--primary)}
.toggle-btn.active{border-color:var(--primary);background:var(--primary-light);color:var(--primary)}
.toggle-btn svg{width:18px;height:18px;flex-shrink:0}
.toggle-indicator{width:32px;height:18px;border-radius:9px;background:var(--border);position:relative;transition:background var(--transition);flex-shrink:0}
.toggle-indicator::after{content:'';position:absolute;width:14px;height:14px;border-radius:50%;background:white;top:2px;left:2px;transition:transform var(--transition);box-shadow:0 1px 3px rgba(0,0,0,0.2)}
.toggle-btn.active .toggle-indicator{background:var(--primary)}
.toggle-btn.active .toggle-indicator::after{transform:translateX(14px)}

.side-panel{width:260px;display:flex;flex-direction:column;gap:10px}
.side-section{background:var(--bg-card);padding:14px;border-radius:var(--radius);box-shadow:var(--shadow-sm)}
.side-section h3{font-size:0.8rem;color:var(--text-light);margin-bottom:10px;text-transform:uppercase;letter-spacing:0.5px;font-weight:600}
.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.stat-item{text-align:center}
.stat-value{font-size:1.3rem;font-weight:700;color:var(--primary)}
.stat-label{font-size:0.72rem;color:var(--text-light)}
.hint-wizard-panel{display:flex;flex-direction:column;gap:8px;align-items:center}
.hint-wizard-desc{font-size:0.82rem;color:var(--text-secondary);text-align:center;line-height:1.5}
.hint-wizard-btn{display:flex;align-items:center;gap:6px;padding:10px 20px;border:2px solid var(--primary);border-radius:var(--radius);background:transparent;color:var(--primary);font-size:0.88rem;font-weight:600;cursor:pointer;transition:all var(--transition);width:100%;justify-content:center}
.hint-wizard-btn:hover{background:var(--primary);color:white}
.hint-wizard-btn:disabled{border-color:var(--border);color:var(--text-light);cursor:not-allowed}
.hint-wizard-btn:disabled:hover{background:transparent;color:var(--text-light)}
.hint-wizard-btn-icon{display:flex;align-items:center}
.hint-wizard-btn-icon svg{width:18px;height:18px}
.hint-remaining{font-size:0.78rem;color:var(--text-light)}
.settings-list{display:flex;flex-direction:column;gap:8px}
.setting-item{display:flex;justify-content:space-between;align-items:center;font-size:0.82rem;color:var(--text);cursor:pointer}
.toggle-switch{appearance:none;width:36px;height:20px;background:var(--border);border-radius:10px;position:relative;cursor:pointer;transition:background var(--transition);flex-shrink:0}
.toggle-switch::before{content:'';position:absolute;width:16px;height:16px;border-radius:50%;background:white;top:2px;left:2px;transition:transform var(--transition)}
.toggle-switch:checked{background:var(--primary)}
.toggle-switch:checked::before{transform:translateX(16px)}

.tips-list{list-style:none}
.tips-list li{padding:6px 0;font-size:0.82rem;color:var(--text-secondary);border-bottom:1px solid var(--border-light)}
.tips-list li:last-child{border-bottom:none}
.tips-list a{color:var(--primary);text-decoration:none;font-weight:500}
.tips-list a:hover{text-decoration:underline}

.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);display:flex;align-items:center;justify-content:center;z-index:1000;overflow-y:auto;padding:20px}
.modal{background:var(--bg-card);border-radius:var(--radius-lg);padding:32px;max-width:420px;width:90%;box-shadow:var(--shadow-lg);text-align:center}
.modal.modal-wide{max-width:720px;width:95%;text-align:left;max-height:90vh;overflow-y:auto}
.modal h2{font-size:1.4rem;margin-bottom:10px}
.modal p{color:var(--text-secondary);margin-bottom:14px}
.modal .modal-time{font-size:2rem;font-weight:700;color:var(--primary);margin:14px 0}
.modal .modal-btn{padding:12px 32px;border:none;border-radius:var(--radius);background:var(--primary);color:white;font-size:0.95rem;font-weight:600;cursor:pointer;margin:4px;transition:background var(--transition)}
.modal .modal-btn:hover{background:var(--primary-hover)}
.modal .modal-btn.secondary{background:var(--border);color:var(--text)}
.modal .modal-btn.secondary:hover{background:var(--text-secondary);color:white}

.hint-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);display:flex;align-items:center;justify-content:center;z-index:1001}
.hint-modal{background:var(--bg-card);border-radius:var(--radius-lg);max-width:440px;width:90%;box-shadow:var(--shadow-lg);overflow:hidden}
.hint-modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border)}
.hint-modal-header h3{font-size:1rem;font-weight:600}
.hint-modal-close{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:var(--text-secondary);padding:4px;border-radius:var(--radius-sm)}
.hint-modal-close:hover{background:var(--primary-light);color:var(--primary)}
.hint-modal-body{padding:18px;font-size:0.92rem;line-height:1.6;color:var(--text)}
.hint-modal-footer{display:flex;gap:8px;padding:10px 18px 14px;justify-content:flex-end}
.hint-modal-btn{padding:8px 20px;border:none;border-radius:var(--radius-sm);background:var(--primary);color:white;font-size:0.88rem;font-weight:600;cursor:pointer;transition:background var(--transition)}
.hint-modal-btn:hover{background:var(--primary-hover)}
.hint-modal-btn.secondary{background:var(--border);color:var(--text)}
.hint-modal-btn.secondary:hover{background:var(--text-secondary);color:white}

@media(max-width:900px){
    .game-layout{flex-direction:column;align-items:center}
    .controls-area{width:100%;max-width:460px;min-width:auto}
    .side-panel{width:100%;max-width:460px}
}
@media(max-width:768px){
    .header{padding:0 12px}
    .header-nav{display:none}
    .main-container{padding:10px 12px}
    .board{width:min(400px,92vw);height:min(400px,92vw)}
    .controls-area{gap:8px}
    .action-bar{gap:4px;padding:8px}
    .ctrl-btn{padding:5px 7px;font-size:0.62rem}
    .ctrl-icon svg{width:18px;height:18px}
    .numpad-row{gap:3px}
    .num-btn{max-width:42px}
}
@media(max-width:480px){
    .board{width:min(340px,95vw);height:min(340px,95vw)}
    .cell{font-size:min(1.4rem,4.5vw)}
    .cell .notes span{font-size:min(0.45rem,1.4vw)}
    .difficulty-bar{gap:1px;padding:2px}
    .diff-btn{padding:6px 12px;font-size:0.8rem}
    .num-btn{max-width:36px}
    .num-value{font-size:1rem}
    .num-remaining{font-size:0.5rem}
    .info-bar{padding:0}
    .info-item{padding:8px 8px}
}

.rules-container{max-width:800px;margin:0 auto;padding:20px}
.rules-article h1{font-size:2rem;text-align:center;margin-bottom:8px;color:var(--text)}
.subtitle{text-align:center;color:var(--text-secondary);font-size:1.05rem;margin-bottom:28px}
.rules-section{margin-bottom:36px}
.rules-section h2{font-size:1.35rem;margin-bottom:14px;color:var(--primary);padding-bottom:8px;border-bottom:2px solid var(--primary)}
.rules-section p{line-height:1.8;margin-bottom:10px}
.rules-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}
.rule-card{background:var(--bg-card);padding:18px;border-radius:var(--radius);box-shadow:var(--shadow-sm);text-align:center}
.rule-number{width:36px;height:36px;border-radius:50%;background:var(--primary);color:white;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:700;margin:0 auto 10px}
.rule-card h3{margin-bottom:6px;font-size:1rem}
.rule-card p{font-size:0.88rem;color:var(--text-secondary)}
.technique-card{background:var(--bg-card);padding:18px;border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:14px;border-left:4px solid var(--primary)}
.technique-card h3{margin-bottom:6px;color:var(--primary)}
.technique-card p{color:var(--text);line-height:1.7}
.technique-example{margin-top:10px;padding:10px;background:var(--primary-light);border-radius:var(--radius-sm);font-size:0.88rem}
.terms-table{width:100%;border-collapse:collapse;background:var(--bg-card);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm)}
.terms-table th{background:var(--primary);color:white;padding:10px 14px;text-align:left;font-weight:600}
.terms-table td{padding:8px 14px;border-bottom:1px solid var(--border)}
.terms-table tr:last-child td{border-bottom:none}
.terms-table tr:hover{background:var(--primary-light)}
.tips-section{display:flex;flex-direction:column;gap:10px}
.tip-item{display:flex;gap:10px;align-items:flex-start;background:var(--bg-card);padding:14px;border-radius:var(--radius);box-shadow:var(--shadow-sm)}
.tip-icon{font-size:1.4rem;flex-shrink:0}
.tip-item strong{display:block;margin-bottom:3px}
.tip-item p{font-size:0.88rem;color:var(--text-secondary);margin:0}
.difficulty-guide{display:flex;flex-direction:column;gap:10px}
.diff-guide-item{display:flex;align-items:center;gap:14px;background:var(--bg-card);padding:14px;border-radius:var(--radius);box-shadow:var(--shadow-sm)}
.diff-badge{padding:5px 14px;border-radius:20px;font-weight:700;font-size:0.82rem;white-space:nowrap}
.diff-badge.easy{background:#c8e6c9;color:#2e7d32}
.diff-badge.medium{background:#fff9c4;color:#f57f17}
.diff-badge.hard{background:#ffcdd2;color:#c62828}
.diff-badge.expert{background:#e1bee7;color:#6a1b9a}
.diff-badge.master{background:#b2dfdb;color:#00695c}
.diff-guide-item p{font-size:0.88rem;color:var(--text-secondary);margin:0}
.rules-cta{display:flex;gap:14px;justify-content:center;margin-top:36px;padding-top:28px;border-top:2px solid var(--border)}
.cta-btn{padding:12px 28px;border-radius:var(--radius);text-decoration:none;font-weight:700;font-size:0.95rem;background:var(--primary);color:white;transition:all var(--transition)}
.cta-btn:hover{background:var(--primary-hover);transform:translateY(-1px)}
.cta-btn.secondary{background:var(--border);color:var(--text)}
.cta-btn.secondary:hover{background:var(--text-secondary);color:white}

.techniques-container{max-width:900px;margin:0 auto;padding:20px}
.tech-category-tabs{display:flex;gap:3px;background:var(--bg-card);padding:3px;border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:20px;overflow-x:auto}
.tech-tab{padding:8px 18px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font-weight:600;font-size:0.88rem;cursor:pointer;transition:all var(--transition);white-space:nowrap}
.tech-tab:hover{color:var(--primary);background:var(--primary-light)}
.tech-tab.active{background:var(--primary);color:white}
.tech-card{display:flex;gap:14px;background:var(--bg-card);padding:16px;border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:10px;cursor:pointer;transition:all var(--transition);text-decoration:none;color:inherit}
.tech-card:hover{box-shadow:var(--shadow);transform:translateY(-1px)}
.tech-card-image{width:72px;height:72px;border-radius:var(--radius-sm);background:var(--primary-light);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}
.tech-card-image img{width:100%;height:100%;object-fit:cover}
.tech-card-image svg{width:36px;height:36px;color:var(--primary)}
.tech-card-content{flex:1}
.tech-card-content h3{font-size:0.95rem;font-weight:600;margin-bottom:3px;color:var(--text)}
.tech-card-content p{font-size:0.82rem;color:var(--text-secondary);line-height:1.5}
.tech-card-arrow{display:flex;align-items:center;color:var(--text-light)}
.tech-detail{max-width:760px;margin:0 auto;padding:0}
.tech-detail-header{margin-bottom:20px}
.tech-detail-header h1{font-size:1.7rem;margin-bottom:8px}
.tech-detail-header .tech-category-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:0.78rem;font-weight:600}
.tech-detail-body{background:var(--bg-card);padding:22px;border-radius:var(--radius);box-shadow:var(--shadow-sm);font-size:0.95rem;line-height:1.8}
.tech-detail-body h2{font-size:1.2rem;margin:20px 0 10px;color:var(--primary)}
.tech-detail-body h2:first-child{margin-top:0}
.tech-detail-body p{margin-bottom:10px}
.tech-detail-body ul,.tech-detail-body ol{margin:10px 0;padding-left:22px}
.tech-detail-body li{margin-bottom:6px;line-height:1.6}
.tech-detail-body .highlight-box{background:var(--primary-light);padding:14px;border-radius:var(--radius-sm);margin:14px 0;border-left:4px solid var(--primary)}
.tech-detail-body .highlight-box p{margin-bottom:0}
.tech-detail-body img{max-width:100%;border-radius:var(--radius-sm);margin:10px 0}

.challenge-header{text-align:center;margin-bottom:20px}
.challenge-header h1{font-size:1.8rem;margin-bottom:6px}
.challenge-date{font-size:1.1rem;color:var(--primary);font-weight:600}
.challenge-desc{color:var(--text-secondary);margin-top:3px}
.challenge-info-box{display:flex;flex-direction:column;gap:8px}
.challenge-stat{display:flex;justify-content:space-between;align-items:center;padding:5px 0;border-bottom:1px solid var(--border-light)}
.challenge-stat:last-child{border-bottom:none}
.challenge-stat-label{color:var(--text-secondary);font-size:0.85rem}
.challenge-stat-value{font-weight:600}
.challenge-history{max-height:200px;overflow-y:auto}
.no-history{color:var(--text-light);font-size:0.85rem;text-align:center;padding:10px 0}
.history-item{display:flex;justify-content:space-between;align-items:center;padding:7px 0;border-bottom:1px solid var(--border-light);font-size:0.85rem}
.history-item:last-child{border-bottom:none}
.history-result{padding:2px 8px;border-radius:4px;font-weight:600;font-size:0.75rem}
.history-result.win{background:#c8e6c9;color:#2e7d32}
.history-result.lose{background:#ffcdd2;color:#c62828}
