.schedule-page{--sch-green:#18875e;--sch-paper:#fff;--sch-bg:#f3faf6;--sch-ink:#172b24;--sch-border:#dce9e1;background:var(--sch-bg);color:var(--sch-ink);padding:40px 18px 80px}.schedule-wrap{max-width:900px;margin:auto}.schedule-heading{text-align:center;margin:0 0 32px}.schedule-heading h1{font-size:clamp(1.7rem,4vw,2.5rem);margin:10px 0}.schedule-eyebrow{font-size:.75rem;letter-spacing:.16em;color:var(--sch-green);font-weight:800}.schedule-tabs{display:flex;gap:10px;margin-bottom:18px;border-bottom:1px solid var(--sch-border);padding-bottom:14px}.schedule-tabs a{flex:1;text-align:center;padding:16px 10px;border:1px solid var(--sch-border);border-radius:12px 12px 0 0;font-weight:700;color:inherit;text-decoration:none}.schedule-tabs .selected,.schedule-days .selected{background:var(--sch-green);color:#fff;border-color:var(--sch-green)}.schedule-mode{max-width:540px}.schedule-panel{background:var(--sch-paper);border:1px solid var(--sch-border);border-radius:20px;padding:28px;margin:24px 0}.schedule-picker h2{font-size:1.3rem;color:var(--sch-green);margin-bottom:24px}.schedule-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.schedule-fields label{display:flex;flex-direction:column;gap:10px;font-weight:600}.schedule-fields select,.schedule-fields input{width:100%;min-width:0;padding:15px;border:1px solid var(--sch-border);background:var(--sch-bg);color:inherit;border-radius:12px;font:inherit}.schedule-button{background:var(--sch-green);color:#fff;border:0;border-radius:12px;padding:15px 30px;margin-top:22px;font:inherit;cursor:pointer}.schedule-result-heading{margin:38px 0 24px}.schedule-result-heading h2{color:var(--sch-green);font-size:1.7rem;margin-bottom:12px}.schedule-result-heading p{margin:0 0 8px}.schedule-days{display:flex;gap:10px;overflow:auto;padding:8px 0 20px}.schedule-days a{white-space:nowrap;padding:12px 22px;border:1px solid var(--sch-border);border-radius:40px;text-decoration:none;color:inherit;font-weight:700}.schedule-days a.selected{color:white}.schedule-card{background:var(--sch-paper);border:1px solid var(--sch-border);border-radius:24px;padding:26px;margin:18px 0;box-shadow:0 4px 15px #193c2810}.schedule-card-top{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding-bottom:18px;border-bottom:1px solid var(--sch-border)}.schedule-jpl{background:var(--sch-green);color:#fff;padding:7px 16px;border-radius:30px;font-weight:750}.schedule-status{margin-left:auto;font-size:.8rem;color:#65736c}.schedule-card h3{font-size:1.35rem;margin:22px 0 18px}.schedule-card p{margin:12px 0}.schedule-teacher{display:flex;gap:14px;align-items:center;color:inherit;text-decoration:none;font-weight:650}.schedule-avatar{width:42px;height:42px;flex-shrink:0;display:grid;place-items:center;background:linear-gradient(135deg,#16855b,#4265b5);color:#fff;border-radius:50%}.schedule-break{background:#f0f2fa;border-left:6px solid #bbc4df}.schedule-activity{background:#fff7eb;border-left:6px solid #e58a22}.schedule-break .schedule-jpl,.schedule-activity .schedule-jpl{color:var(--sch-ink);background:transparent;padding-left:0}.schedule-break .schedule-card-top,.schedule-activity .schedule-card-top{border:0;padding:0}.schedule-card.is-live{background:#d6f3e6;border:2px solid #13af7a;box-shadow:0 0 0 4px #13af7a20}.schedule-card.is-live .schedule-status{color:#087e51;font-weight:800}.schedule-weekday{margin:18px 0}.schedule-weekday summary{padding:20px;border-radius:14px;background:#18875e;color:white;cursor:pointer;font-weight:750}.schedule-weekday:nth-of-type(2n) summary{background:#367ed3}.schedule-weekday summary span{float:right;font-size:.85rem}.schedule-day-heading{font-size:1rem;color:var(--sch-green);margin:24px 0 16px}.teacher-live{border-color:#32a0ce;background:#eaf6fb}.schedule-notice{padding:18px;background:#fff3cf;border-radius:12px}.schedule-footnote{font-size:.9rem;line-height:1.7;margin-top:28px}.schedule-page a:focus-visible,.schedule-page button:focus-visible,.schedule-page summary:focus-visible{outline:3px solid #e6a317;outline-offset:3px}@media(max-width:540px){.schedule-page{padding:25px 14px 60px}.schedule-panel{padding:22px}.schedule-fields{gap:12px}.schedule-fields label{font-size:.9rem}.schedule-card{padding:22px}.schedule-card-top{gap:10px}.schedule-card-top strong{font-size:.95rem}.schedule-button{width:100%}.schedule-tabs a{font-size:.9rem}.schedule-status{font-size:.7rem}.schedule-weekday summary{font-size:.9rem}}[data-theme="dark"] .schedule-page,body.dark-mode .schedule-page{--sch-paper:#1b3028;--sch-bg:#12241d;--sch-ink:#e8f4ec;--sch-border:#355044}[data-theme="dark"] .schedule-break,[data-theme="dark"] .schedule-activity,[data-theme="dark"] .teacher-live{background:#25352e}[data-theme="dark"] .schedule-card.is-live{background:#164a37}

.schedule-days,.mobile-bottom-nav{scrollbar-width:none}.schedule-days::-webkit-scrollbar,.mobile-bottom-nav::-webkit-scrollbar{display:none}
