*{box-sizing:border-box;margin:0;padding:0}
body{font-family:"Segoe UI",system-ui,-apple-system,sans-serif;background:#f1f1f1;color:#222;padding:12px}
.wrap{max-width:1100px;margin:0 auto}
.site-title{text-align:center;font-weight:700;font-size:20px;margin:6px 0 12px;color:#333}

/* result card */
.day{background:#fff;border:1px solid #ccc;border-radius:4px;overflow:hidden;margin-bottom:14px;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.day table{width:100%;border-collapse:collapse;table-layout:fixed}
.day td,.day th{text-align:center;padding:10px 4px;border-right:1px solid #ddd;font-size:18px}
.day td:last-child,.day th:last-child{border-right:0}
.day .date-row th{font-size:17px;font-weight:600;color:#3b6fb6;padding:8px;background:#f7f7f7;border-bottom:1px solid #ddd}
.day .num-row th{font-size:13px;font-weight:500;color:#999;padding:4px;background:#f7f7f7}
.day .top td{background:#f4f4f4;border-bottom:1px solid #ddd}
.day .bottom td{background:#f5ecc6;font-weight:600}

/* today's card */
.day.today{border:0;box-shadow:0 2px 8px rgba(0,0,0,.18)}
.day.today .date-row th{background:#333;color:#fff;font-size:26px;padding:12px 8px 4px;border:0}
.day.today .num-row th{background:#333;color:#bbb;font-size:15px;padding:2px 4px 8px;border-right:0}
.day.today .top td{font-size:22px;font-weight:600;padding:16px 4px}
.day.today .bottom td{font-size:22px;font-weight:700;padding:16px 4px;background:#ead9a0}
.empty{color:#999}

.day.today .num-row th .t{display:block;font-size:11px;color:#e7c873;font-weight:600;margin-top:2px}
.next{text-align:center;font-size:15px;margin:0 0 10px;color:#333}
.next b{color:#c0391b}.next span{color:#888;font-size:13px}
.timetable{background:#fff;border:1px solid #ddd;border-radius:6px;padding:12px;margin:0 0 16px}
.tt-head{text-align:center;font-weight:700;font-size:15px;margin-bottom:10px;color:#333}
.tt-head span{font-weight:400;color:#888;font-size:13px}
.tt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}
.tt-item{background:#f5ecc6;border-radius:5px;padding:8px;text-align:center;font-size:14px}
.tt-item b{display:block;font-size:12px;color:#888;font-weight:600}
.tt-item.done{background:#e6e6e6;color:#888}
.notice{background:#efebe1;border-radius:6px;padding:14px;text-align:center;margin:14px 0;font-weight:600;font-size:15px;line-height:1.7;white-space:pre-line;box-shadow:0 1px 4px rgba(0,0,0,.08)}
.actions{text-align:center;margin:10px 0 18px}
.btn{display:inline-block;border:0;border-radius:4px;padding:10px 26px;font-size:16px;font-weight:700;color:#fff;cursor:pointer;text-decoration:none}
.btn-red{background:#c0391b}
.btn:disabled{opacity:.7;cursor:wait}
.updated{font-size:12px;color:#888;margin-top:6px}

@media (max-width:640px){
  body{padding:6px}
  .day td,.day th{font-size:14px;padding:8px 2px}
  .day.today .date-row th{font-size:20px}
  .day.today .top td,.day.today .bottom td{font-size:16px;padding:12px 2px}
  .day.today .num-row th .t{font-size:9px}
}
