
:root{--bg:#f6f7fb;--card:#fff;--accent:#1976d2;--muted:#666}
*{box-sizing:border-box;font-family:system-ui,-apple-system,'Segoe UI',Roboto,Arial}
body{margin:0;background:var(--bg);color:#111}
.app{max-width:980px;margin:12px auto;padding:12px}
header{display:flex;justify-content:space-between;align-items:center;gap:12px}
h1{margin:0}
.controls{display:flex;gap:8px}
.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:12px}
.cell{background:var(--card);padding:12px;border-radius:8px;min-height:78px;cursor:pointer;position:relative;border:1px solid #eee}
.cell.other{opacity:0.35}
.cell.today{outline:2px solid rgba(25,118,210,0.12)}
.cell.train{background:linear-gradient(180deg,#ffd4d4,#ffeaea);border-left:4px solid #e24343}
.cell.rest{background:linear-gradient(180deg,#d4ffd4,#eaffea);border-left:4px solid #2fa54a}
.small{font-size:13px;color:var(--muted)}
.card{background:var(--card);padding:14px;border-radius:10px;margin-top:12px;box-shadow:0 6px 18px rgba(16,24,40,0.06)}
.btn{background:var(--accent);color:#fff;padding:8px 12px;border-radius:10px;border:none;cursor:pointer}
.btn.alt{background:#fff;color:#333;border:1px solid #e6e8ee}
.input-mini{width:110px;padding:8px;border-radius:8px;border:1px solid #e6e8ee}
.input-large{width:60%;padding:10px;border-radius:8px;border:1px solid #e6e8ee;margin-right:8px}
.select{padding:8px;border-radius:8px;border:1px solid #e6e8ee}
.set-row{display:flex;gap:8px;align-items:center;margin-top:8px}
.chart-wrap{height:260px;margin-top:8px}
.footer{color:#666;text-align:center;margin-top:12px}
.small-btn{font-size:12px;padding:6px 8px;border-radius:8px}

/* 深化日期数字 */
.cell > div:first-child {
  color: #000;
  font-weight: 700;
}
