/* 锅老师少儿编程 - 全站样式 */
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;color:#1f2937;background:#f8fafc;line-height:1.6}
a{color:#2563eb;text-decoration:none}
a:hover{color:#1d4ed8}

/* 布局 */
.container{max-width:1100px;margin:0 auto;padding:0 20px}

/* 导航 */
.nav{background:#fff;border-bottom:1px solid #e5e7eb;padding:12px 0;position:sticky;top:0;z-index:100}
.nav-inner{display:flex;justify-content:space-between;align-items:center;max-width:1100px;margin:0 auto;padding:0 20px}
.nav-logo{font-size:20px;font-weight:700;color:#1e40af;display:flex;align-items:center;gap:8px}
.nav-logo span{font-size:24px}
.nav-links{display:flex;align-items:center;gap:16px}
.nav-links a{color:#4b5563;font-size:14px;padding:6px 12px;border-radius:6px;transition:all .2s}
.nav-links a:hover{background:#eff6ff;color:#1e40af}
.nav-user{color:#6b7280;font-size:14px}
.btn-logout{background:none;border:1px solid #d1d5db;color:#6b7280;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:13px}
.btn-logout:hover{border-color:#ef4444;color:#ef4444}

/* 首页 Hero */
.hero{background:linear-gradient(135deg,#1e3a8a 0%,#3b82f6 50%,#06b6d4 100%);color:#fff;padding:80px 20px;text-align:center}
.hero h1{font-size:42px;margin-bottom:12px;letter-spacing:2px}
.hero p{font-size:18px;opacity:.9;margin-bottom:30px}
.hero .btn-primary{font-size:16px;padding:14px 36px}

/* 按钮 */
.btn{display:inline-block;padding:10px 24px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:all .2s}
.btn-primary{background:#2563eb;color:#fff}
.btn-primary:hover{background:#1d4ed8}
.btn-green{background:#059669;color:#fff}
.btn-green:hover{background:#047857}
.btn-orange{background:#ea580c;color:#fff}
.btn-orange:hover{background:#c2410c}
.btn-red{background:#dc2626;color:#fff}
.btn-red:hover{background:#b91c1c}
.btn-gray{background:#6b7280;color:#fff}
.btn-gray:hover{background:#4b5563}
.btn-outline{background:#fff;color:#374151;border:1px solid #d1d5db}
.btn-outline:hover{background:#f9fafb;border-color:#9ca3af}
.btn-sm{padding:6px 14px;font-size:12px;border-radius:6px}

/* 登录页 */
.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1e3a8a,#3b82f6)}
.login-box{background:#fff;border-radius:16px;padding:40px;width:100%;max-width:400px;box-shadow:0 20px 60px rgba(0,0,0,.15)}
.login-card{background:#fff;border-radius:16px;padding:40px;width:90%;max-width:400px;margin:0 auto;box-shadow:0 20px 60px rgba(0,0,0,.15)}
.login-body{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1e3a8a,#3b82f6)}
.msg-error{background:#fef2f2;color:#991b1b;padding:10px 16px;border-radius:8px;margin-bottom:16px;font-size:14px;text-align:center}
.login-box h2{text-align:center;margin-bottom:8px;color:#1e3a8a;font-size:22px}
.login-box .subtitle{text-align:center;color:#6b7280;margin-bottom:28px;font-size:14px}
.form-group{margin-bottom:18px}
.form-group label{display:block;margin-bottom:6px;font-size:14px;color:#374151;font-weight:500}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;transition:border-color .2s}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}
.form-group textarea{min-height:100px;resize:vertical}
.form-error{color:#dc2626;font-size:13px;margin-top:4px}
.form-actions{text-align:center;margin-top:24px}
.form-actions .btn{width:100%;padding:12px;font-size:15px}

/* 卡片 */
.card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px rgba(0,0,0,.06);border:1px solid #e5e7eb;transition:all .2s}
.card:hover{box-shadow:0 4px 12px rgba(0,0,0,.08)}

/* 科目卡片网格 */
.subjects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;margin-top:24px}
.subject-card{background:#fff;border-radius:12px;padding:28px 24px;box-shadow:0 1px 3px rgba(0,0,0,.06);border:1px solid #e5e7eb;transition:all .25s;cursor:pointer;text-align:center}
.subject-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.1);transform:translateY(-2px)}
.subject-icon{font-size:48px;margin-bottom:12px}
.subject-card h3{font-size:18px;margin-bottom:6px;color:#1f2937}
.subject-card p{font-size:13px;color:#6b7280;line-height:1.5}

/* 课程列表 */
.course-list{margin-top:20px}
.course-item{display:flex;align-items:center;gap:16px;padding:16px 20px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;margin-bottom:10px;transition:all .2s}
.course-item:hover{box-shadow:0 2px 8px rgba(0,0,0,.06);border-color:#bfdbfe}
.course-icon{font-size:28px;flex-shrink:0}
.course-info{flex:1;min-width:0}
.course-info h3{font-size:15px;color:#1f2937;margin-bottom:2px}
.course-info p{font-size:13px;color:#6b7280}
.course-type{font-size:11px;padding:3px 10px;border-radius:20px;font-weight:500;flex-shrink:0}
.type-course{background:#eff6ff;color:#2563eb}
.type-exercise{background:#fef3c7;color:#d97706}

/* 课时列表 */
.lesson-list{margin-top:16px}
.lesson-item{display:flex;align-items:center;gap:12px;padding:14px 18px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:8px;transition:all .2s}
.lesson-item:hover{border-color:#93c5fd;background:#f0f7ff}
.lesson-order{width:32px;height:32px;background:#eff6ff;color:#2563eb;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex-shrink:0}
.lesson-num{width:32px;height:32px;background:#eff6ff;color:#2563eb;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex-shrink:0}
.lesson-item h3{font-size:14px;color:#1f2937}

/* 课时内容 */
.lesson-content{max-width:800px;margin:0 auto}
.lesson-content h2{font-size:24px;margin:24px 0 12px;color:#1e3a8a;border-bottom:2px solid #dbeafe;padding-bottom:8px}
.lesson-content h3{font-size:18px;margin:20px 0 10px;color:#1e40af}
.lesson-content p{margin:10px 0;color:#374151}
.lesson-content ul,.lesson-content ol{margin:10px 0 10px 24px}
.lesson-content li{margin:4px 0;color:#374151}
.lesson-content pre{background:#1e293b;color:#e2e8f0;padding:16px 20px;border-radius:8px;margin:12px 0;overflow-x:auto;font-size:14px;line-height:1.6}
.lesson-content code{font-family:"Fira Code",Consolas,Monaco,monospace;font-size:14px}
.lesson-content p code{background:#f1f5f9;color:#dc2626;padding:2px 6px;border-radius:4px;font-size:13px}
.lesson-content strong{color:#1e293b}
.lesson-content table{width:100%;border-collapse:collapse;margin:12px 0}
.lesson-content th,.lesson-content td{border:1px solid #e5e7eb;padding:8px 12px;text-align:left;font-size:14px}
.lesson-content th{background:#f1f5f9;font-weight:600}
.lesson-content img{max-width:100%;border-radius:8px;margin:12px 0}
.tip-box{background:#eff6ff;border-left:4px solid #3b82f6;padding:14px 18px;border-radius:0 8px 8px 0;margin:16px 0;font-size:14px;color:#1e40af}

/* 面包屑 */
.breadcrumb{padding:16px 0;font-size:13px;color:#6b7280;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.breadcrumb a{color:#6b7280}
.breadcrumb a:hover{color:#2563eb}
.breadcrumb .sep{color:#d1d5db}

/* 页面标题 */
.page-header{padding:28px 0 8px}
.page-header h1{font-size:26px;color:#1e3a8a}
.page-header p{color:#6b7280;margin-top:4px;font-size:14px}

/* ==================== 后台样式 ==================== */
.admin-wrap{display:flex;min-height:100vh}
.admin-sidebar{width:220px;background:#1e293b;color:#e2e8f0;padding:20px 0;flex-shrink:0;position:fixed;top:0;left:0;bottom:0;overflow-y:auto}
.admin-sidebar .logo{padding:0 20px 24px;border-bottom:1px solid #334155;margin-bottom:16px}
.admin-sidebar .logo h2{font-size:16px;color:#fff}
.admin-sidebar .logo p{font-size:12px;color:#94a3b8;margin-top:2px}
.admin-nav a{display:flex;align-items:center;gap:10px;padding:10px 20px;color:#94a3b8;font-size:14px;transition:all .2s}
.admin-nav a:hover,.admin-nav a.active{background:#334155;color:#fff}
.admin-main{flex:1;margin-left:220px;padding:24px;background:#f1f5f9;min-height:100vh}
.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}
.admin-header h1{font-size:22px;color:#1e293b}

/* 后台表格 */
.admin-table{width:100%;border-collapse:collapse;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.admin-table th{background:#f8fafc;padding:12px 16px;text-align:left;font-size:13px;color:#6b7280;font-weight:600;border-bottom:1px solid #e5e7eb}
.admin-table td{padding:12px 16px;border-bottom:1px solid #f1f5f9;font-size:14px;color:#374151}
.admin-table tr:hover td{background:#f8fafc}
.admin-actions{display:flex;gap:6px;flex-wrap:wrap}

/* 状态标签 */
.tag{display:inline-block;padding:2px 10px;border-radius:20px;font-size:12px;font-weight:500}
.tag-green{background:#dcfce7;color:#166534}
.tag-yellow{background:#fef3c7;color:#92400e}
.tag-red{background:#fef2f2;color:#991b1b}
.tag-blue{background:#dbeafe;color:#1e40af}
.badge{display:inline-block;padding:2px 10px;border-radius:20px;font-size:12px;font-weight:500}
.badge-blue{background:#dbeafe;color:#1e40af}
.badge-orange{background:#fef3c7;color:#92400e}
.badge-green{background:#dcfce7;color:#166534}

/* 后台编辑器 */
.editor-toolbar{display:flex;flex-wrap:wrap;gap:4px;padding:8px;background:#f8fafc;border:1px solid #d1d5db;border-bottom:none;border-radius:8px 8px 0 0}
.editor-toolbar button{padding:6px 10px;background:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;font-size:13px;transition:all .15s}
.editor-toolbar button:hover{background:#eff6ff;border-color:#93c5fd}
.editor-toolbar .sep{width:1px;background:#d1d5db;margin:0 4px}
.editor-content{min-height:300px;padding:16px;border:1px solid #d1d5db;border-radius:0 0 8px 8px;font-size:14px;line-height:1.8;outline:none}
.editor-content:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}

/* 统计卡片 */
.stat-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;margin-bottom:24px}
.stat-card{background:#fff;border-radius:10px;padding:20px;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.stat-card .num{font-size:28px;font-weight:700;color:#1e40af}
.stat-card .label{font-size:13px;color:#6b7280;margin-top:4px}

/* Footer */
.site-footer{background:#1e293b;color:#cbd5e1;padding:40px 20px 24px;margin-top:60px}
.footer-inner{max-width:1100px;margin:0 auto;text-align:center}
.footer-brand{margin-bottom:24px}
.footer-logo{font-size:20px;font-weight:700;color:#fff}
.footer-desc{font-size:14px;color:#94a3b8;margin-top:8px}
.footer-contact{display:flex;justify-content:center;gap:32px;margin-bottom:24px;flex-wrap:wrap}
.footer-item{display:flex;align-items:center;gap:8px;font-size:14px;color:#cbd5e1}
.footer-icon{font-size:18px}
.footer-bottom{border-top:1px solid #334155;padding-top:16px}
.footer-bottom p{font-size:13px;color:#64748b}

/* 响应式 */
@media(max-width:768px){
  .hero h1{font-size:28px}
  .subjects-grid{grid-template-columns:1fr}
  .admin-sidebar{width:60px}
  .admin-sidebar .logo h2,.admin-sidebar .logo p,.admin-nav a span{display:none}
  .admin-main{margin-left:60px}
  .footer-contact{flex-direction:column;gap:12px}
}
