/* 数学城堡 - 双列宫格 */
.math-castle {
    min-height: 100vh; padding: 12px;
    background: linear-gradient(180deg, #FFF3E0 0%, #FFE0B2 40%, #FFCC80 100%);
    overflow-y: auto; -webkit-overflow-scrolling: touch;
}
.math-castle-bg {
    position: fixed; top: 0; left: 0; right: 0; bottom: 0; pointer-events: none; z-index: 0;
    background: radial-gradient(ellipse 60% 30% at 50% 100%, rgba(237,137,54,0.12) 0%, transparent 70%);
}
.math-castle-header {
    position: relative; z-index: 1;
    display: flex; align-items: center; gap: 8px;
    padding: 8px 16px; margin-bottom: 14px;
    
    
}
.math-castle-header .domain-icon { font-size: 28px; }
.math-castle-header .domain-name { font-size: 20px; font-weight: 700; color: #dd6b20; }
.math-castle-header .domain-level { font-size: 14px; font-weight: 600; color: #dd6b20; }
.math-castle-grid {
    position: relative; z-index: 1;
    display: grid; grid-template-columns: 1fr 1fr; gap: 12px;
}
.math-card {
    background: rgba(255,255,255,0.92); border-radius: 14px;
    padding: 18px 14px; text-align: center;
    border: 2px solid #f0dcc0; box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    cursor: pointer; transition: all 0.2s;
}
.math-card:hover { border-color: #ed8936; box-shadow: 0 4px 14px rgba(237,137,54,0.2); transform: translateY(-2px); }
.math-card.locked { opacity: 0.45; background: #f5f2ed; border-color: #e8e0d0; cursor: default; }
.math-card.locked:hover { transform: none; box-shadow: 0 2px 8px rgba(0,0,0,0.05); }
.math-card-num {
    width: 36px; height: 36px; margin: 0 auto 8px;
    border-radius: 8px; background: linear-gradient(135deg, #ed8936, #dd6b20);
    color: white; font-size: 16px; font-weight: 700;
    display: flex; align-items: center; justify-content: center;
}
.math-card.locked .math-card-num { background: #cbd5e0; }
.math-card-title { font-size: 17px; font-weight: 700; color: #333; margin-bottom: 4px; }
.math-card-grade { font-size: 13px; color: #999; margin-bottom: 8px; }
.math-card-stars { display: flex; justify-content: center; gap: 1px; }
.math-card-stars span { font-size: 16px; }
.math-card-stars .s-fill { color: #ffb74d; }
.math-card-stars .s-empty { color: #e0e0e0; }
