/* ===== «Сабақ кестесі» — жаңа дизайн (inc/schedule-new.php) =====
   Баннер + қойындылар, өріс атаулары бар форма, апта торы / телефонда күндер, басып шығару. */

/* Бұрынғы көк тақырып жолағы мен қойындылар — баннерге көшті */
.schedule-modern--new > .container > .schedule-wrapper > .telegram-banner,
.schedule-modern--new .tabs-nav { display: none !important; }
.schedule-modern--new { padding-top: 0 !important; background: none !important; }
.schedule-modern--new .schedule-wrapper { margin-top: -54px; position: relative; z-index: 2; border-radius: 18px; }

/* Баннер */
.sp-hero { padding: 62px 0 86px; color: #fff; font-family: Merriweather, Georgia, serif;
    background: radial-gradient(1100px 380px at 85% -20%, rgba(255,255,255,.10), transparent 60%), linear-gradient(135deg, #0A1628 0%, #0b2f63 55%, #0052A5 100%); }
.sp-hero small { font: 700 11.5px/1 system-ui, sans-serif; letter-spacing: .3em; color: #9fbde3; }
.sp-hero h1 { margin: 12px 0 8px; font-size: 32px !important; line-height: 1.2; color: #fff; font-weight: 700; }
.sp-hero p { margin: 0 0 20px; color: #d6e3f5; font-size: 15px; }
.sp-tabs { display: flex; flex-wrap: wrap; gap: 8px; }
.sp-tabs button { padding: 10px 18px; border-radius: 50px; border: 1px solid rgba(255,255,255,.28); background: rgba(255,255,255,.06); color: #fff; font: 700 14px Merriweather, Georgia, serif; cursor: pointer; transition: background .15s, color .15s; }
.sp-tabs button:hover { background: rgba(255,255,255,.14); }
.sp-tabs button.on { background: #fff; color: #0052A5; border-color: #fff; }
.sp-tabs button:focus-visible { outline: 2px solid #F5C46B; outline-offset: 2px; }

/* Форма */
.sp { font-family: Merriweather, Georgia, serif; color: #0A1628; }
.sp * { box-sizing: border-box; }
.sp-form { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1.2fr) minmax(0, .9fr) minmax(0, 1fr) auto; gap: 14px; align-items: start; padding: 22px; border: 1px solid #e3ebf6; border-radius: 16px; background: #F8FBFF; }
.sp-f label { display: flex; align-items: center; gap: 8px; margin: 0 0 7px; font-size: 13.5px; font-weight: 700; }
.sp-f label i { flex: 0 0 22px; height: 22px; border-radius: 50%; background: #0052A5; color: #fff; font: 700 12px/22px system-ui, sans-serif; text-align: center; font-style: normal; }
.sp-f select { width: 100%; height: 46px; margin: 0; padding: 0 12px; border: 1px solid #cfdcec; border-radius: 10px; background-color: #fff; font: 14px Merriweather, Georgia, serif; color: #0A1628; }
.sp-f select:focus { outline: none; border-color: #0052A5; box-shadow: 0 0 0 3px rgba(0,82,165,.15); }
.sp-f select:disabled { background-color: #f1f5f9; border-color: #c3d0e0; color: #64748b; cursor: not-allowed; } /* бұрын шекарасы мен мәтіні әрең көрінетін */
.sp-f small { display: block; margin-top: 6px; font: 12px system-ui, sans-serif; color: #5a6a80; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sp-form .sp-go { margin-top: 29px; height: 46px; padding: 0 22px; border: 0; border-radius: 10px; background: #0052A5; color: #fff; font: 700 14.5px Merriweather, Georgia, serif; cursor: pointer; white-space: nowrap; width: auto; }
.sp-form .sp-go:hover { background: #003b78; }
.sp-status { grid-column: 1 / -1; font-size: 14px; color: #5a6a80; }
.sp-status:empty { display: none; }
.sp-status img { width: 22px; vertical-align: middle; margin-right: 6px; }
.sp-note { margin: 10px 2px 0; font: 12.5px system-ui, sans-serif; color: #5a6a80; }

/* Нәтиже */
.spr { margin-top: 22px; }
.spr-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; margin-bottom: 14px; }
.spr-legend { display: flex; flex-wrap: wrap; gap: 8px 14px; font: 12.5px system-ui, sans-serif; color: #334155; }
.spr-legend span { display: inline-flex; align-items: center; gap: 6px; }
.spr-legend span::before { content: ""; width: 10px; height: 10px; border-radius: 3px; background: var(--c); }
.spr-print { margin-left: auto; display: inline-flex; align-items: center; gap: 6px; padding: 8px 12px; border: 1px solid #cfdcec; border-radius: 9px; background: #fff; font: 700 13px Merriweather, Georgia, serif; color: #0052A5; cursor: pointer; }
.spr-print svg { width: 16px; height: 16px; }
.spr-grid { display: grid; grid-template-columns: 92px repeat(6, minmax(0, 1fr)); border: 1px solid #e3ebf6; border-radius: 14px; overflow: hidden; background: #fff; }
.spr-grid > div { border-right: 1px solid #eef2f7; border-bottom: 1px solid #eef2f7; padding: 8px; min-height: 92px; }
.spr-h { min-height: 0 !important; padding: 12px 8px !important; background: #F5F9FF; font-weight: 700; font-size: 14px; text-align: center; }
.spr-h small { display: none; font: 700 10px/1 system-ui, sans-serif; letter-spacing: .08em; text-transform: uppercase; }
/* Бүгін — сайттың алтын түсі (градиент белгі, мәтіні қою көк; сызық — #E0A526) */
.spr-h.today, .spr-c.today { background: #FFFCF4; }
.spr-h.today { color: #0A1628; box-shadow: inset 0 -3px 0 #E0A526; }
.spr-h.today small { display: table; margin: 5px auto 0; padding: 3px 8px; border-radius: 50px; background: linear-gradient(135deg, #f5c46b 0%, #e0a526 100%); color: #0A1628; }
.spr-t { display: flex; flex-direction: column; justify-content: center; align-items: center; background: #F8FBFF; font: 700 12.5px/1.35 system-ui, sans-serif; color: #334155; text-align: center; }
.spr-t b { display: block; font-size: 15px; color: #0052A5; margin-bottom: 2px; }
.spr-c { display: flex; flex-direction: column; gap: 6px; }
.spr-l { flex: 1; padding: 8px 9px; border-radius: 10px; background: var(--bg); border-left: 3px solid var(--c); }
.spr-l b { display: block; font-size: 13px; line-height: 1.3; }
.spr-l em { display: inline-block; margin: 4px 0 6px; padding: 2px 7px; border-radius: 50px; background: #fff; color: var(--c); font: 700 10.5px system-ui, sans-serif; font-style: normal; }
.spr-l span { display: flex; align-items: flex-start; gap: 5px; font: 12px/1.4 system-ui, sans-serif; color: #475569; }
.spr-l span + span { margin-top: 2px; }
.spr-l span svg { width: 13px; height: 13px; flex-shrink: 0; margin-top: 2px; }
.spr-l span i { font-style: normal; color: #94a3b8; }
.t-lecture { --c: #0052A5; --bg: #EEF5FF; }
.t-practical { --c: #0f8a5f; --bg: #E8F7F0; }
.t-laboratory { --c: #7c3aed; --bg: #F3EEFF; }
.t-pbs { --c: #b45309; --bg: #FFF4E5; }
.t-other { --c: #64748b; --bg: #F1F5F9; }
.spr-days, .spr-list { display: none; }
.spr-empty { padding: 26px; text-align: center; color: #5a6a80; border: 1px dashed #cfdcec; border-radius: 12px; font-size: 14px; background: #fff; }

.sp-tg { display: flex; align-items: center; gap: 14px; margin-top: 22px; padding: 14px 18px; border-radius: 14px; background: #EEF5FF; color: #0A1628; font-size: 14px; }
.sp-tg > svg { width: 28px; height: 28px; color: #229ED9; flex-shrink: 0; }
.sp-tg a { margin-left: auto; padding: 8px 14px; border-radius: 9px; background: #229ED9; color: #fff !important; font-weight: 700; font-size: 13.5px; white-space: nowrap; text-decoration: none; }
.sp-tg a:hover { opacity: 1; background: #1b8bc2; }

@media (max-width: 991px) {
    .sp-hero { padding: 22px 0 76px; }
    .sp-hero h1 { font-size: 24px !important; }
    .sp-hero p { font-size: 13.5px; }
    .sp-tabs { gap: 6px; }
    .sp-tabs button { flex: 1 1 auto; white-space: nowrap; padding: 9px 12px; font-size: 13px; }
    .sp-form { grid-template-columns: 1fr; padding: 16px; }
    .sp-form .sp-go { margin-top: 4px; width: 100%; }
    .sp-f small { white-space: normal; }
    .spr-print { margin-left: 0; }
    .spr-grid { display: none; }
    .spr-days { display: flex; gap: 6px; margin-bottom: 12px; }
    .spr-days button { flex: 1 1 0; min-width: 0; padding: 9px 4px; border: 1px solid #cfdcec; border-radius: 10px; background: #fff; font: 700 13px Merriweather, Georgia, serif; color: #0A1628; cursor: pointer; }
    .spr-days button.is-free { color: #94a3b8; }
    .spr-days button.on { background: #0052A5; border-color: #0052A5; color: #fff; }
    .spr-days button.today:not(.on) { border-color: #E0A526; box-shadow: inset 0 0 0 1px #E0A526; background: #FFFCF4; }
    .spr-days button.today.on { box-shadow: inset 0 -3px 0 #F5C46B; }
    .spr-list { display: block; }
    .spr-day { display: flex; flex-direction: column; gap: 10px; }
    .spr-day[hidden] { display: none; }
    .spr-row { display: grid; grid-template-columns: 62px minmax(0, 1fr); gap: 10px; align-items: stretch; }
    .spr-row > div:last-child { display: flex; flex-direction: column; gap: 6px; }
    .spr-row .spr-t { border-radius: 10px; padding: 8px 4px; font-size: 11px; }
    .spr-row .spr-t b { font-size: 14px; }
    .sp-tg { flex-wrap: wrap; }
    .sp-tg a { margin-left: 0; }
}

/* Басып шығару: тек кесте */
@media print {
    .nh-util, .nh-main, .nsb, .site-sb, .to-top, .wkai-launcher, .nh-adm--float, .breadcrumbs, footer, .footer,
    .sp-hero, .sp-form, .sp-note, .sp-tg, .spr-print, .spr-days, .spr-list, .wkau-float-wrapper { display: none !important; }
    html body { padding: 0 !important; }
    .schedule-modern--new .schedule-wrapper { margin: 0; box-shadow: none !important; border: 0 !important; }
    .spr-grid { display: grid !important; font-size: 11px; }
    .spr-grid > div { min-height: 0; break-inside: avoid; }
    .spr-l { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}
