/* 小学练习专区 - 表单页公共样式 */
:root{ --primary-color:#e74c3c; --text-color:#2c3e50; --border-color:#e9ecef; --shadow:0 2px 12px rgba(0,0,0,0.08); --radius:12px; }
*{ margin:0; padding:0; box-sizing:border-box; }
body{ font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans SC",sans-serif; background:linear-gradient(135deg,#f5f7fa 0%,#e4e8ec 100%); min-height:100vh; color:var(--text-color); line-height:1.6; }
.container{ max-width:980px; margin:0 auto; padding:20px; padding-top:70px; }
.header{ position:relative; text-align:center; padding:30px 20px; background:linear-gradient(135deg,#667eea 0%,#764ba2 100%); border-radius:var(--radius); margin-bottom:30px; box-shadow:var(--shadow); }
.header h1{ font-size:26px; font-weight:700; color:#fff; text-shadow:0 2px 4px rgba(0,0,0,0.2); }
.header .subtitle{ font-size:14px; color:rgba(255,255,255,0.9); margin-top:8px; }
.back-links{ position:absolute; top:12px; left:16px; display:flex; flex-direction:column; gap:4px; text-align:left; }
.back-links .back-link{ position:static; }
.back-link{ position:absolute; top:12px; left:16px; color:rgba(255,255,255,0.85); text-decoration:none; font-size:14px; }
.back-link:hover{ color:#fff; text-decoration:underline; }
.nav-bar{ position:fixed; top:0; left:0; right:0; z-index:1000; display:flex; flex-wrap:wrap; gap:10px; justify-content:center; align-items:center; padding:10px 16px; background:linear-gradient(135deg,#667eea 0%,#764ba2 100%); box-shadow:0 2px 8px rgba(0,0,0,0.08); }
.nav-bar a{ padding:8px 20px; border-radius:20px; background:rgba(255,255,255,0.15); color:#fff; text-decoration:none; font-size:15px; font-weight:600; transition:all .2s; }
.nav-bar > a:hover, .nav-dropdown > a:hover{ background:rgba(255,255,255,0.3); transform:translateY(-2px); }
.nav-bar a.active{ background:#fff; color:#764ba2; box-shadow:0 0 0 2px #ffd166, 0 2px 8px rgba(0,0,0,0.25); }
.nav-sub a{ background:#fff; color:var(--text-color); box-shadow:0 2px 8px rgba(0,0,0,0.15); }
.nav-dropdown{ position:relative; display:flex; align-items:center; }
.nav-sub{ display:none; position:absolute; top:100%; left:50%; transform:translateX(-50%); padding-top:8px; z-index:100; min-width:130px; }
.nav-dropdown:hover .nav-sub, .nav-dropdown:focus-within .nav-sub{ display:flex; flex-direction:column; gap:6px; }
.nav-sub.nav-grid{ min-width:0; }
@media (min-width:769px){
.nav-dropdown:hover .nav-sub.nav-grid, .nav-dropdown:focus-within .nav-sub.nav-grid{ display:grid; grid-template-columns:repeat(8,auto); gap:6px; }
}
@media (min-width:769px) and (max-width:1200px){
.nav-dropdown:hover .nav-sub.nav-grid, .nav-dropdown:focus-within .nav-sub.nav-grid{ grid-template-columns:repeat(5,auto); }
}
.nav-sub a{ white-space:nowrap; text-align:center; }
.card{ background:#fff; border-radius:var(--radius); box-shadow:var(--shadow); padding:30px; }
.form-label{ font-size:16px; font-weight:600; margin-bottom:12px; display:block; }
textarea{ width:100%; height:120px; border:2px solid var(--border-color); border-radius:var(--radius); padding:14px; font-size:16px; font-family:inherit; resize:vertical; }
textarea:focus{ outline:none; border-color:#667eea; }
.options-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:18px; margin-top:22px; }
.option-group-title{ font-size:14px; font-weight:600; color:#666; margin-bottom:8px; }
.radio-group{ display:flex; flex-wrap:wrap; gap:8px; }
.radio-label{ display:flex; align-items:center; gap:5px; padding:6px 12px; border:2px solid var(--border-color); border-radius:20px; cursor:pointer; font-size:14px; transition:all .2s; }
.radio-label:hover{ border-color:#667eea; }
.radio-label input{ accent-color:#667eea; }
.check-list{ display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:8px; max-height:340px; overflow-y:auto; border:2px solid var(--border-color); border-radius:var(--radius); padding:14px; }
.check-list label{ display:flex; align-items:center; gap:6px; font-size:14px; cursor:pointer; padding:3px 6px; border-radius:6px; }
.check-list label:hover{ background:#f5f7fa; }
.btn-row{ text-align:center; margin-top:26px; }
.submit-btn{ padding:14px 56px; font-size:18px; font-weight:600; color:#fff; background:linear-gradient(135deg,#667eea 0%,#764ba2 100%); border:none; border-radius:30px; cursor:pointer; box-shadow:var(--shadow); transition:transform .2s; }
.submit-btn:hover{ transform:translateY(-2px); }
.mini-btn{ padding:4px 14px; font-size:13px; border:1px solid #667eea; border-radius:16px; background:#fff; color:#667eea; cursor:pointer; margin-right:8px; }
.mini-btn:hover{ background:#667eea; color:#fff; }
.form-tip{ margin-top:18px; font-size:13px; color:#999; }
.tutorial{ margin-top:26px; padding-top:20px; border-top:1px solid var(--border-color); }
.tutorial h3{ font-size:18px; margin-bottom:12px; color:var(--text-color); }
.tutorial ol{ padding-left:22px; color:#555; font-size:14px; line-height:2; }
.tutorial .tip{ margin-top:12px; padding:12px 16px; background:#fff8e6; border-radius:8px; font-size:14px; color:#8a6d3b; }
.term-filter{ display:flex; flex-wrap:wrap; gap:6px; margin-bottom:12px; }
.term-filter .mini-btn.active{ background:#667eea; color:#fff; }
.seo-intro{ font-size:14px; color:#666; line-height:1.8; margin-bottom:20px; padding:12px 16px; background:#f8f9fa; border-radius:8px; }
.name-row{ display:flex; gap:14px; margin-top:22px; }
.name-row .field{ flex:1; }
.name-row label{ font-size:14px; font-weight:600; color:#666; display:block; margin-bottom:6px; }
.name-row input{ width:100%; padding:10px 14px; border:2px solid var(--border-color); border-radius:8px; font-size:15px; font-family:inherit; }
.name-row input:focus{ outline:none; border-color:#667eea; }
@media (max-width:768px){ .header h1{ font-size:20px; } .card{ padding:20px; } .container{ padding-top:20px; } }
