/* ============================================================
 * 课程表 / 学习计划生成器
 * ============================================================ */

.tt-mode-tabs {
  display:flex;gap:8px;margin-bottom:14px;
  background:#f5f6fa;border-radius:8px;padding:4px;
}
.tt-mode-tab {
  flex:1;padding:10px 14px;border:none;background:transparent;
  border-radius:6px;font-size:14px;cursor:pointer;color:#5a6573;
}
.tt-mode-tab.active {
  background:#fff;color:#4f8cff;font-weight:600;
  box-shadow:0 2px 4px rgba(79,140,255,.15);
}

/* —— 课程表 —— */
.tt-head, .tt-row {
  display:grid;
  grid-template-columns: 100px repeat(var(--days, 5), 1fr);
}
.tt-head {
  font-weight:600;color:#fff;
  background:linear-gradient(135deg,#4f8cff,#6ba6ff);
}
.tt-cell {
  border:1px solid #e0e3eb;
  padding:10px 8px;text-align:center;
  font-size:14px;
}
.tt-corner { background:#3879eb; }
.tt-h { padding:14px 8px;font-size:14px; }
.tt-period {
  background:#f7f8fb;color:#5a6573;font-weight:500;
  display:flex;align-items:center;justify-content:center;
}
.tt-slot {
  padding:0;height:60px;
  position:relative;
  transition:background .2s;
}
.tt-input {
  width:100%;height:100%;border:none;background:transparent;
  text-align:center;font-size:14px;
  font-family:'Microsoft YaHei','PingFang SC',sans-serif;
  color:#2c3e50;
}
.tt-input:focus { outline:2px solid #4f8cff;outline-offset:-2px; }

/* —— 周计划 —— */
.wp-section {
  background:#fff;border:1px solid #ecedf3;border-radius:10px;
  padding:14px 18px;margin-bottom:12px;
}
.wp-section-title {
  margin:0 0 10px;font-size:15px;color:#2c3e50;
  border-left:3px solid #4f8cff;padding-left:10px;
}
.wp-row {
  display:flex;align-items:center;gap:10px;
  padding:6px 0;border-bottom:1px dashed #ecedf3;
}
.wp-row:last-child { border-bottom:none; }
.wp-bullet { color:#4f8cff;font-weight:600;min-width:20px; }
.wp-input {
  flex:1;border:none;background:transparent;
  font-size:14px;padding:6px 0;
  font-family:'Microsoft YaHei',sans-serif;
}
.wp-input:focus { outline:2px solid #4f8cff;outline-offset:-2px;border-radius:4px;padding:6px 8px; }

/* —— 假期计划 —— */
.hp-week {
  background:#fff;border:1px solid #ecedf3;border-radius:10px;
  padding:14px 18px;margin-bottom:12px;
}
.hp-days {
  display:grid;grid-template-columns:repeat(7, 1fr);gap:8px;
}
.hp-day {
  background:#fafbfd;border:1px solid #e6e9ef;border-radius:6px;
  padding:8px;
}
.hp-day-label {
  font-size:12px;color:#5a6573;font-weight:600;
  text-align:center;margin-bottom:4px;
}
.hp-textarea {
  width:100%;border:1px solid transparent;background:transparent;
  font-size:13px;font-family:'Microsoft YaHei',sans-serif;
  resize:vertical;min-height:60px;color:#2c3e50;
}
.hp-textarea:focus {
  outline:none;border-color:#4f8cff;background:#fff;
}

@media (max-width: 768px) {
  .tt-head, .tt-row {
    grid-template-columns: 60px repeat(var(--days, 5), 1fr);
    font-size:11px;
  }
  .tt-cell { padding:6px 4px;font-size:11px; }
  .tt-input { font-size:12px; }
  .hp-days { grid-template-columns: repeat(2, 1fr); }
}

/* —— 打印 —— */
@media print {
  body { background:#fff; }
  .navbar, .breadcrumb, .py-config, .py-actions, .tt-mode-tabs,
  #floatingContactCta, #mobileTabBar, .m-tabbar, nav.m-tabbar,
  #toolFavBtn, .copyright-area, footer, .py-tip,
  .container > div:not(.py-sheet) {
    display:none !important;
  }
  .py-sheet { box-shadow:none; border:none;padding:0; }
  @page { size: A4; margin: 12mm 15mm; }
  .tt-input, .wp-input, .hp-textarea {
    border:none !important;
  }
}
