:root{color-scheme:light;--bg:#eaf2fb;--card:rgba(255,255,255,.94);--ink:#13263d;--muted:#65778d;--line:#d8e4f0;--blue:#175ab8;--teal:#078c84;--soft:#edf5ff;--warn:#ef962f;--shadow:0 16px 44px rgba(40,74,112,.11)}*{box-sizing:border-box}html,body{width:100%;min-height:100%;margin:0}body{overflow:hidden;background:radial-gradient(circle at 8% 0,#d8f4ef 0,transparent 31%),radial-gradient(circle at 92% 0,#dbeaff 0,transparent 35%),var(--bg);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif}button,select{font:inherit}.screen{width:100vw;height:100vh;padding:18px 26px 12px;display:grid;grid-template-rows:104px 64px 1fr 20px;gap:11px}.card{background:var(--card);border:1px solid rgba(255,255,255,.9);box-shadow:var(--shadow);border-radius:24px}.topbar{display:grid;grid-template-columns:1fr auto;align-items:center;padding:10px 24px;gap:28px}.brand{display:flex;align-items:center;gap:18px}.school-logo{width:82px;height:82px;object-fit:contain;border-radius:50%;background:white}.brand #date{display:block;color:var(--ink);font-size:30px;font-weight:760}.clock{display:flex;align-items:baseline;font-weight:820;font-variant-numeric:tabular-nums;font-size:66px;line-height:1;letter-spacing:-.05em}.clock i{font-style:normal;color:var(--teal);animation:blink 2s steps(1) infinite}.clock small{font-size:21px;color:var(--muted);margin-left:11px;letter-spacing:0}.toolbar{display:flex;align-items:center;padding:8px 14px;gap:18px}.segmented{display:flex;background:#edf2f7;border-radius:14px;padding:4px;gap:3px}.segmented button,.feed-tabs button{border:0;background:transparent;color:var(--muted);padding:8px 16px;border-radius:10px;font-weight:750;cursor:pointer;white-space:nowrap}.segmented button.active,.feed-tabs button.active{background:white;color:var(--blue);box-shadow:0 3px 10px rgba(37,75,118,.12)}.shift-badge{padding:9px 15px;border-radius:999px;background:#e3f5f1;color:var(--teal);font-size:15px;font-weight:800}.class-control{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:15px;font-weight:700}.class-control select{height:42px;min-width:120px;border:1px solid var(--line);border-radius:12px;background:white;color:var(--ink);padding:0 34px 0 13px;font-weight:760}.auto-note{margin-left:auto;color:var(--muted);font-size:14px;font-weight:650}.dashboard{min-height:0;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(390px,.62fr);gap:11px}.schedule,.bells,.feed{min-height:0;padding:17px 19px}.schedule{display:flex;flex-direction:column}.sidebar{min-height:0;display:grid;grid-template-rows:.82fr 1.18fr;gap:11px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.section-head.compact h2{font-size:24px}.kicker{display:block;color:var(--blue);font-size:13px;font-weight:820;text-transform:uppercase;letter-spacing:.08em}.section-head h1,.section-head h2{margin:2px 0 0;font-size:28px;line-height:1.1}.lesson-status,.date-chip{padding:7px 12px;border-radius:999px;background:#e6f6f3;color:var(--teal);font-size:13px;font-weight:800;white-space:nowrap}.date-chip{background:var(--soft);color:var(--blue)}.school-schedule{flex:1;min-height:0;margin-top:11px;overflow:hidden;border:1px solid var(--line);border-radius:15px;background:white}.school-table{width:100%;height:100%;border-collapse:collapse;table-layout:fixed}.school-table th{height:35px;background:#f1f6fc;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.school-table th:first-child{width:72px}.school-table th:last-child{width:142px}.school-table th,.school-table td{border-right:1px solid #e5edf5;border-bottom:1px solid #e5edf5;padding:5px 7px;text-align:left}.school-table td:first-child{font-size:17px;font-weight:850;color:var(--blue);text-align:center}.school-table td.lesson-cell{font-size:14px;font-weight:720;line-height:1.15}.school-table td.lesson-cell.current{background:#dff5f0;box-shadow:inset 0 3px 0 var(--teal)}.school-table td.activity-cell{color:#82551b;font-size:12px;font-weight:750;background:#fff9ee}.activity-pill{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:1px 0}.week-grid{flex:1;min-height:0;margin-top:11px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.week-day{min-width:0;border:1px solid var(--line);border-radius:14px;background:#fbfdff;padding:10px}.week-day.today{border-color:#69a0e8;background:#f1f7ff}.week-day h3{margin:0 0 7px;font-size:16px}.week-row{display:flex;align-items:center;gap:6px;padding:5px 0;border-top:1px solid #e8eef5;font-size:13px;min-width:0}.week-row b{color:var(--blue);width:18px}.week-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.week-row.activity{color:#8b5c1a}.bell-columns{margin-top:11px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.bell-list{display:grid;gap:7px}.bell{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:12px;padding:8px 10px;background:#fbfdff;font-size:14px}.bell b{color:var(--blue)}.bell time{color:var(--muted);font-variant-numeric:tabular-nums}.bell.current{border-color:#55c8bd;background:#e9f8f5}.feed{display:flex;flex-direction:column}.feed-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);padding-bottom:8px}.feed-tabs button{padding:7px 11px}.feed-list{min-height:0;overflow:hidden;margin-top:8px;display:grid;gap:6px}.feed-item{display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:center;padding:8px 9px;border-radius:13px;background:#f7fafd;border:1px solid #e5edf5;min-height:0}.feed-item.clickable{cursor:pointer;transition:.15s ease}.feed-item.clickable:hover{border-color:#8fb5e7;background:#f0f6fd;transform:translateY(-1px)}.feed-item img{width:64px;height:49px;object-fit:cover;border-radius:9px}.feed-item .badge{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:#fff1d8;color:#a36609;font-size:19px}.feed-item h3{font-size:14px;margin:0 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feed-item p{font-size:12px;color:var(--muted);line-height:1.2;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.feed-item.important{border-left:4px solid var(--warn)}.updated{text-align:right;color:var(--muted);font-size:12px;padding-right:5px}.hidden{display:none!important}.toast{display:none;position:fixed;right:25px;bottom:25px;padding:13px 17px;background:#31475f;color:white;border-radius:13px;box-shadow:var(--shadow)}.toast.show{display:block}.empty{display:grid;place-items:center;text-align:center;color:var(--muted);font-size:17px}.news-dialog{width:min(1220px,88vw);height:min(790px,84vh);border:0;border-radius:28px;padding:0;background:white;color:var(--ink);box-shadow:0 35px 100px rgba(17,41,70,.3);overflow:hidden}.news-dialog::backdrop{background:rgba(22,43,67,.52);backdrop-filter:blur(4px)}.news-dialog article{height:100%;display:grid;grid-template-columns:minmax(340px,.9fr) minmax(0,1.1fr);gap:28px;padding:42px 74px 52px}.news-dialog .detail-image{width:100%;height:100%;max-height:650px;object-fit:contain;border-radius:20px;background:#eef3f8}.news-dialog .detail-copy{overflow:auto;padding-right:8px}.news-dialog .detail-copy h2{font-size:32px;line-height:1.12;margin:8px 0 18px}.news-dialog .detail-copy p{font-size:18px;line-height:1.55;white-space:pre-line}.news-dialog .detail-copy time{color:var(--blue);font-weight:750}.news-close,.news-arrow{position:absolute;border:0;background:white;color:var(--ink);box-shadow:0 5px 18px rgba(24,50,80,.15);cursor:pointer}.news-close{right:18px;top:18px;width:46px;height:46px;border-radius:50%;font-size:29px}.news-arrow{top:50%;width:48px;height:70px;border-radius:16px;font-size:45px;transform:translateY(-50%)}.news-arrow.prev{left:14px}.news-arrow.next{right:14px}.news-counter{position:absolute;left:50%;bottom:17px;transform:translateX(-50%);color:var(--muted);font-weight:750}.news-dialog.no-image article{grid-template-columns:1fr;max-width:850px;margin:auto}@keyframes blink{50%{opacity:.2}}@media(max-width:1200px){body{overflow:auto}.screen{height:auto;min-height:100vh}.dashboard{grid-template-columns:1fr}.sidebar{grid-template-columns:1fr 1fr;grid-template-rows:auto}.week-grid{grid-template-columns:repeat(2,1fr)}.auto-note{display:none}.news-dialog article{grid-template-columns:1fr;overflow:auto}.school-schedule{overflow:auto}}
