:root{--bg:#f4f7f5;--ink:#16211d;--muted:#66736c;--line:#dbe3de;--panel:#fff;--green:#1d8f63;--red:#c9513f;--blue:#2767a3;--amber:#b7791f}.inventory-page{color:var(--ink);background:#f4f8f5;min-height:100vh;padding:28px}.inventory-page .public-topbar{max-width:1180px;margin:0 auto 18px}.inventory-hero,.inventory-campaign-card,.inventory-panel,.inventory-tabs,.inventory-message{max-width:1180px;margin-left:auto;margin-right:auto}.inventory-hero{background:linear-gradient(110deg,#e9f7efe6,#fffffff0 58%,#e0ece8d6),#fff;border:1px solid #cfe1d7;border-top:5px solid #0f6b43;border-radius:8px;grid-template-columns:96px 1fr auto;align-items:center;gap:24px;padding:28px;display:grid;box-shadow:0 18px 40px #15382a14}.inventory-hero.compact{grid-template-columns:1fr}.inventory-hero img{object-fit:contain;width:88px;height:88px}.inventory-hero h1{margin:0 0 12px;font-size:clamp(2.3rem,6vw,4.4rem);line-height:.95}.inventory-hero p,.inventory-hero span,.inventory-campaign-card p,.inventory-panel p{color:#52665d}.inventory-message{color:#0f6b43;background:#e8f7ee;border:1px solid #b7dfc8;border-radius:8px;margin-top:14px;padding:12px 16px;font-weight:800}.inventory-tabs{background:#fff;border:1px solid #d5e2dc;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:18px;padding:10px;display:grid}.inventory-tabs button,.inventory-report-grid button,.inventory-action-row button,.inventory-review-card>button,.inventory-need-form button,.inventory-config-card button{justify-content:center;align-items:center;gap:8px;display:inline-flex}.inventory-tabs button{color:#12201a;background:#f8fbf9;border:1px solid #d5e2dc;min-height:58px;position:relative}.inventory-tabs button.active{color:#fff;background:#10241b;border-color:#10241b}.inventory-tabs button b{color:#fff;background:#d15042;border-radius:999px;padding:5px 8px;font-size:.75rem;line-height:1}.inventory-campaign-card,.inventory-panel{background:#fff;border:1px solid #d5e2dc;border-radius:8px;margin-top:16px;padding:24px}.inventory-campaign-card,.inventory-section-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.inventory-action-row,.inventory-card-actions,.inventory-report-grid{flex-wrap:wrap;gap:10px;display:flex}.inventory-action-row .ghost,.inventory-card-actions .ghost{color:#10241b;background:#fff}.inventory-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;max-width:1180px;margin:16px auto 0;display:grid}.inventory-stats article{background:#fff;border:1px solid #d5e2dc;border-radius:8px;padding:18px}.inventory-stats svg{color:#0f6b43}.inventory-stats span,.inventory-stats strong{display:block}.inventory-stats strong{font-size:2rem}.inventory-stats .warning svg{color:#b37a1f}.inventory-stats .danger svg{color:#c94d3f}.inventory-review-states,.inventory-preview-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:1180px;margin:16px auto 0;display:grid}.inventory-review-states article,.inventory-preview-summary article{background:#f8fbf9;border:1px solid #d5e2dc;border-radius:8px;padding:14px 16px}.inventory-review-states span,.inventory-preview-summary span{color:#52665d;font-weight:800;display:block}.inventory-review-states strong,.inventory-preview-summary strong{color:#10241b;font-size:1.65rem;display:block}.inventory-warning-text{font-weight:800;color:#9f392d!important}.inventory-ok-text{font-weight:800;color:#0f6b43!important}.inventory-filter-bar{background:#fff;border:1px solid #d5e2dc;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;max-width:1180px;margin:16px auto 0;padding:14px 16px;display:flex}.inventory-filter-bar div{gap:2px;display:grid}.inventory-filter-bar span{color:#52665d}.inventory-filter-bar button{align-items:center;gap:8px;display:inline-flex}.inventory-filter-bar button.active{color:#a73528;background:#fff2e6;border-color:#d15042}.inventory-space-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;max-width:1180px;margin:16px auto 0;display:grid}.inventory-space-card{color:#12201a;text-align:left;background:#fff;border:1px solid #d5e2dc;border-left:5px solid #aebdb5;border-radius:8px;align-items:flex-start;gap:4px;min-height:116px;padding:16px;display:grid}.inventory-space-card.ok{border-left-color:#188a5a}.inventory-space-card.damaged{border-left-color:#c9992d}.inventory-space-card.missing{border-left-color:#d15042}.inventory-space-card.repaired{border-left-color:#2c74b8}.inventory-light{background:#aebdb5;border-radius:999px;width:12px;height:12px;display:inline-block}.ok .inventory-light,.inventory-space-card.ok .inventory-light{background:#188a5a}.damaged .inventory-light,.inventory-space-card.damaged .inventory-light{background:#c9992d}.missing .inventory-light,.inventory-space-card.missing .inventory-light{background:#d15042}.repaired .inventory-light,.inventory-space-card.repaired .inventory-light{background:#2c74b8}.inventory-badge{border-radius:999px;padding:9px 14px;font-weight:900}.inventory-badge.ok{color:#0f6b43;background:#e4f7ed}.inventory-badge.muted{color:#52665d;background:#eef2ef}.inventory-workspace{grid-template-columns:260px minmax(0,1fr);gap:18px;margin-top:16px;display:grid}.inventory-space-selector{background:#f8fbf9;border:1px solid #d5e2dc;border-radius:8px;gap:8px;max-height:640px;padding:10px;display:grid;overflow:auto}.inventory-space-selector button{color:#12201a;text-align:left;background:#fff;border:1px solid #d5e2dc;justify-items:start;gap:3px;display:grid}.inventory-space-selector button.active{border-color:#0f6b43;box-shadow:inset 4px 0 #0f6b43}.inventory-review-card,.inventory-config-card{background:#fff;border:1px solid #d5e2dc;border-radius:8px;padding:18px}.inventory-item-table{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;margin:16px 0;display:grid}.inventory-category-stack{gap:16px;margin:18px 0;display:grid}.inventory-category-stack section{background:#f8fbf9;border:1px solid #d5e2dc;border-radius:8px;padding:12px}.inventory-category-stack h4{color:#0f6b43;letter-spacing:0;text-transform:uppercase;margin:0 0 10px;font-size:.86rem}.inventory-item-table button{color:#12201a;text-align:left;background:#f8fbf9;border:1px solid #d5e2dc;justify-items:start;gap:4px;min-height:96px;display:grid}.inventory-item-table button.active{border-color:#0f6b43;box-shadow:inset 0 4px #0f6b43}.inventory-form-grid,.inventory-need-form,.inventory-settings-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.inventory-need-form,.inventory-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inventory-form-grid label,.inventory-need-form label,.inventory-config-card label,.inventory-wide-label{color:#52665d;gap:6px;font-weight:800;display:grid}.inventory-form-grid input,.inventory-form-grid select,.inventory-need-form input,.inventory-need-form select,.inventory-need-form textarea,.inventory-config-card input,.inventory-config-card select,.inventory-wide-label textarea{font:inherit;border:1px solid #d5e2dc;border-radius:8px;min-height:44px;padding:10px 12px}.inventory-wide-label{grid-column:1/-1;margin:12px 0}.inventory-wide-label textarea,.inventory-need-form textarea{resize:vertical;min-height:96px}.inventory-add-preview{background:#f3faf6;border:1px solid #bde2cf;border-radius:8px;grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:4px;padding:12px;display:grid}.inventory-add-preview strong{color:#0f6b43}.inventory-add-preview span{color:#12201a;text-align:center;background:#fff;border:1px solid #d5e2dc;border-radius:999px;padding:8px 10px;font-weight:800}.inventory-audit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.inventory-audit-grid article{background:#fff;border:1px solid #d5e2dc;border-radius:8px;gap:10px;padding:16px;display:grid}.inventory-audit-grid h3{color:#0f4d33;margin:0;font-size:1rem}.inventory-audit-grid button{color:#12201a;text-align:left;background:#f8fbf9;border:1px solid #d5e2dc;border-radius:8px;gap:4px;padding:12px;display:grid}.inventory-audit-grid button:hover{border-color:#0f6b43;box-shadow:inset 4px 0 #0f6b43}.inventory-audit-grid button span{color:#52665d}.inventory-audit-grid button em{color:#0f6b43;font-style:normal;font-weight:800}.inventory-import-preview{background:#f3faf6;border:1px solid #bde2cf;border-radius:8px;gap:8px;margin-top:12px;padding:12px;display:grid}.inventory-import-preview strong{color:#0f4d33}.inventory-import-preview span{color:#12201a;background:#fff;border:1px solid #d5e2dc;border-radius:8px;padding:8px 10px;font-weight:800}.inventory-import-preview p{color:#52665d;margin:0}.inventory-list{gap:12px;margin-top:16px;display:grid}.inventory-change-card,.inventory-need-card{background:#fff;border:1px solid #d5e2dc;border-left:5px solid #aebdb5;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:16px;display:grid}.inventory-change-card.damaged,.inventory-need-card.media{border-left-color:#c9992d}.inventory-change-card.missing,.inventory-need-card.alta{border-left-color:#d15042}.inventory-change-card.repaired,.inventory-need-card.baja{border-left-color:#188a5a}.inventory-need-card.urgente{border-left-color:#8d1f16;box-shadow:inset 0 0 0 1px #8d1f162e}.inventory-change-card p,.inventory-need-card p{margin:4px 0}.inventory-change-card small{color:#52665d;display:block}.inventory-need-card select{border:1px solid #d5e2dc;border-radius:8px;min-height:42px;padding:8px}.inventory-report-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:16px;display:grid}.inventory-report-grid button{min-height:90px}.inventory-ley-preview{background:#f8fbf9;border:1px solid #d5e2dc;border-radius:8px;margin-top:16px;padding:18px}.inventory-preview-alert{color:#7a2e22;background:#fff5ed;border:1px solid #efc4ab;border-left:5px solid #c94d3f;border-radius:8px;margin-top:14px;padding:14px 16px}.inventory-preview-list{gap:10px;margin-top:16px;display:grid}.inventory-preview-list article{background:#fff;border:1px solid #d5e2dc;border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:10px;padding:12px 14px;display:grid}.inventory-preview-list article div{gap:2px;display:grid}.inventory-preview-list span,.inventory-preview-list small{color:#52665d}.inventory-preview-list em,.inventory-preview-list b{color:#0f6b43;white-space:nowrap;background:#e8f7ee;border-radius:999px;padding:7px 10px;font-style:normal}.inventory-official-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin-top:16px;display:grid}.inventory-official-grid article{border:1px solid #d5e2dc;border-radius:8px;padding:18px}.inventory-official-grid ul{margin:16px 0 0;padding:0;list-style:none}.inventory-official-grid li{border-top:1px solid #e1ebe6;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:10px 0;display:grid}.inventory-official-grid li em{color:#52665d;grid-column:1/-1;font-style:normal}.inventory-config-card{gap:12px;display:grid}.inventory-history-card{background:#f8fbf9;border:1px solid #d5e2dc;border-radius:8px;margin-top:16px;padding:16px}.inventory-history-card h4{margin:0 0 12px}.inventory-history-card ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.inventory-history-card li{background:#fff;border:1px solid #e1ebe6;border-left:4px solid #0f6b43;border-radius:8px;padding:12px}.inventory-history-card span,.inventory-history-card p,.inventory-history-card em{color:#52665d;margin-top:4px;display:block}.inventory-history-card em{color:#0f6b43;font-style:normal;font-weight:800}.inventory-official-editor{grid-column:1/-1}.inventory-official-editor-list{gap:10px;display:grid}.inventory-official-editor-list article{background:#f8fbf9;border:1px solid #d5e2dc;border-radius:8px;grid-template-columns:1.35fr repeat(4,minmax(84px,.7fr)) 1.35fr auto;align-items:end;gap:10px;padding:12px;display:grid}.inventory-official-editor-list input{width:100%}.inventory-official-note{min-width:150px}@media (max-width:850px){.inventory-page{padding:14px}.inventory-hero{grid-template-columns:72px 1fr;padding:18px}.inventory-hero button{grid-column:1/-1;width:100%}.inventory-hero img{width:64px;height:64px}.inventory-campaign-card,.inventory-filter-bar,.inventory-section-heading{flex-direction:column;align-items:stretch}.inventory-stats,.inventory-review-states,.inventory-preview-summary,.inventory-workspace,.inventory-form-grid,.inventory-need-form,.inventory-settings-grid,.inventory-audit-grid,.inventory-report-grid{grid-template-columns:1fr}.inventory-space-selector{max-height:240px}.inventory-change-card,.inventory-need-card{grid-template-columns:1fr;align-items:stretch}.inventory-official-editor-list article,.inventory-add-preview{grid-template-columns:1fr}.inventory-preview-list article{grid-template-columns:1fr;align-items:stretch}}.plan-national-shell{max-width:1180px}.plan-national-hero{background:linear-gradient(108deg,#eaf8eff2,#fffffff0 58%,#e8f1ece6),radial-gradient(circle at 12% 20%,#1d8f631f,#0000 32%);border-top:5px solid #178957;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px;margin-bottom:18px;padding:28px;display:grid;position:relative;overflow:hidden}.plan-national-hero:after{content:"";pointer-events:none;background:#12825214;width:140px;position:absolute;top:0;bottom:0;right:9%;transform:skew(-17deg)}.plan-national-hero-mark,.plan-national-hero-copy,.plan-national-hero button{z-index:1;position:relative}.plan-national-logo{background:#ffffffc7;border:1px solid #cfe0d6;border-radius:8px;justify-content:center;align-items:center;width:112px;height:112px;padding:12px;display:flex;box-shadow:0 18px 40px #16211d1a}.plan-national-logo img{object-fit:contain;max-width:100%;max-height:100%;display:block}.plan-national-logo span{color:#fff;background:#11231c;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;font-size:28px;font-weight:900;display:flex}.plan-national-hero h1{margin:0 0 10px;font-size:clamp(38px,6vw,64px);line-height:1}.plan-national-hero-copy p:not(.eyebrow){color:#40514b;max-width:740px;font-size:18px;line-height:1.45}.plan-national-hero-meta{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.plan-national-hero-meta span{color:#0d6b43;background:#fff;border:1px solid #cfe0d6;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:900}.plan-national-tabs{background:#ffffffd1;border:1px solid #cfe0d6;border-radius:8px;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px;padding:12px;display:grid;box-shadow:0 16px 35px #16211d0f}.plan-national-tabs button,.plan-national-section-grid button,.plan-national-student-list button{color:#10231d;cursor:pointer;font:inherit;text-align:left;background:#fff;border:1px solid #d5e2da;border-radius:8px}.plan-national-tabs button{gap:4px;min-height:56px;padding:12px 14px;display:grid}.plan-national-tabs button.active,.plan-national-student-list button.active{color:#fff;background:linear-gradient(135deg,#11231c,#0d6040);border-color:#11231c;box-shadow:0 14px 30px #11231c2e}.plan-national-tabs small,.plan-national-student-list span{color:#60716b;font-size:13px}.plan-national-tabs button.active small,.plan-national-student-list button.active span{color:#dfeee8}.plan-national-message{color:#0b6d42;background:#eaf8ef;border:1px solid #bde3ca;border-radius:8px;margin:0 0 16px;padding:12px 14px;font-weight:800}.plan-national-stats,.plan-national-section-grid{gap:12px;display:grid}.plan-national-stats{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:16px}.plan-national-stats article{background:linear-gradient(#fff,#f8fbf9);border:1px solid #cfe0d6;border-radius:8px;gap:6px;min-height:120px;padding:18px;display:grid;box-shadow:0 14px 30px #16211d0d}.plan-national-stats svg,.plan-national-section-grid strong{color:#128252}.plan-national-stats span{color:#52635d;font-weight:800}.plan-national-stats strong{font-size:34px;line-height:1}.plan-national-section-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.plan-national-section-grid button{justify-content:space-between;align-items:center;padding:18px;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex;box-shadow:0 12px 26px #16211d0d}.plan-national-section-grid button:hover{border-color:#178957;transform:translateY(-1px);box-shadow:0 16px 32px #16211d17}.plan-national-section-grid span{font-size:22px;font-weight:900}.plan-national-section-grid strong{background:#e9f7ef;border-radius:999px;padding:6px 12px}.plan-national-legacy-box{background:#fff8e8;border:1px solid #efd59a;border-radius:8px;gap:14px;margin-top:18px;padding:16px;display:grid}.plan-national-legacy-box h3{margin:2px 0 4px}.plan-national-legacy-box p:not(.eyebrow){color:#624b18;margin:0}.plan-national-legacy-list{gap:10px;display:grid}.plan-national-legacy-list article{background:#fff;border:1px solid #ecd394;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.plan-national-legacy-list strong{color:#8a5a00;font-size:20px;display:block}.plan-national-legacy-list span{color:#624b18;margin-top:2px;font-weight:800;display:block}.plan-national-legacy-list button{color:#fff;white-space:nowrap;background:#11231c}.plan-national-editor-grid{grid-template-columns:minmax(280px,390px) minmax(0,1fr);gap:18px;display:grid}.plan-national-student-list{gap:8px;max-height:620px;padding-right:4px;display:grid;overflow:auto}.plan-national-student-list button{gap:4px;padding:12px;display:grid}.plan-national-editor{position:sticky;top:12px}.plan-national-note{background:#fff8e8;border:1px solid #efd59a;border-radius:8px;margin:14px 0;padding:12px}.plan-national-save-feedback{color:#10231d;background:#f8fbf9;border:1px solid #d5e2da;border-radius:8px;margin:0 0 12px;padding:11px 12px;font-weight:800}.plan-national-save-button{justify-content:center;width:100%;min-height:48px}.plan-national-save-button:disabled{cursor:wait;opacity:.65}.list-preset-row,.button-row{flex-wrap:wrap;gap:10px;margin:12px 0;display:flex}.list-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px;display:grid}.list-field-grid label{background:#f8fbf9;border:1px solid #d5e2da;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;display:flex}.list-preview-table{max-height:520px;margin-top:12px;overflow:auto}.list-preview-table table{border-collapse:collapse;width:100%;font-size:13px}.list-preview-table th{color:#0d6b43;text-align:left;background:#eef8f2}.list-preview-table th,.list-preview-table td{border-bottom:1px solid #d8e4dd;padding:9px 10px}@media (max-width:860px){.plan-national-hero,.plan-national-editor-grid,.plan-national-legacy-list article,.plan-national-stats,.plan-national-section-grid,.plan-national-tabs,.list-field-grid{grid-template-columns:1fr}.plan-national-hero .secondary-button,.plan-national-tabs button,.button-row button{width:100%}.plan-national-hero{padding:20px}.plan-national-logo{width:94px;height:94px}.plan-national-editor{position:static}}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,.row-actions a{background:var(--ink);border:1px solid var(--ink);color:#fff;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 16px;display:inline-flex}button.secondary{color:var(--ink);background:#fff}button.ghost{border-color:var(--line);color:var(--ink);background:0 0}.shell{max-width:1320px;margin:0 auto;padding:28px}.hero{grid-template-columns:1fr auto;align-items:end;gap:28px;padding:48px 0 30px;display:grid}.eyebrow{color:var(--blue);letter-spacing:0;text-transform:uppercase;margin:0 0 10px;font-size:13px;font-weight:700}h1,h2,p{margin-top:0}h1{max-width:850px;margin-bottom:18px;font-size:clamp(34px,5vw,62px);line-height:1.02}h2{margin-bottom:10px;font-size:22px}.lead,.page-heading p,.scanner-panel p,.parent-login p{color:var(--muted);max-width:720px;font-size:18px;line-height:1.55}.status-strip{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:12px;min-width:280px;padding:18px;display:grid}.status-strip span{color:var(--muted);justify-content:space-between;align-items:center;display:flex}.status-strip strong{color:var(--ink);font-size:28px}.module-grid{grid-template-columns:repeat(3,1fr);gap:18px;margin:24px 0;display:grid}.module-card,.panel,.table-panel,.scanner-panel,.parent-login,.student-status,.announcements-admin,.parent-announcements,.accounts-panel,.connections-panel,.followup-panel,.withdrawn-panel,.audit-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px}.module-card{min-height:190px;padding:24px;display:block}.module-card svg{color:var(--blue);width:32px;height:32px;margin-bottom:22px}.module-card p,.timeline p,.student-row p{color:var(--muted);margin:0;line-height:1.45}.student-row-meta{color:var(--muted);gap:5px;margin-top:3px;font-size:13px;line-height:1.35;display:grid}.student-row-meta em,.student-row-meta small{border-radius:999px;width:fit-content;font-style:normal;font-weight:800;line-height:1.2;display:inline-flex}.student-row-meta em{color:#0b5f3a;background:#eef7f2;border:1px solid #1f7a4b2e;max-width:100%;padding:5px 8px}.student-row-meta small{color:#50615b;background:#edf1f3;padding:4px 7px;font-size:11px}.panel,.table-panel{padding:24px}.panel-title,.table-header,.topbar,.actions,.student-status,.last-event{align-items:center;display:flex}.panel-title{gap:10px}.panel-title h2,.table-header h2{margin:0}.timeline{gap:16px;margin-top:18px;display:grid}.timeline article{grid-template-columns:auto 1fr;align-items:center;gap:12px;display:grid}.dot{border-radius:999px;width:12px;height:12px}.dot.entry{background:var(--green)}.dot.exit{background:var(--red)}.dot.attention{background:#d08a1d}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;margin-bottom:34px;padding-bottom:14px}.topbar a{color:var(--blue);font-weight:700}.topbar-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.topbar-actions a{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;min-height:38px;padding:0 12px;font-weight:800;display:inline-flex}.topbar-actions a.primary{background:var(--ink);border-color:var(--ink);color:#fff}.icon-logout-button{border-color:var(--line);color:var(--ink);background:#fff;min-height:38px;padding:0 12px}.icon-logout-button svg{width:18px;height:18px}.page-heading{margin-bottom:24px}.superadmin-shell{max-width:1220px}.superadmin-hero{border:1px solid #b9dec9;border-top:5px solid var(--green);background:linear-gradient(120deg,#1d8f631f,#0000 54%),linear-gradient(102deg,#0000 73%,#1d8f6314 73%),#fff;border-radius:14px;grid-template-columns:112px minmax(0,1fr) minmax(280px,360px);align-items:center;gap:24px;margin-bottom:22px;padding:28px;display:grid;box-shadow:0 20px 50px #0f2b1f14}.superadmin-hero>img{object-fit:contain;background:#ffffffe0;border:1px solid #0f805329;border-radius:18px;width:112px;height:112px;padding:15px;box-shadow:0 16px 36px #0f2b1f1a}.superadmin-hero h1{letter-spacing:0;max-width:760px;margin:6px 0 14px;font-size:clamp(42px,6vw,72px);line-height:.95}.superadmin-hero p{color:var(--muted);max-width:780px;margin:0;font-size:17px;line-height:1.55}.superadmin-hero-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.superadmin-hero-stats article{background:#ffffffd1;border:1px solid #cfe2d8;border-radius:10px;padding:14px}.superadmin-hero-stats span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900;display:block}.superadmin-hero-stats strong{color:var(--ink);margin-top:4px;font-size:30px;line-height:1.05;display:block}.actions{gap:12px;margin-bottom:22px}.admin-tabs{background:linear-gradient(120deg, #1d8f630f, transparent 64%), var(--panel);border:1px solid #cfe2d8;border-radius:14px;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:22px;padding:12px;display:grid}.admin-quick-dashboard{grid-template-columns:repeat(7,minmax(105px,1fr)) minmax(150px,.9fr);align-items:stretch;gap:10px;margin-bottom:18px;display:grid}.admin-quick-dashboard article,.admin-quick-dashboard button{border:1px solid var(--line);background:#ffffffe6;border-radius:8px;min-height:58px;padding:10px 11px}.admin-quick-dashboard article span,.admin-quick-dashboard small{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.admin-quick-dashboard article strong{font-size:25px;line-height:1.1;display:block}.admin-quick-dashboard small{text-transform:none;grid-column:1/-1;align-self:center}.admin-quick-dashboard button{background:var(--ink);color:#fff;justify-content:center;align-items:center;min-width:0;font-weight:900;display:inline-flex}.admin-tabs button{color:var(--ink);text-align:center;background:#ffffffeb;border-color:#d5e2dc;border-radius:10px;justify-content:center;align-items:center;width:100%;min-height:48px;padding:0 12px}.admin-tabs button.active{color:#fff;background:linear-gradient(135deg,#10231d,#0f8053);border-color:#10231d;box-shadow:0 12px 26px #0f2b1f2e}.admin-tabs button span{overflow-wrap:anywhere}.admin-tab-help{border:1px solid #cfe2d8;border-left:4px solid var(--primary);color:#43524b;background:linear-gradient(120deg,#1d8f631a,#0000 72%),#f7fbf8;border-radius:10px;margin:-12px 0 18px;padding:12px 14px;font-size:14px;font-weight:700;line-height:1.45}.module-help{border:1px solid #cfe2d8;border-left:4px solid var(--primary);color:#43524b;background:linear-gradient(120deg,#1d8f6317,#0000 72%),#f8fbf9;border-radius:10px;margin:12px 0 18px;padding:12px 14px;font-size:14px;font-weight:700;line-height:1.45}.module-help.compact{margin-top:8px}.administrative-shell{max-width:1280px}.administrative-workbench{grid-template-columns:minmax(280px,.34fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.administrative-module-rail{position:sticky;top:14px}.administrative-active-area{gap:16px;min-width:0;display:grid}.administrative-hero{background:linear-gradient(135deg, #1d8f631f, #fff0 58%), linear-gradient(100deg, transparent 76%, #1d8f6314 76%), var(--panel);border:1px solid #b9dec9;border-left:5px solid var(--green);border-radius:14px;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:22px;margin-bottom:20px;padding:28px;display:grid;box-shadow:0 18px 45px #0f2b1f14}.administrative-hero>img{object-fit:contain;background:#ffffffd1;border:1px solid #0f805329;border-radius:18px;width:112px;height:112px;padding:15px;box-shadow:0 16px 36px #0f2b1f1a}.administrative-hero h1{margin:6px 0 10px;font-size:clamp(32px,4vw,48px);line-height:1}.administrative-hero p{max-width:820px}.administrative-tabs-panel{background:linear-gradient(180deg, #1d8f6314, transparent 42%), var(--panel);border:1px solid var(--line);border-radius:14px;gap:14px;margin-bottom:0;padding:16px;display:grid}.administrative-tabs-heading{border-bottom:1px solid var(--line);align-items:flex-start;gap:8px;padding-bottom:12px;display:grid}.administrative-tabs-heading h2,.administrative-tab-group h3{margin:0}.administrative-tabs-heading>span{color:var(--green);background:#ecfdf4;border:1px solid #b9ebcd;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.administrative-tab-groups{gap:14px;display:grid}.administrative-tab-group{gap:10px;display:grid}.administrative-tab-group h3{color:var(--muted);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:900}.administrative-tab-grid{grid-template-columns:1fr;gap:8px;display:grid}.administrative-tab-grid button{box-shadow:none;color:var(--ink);text-align:left;background:#fffc;border:1px solid #0000;border-radius:10px;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:58px;padding:9px 10px;transition:border-color .18s,box-shadow .18s,transform .18s,background .18s;display:grid}.administrative-tab-grid button:hover{border-color:#1d8f635c;transform:translateY(-1px);box-shadow:0 10px 22px #1430240f}.administrative-tab-grid button.active{color:#fff;background:linear-gradient(135deg,#10231d,#0f8053);border-color:#0f80538a;box-shadow:0 14px 28px #12221c2e}.administrative-tab-icon{color:var(--green);background:#edf8f2;border:1px solid #cce8d9;border-radius:9px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.administrative-tab-card-seguimiento .administrative-tab-icon{color:#a36b0b;background:#fff8e7;border-color:#f3d99c}.administrative-tab-card-gestion .administrative-tab-icon{color:#1e5d9f;background:#eef5ff;border-color:#c9dcf8}.administrative-tab-grid button.active .administrative-tab-icon{color:#fff;background:#ffffff24;border-color:#ffffff38}.administrative-tab-icon svg{width:18px;height:18px}.administrative-tab-text{gap:3px;min-width:0;display:grid}.administrative-tab-text strong{overflow-wrap:anywhere;font-size:14px}.administrative-tab-text small{color:var(--muted);font-size:11px;font-weight:800;line-height:1.25}.administrative-tab-grid button.active .administrative-tab-text small{color:#ffffffc7}.administrative-tab-grid .tab-count{margin-left:0}.administrative-tab-card-gestion .tab-count{color:#1e5d9f;background:#e8f1ff}.administrative-tab-card-diaria .tab-count{color:var(--green);background:#e8f7ef}.teacher-documents-panel{gap:16px;display:grid}.teacher-documents-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.teacher-documents-summary article{background:#f6fbf8;border:1px solid #cfe6d9;border-radius:12px;padding:14px}.teacher-documents-summary span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900;display:block}.teacher-documents-summary strong{margin-top:6px;font-size:30px;line-height:1;display:block}.teacher-documents-toolbar{border:1px solid var(--line);background:#fbfefd;border-radius:12px;grid-template-columns:minmax(240px,1fr) 180px 220px;align-items:end;gap:12px;padding:14px;display:grid}.teacher-documents-toolbar label{color:var(--muted);text-transform:uppercase;gap:7px;font-size:12px;font-weight:900;display:grid}.teacher-documents-toolbar input,.teacher-documents-toolbar select{min-height:44px}.teacher-documents-message{color:#0f6b49;background:#ecfdf4;border:1px solid #b9ebcd;border-radius:10px;margin:0;padding:10px 12px;font-weight:800}.teacher-documents-list{gap:12px;display:grid}.teacher-document-card{border:1px solid var(--line);background:#fff;border-left:5px solid #1d8f63;border-radius:12px;grid-template-columns:minmax(0,1.4fr) minmax(190px,.8fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.teacher-document-reviewed{border-left-color:#2563eb}.teacher-document-archived{opacity:.78;border-left-color:#64748b}.teacher-document-main{min-width:0}.teacher-document-main span{color:var(--green);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:900;display:block}.teacher-document-main h3{margin:4px 0 6px;font-size:19px;line-height:1.08}.teacher-document-main p,.teacher-document-main small,.teacher-document-status p{color:var(--muted)}.teacher-document-main p,.teacher-document-status p{margin:0}.teacher-document-main small{margin-top:6px;font-weight:700;display:block}.teacher-document-status{background:#f7faf9;border:1px solid #dce9e2;border-radius:10px;padding:10px}.teacher-document-status strong{margin-bottom:4px;display:block}.teacher-document-actions{gap:8px;min-width:160px;display:grid}.teacher-document-actions button{justify-content:center;width:100%}.orientation-shell{gap:18px;display:grid}.orientation-hero{background:linear-gradient(120deg, #1d8f631a, transparent 58%), var(--panel);border:1px solid var(--line);border-radius:14px;grid-template-columns:86px minmax(0,1fr) auto;align-items:center;gap:18px;padding:24px;display:grid}.orientation-hero img{object-fit:contain;width:78px;height:78px}.orientation-hero h1{letter-spacing:0;margin:4px 0 10px;font-size:clamp(34px,5vw,58px);line-height:.98}.orientation-hero p:not(.eyebrow){color:var(--muted);max-width:820px;margin:0;font-size:16px;line-height:1.45}.orientation-hero button,.orientation-tabs button,.orientation-card-list button,.orientation-case-actions button,.button-row button{align-items:center;gap:8px;display:inline-flex}.orientation-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.orientation-tabs button{border:1px solid var(--line);color:var(--ink);text-align:left;background:#fff;border-radius:12px;grid-template-rows:auto auto;grid-template-columns:42px minmax(0,1fr);gap:4px;min-height:88px;padding:12px;display:grid;position:relative;box-shadow:0 10px 24px #1430240a}.orientation-tabs button span{color:var(--green);background:#edf8f2;border:1px solid #cce8d9;border-radius:10px;grid-row:1/3;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.orientation-tabs button strong,.orientation-tabs button small{overflow-wrap:anywhere;grid-column:2;min-width:0;line-height:1.15}.orientation-tabs button strong{align-self:end;font-size:15px}.orientation-tabs button small{color:var(--muted);align-self:start;font-size:12px;font-weight:800;line-height:1.25}.orientation-tabs button em{color:#fff;background:#c94b3d;border-radius:999px;padding:3px 8px;font-size:12px;font-style:normal;font-weight:900;position:absolute;top:10px;right:10px}.orientation-tabs button.active{background:var(--ink);border-color:var(--ink);color:#fff}.orientation-tabs button.active span{color:#fff;background:#ffffff24;border-color:#ffffff3d}.orientation-tabs button.active small{color:#ffffffc7}.orientation-summary,.orientation-dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.orientation-summary article,.orientation-dashboard-grid article{border:1px solid var(--line);background:#fff;border-radius:12px;padding:16px}.orientation-content-anchor{border:1px solid var(--line);border-left:5px solid var(--green);background:linear-gradient(135deg,#1d8f6314,#0000 58%),#fff;border-radius:12px;padding:16px 18px;scroll-margin-top:18px}.orientation-content-anchor h2{margin:2px 0 4px;font-size:28px}.orientation-content-anchor p:not(.eyebrow),.orientation-summary span,.orientation-dashboard-grid p{color:var(--muted);margin:0;font-weight:800}.orientation-summary strong{margin-top:8px;font-size:34px;line-height:1;display:block}.orientation-dashboard-grid article{border-top:4px solid var(--green)}.orientation-dashboard-grid svg{color:var(--green);width:28px;height:28px;margin-bottom:10px}.orientation-workspace{grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:16px;display:grid}.orientation-search-panel,.orientation-detail-panel,.orientation-panel{border:1px solid var(--line);background:#fff;border-radius:12px;padding:18px}.orientation-student-list{gap:8px;max-height:430px;margin-top:12px;display:grid;overflow:auto}.orientation-student-list button{border:1px solid var(--line);color:var(--ink);text-align:left;background:#f8fbf9;border-radius:10px;padding:10px}.orientation-student-list button.active{border-color:var(--green);box-shadow:inset 4px 0 0 var(--green)}.orientation-student-list span,.orientation-card-list span,.orientation-case-card span{color:var(--muted);margin-top:3px;font-size:13px;display:block}.orientation-student-profile{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.orientation-student-profile h2{margin:0}.condition-badge{color:#8a4d00;background:#fff7ed;border:1px solid #f0d1a6;border-radius:999px;justify-self:start;padding:7px 10px}.orientation-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px;display:grid}.orientation-form-grid .wide{grid-column:1/-1}.orientation-form-grid input,.orientation-form-grid select,.orientation-form-grid textarea,.orientation-case-actions select,.orientation-case-actions textarea{border:1px solid var(--line);background:#f8fbf9;border-radius:8px;width:100%;min-height:42px;padding:10px 12px}.orientation-form-grid textarea,.orientation-case-actions textarea{min-height:92px}.orientation-card-list{gap:10px;margin-top:14px;display:grid}.orientation-card-list article,.orientation-case-card{border:1px solid var(--line);border-left:4px solid var(--green);background:#f8fbf9;border-radius:10px;padding:12px}.orientation-card-list p,.orientation-case-card p{color:var(--muted);margin:6px 0 0;line-height:1.4}.orientation-card-list small,.orientation-case-card small{color:var(--green);margin-top:8px;font-weight:900;display:inline-block}.orientation-case-card{grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:12px;display:grid}.orientation-case-card.priority-priority{border-left-color:#c94b3d}.orientation-case-card.priority-tracking{border-left-color:#b57918}.orientation-case-actions{gap:8px;display:grid}.orientation-case-history{border-top:1px solid var(--line);grid-column:1/-1;padding-top:8px}.orientation-case-history p{margin:4px 0}.primary-action{background:var(--ink);color:#fff;align-items:center;gap:8px;display:inline-flex}.button-row{flex-wrap:wrap;gap:10px;display:flex}@media (max-width:980px){.orientation-hero,.orientation-workspace,.orientation-summary,.orientation-dashboard-grid,.orientation-form-grid,.orientation-case-card{grid-template-columns:1fr}.orientation-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}.tab-count{color:#fff;background:#c94b3d;border-radius:999px;justify-content:center;align-items:center;min-width:22px;margin-left:8px;padding:3px 7px;font-size:12px;font-weight:900;display:inline-flex}@media (max-width:1180px){.administrative-workbench{grid-template-columns:1fr}.administrative-module-rail{position:static}.administrative-tab-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-quick-dashboard{grid-template-columns:repeat(4,minmax(0,1fr))}}.cloud-save-panel{background:#f6fbf8;border:1px solid #bfdccc;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;margin:-8px 0 22px;padding:14px 16px;display:flex}.cloud-save-panel strong{display:block}.cloud-save-panel span{color:var(--muted);margin-top:4px;font-size:13px;font-weight:700;display:block}.cloud-save-panel.saved{background:#eefbf4;border-color:#9ed6b9}.cloud-save-panel.error{background:#fae5e0;border-color:#f0c4bb}.cloud-save-panel.error strong{color:var(--red)}.cloud-save-panel.saving{background:#eef4f7;border-color:#c9dbe7}.summary-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:24px}.status-legend{border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:10px;padding-top:18px;display:grid}.status-legend article{color:var(--muted);align-items:center;gap:8px;font-weight:700;display:flex}.daily-close-panel{background:#f5fbf7;border:1px solid #1f7a4b29;border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:16px;margin-top:18px;padding:18px;display:grid}.daily-close-panel h2{margin:0 0 6px}.daily-close-panel p:last-child{color:var(--muted);margin:0;line-height:1.45}.daily-close-panel button{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.legend-dot{border-radius:999px;width:12px;height:12px;display:inline-flex}.legend-dot.green{background:var(--green)}.legend-dot.amber{background:var(--amber)}.legend-dot.red{background:var(--red)}.legend-dot.gray{background:var(--muted)}.quick-links-panel{border-top:1px solid var(--line);margin-top:22px;padding-top:22px}.quick-link-tools{background:#f7faf8;border:1px solid #d5e2dc;border-radius:12px;grid-template-columns:minmax(240px,360px) 1fr;gap:12px;margin-bottom:16px;padding:14px;display:grid}.quick-link-tools label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:12px;font-weight:900;display:grid}.quick-link-filters{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.quick-link-filters button{color:var(--ink);background:#fff;border-color:#d5e2dc;min-height:38px;padding:0 12px}.quick-link-filters button.active{background:var(--green);border-color:var(--green);color:#fff}.quick-link-sections{gap:16px;display:grid}.quick-link-section{background:#ffffff9e;border:1px solid #d5e2dc;border-radius:12px;padding:14px}.quick-link-section-heading{border-bottom:1px solid #dbe8e1;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:10px;display:flex}.quick-link-section-heading h3{margin:0;font-size:16px}.quick-link-section-heading span{color:var(--green);background:#e6f7ee;border:1px solid #b9dec9;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:900}.quick-link-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.quick-link-card{border:1px solid var(--line);background:#f7faf8;border-radius:8px;gap:10px;padding:12px;display:grid}.quick-link-card p{color:var(--muted);margin:4px 0 0;font-size:13px;line-height:1.4}.quick-link-card code{border:1px solid var(--line);color:var(--blue);overflow-wrap:anywhere;background:#fff;border-radius:8px;padding:8px 10px;font-family:Arial,Helvetica,sans-serif;font-size:12px;font-weight:800;display:block}.quick-link-actions{grid-template-columns:auto minmax(130px,1fr) auto;gap:8px;display:grid}.quick-link-actions button,.quick-whatsapp{min-height:38px;padding:0 10px}.quick-whatsapp{background:var(--green);border:1px solid var(--green);color:#fff;border-radius:8px;justify-content:center;align-items:center;gap:8px;font-weight:800;display:inline-flex}.quick-whatsapp.disabled{cursor:not-allowed;opacity:.45}.table-header{justify-content:space-between;margin-bottom:16px}.table-header span{color:var(--muted)}.student-list{gap:10px;display:grid}.student-search-panel{border-top:1px solid var(--line);grid-template-columns:minmax(260px,1fr) auto;gap:12px;padding:16px 0 6px;display:grid}.student-search-panel label{color:var(--muted);gap:7px;font-size:14px;font-weight:700;display:grid}.status-filters{align-items:end;gap:8px;display:flex}.status-filters button{border-color:var(--line);color:var(--ink);background:#fff;min-height:44px}.status-filters button.active{background:var(--ink);border-color:var(--ink);color:#fff}.condition-overview{background:linear-gradient(135deg,#1f7a4b14,#d08a1d14);border:1px solid #1f7a4b2e;border-radius:8px;grid-template-columns:minmax(220px,1fr) auto;align-items:center;gap:14px;margin:18px 0 0;padding:16px;display:grid}.condition-overview-main{gap:4px;display:grid}.condition-overview-main span{color:#0b5f3a;letter-spacing:.02em;text-transform:uppercase;font-size:12px;font-weight:900}.condition-overview-main strong{color:var(--ink);font-size:44px;line-height:1}.condition-overview-main p{color:var(--muted);margin:0}.condition-overview button{color:#0b5f3a;background:#fff;border-color:#1f7a4b3d;min-height:44px}.condition-overview button.active{color:#fff;background:#0b5f3a;border-color:#0b5f3a}.condition-overview-list{flex-wrap:wrap;grid-column:1/-1;gap:8px;display:flex}.condition-pill{color:#163727;background:#fff;border:1px solid #1f7a4b2e;border-radius:999px;padding:8px 10px;font-size:13px;font-weight:800}.condition-pill.quiet{color:var(--muted);font-weight:700}.admin-workspace{grid-template-columns:minmax(680px,1fr) 380px;align-items:start;gap:22px;display:grid}.admin-workspace .table-panel,.admin-workspace .editor-panel{max-height:calc(100vh - 110px);overflow:auto}.student-row{border-top:1px solid var(--line);cursor:pointer;grid-template-columns:minmax(150px,1.3fr) 74px minmax(140px,1fr) 104px 112px;align-items:center;gap:12px;padding:16px 0;display:grid}.student-row:hover{background:#f7faf8}.student-row.selected{box-shadow:0 0 0 1px var(--blue);background:#f7faf8;border-radius:8px;padding-left:12px;padding-right:12px}.status{border-radius:999px;justify-content:center;min-width:74px;padding:7px 10px;font-size:13px;font-weight:700;display:inline-flex}.status.inside{color:var(--green);background:#e0f3ea}.status.outside{color:var(--red);background:#fae5e0}.status.large{margin-bottom:18px;font-size:15px}.password-box{border:1px solid var(--line);background:#f3f6f8;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-width:92px;padding:10px 12px;font-weight:800;display:inline-flex}.digital-card-chip{color:var(--muted);background:#edf1f3;border-radius:999px;justify-content:center;min-width:106px;padding:7px 10px;font-size:12px;font-weight:800;display:inline-flex}.digital-card-chip.active{color:var(--green);background:#e0f3ea}.row-actions{border-top:1px dashed var(--line);white-space:nowrap;flex-wrap:wrap;grid-column:1/-1;justify-content:flex-start;gap:8px;min-width:0;padding-top:10px;display:flex}.row-actions button,.row-actions a{min-height:38px;padding-left:0;padding-right:0}.test-action{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;min-width:104px;font-size:12px;font-weight:800;padding:0 10px!important}.test-action:hover{border-color:var(--blue);color:var(--blue)}.icon-action{min-width:38px;padding:0}.icon-action svg{width:18px;height:18px}.whatsapp-action{background:var(--green);border-color:var(--green)}.modal-backdrop{z-index:80;background:#16211d6b;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.phone-picker-modal{border:1px solid var(--line);background:#fff;border-radius:10px;gap:18px;width:100%;max-width:420px;padding:20px;display:grid;box-shadow:0 24px 64px #16211d38}.modal-header{justify-content:space-between;align-items:start;gap:14px;display:flex}.modal-header h2{margin-bottom:4px}.modal-header p:not(.eyebrow){color:var(--muted);margin:0}.phone-picker-options{gap:10px;display:grid}.phone-picker-options button{justify-content:center}.phone-picker-options button:disabled,.phone-picker-other button:disabled{cursor:not-allowed;opacity:.45}.phone-picker-other{border-top:1px solid var(--line);gap:10px;padding-top:14px;display:grid}.phone-picker-other label{color:var(--muted);font-size:13px;font-weight:800}.phone-picker-other input{border:1px solid var(--line);font:inherit;border-radius:8px;width:100%;min-height:42px;padding:0 12px}.editor-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:22px;position:sticky;top:18px}.editor-header{justify-content:space-between;align-items:start;margin-bottom:16px;display:flex}.editor-header h2{margin-bottom:0}.edit-form{gap:13px;display:grid}.edit-form label{color:var(--muted);gap:7px;font-size:14px;font-weight:700;display:grid}.form-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.form-grid .wide-field{grid-column:1/-1}.alternate-card-box{border:1px solid #1f7a4b2e;border-left:5px solid var(--green);background:#f7fbf8;border-radius:8px;gap:12px;padding:14px;display:grid}.alternate-card-box strong{color:var(--ink);font-size:18px;line-height:1.15;display:block}.alternate-card-box span{color:var(--muted);margin-top:4px;font-size:13px;font-weight:700;line-height:1.35;display:block}.alternate-card-list{gap:10px;display:grid}.alternate-card-row{background:#fff;border:1px solid #1f7a4b29;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:10px;padding:12px;display:grid}.alternate-card-row .checkbox-field{align-self:end;margin:0}.alternate-card-row button{align-self:end}.alternate-card-row small{color:var(--muted);grid-column:1/-1;font-weight:800}.password-editor{grid-template-columns:1fr auto;align-items:end;gap:10px;display:grid}.family-link-box{border:1px solid #1f7a4b2e;border-left:5px solid var(--green);background:linear-gradient(135deg,#1f7a4b1a,#0000 56%),#fbfdfb;border-radius:8px;gap:14px;padding:16px;display:grid}.family-link-header{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;display:grid}.family-link-header strong{font-size:22px;line-height:1.1;display:block}.family-link-header small,.family-linked-list small,.family-suggestion-list small{color:var(--muted);font-weight:800}.family-count-badge{color:var(--green);white-space:nowrap;background:#e0f3ea;border:1px solid #1f7a4b38;border-radius:999px;align-items:center;min-height:34px;padding:0 12px;font-size:12px;font-weight:950;display:inline-flex}.family-access-summary{background:#fff;border:1px solid #1f7a4b29;border-radius:8px;padding:12px}.family-access-summary strong{margin-bottom:4px;display:block}.family-access-summary p{color:var(--muted);margin:0;line-height:1.35}.family-linked-list,.family-suggestion-list{gap:8px;display:grid}.family-linked-list article,.family-suggestion-list button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:8px;gap:5px;padding:12px;display:grid}.family-linked-list article{grid-template-columns:minmax(0,1fr) auto;align-items:center}.family-linked-list article strong,.family-linked-list article span,.family-linked-list article small{grid-column:1}.family-linked-list article span,.family-suggestion-list button span{color:var(--green);text-transform:uppercase;font-size:12px;font-weight:950}.family-linked-list article.selected{border-color:#1f7a4b47;border-left:5px solid var(--green)}.family-linked-list button{grid-area:1/2/span 2;min-height:36px;padding:0 10px}.family-suggestion-list button{color:var(--ink);min-height:auto}.family-suggestion-list button span{display:inline-flex}.family-suggestion-list button.active{background:#edf8f2;border-color:#1f7a4b47}.family-overview-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:18px;padding:22px;display:grid}.family-overview-stats{color:var(--green);background:#e0f3ea;border:1px solid #1f7a4b33;border-radius:8px;place-items:center;min-width:150px;padding:14px;display:grid}.family-overview-stats strong{color:var(--ink);font-size:34px;line-height:1}.family-overview-stats span{text-transform:uppercase;font-size:12px;font-weight:900}.family-overview-toolbar{grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:12px;display:grid}.family-overview-list{gap:14px;display:grid}.family-manager-layout{grid-template-columns:minmax(280px,.9fr) minmax(360px,1.1fr);align-items:start;gap:18px;display:grid}.family-overview-list.compact{max-height:760px;padding-right:4px;overflow:auto}.family-list-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.family-list-heading strong{font-size:18px;display:block}.family-list-heading small{color:var(--muted);font-weight:800}.family-overview-card{border:1px solid #1f7a4b2e;border-left:5px solid var(--green);background:linear-gradient(135deg,#1f7a4b14,#0000 52%),#fff;border-radius:8px;gap:14px;padding:16px;display:grid}.family-overview-card-header,.family-overview-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.family-overview-card-header h3{margin:2px 0 4px;font-size:22px;line-height:1.1}.family-overview-card-header p,.family-overview-actions small{color:var(--muted);margin:0;font-weight:800}.family-overview-card-header span{color:var(--green);text-transform:uppercase;font-size:12px;font-weight:950}.family-overview-card-header>strong{border:1px solid var(--line);white-space:nowrap;background:#f0f6f2;border-radius:999px;padding:8px 12px}.family-overview-list.compact .family-overview-card{padding:12px}.family-overview-list.compact .family-overview-card-header h3{font-size:18px}.family-overview-members.compact{grid-template-columns:1fr}.family-overview-members.compact button{min-height:auto;padding:10px}.family-overview-members{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;display:grid}.family-overview-members button{border:1px solid var(--line);color:var(--ink);text-align:left;background:#fff;border-radius:8px;gap:5px;min-height:90px;padding:12px;display:grid}.family-overview-members button span{color:var(--green);text-transform:uppercase;font-size:12px;font-weight:950}.family-overview-members button small{color:var(--muted);font-weight:800}.family-editor-workspace{border:1px solid #2767a32e;border-left:5px solid var(--blue);background:linear-gradient(135deg,#2767a314,#0000 58%),#fff;border-radius:8px;gap:16px;min-height:420px;padding:18px;display:grid;position:sticky;top:14px}.family-editor-empty{border:1px dashed var(--line);text-align:center;background:#f7faf8;border-radius:8px;align-content:center;min-height:260px;padding:22px;display:grid}.family-editor-empty p,.family-editor-message{color:var(--muted);margin:0}.family-primary-box{border:1px solid var(--line);background:#f0f6f2;border-radius:8px;gap:4px;padding:14px;display:grid}.family-primary-box span{color:var(--blue);text-transform:uppercase;font-size:12px;font-weight:950}.family-primary-box strong{font-size:22px}.family-primary-box small{color:var(--muted);font-weight:800}.family-editor-columns{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;display:grid}.family-editor-columns h3{margin:0 0 10px}.family-editor-student-list,.family-editor-suggestion-list{gap:10px;display:grid}.family-editor-student-list article,.family-editor-suggestion-list button{border:1px solid var(--line);color:var(--ink);text-align:left;background:#fff;border-radius:8px;gap:10px;padding:12px;display:grid}.family-editor-student-list article{grid-template-columns:minmax(0,1fr) auto}.family-editor-student-list span,.family-editor-suggestion-list span{color:var(--green);text-transform:uppercase;font-size:12px;font-weight:950}.family-editor-student-list small,.family-editor-suggestion-list small{color:var(--muted);font-weight:800}.family-editor-row-actions{align-content:center;gap:8px;display:grid}.family-editor-row-actions button{min-height:34px;padding:0 10px}.family-editor-actions{flex-wrap:wrap;gap:10px;display:flex}.family-editor-actions .secondary-login-link{align-items:center;display:inline-flex}.checkbox-field{border:1px solid var(--line);background:#f7faf8;border-radius:8px;flex-direction:row;align-items:center;gap:10px;min-height:44px;padding:10px 12px;color:var(--ink)!important;font-weight:800!important;display:flex!important}.checkbox-field input{accent-color:var(--green)}.digital-card-admin{border:1px solid var(--line);background:#f7faf8;border-radius:8px;gap:12px;padding:14px;display:grid}.administrative-condition-box{background:#fff8ea;border:1px solid #eed6a4;border-radius:8px;gap:12px;padding:14px;display:grid}.device-lock-box{border:1px solid var(--line);background:#fff;border-radius:8px;gap:10px;padding:12px;display:grid}.device-lock-box p{color:var(--muted);margin:4px 0 0;font-size:13px;line-height:1.35}.device-lock-box button:disabled{cursor:not-allowed;opacity:.45}.digital-card-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.digital-card-header .eyebrow{margin-bottom:3px}.student-card-preview{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:88px 1fr;align-items:center;gap:12px;padding:12px;display:grid}.student-card-preview p,.digital-card-row p,.helper-text{color:var(--muted);margin:0;line-height:1.4}.form-note{color:var(--green);background:#eef8f2;border:1px solid #1f7a4b29;border-radius:8px;margin:0;padding:12px;font-weight:700;line-height:1.45}.student-card-photo{aspect-ratio:1;border:1px solid var(--line);color:var(--muted);background:#edf1f3;border-radius:8px;justify-content:center;align-items:center;font-size:13px;font-weight:800;display:flex;overflow:hidden}.student-card-photo img{object-fit:cover;width:100%;height:100%}.student-photo-uploader,.student-photo-admin-box{background:#ffffffc7;border:1px solid #0c422d29;border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:16px;padding:16px;display:grid}.student-photo-uploader strong,.student-photo-admin-box strong{color:var(--ink);font-size:1rem;display:block}.student-photo-uploader span,.student-photo-admin-box span{color:var(--muted);margin-top:4px;line-height:1.45;display:block}.student-photo-upload-button{background:var(--institution-color,var(--green));color:#fff;cursor:pointer;white-space:nowrap;border:1px solid #0c422d3d;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 16px;font-weight:800;display:inline-flex}.student-photo-upload-button input{display:none}.student-photo-uploader .helper-text,.student-photo-admin-box .helper-text{grid-column:1/-1;margin:0}.student-photo-admin-box.compact{border-radius:10px;grid-column:1/-1;grid-template-columns:1fr;margin-top:0;padding:12px}.student-photo-admin-box.compact p{color:var(--muted);margin:4px 0 0}.photo-permission-actions{flex-wrap:wrap;gap:8px;display:flex}.student-card-photo.storage-preview{grid-column:1/-1;justify-self:start;width:180px;height:180px}.student-card-photo.small{width:58px;height:58px}.barcode-preview{background:repeating-linear-gradient(90deg, var(--ink) 0 3px, transparent 3px 6px, var(--ink) 6px 8px, transparent 8px 13px);width:100%;height:38px;margin:8px 0 4px}.cooperative-badge{color:var(--green);background:#e0f3ea;border:1px solid #bfe5d3;border-radius:999px;align-items:center;gap:6px;width:fit-content;margin:8px 0 4px;padding:7px 10px;font-size:12px;font-weight:900;line-height:1;display:inline-flex}.photo-crop-panel{border:1px solid var(--line);background:#fff;border-radius:8px;gap:12px;padding:12px;display:grid}.photo-crop-workspace{grid-template-columns:minmax(0,1fr) 130px;align-items:start;gap:12px;display:grid}.photo-crop-frame{border:2px solid var(--blue);background:#edf1f3;border-radius:8px;width:100%;max-width:360px;max-height:360px;margin:0 auto;position:relative;overflow:hidden}.photo-crop-frame img{object-fit:contain;width:100%;height:auto;max-height:360px;display:block}.photo-crop-live-preview{gap:8px;display:grid}.photo-crop-live-preview span{color:var(--muted);font-size:13px;font-weight:800}.photo-crop-live-preview img{aspect-ratio:1;border:1px solid var(--line);object-fit:cover;border-radius:8px;width:100%}.photo-crop-box{aspect-ratio:1;box-shadow:0 0 0 999px #16211d73, 0 0 0 1px var(--blue);pointer-events:none;border:3px solid #fff;position:absolute}.photo-crop-box:after{content:"";border:1px dashed #ffffffd9;position:absolute;inset:10px}.crop-actions{gap:10px;display:flex}.crop-actions button{flex:1}.digital-card-list{gap:10px;display:grid}.digital-card-row{border-top:1px solid var(--line);grid-template-columns:58px minmax(180px,1fr) 120px minmax(140px,.8fr) auto;align-items:center;gap:14px;padding:14px 0;display:grid}.digital-card-row small{color:var(--muted);font-weight:800}.digital-card-log{border-top:1px solid var(--line);gap:10px;margin-top:18px;padding-top:18px;display:grid}.digital-card-log article{border:1px solid var(--line);background:#f7faf8;border-radius:8px;grid-template-columns:minmax(180px,1fr) 130px minmax(220px,1.2fr) 180px;align-items:center;gap:10px;padding:12px;display:grid}.digital-card-log span{color:var(--blue);background:#eef4f7;border-radius:999px;justify-self:start;padding:7px 10px;font-size:12px;font-weight:900}.digital-card-log p,.digital-card-log small{color:var(--muted);margin:0}.carnet-admin-shell{max-width:1180px}.carnet-admin-workspace{grid-template-columns:minmax(300px,.85fr) minmax(420px,1fr);align-items:start;gap:20px;display:grid}.carnet-admin-list,.carnet-admin-editor{padding:20px}.carnet-search{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;gap:10px;padding:0 12px;display:flex}.carnet-search input{border:0;outline:0}.carnet-student-list{gap:8px;margin-top:14px;display:grid}.carnet-student-list button{border-color:var(--line);color:var(--ink);text-align:left;background:#fff;place-items:start;min-height:auto;padding:12px;display:grid}.carnet-student-list button.active{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue);background:#f7faf8}.carnet-student-list span,.upload-card-photo{color:var(--muted);font-size:13px;font-weight:800}.carnet-status-grid{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.carnet-admin-card-form,.carnet-access-box{border:1px solid var(--line);background:#f7faf8;border-radius:8px;gap:12px;margin-bottom:14px;padding:12px;display:grid}.carnet-admin-card-form button,.carnet-access-box button{width:100%}.inline-check{cursor:pointer;align-items:center;gap:10px;margin:0;display:flex}.inline-check input{width:16px;height:16px}.inline-check span,.input-with-icon{align-items:center;gap:8px;display:flex}.inline-check svg,.input-with-icon svg,.capture-card-photo svg{color:var(--blue);width:18px;height:18px}.input-with-icon{border:1px solid var(--line);background:#fff;border-radius:8px;padding:0 10px}.input-with-icon input{border:0;outline:0}.upload-card-photo{gap:8px;margin-bottom:14px;display:grid}.capture-card-photo{border:1px dashed var(--blue);color:var(--ink);cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:46px;display:flex}.camera-capture-panel{border:1px solid var(--line);background:#f7faf8;border-radius:8px;gap:12px;margin-bottom:14px;padding:12px;display:grid}.camera-capture-panel video{aspect-ratio:4/3;object-fit:cover;background:#0f1a17;border-radius:8px;width:100%}.carnet-admin-preview{margin-top:14px}.carnet-access-box>div:first-child{border:1px solid var(--line);background:#fff;border-radius:8px;gap:4px;padding:10px;display:grid}.carnet-access-box>div:first-child strong{font-size:18px}.carnet-access-box>div:first-child span{color:var(--blue);font-weight:900}.locked-access-summary{position:relative}.locked-access-summary strong,.locked-access-summary span{color:#0000;-webkit-user-select:none;user-select:none;background:#eef4f7;border-radius:8px;display:block;position:relative;overflow:hidden}.locked-access-summary strong:after,.locked-access-summary span:after{color:var(--muted);content:"Bloqueado";font-size:13px;font-weight:900;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.locked-access-summary small{color:var(--muted);font-weight:700;line-height:1.4}.family-access-summary strong,.family-access-summary span{color:var(--ink);display:block}.family-access-summary span{color:var(--green);font-weight:950}.family-access-list,.access-delivery-log,.legacy-access-actions{border:1px solid var(--line);background:#fff;border-radius:8px;gap:8px;padding:10px;display:grid}.family-access-row,.access-delivery-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding-top:8px;display:flex}.family-access-row:first-of-type,.access-delivery-row:first-of-type{border-top:0;padding-top:0}.family-access-row strong,.access-delivery-row strong{font-size:14px;display:block}.family-access-row span,.access-delivery-row span{color:var(--muted);font-size:13px;font-weight:800;display:block}.family-access-row small,.access-delivery-row small{color:var(--green);background:#e8f7ee;border-radius:999px;flex:none;padding:6px 8px;font-size:12px;font-weight:950}.legacy-access-actions summary{cursor:pointer;font-weight:950}.empty-state{color:var(--muted)}.form-error{color:var(--red);background:#fae5e0;border:1px solid #f0c4bb;border-radius:8px;margin:0;padding:10px 12px;font-size:14px;font-weight:700}.save-feedback,.plan-national-save-feedback{color:#10231d;background:#f8fbf9;border:1px solid #d5e2da;border-radius:8px;margin:0 0 12px;padding:11px 12px;font-size:14px;font-weight:850}.save-feedback span{color:var(--muted);margin-top:4px;font-size:12px;display:block}.save-feedback.saved,.plan-national-save-feedback.saved{color:#125b38;background:#ebf8f0;border-color:#8fd1ae}.save-feedback.error,.plan-national-save-feedback.error{color:var(--red);background:#fae5e0;border-color:#f0c4bb}.save-feedback.saving,.plan-national-save-feedback.saving{color:#164463;background:#eef4f7;border-color:#c9dbe7}.stateful-save-button{transition:background-color .18s,border-color .18s,box-shadow .18s,transform .12s}.stateful-save-button:not(:disabled):active{transform:translateY(1px)}.stateful-save-button.saving{color:#fff;cursor:wait;background:#1f5f88;border-color:#1f5f88;animation:.95s ease-in-out infinite save-button-pulse}.stateful-save-button.saved{color:#fff;background:#138a55;border-color:#138a55;box-shadow:0 0 0 4px #138a5529}.stateful-save-button.error{color:#fff;background:#b94334;border-color:#b94334;box-shadow:0 0 0 4px #b9433424}@keyframes save-button-pulse{0%,to{box-shadow:0 0 #1f5f8833}50%{box-shadow:0 0 0 5px #1f5f8814}}.import-progress-panel{background:#f6fbf8;border:1px solid #bfdccc;border-radius:8px;margin:-4px 0 20px;padding:14px 16px}.import-progress-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.import-progress-header span{color:var(--green);font-weight:950}.import-progress-track{background:#dfeae4;border-radius:999px;height:12px;overflow:hidden}.import-progress-track span{background:linear-gradient(90deg, var(--green), #2aa36b);border-radius:inherit;height:100%;transition:width .18s;display:block}.import-progress-panel p{color:var(--muted);margin:8px 0 0;font-size:14px;font-weight:700}.private-login{margin-top:28px}.secure-logout{background:var(--ink);border:1px solid var(--ink);color:#fff;z-index:20;border-radius:8px;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-weight:800;display:inline-flex;position:fixed;bottom:18px;right:18px}.secure-session-badge{color:var(--blue);z-index:20;background:#eff7ff;border:1px solid #c9dff4;border-radius:999px;align-items:center;gap:6px;min-height:32px;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex;position:fixed;top:18px;right:18px}.access-note{color:var(--blue);margin:0 0 10px;font-size:13px;font-weight:800}.scanner-shell,.parent-shell,.card-shell{max-width:960px}.scanner-panel,.parent-login{grid-template-columns:1fr 360px;gap:28px;margin-bottom:24px;padding:28px;display:grid}.porteria-hero{grid-template-columns:minmax(240px,.8fr) minmax(360px,1fr)}.porter-mode-badge{color:var(--ink);background:#107c4f14;border:1px solid #107c4f38;border-radius:8px;gap:2px;margin-top:16px;padding:10px 14px;display:inline-grid}.porter-mode-badge strong{font-size:14px;font-weight:950}.porter-mode-badge span{color:var(--muted);font-size:13px;font-weight:750}.porter-mode-badge.night{background:#232f5f14;border-color:#232f5f47}.porter-mode-badge.closed{background:#ae222214;border-color:#ae222247}.porter-mode-control{border:1px solid var(--line);background:#f7faf8;border-radius:8px;gap:10px;margin-top:12px;padding:12px;display:grid}.porter-mode-control.manual{background:#fff8e8;border-color:#b7791f59}.porter-mode-control strong{font-size:14px;display:block}.porter-mode-control span{color:var(--muted);margin-top:2px;font-size:12px;font-weight:800;display:block}.porter-mode-buttons{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.porter-mode-buttons button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;min-height:38px;padding:7px 10px}.porter-mode-buttons button.active{background:var(--green-dark);border-color:var(--green-dark);color:#fff}.session-bar{background:var(--panel);border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px;padding:24px 28px;display:flex}.session-bar h1{margin-bottom:8px;font-size:clamp(28px,4vw,42px)}.session-bar p{color:var(--muted);margin-bottom:0}.session-actions{place-items:flex-end end;gap:10px;display:grid}.live-indicator{border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;min-height:34px;padding:0 12px;font-size:13px;font-weight:700;display:inline-flex}.live-indicator:before{content:"";border-radius:999px;width:9px;height:9px}.live-indicator.online:before{background:var(--green)}.live-indicator.offline:before{background:var(--red)}.scan-form,.login-box{gap:10px;display:grid}.password-field{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:8px;margin-top:4px;display:grid}.password-field input{min-width:0}.password-toggle{border:1px solid var(--line);color:var(--ink);white-space:nowrap;background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:42px;padding:0 12px;font-size:13px;font-weight:900;display:inline-flex}.password-toggle svg{width:16px;height:16px}.remember-access{color:var(--muted);align-items:flex-start;gap:10px;font-size:13px;font-weight:700;line-height:1.35;display:flex}.remember-access input{accent-color:var(--green);flex:none;width:16px;height:16px;margin-top:2px}.secondary-login-link{border:1px solid var(--line);text-align:center;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 14px;font-weight:800;display:inline-flex}.secondary-login-link svg{width:18px;height:18px}.secondary-login-link span{background:var(--green);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:22px;padding:2px 6px;font-size:12px;font-weight:950;display:inline-flex}.compact-link{width:fit-content;min-height:38px}.scan-form label,.login-box label{color:var(--muted);font-size:14px;font-weight:700}.scan-input{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;gap:10px;padding:0 12px;display:flex}.porteria-hero .scan-input{min-height:72px}.porteria-hero .scan-form input{font-size:24px;font-weight:800}.porteria-hero .scan-form button{min-height:56px;font-size:16px}input,select,textarea{color:var(--ink);background:linear-gradient(135deg,#1d8f630b,#0000 62%),#fbfffd;border:1px solid #c8ddd2;border-radius:8px;width:100%;min-height:44px;padding:0 12px;transition:background .16s,border-color .16s,box-shadow .16s;box-shadow:inset 0 1px #ffffffb8}input:focus,select:focus,textarea:focus{border-color:var(--green);background:#fff;outline:none;box-shadow:0 0 0 3px #1d8f6329,inset 0 1px #ffffffc7}input::placeholder,textarea::placeholder{color:#7a8a82;opacity:1}input:disabled,select:disabled,textarea:disabled,input[readonly],textarea[readonly]{color:#5e6d65;cursor:not-allowed;background:#f1f5f3;border-color:#d6e0db}.readonly-field{border:1px solid var(--line);background:#f1f5f3;border-radius:8px;gap:5px;min-height:52px;padding:10px 12px;display:grid}.readonly-field span{color:var(--muted);font-size:13px;font-weight:800}.readonly-field strong{color:var(--ink);font-size:15px}input[type=checkbox]{width:auto;min-height:auto}textarea{resize:vertical;min-height:108px;padding:12px;line-height:1.45}.scan-input input{border:0;outline:0;padding-left:0}.scan-buttons{grid-template-columns:1fr auto;gap:10px;display:grid}.offline-sync-banner{border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin:-8px 0 18px;padding:12px 14px;display:flex}.offline-sync-banner.online{background:#effaf4;border-color:#bfe5ce}.offline-sync-banner.offline{background:#fff4df;border-color:#f0d39a}.offline-sync-banner p{color:var(--muted);margin:0;font-weight:800}.scan-queue-banner{color:#164369;background:#eef6ff;border:1px solid #b8d8f5;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin:-8px 0 18px;padding:12px 14px;display:flex}.scan-queue-banner p{margin:0;font-weight:800}.offline-note{background:#fff4df;border:1px solid #f0d39a;border-radius:8px;padding:9px 10px;font-weight:800;color:var(--ink)!important;margin-top:10px!important}.scan-result{background:var(--panel);border:1px solid var(--line);border-radius:8px;grid-template-columns:150px 1fr auto;align-items:center;gap:22px;margin-bottom:24px;padding:28px;display:grid}.scan-result.success.no-photo{grid-template-columns:1fr auto}.scan-result.error.no-photo{grid-template-columns:auto 1fr}.scan-result.success{border-color:#bfe5d3}.scan-result.error{border-color:#f0c4bb}.scan-result>svg{width:58px;height:58px}.scan-result.success>svg{color:var(--green)}.scan-result.error>svg{color:var(--red)}.scan-result h2{margin-bottom:6px;font-size:clamp(32px,5vw,56px);line-height:.95}.scan-result p{color:var(--muted);margin-bottom:0}.scan-photo{aspect-ratio:1;border:1px solid var(--line);color:var(--muted);background:#edf1f3;border-radius:8px;justify-content:center;align-items:center;width:150px;font-weight:800;display:flex;overflow:hidden}.scan-photo img{object-fit:cover;width:100%;height:100%}.scan-status-label{letter-spacing:0;font-size:clamp(34px,6vw,68px);font-weight:900;line-height:.95;color:var(--green)!important;margin-bottom:10px!important}.scan-status-label.error{color:var(--red)!important}.student-status{justify-content:space-between;margin-bottom:24px;padding:28px}.student-status h2{margin-bottom:4px;font-size:32px}.class-presence-source{border:1px solid #1f7a4b38;border-left:5px solid var(--green);background:#eef8f3;border-radius:8px;gap:4px;max-width:560px;margin-top:12px;padding:10px 12px;display:grid}.class-presence-source strong{color:var(--green);letter-spacing:.08em;text-transform:uppercase;font-size:13px}.class-presence-source span{color:var(--ink);font-weight:800;line-height:1.35}.family-student-selector{border:1px solid var(--line);background:linear-gradient(135deg,#1f7a4b14,#0000 52%),#fff;border-radius:8px;gap:14px;margin:-8px 0 24px;padding:18px;display:grid}.family-student-selector h2{margin-bottom:0}.family-student-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;display:grid}.family-student-grid button{border:1px solid var(--line);border-left:5px solid var(--green);color:var(--ink);text-align:left;background:#fff;justify-content:stretch;align-items:start;gap:7px;min-height:104px;padding:12px;display:grid}.family-student-grid button.active{border-color:#1f7a4b59;border-left-color:var(--green);background:#edf8f2;box-shadow:0 0 0 2px #1f7a4b1f}.family-student-grid strong{line-height:1.1}.family-student-grid small{color:var(--muted);font-weight:800}.parent-section-switcher{border:1px solid var(--line);background:#f8fbf8;border-radius:8px;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:-8px 0 24px;padding:10px;display:grid}.parent-section-switcher button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 12px;font-weight:900;display:inline-flex}.parent-section-switcher button.active{background:var(--green-dark);border-color:var(--green-dark);color:#fff}.parent-section-switcher span{background:var(--green);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:22px;padding:2px 6px;font-size:12px;display:inline-flex}.parent-section-switcher button.active span{color:var(--green-dark);background:#fff}.status-message{color:var(--ink);margin-top:14px;font-size:18px;font-weight:700}.last-event{background:#eef4f7;border-radius:8px;flex-direction:column;align-items:flex-start;gap:8px;min-width:250px;padding:18px}.last-event svg{color:var(--blue)}.last-event span{color:var(--muted)}.last-event button{width:100%;margin-top:8px}.teacher-screen-shell{max-width:1420px}.teacher-screen-header{background:var(--panel);border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;padding:22px 24px;display:flex}.teacher-screen-header h1{margin-bottom:8px;font-size:clamp(32px,5vw,58px);line-height:.95}.teacher-screen-header p{color:var(--muted);margin:0;font-size:18px}.teacher-screen-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.teacher-screen-actions button{min-height:40px}.teacher-rotation-indicator{justify-content:center;align-items:center;gap:8px;margin:0 0 14px;display:flex}.teacher-rotation-indicator strong{border:1px solid var(--green);color:var(--green);text-align:center;background:#fff;border-radius:999px;min-width:132px;padding:8px 12px;font-size:14px;font-weight:950}.teacher-rotation-indicator span{border:1px solid var(--line);color:var(--muted);text-transform:uppercase;background:#eef4f7;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:900}.teacher-rotation-indicator span.active{background:var(--ink);border-color:var(--ink);color:#fff}.teacher-absence-screen-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.teacher-absence-screen-list article{border:1px solid var(--line);border-top:6px solid var(--amber);background:#fff;border-radius:8px;grid-template-columns:1fr;align-content:start;gap:10px;min-height:164px;padding:16px;display:grid}.teacher-absence-screen-list article svg{color:var(--amber);width:28px;height:28px}.teacher-absence-screen-list article strong{font-size:clamp(24px,2.6vw,36px);line-height:1.02;display:block}.teacher-absence-screen-list article p{color:var(--muted);margin:6px 0 0;font-size:clamp(17px,1.8vw,22px);font-weight:800}.teacher-absence-screen-list article span{color:var(--amber);background:#fff4df;border-radius:999px;justify-self:start;padding:8px 10px;font-size:14px;font-weight:900}.teacher-absence-screen-list .teacher-card-note{border:1px solid var(--line);border-left:4px solid var(--blue);color:var(--ink);background:#eef4f7;border-radius:8px;margin:2px 0 0;padding:9px 10px;font-size:14px;font-weight:700;line-height:1.35}.teacher-screen-shell.compact .teacher-screen-header{padding:16px 18px}.teacher-screen-shell.compact .teacher-screen-header h1{font-size:clamp(28px,4vw,46px)}.teacher-screen-shell.compact .teacher-screen-header p{font-size:15px}.teacher-screen-shell.compact .teacher-absence-screen-list{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:9px}.teacher-screen-shell.compact .teacher-absence-screen-list article{min-height:128px;padding:12px}.teacher-screen-shell.compact .teacher-absence-screen-list article svg{display:none}.teacher-screen-shell.compact .teacher-absence-screen-list article strong{font-size:clamp(19px,2vw,26px)}.teacher-screen-shell.compact .teacher-absence-screen-list article p{font-size:15px}.teacher-screen-shell.compact .teacher-absence-screen-list article span{padding:7px 9px;font-size:12px}.teacher-screen-shell.compact .teacher-absence-screen-list .teacher-card-note{padding:7px 8px;font-size:12px}.teacher-screen-empty{background:var(--panel);border:1px solid var(--line);text-align:center;border-radius:8px;place-items:center;min-height:360px;padding:38px;display:grid}.teacher-screen-empty svg{color:var(--green);width:58px;height:58px}.teacher-screen-empty h2{max-width:720px;font-size:clamp(30px,4vw,48px)}.teacher-screen-empty p{color:var(--muted);margin:0;font-size:18px}.teacher-announcement-screen-list{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px;display:grid}.teacher-announcement-screen-list article{border:1px solid var(--line);border-left:7px solid var(--green);background:#fff;border-radius:8px;align-content:start;gap:14px;min-height:190px;padding:20px;display:grid}.teacher-announcement-screen-list article.urgent{border-left-color:var(--red)}.teacher-announcement-screen-list article.classes{border-left-color:var(--blue)}.teacher-announcement-screen-list article.activity{border-left-color:var(--amber)}.teacher-announcement-screen-list svg{color:var(--green);width:32px;height:32px}.teacher-announcement-screen-list article.urgent svg{color:var(--red)}.teacher-announcement-screen-list article.classes svg{color:var(--blue)}.teacher-announcement-screen-list article.activity svg{color:var(--amber)}.teacher-announcement-screen-list span{color:var(--muted);text-transform:uppercase;margin-bottom:8px;font-size:13px;font-weight:900;display:block}.teacher-announcement-screen-list strong{font-size:clamp(28px,3.6vw,48px);line-height:1.02;display:block}.teacher-announcement-screen-list p{color:var(--muted);margin:12px 0 0;font-size:clamp(18px,2vw,26px);line-height:1.35}.digital-id-card{background:linear-gradient(145deg, color-mix(in srgb, var(--institution-color,var(--blue)) 11%, transparent), transparent 40%), linear-gradient(0deg, #fff, #fff);border:1px solid color-mix(in srgb, var(--institution-color,var(--blue)) 36%, var(--line));border-radius:10px;gap:0;max-width:590px;margin:0 auto 24px;padding:0;display:grid;position:relative;overflow:hidden;box-shadow:0 22px 54px #16211d21}.digital-id-card:before{background:linear-gradient(180deg, var(--institution-color,var(--blue)), color-mix(in srgb, var(--institution-color,var(--blue)) 70%, #16211d));content:"";width:12px;position:absolute;inset:0 auto 0 0}.digital-id-card:after{background:color-mix(in srgb, var(--institution-color,var(--blue)) 8%, transparent);content:"";border-radius:999px;width:170px;height:170px;position:absolute;top:-84px;right:-80px}.student-card-actions{z-index:1;justify-content:flex-end;gap:10px;padding:12px 22px 0 32px;display:flex;position:relative}.student-card-actions .secondary-login-link{color:var(--ink);background:#fff;min-height:38px;padding:0 12px}.portal-access-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin:-10px 0 24px;display:flex}.portal-access-actions .secondary-login-link{color:var(--ink);background:#fff;min-width:160px;min-height:40px;padding:0 14px}.pwa-install-card{background:radial-gradient(circle at 0 0,#1f7a4b21,#0000 32%),linear-gradient(135deg,#fff 0%,#f3fbf6 100%);border:1px solid #1f7a4b2e;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;margin-bottom:24px;padding:18px;display:grid;box-shadow:0 18px 45px #0f2b1f14}.pwa-install-card.card{background:radial-gradient(circle at 0 0,#b7791f29,#0000 32%),linear-gradient(135deg,#fff 0%,#fff8e8 100%);border-color:#b7791f3d}.pwa-install-card h2{margin:2px 0 6px;font-size:22px}.pwa-install-card p{color:var(--muted);margin:0;line-height:1.45}.pwa-install-card>.helper-text{grid-column:1/-1}.pwa-install-icon{color:var(--green);background:#e8f7ee;border:1px solid #1f7a4b2e;border-radius:8px;justify-content:center;align-items:center;width:54px;height:54px;display:inline-flex}.pwa-install-card.card .pwa-install-icon,.pwa-install-card.card .pwa-install-status span{color:#9a5c12;background:#fff1cf;border-color:#b7791f38}.pwa-install-icon svg{width:27px;height:27px}.pwa-install-status{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.pwa-install-status span{color:var(--green);background:#e8f7ee;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.pwa-install-actions{gap:8px;min-width:190px;display:grid}.pwa-install-actions button{justify-content:center;width:100%;min-height:42px}.digital-id-institution{background:linear-gradient(90deg, color-mix(in srgb, var(--institution-color,var(--blue)) 9%, #fff), #fff);border-bottom:1px solid var(--line);color:var(--ink);z-index:1;justify-content:space-between;align-items:center;gap:14px;padding:16px 22px 14px 32px;display:flex;position:relative}.digital-id-institution>div:nth-child(2){flex:1}.digital-id-institution button{min-height:38px;padding:0 12px}.digital-id-logo{border:1px solid color-mix(in srgb, var(--institution-color,var(--blue)) 30%, var(--line));background:#fff;border-radius:10px;justify-content:center;align-items:center;width:58px;height:58px;display:flex;overflow:hidden;box-shadow:0 8px 20px #16211d14}.digital-id-logo img{object-fit:contain;width:100%;height:100%;padding:5px}.digital-id-logo svg{color:var(--institution-color,var(--blue))}.digital-id-institution strong{font-size:20px;line-height:1.1;display:block}.digital-id-institution span{color:var(--institution-color,var(--blue));letter-spacing:.2px;text-transform:uppercase;margin-top:5px;font-size:12px;font-weight:900;display:inline-flex}.digital-id-body{z-index:1;grid-template-columns:138px 1fr;align-items:center;gap:18px;padding:18px 22px 16px 32px;display:grid;position:relative}.digital-id-body .student-card-photo{box-shadow:0 0 0 1px var(--line), 0 14px 26px #16211d24;border:4px solid #fff;border-radius:10px;min-height:138px}.digital-id-body h2{margin-bottom:12px;font-size:clamp(24px,5vw,32px);line-height:1.02}.digital-id-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.digital-id-details span{border:1px solid color-mix(in srgb, var(--institution-color,var(--blue)) 22%, var(--line));color:var(--ink);background:#fff;border-radius:8px;min-height:50px;padding:8px 9px;font-weight:900;display:grid}.digital-id-details small{color:var(--muted);letter-spacing:.3px;text-transform:uppercase;font-size:10px;font-weight:900}.digital-barcode{border:1px solid var(--line);text-align:center;z-index:1;background:#fff;border-radius:8px;gap:6px;margin:14px 22px 0 32px;padding:12px 14px;display:grid;position:relative}.digital-id-validity{background:color-mix(in srgb, var(--institution-color,var(--blue)) 7%, #fff);border:1px solid color-mix(in srgb, var(--institution-color,var(--blue)) 24%, var(--line));z-index:1;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin:0 22px 14px 32px;padding:10px 12px;display:flex;position:relative}.digital-id-validity strong{color:var(--ink)}.digital-id-validity span{color:var(--muted);font-weight:800}.digital-id-card .barcode-preview{height:34px;margin:0}.barcode-svg{width:100%;max-width:100%;height:58px;display:block}.digital-barcode strong{letter-spacing:.3px;font-size:14px}.digital-barcode span{color:var(--muted);font-size:12px;font-weight:900}.digital-id-card>.helper-text{background:color-mix(in srgb, var(--institution-color,var(--blue)) 6%, #f7faf8);border-top:1px solid var(--line);z-index:1;margin:0;padding:14px 22px 14px 32px;position:relative}.student-card-session{border-top:4px solid var(--blue)}.history-panel{margin-bottom:24px}.parent-history-timeline{gap:10px}.parent-movement-card{border:1px solid var(--line);border-left:6px solid var(--green);background:#fff;border-radius:8px;padding:14px}.parent-movement-card.exit{border-left-color:var(--red)}.parent-movement-card strong{color:var(--ink);font-size:18px}.parent-movement-card p{color:var(--muted);margin:2px 0 0;font-weight:800}.history-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.history-header h2{margin-bottom:0}.history-header label{color:var(--muted);gap:7px;min-width:180px;font-size:14px;font-weight:700;display:grid}.announcements-admin{grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:22px;margin-top:22px;padding:24px;display:grid}.announcements-admin.single-panel{grid-template-columns:1fr;align-items:start;margin-top:0;padding:18px}.announcements-mobile-heading{background:linear-gradient(135deg,#fff 0%,#f3fbf6 100%);border:1px solid #1f7a4b29;border-radius:8px;padding:24px}.administrative-panel{padding:24px}.administrative-student-list,.administrative-history-list{gap:10px;margin-top:16px;display:grid}.administrative-student-card{border:1px solid var(--line);background:#fff;border-left:5px solid #1f7a4b47;border-radius:12px;grid-template-columns:minmax(260px,1fr) auto;align-items:start;gap:12px;padding:16px;display:grid}.administrative-student-summary{grid-column:1/-1;grid-template-columns:minmax(220px,1fr) 90px minmax(220px,1fr);align-items:center;gap:14px;display:grid}.condition-status{border:1px solid var(--line);background:#f7faf8;border-radius:10px;gap:4px;padding:12px 14px;display:grid}.condition-status strong{color:#163727;margin:2px 0;font-size:15px;line-height:1.25;display:block}.condition-status p{font-size:13px}.condition-quick-actions{justify-content:flex-end;align-items:stretch;gap:8px;display:flex}.condition-quick-actions button{min-width:96px}.condition-status.normal{border-left:5px solid #b7c5bd}.condition-status.attention,.condition-status.data{background:#fffaf0;border-left:5px solid #c47a12}.condition-status.expelled{background:#fff5f4;border-left:5px solid #c94f42}.condition-status.withdrawn{background:#f3f5f6;border-left:5px solid #5b6970}.condition-editor{background:#f8fcfa;border:1px solid #1f7a4b29;border-radius:10px;grid-column:1/-1;grid-template-columns:repeat(3,minmax(150px,1fr));gap:10px;padding:14px;display:grid}.condition-editor label{color:var(--muted);gap:6px;font-size:13px;font-weight:800;display:grid}.condition-editor input,.condition-editor select,.condition-editor textarea{width:100%}.condition-observation,.condition-actions{grid-column:1/-1}.condition-editor textarea{resize:vertical;min-height:70px}.correction-academic-grid{grid-column:1/-1;grid-template-columns:repeat(3,minmax(160px,1fr));gap:10px;display:grid}.correction-editor>.administrative-condition-box{grid-column:1/-1}.correction-editor .administrative-condition-box{background:linear-gradient(135deg,#b7791f14,#0000 48%),#fffaf0;border-color:#ead29c}.correction-editor .administrative-condition-box>div:first-child{border-bottom:1px solid #b7791f2e;padding-bottom:8px}.correction-editor .administrative-condition-box strong{margin-bottom:4px;font-size:16px;display:block}.correction-editor .administrative-condition-box p{color:var(--muted);margin:0;line-height:1.35}.withdrawn-warning-box{color:#7c2d12;background:#fff7ed;border:1px solid #fed7aa;border-left:5px solid #c2410c;border-radius:8px;gap:6px;padding:12px;display:grid}.withdrawn-warning-box strong,.withdrawn-warning-box p{margin:0}.withdrawn-warning-box label{color:#7c2d12;gap:6px;margin-top:8px;font-size:13px;font-weight:900;display:grid}.withdrawn-warning-box textarea{background:#fff;border-color:#fed7aa;width:100%;min-height:86px}.condition-actions{flex-wrap:wrap;gap:8px;display:flex}.incomplete-filter-grid{border:1px solid var(--line);background:#f8fbf9;border-radius:10px;grid-template-columns:minmax(260px,1fr) repeat(2,minmax(180px,240px));align-items:end;gap:12px;margin-bottom:16px;padding:14px;display:grid}.incomplete-filter-grid>button{min-height:46px}.incomplete-filter-grid label{color:var(--muted);gap:6px;font-size:13px;font-weight:900;display:grid}.incomplete-filter-grid select{width:100%}.incomplete-stats-strip{flex-wrap:wrap;gap:8px;margin:0 0 16px;display:flex}.incomplete-stats-strip span{color:var(--green);background:#eef8f2;border:1px solid #c9ead6;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:900}.incomplete-data-list{gap:10px;display:grid}.incomplete-student-card{border:1px solid #efc3bd;border-left:6px solid var(--red);background:#fff;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;display:grid}.incomplete-student-card strong{font-size:16px;display:block}.incomplete-card-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.incomplete-card-title span{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:900}.incomplete-student-card p{color:var(--muted);margin:4px 0 8px}.missing-chip-row{flex-wrap:wrap;gap:6px;display:flex}.missing-chip-row span{color:var(--red);background:#fae5e0;border:1px solid #efc3bd;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:900}.correction-workspace{grid-template-columns:1fr;align-items:start;gap:20px;max-width:100%;display:grid}.admin-workflow-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0 18px;display:grid}.admin-workflow-strip article{border:1px solid #1f7a4b2e;border-left:4px solid var(--green);background:linear-gradient(135deg,#fff 0%,#f3fbf6 100%);border-radius:10px;gap:4px;padding:12px 14px;display:grid}.admin-workflow-strip strong{color:var(--ink);font-size:14px}.admin-workflow-strip span{color:var(--muted);font-size:13px;line-height:1.35}.correction-header-actions{align-items:center;gap:12px;display:flex}.correction-header-actions>button{align-items:center;gap:8px;min-height:42px;display:inline-flex}.correction-header-actions svg{color:var(--blue);width:30px;height:30px}.correction-header-actions button svg{color:currentColor;width:18px;height:18px}.correction-picker{border:1px solid var(--line);background:#f7faf8;border-radius:10px;grid-template-columns:1fr;align-content:start;width:100%;min-width:0;margin:0;padding:16px;position:static}.correction-picker label{color:var(--ink);font-weight:900}.correction-filter-grid{grid-template-columns:minmax(260px,1fr) 220px minmax(260px,auto);gap:12px;display:grid}.correction-picker input,.correction-picker select{color:var(--ink);background:#fff;border:1px solid #bcd1c5;border-radius:8px;width:100%;min-height:46px;padding:0 14px}.correction-status-filter{gap:7px;display:grid}.correction-status-filter span{color:var(--ink);font-size:14px;font-weight:900}.correction-status-filter div{gap:8px;display:flex}.correction-status-filter button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;min-height:46px;padding:0 14px;font-weight:900}.correction-status-filter button.active{background:var(--green);border-color:var(--green);color:#fff}.correction-filter-actions{justify-content:flex-end;display:flex}.correction-filter-actions button{min-height:38px}.correction-picker-summary{border:1px solid var(--line);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.correction-picker-summary span{color:var(--muted);font-size:13px;font-weight:800}.correction-picker-summary strong{color:var(--green);text-align:right;font-size:13px}.correction-result-list{grid-template-columns:1fr;gap:6px;max-height:440px;padding-right:4px;display:grid;overflow:auto}.correction-result-header{z-index:2;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;background:#eef5f1;border:1px solid #d8e5dd;border-radius:8px;grid-template-columns:minmax(230px,1.25fr) minmax(170px,.72fr) minmax(220px,.9fr) 92px;align-items:center;gap:12px;padding:9px 12px;font-size:11px;font-weight:900;display:grid;position:sticky;top:0}.correction-result-list button{border:1px solid var(--line);color:var(--ink);text-align:left;background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) 88px;align-items:center;gap:12px;min-height:56px;padding:10px 12px;display:grid}.correction-result-list button.active{border-color:var(--green);box-shadow:inset 3px 0 0 var(--green);background:#eef8f2}.correction-result-list span,.correction-result-list small,.correction-log small{color:var(--muted)}.correction-result-list .correction-result-meta{margin-top:0;font-size:12px;display:block}.correction-result-list em{color:var(--red);text-transform:uppercase;background:#fae5e0;border-radius:999px;margin-top:6px;padding:4px 8px;font-size:11px;font-style:normal;font-weight:900;display:inline-flex}.correction-result-list strong{line-height:1.2;display:block}.correction-result-list button>div{grid-template-columns:minmax(230px,1.25fr) minmax(170px,.72fr) minmax(220px,.9fr);align-items:center;gap:12px;min-width:0;display:grid}.correction-result-list button>div>strong,.correction-result-list button>div>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.correction-result-list button>div>strong{color:var(--ink);font-size:14px}.correction-result-list button>div>span:not(.correction-result-meta){color:#40534a;font-size:13px;font-weight:850}.correction-result-list small{color:var(--green);text-align:center;background:#eef4f0;border-radius:999px;flex:none;padding:7px 10px;font-size:12px;font-weight:900}.correction-result-list button.active small{background:var(--green);color:#fff}.correction-editor{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:repeat(2,minmax(180px,1fr));width:100%;min-width:0;padding:16px}.correction-editor>label,.correction-editor .readonly-field,.correction-editor .correction-selected-strip,.correction-editor .condition-actions,.correction-editor .helper-text,.correction-save-message,.student-detail-grid{grid-column:1/-1}.correction-selected-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.correction-selected-strip span{border:1px solid var(--line);color:var(--muted);background:#f7faf8;border-radius:8px;padding:10px 12px;font-size:13px;font-weight:800}.correction-selected-strip strong{color:var(--ink)}.correction-save-message{border:1px solid #b8e2c9;border-left:5px solid var(--green);color:var(--green);background:#e8f8ef;border-radius:8px;margin:0;padding:12px 14px;font-weight:900}.correction-save-message.warning{color:#9a3412;background:#fff7ed;border-color:#fed7aa #fed7aa #fed7aa #c2410c}.correction-save-message.info{border-color:#bfdbfe;border-left-color:var(--blue);color:var(--blue);background:#eff6ff}.student-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.student-detail-card.timeline-card{grid-column:1/-1}.student-detail-card.condition-card,.student-detail-card.photo-card{grid-column:span 1}.student-detail-card{border:1px solid var(--line);background:#f7faf8;border-radius:10px;gap:12px;padding:14px;display:grid}.student-detail-card>p{color:var(--muted);margin:0;line-height:1.45}.student-detail-card-header{justify-content:space-between;align-items:start;display:flex}.student-detail-card-header span{color:var(--blue);text-transform:uppercase;font-size:12px;font-weight:900;display:block}.student-detail-card-header strong{color:var(--ink)}.student-detail-list{gap:8px;display:grid}.student-detail-list div{border:1px solid var(--line);background:#fff;border-radius:8px;gap:3px;padding:10px;display:grid}.student-detail-list span,.student-detail-list small{color:var(--muted);font-size:12px;font-weight:800}.compact-action{justify-content:center;align-items:center;gap:8px;min-height:38px;display:inline-flex}.compact-action svg{width:17px;height:17px}.student-detail-photo{aspect-ratio:3/4;border:1px solid var(--line);object-fit:cover;border-radius:8px;width:min(160px,100%);max-height:220px}.correction-log{margin-top:18px}.administrative-student-card p,.administrative-history-card p,.administrative-student-card small,.administrative-history-card small{color:var(--muted);margin:0;line-height:1.4}.administrative-student-card small,.administrative-history-card small{text-transform:uppercase;margin-bottom:4px;font-size:12px;font-weight:800;display:block}.administrative-history-card{border-top:1px solid var(--line);grid-template-columns:auto 1fr;align-items:flex-start;gap:12px;padding:14px 0;display:grid}.teacher-absence-workspace{grid-template-columns:minmax(320px,.9fr) minmax(320px,1fr);gap:18px;display:grid}.teacher-absence-form{border:1px solid var(--line);background:#f7faf8;border-radius:8px;gap:12px;padding:16px;display:grid}.teacher-absence-form label{color:var(--muted);gap:7px;font-size:14px;font-weight:800;display:grid}.teacher-subject-pills{flex-wrap:wrap;gap:8px;display:flex}.teacher-subject-pills button{min-height:34px;padding:0 12px}.teacher-absence-list{gap:12px;display:grid}.teacher-absence-list h3{margin:0}.teacher-absence-list article{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(150px,1fr) auto minmax(160px,.8fr) auto auto;align-items:center;gap:12px;padding:14px;display:grid}.teacher-absence-list article p,.teacher-absence-list article small{color:var(--muted);margin:4px 0 0}.teacher-absence-list article span{color:var(--amber);background:#fff4df;border-radius:999px;padding:7px 10px;font-size:13px;font-weight:900}.teacher-absence-list article button{min-height:34px;padding:0 12px}.teacher-list-note{border:1px solid var(--line);background:#eef4f7;border-radius:8px;padding:8px 10px;font-size:13px;font-weight:800;color:var(--ink)!important;margin:0!important}.teacher-catalog-list{flex-wrap:wrap;gap:8px;display:flex}.teacher-catalog-list span{color:var(--muted);background:#edf1f3;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800}.calendar-panel{gap:18px;display:grid}.calendar-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.calendar-summary-grid article{border:1px solid var(--line);background:#fff;border-radius:8px;padding:16px}.calendar-summary-grid strong{font-size:30px;display:block}.calendar-summary-grid span{color:var(--muted);font-weight:800}.calendar-actions{border:1px solid var(--line);background:#fff;border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;padding:14px;display:flex}.calendar-actions p{color:var(--muted);margin:0;font-weight:800}.calendar-workspace{grid-template-columns:minmax(280px,380px) 1fr;gap:16px;display:grid}.calendar-form,.calendar-list{border:1px solid var(--line);background:#fff;border-radius:8px;gap:12px;padding:16px;display:grid}.calendar-form h3{margin:0}.check-row{align-items:center;gap:8px;display:flex}.calendar-list{max-height:720px;overflow:auto}.calendar-list article{border:1px solid var(--line);border-radius:8px;grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:14px;display:grid}.calendar-list article.muted{opacity:.58}.calendar-list article span{color:var(--blue);text-transform:uppercase;margin-bottom:5px;font-size:12px;font-weight:950;display:block}.calendar-list article strong{font-size:16px;display:block}.calendar-list article p{color:var(--muted);margin:5px 0 0}.calendar-switches{gap:7px;display:grid}.announcement-composer{grid-template-columns:1fr;gap:14px;display:grid}.announcement-composer>div:first-child{background:#f5fbf7;border:1px solid #1f7a4b29;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(220px,.42fr);align-items:end;gap:10px;padding:16px;display:grid}.announcement-composer>div:first-child .eyebrow,.announcement-composer>div:first-child h2{grid-column:1}.announcement-composer p{color:var(--muted);margin:0;line-height:1.5}.announcement-form{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px;display:grid}.announcement-form .announcement-mode-toggle,.announcement-form>button,.announcement-form>.helper-text{grid-column:1/-1}.announcement-form label:has(textarea){grid-column:1/-1}.announcement-form label{color:var(--muted);gap:7px;font-size:14px;font-weight:700;display:grid}.announcement-mode-toggle{background:#f4faf6;border:1px solid #1f7a4b29;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:6px;display:grid}.announcement-mode-toggle button{background:#fff;border-color:#0000}.announcement-mode-toggle button.active{background:var(--ink);color:#fff}.announcement-list,.parent-announcement-list{gap:12px;display:grid}.announcements-admin.single-panel .announcement-list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.announcements-mobile-list{background:#f7fbf8;border:1px solid #1f7a4b24;border-radius:8px;align-self:start;padding:16px}.announcement-card{border:1px solid var(--line);border-left:4px solid var(--blue);background:#fff;border-radius:8px;padding:16px}.announcement-card h3{margin:6px 0 8px;font-size:17px}.announcement-card p{color:var(--muted);margin:0;line-height:1.45}.announcement-card span,.announcement-card small{color:var(--muted);font-size:13px;font-weight:700}.announcement-card.classes{border-left-color:var(--blue)}.announcement-card.activity{border-left-color:var(--amber)}.announcement-card.urgent{border-left-color:var(--red)}.announcement-card.general{border-left-color:var(--green)}.parent-announcements{margin-bottom:24px;padding:24px}.parent-class-attendance{background:#f7fbf8;border:1px solid #1f7a4b29;border-radius:8px;gap:16px;margin-bottom:24px;padding:22px;display:grid}.student-schedule-card{border:1px solid #1f7a4b2e;border-top:4px solid var(--green);background:radial-gradient(circle at 100% 0,#1f7a4b1a,#0000 32%),linear-gradient(135deg,#fff 0%,#f6fbf8 100%);border-radius:8px;gap:16px;max-width:720px;margin:0 auto 24px;padding:22px;display:grid;box-shadow:0 16px 42px #0f2b1f14}.parent-schedule-card{max-width:none}.student-schedule-heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.student-schedule-heading h2{margin:0 0 6px;font-size:clamp(24px,4vw,34px)}.student-schedule-heading p{color:var(--muted);margin:0;line-height:1.45}.student-schedule-heading>svg{color:var(--green);background:#e7f5ee;border:1px solid #1f7a4b33;border-radius:8px;width:46px;height:46px;padding:10px}.schedule-heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.schedule-heading-actions button{min-height:40px}.schedule-selector-grid{grid-template-columns:minmax(120px,.45fr) minmax(180px,1fr) auto;align-items:end;gap:12px;display:grid}.schedule-selector-grid label{color:var(--muted);gap:7px;font-size:13px;font-weight:900;display:grid}.schedule-selector-grid select{min-height:46px}.schedule-selector-grid button{white-space:nowrap;min-height:46px}.schedule-save-message{color:var(--green);background:#e8f7ee;border:1px solid #1f7a4b33;border-radius:8px;margin:0;padding:12px 14px;font-weight:900}.schedule-current-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.schedule-current-summary article{border:1px solid var(--line);border-left:5px solid var(--green);background:#fff;border-radius:8px;gap:5px;padding:14px;display:grid}.schedule-current-summary span,.schedule-current-summary small{color:var(--muted);font-size:12px;font-weight:900}.schedule-current-summary strong{font-size:20px;line-height:1.12}.schedule-change-button{justify-self:start;min-height:38px}.student-day-schedule{gap:10px;display:grid}.student-day-schedule h3{border-bottom:1px solid var(--line);margin:0;padding-bottom:10px;font-size:20px}.student-day-block{border:1px solid var(--line);background:#fff;border-left:5px solid #9db6a8;border-radius:8px;grid-template-columns:112px minmax(0,1fr) minmax(120px,.9fr);align-items:center;gap:8px;padding:12px 14px;display:grid}.student-day-block.current{border-color:#1f7a4b47;border-left-color:var(--green);background:#ecf8f1}.student-day-block.break{border-left-color:var(--blue)}.student-day-block.lunch{border-left-color:var(--amber)}.student-day-block span,.student-day-block small{color:var(--muted);font-size:13px;font-weight:900}.student-day-block strong{color:var(--ink);line-height:1.2}.parent-class-attendance .panel-title{align-items:flex-start}.parent-class-refresh{white-space:nowrap;justify-content:center;align-items:center;gap:8px;min-height:42px;margin-left:auto;display:inline-flex}.parent-class-refresh svg{width:17px;height:17px}.parent-class-attendance .panel-title p{color:var(--muted);margin:4px 0 0}.parent-class-list{gap:10px;display:grid}.parent-class-card{border:1px solid var(--line);border-left:5px solid var(--green);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.parent-class-card.absent{border-left-color:var(--red)}.parent-class-card.status-tardia{border-left-color:var(--amber)}.parent-class-card.status-justificada{border-left-color:var(--blue)}.parent-class-card.status-escapado{border-left-color:#7c2d12}.parent-class-card.historical{background:#fbfdfc;border-left-color:#9db6a8}.parent-class-card span,.parent-class-card small{color:var(--muted);font-size:13px;font-weight:900}.parent-class-card strong{color:var(--ink);margin:3px 0;font-size:20px;display:block}.parent-class-status{letter-spacing:0;border-radius:999px;align-items:center;width:fit-content;padding:6px 12px;font-weight:900;margin:6px 0!important;font-size:14px!important;display:inline-flex!important}.parent-class-status.status-presente{color:var(--green);background:#e8f7ee;border:1px solid #1f7a4b38}.parent-class-status.status-ausente{color:var(--red);background:#fff1f1;border:1px solid #cc3b3338}.parent-class-status.status-tardia{color:#9a6700;background:#fff8e5;border:1px solid #d49e1f47}.parent-class-status.status-justificada{color:var(--blue);background:#eef6ff;border:1px solid #2a76b538}.parent-class-status.status-escapado{color:#7c2d12;background:#fff4ed;border:1px solid #7c2d1238}.parent-class-card p{color:var(--ink);margin:0}.parent-class-card em{color:var(--muted);margin-top:6px;font-size:12px;font-style:normal;font-weight:900;display:block}.parent-teacher-absences{gap:14px;display:grid}.parent-teacher-list{gap:10px;display:grid}.parent-teacher-list article{border:1px solid #f2d9ab;border-left:5px solid var(--amber);background:#fffaf0;border-radius:8px;gap:4px;padding:12px 14px;display:grid}.parent-teacher-list strong{font-size:17px}.parent-teacher-list span{color:var(--muted);font-weight:800}.parent-teacher-list p{color:var(--ink);margin:0}.announcement-meta{justify-content:space-between;align-items:center;gap:12px;display:flex}.announcement-meta small{align-items:center;gap:6px;display:inline-flex}.announcement-meta svg{width:15px;height:15px}.accounts-panel{margin-top:22px;padding:24px}.accounts-header{justify-content:space-between;align-items:start;gap:20px;margin-bottom:18px;display:flex}.accounts-header p{color:var(--muted);max-width:720px;margin-bottom:0;line-height:1.5}.accounts-header>svg{color:var(--blue);width:34px;height:34px}.account-backup-summary{background:#f2fbf6;border:1px solid #bfe6ce;border-radius:8px;align-items:flex-start;gap:8px;min-width:min(100%,320px);padding:14px;display:grid}.account-backup-summary span,.account-backup-summary strong{color:var(--ink);font-size:13px;line-height:1.35;display:block}.account-backup-summary button{justify-content:center;width:100%}.account-stats-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;margin:0 0 18px;display:grid}.account-stats-grid article{background:linear-gradient(135deg,#f8fbf9,#eef8f3);border:1px solid #cfe4d8;border-radius:8px;gap:6px;padding:14px;display:grid}.account-stats-grid span,.account-result-count{color:var(--muted);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:900}.account-stats-grid strong{color:var(--ink);font-size:26px;line-height:1}.admin-panel-link{border:1px solid var(--line);white-space:nowrap;border-radius:8px;align-items:center;gap:10px;min-height:42px;padding:0 14px;display:inline-flex}.admin-panel-link svg{color:var(--blue);width:18px;height:18px}.account-workspace{grid-template-columns:minmax(320px,420px) minmax(0,1fr);align-items:start;gap:20px;display:grid}.account-form,.account-list{gap:12px;display:grid}.account-form{border:1px solid var(--line);background:linear-gradient(135deg,#fff,#f7fbf9);border-radius:8px;align-content:start;align-self:start;padding:16px}.account-form label{color:var(--muted);gap:7px;font-size:14px;font-weight:700;display:grid}.account-form input,.account-form select{height:44px;min-height:44px}.account-form>button{justify-content:center;width:100%;min-height:46px}.account-form-title{border-bottom:1px solid var(--line);padding-bottom:10px}.account-form-title h3{margin:0;font-size:22px}.account-filter-panel{background:#f6fbf8;border:1px solid #d8e8df;border-radius:8px;grid-template-columns:minmax(220px,1fr) minmax(170px,.6fr) minmax(190px,.7fr) auto;gap:10px;padding:12px;display:grid}.account-filter-panel label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:12px;font-weight:900;display:grid}.account-filter-panel input,.account-filter-panel select{border:1px solid var(--line);text-transform:none;background:#fff;border-radius:8px;min-height:40px;padding:0 12px}.account-filter-panel button{align-self:end;min-height:40px}.account-result-count{border:1px solid var(--line);background:#fff;border-radius:8px;margin:0;padding:10px 12px}.account-card{border:1px solid var(--line);background:linear-gradient(135deg,#fff,#f8fbf9);border-radius:8px;grid-template-columns:minmax(220px,1fr) minmax(230px,.75fr) minmax(230px,auto);align-items:stretch;gap:14px;padding:15px;display:grid}.account-card-main,.account-card-meta{gap:6px;display:grid}.account-card-main>span{color:#0f7a45;text-transform:uppercase;font-size:11px;font-weight:900}.account-card-main strong{color:var(--ink);font-size:18px;line-height:1.1}.account-card p,.account-card span,.account-card small{color:var(--muted);margin:0}.account-card small{margin-top:4px;font-weight:700;display:block}.account-card b{border:1px solid var(--line);background:#f3f6f8;border-radius:8px;justify-self:start;padding:8px 10px;display:inline-flex}.account-card b.pending{color:#7a4c00;background:#fff4d7;border-color:#e2c272}.account-card small.active{color:#0f7a45}.account-card small.paused{color:#c64d3f}.account-username{color:var(--blue);font-weight:900}.account-password-view{background:#f6fbf8;border:1px solid #d8e8df;border-radius:8px;gap:4px;max-width:280px;margin-top:10px;padding:10px;display:grid}.account-password-view small{color:var(--muted);margin:0}.account-password-view strong{color:var(--ink);overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:15px}.account-actions{flex-wrap:wrap;place-content:center flex-end;gap:8px;display:flex}.account-actions button{min-height:36px;padding:0 12px}.list-builder-panel{gap:18px;display:grid}.list-builder-grid{grid-template-columns:minmax(280px,.82fr) minmax(360px,1.18fr);gap:14px;display:grid}.list-builder-card{border:1px solid var(--line);background:#fff;border-radius:8px;align-content:start;gap:12px;padding:16px;display:grid}.list-builder-card h3{margin:0}.list-scope-grid,.list-preset-row{background:#f4faf6;border:1px solid #1f7a4b24;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;display:grid}.list-scope-grid button,.list-preset-row button{color:var(--ink);background:0 0;border:1px solid #0000;border-radius:8px;min-height:38px;padding:0 10px;font-weight:800}.list-scope-grid button.active,.list-preset-row button.active{background:var(--green);border-color:var(--green);color:#fff}.list-check-row{color:var(--ink);background:#f8fbf9;border:1px solid #1f7a4b24;border-radius:8px;align-items:center;gap:10px;min-height:44px;margin-top:2px;padding:10px 12px;font-weight:800;display:flex}.list-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.list-field-grid label{color:var(--ink);background:#fbfdfb;border:1px solid #d7e6dd;border-radius:8px;align-items:center;gap:10px;min-height:38px;padding:8px 10px;font-size:13px;font-weight:800;display:flex}.list-field-grid input,.list-check-row input{accent-color:var(--green)}.list-builder-actions{background:linear-gradient(135deg,#1f7a4b14,#0000 58%),#f8fbf9;border:1px solid #b9dec9;border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.list-builder-actions div{gap:4px;margin-right:0;display:grid}.list-builder-actions .list-summary-chips{flex-wrap:wrap;align-items:center;gap:6px;margin-right:0;display:flex}.list-builder-actions span{color:var(--blue);text-transform:uppercase;font-size:12px;font-weight:900}.list-summary-chips span{color:var(--green);text-transform:none;background:#e7f5ee;border:1px solid #b9dec9;border-radius:999px;padding:7px 10px}.list-builder-actions strong{color:var(--ink)}.list-builder-actions button{justify-content:center;align-items:center;gap:8px;min-width:146px;min-height:40px;padding-inline:14px;display:inline-flex}.list-builder-actions button svg{width:18px;height:18px}.list-preview{gap:14px;display:grid}.list-preview-group{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden}.list-preview-group-header{border-bottom:1px solid var(--line);background:#f7faf8;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.list-preview-group-header span{color:var(--blue);text-transform:uppercase;font-size:12px;font-weight:900;display:block}.list-preview-group-header strong{color:var(--ink);font-size:20px}.list-preview-group-header b{color:var(--green);background:#e7f5ee;border-radius:999px;padding:8px 12px}.list-preview-table-wrap{overflow-x:auto}.list-preview-table{border-collapse:collapse;width:100%;min-width:720px}.list-preview-table th,.list-preview-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 12px;font-size:13px}.list-preview-table th{color:var(--green);text-transform:uppercase;background:#f4f8f6;font-size:12px}.list-preview-group small{color:var(--muted);padding:10px 16px 14px;font-weight:700;display:block}.connections-panel,.followup-panel,.withdrawn-panel{margin-top:22px;padding:24px}.audit-panel{padding:24px}.security-panel{margin-top:22px;padding:24px}.security-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.security-stats article{border:1px solid var(--line);background:#fff;border-radius:8px;padding:16px}.security-stats strong{font-size:32px;line-height:1;display:block}.security-stats span{color:var(--muted);font-weight:700}.security-actions{flex-wrap:wrap;gap:10px;margin-bottom:18px;display:flex}.security-list,.security-lock-list{gap:12px;display:grid}.security-lock-list{background:#fff8e6;border:1px solid #f1d28b;border-radius:8px;margin-bottom:18px;padding:16px}.security-lock-list article{justify-content:space-between;align-items:center;gap:12px;display:flex}.security-card{border:1px solid var(--line);border-left:5px solid var(--green);background:#fff;border-radius:8px;grid-template-columns:minmax(190px,1.3fr) auto minmax(100px,.7fr) minmax(140px,.9fr) minmax(180px,1.1fr) minmax(120px,.8fr);align-items:center;gap:12px;padding:14px;display:grid}.security-card.failed{border-left-color:var(--amber)}.security-card.blocked{border-left-color:var(--red)}.security-card p,.security-card small{margin:0}.security-card p{color:var(--muted)}.security-card small{color:var(--muted);margin-bottom:4px;font-weight:700;display:block}.security-card>span{color:var(--green);background:#edf8f1;border-radius:999px;padding:7px 10px;font-weight:800}.security-card.failed>span{color:#a96c00;background:#fff3d8}.security-card.blocked>span{color:var(--red);background:#fde4df}.connections-header{justify-content:space-between;align-items:start;gap:20px;margin-bottom:18px;display:flex}.module-heading-brand{align-items:center;gap:14px;display:flex}.module-heading-brand img{border:1px solid var(--line);object-fit:contain;background:#fff;border-radius:12px;width:58px;height:58px;padding:8px;box-shadow:0 12px 24px #0f2b1f14}.connections-header p{color:var(--muted);max-width:720px;margin-bottom:0;line-height:1.5}.connections-header svg{color:var(--blue);width:34px;height:34px}.connections-actions{align-items:center;gap:10px;display:flex}.connections-actions button{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.connections-actions button svg{width:18px;height:18px}.connection-stats{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px;display:grid}.connection-stats article{border:1px solid var(--line);background:#f7faf8;border-radius:8px;padding:16px}.statistics-panel{gap:18px;display:grid}.statistics-hero-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.statistics-hero-grid article,.statistics-card{border:1px solid var(--line);background:linear-gradient(135deg,#13845414,#fff0 42%),#fff;border-radius:8px;box-shadow:0 18px 40px #0c231c0f}.statistics-hero-grid article{border-top:4px solid var(--green);gap:6px;padding:18px;display:grid}.statistics-hero-grid span,.statistics-card .eyebrow{color:var(--muted);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:900}.statistics-hero-grid strong{color:var(--ink);font-size:34px;line-height:1}.statistics-hero-grid p,.statistics-card p{color:var(--muted);margin:0;line-height:1.45}.statistics-layout{grid-template-columns:minmax(0,1.35fr) minmax(300px,.85fr);gap:14px;display:grid}.statistics-layout.three{grid-template-columns:repeat(3,minmax(0,1fr))}.statistics-card{padding:20px}.statistics-card.large{min-height:100%}.statistics-card-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.statistics-card-header h3{margin:2px 0 0;font-size:24px}.statistics-card-header svg{color:var(--green);flex:none;width:28px;height:28px}.daily-stat-list,.compact-stat-list{gap:10px;display:grid}.daily-stat-list button{border:1px solid var(--line);color:inherit;cursor:pointer;text-align:left;background:#f9fcfa;border-radius:8px;gap:8px;padding:14px;display:grid}.daily-stat-list button.active{border-color:var(--green);box-shadow:inset 4px 0 0 var(--green)}.daily-stat-list button>div:first-child{justify-content:space-between;align-items:center;gap:10px;display:flex}.daily-stat-list strong,.compact-stat-list strong{color:var(--ink)}.daily-stat-list span,.daily-stat-list small,.compact-stat-list span{color:var(--muted);font-size:13px}.mini-bars{background:#e8f0eb;border-radius:999px;height:8px;overflow:hidden}.mini-bars span{background:linear-gradient(90deg, var(--green), var(--blue));border-radius:inherit;height:100%;display:block}.observation-card{gap:12px;display:grid}.observation-card label{color:var(--muted);gap:7px;font-size:13px;font-weight:800;display:grid}.observation-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.observation-metrics span{color:#0b6f43;text-align:center;background:#edf7f1;border:1px solid #cde6d8;border-radius:8px;padding:9px;font-size:12px;font-weight:900}.compact-stat-list article{border:1px solid var(--line);background:#f9fcfa;border-radius:8px;gap:4px;padding:12px;display:grid}.statistics-card.web{margin-top:2px}.maintenance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.institution-settings{border-bottom:1px solid var(--line);grid-template-columns:minmax(240px,.8fr) minmax(280px,1fr);gap:18px;margin-bottom:18px;padding-bottom:18px;display:grid}.institution-settings p,.institution-preview p{color:var(--muted);margin:0;line-height:1.45}.institution-form{gap:12px;display:grid}.institution-form label{color:var(--muted);gap:7px;font-size:14px;font-weight:700;display:grid}.institution-preview{border:1px solid var(--line);background:#f7faf8;border-radius:8px;grid-template-columns:64px 1fr auto;align-items:center;gap:12px;padding:12px;display:grid}.institution-logo-preview{aspect-ratio:1;border:2px solid var(--blue);color:var(--muted);background:#fff;border-radius:8px;justify-content:center;align-items:center;font-size:13px;font-weight:800;display:flex;overflow:hidden}.institution-logo-preview img{object-fit:contain;width:100%;height:100%;padding:4px}.maintenance-card{border:1px solid var(--line);background:#f7faf8;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.maintenance-card p{color:var(--muted);margin:4px 0 0;line-height:1.4}.maintenance-message-form{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.backup-panel{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:18px;margin-top:18px;padding:18px;display:grid}.backup-panel h3,.backup-panel p{margin:0}.backup-panel p:last-child{color:var(--muted);margin-top:6px;line-height:1.45}.backup-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.backup-actions button{min-width:150px}.operations-guide{border:1px solid var(--line);background:#fff;border-radius:8px;gap:16px;margin-top:18px;padding:18px;display:grid}.operations-guide p{color:var(--muted);margin:6px 0 0;line-height:1.5}.operations-guide-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.operations-guide-grid article{border:1px solid var(--line);background:#f7faf8;border-radius:8px;padding:14px}.guide-link-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.guide-link-row a,.role-guide article>a{border:1px solid var(--line);background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 14px;font-weight:900;display:inline-flex}.role-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.role-guide-grid article{border:1px solid var(--line);background:#fff;border-radius:8px;gap:12px;padding:18px;display:grid}.role-guide-grid article>svg{color:var(--green);width:30px;height:30px}.role-guide-grid strong{font-size:22px;display:block}.role-guide-grid ul{color:var(--muted);margin:0;padding-left:20px;line-height:1.55}.maintenance-screen{border:1px solid var(--line);text-align:center;background:#fff;border-radius:8px;max-width:760px;margin:0 auto 24px;padding:34px}.maintenance-screen h1{margin-left:auto;margin-right:auto;font-size:clamp(30px,4vw,46px)}.maintenance-screen p{color:var(--muted);margin-bottom:0;font-size:18px;line-height:1.55}.public-entry-shell,.public-site-shell{max-width:1180px;margin:0 auto;padding:32px 22px 56px}.public-site-footer{color:#4d6258;text-align:center;border-top:1px solid #225d3e24;justify-items:center;gap:4px;margin-top:36px;padding-top:20px;display:grid}.public-site-footer strong{color:#176b42;letter-spacing:.08em;text-transform:uppercase;font-size:12px}.public-site-footer span{color:#13231d;font-weight:900}.public-site-footer small{color:#5c7067;max-width:680px;line-height:1.45}.public-entry-hero{background:radial-gradient(circle at 8% 20%,#1f8a5629,#0000 32%),linear-gradient(135deg,#1f8a561a,#fffffff5 46%,#2767a30f);border:1px solid #1f8a5638;border-radius:16px;grid-template-columns:minmax(140px,.34fr) minmax(0,1fr);gap:clamp(20px,4vw,42px);padding:clamp(30px,5vw,62px);display:grid;position:relative;overflow:hidden;box-shadow:0 24px 70px #16211d17}.entry-logo-mark{z-index:1;justify-content:center;align-items:center;width:clamp(118px,17vw,188px);height:clamp(118px,17vw,188px);display:inline-flex;position:relative}.entry-hero-logo-area{justify-content:center;align-items:center;display:flex;position:relative}.entry-hero-logo-area:before{content:"";background:#1f8a5614;border:1px solid #1f8a562e;border-radius:999px;width:clamp(170px,24vw,250px);height:clamp(170px,24vw,250px);position:absolute}.entry-hero-logo-area:after{content:"";background:linear-gradient(#127b48,#35b26d);border-radius:999px;width:5px;height:72%;position:absolute;right:-12px}.entry-logo-mark img{object-fit:contain;width:100%;height:100%}.entry-logo-mark svg{color:var(--green);width:88px;height:88px}.entry-hero-copy{align-self:center;max-width:780px}.public-entry-hero h1{overflow-wrap:anywhere;margin-bottom:18px;font-size:clamp(34px,6vw,66px);line-height:1}.public-entry-hero p:last-child{color:var(--muted);max-width:680px;margin:0;font-size:18px;line-height:1.55}.school-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:24px;display:grid}.school-mode-card{color:var(--ink);background:linear-gradient(#ffffffeb,#fff);border:1px solid #1f8a5629;border-radius:12px;gap:22px;min-height:320px;padding:26px;text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 44px #16211d12}.school-mode-card:before{content:"";height:5px;position:absolute;inset:0 0 auto}.school-mode-card.day:before{background:linear-gradient(90deg,#127b48,#35b26d)}.school-mode-card.night:before{background:linear-gradient(90deg,#24364f,#62748e)}.school-mode-card.day:hover{border-color:#1f8a5661;transform:translateY(-2px);box-shadow:0 22px 52px #16211d1c}.school-mode-card.day{border-color:#1f8a5638}.school-mode-card.night{opacity:.88;border-color:#24364f2e}.mode-card-top{justify-content:space-between;align-items:center;display:flex}.mode-icon{background:#1f8a5614;border:1px solid #1f8a562e;border-radius:999px;justify-content:center;align-items:center;width:64px;height:64px;display:flex}.school-mode-card.day .mode-icon svg{color:#c78a12}.school-mode-card.night .mode-icon{background:#eef3f8;border-color:#24364f29}.school-mode-card.night .mode-icon svg{color:#24364f}.mode-icon svg{width:32px;height:32px}.mode-status{border-radius:999px;min-height:30px;padding:7px 12px;font-size:12px;font-weight:900}.mode-status.available{color:#127b48;background:#1f8a561a}.mode-status.pending{color:#46566e;background:#eef3f8}.mode-card-copy{align-self:end}.school-mode-card small{color:var(--muted);text-transform:uppercase;font-weight:900}.school-mode-card h2{margin-top:6px;font-size:clamp(40px,5vw,58px);line-height:.95}.school-mode-card p{color:var(--muted);margin-bottom:0;font-size:17px;line-height:1.5}.school-mode-card>strong{background:var(--ink);color:#fff;border-radius:8px;justify-content:center;align-self:end;align-items:center;gap:8px;min-height:48px;padding:14px 18px;display:inline-flex}.school-mode-card>strong svg{width:18px;height:18px}.school-mode-card.night>strong{color:#24364f;background:#eef3f8}.public-site-nav{border-bottom:1px solid #225d3e29;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:12px;display:flex}.public-site-nav nav{gap:14px;display:flex}.public-site-nav a,.public-site-nav button{color:#13231d;cursor:pointer;font:inherit;background:0 0;border:0;padding:0;font-weight:800;text-decoration:none}.public-site-hero{background:linear-gradient(135deg,#ddf1e4fa,#f8fbf8 58%,#fff 100%);border:1px solid #1f7a4b3d;border-top:6px solid #1f7a4b;border-radius:12px;grid-template-columns:150px 1fr;align-items:center;gap:26px;padding:clamp(24px,5vw,48px);display:grid;position:relative;overflow:hidden;box-shadow:0 22px 60px #1637271a}.public-site-hero:after{content:"";background:linear-gradient(135deg,#1f7a4b14,#cc9d301a);width:44%;position:absolute;top:0;bottom:0;right:0;transform:skew(-18deg)translate(55%)}.public-logo-mark{aspect-ratio:1;box-shadow:none;z-index:1;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;display:flex;position:relative;overflow:visible}.public-logo-mark img{object-fit:contain;filter:drop-shadow(0 10px 16px #0f2c1e29);width:100%;height:100%;padding:0;transform:scale(1.12)}.public-logo-mark svg{color:var(--institution-color,var(--blue));width:54px;height:54px}.public-logo-placeholder{width:100%;height:100%;display:block}.public-site-hero h1{overflow-wrap:anywhere;z-index:1;font-size:clamp(38px,6vw,78px);line-height:.95;position:relative}.public-site-hero p{color:var(--muted);z-index:1;max-width:760px;font-size:18px;line-height:1.55;position:relative}.public-site-hero span{color:#176b42;z-index:1;align-items:center;gap:8px;font-weight:900;display:inline-flex;position:relative}.public-value-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 0;display:grid}.public-value-strip article{background:linear-gradient(135deg,#fff,#f7fbf8);border:1px solid #1f7a4b24;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:12px;min-height:86px;padding:14px 16px;display:grid;box-shadow:0 10px 26px #1637270b}.public-value-strip svg{color:#176b42;background:#e7f5ec;border:1px solid #1f7a4b29;border-radius:12px;width:44px;height:44px;padding:10px}.public-value-strip strong,.public-value-strip span{display:block}.public-value-strip span{color:var(--muted);font-size:13px;line-height:1.35}.public-access-grid,.public-info-grid,.mission-vision-grid,.document-button-grid{gap:14px;display:grid}.public-access-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin:18px 0 10px}.public-welcome-card{background:linear-gradient(90deg,#fffffffa,#fafdfbfa),#fff;border:1px solid #225d3e24;border-radius:12px;grid-template-columns:minmax(0,1fr) minmax(260px,.45fr);gap:18px;margin-top:18px;padding:clamp(20px,3vw,28px);display:grid;box-shadow:0 16px 42px #1637270f}.public-welcome-card h2,.public-welcome-card p{margin-bottom:0}.public-welcome-card p{color:var(--muted);line-height:1.55}.public-welcome-announcements{background:#f3faf5;border:1px solid #1f7a4b24;border-radius:10px;gap:10px;padding:14px;display:grid}.public-announcement-rotator{gap:10px;min-height:154px;animation:.48s cubic-bezier(.2,.8,.2,1) both publicAnnouncementSetIn;display:grid}.public-announcement-title-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.public-announcement-title-row button,.public-announcement-title-row small{color:#0f5d3b;cursor:pointer;white-space:nowrap;background:#dff5e8;border:0;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:900}.public-announcement-title-row button:hover,.public-announcement-title-row button:focus-visible{outline-offset:2px;background:#ccebd9;outline:2px solid #1f7a4b38}.public-welcome-announcements article{background:#fff;border:1px solid #1f7a4b21;border-left:4px solid #1f7a4b;border-radius:9px;min-height:68px;padding:11px 12px}@keyframes publicAnnouncementSetIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.clickable-announcement{cursor:pointer;transition:border-color .16s,box-shadow .16s,transform .16s}.clickable-announcement:hover,.clickable-announcement:focus-visible{border-color:#1f7a4b5c;outline:none;transform:translateY(-1px);box-shadow:0 12px 26px #1637271a}.public-welcome-announcements span,.public-announcement-list span{color:#176b42;text-transform:uppercase;font-size:12px;font-weight:900}.public-section-switcher{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:18px 0;display:grid}.public-section-switcher button{color:#17261f;background:#fff;border:1px solid #225d3e29;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:54px;padding:10px;display:flex}.public-section-switcher button.active{color:#fff;background:#123f2a;border-color:#123f2a;box-shadow:0 10px 22px #123f2a29}.public-section-switcher button svg{width:18px;height:18px}.public-section-panel{margin-top:12px}.public-access-grid a,.public-access-grid button,.document-button-grid a,.public-schedules:not(.schedule-directory) a,.public-schedules:not(.schedule-directory)>span{color:#13231d;background:#fff;border:1px solid #225d3e29;border-radius:10px;align-items:center;gap:10px;min-height:58px;padding:14px;font-weight:900;text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s;display:flex}.public-access-grid button{cursor:pointer;text-align:left}.public-access-grid a,.public-access-grid button{background:linear-gradient(135deg,#fff,#f8fcf9);grid-template-columns:auto 1fr;min-height:78px;display:grid}.public-access-grid a>span,.public-access-grid button>span{background:#e7f5ec;border:1px solid #1f7a4b29;border-radius:12px;grid-row:span 2;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.public-access-grid a strong,.public-access-grid a small,.public-access-grid button strong,.public-access-grid button small{display:block}.public-access-grid a small,.public-access-grid button small{color:var(--muted);font-size:12px;font-weight:800;line-height:1.25}.public-access-grid a:hover,.public-access-grid a:focus-visible,.public-access-grid button:hover,.public-access-grid button:focus-visible{border-color:#1f7a4b4d;outline:none;transform:translateY(-1px);box-shadow:0 12px 28px #16372714}.public-contact-strip{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:10px;margin:16px 0 0;display:flex}.public-contact-strip a,.public-contact-strip button{color:#123f2a;background:#f5fbf6;border:1px solid #1f7a4b2e;border-radius:999px;align-items:center;gap:8px;min-height:36px;padding:7px 12px;font-size:13px;font-weight:900;text-decoration:none;display:inline-flex}.public-contact-strip button{cursor:pointer}.public-contact-strip svg{width:17px;height:17px}.public-contact-strip span{color:#fff;background:#176b42;border-radius:999px;justify-content:center;align-items:center;width:20px;height:20px;font-family:Arial,sans-serif;font-weight:900;display:inline-flex}.public-access-grid a:hover,.document-button-grid a:hover,.public-schedules:not(.schedule-directory) a:hover{border-color:#1f7a4b61;transform:translateY(-1px);box-shadow:0 12px 24px #16372714}.public-access-grid svg,.document-button-grid svg,.public-schedules:not(.schedule-directory) svg{color:#176b42}.public-info-grid,.mission-vision-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-info-grid article,.mission-vision-grid article,.public-documents,.public-schedules,.public-careers,.public-guide,.public-contact-panel{background:#fff;border:1px solid #225d3e24;border-radius:12px;padding:22px;box-shadow:0 10px 28px #1637270b}.public-info-grid article{border-top:4px solid #1f7a4bdb}.mission-vision-panel{background:linear-gradient(135deg,#f5fbf6fa,#fffffffa),#fff;border:1px solid #225d3e24;border-top:4px solid #1f7a4bdb;border-radius:14px;grid-column:1/-1;gap:16px;padding:22px;display:grid;box-shadow:0 16px 36px #1637270f}.mission-vision-heading{border-bottom:1px solid #225d3e1f;justify-content:space-between;align-items:end;gap:14px;padding-bottom:12px;display:flex}.mission-vision-heading h2{margin:0}.mission-vision-grid article{box-shadow:none;background:#ffffffb8;border:1px solid #225d3e1f;border-left:5px solid #1f7a4bdb;border-radius:12px;padding:18px}.public-info-grid p,.mission-vision-grid p,.public-documents p,.public-schedules p,.public-careers p,.public-guide p{color:var(--muted);margin-bottom:0;line-height:1.55}.mission-vision-grid small{color:#176b42;text-transform:uppercase;font-weight:900}.institution-services-panel{background:radial-gradient(circle at 8% 0,#1f7a4b17,#0000 32%),linear-gradient(135deg,#fffffffa,#f4fbf7fa);border:1px solid #1f7a4b29;border-radius:18px;grid-column:1/-1;gap:20px;padding:clamp(22px,3vw,30px);display:grid;box-shadow:0 20px 44px #16372711}.institution-services-heading{border-bottom:1px solid #225d3e1f;padding-bottom:16px}.institution-services-heading h2{letter-spacing:0;max-width:820px;margin:4px 0 8px;font-size:clamp(25px,3vw,38px)}.institution-services-heading p:last-child{color:#52675e;max-width:820px;margin:0;line-height:1.6}.institution-services-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.institution-services-grid article{background:#ffffffd6;border:1px solid #1f7a4b24;border-top:4px solid #1f7a4bd1;border-radius:16px;padding:18px;box-shadow:0 12px 28px #13271f0d}.institution-services-grid svg{color:#176b42;background:#eaf7ef;border:1px solid #1f7a4b29;border-radius:12px;width:42px;height:42px;margin-bottom:12px;padding:10px}.institution-services-grid h3{margin:0 0 8px;font-size:19px}.institution-services-grid p{color:#52675e;margin:0;line-height:1.58}.institution-dedication-card{background:linear-gradient(135deg,#edfaf3f5,#fffffffa),#fff;border:1px solid #1f7a4b2e;border-left:6px solid #176b42;border-radius:18px;grid-column:1/-1;padding:clamp(22px,3vw,32px);position:relative;overflow:hidden;box-shadow:0 22px 46px #16372712}.institution-dedication-card:after{content:"";background:linear-gradient(#1f7a4b1f,#1f7a4b00);border-radius:999px;width:180px;height:180px;position:absolute;top:-90px;right:-70px}.institution-dedication-header{z-index:1;border-bottom:1px solid #225d3e24;margin-bottom:18px;padding-bottom:14px;position:relative}.institution-dedication-header h2{letter-spacing:0;max-width:760px;margin:4px 0 0;font-size:clamp(24px,3vw,36px)}.institution-dedication-copy{z-index:1;gap:12px;max-width:980px;display:grid;position:relative}.institution-dedication-copy p{color:#33483f;margin:0;font-size:16px;line-height:1.72}.document-button-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}.public-schedules{grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin-top:18px;display:grid}.public-schedules.schedule-directory{background:linear-gradient(135deg,#1f7a4b14,#0000 48%),#fff;border:1px solid #225d3e24;border-top:4px solid #1f7a4b;border-radius:12px;grid-template-columns:1fr;align-items:stretch;padding:clamp(16px,3vw,24px);display:grid;box-shadow:0 12px 36px #1637270e}.schedule-directory-header{grid-template-columns:auto 1fr auto;align-items:center;gap:16px;display:grid}.schedule-directory-header>span{color:#1f7a4b;background:#e8f6ee;border:1px solid #1f7a4b29;border-radius:10px;justify-content:center;align-items:center;width:52px;height:52px;display:inline-flex}.schedule-directory-header h2{margin:3px 0 8px}.schedule-directory-header p{color:var(--muted);margin:0}.schedule-directory-header a{color:#fff;background:#10251b;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 14px;font-weight:900;text-decoration:none;display:inline-flex}.schedule-level-tabs{background:#f4faf6;border:1px solid #1f7a4b1f;border-radius:10px;grid-template-columns:repeat(6,1fr);gap:8px;padding:8px;display:grid}.schedule-level-tabs button{color:#153626;background:#fff;border:1px solid #225d3e24;border-radius:8px;min-height:42px;font-weight:900}.schedule-level-tabs button.active{color:#fff;background:#1f7a4b;border-color:#1f7a4b}.schedule-search{color:var(--muted);text-transform:uppercase;gap:7px;font-size:12px;font-weight:900;display:grid}.schedule-search input{background:#fff;border:1px solid #225d3e2e;border-radius:10px;min-height:46px;padding:0 14px}.schedule-section-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.schedule-section-grid article{color:#13231b;background:#f8fbf9;border:1px solid #225d3e24;border-left:4px solid #1f7a4b;border-radius:10px;align-items:center;gap:5px;min-height:112px;padding:14px;text-decoration:none;transition:border-color .18s,box-shadow .18s,transform .18s;display:grid;position:relative}.schedule-section-grid article.selected,.schedule-section-grid article:hover,.schedule-section-grid article:focus-within{border-color:#1f7a4b52;transform:translateY(-2px);box-shadow:0 14px 32px #1637271a}.schedule-section-grid article.selected{background:#eef8f2}.schedule-section-grid span{color:#1f7a4b;text-transform:uppercase;font-size:12px;font-weight:900}.schedule-section-grid strong{font-size:20px}.schedule-section-grid small{color:var(--muted);font-weight:800}.schedule-section-grid article>div{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.schedule-section-grid button,.schedule-section-grid a{border-radius:999px;align-items:center;gap:6px;min-height:34px;padding:7px 10px;font-size:13px;font-weight:900;text-decoration:none;display:inline-flex}.schedule-section-grid button{color:#fff;background:#1f7a4b;border:1px solid #1f7a4b}.schedule-section-grid a{color:#153626;background:#fff;border:1px solid #225d3e29}.schedule-section-grid svg{color:#1f7a4b;width:18px;height:18px}.schedule-detail-panel{background:linear-gradient(135deg,#1f7a4b14,#0000 46%),#f8fbf9;border:1px solid #225d3e24;border-radius:12px;gap:18px;padding:clamp(14px,3vw,20px);display:grid}.schedule-pick-panel{color:#153626;background:linear-gradient(135deg,#1f7a4b1a,#0000 56%),#f8fbf9;border:1px dashed #1f7a4b52;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:14px;padding:clamp(16px,3vw,22px);display:grid}.schedule-pick-panel svg{color:#1f7a4b;background:#e8f6ee;border:1px solid #1f7a4b29;border-radius:12px;width:54px;height:54px;padding:13px}.schedule-pick-panel h3{margin:4px 0 8px;font-size:clamp(24px,4vw,34px)}.schedule-pick-panel p{color:var(--muted);margin:0}.schedule-detail-heading{grid-template-columns:1fr auto;align-items:end;gap:12px;display:grid}.schedule-detail-heading h3{margin:4px 0 8px;font-size:clamp(28px,5vw,42px);line-height:1}.schedule-detail-heading p{color:var(--muted);margin:0}.schedule-detail-heading a{color:#fff;background:#10251b;border-radius:10px;align-items:center;gap:8px;min-height:42px;padding:10px 14px;font-weight:900;text-decoration:none;display:inline-flex}.schedule-now-banner{color:#103323;background:#e8f6ee;border:1px solid #1f7a4b38;border-left:6px solid #1f7a4b;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:14px;display:grid}.schedule-now-banner.calm{background:#f7faf8;border-left-color:#8ca498}.schedule-now-banner svg{color:#1f7a4b;width:30px;height:30px}.schedule-now-banner span{color:#1f7a4b;text-transform:uppercase;font-size:12px;font-weight:900}.schedule-now-banner strong{margin:2px 0;font-size:18px;display:block}.schedule-now-banner small{color:var(--muted);font-weight:900}.schedule-day-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.schedule-day-grid>article{background:#fff;border:1px solid #225d3e24;border-radius:12px;gap:10px;padding:12px;display:grid}.schedule-day-grid h4{color:#145b37;text-align:center;background:#e8f6ee;border-radius:8px;margin:0;padding:10px;font-size:17px}.schedule-day-grid>article>div{gap:8px;display:grid}.schedule-class-block{background:#fbfdfb;border:1px solid #225d3e1f;border-left:4px solid #1f7a4b;border-radius:10px;gap:4px;padding:10px;display:grid}.schedule-class-block.current{background:linear-gradient(135deg,#1f7a4b33,#0000 70%),#e8f6ee;border-color:#1f7a4b61 #1f7a4b61 #1f7a4b61 #0f6c3f;box-shadow:0 12px 28px #1f7a4b26}.schedule-class-block.break{text-align:center;background:#f4faf6;border-left-color:#8aa99a}.schedule-class-block.lunch{border-color:#f2d9ab;border-left-color:var(--amber);text-align:center;background:#fffaf0}.schedule-class-block.break strong,.schedule-class-block.lunch strong{font-size:14px}.schedule-class-block.break.current,.schedule-class-block.lunch.current{background:linear-gradient(135deg,#1f7a4b33,#0000 70%),#e8f6ee;border-color:#1f7a4b61 #1f7a4b61 #1f7a4b61 #0f6c3f}.schedule-class-block span{color:#1f7a4b;font-size:12px;font-weight:900}.schedule-class-block em{color:#fff;text-transform:uppercase;background:#1f7a4b;border-radius:999px;justify-self:start;padding:4px 8px;font-size:11px;font-style:normal;font-weight:900}.schedule-class-block strong{font-size:15px;line-height:1.2}.schedule-class-block small,.schedule-class-block p{color:var(--muted);margin:0;font-size:12px;font-weight:800}.public-announcement-list{background:#fff;border:1px solid #225d3e24;border-radius:12px;gap:12px;padding:22px;display:grid;box-shadow:0 10px 28px #1637270b}.public-announcement-list article{background:#f5fbf6;border:1px solid #1f7a4b24;border-left:4px solid #1f7a4b;border-radius:10px;grid-template-columns:110px 1fr;gap:10px;padding:14px;display:grid}.public-announcement-list p{color:var(--muted);margin:4px 0}.public-announcement-backdrop{background:radial-gradient(circle at 50% 28%,#1f7a4b38,#0000 36%),#07110d94}.public-announcement-modal{background:linear-gradient(#f4fbf7fa,#fff 46%);border:1px solid #1f7a4b47;border-radius:18px;gap:16px;width:min(100vw - 28px,640px);max-width:640px;max-height:min(82vh,720px);padding:clamp(22px,4vw,34px);display:grid;position:relative;overflow:auto;box-shadow:0 28px 90px #07110d47}.public-announcement-modal:before{content:"";background:linear-gradient(90deg,#127b48,#35b26d);border-radius:18px 18px 0 0;height:7px;position:absolute;inset:0 0 auto}.public-announcement-modal.urgent:before{background:linear-gradient(90deg,#b42318,#f97316)}.public-announcement-modal.activity:before{background:linear-gradient(90deg,#b7791f,#f6c453)}.public-announcement-modal.classes:before{background:linear-gradient(90deg,#1d63a7,#59a9e8)}.public-announcement-close{position:absolute;top:16px;right:16px}.announcement-modal-badge{color:#176b42;text-transform:uppercase;background:#e7f5ec;border:1px solid #1f7a4b2e;border-radius:999px;justify-self:start;align-items:center;gap:8px;min-height:34px;margin-top:8px;padding:7px 12px;font-size:13px;font-weight:900;display:inline-flex}.announcement-modal-badge svg,.announcement-modal-dates svg{width:17px;height:17px}.public-announcement-modal h2{margin:0;padding-right:38px;font-size:clamp(28px,4vw,42px);line-height:1.03}.public-announcement-modal p{color:#3f5049;white-space:pre-line;margin:0;font-size:18px;line-height:1.6}.announcement-modal-dates{color:#4d6258;background:#f5fbf6;border:1px solid #1f7a4b24;border-radius:10px;align-items:center;gap:8px;padding:12px;font-weight:800;display:flex}.public-announcement-modal>button:not(.public-announcement-close){justify-self:start;min-width:180px}.public-careers{gap:18px;display:grid}.public-careers-header{justify-content:space-between;align-items:start;gap:14px;display:flex}.public-careers-header a{color:#fff;white-space:nowrap;background:#123f2a;border-radius:9px;align-items:center;min-height:44px;padding:10px 14px;font-weight:900;text-decoration:none;display:inline-flex}.career-chip-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.career-chip-grid article{background:#f5fbf6;border:1px solid #1f7a4b24;border-left:4px solid #1f7a4b;border-radius:10px;align-items:center;gap:10px;min-height:58px;padding:12px;display:flex}.career-chip-grid svg{color:#176b42;width:18px;height:18px}.career-chip-grid span{font-weight:900}.public-guide{gap:18px;display:grid}.public-guide-header{background:#f5fbf6;border:1px solid #1f7a4b24;border-left:5px solid #1f7a4b;border-radius:10px;padding:18px}.public-guide-header h2{margin-bottom:8px}.public-guide-header strong{color:var(--ink);font-size:20px;line-height:1.35;display:block}.public-guide-body{columns:2 320px;column-gap:28px}.public-guide-body p{break-inside:avoid;margin:0 0 14px}.uniform-panel{background:radial-gradient(circle at 12% 10%,#1f7a4b1a,#0000 28%),linear-gradient(135deg,#fff,#f7fcf8);border:1px solid #225d3e24;border-radius:16px;gap:20px;padding:clamp(18px,3vw,28px);display:grid;overflow:hidden;box-shadow:0 18px 46px #1637270f}.uniform-hero{border-bottom:1px solid #225d3e1f;justify-content:space-between;align-items:center;gap:18px;padding-bottom:18px;display:flex}.uniform-hero h2{margin:0 0 8px;font-size:clamp(30px,5vw,52px);line-height:1}.uniform-hero p:not(.eyebrow){color:var(--muted);max-width:720px;margin:0;line-height:1.55}.uniform-hero>span{color:#176b42;background:#e7f5ec;border:1px solid #1f7a4b29;border-radius:18px;flex:none;justify-content:center;align-items:center;width:70px;height:70px;display:inline-flex}.uniform-hero svg{width:34px;height:34px}.uniform-family-notice{background:linear-gradient(135deg,#e7f5ecf2,#fffffffa),#fff;border:1px solid #1f7a4b2e;border-left:6px solid #1f7a4b;border-radius:14px;gap:10px;padding:clamp(18px,3vw,24px);display:grid;box-shadow:0 16px 34px #1637270f}.uniform-family-notice h3{margin:0;font-size:clamp(22px,3vw,30px)}.uniform-family-notice p{color:#3f5049;max-width:980px;margin:0;line-height:1.65}.uniform-content-grid{grid-template-columns:minmax(320px,1.1fr) minmax(280px,.9fr);gap:22px;display:grid}.uniform-content-grid.reverse .uniform-illustration{order:2}.uniform-illustration{background:linear-gradient(#fffffff5,#f8fdfaf5),#fff;border:1px solid #225d3e24;border-radius:14px;justify-content:center;align-items:center;padding:clamp(18px,3vw,28px);display:flex}.uniform-illustration img{width:min(100%,780px);max-width:100%;height:auto;display:block}.uniform-copy{gap:14px;display:grid}.uniform-copy article{background:#fff;border:1px solid #225d3e24;border-left:5px solid #1f7a4b;border-radius:12px;padding:clamp(18px,3vw,24px)}.uniform-copy span{color:#176b42;text-transform:uppercase;background:#e7f5ec;border-radius:999px;margin-bottom:12px;padding:6px 10px;font-size:12px;font-weight:900;display:inline-flex}.uniform-copy h3{margin:0 0 12px;font-size:clamp(24px,3vw,34px)}.uniform-copy p{color:#3f5049;margin:0;line-height:1.65}.uniform-note{display:none;background:#f5fbf6!important;border-left-color:#1d63a7!important}.uniform-note strong{margin-bottom:8px;display:block}.public-contact-panel{gap:18px;display:grid}.public-contact-header{background:#f5fbf6;border:1px solid #1f7a4b24;border-left:5px solid #1f7a4b;border-radius:10px;padding:18px}.public-contact-header p:last-child{color:var(--muted);margin:0;line-height:1.5}.public-contact-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.public-contact-grid article{background:#fff;border:1px solid #225d3e24;border-radius:10px;gap:8px;min-height:126px;padding:15px;display:grid}.public-contact-grid svg{color:#176b42;width:22px;height:22px}.public-contact-grid small{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.public-contact-grid strong{color:#13231d;overflow-wrap:anywhere;line-height:1.35}.regulation-shell{color:#10211a;background:radial-gradient(circle at 14% 8%,#1f7a4b1c,#0000 28%),radial-gradient(circle at 85% 0,#1f63a714,#0000 26%),#f4f8f5;min-height:100vh;padding:26px}.regulation-top-nav{justify-content:space-between;gap:22px;max-width:1180px;margin:0 auto 20px}.regulation-top-nav nav{gap:18px;display:flex}.regulation-top-nav a{align-items:center;gap:8px;display:inline-flex}.regulation-top-nav svg{width:18px;height:18px}.regulation-hero{background:linear-gradient(135deg,#e7f6edf2,#fffffff7),#fff;border:1px solid #1f7a4b38;border-radius:18px;gap:14px;max-width:1180px;margin:0 auto 22px;padding:clamp(28px,5vw,56px);display:grid;position:relative;overflow:hidden;box-shadow:0 24px 70px #0b221814}.regulation-hero:before{content:"";background:linear-gradient(90deg,#127b48,#1d63a7);height:7px;position:absolute;inset:0 0 auto}.regulation-hero-icon{color:#127b48;background:#fff;border:1px solid #1f7a4b29;border-radius:16px;justify-content:center;align-items:center;width:64px;height:64px;display:inline-flex;box-shadow:0 14px 40px #0b221814}.regulation-hero-icon svg{width:32px;height:32px}.regulation-hero h1{letter-spacing:0;margin:0;font-size:clamp(44px,8vw,84px);line-height:.95}.regulation-hero p:not(.eyebrow){color:#4b6258;max-width:760px;margin:0;font-size:18px;line-height:1.55}.regulation-hero-actions{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.regulation-hero-actions a,.regulation-hero-actions button{border-radius:999px;align-items:center;gap:8px;min-height:42px;padding:9px 14px;font-weight:900;text-decoration:none;display:inline-flex}.regulation-hero-actions button{color:#fff;background:#123f2a}.regulation-hero-actions a{color:#123f2a;background:#fff;border:1px solid #1f7a4b2e}.regulation-layout{grid-template-columns:minmax(270px,330px) minmax(0,1fr);align-items:start;gap:18px;max-width:1180px;margin:0 auto;display:grid}.regulation-sidebar,.regulation-reader{background:#fffffff0;border:1px solid #1f7a4b29;border-radius:16px;box-shadow:0 18px 50px #0b22180f}.regulation-sidebar{gap:14px;max-height:calc(100vh - 30px);padding:14px;display:grid;position:sticky;top:16px;overflow:auto}.regulation-search{background:#f5fbf6;border:1px solid #1f7a4b29;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:8px;padding:10px 12px;display:grid}.regulation-search svg{color:#176b42;width:18px;height:18px}.regulation-search input{font:inherit;background:0 0;border:0;outline:0;min-width:0;font-weight:800}.regulation-index,.regulation-search-results{gap:8px;display:grid}.regulation-index button,.regulation-search-results button{color:#243a31;text-align:left;background:#fff;border:1px solid #1f7a4b24;border-radius:11px;grid-template-columns:auto 1fr;align-items:center;gap:10px;min-height:50px;padding:10px;font-weight:900;line-height:1.25;display:grid}.regulation-index button span{color:#176b42;background:#e7f5ec;border-radius:999px;justify-content:center;align-items:center;width:34px;height:28px;font-size:12px;display:inline-flex}.regulation-index button.active{color:#fff;background:#123f2a;border-color:#123f2a}.regulation-index button.active span{color:#fff;background:#ffffff29}.regulation-search-results>span{color:var(--muted);text-transform:uppercase;font-size:13px;font-weight:900}.regulation-search-results svg{color:#176b42;width:18px;height:18px}.regulation-search-results p{color:var(--muted);margin:0}.regulation-reader{gap:20px;min-height:680px;padding:clamp(20px,4vw,38px);display:grid}.regulation-reader-header{border-bottom:1px solid #1f7a4b24;justify-content:space-between;align-items:start;gap:18px;padding-bottom:18px;display:flex}.regulation-reader-header h2{letter-spacing:0;margin:0;font-size:clamp(28px,4vw,48px);line-height:1.02}.regulation-reader-header>span{color:#176b42;background:#e7f5ec;border-radius:999px;flex:none;padding:8px 12px;font-weight:900}.regulation-progress{background:#e8efeb;border-radius:999px;height:8px;overflow:hidden}.regulation-progress span{background:linear-gradient(90deg,#127b48,#1d63a7);height:100%;transition:width .18s;display:block}.regulation-page-body{gap:14px;display:grid}.regulation-page-body h3{background:#f5fbf6;border:1px solid #1f7a4b24;border-left:5px solid #127b48;border-radius:12px;margin:4px 0 0;padding:14px;font-size:18px;line-height:1.35}.regulation-page-body p{color:#33483f;margin:0;font-size:17px;line-height:1.75}.regulation-reader-footer{border-top:1px solid #1f7a4b24;justify-content:space-between;align-items:center;gap:12px;padding-top:18px;display:flex}.regulation-reader-footer button,.regulation-reader-footer span{border-radius:999px;align-items:center;gap:8px;min-height:42px;padding:9px 14px;font-weight:900;display:inline-flex}.regulation-reader-footer button{color:#fff;background:#123f2a}.regulation-reader-footer button:disabled{color:#7a8b84;background:#e8efeb}.regulation-reader-footer span{color:#176b42;background:#f5fbf6}.regulation-commandbar{background:#fffffff2;border:1px solid #1f7a4b29;border-radius:16px;justify-content:space-between;align-items:center;gap:18px;max-width:1180px;margin:0 auto 16px;padding:18px 20px;display:flex;box-shadow:0 18px 50px #0b22180f}.regulation-commandbar h1{letter-spacing:0;margin:0;font-size:clamp(30px,4vw,46px);line-height:1}.regulation-commandbar p:not(.eyebrow){color:#52675e;margin:6px 0 0;font-size:16px;line-height:1.35}.regulation-layout{height:calc(100vh - 182px)}.regulation-sidebar,.regulation-reader{height:100%}.regulation-sidebar{min-height:0;max-height:none;position:static}.regulation-sidebar-title{border-bottom:1px solid #1f7a4b1f;justify-content:space-between;align-items:center;padding:4px 2px 12px;display:flex}.regulation-sidebar-title h2{margin:0;font-size:24px}.regulation-sidebar-title button{background:#f5fbf6;border:1px solid #1f7a4b29;border-radius:999px;justify-content:center;align-items:center;width:38px;height:38px;padding:0;display:none}.regulation-sidebar-title svg{width:18px;height:18px}.regulation-index,.regulation-search-results{padding-right:4px;overflow:auto}.regulation-index button,.regulation-search-results button{border-radius:12px;min-height:44px;padding:9px 10px;font-size:13px;line-height:1.18}.regulation-reader{grid-template-rows:auto auto minmax(0,1fr) auto;min-height:0}.regulation-reader-header{padding-bottom:14px}.regulation-reader-header h2{font-size:clamp(24px,2.55vw,38px);line-height:1.04}.regulation-page-body{align-content:start;min-height:0;padding-right:8px;overflow:auto}.regulation-page-body h3{background:linear-gradient(#f7fcf8,#fff);padding:12px 14px;font-size:17px}.regulation-page-body p{font-size:16px;line-height:1.7}.regulation-mobile-index{display:none}.regulation-shell{grid-template-rows:auto auto minmax(0,1fr);height:100vh;display:grid;overflow:hidden}.regulation-layout{height:auto;min-height:0}.public-page-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.public-page-actions button{align-items:center;gap:8px;display:inline-flex}.public-page-admin .public-page-form{gap:14px;display:grid}.public-identity-editor{border:1px solid var(--line);background:#f7faf8;border-radius:8px;grid-template-columns:minmax(220px,.7fr) minmax(280px,1fr);gap:18px;margin-bottom:4px;padding:16px;display:grid}.public-identity-editor p{color:var(--muted);margin:0;line-height:1.45}.public-page-admin label{color:var(--muted);gap:7px;font-size:14px;font-weight:800;display:grid}.public-page-admin textarea{min-height:110px}.public-page-admin textarea.large-textarea{min-height:280px}.public-careers-admin{border:1px solid var(--line);background:#f7faf8;border-radius:8px;gap:14px;padding:16px;display:grid}.public-careers-admin p{color:var(--muted);margin:0;line-height:1.45}.public-save-bar{border:1px solid var(--line);background:#f7faf8;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.public-save-bar span{color:var(--green);font-weight:900}.connection-stats strong{margin-bottom:4px;font-size:32px;display:block}.connection-stats span,.connection-card small{color:var(--muted);font-weight:700}.connections-grid{grid-template-columns:minmax(0,1fr) minmax(300px,420px);gap:18px;display:grid}.connection-list,.connection-history{gap:10px;display:grid}.connection-card{border-top:1px solid var(--line);grid-template-columns:minmax(150px,1fr) auto minmax(130px,auto) auto;align-items:center;gap:14px;padding:14px 0;display:grid}.connection-card p{color:var(--muted);margin:0}.connection-status{border-radius:999px;justify-content:center;min-width:110px;padding:7px 10px;font-size:13px;font-weight:700;display:inline-flex}.connection-status.online{color:var(--green);background:#e0f3ea}.connection-status.offline{color:var(--muted);background:#edf1f3}.connection-history{border:1px solid var(--line);background:#f7faf8;border-radius:8px;padding:16px}.connection-history h3{margin:0 0 8px}.connection-history article{grid-template-columns:auto 1fr;align-items:center;gap:10px;display:grid}.connection-history p{color:var(--muted);margin:0;line-height:1.45}.followup-card{border-top:1px solid var(--line);grid-template-columns:minmax(180px,1fr) 130px 120px 130px minmax(240px,auto);align-items:center;gap:14px;padding:14px 0;display:grid}.alert-case-card{grid-template-columns:minmax(240px,1fr) 110px minmax(280px,.9fr);align-items:start}.porter-attention-card{border:1px solid var(--line);border-left:5px solid var(--red);background:linear-gradient(135deg,#c9513f0f,#0000 42%),#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(320px,.55fr);padding:18px;box-shadow:0 12px 28px #16211d0d}.porter-attention-card.resolved{border-left-color:var(--green);background:#f7faf8;grid-template-columns:1fr}.porter-attention-card .followup-main strong{letter-spacing:0;margin-bottom:4px;font-size:16px;display:block}.porter-attention-card .followup-main p,.porter-attention-card .followup-main small{line-height:1.45;display:block}.followup-main{align-items:flex-start;gap:12px;display:flex}.followup-card .status-dot{border-radius:999px;flex:none;width:12px;height:12px;margin-top:4px;padding:0;display:inline-flex}.status-dot.red{background:var(--red)}.status-dot.green{background:var(--green)}.attention-summary-badge{color:var(--red);background:#fae5e0;border:1px solid #efb7ad;border-radius:8px;place-items:center;min-width:120px;padding:12px;display:grid}.attention-summary-badge strong{font-size:28px;line-height:1}.attention-summary-badge span{color:var(--red);text-transform:uppercase;font-size:12px;font-weight:900}.panel-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;margin-bottom:14px;display:flex}.panel-toolbar button{min-height:40px}.followup-card.resolved{opacity:.78;grid-template-columns:1fr}.followup-card p{color:var(--muted);margin:0}.followup-student-meta{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.followup-student-meta b{color:#0f6b43;background:#eef8f2;border:1px solid #cfe8da;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:900;line-height:1}.followup-card small{color:var(--muted);font-weight:700}.followup-card span{border-radius:999px;justify-content:center;padding:7px 10px;font-size:13px;font-weight:700;display:inline-flex}.followup-card.low span{color:var(--blue);background:#eef4f7}.followup-card.medium span{color:var(--amber);background:#fff4df}.followup-card.high span{color:var(--red);background:#fae5e0}.followup-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.followup-actions button{min-height:38px;padding-left:12px;padding-right:12px}.alert-resolution-form{border:1px solid var(--line);background:#f7faf8;border-radius:8px;gap:10px;padding:12px;display:grid}.alert-resolution-form label{color:var(--muted);gap:6px;font-size:13px;font-weight:800;display:grid}.alert-resolution-form textarea{width:100%;min-height:78px}.alert-resolution-form button{width:100%;min-height:38px}.closed-alerts{border-top:1px solid var(--line);gap:10px;margin-top:8px;padding-top:18px;display:grid}.closed-alerts article{border:1px solid var(--line);background:#f7faf8;border-radius:8px;padding:12px}.closed-alerts p,.closed-alerts small{color:var(--muted);margin:4px 0 0;line-height:1.4}.withdrawn-list{gap:12px;display:grid}.withdrawn-total-badge{color:#c2410c;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;place-items:center;min-width:118px;padding:12px;display:grid}.withdrawn-total-badge strong{font-size:28px;line-height:1}.withdrawn-total-badge span{text-transform:uppercase;font-size:12px;font-weight:950}.withdrawn-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 14px;display:grid}.withdrawn-summary-grid article{background:linear-gradient(135deg,#c2410c14,#0000 58%),#fff;border:1px solid #e3d6c8;border-left:5px solid #c2410c;border-radius:8px;gap:4px;min-width:0;padding:14px;display:grid}.withdrawn-summary-grid span,.withdrawn-summary-grid small{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.withdrawn-summary-grid strong{color:var(--ink);overflow-wrap:anywhere;font-size:22px}.withdrawn-summary-grid small{text-transform:none;font-size:13px;line-height:1.25}.withdrawn-filter-bar{border:1px solid var(--line);background:#f8fbf9;border-radius:8px;grid-template-columns:minmax(220px,1fr) minmax(170px,.35fr) auto;align-items:end;gap:12px;margin-bottom:12px;padding:14px;display:grid}.withdrawn-filter-bar label{color:var(--muted);text-transform:uppercase;gap:7px;min-width:0;font-size:12px;font-weight:950;display:grid}.withdrawn-filter-bar input,.withdrawn-filter-bar select{width:100%;min-width:0}.withdrawn-filter-bar button,.withdrawn-card-owner button{border:1px solid var(--green);color:var(--green-dark);cursor:pointer;white-space:nowrap;background:#fff;border-radius:8px;min-height:42px;padding:0 14px;font-weight:950}.withdrawn-list-header{color:var(--green-dark);background:#f0faf4;border:1px solid #cde9d7;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:12px;padding:10px 12px;font-size:13px;font-weight:950;display:flex}.withdrawn-card{border:1px solid var(--line);background:#fff;border-left:5px solid #c2410c;border-radius:8px;grid-template-columns:minmax(220px,1.05fr) 132px minmax(220px,1fr) minmax(140px,.45fr);align-items:stretch;gap:14px;padding:14px;display:grid}.withdrawn-card-main{gap:6px;min-width:0;display:grid}.withdrawn-card-main strong{line-height:1.05}.withdrawn-card-main p{background:#f3f7f5;border:1px solid #e0ebe5;border-radius:8px;flex-wrap:wrap;gap:5px;max-width:max-content;padding:7px 9px;font-size:13px;font-weight:850;display:inline-flex}.withdrawn-card p{color:var(--muted);margin:0}.withdrawn-card span{color:var(--muted);margin-bottom:4px;font-size:12px;font-weight:700;display:block}.withdrawn-card-date,.withdrawn-card-reason,.withdrawn-card-owner{min-width:0}.withdrawn-card-reason{background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;padding:10px}.withdrawn-card-owner{gap:8px;display:grid}.withdrawn-card-owner button{justify-content:center;min-height:38px}@media (max-width:1180px){.withdrawn-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.withdrawn-filter-bar,.withdrawn-card{grid-template-columns:1fr}.withdrawn-card-owner{grid-template-columns:minmax(0,1fr) auto;align-items:end}.withdrawn-card-owner span{grid-column:1/-1}}@media (max-width:640px){.withdrawn-summary-grid{grid-template-columns:1fr}.withdrawn-card-owner{grid-template-columns:1fr;align-items:stretch}}.audit-list{gap:10px;display:grid}.audit-card{border-left:4px solid var(--blue);border-top:1px solid var(--line);grid-template-columns:minmax(220px,1fr) 170px 120px 100px;align-items:center;gap:14px;padding:14px 0 14px 14px;display:grid}.audit-card p{color:var(--muted);margin:0}.audit-card span,.audit-card small{color:var(--muted);font-weight:700}.audit-card.announcement{border-left-color:var(--amber)}.audit-card.access{border-left-color:var(--green)}.audit-card.followup{border-left-color:var(--red)}.audit-card.system{border-left-color:var(--blue)}.system-health-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0;display:grid}.system-health-grid article{border:1px solid var(--line);background:#fff;border-radius:10px;min-height:92px;padding:16px}.system-health-grid article.ok{background:#ecfbf2;border-color:#bfe8d0}.system-health-grid article.warning{background:#fff7ed;border-color:#f0d1a6}.system-health-grid strong{color:var(--ink);margin-bottom:8px;font-size:18px;display:block}.system-health-grid span{color:var(--muted);font-size:14px;line-height:1.35;display:block}.system-control-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0;display:grid}.system-control-card,.role-matrix-panel,.student-history-panel{border:1px solid var(--line);background:#fff;border-radius:10px;gap:14px;padding:16px;display:grid}.system-test-list,.system-error-list,.role-matrix-grid,.student-history-list{gap:10px;display:grid}.role-matrix-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.system-test-list article,.system-error-list article,.role-matrix-grid article,.student-history-card{border:1px solid var(--line);border-left:4px solid var(--green);background:#f7faf8;border-radius:8px;padding:12px}.system-test-list article.warning,.system-error-list article.warning{border-left-color:var(--amber);background:#fff7ed}.system-test-list article.error,.system-error-list article.error{border-left-color:var(--red);background:#fff1f2}.student-history-card.card{border-left-color:var(--blue)}.student-history-card.audit{border-left-color:var(--amber)}.system-test-list strong,.system-error-list strong,.role-matrix-grid strong,.student-history-card strong{margin-bottom:4px;display:block}.system-test-list span,.system-error-list span,.role-matrix-grid p,.student-history-card p,.student-history-card span{color:var(--muted);margin:0;line-height:1.35}.porter-review-note{color:#7a4a12;background:#fff7ed;border:1px solid #f0d1a6;border-radius:8px;margin-top:12px;padding:10px 12px;font-weight:700}@media (max-width:860px){.hero,.module-grid,.superadmin-hero,.admin-workspace,.carnet-admin-workspace,.student-search-panel,.institution-settings,.announcements-admin,.announcement-composer,.calendar-summary-grid,.calendar-workspace,.calendar-list article,.teacher-absence-workspace,.teacher-absence-list article,.teacher-absence-screen-list article,.system-health-grid,.system-control-grid,.role-matrix-grid,.account-workspace,.account-card,.account-filter-panel,.list-builder-grid,.connections-grid,.connection-stats,.statistics-hero-grid,.statistics-layout,.statistics-layout.three,.observation-metrics,.status-legend,.followup-card,.withdrawn-card,.audit-card,.administrative-student-card,.digital-card-log article,.digital-card-row,.quick-link-grid,.quick-link-actions,.maintenance-grid,.operations-guide-grid,.guide-link-row,.role-guide-grid,.school-mode-grid,.public-site-hero,.regulation-layout,.public-access-grid,.public-welcome-card,.public-section-switcher,.public-announcement-list article,.public-info-grid,.mission-vision-grid,.document-button-grid,.public-schedules,.public-contact-grid,.public-careers-header,.public-identity-editor,.public-save-bar,.backup-panel,.scanner-panel,.scan-result,.daily-close-panel,.parent-login,.session-bar,.family-student-grid,.teacher-screen-header,.student-status,.student-row{grid-template-columns:1fr}.superadmin-hero{padding:20px}.superadmin-hero>img{width:92px;height:92px}.superadmin-hero h1{font-size:42px}.superadmin-hero-stats,.admin-tabs,.quick-link-tools{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-link-tools label{grid-column:1/-1}.list-builder-actions{grid-template-columns:1fr;align-items:stretch;display:grid}.list-builder-actions button{justify-content:center;width:100%}.list-scope-grid,.list-preset-row,.list-field-grid{grid-template-columns:1fr}.daily-stat-list button>div:first-child{flex-direction:column;align-items:flex-start}.administrative-student-summary,.condition-overview,.condition-quick-actions,.correction-academic-grid,.condition-editor{grid-template-columns:1fr}.condition-quick-actions{flex-direction:column}.porter-attention-card{grid-template-columns:1fr;padding:14px}.porter-attention-card .alert-resolution-form{width:100%}.regulation-shell{padding:18px 14px 34px}.regulation-sidebar{max-height:none;position:static}.regulation-index{max-height:360px;overflow:auto}.regulation-reader{min-height:auto}.regulation-reader-header,.regulation-reader-footer{flex-direction:column;align-items:stretch}.regulation-reader-header>span,.regulation-reader-footer button,.regulation-reader-footer span{justify-content:center;width:100%}.editor-panel{position:static}.public-careers-header{display:grid}.cloud-save-panel{align-items:stretch;display:grid}.cloud-save-panel button{width:100%}.public-entry-shell{padding:18px 14px 40px}.public-entry-hero{text-align:center;padding:24px 18px}.entry-logo-mark{width:86px;height:86px}.entry-hero-logo-area:before{width:118px;height:118px}.entry-hero-logo-area:after{display:none}.school-mode-card{min-height:auto;padding:22px}.mode-card-top{align-items:flex-start;gap:12px}.student-status{align-items:stretch;gap:18px;display:grid}.session-bar{align-items:stretch;gap:16px;display:grid}.session-actions{justify-items:stretch}.student-status>div,.last-event{width:100%;min-width:0}.student-status h2{overflow-wrap:anywhere;font-size:clamp(30px,8vw,42px)}.parent-section-switcher{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:-4px}.last-event{box-sizing:border-box}.portal-access-actions,.student-card-actions,.pwa-install-card{justify-content:stretch;display:grid}.portal-access-actions,.student-card-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.pwa-install-card{text-align:left;grid-template-columns:1fr;padding:16px}.pwa-install-icon{width:48px;height:48px}.pwa-install-actions,.portal-access-actions .secondary-login-link,.student-card-actions .secondary-login-link{width:100%;min-width:0}.digital-id-body{grid-template-columns:104px 1fr;align-items:start}.digital-id-body .student-card-photo{max-width:104px;min-height:104px}.digital-id-card{border-left-width:0;border-top:8px solid var(--institution-color,var(--blue))}.digital-id-institution,.digital-id-body,.digital-id-card>.helper-text{padding-left:18px;padding-right:18px}.digital-id-institution{flex-wrap:wrap;align-items:stretch}.digital-id-institution button{width:100%}.digital-id-details{grid-template-columns:repeat(2,minmax(0,1fr))}.digital-barcode{margin-left:18px;margin-right:18px}.digital-id-validity{flex-direction:column;align-items:stretch;margin-left:18px;margin-right:18px}.institution-preview{grid-template-columns:64px 1fr}.institution-preview button{grid-column:1/-1}.session-actions{place-items:stretch stretch}.live-indicator{white-space:normal;justify-content:center}.row-actions{flex-wrap:wrap}.connection-card,.security-stats,.security-card{grid-template-columns:1fr}.security-card>span{justify-self:start}.maintenance-card{flex-direction:column;align-items:stretch}.quick-link-actions a,.quick-link-actions button{width:100%}.teacher-screen-actions{justify-content:flex-start}.public-site-nav,.public-site-nav nav{flex-direction:row;align-items:center}.public-site-nav{justify-content:space-between;gap:10px}.public-site-nav nav{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.public-site-nav a,.public-site-nav button{background:#f5fbf6;border:1px solid #1f7a4b29;border-radius:999px;padding:8px 10px;font-size:13px;line-height:1}.public-site-hero{text-align:center;gap:16px;padding:22px}.public-logo-mark{justify-self:center;width:42vw;max-width:128px}.public-site-hero h1{font-size:clamp(36px,13vw,54px)}.public-site-hero p{font-size:17px}.public-site-hero span{justify-content:center}.public-value-strip{grid-template-columns:1fr}.public-schedules{align-items:stretch}.schedule-directory-header,.schedule-pick-panel,.schedule-level-tabs,.schedule-section-grid,.schedule-detail-heading,.schedule-now-banner,.schedule-day-grid{grid-template-columns:1fr}.schedule-directory-header>span{justify-self:start}.schedule-directory-header a{width:100%}.schedule-level-tabs{grid-template-columns:repeat(3,1fr)}.schedule-section-grid a{min-height:96px}.schedule-detail-heading a{justify-content:center;width:100%}.public-access-grid{gap:8px}.public-access-grid a,.public-access-grid button{text-align:left;grid-template-columns:auto 1fr;min-height:auto;padding:10px 12px}.public-access-grid a>span,.public-access-grid button>span{grid-row:span 2}.uniform-content-grid{grid-template-columns:1fr}.uniform-content-grid.reverse .uniform-illustration{order:0}.uniform-hero{align-items:flex-start}.uniform-illustration{padding:10px}.public-contact-strip{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;display:grid}.public-contact-strip a,.public-contact-strip button{border-radius:9px;justify-content:center;width:100%;min-height:44px;padding:8px}.announcements-mobile-topbar{align-items:stretch;gap:10px;margin-bottom:18px}.announcements-mobile-topbar>strong{text-align:center;font-size:14px}.announcements-mobile-topbar .topbar-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.announcements-mobile-topbar .topbar-actions a{justify-content:center;min-height:36px;padding:0 10px}.announcements-mobile-heading{margin-bottom:14px;padding:16px}.announcements-mobile-heading h1{font-size:clamp(28px,8.5vw,38px);line-height:1}.announcements-mobile-heading .access-note,.announcements-mobile-heading>p:last-child{font-size:15px;line-height:1.45}.announcements-admin.single-panel{flex-direction:column;gap:14px;margin-top:14px;padding:12px;display:flex}.announcement-composer{order:1;gap:12px}.announcements-mobile-list{order:2}.announcement-composer>div:first-child,.announcement-form,.announcements-mobile-list{padding:14px}.announcement-composer>div:first-child{display:none}.announcement-form textarea{min-height:170px}.announcement-form button{width:100%;min-height:52px}.announcements-mobile-list .connections-header{align-items:center}.announcements-mobile-list .connections-header h2{font-size:22px}.announcement-card{padding:14px}.announcement-card .ghost{justify-content:center;width:100%;margin-top:12px}}@media (max-width:1180px){.teacher-document-card,.teacher-documents-toolbar{grid-template-columns:1fr}.teacher-document-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-early-alert-toolbar{grid-template-columns:1fr}.admin-early-alert-toolbar .assistant-ii-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-early-alert-toolbar .assistant-ii-filters button{width:100%}.admin-workspace{grid-template-columns:1fr}.admin-workspace .table-panel,.admin-workspace .editor-panel{max-height:none;overflow:visible}.table-panel{overflow:hidden}.student-row{grid-template-columns:minmax(150px,1.2fr) 74px minmax(140px,1fr) 96px 112px}}@media (max-width:860px){.teacher-documents-summary,.teacher-document-actions,.admin-early-alert-toolbar .assistant-ii-filters,.student-row{grid-template-columns:1fr}.row-actions{justify-content:flex-start}}@media (max-width:560px){.shell{padding:18px}.hero{padding-top:30px}.actions,.history-header{flex-direction:column;align-items:stretch}.form-grid,.family-linked-list article,.list-field-grid,.password-editor{grid-template-columns:1fr}.family-link-header,.family-overview-toolbar{grid-template-columns:1fr;align-items:stretch}.family-manager-layout,.family-editor-columns,.family-editor-student-list article{grid-template-columns:1fr}.family-editor-workspace{position:static}.family-overview-card-header,.family-overview-actions{flex-direction:column;align-items:stretch}.family-overview-card-header>strong,.family-overview-actions button,.family-editor-row-actions button,.family-editor-actions button,.family-editor-actions .secondary-login-link,.family-count-badge{justify-content:center;width:100%}.family-link-header button,.family-linked-list button{grid-area:auto/1;width:100%}.photo-crop-workspace{grid-template-columns:1fr}.superadmin-hero{gap:16px;padding:18px}.superadmin-hero h1{font-size:36px}.superadmin-hero p{font-size:15px}.superadmin-hero-stats,.admin-tabs,.quick-link-tools{grid-template-columns:1fr}.quick-link-filters{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.quick-link-filters button{width:100%}.admin-tabs button{min-height:46px}}@media (max-width:860px){.regulation-shell{height:auto;min-height:100vh;padding:14px;display:block;overflow:visible}.regulation-top-nav{margin-bottom:12px}.regulation-commandbar{align-items:stretch;gap:14px;margin-bottom:12px;padding:16px;display:grid}.regulation-commandbar h1{font-size:clamp(30px,9vw,42px)}.regulation-commandbar p:not(.eyebrow){font-size:15px}.regulation-hero-actions{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.regulation-hero-actions a,.regulation-hero-actions button{white-space:normal;justify-content:center;min-width:0;padding-left:10px;padding-right:10px}.regulation-mobile-index{display:inline-flex}.regulation-layout{height:auto;min-height:0;display:block}.regulation-sidebar{z-index:80;border-radius:0 16px 16px 0;width:100%;max-width:min(88vw,360px);height:100vh;padding:16px;transition:transform .18s;position:fixed;top:0;bottom:0;left:0;transform:translate(-108%);box-shadow:18px 0 80px #07110d3d}.regulation-sidebar.open{transform:translate(0)}.regulation-sidebar-title button{display:inline-flex}.regulation-reader{height:auto;min-height:0}.regulation-reader-header{align-items:stretch;display:grid}.regulation-page-body{max-height:none;padding-right:0;overflow:visible}.regulation-reader-footer{position:static}}@media (max-width:560px){.regulation-hero-actions{grid-template-columns:1fr}.regulation-layout{height:auto}.regulation-reader{border-radius:14px;padding:16px}.regulation-reader-header h2{font-size:28px}.regulation-page-body p{font-size:15px}.regulation-reader-footer{background:#fffffff0;border:1px solid #1f7a4b1f;border-radius:14px;padding:10px}}.public-welcome-card{background:radial-gradient(circle at 8% 0,#1f7a4b14,#0000 34%),linear-gradient(135deg,#fffffffa,#f6fbf8f5);border-color:#1f7a4b2e;border-radius:18px;grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:stretch;gap:24px;padding:24px;box-shadow:0 18px 55px #152b2214}.public-welcome-card>div:first-child{align-content:start;min-height:190px;display:grid}.public-welcome-card .eyebrow{color:#0f5d3b;letter-spacing:0;font-size:12px}.public-welcome-card h2{margin-bottom:8px;font-size:clamp(30px,3.2vw,44px);line-height:.96}.public-welcome-card p{max-width:720px}.public-contact-strip{align-self:end;gap:10px;margin-top:18px}.public-contact-strip a,.public-contact-strip button{background:#eef9f2;border-color:#1f7a4b3d;box-shadow:0 10px 25px #1f7a4b14}.public-contact-strip a:hover,.public-contact-strip button:hover{background:#fff;border-color:#1f7a4b6b;transform:translateY(-1px)}.public-announcement-list{background:linear-gradient(#f0faf4f2,#fffffff5);border-color:#1f7a4b2e;border-radius:16px;padding:14px;box-shadow:inset 0 1px #ffffffe6}.public-announcement-list h3{justify-content:space-between;align-items:center;display:flex}.public-announcement-list h3:after{color:#0f5d3b;content:"Vigentes";background:#dff5e8;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800}.public-announcement-list article{cursor:pointer;background:#fff;border-color:#1f7a4b24;border-left-width:6px;border-radius:12px;transition:transform .16s,box-shadow .16s,border-color .16s;box-shadow:0 12px 26px #13271f0f}.public-announcement-list article:hover{border-color:#1f7a4b57;transform:translateY(-2px);box-shadow:0 16px 34px #13271f1a}.public-access-grid{gap:14px;margin-top:18px}.public-access-grid a{background:linear-gradient(135deg,#fffffffa,#f8fcfafa);border-color:#1f7a4b2e;border-radius:16px;min-height:84px;padding:18px;box-shadow:0 14px 36px #13271f12}.public-access-grid a:after{content:"";background:linear-gradient(#1f7a4b,#0d5d3a);border-radius:999px;width:4px;position:absolute;top:16px;bottom:16px;right:16px}.public-access-grid a>span{color:#0f6b43;background:#e9f8ef;border-color:#1f7a4b2e;border-radius:14px;width:44px;height:44px}.public-access-grid a strong{font-size:19px}.public-section-switcher{background:#ffffffc7;border:1px solid #1f7a4b24;border-radius:18px;gap:8px;margin-top:18px;padding:8px;box-shadow:0 12px 38px #13271f0f}.public-section-switcher button{border-radius:13px;min-height:48px}.public-section-switcher button.active{background:linear-gradient(135deg,#0f3f2c,#146d46);box-shadow:0 12px 24px #146d4638}.public-section-panel{border-color:#1f7a4b29;border-radius:18px;box-shadow:0 18px 45px #13271f0f}.public-info-grid article{border-top:4px solid #2c8d5a;box-shadow:0 12px 30px #13271f0f}.mission-vision-panel{background:linear-gradient(135deg,#f3faf6fa,#fffffff5);border-color:#1f7a4b2e;border-radius:18px}.mission-vision-heading{border-bottom-color:#1f7a4b24}.mission-vision-heading h2{font-size:clamp(24px,2.2vw,34px)}.mission-vision-grid article{background:#fff;border-left-width:5px;box-shadow:0 12px 30px #13271f0f}@media (max-width:860px){.public-welcome-card{grid-template-columns:1fr;gap:18px;padding:18px}.public-welcome-card>div:first-child{min-height:0}.public-contact-strip{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.public-access-grid{grid-template-columns:1fr}.public-section-switcher{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.public-section-switcher button{justify-content:space-between;width:100%}.mission-vision-heading{align-items:start;gap:4px;display:grid}}@media (max-width:560px){.public-welcome-card{border-radius:16px}.public-welcome-card h2{font-size:29px;line-height:1}.public-contact-strip,.public-section-switcher{grid-template-columns:1fr}.public-access-grid a{min-height:72px;padding:14px}.public-access-grid a strong{font-size:17px}.public-announcement-list h3:after{display:none}}@keyframes publicHeroLogoIntro{0%{opacity:0;transform:translateY(14px)scale(.76)}58%{opacity:1;transform:translateY(-3px)scale(1.06)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes publicHeroTextIntro{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes publicHeroGlow{0%,to{transform:skew(-18deg)translate(60%)}50%{transform:skew(-18deg)translate(42%)}}@keyframes publicCardIntro{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.public-site-hero.is-loaded:after{animation:10s ease-in-out infinite publicHeroGlow}.public-site-hero.is-loading .public-logo-mark,.public-site-hero.is-loading>div:last-child{opacity:0}.public-site-hero.is-loaded .public-logo-mark{transform-origin:50%;animation:.85s cubic-bezier(.2,.8,.2,1) both publicHeroLogoIntro}.public-site-hero.is-loaded>div:last-child .eyebrow,.public-site-hero.is-loaded>div:last-child h1,.public-site-hero.is-loaded>div:last-child p,.public-site-hero.is-loaded>div:last-child span{animation:.68s both publicHeroTextIntro}.public-site-hero.is-loaded>div:last-child .eyebrow{animation-delay:.12s}.public-site-hero.is-loaded>div:last-child h1{animation-delay:.21s}.public-site-hero.is-loaded>div:last-child p{animation-delay:.31s}.public-site-hero.is-loaded>div:last-child span{animation-delay:.41s}@media (prefers-reduced-motion:reduce){.public-site-hero:after,.public-logo-mark,.public-site-hero>div:last-child .eyebrow,.public-site-hero>div:last-child h1,.public-site-hero>div:last-child p,.public-site-hero>div:last-child span{animation:none}}.public-site-shell{background:radial-gradient(circle at 12% 18%,#1f7a4b0e,#0000 24%),radial-gradient(circle at 88% 12%,#2767a30b,#0000 26%),linear-gradient(#f7fbf8,#f2f7f4 46%,#f8fbf9)}.public-site-hero{isolation:isolate}.public-site-hero:before{content:"";opacity:.6;z-index:2;background:linear-gradient(90deg,#0000,#ffffffeb,#0000);width:30%;height:6px;position:absolute;top:-6px;left:-32%;right:auto;transform:skew(-28deg)}.public-site-hero.is-loaded:before{animation:5.8s ease-in-out 1.1s infinite publicHeroShine}@keyframes publicHeroShine{0%,55%{left:-32%}to{left:104%}}.public-value-strip article,.public-access-grid a,.public-section-panel{animation:.56s both publicCardIntro}.public-value-strip article:first-child{animation-delay:80ms}.public-value-strip article:nth-child(2){animation-delay:.15s}.public-value-strip article:nth-child(3){animation-delay:.22s}.public-access-grid a:first-child{animation-delay:.12s}.public-access-grid a:nth-child(2){animation-delay:.19s}.public-access-grid a:nth-child(3){animation-delay:.26s}.public-value-strip article{transition:border-color .16s,box-shadow .16s,transform .16s}.public-value-strip article:hover{border-color:#1f7a4b47;transform:translateY(-2px);box-shadow:0 18px 36px #13271f1a}.public-value-strip article svg,.public-section-switcher button svg,.public-access-grid a svg{transition:color .16s,transform .16s}.public-value-strip article:hover svg,.public-section-switcher button:hover svg,.public-access-grid a:hover svg{color:#0f7f4d;transform:scale(1.08)}.public-section-switcher button{position:relative;overflow:hidden}.public-section-switcher button:after{content:"";opacity:0;background:linear-gradient(90deg,#1f7a4b,#2767a3);border-radius:999px;height:3px;transition:opacity .16s,transform .16s;position:absolute;bottom:7px;left:14px;right:14px;transform:scaleX(.45)}.public-section-switcher button:not(.active):hover:after{opacity:.45;transform:scaleX(1)}.public-section-switcher button.active:after{opacity:1;background:#ffffffbd;transform:scaleX(1)}@media (prefers-reduced-motion:reduce){.public-site-hero.is-loaded:before,.public-value-strip article,.public-access-grid a,.public-section-panel{animation:none}.public-value-strip article:hover,.public-value-strip article:hover svg,.public-section-switcher button:hover svg,.public-access-grid a:hover svg{transform:none}}.regulation-top-nav,.regulation-commandbar,.regulation-layout{box-sizing:border-box;width:min(100%,1180px)}.regulation-commandbar{border-radius:18px;padding:16px 20px}.regulation-commandbar h1{font-size:clamp(30px,3.1vw,42px);line-height:1.02}.regulation-hero-actions a,.regulation-hero-actions button{min-height:42px;padding:9px 16px}.regulation-reader-header h2{max-width:760px;font-size:clamp(26px,2.35vw,34px);line-height:1.08}.regulation-reader-header{gap:28px}.regulation-reader-header>span{margin-top:4px}.regulation-reader-cover{background:radial-gradient(circle at 0 0,#1f7a4b0f,#0000 32%),#fffffff2}.regulation-reader-cover .regulation-reader-header{align-items:start}.regulation-reader-cover .regulation-reader-header h2{max-width:720px;font-size:clamp(30px,3vw,42px);line-height:1}.regulation-cover-subtitle{color:#52675e;text-transform:uppercase;max-width:720px;margin:12px 0 0;font-size:clamp(15px,1.25vw,18px);font-weight:900;line-height:1.45}.regulation-reader-cover .regulation-page-body{background:linear-gradient(#f7fcf9,#fff);border:1px solid #1f7a4b24;border-left:5px solid #1f7a4b;border-radius:16px;padding:18px}.regulation-reader-cover .regulation-page-body p{font-size:16px;line-height:1.82}.regulation-index button,.regulation-search-results button{white-space:normal;grid-template-columns:42px minmax(0,1fr);align-items:start;min-height:58px;padding:11px 12px;line-height:1.2;overflow:visible}.regulation-index button span{width:34px;height:30px;margin-top:1px}.regulation-index button.active{min-height:70px}.regulation-index button:first-child{min-height:58px;font-size:15px}.regulation-index button:first-child.active{min-height:58px}.regulation-index button.active span{background:#fff3}.regulation-sidebar{overflow:hidden}.regulation-index,.regulation-search-results{scrollbar-gutter:stable}@media (max-width:860px){.institution-services-grid{grid-template-columns:1fr}.institution-services-grid article{grid-template-columns:auto 1fr;gap:4px 14px;display:grid}.institution-services-grid svg{grid-row:span 2;margin-bottom:0}.regulation-top-nav,.regulation-commandbar,.regulation-layout{width:100%}.regulation-reader-header h2{max-width:none;font-size:clamp(26px,7vw,36px)}}@media (max-width:560px){.regulation-commandbar h1{font-size:30px}.regulation-index button,.regulation-search-results button{min-height:56px}}.regulation-locked-shell{align-items:center}.regulation-access-card{text-align:center;background:radial-gradient(circle at 10% 0,#1f7a4b1a,#0000 30%),linear-gradient(135deg,#f5fbf7fa,#fffffffa);border:1px solid #1f7a4b2e;border-top:6px solid #176b42;border-radius:22px;width:min(100%,560px);max-width:560px;margin:48px auto 0;padding:clamp(28px,5vw,42px);box-shadow:0 26px 70px #112f211a}.regulation-access-mark{color:#176b42;background:#eef8f2;border:1px solid #1f7a4b2e;border-radius:18px;justify-content:center;align-items:center;width:68px;height:68px;margin-bottom:18px;display:inline-flex}.regulation-access-mark svg{width:32px;height:32px}.regulation-access-card h1{margin:4px 0 12px;font-size:clamp(34px,6vw,54px);line-height:1}.regulation-access-card>p{color:var(--muted);max-width:430px;margin:0 auto 22px;line-height:1.55}.regulation-access-form{text-align:left;gap:10px;display:grid}.regulation-access-form label{color:#52675e;font-weight:900}.regulation-access-form input{font:inherit;border:1px solid #225d3e38;border-radius:12px;min-height:52px;padding:0 14px;font-size:18px;font-weight:800}.regulation-access-form strong{color:#8a2d18;background:#fff1ec;border:1px solid #f2c4b7;border-radius:10px;padding:10px 12px}.regulation-access-form button{background:var(--ink);color:#fff;cursor:pointer;font:inherit;border:0;border-radius:12px;justify-content:center;align-items:center;gap:10px;min-height:54px;margin-top:6px;font-weight:900;display:inline-flex}.regulation-access-form button svg{width:21px;height:21px}.public-entry-shell{background:radial-gradient(circle at 8% 12%,#1f7a4b13,#0000 28%),radial-gradient(circle at 88% 2%,#2767a30e,#0000 28%),linear-gradient(#f7fbf8,#f2f7f4);min-height:100vh}.public-entry-hero{isolation:isolate;background:linear-gradient(135deg,#e8f8eff5,#fffffff5 56%,#eff7f2fa);border-color:#1f7a4b #1f7a4b3d #1f7a4b3d;border-top-style:solid;border-top-width:6px;border-radius:22px;grid-template-columns:minmax(108px,180px) minmax(0,1fr);align-items:center;padding:clamp(30px,5vw,58px);box-shadow:0 28px 80px #112f211a}.public-entry-hero:after{content:"";z-index:-1;background:linear-gradient(135deg,#1f7a4b14,#cc9d3014);width:42%;position:absolute;top:0;bottom:0;right:0;transform:skew(-18deg)translate(58%)}.public-entry-hero.is-loading .entry-logo-mark,.public-entry-hero.is-loading .entry-hero-copy{opacity:0}.public-entry-hero.is-loaded .entry-logo-mark{animation:.85s cubic-bezier(.2,.8,.2,1) both publicHeroLogoIntro}.public-entry-hero.is-loaded .entry-hero-copy .eyebrow,.public-entry-hero.is-loaded .entry-hero-copy h1,.public-entry-hero.is-loaded .entry-hero-copy p:last-child{animation:.68s both publicHeroTextIntro}.public-entry-hero.is-loaded .entry-hero-copy .eyebrow{animation-delay:.12s}.public-entry-hero.is-loaded .entry-hero-copy h1{animation-delay:.21s}.public-entry-hero.is-loaded .entry-hero-copy p:last-child{animation-delay:.31s}.entry-hero-logo-area{justify-content:flex-start}.entry-hero-logo-area:before,.entry-hero-logo-area:after{display:none}.entry-logo-mark{width:clamp(104px,13vw,150px);height:clamp(104px,13vw,150px)}.entry-logo-mark img{filter:drop-shadow(0 18px 22px #0f2c1e29);transform:scale(1.08)}.entry-hero-copy{max-width:780px;padding-left:0}.entry-hero-copy .eyebrow{color:#0f5d3b}.public-entry-hero h1{margin-bottom:16px;font-size:clamp(44px,6.2vw,78px);line-height:.96}.public-entry-hero p:last-child{font-size:clamp(17px,1.7vw,21px)}.school-mode-grid{gap:22px;margin-top:26px}.school-mode-card{border-radius:18px;min-height:300px;padding:28px;box-shadow:0 22px 60px #112f2114}.school-mode-card:after{content:"";pointer-events:none;background:radial-gradient(circle at 100% 0,#1f7a4b14,#0000 34%);position:absolute;inset:0}.school-mode-card.night:after{background:radial-gradient(circle at 100% 0,#24364f14,#0000 34%)}.school-mode-card.day:hover{transform:translateY(-3px);box-shadow:0 28px 70px #112f2121}.mode-icon{border-radius:16px;width:58px;height:58px}.mode-status{box-shadow:inset 0 1px #fffc}.school-mode-card h2{font-size:clamp(42px,5vw,64px)}.school-mode-card>strong{border-radius:12px;transition:background .16s,transform .16s;box-shadow:0 12px 28px #112f211f}.school-mode-card.day:hover>strong{background:#0f3f2c;transform:translateY(-1px)}.school-mode-card.night{background:linear-gradient(#ffffffeb,#f9fbfdf5)}.school-mode-card.available-night{opacity:1;border-color:#222f5e3d}.school-mode-card.available-night:before{background:linear-gradient(90deg,#222f5e,#2f427d)}.school-mode-card.available-night:after{background:radial-gradient(circle at 100% 0,#222f5e1a,#0000 34%)}.school-mode-card.available-night:hover{border-color:#222f5e6b;transform:translateY(-3px);box-shadow:0 28px 70px #222f5e24}.school-mode-card.available-night .mode-icon{background:#eef2fb;border-color:#222f5e2e}.school-mode-card.available-night .mode-icon svg{color:#222f5e}.mode-status.night-ready{color:#222f5e;background:#eef2fb}.school-mode-card.available-night>strong{color:#fff;background:#222f5e}.school-mode-card.available-night:hover>strong{background:#182446;transform:translateY(-1px)}.school-mode-card.available-night>strong svg{transition:transform .16s}.school-mode-card.available-night:hover>strong svg{transform:translate(4px)}.portal-entry-shell{gap:22px;max-width:1180px;margin:0 auto;padding:32px 22px 54px;display:grid}.portal-entry-hero{min-height:360px;overflow:hidden}.portal-logo-area{align-self:stretch;align-items:center;display:flex}.portal-logo-mark{background:linear-gradient(#fffffffa,#eef8f2f5);border:1px solid #1f7a4b33;border-radius:24px;justify-content:center;align-items:center;padding:16px;display:flex;box-shadow:0 24px 54px #112f2124,inset 0 1px #fffffff5}.portal-logo-mark img{object-fit:contain;width:100%;height:100%;max-height:132px}.portal-hero-actions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.portal-primary-action,.portal-secondary-action{border-radius:12px;align-items:center;gap:10px;min-height:48px;padding:0 18px;font-weight:900;text-decoration:none;display:inline-flex}.portal-primary-action{color:#fff;background:#10241b}.portal-secondary-action{color:#0f5d3b;background:#1f7a4b17;border:1px solid #1f7a4b38}.portal-access-panel,.portal-service-panel,.portal-staff-panel{background:#ffffffeb;border:1px solid #1f7a4b29;border-radius:18px;padding:22px;box-shadow:0 20px 55px #112f2114}.portal-panel-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.portal-panel-head.compact{margin-bottom:14px}.portal-panel-head h2,.portal-staff-panel h2{color:#10241b;margin:0;font-size:clamp(1.6rem,3vw,2.35rem);line-height:1}.portal-panel-head>span{color:#0f5d3b;white-space:nowrap;border:1px solid #1f7a4b33;border-radius:999px;padding:8px 12px;font-size:.78rem;font-weight:900}.portal-access-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.portal-access-card{color:#10241b;border:1px solid #1f7a4b29;border-radius:16px;gap:12px;min-height:218px;padding:18px;text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid;position:relative}.portal-access-card:hover{border-color:#1f7a4b61;transform:translateY(-2px);box-shadow:0 18px 44px #112f211a}.portal-access-card.day{background:linear-gradient(#e9f7eff0,#fffffff7)}.portal-access-card.night{background:linear-gradient(#eef2fbf0,#fffffff7)}.portal-access-card.family{background:linear-gradient(#eff8f4f0,#fffffff7)}.portal-access-card.card{background:linear-gradient(#fff9e6e6,#fffffff7)}.portal-card-icon,.portal-service-link>span{color:#0f6b43;background:#eef8f2;border:1px solid #1f7a4b2e;border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex}.portal-card-icon svg,.portal-service-link svg,.portal-staff-list svg{width:22px;height:22px}.portal-access-card strong{font-size:1.35rem;line-height:1;display:block}.portal-access-card p,.portal-service-link p,.portal-staff-panel p{color:#52665d;margin:0}.portal-access-card small{color:#0f5d3b;align-items:center;gap:8px;margin-top:auto;font-size:.84rem;font-weight:900;display:inline-flex}.portal-lower-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:16px;display:grid}.portal-lower-grid-single{grid-template-columns:1fr}.portal-service-list,.portal-staff-list{gap:10px;display:grid}.portal-service-link{color:#10241b;background:#f8fbf9;border:1px solid #d5e2dc;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;text-decoration:none;transition:background .16s,border-color .16s;display:grid}.portal-service-link:hover{background:#eef8f2;border-color:#1f7a4b47}.portal-service-link strong{margin-bottom:3px;display:block}.portal-service-link>svg{color:#0f5d3b}.portal-staff-panel{background:linear-gradient(#10241bf5,#0e1f18fa);border-color:#ffffff14}.portal-staff-panel .eyebrow,.portal-staff-panel h2{color:#fff}.portal-staff-panel p{color:#ffffffb8}.portal-staff-list a{color:#fff;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:10px;min-height:48px;padding:0 14px;font-weight:900;text-decoration:none;display:flex}.portal-staff-list a:hover{background:#ffffff1a}@media (max-width:980px){.portal-entry-hero{grid-template-columns:1fr;min-height:auto}.portal-access-grid,.portal-lower-grid{grid-template-columns:1fr 1fr}.portal-staff-panel{grid-column:1/-1}}@media (max-width:680px){.portal-entry-shell{padding:18px 12px 36px}.portal-entry-hero{padding:24px 18px}.portal-logo-mark{width:112px;height:112px}.public-entry-hero h1{font-size:clamp(2.15rem,11vw,3.3rem)}.portal-access-grid,.portal-lower-grid{grid-template-columns:1fr}.portal-panel-head{flex-direction:column;align-items:stretch}.portal-panel-head>span{width:fit-content}.portal-hero-actions,.portal-primary-action,.portal-secondary-action{width:100%}.portal-primary-action,.portal-secondary-action{justify-content:space-between}.portal-service-link{grid-template-columns:auto minmax(0,1fr)}.portal-service-link>svg{display:none}}.night-public-shell{color:var(--ink);background:radial-gradient(circle at 9% 12%,#222f5e1a,#0000 28%),radial-gradient(circle at 90% 4%,#1f7a4b12,#0000 26%),linear-gradient(#f7f8fc,#f4f8f5);max-width:1180px;min-height:100vh;margin:0 auto;padding:32px 22px 56px}.night-public-nav{border-bottom:1px solid #222f5e24;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:12px;display:flex}.night-public-nav nav{gap:14px;display:flex}.night-public-nav a{color:#21152c;font-weight:800}.night-public-nav a[aria-disabled=true]{color:#786984;cursor:not-allowed}.night-section-switcher{border-color:#222f5e2e;box-shadow:0 12px 38px #222f5e0f}.night-section-switcher a{color:#21152c;background:#fff;border:1px solid #222f5e29;border-radius:13px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:10px;font-size:13px;font-weight:800;display:flex}.night-section-switcher a.active{color:#fff;background:linear-gradient(135deg,#222f5e,#2f427d);border-color:#222f5e;box-shadow:0 12px 24px #222f5e38}.night-section-switcher svg{width:18px;height:18px}.night-section-panel{border-color:#222f5e29}.night-section-panel .public-info-grid article{border-color:#222f5e #222f5e24 #222f5e24}.night-section-panel .mission-vision-panel{background:linear-gradient(135deg,#f7f8fcfa,#fffffff5);border-color:#222f5e #222f5e2e #222f5e2e}.night-section-panel .mission-vision-heading{border-bottom-color:#222f5e24}.night-section-panel .mission-vision-grid article{border-color:#222f5e1f #222f5e1f #222f5e1f #222f5e}.night-section-panel .mission-vision-grid small{color:#222f5e}.night-section-panel .institution-services-panel{background:linear-gradient(135deg,#fffffff5,#f7f9fcfa);border-color:#222f5e29 #222f5e29 #222f5e29 #222f5e;border-left-style:solid;border-left-width:5px;gap:16px;padding:clamp(18px,2.4vw,24px);box-shadow:0 14px 32px #222f5e0f}.night-section-panel .institution-services-heading{border-bottom-color:#222f5e1f;padding-bottom:12px}.night-section-panel .institution-services-heading h2{max-width:680px;font-size:clamp(24px,2.5vw,34px)}.night-section-panel .institution-services-heading p:last-child{max-width:720px}.night-section-panel .institution-services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.night-section-panel .institution-services-grid article{box-shadow:none;border-color:currentColor #222f5e24 #222f5e24 #222f5e;border-top-style:none;border-top-width:0;border-left-style:solid;border-left-width:4px;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:14px;display:grid}.night-section-panel .institution-services-grid svg{color:#222f5e;background:#eef2fb;border-color:#222f5e29;width:38px;height:38px;margin:0}.night-section-panel .institution-services-grid h3{margin-bottom:4px;font-size:17px}.night-section-panel .institution-services-grid p{line-height:1.42}.night-section-panel .night-dedication-card{background:linear-gradient(135deg,#eef2fbf5,#fffffffa),#fff;border-color:#222f5e2e #222f5e2e #222f5e2e #222f5e}.night-section-panel .night-dedication-card .institution-dedication-header{border-bottom-color:#222f5e24}.night-site-footer{border-top-color:#222f5e24}.night-site-footer strong{color:#222f5e}.night-public-hero{background:linear-gradient(135deg,#eef2fbfa,#fffffff7 58%,#f0f9f4fa);border:1px solid #222f5e38;border-top:6px solid #222f5e;border-radius:14px;grid-template-columns:minmax(150px,210px) minmax(0,1fr);align-items:center;gap:clamp(24px,4vw,48px);padding:clamp(28px,4vw,46px);display:grid;position:relative;overflow:hidden;box-shadow:0 28px 80px #222f5e1a}.night-public-hero:after{content:"";background:linear-gradient(135deg,#222f5e17,#1f7a4b14);width:42%;position:absolute;top:0;bottom:0;right:0;transform:skew(-18deg)translate(58%)}.night-public-hero:before{content:"";opacity:.62;z-index:2;background:linear-gradient(90deg,#0000,#ffffffeb,#0000);width:30%;height:6px;position:absolute;top:-6px;left:-32%;transform:skew(-28deg)}.night-public-hero.is-loaded:before{animation:5.8s ease-in-out 1.1s infinite publicHeroShine}.night-public-hero.is-loaded:after{animation:10s ease-in-out infinite publicHeroGlow}.night-hero-logo,.night-hero-copy{z-index:1;position:relative}.night-hero-logo{justify-content:center;align-items:center;display:flex}.night-hero-logo img{filter:drop-shadow(0 18px 22px #222f5e24);object-fit:contain;width:min(170px,100%);max-height:170px}.night-public-hero.is-loaded .night-hero-logo{transform-origin:50%;animation:.85s cubic-bezier(.2,.8,.2,1) both publicHeroLogoIntro}.night-public-hero.is-loaded .night-hero-copy .eyebrow,.night-public-hero.is-loaded .night-hero-copy h1,.night-public-hero.is-loaded .night-hero-copy p,.night-public-hero.is-loaded .night-location{animation:.68s both publicHeroTextIntro}.night-public-hero.is-loaded .night-hero-copy .eyebrow{animation-delay:.12s}.night-public-hero.is-loaded .night-hero-copy h1{animation-delay:.21s}.night-public-hero.is-loaded .night-hero-copy p{animation-delay:.31s}.night-public-hero.is-loaded .night-location{animation-delay:.41s}.night-hero-copy{max-width:760px}.night-hero-copy .eyebrow,.night-public-shell .eyebrow{color:#222f5e}.night-hero-copy h1{max-width:820px;margin-bottom:14px;font-size:clamp(36px,4.8vw,62px);line-height:1.04}.night-hero-copy p{color:#5f6d65;max-width:720px;margin-bottom:0;font-size:clamp(16px,1.6vw,20px);line-height:1.55}.night-hero-actions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.night-hero-actions a{color:#fff;background:#222f5e;border:1px solid #222f5e;border-radius:12px;align-items:center;gap:8px;min-height:46px;padding:0 16px;font-weight:900;display:inline-flex}.night-hero-actions a.secondary{color:#222f5e;background:#fff;border-color:#222f5e38}.night-hero-actions svg{width:18px;height:18px}.night-location{color:#17211d;align-items:center;gap:6px;margin-top:12px;font-weight:800;display:inline-flex}.night-location svg{color:#222f5e;width:18px;height:18px}.night-value-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:16px 0;display:grid}.night-value-strip article{background:#fffffff0;border:1px solid #222f5e24;border-radius:10px;grid-template-columns:auto 1fr;align-items:center;gap:12px;min-height:76px;padding:14px 16px;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid;box-shadow:0 12px 28px #222f5e0e}.night-value-strip article:first-child{animation:.56s 80ms both publicCardIntro}.night-value-strip article:nth-child(2){animation:.56s .15s both publicCardIntro}.night-value-strip article:nth-child(3){animation:.56s .22s both publicCardIntro}.night-value-strip article:hover{border-color:#222f5e4d;transform:translateY(-2px);box-shadow:0 18px 36px #222f5e1a}.night-value-strip svg{color:#222f5e;background:#eef2fb;border:1px solid #222f5e24;border-radius:12px;width:38px;height:38px;padding:9px;transition:color .16s,transform .16s}.night-value-strip article:hover svg{color:#172449;transform:scale(1.08)}.night-value-strip strong,.night-value-strip span{display:block}.night-value-strip strong{font-size:14px;line-height:1.2}.night-value-strip span{color:#5f6d65;margin-top:2px;font-size:12px;line-height:1.25}.night-welcome-card{background:linear-gradient(90deg,#fffffffa,#f7f8fcfa),#fff;border:1px solid #222f5e24;border-radius:14px;grid-template-columns:minmax(0,1fr) minmax(260px,.42fr);gap:18px;margin:16px 0 18px;padding:22px;animation:.56s .18s both publicCardIntro;display:grid;box-shadow:0 16px 42px #222f5e0f}.night-welcome-card h2{margin-bottom:8px;font-size:clamp(30px,4vw,44px);line-height:1}.night-welcome-card p{color:#5f6d65;max-width:760px;margin-bottom:0;line-height:1.55}.night-contact-strip{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.night-contact-strip a{color:#222f5e;background:#f8fafc;border:1px solid #222f5e29;border-radius:999px;align-items:center;gap:8px;min-height:36px;padding:7px 13px;font-size:13px;font-weight:900;transition:background .16s,border-color .16s,box-shadow .16s,transform .16s;display:inline-flex}.night-contact-strip a[aria-disabled=true]{cursor:not-allowed}.night-contact-strip a:hover{background:#eef2fb;border-color:#222f5e47;transform:translateY(-1px);box-shadow:0 10px 22px #222f5e14}.night-contact-strip svg{width:16px;height:16px}.night-contact-strip span{color:#fff;background:#222f5e;border-radius:999px;flex:none;justify-content:center;align-items:center;width:19px;height:19px;font-family:Arial,Helvetica,sans-serif;font-size:12px;font-weight:900;display:inline-flex}.night-announcement-box{background:#f6f8fdeb;border:1px solid #222f5e21;border-radius:12px;gap:14px;padding:16px;animation:.56s .23s both publicCardIntro;display:grid}.night-announcement-box>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.night-announcement-box strong{color:#17211d;font-size:16px}.night-announcement-box>div button{color:#222f5e;cursor:pointer;background:#222f5e1f;border:0;border-radius:999px;width:auto;min-height:40px;padding:8px 14px;font-size:12px;font-weight:900}.night-announcement-box article{cursor:pointer;background:#fff;border:1px solid #222f5e1f;border-left:5px solid #222f5e;border-radius:8px;min-height:66px;padding:12px 14px;transition:border-color .18s,box-shadow .18s,transform .18s}.night-announcement-box article:hover,.night-announcement-box article:focus-visible{border-color:#222f5e4d;outline:none;transform:translateY(-1px);box-shadow:0 12px 24px #222f5e1f}.night-announcement-box small{color:#222f5e;text-transform:uppercase;font-size:12px;font-weight:900;display:block}.night-announcement-box p{color:#5f6d65;margin:4px 0 0;font-size:16px;line-height:1.35}.night-empty-announcements{background:#fff;border:1px dashed #222f5e2e;border-radius:9px;padding:14px}.night-announcement-list-modal{max-width:760px}.night-announcement-full-list{gap:10px;max-height:min(56vh,520px);margin-top:14px;padding-right:4px;display:grid;overflow:auto}.night-announcement-full-list article{cursor:pointer;background:#fff;border:1px solid #222f5e24;border-left:5px solid #222f5e;border-radius:10px;gap:5px;padding:14px 16px;display:grid}.night-announcement-full-list article.urgent,.night-announcement-modal.urgent:before{border-left-color:#b42318}.night-announcement-full-list article.schedule,.night-announcement-modal.schedule:before{border-left-color:#222f5e}.night-announcement-full-list span{color:#222f5e;text-transform:uppercase;font-size:11px;font-weight:950}.night-announcement-full-list strong{color:#17211d;font-size:17px}.night-announcement-full-list p{color:#5f6d65;margin:0;line-height:1.45}.night-announcement-modal:before{background:linear-gradient(#222f5e,#3a4f96)}.night-public-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0;display:grid}.night-public-strip article,.night-panel{background:#ffffffeb;border:1px solid #222f5e24;border-radius:16px;box-shadow:0 18px 44px #222f5e0f}.night-public-strip article{grid-template-columns:auto 1fr;align-items:center;gap:14px;padding:18px;display:grid}.night-public-strip svg,.night-panel>svg,.night-section-heading>svg{color:#222f5e;width:28px;height:28px}.night-public-strip strong{margin-bottom:3px;display:block}.night-public-strip span,.night-panel p{color:#637069;line-height:1.5}.night-public-grid{grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:18px;margin-bottom:18px;display:grid}.night-panel{padding:24px}.night-panel h2,.night-panel h3{margin-bottom:10px}.night-panel p:last-child{margin-bottom:0}.night-schedule-panel{color:#fff;background:linear-gradient(135deg,#222f5efa,#2f427df0),#222f5e;grid-template-columns:auto 1fr;align-items:center;gap:18px;min-height:118px;display:grid}.night-schedule-panel span{color:#ffffffc7;letter-spacing:.02em;text-transform:uppercase;font-size:12px;font-weight:900;display:block}.night-schedule-panel strong{white-space:nowrap;margin:6px 0;font-size:clamp(24px,2.5vw,32px);line-height:1.12;display:block}.night-schedule-panel svg{color:#fff;background:#ffffff24;border:1px solid #ffffff38;border-radius:14px;width:52px;height:52px;padding:12px}.night-schedule-panel p{color:#ffffffd1;font-weight:700}.night-section-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.night-section-heading h2{margin:0}.night-specialty-grid,.night-link-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.night-specialty-grid article{background:#f7f8fc;border:1px solid #222f5e21;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:12px;min-height:72px;padding:14px;display:grid}.night-specialty-grid svg{color:#147a45;width:22px;height:22px}.night-specialty-grid span{font-weight:800;line-height:1.25}.night-access-section{margin-top:18px}.night-access-section.compact{margin:-2px 0 18px}.night-link-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.night-link-grid .night-panel{gap:8px;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.night-link-grid .night-panel:hover{border-color:#222f5e42;transform:translateY(-2px);box-shadow:0 18px 38px #222f5e17}.night-link-grid .night-panel:first-child{animation:.56s .12s both publicCardIntro}.night-link-grid .night-panel:nth-child(2){animation:.56s .19s both publicCardIntro}.night-link-grid .night-panel:nth-child(3){animation:.56s .26s both publicCardIntro}.night-link-grid h3{margin:6px 0 0}.night-admin-note{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;margin-top:18px;display:grid}.night-admin-shell{color:#122018;background:radial-gradient(circle at 16% 8%,#222f5e1f,#0000 26%),linear-gradient(135deg,#f8fbf9 0%,#f2f6fb 52%,#f8fbf9 100%);min-height:100vh;padding:36px clamp(18px,5vw,72px) 56px}.night-admin-hero{background:linear-gradient(110deg,#fffffff5 0 76%,#222f5e1a 76% 100%);border:1px solid #222f5e2e;border-top:5px solid #222f5e;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;max-width:1180px;margin:0 auto 20px;padding:clamp(24px,5vw,54px);display:grid;box-shadow:0 24px 58px #222f5e1f}.night-admin-hero h1{letter-spacing:0;margin:0 0 16px;font-size:clamp(2.3rem,6vw,4.8rem);line-height:.95}.night-admin-hero.slim h1{font-size:clamp(2.1rem,5vw,4rem)}.night-admin-hero p:not(.eyebrow){color:#53645c;max-width:720px;margin:0;font-size:1.08rem;line-height:1.6}.night-admin-actions{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.night-admin-actions a{color:#fff;background:#222f5e;border:1px solid #222f5e;border-radius:999px;align-items:center;min-height:42px;padding:0 18px;font-weight:800;text-decoration:none;display:inline-flex}.night-admin-actions a+a{color:#222f5e;background:#fff}.night-admin-badge{color:#222f5e;text-align:center;background:#fffc;border:1px solid #222f5e29;border-radius:16px;place-items:center;gap:10px;min-width:190px;padding:22px;display:grid}.night-admin-badge svg{width:44px;height:44px}.night-admin-badge img{object-fit:contain;background:#fff;border:1px solid #222f5e1f;border-radius:16px;width:82px;height:82px;padding:8px;box-shadow:0 14px 30px #222f5e1f}.night-admin-badge span{text-transform:uppercase;font-size:.85rem;font-weight:900}.night-admin-tabs{flex-wrap:wrap;gap:10px;max-width:1180px;margin:0 auto 18px;display:flex}.night-admin-tabs button{color:#222f5e;cursor:pointer;background:#ffffffe6;border:1px solid #222f5e29;border-radius:999px;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-weight:900;display:inline-flex}.night-admin-tabs button.active{color:#fff;background:#222f5e;border-color:#222f5e}.night-admin-tabs svg{width:17px;height:17px}.night-admin-summary,.night-admin-grid{gap:14px;max-width:1180px;margin:0 auto;display:grid}.night-admin-summary{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:18px}.night-admin-summary article,.night-admin-grid article{background:#ffffffeb;border:1px solid #222f5e29;border-radius:16px;box-shadow:0 18px 44px #222f5e14}.night-admin-summary article{padding:18px 20px}.night-admin-summary strong{color:#222f5e;text-transform:uppercase;margin-bottom:5px;font-size:.95rem;display:block}.night-admin-summary span,.night-admin-grid p{color:#53645c;line-height:1.55}.night-admin-readiness,.night-admin-quick-actions{background:#fffffff0;border:1px solid #222f5e29;border-radius:16px;max-width:1180px;margin:0 auto 18px;padding:22px;box-shadow:0 18px 44px #222f5e14}.night-readiness-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:14px;display:grid}.night-readiness-grid article{background:#f8fbf9;border:1px solid #222f5e29;border-left:5px solid #222f5e;border-radius:14px;align-items:flex-start;gap:12px;padding:14px;display:flex}.night-readiness-grid article.ready{border-left-color:#16845a}.night-readiness-grid article.pending{border-left-color:#bd8b2a}.night-readiness-grid svg,.night-admin-quick-actions svg{color:#222f5e;background:#222f5e14;border:1px solid #222f5e24;border-radius:12px;flex:none;width:38px;height:38px;padding:8px}.night-readiness-grid article.ready svg{color:#16845a}.night-readiness-grid article.pending svg{color:#9a6712}.night-readiness-grid strong,.night-admin-quick-actions strong{font-size:.95rem;display:block}.night-readiness-grid span,.night-admin-quick-actions small{color:#53645c;margin-top:3px;line-height:1.45;display:block}.night-admin-quick-actions>div:last-child{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-top:14px;display:grid}.night-admin-quick-actions button{color:#122018;cursor:pointer;text-align:left;background:#fff;border:1px solid #222f5e29;border-radius:14px;align-items:center;gap:12px;min-height:78px;padding:14px;display:flex}.night-admin-quick-actions button:hover,.night-admin-quick-actions button:focus-visible{border-color:#222f5e;outline:none;box-shadow:0 14px 30px #222f5e1f}.night-admin-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.night-admin-editor-grid{grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:18px;max-width:1180px;margin:0 auto 18px;display:grid}.night-students-workspace{grid-template-columns:minmax(320px,.78fr) minmax(420px,1.22fr);align-items:start}.night-student-form{align-self:start;position:sticky;top:14px}.night-student-form-heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.night-student-form-heading button{white-space:nowrap}.night-student-closed-form{color:#53645c;background:#f4f8fb;border:1px solid #222f5e1f;border-radius:14px;gap:4px;padding:14px;line-height:1.4;display:grid}.night-student-closed-form strong{color:#122018}.night-admin-announcements-view{grid-template-columns:minmax(320px,.85fr) minmax(260px,.65fr) minmax(320px,1fr);gap:18px;max-width:1180px;margin:0 auto 18px;display:grid}.night-admin-form{background:#fffffff0;border:1px solid #222f5e29;border-radius:16px;gap:14px;padding:22px;display:grid;box-shadow:0 18px 44px #222f5e14}.night-admin-list-panel,.night-admin-public-preview,.night-admin-prepared-panel{background:#fffffff0;border:1px solid #222f5e29;border-radius:16px;padding:22px;box-shadow:0 18px 44px #222f5e14}.night-admin-section-heading h2{margin:2px 0 0;font-size:1.45rem}.night-admin-section-heading>div>span{color:#53645c;margin-top:5px;line-height:1.45;display:block}.night-refresh-button{color:#fff;cursor:pointer;background:#102018;border:1px solid #102018;border-radius:12px;align-items:center;gap:8px;min-height:44px;padding:10px 14px;font-weight:900;display:inline-flex}.night-refresh-button:disabled{cursor:wait;opacity:.7}.night-refresh-button svg{width:18px;height:18px}.night-admin-form label{color:#222f5e;text-transform:uppercase;gap:6px;font-size:.82rem;font-weight:900;display:grid}.night-admin-form input,.night-admin-form textarea,.night-admin-form select{color:#122018;font:inherit;text-transform:none;background:#f8fbf9;border:1px solid #222f5e2e;border-radius:12px;min-height:42px;padding:10px 12px}.night-admin-form textarea{resize:vertical;min-height:96px}.night-admin-form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.night-admin-form button{color:#fff;cursor:pointer;background:#222f5e;border:1px solid #222f5e;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 16px;font-weight:900;display:inline-flex}.night-admin-form button svg{width:18px;height:18px}.night-admin-form button.danger-action{color:#9b1c1c;background:#fff5f5;border-color:#ae222247}.night-admin-button-link{color:#222f5e;background:#fff;border:1px solid #222f5e;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 16px;font-weight:900;text-decoration:none;display:inline-flex}.night-admin-button-link svg{width:18px;height:18px}.night-admin-tool-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.night-schedule-toggle{background:#f8fbf9;border:1px solid #222f5e1f;border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:6px;display:grid}.night-schedule-toggle button{color:#222f5e;background:0 0;border-color:#0000}.night-schedule-toggle button.active{color:#fff;background:#222f5e}.night-admin-announcement-list{gap:10px;margin-top:4px;display:grid}.night-admin-public-preview{background:#f4fbf6;align-self:start}.night-admin-public-preview>div{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.night-admin-public-preview strong{color:#123d2a}.night-admin-public-preview>div span{color:#006b3c;background:#dff5e8;border-radius:999px;padding:7px 12px;font-size:.78rem;font-weight:900}.night-admin-public-preview article{background:#fff;border:1px solid #18804f24;border-left:4px solid #18804f;border-radius:10px;padding:12px}.night-admin-public-preview article+article{margin-top:10px}.night-admin-public-preview small{color:#006b3c;font-size:.72rem;font-weight:900}.night-admin-public-preview p{color:#58665f;margin:4px 0 0;line-height:1.45}.night-admin-public-preview article span,.night-admin-announcement-list article small{color:#53645c;margin-top:6px;font-size:.78rem;font-weight:800;display:block}.night-admin-announcement-list article{background:#f8fbf9;border:1px solid #222f5e24;border-radius:14px;padding:14px}.night-admin-account-list{gap:10px;display:grid}.night-admin-account-lock{background:#f4fbf6;border:1px solid #18804f2e;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;padding:14px;display:flex}.night-admin-account-lock p{color:#53645c;margin:4px 0 0}.night-admin-account-lock button{color:#fff;cursor:pointer;white-space:nowrap;background:#222f5e;border:1px solid #222f5e;border-radius:12px;min-height:38px;padding:0 14px;font-weight:900}.night-admin-account-list article{background:#f8fbf9;border:1px solid #222f5e24;border-radius:14px;padding:14px}.night-admin-account-list article>div,.night-admin-account-list footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.night-admin-account-list strong{color:#122018}.night-admin-account-list span{color:#222f5e;background:#222f5e14;border-radius:999px;padding:5px 9px;font-size:.74rem;font-weight:900}.night-admin-account-list p,.night-admin-empty{color:#53645c}.night-admin-account-secret{background:#fff;border:1px solid #222f5e1f;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;margin:10px 0;padding:10px 12px;display:flex}.night-admin-account-secret small{color:#53645c;text-transform:uppercase;font-weight:900}.night-admin-account-secret code{color:#122018;font-family:inherit;font-weight:900}.night-admin-account-list footer{flex-wrap:wrap;justify-content:flex-start}.night-admin-account-list footer button{color:#222f5e;cursor:pointer;background:#fff;border:1px solid #222f5e;border-radius:12px;min-height:36px;padding:0 12px;font-weight:900}.night-admin-account-list footer button.danger{color:#9b1c1c;border-color:#ae222247;width:42px}.night-admin-account-list footer svg{width:16px;height:16px}.night-admin-search{gap:6px;margin-bottom:12px;display:grid}.night-student-quick-filters{flex-wrap:wrap;gap:8px;margin:0 0 14px;display:flex}.night-student-quick-filters button{color:#222f5e;cursor:pointer;background:#fff;border:1px solid #222f5e29;border-radius:999px;min-height:34px;padding:0 12px;font-size:.84rem;font-weight:900}.night-student-quick-filters button.active{color:#fff;background:#222f5e;border-color:#222f5e}.night-admin-student-list{gap:10px;display:grid}.night-admin-student-list article{background:#f8fbf9;border:1px solid #222f5e24;border-radius:14px;padding:14px}.night-admin-student-list article>button{color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;gap:10px;width:100%;padding:0;display:flex}.night-admin-student-list strong{color:#122018}.night-admin-student-list span{color:#222f5e;font-weight:900}.night-admin-student-list p{color:#53645c;margin:8px 0 12px}.night-student-indicators{flex-wrap:wrap;gap:6px;margin:0 0 12px;display:flex}.night-student-indicators span{border-radius:999px;padding:5px 9px;font-size:.74rem;font-weight:900}.night-student-indicators span.ok{color:#006b3c;background:#e1f6eb}.night-student-indicators span.warn{color:#7a4c00;background:#fff4d7}.night-student-full-panel{grid-column:1/-1}.night-status-pill{color:#006b3c;background:#e1f6eb;border-radius:999px;align-items:center;padding:7px 12px;font-size:.78rem;font-weight:900;display:inline-flex}.night-student-profile-card{gap:14px;display:grid}.night-student-profile-hero{background:linear-gradient(135deg,#222f5e14,#e1f6eb80);border:1px solid #222f5e1f;border-radius:16px;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:16px;padding:16px;display:grid}.night-student-profile-hero img,.night-student-profile-photo{aspect-ratio:1;object-fit:cover;border-radius:16px;width:96px;height:96px}.night-student-profile-photo{color:#53645c;text-align:center;background:#f4f8fb;border:1px solid #222f5e1f;place-items:center;padding:10px;font-size:.76rem;font-weight:900;display:grid}.night-student-profile-photo svg{color:#222f5e;width:24px;height:24px}.night-student-profile-hero h3{color:#122018;margin:0;font-size:clamp(1.5rem,3vw,2.35rem);line-height:.98}.night-student-profile-hero p:not(.eyebrow){color:#53645c;margin:8px 0 10px;font-weight:800}.night-student-detail-grid,.night-nightly-report-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.night-student-detail-grid span,.night-nightly-report-cards span{color:#122018;background:#f8fbf9;border:1px solid #222f5e1f;border-radius:12px;gap:5px;padding:12px;display:grid}.night-student-detail-grid strong,.night-nightly-report-cards strong{color:#53645c;text-transform:uppercase;font-size:.75rem;font-weight:900}.night-nightly-report-cards strong{color:#122018;font-size:1.85rem;line-height:1}.night-report-actions{flex-wrap:wrap;gap:8px;display:flex}.night-report-actions button{color:#fff;cursor:pointer;background:#102018;border:1px solid #102018;border-radius:10px;align-items:center;gap:8px;padding:10px 14px;font-weight:900;display:inline-flex}.night-report-actions button:nth-child(n+2){color:#102018;background:#fff}.night-report-actions svg{width:18px;height:18px}.night-student-mini-list,.night-report-table{gap:8px;display:grid}.night-student-mini-list>span,.night-student-mini-list>button,.night-report-table>span{color:#53645c;text-align:left;background:#f8fbf9;border:1px solid #222f5e1f;border-radius:12px;gap:4px;padding:10px 12px;display:grid}.night-student-mini-list>button{cursor:pointer}.night-student-mini-list strong,.night-report-table strong{color:#122018}.night-daily-control-panel{gap:14px;max-width:1180px;margin:18px auto 0;display:grid}.night-report-filter-grid{grid-template-columns:160px 180px minmax(220px,1fr) 200px;gap:10px;display:grid}.night-report-filter-grid label{color:#222f5e;text-transform:uppercase;gap:6px;font-size:.78rem;font-weight:900;display:grid}.night-report-filter-grid input,.night-report-filter-grid select{color:#122018;font:inherit;background:#f8fbf9;border:1px solid #222f5e2e;border-radius:12px;min-height:42px;padding:9px 11px}.night-list-column-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin:12px 0;display:grid}.night-check-option{color:#222f5e;background:#f8fbf9;border:1px solid #222f5e1f;border-radius:12px;align-items:center;gap:8px;min-height:42px;padding:9px 11px;font-size:.84rem;font-weight:900;display:flex}.night-check-option input{accent-color:#222f5e;width:16px;height:16px}.night-report-stat-grid{grid-template-columns:repeat(6,minmax(130px,1fr));gap:10px;display:grid}.night-report-stat-grid article{background:linear-gradient(135deg,#f8fbf9,#eef7f2);border:1px solid #222f5e24;border-left:4px solid #222f5e;border-radius:12px;gap:4px;padding:12px;display:grid}.night-report-stat-grid span,.night-report-stat-grid small{color:#53645c;font-size:.75rem;font-weight:900;line-height:1.25}.night-report-stat-grid span{text-transform:uppercase}.night-report-stat-grid strong{color:#122018;font-size:1.9rem;line-height:1}.night-entry-list{gap:9px;max-height:520px;padding-right:4px;display:grid;overflow:auto}.night-entry-row{background:#fbfdfc;border:1px solid #222f5e24;border-left:4px solid #7b8790;border-radius:12px;grid-template-columns:minmax(260px,1fr) minmax(170px,.55fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.night-entry-row.inside{border-left-color:#0f8f5f}.night-entry-row.outside{border-left-color:#c34d3e}.night-entry-row strong{color:#122018}.night-entry-row span{color:#53645c;font-size:.9rem;font-weight:800;line-height:1.35;display:block}.night-entry-status{white-space:nowrap;background:#eef7f2;border:1px solid #0f8f5f2e;border-radius:999px;justify-self:end;padding:6px 10px;color:#0f6b3f!important;font-size:.78rem!important}.night-admin-count{color:#53645c;background:#f4f8fb;border:1px solid #222f5e1f;border-radius:12px;margin:0 0 12px;padding:10px 12px;font-size:.9rem;font-weight:800;line-height:1.35}.night-admin-audit-panel{max-width:1180px;margin:18px auto 0}.night-admin-audit-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.night-admin-audit-filters{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.night-admin-audit-filters select{background:#fff;border:1px solid #222f5e29;border-radius:12px;min-height:40px;padding:8px 10px}.night-admin-audit-list article{background:#f8fbf9;border:1px solid #222f5e1f;border-radius:14px;gap:4px;padding:12px;display:grid}.night-admin-audit-list strong{color:#222f5e}.night-admin-audit-list span,.night-admin-audit-list small{color:#53645c}.night-admin-student-list footer{flex-wrap:wrap;gap:8px;display:flex}.night-admin-student-list footer button{color:#222f5e;cursor:pointer;background:#fff;border:1px solid #222f5e;border-radius:12px;min-height:36px;padding:0 12px;font-weight:900}.night-admin-student-list footer button.danger{color:#9b1c1c;border-color:#ae222247;width:42px}.night-admin-load-more{color:#fff;cursor:pointer;background:#222f5e;border:1px solid #222f5e;border-radius:12px;min-height:42px;padding:0 14px;font-weight:900}.night-admin-student-list.compact article{padding:12px}.night-card-workspace{grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr);gap:18px;max-width:1180px;margin:0 auto 18px;display:grid}.night-card-editor{gap:14px;display:grid}.night-card-preview{background:linear-gradient(112deg,#fffffff5 0 74%,#222f5e1a 74% 100%);border:1px solid #222f5e29;border-top:5px solid #222f5e;border-radius:18px;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:18px;padding:22px;display:grid;box-shadow:0 18px 44px #222f5e14}.night-card-school-logo{object-fit:contain;width:86px;height:86px}.night-card-photo{background:#222f5e14;border:1px solid #222f5e24;border-radius:18px;place-items:center;width:108px;height:132px;display:grid;overflow:hidden}.night-card-photo img{object-fit:cover;width:100%;height:100%}.night-card-photo svg{color:#222f5e;width:42px;height:42px}.night-card-preview h2{margin:0 0 8px;font-size:clamp(1.5rem,4vw,2.4rem)}.night-card-preview p:not(.eyebrow),.night-card-preview span{color:#53645c}.night-card-preview strong{color:#222f5e;margin-top:10px;display:block}.night-card-preview small{color:#0b6a3f;margin-top:12px;font-weight:900;display:block}.night-announcement-carousel{gap:12px;max-height:188px;display:grid;overflow:hidden}.night-announcement-box .night-announcement-carousel{grid-template-columns:1fr}.night-import-progress{background:#222f5e1a;border-radius:999px;height:12px;overflow:hidden}.night-import-progress span{background:#222f5e;height:100%;transition:width .18s;display:block}.night-import-preview{background:#f4fbf6;border:1px solid #18804f29;border-radius:14px;gap:10px;padding:12px;display:grid}.night-student-card-shell{color:#122018;background:radial-gradient(circle at 16% 8%,#222f5e1f,#0000 26%),linear-gradient(135deg,#f8fbf9 0%,#f2f6fb 52%,#f8fbf9 100%);min-height:100vh;padding:26px clamp(16px,5vw,72px) 56px}.night-student-card-nav{border-bottom:1px solid #222f5e24;justify-content:space-between;align-items:center;gap:14px;max-width:1180px;margin:0 auto 24px;padding-bottom:12px;display:flex}.night-student-card-nav a{color:#222f5e;font-weight:900;text-decoration:none}.night-student-card-hero{background:linear-gradient(110deg,#fffffff5 0 76%,#222f5e1a 76% 100%);border:1px solid #222f5e2e;border-top:5px solid #222f5e;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;max-width:1180px;margin:0 auto 18px;padding:clamp(24px,5vw,46px);display:grid;box-shadow:0 24px 58px #222f5e1f}.night-student-card-hero h1{margin:0 0 12px;font-size:clamp(2.1rem,6vw,4.2rem);line-height:.98}.night-student-card-hero p:not(.eyebrow){color:#53645c;max-width:720px;margin:0;font-size:1.05rem;line-height:1.55}.night-student-card-hero span{color:#122018;align-items:center;gap:7px;margin-top:14px;display:inline-flex}.night-student-card-hero>svg{color:#222f5e;width:54px;height:54px}.night-student-hero-logo{object-fit:contain;background:#fff;border:1px solid #222f5e24;border-radius:18px;width:112px;height:112px;padding:12px;box-shadow:0 18px 38px #222f5e1f}.night-student-card-layout{grid-template-columns:minmax(280px,.75fr) minmax(0,1.1fr) minmax(260px,.75fr);align-items:start;gap:18px;max-width:1180px;margin:0 auto;display:grid}.night-student-login,.night-student-card-panel,.night-student-announcements{background:#fffffff0;border:1px solid #222f5e29;border-radius:16px;padding:22px;box-shadow:0 18px 44px #222f5e14}.night-student-login{gap:14px;display:grid}.night-student-login h2{margin:0}.night-student-login label{color:#222f5e;text-transform:uppercase;gap:6px;font-size:.82rem;font-weight:900;display:grid}.night-student-login input{color:#122018;font:inherit;text-transform:none;background:#f8fbf9;border:1px solid #222f5e2e;border-radius:12px;min-height:42px;padding:10px 12px}.night-student-login button{color:#fff;cursor:pointer;background:#222f5e;border:1px solid #222f5e;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:44px;font-weight:900;display:inline-flex}.night-student-digital-card{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;display:grid}.night-student-digital-card h2{margin:0 0 8px;font-size:clamp(1.55rem,4vw,2.5rem)}.night-student-digital-card p,.night-student-digital-card span,.night-student-empty-card p{color:#53645c}.night-student-digital-card strong{color:#222f5e;margin-top:10px;display:block}.night-student-digital-card small{color:#0b6a3f;align-items:center;gap:6px;margin-top:16px;font-weight:900;display:inline-flex}.night-student-empty-card{text-align:center;place-content:center;justify-items:center;gap:10px;min-height:280px;display:grid}.night-student-empty-card>svg{color:#222f5e;background:#222f5e14;border-radius:16px;width:58px;height:58px;padding:14px}.night-student-announcements{background:#f4fbf6}.night-student-announcements>div{align-items:center;gap:8px;margin-bottom:12px;display:flex}.night-student-announcements>div svg{color:#222f5e;width:18px;height:18px}.night-student-announcements article{background:#fff;border:1px solid #18804f24;border-left:4px solid #18804f;border-radius:10px;padding:12px}.night-student-announcements article+article{margin-top:10px}.night-student-announcements small{color:#006b3c;font-size:.72rem;font-weight:900}.night-student-announcements p{color:#58665f;margin:4px 0 0;line-height:1.45}.night-admin-prepared-panel,.night-admin-settings-panel{max-width:1180px;margin:0 auto 18px}.night-admin-prepared-panel{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;display:grid}.night-admin-prepared-panel>svg{color:#222f5e;background:#222f5e14;border:1px solid #222f5e29;border-radius:16px;width:58px;height:58px;padding:14px}.night-admin-prepared-panel h2{margin:0 0 8px}.night-admin-prepared-panel p:not(.eyebrow){color:#53645c;margin:0;line-height:1.6}.night-admin-announcement-list article>div,.night-admin-announcement-list footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.night-admin-announcement-list strong{color:#122018}.night-admin-announcement-list span{color:#222f5e;background:#222f5e14;border-radius:999px;padding:5px 9px;font-size:.74rem;font-weight:900}.night-admin-announcement-list p{color:#53645c;margin:10px 0 12px;line-height:1.5}.night-admin-announcement-list footer{justify-content:flex-start}.night-admin-announcement-list footer button{color:#222f5e;background:#fff;min-height:36px}.night-admin-announcement-list footer button.danger{color:#9b1c1c;border-color:#ae222247;width:42px}.night-admin-save-message{border-radius:14px;max-width:1180px;margin:0 auto 18px;padding:10px 14px;font-weight:900;box-shadow:0 16px 38px #222f5e1f}.night-admin-save-message.saved{color:#0b6a3f;background:#17804d1a}.night-admin-save-message.error{color:#9b1c1c;background:#ae22221a}.night-admin-save-message.saving{color:#222f5e;background:#222f5e1a}.night-admin-grid article{min-height:210px;padding:20px}.night-admin-grid article>div{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.night-admin-grid svg{color:#222f5e;background:#222f5e14;border:1px solid #222f5e29;border-radius:12px;width:42px;height:42px;padding:9px}.night-admin-grid article>div span{color:#222f5e;background:#222f5e14;border-radius:999px;padding:6px 10px;font-size:.76rem;font-weight:900}.night-admin-grid h2{margin:0 0 8px;font-size:1.25rem}.night-admin-grid p{margin:0}@media (max-width:900px){.night-value-strip,.night-welcome-card,.night-public-strip,.night-public-grid,.night-link-grid,.night-admin-summary,.night-readiness-grid,.night-admin-grid,.night-admin-quick-actions>div:last-child,.night-admin-editor-grid,.night-admin-announcements-view,.night-report-filter-grid,.night-report-stat-grid,.night-entry-row,.night-card-workspace,.night-student-card-layout{grid-template-columns:1fr}.night-specialty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.student-photo-uploader,.student-photo-admin-box{grid-template-columns:1fr}.student-photo-upload-button,.student-photo-uploader button,.student-photo-admin-box button{width:100%}.night-public-nav,.night-public-nav nav{flex-direction:column;align-items:flex-start}.night-public-hero{text-align:center;grid-template-columns:1fr}.night-admin-hero{grid-template-columns:1fr}.night-student-form{position:static}.night-admin-form-row,.night-admin-tool-row,.night-admin-audit-filters{grid-template-columns:1fr}.night-refresh-button,.night-report-actions button{justify-content:center;width:100%}.night-entry-status{justify-self:start}.night-admin-prepared-panel{grid-template-columns:1fr}.night-card-preview,.night-student-card-hero,.night-student-digital-card{text-align:center;grid-template-columns:1fr;justify-items:center}.night-value-strip article{text-align:left;grid-template-columns:auto 1fr}.night-hero-actions,.night-location,.night-contact-strip{justify-content:center}.night-admin-note,.night-schedule-panel,.night-public-strip article{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.night-public-hero.is-loaded:before,.night-public-hero.is-loaded:after,.night-public-hero.is-loaded .night-hero-logo,.night-public-hero.is-loaded .night-hero-copy .eyebrow,.night-public-hero.is-loaded .night-hero-copy h1,.night-public-hero.is-loaded .night-hero-copy p,.night-public-hero.is-loaded .night-location,.night-value-strip article,.night-welcome-card,.night-announcement-box,.night-link-grid .night-panel{animation:none}.night-value-strip article:hover,.night-value-strip article:hover svg,.night-contact-strip a:hover,.night-link-grid .night-panel:hover{transform:none}}@media (max-width:560px){.night-specialty-grid{grid-template-columns:1fr}}@media (max-width:760px){.public-entry-hero{text-align:left;grid-template-columns:1fr}.entry-hero-logo-area{justify-content:center}.entry-hero-copy{text-align:center;padding-left:0}.public-entry-hero p:last-child{margin-left:auto;margin-right:auto}.school-mode-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.public-entry-hero.is-loaded .entry-logo-mark,.public-entry-hero.is-loaded .entry-hero-copy .eyebrow,.public-entry-hero.is-loaded .entry-hero-copy h1,.public-entry-hero.is-loaded .entry-hero-copy p:last-child{animation:none}}@keyframes modeCardIntro{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes softSunGlow{0%,to{transform:rotate(0)scale(1);box-shadow:0 0 #c78a1200}50%{transform:rotate(8deg)scale(1.04);box-shadow:0 0 28px #c78a122e}}@keyframes activeModeLine{0%,to{opacity:.9}50%{opacity:1;filter:brightness(1.16)}}.school-mode-card{animation:.56s both modeCardIntro}.school-mode-card.day{animation-delay:.18s}.school-mode-card.night{animation-delay:.31s}.school-mode-card.day:before{animation:3.8s ease-in-out infinite activeModeLine}.school-mode-card.day .mode-icon{animation:4.5s ease-in-out infinite softSunGlow}.school-mode-card.day>strong svg{transition:transform .16s}.school-mode-card.day:hover>strong svg{transform:translate(4px)}@media (prefers-reduced-motion:reduce){.school-mode-card,.school-mode-card.day:before,.school-mode-card.day .mode-icon{animation:none}.school-mode-card.day:hover>strong svg{transform:none}}.dining-shell{max-width:1280px}.dining-quick-nav{border:1px solid var(--line);z-index:5;background:#f7faf8f5;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 18px;padding:8px;display:grid;position:sticky;top:8px}.dining-quick-nav a{border:1px solid var(--line);color:var(--ink);text-align:center;background:#fff;border-radius:8px;justify-content:center;align-items:center;min-height:42px;padding:10px 12px;font-size:14px;font-weight:900;text-decoration:none;display:flex}.dining-quick-nav a:hover,.dining-quick-nav a:focus-visible{color:var(--green);background:#e7f5ed;border-color:#1d8f6359}.dining-grid{grid-template-columns:minmax(520px,1fr) 360px;align-items:start;gap:22px;margin-bottom:22px;display:grid}.dining-scanner{gap:22px;padding:24px;display:grid}.dining-result{border:1px solid var(--line);border-radius:8px;grid-template-columns:auto 1fr;align-items:center;gap:14px;padding:16px;display:grid}.dining-result svg{width:34px;height:34px}.dining-result strong{margin-bottom:4px;font-size:22px;display:block}.dining-result p,.dining-result span{color:var(--muted);margin:0;display:block}.dining-result.success{color:var(--green);background:#edf8f2;border-color:#1d8f6340}.dining-result.warning{color:var(--amber);background:#fff8e8;border-color:#b7791f47}.dining-result.error{color:var(--red);background:#fff0ed;border-color:#c9513f40}.dining-attention-actions{border-top:1px solid #c9513f33;gap:10px;margin-top:12px;padding-top:12px;display:grid}.dining-attention-actions label{color:var(--ink);gap:6px;font-size:13px;font-weight:900;display:grid}.dining-attention-actions textarea{resize:vertical;min-height:78px}.dining-attention-actions div{flex-wrap:wrap;gap:8px;display:flex}.dining-stat-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin:12px 0 16px;display:grid}.dining-stat-grid article{border:1px solid var(--line);background:#f7faf8;border-radius:8px;gap:4px;padding:14px;display:grid}.dining-stat-grid strong{font-size:30px;line-height:1}.dining-stat-grid .dining-beneficiary-total-card{background:linear-gradient(135deg,#edf8f2 0%,#fff 100%);border-color:#1d8f6347;grid-column:auto}.dining-beneficiary-total-card small{color:var(--green);font-size:11px;font-weight:900;line-height:1.25}.dining-stat-grid span,.dining-save-state span,.dining-save-state strong{color:var(--muted);font-size:13px;font-weight:800}.dining-save-state{border-top:1px solid var(--line);gap:4px;margin-bottom:16px;padding-top:14px;display:grid}.secondary-grid{grid-template-columns:minmax(620px,1fr) 400px}.dining-record-list{gap:10px;margin-top:12px;display:grid}.dining-record-list-limited{scroll-behavior:smooth;max-height:min(620px,72vh);padding-right:6px;overflow:auto}.dining-record{border:1px solid var(--line);border-left:5px solid var(--green);border-radius:8px;grid-template-columns:minmax(220px,1fr) 150px 80px;align-items:center;gap:12px;padding:14px;display:grid}.dining-record p{color:var(--muted);margin:4px 0 0}.dining-record span{border-radius:999px;justify-self:start;padding:7px 10px;font-size:13px;font-weight:900}.dining-record small{color:var(--muted);text-align:right;font-weight:800}.dining-record.delivered span{color:var(--green);background:#e0f3ea}.dining-record.duplicate{border-left-color:var(--amber)}.dining-record.duplicate span{color:var(--amber);background:#fff3d8}.dining-record.not_beneficiary,.dining-record.not_found,.dining-record.administrative_attention{border-left-color:var(--red)}.dining-record.not_beneficiary span,.dining-record.not_found span,.dining-record.administrative_attention span{color:var(--red);background:#fae5e0}.dining-record.authorized_with_condition{border-left-color:var(--amber)}.dining-record.authorized_with_condition span{color:var(--amber);background:#fff3d8}.dining-beneficiaries{gap:12px;display:grid}.dining-beneficiaries p{color:var(--muted);margin-bottom:0;line-height:1.5}.dining-beneficiaries textarea{resize:vertical;min-height:180px;padding:12px}.dining-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.dining-beneficiary-count{border:1px solid var(--line);background:#f7faf8;border-radius:8px;justify-content:space-between;align-items:center;padding:14px;display:flex}.dining-beneficiary-count strong{font-size:28px}.dining-beneficiary-count span{color:var(--muted);font-weight:800}.dining-beneficiary-panel{margin-bottom:22px}.dining-beneficiary-panel .table-header{align-items:end}.dining-beneficiary-list{gap:10px;max-height:520px;margin-top:14px;display:grid;overflow:auto}.dining-beneficiary-list article{border:1px solid var(--line);background:#fff;border-left:5px solid #7a8480;border-radius:8px;grid-template-columns:minmax(220px,1fr) 150px auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.dining-beneficiary-list article.beneficiary{border-left-color:var(--green)}.dining-beneficiary-list p{color:var(--muted);margin:4px 0 0}.dining-beneficiary-list span{border-radius:999px;justify-self:start;padding:7px 10px;font-size:13px;font-weight:900}.dining-beneficiary-list article.beneficiary span{color:var(--green);background:#e0f3ea}.dining-beneficiary-list article.not-beneficiary span{color:var(--muted);background:#eef1ef}.dining-report-panel{margin-bottom:22px}.dining-report-controls{grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px;margin:16px 0;display:grid}.dining-report-controls label{color:var(--muted);gap:6px;font-size:13px;font-weight:900;display:grid}.dining-print-report{border:1px solid var(--line);color:#17231e;background:#fff;border-radius:8px;padding:24px}.dining-print-header{border-bottom:2px solid var(--green);grid-template-columns:84px 1fr;align-items:center;gap:18px;padding-bottom:16px;display:grid}.dining-print-header img{object-fit:contain;width:76px;height:76px}.dining-print-header p,.dining-print-header h2,.dining-print-header span{margin:0}.dining-print-header p,.dining-print-header span,.dining-print-meta span,.dining-print-stats span,.dining-print-report footer{color:var(--muted);font-weight:800}.dining-print-header h2{font-size:30px;line-height:1.05}.dining-print-meta{border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:6px;padding:14px 0;display:grid}.dining-print-stats{grid-template-columns:repeat(5,1fr);gap:10px;margin:16px 0;display:grid}.dining-print-stats article{border:1px solid var(--line);background:#f7faf8;border-radius:8px;gap:3px;padding:10px;display:grid}.dining-print-stats strong{font-size:24px}.dining-report-table{border-collapse:collapse;width:100%;font-size:12px}.dining-report-table th,.dining-report-table td{text-align:left;vertical-align:top;border-bottom:1px solid #dce5df;padding:7px 6px}.dining-report-table th{color:var(--green-dark);text-transform:uppercase;background:#edf8f2;font-size:11px}.dining-print-report footer{border-top:1px solid var(--line);text-align:center;margin-top:16px;padding-top:12px}.dining-section-grid{grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px;margin-top:16px;display:grid}.dining-section-grid article{border:1px solid var(--line);background:#f7faf8;border-radius:8px;justify-content:space-between;align-items:center;padding:14px;display:flex}.dining-section-grid span{background:var(--ink);color:#fff;text-align:center;border-radius:999px;min-width:34px;padding:5px 9px;font-weight:900}@media print{body:has(.dining-print-report) *{visibility:hidden}:is(body:has(.dining-print-report) .dining-print-report,body:has(.dining-print-report) .dining-print-report *){visibility:visible}body:has(.dining-print-report) .dining-print-report{box-shadow:none;border:0;border-radius:0;width:100%;padding:0;position:absolute;top:0;left:0}@page{margin:.55in;size:letter}.dining-report-table{font-size:10px}.dining-print-header,.dining-report-table tr,.dining-print-stats article{break-inside:avoid}}.operations-shell{max-width:1180px}.operations-hero{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;padding:40px 0 24px;display:grid}.operations-hero h1{margin-bottom:12px}.operations-hero p:not(.eyebrow){color:var(--muted);max-width:760px;margin:0;font-size:18px;line-height:1.55}.operations-status{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:22px;display:grid}.operations-status article{border:1px solid var(--line);background:#fff;border-radius:8px;gap:6px;padding:16px;display:grid}.operations-status span{color:var(--blue);text-transform:uppercase;font-size:12px;font-weight:900}.operations-status strong{font-size:18px}.operations-status p{color:var(--muted);margin:0;line-height:1.4}.operations-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.operations-card{border:1px solid var(--line);border-top:5px solid var(--green);background:#fff;border-radius:8px;align-items:start;gap:18px;min-height:190px;padding:20px;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.operations-card:hover{border-color:#1d8f635c;transform:translateY(-2px);box-shadow:0 16px 34px #16211d14}.operations-card span{color:var(--green);background:#e9f7f0;border:1px solid #1d8f632e;border-radius:8px;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex}.operations-card svg{width:24px;height:24px}.operations-card strong{margin-bottom:8px;font-size:24px;display:block}.operations-card p{color:var(--muted);margin:0;line-height:1.45}.operations-card.blue{border-top-color:var(--blue)}.operations-card.blue span{color:var(--blue);background:#edf4fb;border-color:#2767a333}.operations-card.amber{border-top-color:var(--amber)}.operations-card.amber span{color:var(--amber);background:#fff6e5;border-color:#b7791f38}.operations-card.night{border-top-color:#25315f}.operations-card.night span{color:#25315f;background:#eef1fb;border-color:#25315f33}.teacher-shell{max-width:1320px}.teacher-grid,.teacher-attendance-grid{grid-template-columns:minmax(680px,1fr) 360px;align-items:start;gap:22px;margin-bottom:22px;display:grid}.teacher-section-form{grid-template-columns:minmax(210px,1.15fr) repeat(3,minmax(150px,1fr)) auto;align-items:stretch;gap:10px;margin:18px 0;display:grid}.teacher-section-form input,.teacher-section-form select{width:100%;min-width:0;min-height:46px}.teacher-modality-select{border-color:#25315f4d;min-width:0;padding-right:42px;font-weight:900}.teacher-section-form button{white-space:nowrap;min-height:46px}.teacher-section-list{gap:12px;display:grid}.teacher-section-list article{border:1px solid var(--line);background:#f7faf8;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;display:grid}.teacher-section-list p{color:var(--muted);margin:4px 0 0}.teacher-section-list article>div:first-child{min-width:0}.teacher-section-list article strong,.teacher-section-list article p,.teacher-section-list article small{overflow-wrap:anywhere}.teacher-card-actions,.teacher-list-actions{flex-wrap:wrap;gap:8px;display:flex}.teacher-scanner>.panel-title,.teacher-scanner>.teacher-active-list-date,.teacher-scanner>.teacher-reader-mode,.teacher-scanner>.scan-form,.teacher-scanner>.teacher-camera-tools,.teacher-scanner>.teacher-list-actions,.teacher-scanner>.teacher-quick-roster{box-sizing:border-box;grid-column:1/-1;justify-self:stretch;width:100%}.teacher-scanner>.teacher-list-actions{grid-template-columns:repeat(4,minmax(130px,1fr));display:grid}.teacher-scanner>.teacher-list-actions button{width:100%;min-height:46px;padding:0 14px}.teacher-list-actions .danger-action,.teacher-list-chip-actions .danger-action{color:#a43c2d;background:#fff5f2;border-color:#c9513f4d}.teacher-card-actions button{white-space:nowrap}.teacher-work-tabs{background:linear-gradient(135deg, #1d8f6314, transparent 54%), var(--panel);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:10px;display:flex}.teacher-session{border-top:5px solid var(--green);background:linear-gradient(135deg,#1d8f6317,#0000 52%),#fff}.teacher-session-copy{min-width:0}.teacher-refresh-main{color:#fff!important;background:#0f766e!important;border-color:#0f766e!important}.teacher-refresh-main:disabled{cursor:wait;opacity:.72}.teacher-quick-guide{border:1px solid var(--line);border-left:5px solid var(--green);background:linear-gradient(135deg,#1d8f6314,#0000 58%),#fff;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:-4px 0 18px;padding:14px;display:grid}.teacher-quick-guide-intro{color:#fff;background:var(--green-dark)!important;border-color:var(--green-dark)!important}.teacher-quick-guide div{background:#ffffffd1;border:1px solid #1d8f6329;border-radius:8px;gap:5px;padding:12px;display:grid}.teacher-quick-guide strong{color:var(--green-dark);font-size:13px;font-weight:950}.teacher-quick-guide-intro strong,.teacher-quick-guide-intro span{color:#fff}.teacher-quick-guide span{color:var(--muted);font-size:13px;font-weight:750;line-height:1.35}.teacher-work-tabs button{border:1px solid var(--line);color:var(--ink);text-align:center;background:#fff;border-radius:8px;align-items:center;gap:8px;min-width:0;min-height:42px;padding:10px 14px;font-weight:900;display:inline-flex;position:relative}.teacher-work-tabs button svg{width:18px;height:18px}.teacher-work-tabs button.active{background:var(--green-dark);border-color:var(--green-dark);color:#fff}.teacher-work-tabs button:disabled{cursor:not-allowed;opacity:.48}.teacher-work-tabs .teacher-work-alert.has-alerts{color:var(--red);background:#fff0ed;border-color:#c9513f59}.teacher-work-tabs .teacher-work-alert.active{background:var(--red);border-color:var(--red);color:#fff}.teacher-work-tabs .teacher-work-alert span{background:var(--red);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 7px;font-size:12px;display:inline-flex}.teacher-active-strip{border:1px solid #bfe5cf;border-left:6px solid var(--green);background:#f0faf4;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;margin:-4px 0 18px;padding:14px 16px;display:flex}.teacher-active-strip div{gap:3px;min-width:0;display:grid}.teacher-active-strip span{color:#0d6b43;text-transform:uppercase;font-size:12px;font-weight:900}.teacher-active-strip strong{color:var(--ink);overflow-wrap:anywhere;font-size:18px}.teacher-active-strip small{color:var(--muted);font-weight:800}.teacher-active-strip button{background:var(--green-dark);border:1px solid var(--green-dark);color:#fff;white-space:nowrap;border-radius:8px;align-items:center;gap:8px;min-height:44px;padding:0 14px;font-weight:900;display:inline-flex}.teacher-active-strip button:disabled{opacity:.55}.teacher-continue-strip{border-left-color:#25315f}.teacher-continue-strip span{color:#25315f}.teacher-continue-strip button{background:#25315f;border-color:#25315f}.teacher-recommendation-section-tabs{flex-wrap:wrap;gap:8px;display:flex}.teacher-recommendation-section-tabs button{color:#25315f;background:#fff;border:1px solid #25315f33;border-radius:8px;align-items:center;gap:8px;min-height:44px;padding:10px 16px;font-weight:950;display:inline-flex}.teacher-recommendation-section-tabs button.active{color:#fff;background:#25315f;border-color:#25315f}.teacher-recommendation-section-tabs span{background:var(--red);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 7px;font-size:12px;display:inline-flex}.teacher-section-notices{border:1px solid #1f7a4b2e;border-left:5px solid var(--green);background:#f8fbf9;border-radius:8px;grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr);gap:14px;margin:0 0 18px;padding:16px;display:grid}.withdrawn-teacher-notices{background:#fff7ed;border-color:#fed7aa #fed7aa #fed7aa #c2410c}.withdrawn-teacher-view{background:#fff7ed;border-color:#fed7aa #fed7aa #fed7aa #c2410c;border-left-style:solid;border-left-width:6px}.withdrawn-list-view{margin-top:16px}.teacher-section-notices h2,.teacher-section-notices p{margin:0}.teacher-section-notices p,.teacher-section-notices small{color:var(--muted)}.teacher-section-notice-list{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;display:grid}.teacher-section-notice-list article{border:1px solid var(--line);background:#fff;border-radius:8px;gap:4px;padding:12px;display:grid}.teacher-section-notice-list strong{color:var(--green-dark)}.withdrawn-teacher-notices .teacher-section-notice-list strong,.withdrawn-teacher-view .teacher-section-notice-list strong{color:#c2410c}.teacher-section-notice-list small{line-height:1.35;display:block}.teacher-alert-button{color:#25315f;background:#eef3ff;border:1px solid #25315f38;border-radius:999px;align-items:center;gap:9px;min-height:42px;padding:9px 14px;font-weight:900;display:inline-flex}.teacher-alert-button.has-alerts{color:var(--red);background:#fff0ed;border-color:#c9513f59;box-shadow:0 10px 22px #c9513f1f}.teacher-alert-button span{background:var(--red);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 7px;font-size:12px;display:inline-flex}.teacher-today-panel{gap:10px;display:grid}.teacher-list-chip{border:1px solid var(--line);border-left:5px solid var(--amber);cursor:pointer;border-radius:8px;gap:4px;padding:12px;display:grid}.teacher-list-chip.closed{border-left-color:var(--green)}.teacher-list-chip.selected{background:#f7faf8;box-shadow:0 0 0 2px #1d8f631a}.teacher-list-chip span,.teacher-list-chip small{color:var(--muted);font-weight:800}.teacher-list-chip-title{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.teacher-list-chip-title strong{overflow-wrap:anywhere;min-width:0}.teacher-list-chip-title b{color:#8a580d;background:#fff4db;border:1px solid #b7791f3d;border-radius:999px;flex:none;padding:5px 8px;font-size:11px;font-weight:950}.teacher-list-chip.closed .teacher-list-chip-title b{color:var(--green);background:#e4f8ed;border-color:#1d8f632e}.teacher-list-mini-stats{flex-wrap:wrap;gap:6px;display:flex}.teacher-list-group{gap:8px;display:grid}.teacher-list-group>span{color:var(--green-dark);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:950}.teacher-list-date-picker{color:var(--muted);text-transform:uppercase;gap:7px;font-size:12px;font-weight:900;display:grid}.teacher-list-date-picker input{min-height:42px}.teacher-list-date-inline{color:var(--muted);text-transform:uppercase;gap:6px;font-size:12px;font-weight:900;display:grid}.teacher-list-date-inline input{background:#fff;min-height:38px}.teacher-active-list-date{border:1px solid var(--line);background:#f7faf8;border-radius:8px;grid-template-columns:minmax(180px,220px) minmax(0,1fr);align-items:center;gap:12px;margin-bottom:14px;padding:14px;display:grid}.teacher-active-list-date label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:12px;font-weight:900;display:grid}.teacher-active-list-date input{background:#fff}.teacher-active-list-date p{color:var(--muted);max-width:none;margin:0;font-size:13px;font-weight:800;line-height:1.4}.teacher-list-mini-stats span{color:#25315f;background:#eef3ff;border:1px solid #25315f24;border-radius:999px;padding:5px 8px;font-size:12px}.teacher-list-chip.closed .teacher-list-mini-stats span{color:var(--green);background:#edf8f2;border-color:#1d8f6329}.teacher-list-chip-actions{flex-wrap:wrap;gap:8px;display:flex}.teacher-closed-list-card{border:1px solid #1d8f6333;border-left:6px solid var(--green);background:linear-gradient(135deg,#1d8f6314,#0000 48%),#fff;border-radius:8px;gap:16px;padding:18px;display:grid}.teacher-closed-list-card h3{margin:0 0 8px;font-size:26px}.teacher-closed-list-card p{color:var(--muted);margin:0}.teacher-closed-summary{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.teacher-closed-summary span{border:1px solid var(--line);color:var(--ink);text-align:center;background:#f7faf8;border-radius:8px;padding:12px;font-weight:900}.teacher-close-summary{background:#fffaf0;border:1px solid #e8bf7c;border-left:6px solid #b7791f;border-radius:8px;gap:14px;padding:16px;display:grid}.teacher-close-summary h3,.teacher-close-summary p{margin:0}.teacher-close-summary p{color:var(--muted);font-weight:750}.teacher-close-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.teacher-close-summary-grid span{color:var(--ink);text-align:center;background:#fff;border:1px solid #b7791f38;border-radius:8px;padding:10px;font-weight:950}.teacher-scanner{grid-template-columns:1fr;gap:18px;padding:24px;display:grid}.teacher-reader-mode{background:linear-gradient(135deg,#1d8f631a,#0000 58%),#f7faf8;border:1px solid #b8e2c9;border-radius:10px;justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.teacher-reader-mode div{gap:4px;display:grid}.teacher-reader-mode strong{color:var(--ink);font-size:18px;line-height:1.15}.teacher-reader-mode span{color:var(--muted);font-size:13px;font-weight:850}.teacher-reader-mode button{white-space:nowrap;flex:none;min-height:46px}.teacher-scanner.physical-mode{border-color:#1d8f6359;box-shadow:0 18px 42px #122a1f14}.teacher-scanner.physical-mode .scan-form{border:2px solid var(--green);background:#fff;border-radius:12px;padding:16px}.teacher-scanner.physical-mode .scan-form label{color:var(--green);letter-spacing:0;text-transform:uppercase;font-size:14px}.teacher-scanner.physical-mode .scan-input input{min-height:86px;font-size:clamp(24px,4vw,38px);font-weight:950}.teacher-scanner.physical-mode .scan-form button[type=submit]{min-height:64px;font-size:18px}.teacher-scanner.physical-mode .teacher-scan-result{border-width:2px;padding:22px}.teacher-scanner.physical-mode .teacher-scan-result svg{width:40px;height:40px}.teacher-scanner.physical-mode .teacher-scan-result strong{font-size:clamp(28px,5vw,44px);line-height:1}.teacher-scanner.physical-mode .teacher-scan-result p{margin-top:6px;font-size:18px}.teacher-scan-result{border:1px solid var(--line);border-radius:8px;grid-template-columns:auto 1fr;align-items:center;gap:14px;padding:16px;display:grid}.teacher-camera-tools{border:1px solid var(--line);background:#f7faf8;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.teacher-camera-tools p{color:var(--muted);margin:0;font-size:13px;font-weight:800}.teacher-camera-action-group{flex-wrap:wrap;gap:8px;display:flex}.teacher-camera-view{background:#0f1d17;border:1px solid #122a1f59;border-radius:8px;min-height:260px;position:relative;overflow:hidden}.teacher-camera-view video{object-fit:cover;width:100%;height:100%;min-height:260px;display:block}.teacher-camera-view span{pointer-events:none;border:2px solid #ffffffd1;border-radius:8px;width:76%;height:42%;position:absolute;top:29%;left:12%;box-shadow:0 0 0 999px #07110d47}.teacher-scan-result svg{width:34px;height:34px}.teacher-scan-result.success{color:var(--green);background:#edf8f2;border-color:#1d8f6340}.teacher-scan-result.warning{color:var(--amber);background:#fff8e8;border-color:#b7791f47}.teacher-scan-result.error{color:var(--red);background:#fff0ed;border-color:#c9513f40}.teacher-scan-result p{color:var(--muted);margin:4px 0 0}.teacher-pass-summary{background:linear-gradient(135deg,#1d8f6314,#0000 60%),#fff;border:1px solid #1d8f632e;border-radius:8px;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:2px;padding:10px;display:grid}.teacher-pass-summary article{border:1px solid var(--line);border-left:4px solid var(--green);background:#f7faf8;border-radius:8px;gap:2px;padding:10px 12px;display:grid}.teacher-pass-summary strong{color:var(--ink);font-size:28px;line-height:1}.teacher-pass-summary span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:950}.teacher-stat-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.teacher-save-warning{background:#fff6e8;border:1px solid #e8bf7c;border-left:5px solid #b7791f;border-radius:8px;gap:3px;margin:0 0 12px;padding:12px;display:grid}.teacher-save-warning strong{color:#7d4f12}.teacher-save-warning span{color:#66523a;font-weight:700}.teacher-save-ok{border:1px solid #bfe5cf;border-left:5px solid var(--green);background:#edf8f2;border-radius:8px;gap:3px;margin:0 0 12px;padding:12px;display:grid}.teacher-save-ok strong{color:var(--green-dark)}.teacher-save-ok span{color:var(--muted);font-weight:750}.teacher-stat-grid article{border:1px solid var(--line);background:#f7faf8;border-radius:8px;gap:4px;padding:14px;display:grid}.teacher-stat-grid strong{font-size:32px}.teacher-stat-grid span{color:var(--muted);font-size:13px;font-weight:900}.teacher-results-grid{grid-template-columns:repeat(3,1fr);align-items:start;gap:18px;display:grid}.teacher-student-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.teacher-student-row div{gap:4px;min-width:0;display:grid}.teacher-student-row span,.teacher-student-row small{color:var(--muted);font-weight:800}.teacher-student-row textarea{border:1px solid var(--line);color:var(--ink);font:inherit;resize:vertical;border-radius:8px;width:100%;min-height:78px;padding:10px}.teacher-student-row.outside{align-items:stretch}.teacher-student-row.outside>div{width:100%}.teacher-student-row.present strong{color:var(--green)}.teacher-student-row.present.tardy,.teacher-student-row.present.tardy_minor,.teacher-student-row.present.tardy_major{border:1px solid #b3741a38;border-left:4px solid var(--amber);background:#fffaf0;border-radius:8px;margin-top:8px;padding:12px}.teacher-student-row.present.escaped{border:1px solid #c9513f3d;border-left:4px solid var(--red);background:#fff0ed;border-radius:8px;margin-top:8px;padding:12px}.teacher-student-row.present.tardy strong,.teacher-student-row.present.tardy_minor strong,.teacher-student-row.present.tardy_major strong{color:var(--amber)}.teacher-student-row.present.escaped strong,.teacher-student-row.absent strong,.teacher-student-row.outside strong{color:var(--red)}.teacher-student-row.ghost{opacity:.68;background:#f4f6f8;border:1px dashed #c7d0d7;border-radius:8px;margin-top:8px;padding:12px}.teacher-student-row.ghost strong{color:#63716c}.technical-group-panel{max-height:680px;overflow:auto}.compact-search{border:1px solid var(--line);background:#f7faf8;border-radius:8px;margin:12px 0;padding:12px}.teacher-empty-group{color:var(--muted);background:#f7faf8;border:1px dashed #25315f47;border-radius:8px;gap:6px;margin-top:12px;padding:14px;display:grid}.teacher-empty-group strong{color:var(--ink)}.teacher-empty-group p{margin:0}.teacher-search-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.teacher-search-actions span{color:var(--muted);font-size:13px;font-weight:900}.teacher-alert-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:14px;margin-bottom:22px;padding:22px;display:grid}.teacher-alert-view{background:linear-gradient(135deg, #25315f14, transparent 42%), var(--panel);border:1px solid #25315f2e;border-top:4px solid #25315f;border-radius:8px;gap:16px;margin-bottom:24px;padding:22px;display:grid;box-shadow:0 18px 42px #16211d14}.teacher-alert-view-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.teacher-alert-limit-box{border:1px solid var(--line);background:#f7faf8;border-radius:8px;flex-wrap:wrap;align-items:end;gap:12px;padding:14px;display:flex}.teacher-alert-limit-box label{color:var(--muted);text-transform:uppercase;gap:7px;min-width:180px;font-size:13px;font-weight:900;display:grid}.teacher-alert-limit-box input{max-width:140px}.teacher-alert-list{gap:12px;display:grid}.teacher-alert-card{border:1px solid #f2d9ab;border-left:5px solid var(--amber);background:#fffaf0;border-radius:8px;grid-template-columns:minmax(0,1fr) 320px;gap:14px;padding:14px;display:grid}.teacher-alert-card.process{background:#f4f7ff;border-color:#25315f33 #25315f33 #25315f33 #25315f}.teacher-alert-card.reincorporated{border-color:#1d8f6333;border-left-color:var(--green);background:#edf8f2}.teacher-alert-card.no_response,.teacher-alert-card.orientation{border-color:#c9513f33;border-left-color:var(--red);background:#fff0ed}.teacher-alert-card.closed{background:#f5f6f4;border-left-color:#77827c}.teacher-alert-card span,.teacher-alert-card small{color:var(--muted);font-weight:900}.teacher-alert-card strong{margin:4px 0;font-size:18px;display:block}.teacher-alert-card p{overflow-wrap:anywhere;margin:0}.teacher-alert-actions{gap:10px;display:grid}.teacher-alert-card.orientation.acknowledged{border-color:var(--line);background:#f5f6f4;border-left-color:#77827c}.teacher-alert-actions textarea{resize:vertical;min-height:84px}.teacher-report-filters{border:1px solid var(--line);background:#f7faf8;border-radius:8px;grid-template-columns:220px minmax(0,1fr);gap:12px;padding:14px;display:grid}.teacher-report-filters label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:12px;font-weight:900;display:grid}.teacher-report-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.teacher-report-summary article{border:1px solid var(--line);border-left:4px solid var(--green);background:#fff;border-radius:8px;gap:4px;padding:14px;display:grid}.teacher-report-summary span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.teacher-report-summary strong{font-size:28px}.teacher-report-table-wrap{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:auto}.teacher-report-table{border-collapse:collapse;width:100%;min-width:980px}.teacher-report-table th,.teacher-report-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 12px}.teacher-report-table th{color:var(--green);text-transform:uppercase;background:#f0faf4;font-size:12px;font-weight:950}.teacher-report-table td strong,.teacher-report-table td small{display:block}.teacher-report-table td small{color:var(--muted);margin-top:3px;font-size:12px;font-weight:800}.teacher-report-risk{border-radius:999px;padding:6px 9px;font-size:12px;font-weight:950;display:inline-flex}.teacher-report-risk.bien{color:var(--green);background:#e4f8ed}.teacher-report-risk.atencion{color:#9a640c;background:#fff4db}.teacher-report-risk.riesgo,.teacher-report-risk.alto,.teacher-report-risk.critico{color:var(--red);background:#fff0ed}.teacher-badge{border:1px solid var(--line);white-space:nowrap;border-radius:999px;padding:7px 10px;font-size:12px}.teacher-badge.card{color:var(--green);background:#edf8f2;border-color:#1d8f6333}.teacher-badge.manual{color:#25315f;background:#eef3ff;border-color:#25315f38}.teacher-present-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.teacher-quick-roster{border:1px solid var(--line);border-left:5px solid var(--green);background:#f7faf8;border-radius:8px;gap:14px;padding:14px;display:grid}.teacher-quick-roster-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;display:grid}.teacher-quick-roster-header h3,.teacher-quick-roster-header p{margin:0}.teacher-quick-roster-header p{color:var(--muted)}.teacher-quick-roster-tools{gap:10px;display:grid}.teacher-quick-roster-tabs{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.teacher-quick-roster-tabs button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;min-height:42px;font-weight:900}.teacher-quick-roster-tabs button.active{background:var(--green-dark);border-color:var(--green-dark);color:#fff}.teacher-quick-roster-list{border:1px solid var(--line);background:#fff;border-radius:8px;gap:8px;max-height:440px;padding:8px;display:grid;overflow:auto}.teacher-quick-roster-row{border:1px solid var(--line);border-left:4px solid var(--green);background:#fbfdfc;border-radius:8px;grid-template-columns:1fr;align-items:stretch;gap:12px;min-width:0;padding:12px;display:grid}.teacher-quick-roster-row strong{color:var(--ink)}.teacher-quick-roster-row.absent strong{color:var(--red)}.teacher-quick-roster-row.present strong{color:var(--green)}.teacher-quick-student-info{gap:4px;width:100%;min-width:0;display:grid}.teacher-quick-student-info strong,.teacher-quick-student-info small,.teacher-quick-student-info span{overflow-wrap:anywhere;white-space:normal;word-break:normal;max-width:100%;line-height:1.2;display:block}.teacher-quick-roster-row small,.teacher-quick-roster-row span{color:var(--muted);font-weight:800}.teacher-quick-roster-actions{grid-template-columns:repeat(2,minmax(88px,1fr));justify-content:stretch;align-items:center;gap:6px;width:100%;display:grid}.teacher-quick-roster-actions .compact-action{width:100%;min-height:34px;padding:6px 9px}.teacher-quick-roster-row.absent>.compact-action{color:#25315f;background:#eef3ff;border-color:#25315f38;font-weight:950}.compact-action{white-space:normal;min-height:38px;padding:7px 10px;font-size:13px}.compact-action.active{color:#fff;background:#25315f;border-color:#25315f}.compact-action.danger-soft.active{background:var(--red);border-color:var(--red);color:#fff}.compact-header{align-items:center}.compact-header span{color:#25315f;background:#eef3ff;border:1px solid #25315f29;border-radius:999px;padding:6px 10px;font-weight:900}.early-alert-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:18px;padding:24px;display:grid}.early-alert-controls{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.early-alert-controls label{gap:6px;font-weight:800;display:grid}.early-alert-controls input{max-width:180px}.early-alert-controls span{color:var(--muted);font-weight:800}.early-alert-list{gap:12px;display:grid}.early-alert-card{border:1px solid #f2d9ab;border-left:6px solid var(--amber);background:#fffaf0;border-radius:8px;grid-template-columns:minmax(0,1fr) 340px;gap:16px;padding:16px;display:grid}.early-alert-card.process{background:#f4f7ff;border-color:#25315f33 #25315f33 #25315f33 #25315f}.early-alert-card.reincorporated{border-color:#1d8f6333;border-left-color:var(--green);background:#edf8f2}.early-alert-card.no_response,.early-alert-card.orientation{border-color:#c9513f33;border-left-color:var(--red);background:#fff0ed}.early-alert-card.closed{background:#f5f6f4;border-left-color:#77827c}.early-alert-card h3{margin:4px 0 8px}.early-alert-card p{color:var(--ink);margin:0 0 6px}.early-alert-card span,.early-alert-card small{color:var(--muted);font-weight:900}.early-alert-notes{border:1px solid var(--line);background:#ffffffb8;border-radius:8px;gap:4px;margin-top:10px;padding:10px;display:grid}.early-alert-notes p{color:var(--muted);font-size:13px}.early-alert-actions{gap:10px;display:grid}.early-alert-actions textarea{resize:vertical;min-height:86px}.assistant-ii-shell{max-width:1280px}.assistant-ii-stats{grid-template-columns:repeat(5,1fr);gap:14px;margin:22px 0;display:grid}.assistant-ii-stats article{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:6px;padding:18px;display:grid}.assistant-ii-stats article.danger{background:#fff0ed;border-color:#c9513f38}.assistant-ii-stats strong{font-size:36px}.assistant-ii-stats span{color:var(--muted);font-weight:900}.assistant-ii-tabs{background:var(--panel);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;gap:10px;margin-bottom:16px;padding:10px;display:flex}.assistant-ii-tabs button{border:1px solid var(--line);color:var(--ink);background:#f7faf8;flex:220px;justify-content:center}.assistant-ii-tabs button.active{color:#25315f;background:#eef3ff;border-color:#25315f3d}.assistant-ii-tabs button.active.danger{color:var(--red);background:#fff0ed;border-color:#c9513f47}.assistant-ii-tabs span{color:#fff;background:currentColor;border-radius:999px;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 7px;font-size:12px;display:inline-flex}.assistant-ii-toolbar{background:var(--panel);border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(520px,.9fr);align-items:end;gap:18px;padding:22px;display:grid}.assistant-ii-toolbar p{color:var(--muted);margin:0}.assistant-ii-filters{grid-template-columns:minmax(220px,1fr) 140px 180px 150px;gap:10px;display:grid}.assistant-ii-filters label,.assistant-ii-card-actions label{color:var(--muted);text-transform:uppercase;gap:7px;font-size:12px;font-weight:900;display:grid}.assistant-ii-filters label span{align-items:center;gap:8px;display:flex}.assistant-ii-filters svg{color:var(--muted);width:20px;height:20px}.assistant-ii-message{margin:14px 0}.assistant-ii-summary-grid{grid-template-columns:repeat(2,1fr);gap:14px;margin-top:18px;display:grid}.assistant-ii-priority-card{background:linear-gradient(135deg, #1d8f6314, transparent 55%), var(--panel);border:1px solid var(--line);border-left:6px solid var(--green);border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:18px;display:grid}.assistant-ii-priority-card.danger{border-left-color:var(--red);background:linear-gradient(135deg,#c9513f1a,#0000 55%),#fff}.assistant-ii-priority-card h2{margin:4px 0 6px;font-size:22px}.assistant-ii-priority-card p{color:var(--muted);margin:0}.assistant-ii-priority-card strong{font-size:38px}.assistant-ii-list{gap:14px;margin-top:18px;display:grid}.assistant-ii-card{border:1px solid #f2d9ab;border-left:6px solid var(--amber);background:#fffaf0;border-radius:8px;grid-template-columns:minmax(0,1fr) 390px;gap:18px;padding:18px;display:grid}.assistant-ii-card.process{background:#f4f7ff;border-color:#25315f33 #25315f33 #25315f33 #25315f}.assistant-ii-card.reincorporated{border-color:#1d8f6333;border-left-color:var(--green);background:#edf8f2}.assistant-ii-card.no_response,.assistant-ii-card.orientation,.assistant-ii-card.class-absence.new,.assistant-ii-card.class-absence.review,.assistant-ii-card.class-absence.notify_teacher,.assistant-ii-card.class-absence.escaped{border-color:#c9513f33;border-left-color:var(--red);background:#fff0ed}.assistant-ii-card.class-absence.tardy,.assistant-ii-card.class-absence.outside_section,.assistant-ii-card.class-absence.not_in_group{border-color:#f2d9ab;border-left-color:var(--amber);background:#fffaf0}.assistant-ii-card.class-absence.justified{background:#f4f7ff;border-color:#25315f33 #25315f33 #25315f33 #25315f}.assistant-ii-card.closed{background:#f5f6f4;border-left-color:#77827c}.assistant-ii-card h3{margin:8px 0;font-size:24px}.assistant-ii-card p{color:var(--ink);margin:0 0 8px}.assistant-ii-card small{color:var(--muted);font-weight:800}.assistant-ii-status{border:1px solid var(--line);color:var(--ink);background:#ffffffb3;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900;display:inline-flex}.assistant-ii-card-actions{gap:10px;display:grid}.assistant-ii-card-actions textarea{resize:vertical;min-height:78px}.assistant-ii-empty{background:var(--panel);border:1px solid var(--line);color:var(--muted);text-align:center;border-radius:8px;place-items:center;gap:8px;padding:34px;display:grid}.assistant-ii-empty svg{color:var(--blue);width:34px;height:34px}.early-alert-admin-panel .assistant-ii-list{margin-top:14px}.admin-early-alert-toolbar{grid-template-columns:minmax(220px,.75fr) minmax(0,1.25fr);align-items:end;margin-top:16px;overflow:hidden}.admin-early-alert-toolbar>div:first-child{min-width:0}.admin-early-alert-toolbar .assistant-ii-filters{grid-template-columns:minmax(180px,1fr) minmax(126px,.55fr) minmax(126px,.55fr) minmax(132px,auto);align-items:end;min-width:0}.admin-early-alert-toolbar .assistant-ii-filters label,.admin-early-alert-toolbar .assistant-ii-filters input,.admin-early-alert-toolbar .assistant-ii-filters select{width:100%;min-width:0}.admin-early-alert-toolbar .assistant-ii-filters button{white-space:nowrap;align-self:end;min-height:48px}.early-teacher-notes{border:1px solid var(--line);background:#ffffffad;border-radius:8px;gap:6px;margin-top:14px;padding:12px;display:grid}.early-teacher-notes strong{text-transform:uppercase;font-size:13px}.early-teacher-notes p{color:var(--muted);margin:0;font-size:14px}.followup-shell{max-width:1280px}.followup-hero{background:linear-gradient(120deg, #1d8f631f, transparent 50%), linear-gradient(100deg, transparent 72%, #1d8f6314 72%), var(--panel);border:1px solid #b9dec9;border-top:5px solid var(--green);border-radius:14px;justify-content:space-between;align-items:center;gap:18px;margin:18px 0;padding:28px;display:flex;box-shadow:0 18px 45px #0f2b1f14}.followup-hero-main{align-items:center;gap:24px;display:flex}.followup-hero-main img{object-fit:contain;background:#ffffffc7;border:1px solid #0f805329;border-radius:18px;width:118px;height:118px;padding:16px;box-shadow:0 16px 36px #0f2b1f1a}.followup-hero h1{margin:4px 0 10px;font-size:clamp(34px,5vw,58px);line-height:.95}.followup-hero p{color:var(--muted);max-width:760px;margin:0}.followup-tabs{background:linear-gradient(135deg, #1d8f6312, transparent 48%), var(--panel);border:1px solid var(--line);border-radius:12px;gap:12px;margin-bottom:18px;padding:16px;display:grid}.followup-tabs-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:10px;display:flex}.followup-tabs-heading h2,.followup-tab-group h3{margin:0}.followup-tabs-heading>span{color:var(--green);background:#ecfdf4;border:1px solid #b9ebcd;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.followup-tab-groups{gap:10px;display:grid}.followup-tab-group{gap:7px;display:grid}.followup-tab-group h3{color:var(--muted);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:900}.followup-tab-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;display:grid}.followup-tab-grid button{border:1px solid var(--line);color:var(--ink);text-align:left;background:#fff;border-radius:8px;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:9px;width:100%;min-height:58px;padding:10px 12px;display:grid;position:relative}.followup-tab-grid button.active{color:#fff;background:#0f6f45;border-color:#0f6f45;box-shadow:0 12px 26px #0f6f4529}.followup-tab-icon{color:var(--green);background:#edf8f2;border:1px solid #cce8d9;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.followup-tab-grid button.active .followup-tab-icon{color:#fff;background:#ffffff24;border-color:#ffffff38}.followup-tab-icon svg{width:19px;height:19px}.followup-tab-text{gap:3px;min-width:0;display:grid}.followup-tab-text strong{overflow-wrap:anywhere;font-size:14px;line-height:1.1}.followup-tab-text small{color:var(--muted);font-size:11px;font-weight:800}.followup-tab-grid button.active .followup-tab-text small{color:#ffffffc7}.followup-tab-grid .tab-count{color:#fff;background:#d24c43;border-radius:999px;justify-content:center;align-items:center;min-width:26px;padding:4px 7px;font-size:11px;font-weight:900;display:inline-flex;position:absolute;top:10px;right:10px}.followup-dashboard{grid-template-columns:repeat(6,1fr);margin-bottom:16px}.usage-monitor-panel{gap:16px;display:grid}.usage-monitor-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.usage-monitor-filters{grid-template-columns:minmax(220px,1fr) minmax(180px,260px) auto;align-items:end;gap:10px;display:grid}.usage-monitor-filters label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:12px;font-weight:900;display:grid}.usage-monitor-filters input,.usage-monitor-filters select{text-transform:none}.usage-monitor-table{border:1px solid var(--line);border-radius:10px;overflow-x:auto}.usage-monitor-table table{border-collapse:collapse;width:100%;min-width:920px}.usage-monitor-table th,.usage-monitor-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:11px 12px}.usage-monitor-table th{color:var(--green);text-transform:uppercase;background:#f1f7f4;font-size:12px;font-weight:900}.usage-monitor-table td strong,.usage-monitor-table td small{display:block}.usage-monitor-table td small{color:var(--muted);margin-top:3px;font-weight:800}.usage-pill{border:1px solid var(--line);color:var(--muted);background:#eef2f0;border-radius:999px;padding:5px 8px;font-size:12px;font-weight:900;display:inline-flex}.usage-pill.online{color:#0f7a48;background:#e4f8ec;border-color:#b6e6c8}.entry-cutoff-panel{background:linear-gradient(135deg, #1d8f6312, transparent 65%), var(--panel);border:1px solid var(--line);border-radius:8px;gap:14px;margin:0 0 16px;padding:16px;display:grid}.entry-cutoff-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-bottom:10px;display:flex}.entry-cutoff-heading h2{margin:0}.entry-cutoff-heading>span{color:var(--green);background:#e9f8ef;border:1px solid #bde8cf;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.entry-cutoff-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.entry-cutoff-actions>span{color:var(--green);background:#e9f8ef;border:1px solid #bde8cf;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.entry-cutoff-actions button{min-height:38px}.entry-cutoff-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.entry-cutoff-grid article{border:1px solid #cfe4d9;border-left:5px solid var(--green);background:#f8fbf9;border-radius:8px;gap:6px;padding:14px;display:grid}.entry-cutoff-grid article.custom{border-left-color:#10241b}.entry-cutoff-grid span,.entry-cutoff-grid small,.entry-cutoff-grid label{color:var(--muted);font-weight:900}.entry-cutoff-grid strong{font-size:36px;line-height:1}.entry-cutoff-grid label{gap:6px;display:grid}.entry-cutoff-custom-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.entry-cutoff-grid input{max-width:180px}.admin-entry-control-panel{gap:16px}.admin-entry-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.admin-entry-filter-grid label{color:var(--muted);gap:6px;font-size:13px;font-weight:900;display:grid}.admin-entry-filter-grid input,.admin-entry-filter-grid select{background:#f8fbf9;border:1px solid #cfe4d9;border-radius:8px;min-height:42px;padding:9px 11px}.admin-entry-stat-grid{margin-top:0}.admin-entry-actions{flex-wrap:wrap;gap:10px;display:flex}.admin-entry-actions button{align-items:center;gap:8px;min-height:40px;display:inline-flex}.admin-entry-list{gap:10px;max-height:560px;padding-right:4px;display:grid;overflow:auto}.admin-entry-row{border:1px solid #d5e5dc;border-left:5px solid var(--green);background:#fbfdfb;border-radius:8px;grid-template-columns:1.5fr 1fr auto;align-items:center;gap:12px;padding:12px;display:grid}.admin-entry-row.outside{border-left-color:#77867d}.admin-entry-row strong{line-height:1.15;display:block}.admin-entry-row span{color:var(--muted);font-size:13px;display:block}.admin-entry-status{text-align:center;background:#e8f7ef;border:1px solid #bde6cd;border-radius:999px;padding:7px 10px;font-weight:900;color:var(--green)!important;font-size:12px!important}.admin-entry-row.outside .admin-entry-status{background:#eef2ef;border-color:#d5ddd7;color:#59675f!important}.followup-summary-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.followup-summary-grid article,.followup-list article{background:linear-gradient(135deg, #1d8f630f, transparent 60%), var(--panel);border:1px solid var(--line);border-radius:8px;gap:8px;padding:18px;display:grid}.followup-summary-grid svg{color:var(--green);width:28px;height:28px}.followup-summary-grid strong{font-size:36px}.followup-summary-grid p,.followup-list p,.followup-list small,.followup-note{color:var(--muted);margin:0}.followup-two-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.followup-list{gap:12px;display:grid}.followup-list h3{margin:0}.wide-input{width:100%;margin-bottom:14px}.followup-announcement-form,.followup-observation-form{gap:14px;display:grid}.followup-observation-form{margin-bottom:18px}.list-summary-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0;display:grid}.list-summary-strip article{background:linear-gradient(135deg,#1d8f6314,#0000 65%),#f4fbf7;border:1px solid #b9dec9;border-radius:8px;gap:4px;padding:14px;display:grid}.list-summary-strip span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.list-summary-strip strong{color:var(--ink);font-size:28px}.followup-login-card a{background:var(--ink);color:#fff;border-radius:8px;justify-content:center;align-items:center;width:max-content;min-height:40px;padding:0 14px;font-weight:900;text-decoration:none;display:inline-flex}.student-profile-workspace{grid-template-columns:minmax(280px,.42fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.student-profile-search,.student-profile-detail{border:1px solid var(--line);background:#f8fbf9;border-radius:10px;gap:12px;padding:16px;display:grid}.student-profile-search{position:sticky;top:12px}.student-profile-search label{color:var(--muted);gap:6px;font-size:13px;font-weight:900;display:grid}.student-profile-results{gap:8px;max-height:560px;padding-right:4px;display:grid;overflow:auto}.student-profile-results button{border:1px solid var(--line);color:var(--ink);text-align:left;background:#fff;border-radius:8px;gap:3px;padding:12px;display:grid}.student-profile-results button.active{border-color:var(--green);box-shadow:0 0 0 2px #0f80531f}.student-profile-results span{color:var(--muted);font-size:13px}.student-profile-card{border:1px solid var(--line);border-left:6px solid var(--green);background:linear-gradient(120deg,#1d8f631a,#0000 62%),#fff;border-radius:12px;grid-template-columns:118px minmax(0,1fr);align-items:start;gap:20px;padding:18px;display:grid}.student-profile-photo{aspect-ratio:1;border:1px solid var(--line);color:var(--muted);background:#edf1f3;border-radius:12px;justify-content:center;align-items:center;font-size:14px;font-weight:900;display:flex;overflow:hidden}.student-profile-photo img{object-fit:cover;width:100%;height:100%}.student-profile-card h2{max-width:880px;margin:0;font-size:clamp(24px,3.2vw,38px);line-height:1.04}.student-profile-card p{color:var(--muted);margin:0}.student-profile-main{min-width:0}.student-profile-meta-row{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.student-profile-meta-row span{border:1px solid var(--line);color:var(--muted);background:#f4f8f6;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.student-profile-badges{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.student-profile-badges span{border:1px solid var(--line);color:var(--ink);background:#eef4f0;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.student-profile-badges span.inside{color:#0f6f45;background:#dcf8e9;border-color:#9bd8b6}.student-profile-badges span.outside{color:var(--red);background:#fae5e0;border-color:#efc3bd}.student-profile-info-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.student-profile-info-grid article{border:1px solid var(--line);background:#fff;border-radius:8px;gap:5px;padding:12px;display:grid}.student-profile-info-grid article:first-child,.student-profile-info-grid article:nth-child(5),.student-profile-info-grid article:nth-child(8){grid-column:span 2}.student-profile-info-grid span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.student-profile-info-grid strong{color:var(--ink);overflow-wrap:anywhere;font-size:15px}.student-profile-warning{background:#fff7ed;border:1px solid #fed7aa;border-left:6px solid #b7791f;border-radius:8px;gap:5px;padding:14px;display:grid}.student-profile-warning p,.student-profile-warning small{color:var(--muted);margin:0}.student-profile-condition-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.student-profile-condition-grid span{color:var(--muted);text-transform:uppercase;background:#fff;border:1px solid #fed7aa;border-radius:8px;gap:4px;padding:10px;font-size:12px;font-weight:900;display:grid}.student-profile-condition-grid b{color:var(--ink);text-transform:none;font-size:14px}.student-profile-clear{background:#f4fbf7;border:1px solid #b9dec9;border-radius:8px;gap:5px;padding:14px;display:grid}.student-profile-clear p{color:var(--muted);margin:0}.student-profile-actions{flex-wrap:wrap;gap:8px;display:flex}.student-profile-actions button{min-height:38px;padding:0 14px}.student-profile-section-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:10px;padding-bottom:8px;display:flex}.student-profile-section-title.compact{margin-top:2px}.student-profile-section-title span{color:var(--blue);text-transform:uppercase;font-size:12px;font-weight:900}.student-profile-section-title strong{color:var(--muted);font-size:13px}.student-profile-extra-actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px;padding-top:14px;display:flex}.student-profile-extra-actions button{border:1px solid var(--line);color:var(--ink);background:#fff}.student-profile-extra-actions button.active{background:var(--ink);border-color:var(--ink);color:#fff}.followup-dining-controls{margin:14px 0}.followup-dining-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:16px;margin-top:16px;display:grid}.followup-dining-card{border:1px solid var(--line);background:#f8fbf9;border-radius:10px;gap:12px;padding:16px;display:grid}.followup-dining-card h3{margin:0}.teacher-schedule-panel{gap:16px;display:grid}.teacher-schedule-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.teacher-schedule-summary article{border:1px solid var(--line);background:linear-gradient(135deg,#1d8f6314,#0000 70%),#fff;border-radius:10px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;padding:14px;display:grid}.teacher-schedule-summary svg{color:var(--green);background:#edf8f2;border:1px solid #cce8d9;border-radius:10px;width:42px;height:42px;padding:9px}.teacher-schedule-summary span,.teacher-schedule-summary small{color:var(--muted);font-size:12px;font-weight:800;display:block}.teacher-schedule-summary strong{font-size:24px;line-height:1.1;display:block}.teacher-schedule-controls{grid-template-columns:minmax(0,1fr) 220px;gap:12px;display:grid}.teacher-schedule-controls label{color:var(--muted);gap:6px;font-size:13px;font-weight:900;display:grid}.teacher-schedule-now{background:#f4fbf7;border:1px solid #cce8d9;border-radius:12px;padding:14px}.teacher-schedule-now-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.teacher-schedule-now-grid article{border:1px solid var(--line);border-left:5px solid var(--green);background:#fff;border-radius:9px;gap:5px;padding:12px;display:grid}.teacher-schedule-now-grid span,.teacher-schedule-now-grid small{color:var(--muted)}.teacher-schedule-workspace{grid-template-columns:320px minmax(0,1fr);gap:16px;display:grid}.teacher-schedule-list,.teacher-schedule-detail{border:1px solid var(--line);background:#fff;border-radius:12px;padding:14px}.teacher-schedule-list{align-content:start;gap:8px;max-height:720px;display:grid;overflow:auto}.teacher-schedule-list-head{background:#f4fbf7;border:1px solid #dceee4;border-radius:9px;gap:3px;margin-bottom:4px;padding:10px;display:grid}.teacher-schedule-list-head small,.teacher-schedule-list button span,.teacher-schedule-title span{color:var(--muted)}.teacher-schedule-list button{border:1px solid var(--line);color:var(--ink);text-align:left;background:#fff;border-radius:9px;gap:3px;padding:11px;display:grid}.teacher-schedule-list button.active{color:#fff;background:#10231c;border-color:#10231c}.teacher-schedule-list button.active span{color:#ffffffbf}.teacher-schedule-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding-bottom:12px;display:flex}.teacher-schedule-title h2{margin:0 0 6px;font-size:clamp(28px,4vw,42px);line-height:1}.teacher-schedule-title button{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.teacher-schedule-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.teacher-schedule-grid article{border:1px solid var(--line);background:#f8fbf9;border-left:5px solid #b8cdc4;border-radius:10px;gap:10px;padding:12px;display:grid}.teacher-schedule-grid article.current{border-color:#9fdcbb;border-left-color:var(--green);background:#ecfdf4;box-shadow:0 12px 28px #0f6f451f}.teacher-schedule-lesson{justify-content:space-between;align-items:center;gap:8px;display:flex}.teacher-schedule-lesson strong{color:#fff;background:#10231c;border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.teacher-schedule-lesson span,.teacher-schedule-empty span,.teacher-schedule-entry small,.teacher-schedule-entry p{color:var(--muted)}.teacher-schedule-entry h3{margin:0;font-size:17px;line-height:1.15}.teacher-schedule-entry p{margin:4px 0;font-weight:800}.dining-record-list.compact{max-height:560px;padding-right:4px;overflow:auto}.teacher-appointment-view,.parent-visitor-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:18px;padding:22px;display:grid}.teacher-appointment-grid{grid-template-columns:minmax(0,.9fr) minmax(360px,.7fr);gap:18px;display:grid}.teacher-appointment-list,.visitor-pass-list,.visitor-admin-list{gap:12px;display:grid}.appointment-submit{transition:background .18s,border-color .18s,transform .18s}.appointment-submit.saved{background:var(--green);border-color:var(--green);color:#fff}.appointment-submit.saved:hover{background:#0b7a4a;border-color:#0b7a4a}.appointment-confirmation{color:#0f6f45;background:#ecfdf4;border:1px solid #b9ebcd;border-radius:8px;margin:0;padding:10px 12px;font-size:14px;font-weight:800}.visitor-list-section,.visitor-history-box{gap:10px;display:grid}.visitor-list-section h3,.visitor-history-box h3{margin:0;font-size:18px}.visitor-mini-card,.visitor-pass-card,.visitor-admin-card{border:1px solid var(--line);border-left:6px solid var(--blue);background:#fff;border-radius:8px;gap:10px;padding:16px;display:grid}.visitor-pass-card,.visitor-admin-card{grid-template-columns:minmax(0,1fr) auto;align-items:center}.visitor-mini-card.inside,.visitor-pass-card.inside,.visitor-admin-card.inside{border-left-color:var(--green)}.visitor-mini-card.completed,.visitor-pass-card.completed,.visitor-admin-card.completed{background:#f5f6f4;border-left-color:#77827c}.visitor-mini-card.expired,.visitor-pass-card.expired,.visitor-admin-card.expired,.visitor-mini-card.cancelled,.visitor-pass-card.cancelled,.visitor-admin-card.cancelled{border-left-color:var(--red);background:#fff0ed}.visitor-mini-card span,.visitor-pass-card span,.visitor-admin-card span{color:var(--blue);text-transform:uppercase;font-size:12px;font-weight:900}.visitor-mini-card strong,.visitor-pass-card strong,.visitor-admin-card strong{color:var(--ink)}.visitor-mini-card p,.visitor-pass-card p,.visitor-admin-card p{color:var(--muted);margin:0}.visitor-barcode-box{border:1px solid var(--line);background:#f8faf8;border-radius:8px;justify-items:center;gap:6px;padding:10px;display:grid}.visitor-barcode-box svg{width:100%;max-width:260px}.visitor-barcode-box.completed{background:#f5f6f4;justify-items:start}.visitor-history-box{border-top:1px solid var(--line);margin-top:4px;padding-top:14px}.visitor-history-row{border:1px solid var(--line);background:#fff;border-left:5px solid #77827c;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.visitor-history-row.expired,.visitor-history-row.cancelled{border-left-color:var(--red)}.visitor-history-row span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.visitor-history-row p{color:var(--muted);margin:3px 0 0}.visitor-history-row small{color:var(--muted);font-weight:800}.visitor-admin-stats{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.visitor-admin-stats article{border:1px solid var(--line);background:#f8faf8;border-radius:8px;gap:4px;padding:16px;display:grid}.visitor-admin-stats span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.visitor-admin-stats strong{font-size:34px}@media (max-width:980px){.dining-grid,.secondary-grid,.dining-record{grid-template-columns:1fr}.dining-quick-nav{grid-template-columns:repeat(2,minmax(0,1fr));position:static}.dining-record-list-limited{max-height:440px}.dining-beneficiary-list article,.dining-report-controls,.dining-print-meta,.dining-print-stats{grid-template-columns:1fr}.dining-record small{text-align:left}.dining-section-grid{grid-template-columns:repeat(2,1fr)}.followup-hero,.followup-hero-main,.module-heading-brand{flex-direction:column;align-items:flex-start}.followup-hero-main img{width:92px;height:92px}.operations-hero,.operations-status,.operations-grid,.teacher-grid,.teacher-attendance-grid,.teacher-results-grid,.correction-workspace,.correction-filter-grid,.correction-result-list,.student-detail-grid,.teacher-section-notices{grid-template-columns:1fr}.correction-status-filter div{flex-wrap:wrap}.correction-status-filter button{flex:1}.correction-result-header{display:none}.correction-result-list button,.correction-result-list button>div{grid-template-columns:1fr}.correction-result-list button>div{gap:4px}.correction-result-list button>div>strong,.correction-result-list button>div>span{white-space:normal}.correction-result-list small{justify-self:start}.teacher-section-form{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-modality-select{grid-column:1/-1;min-width:0}.teacher-section-form button{grid-column:1/-1;justify-content:center;width:100%}.teacher-session{padding:20px}.teacher-session h1{font-size:clamp(34px,10vw,46px);line-height:1.03}.teacher-work-tabs{z-index:11;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;position:sticky;top:0}.teacher-quick-guide{grid-template-columns:1fr}.teacher-work-tabs button{overflow-wrap:normal;white-space:normal;justify-content:center;width:100%;min-height:58px;padding:12px 10px;font-size:14px;line-height:1.15;overflow:hidden}.teacher-work-tabs button svg{width:17px;height:17px}.teacher-active-strip{flex-direction:column;align-items:stretch}.teacher-active-strip button{white-space:normal;justify-content:center;width:100%}.teacher-work-tabs .teacher-work-alert.has-alerts{padding-left:10px;padding-right:34px}.teacher-work-tabs .teacher-work-alert span{position:absolute;top:8px;right:8px}.teacher-camera-tools,.teacher-reader-mode{flex-direction:column;align-items:stretch}.teacher-reader-mode button{justify-content:center;width:100%}.teacher-active-list-date{grid-template-columns:1fr}.teacher-pass-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-pass-summary article:first-child{grid-column:1/-1}.teacher-scanner>.teacher-list-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-camera-action-group{grid-template-columns:1fr;display:grid}.teacher-camera-action-group button{width:100%}.teacher-closed-summary{grid-template-columns:1fr}.teacher-close-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.assistant-ii-stats,.assistant-ii-summary-grid,.assistant-ii-priority-card,.assistant-ii-toolbar,.assistant-ii-filters,.assistant-ii-card,.followup-dashboard,.entry-cutoff-grid,.admin-entry-filter-grid,.admin-entry-row,.followup-summary-grid,.followup-two-columns,.followup-tab-grid,.student-profile-workspace,.student-profile-card,.student-profile-info-grid,.student-profile-condition-grid,.followup-dining-grid,.teacher-schedule-summary,.teacher-schedule-controls,.teacher-schedule-workspace,.teacher-schedule-grid,.list-summary-strip,.teacher-appointment-grid,.visitor-pass-card,.visitor-history-row,.visitor-admin-card,.visitor-admin-stats,.teacher-report-filters,.teacher-report-summary{grid-template-columns:1fr}.teacher-report-table-wrap{margin:0 -6px}.entry-cutoff-heading{flex-direction:column;align-items:flex-start}.entry-cutoff-actions{flex-direction:column;align-items:stretch;width:100%}.entry-cutoff-grid input{width:100%;max-width:none}.entry-cutoff-custom-fields{grid-template-columns:1fr}.teacher-alert-view-actions,.teacher-alert-limit-box{flex-direction:column;align-items:stretch}.teacher-alert-view-actions button,.teacher-alert-limit-box button,.teacher-alert-limit-box input{width:100%;max-width:none}.teacher-alert-view .connections-header{flex-direction:column;align-items:stretch;gap:14px}.teacher-orientation-view .connections-header h2{font-size:clamp(26px,9vw,36px);line-height:1.08}.teacher-alert-view-actions{grid-template-columns:1fr;justify-content:stretch;display:grid}.teacher-recommendation-section-tabs{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.teacher-recommendation-section-tabs button{justify-content:center;width:100%;min-width:0}.teacher-student-row{flex-direction:column;align-items:stretch}.teacher-quick-roster-header,.teacher-quick-roster-row{grid-template-columns:1fr}.teacher-quick-roster-header button,.teacher-quick-roster-row button,.teacher-quick-roster-row .teacher-badge{width:100%}.teacher-present-actions{justify-content:flex-start}.teacher-quick-roster-actions{justify-content:stretch;width:100%}.teacher-quick-roster-actions .compact-action{width:100%}.teacher-badge,.compact-action{width:fit-content}.teacher-quick-roster-row .compact-action{width:100%}.early-alert-card{grid-template-columns:1fr}.teacher-alert-card{grid-template-columns:1fr;overflow:hidden}.teacher-alert-card strong,.teacher-alert-card span,.teacher-alert-card small{overflow-wrap:anywhere}.teacher-alert-actions button,.teacher-alert-actions select,.teacher-alert-actions textarea{width:100%}.teacher-session{flex-direction:column;align-items:stretch}.teacher-session .session-actions{place-items:stretch stretch;width:100%}.teacher-session .teacher-alert-button,.teacher-session .secondary-login-link,.teacher-session button.secondary{justify-content:center;width:100%;min-height:52px}.teacher-alert-button{overflow-wrap:anywhere;white-space:normal;padding:10px 44px 10px 14px;line-height:1.15;position:relative;overflow:hidden}.teacher-alert-button span{position:absolute;top:50%;right:14px;transform:translateY(-50%)}.student-schedule-card{padding:16px}.student-schedule-heading,.schedule-selector-grid,.schedule-current-summary,.student-day-block{grid-template-columns:1fr}.student-schedule-heading{display:grid}.admin-quick-dashboard,.administrative-hero,.administrative-tab-grid,.admin-workflow-strip,.correction-selected-strip,.incomplete-filter-grid,.incomplete-student-card,.panel-toolbar{grid-template-columns:1fr}.admin-quick-dashboard button,.incomplete-student-card button,.panel-toolbar button,.schedule-selector-grid button,.student-day-block{width:100%}}@media (max-width:700px){.usage-monitor-filters,.usage-monitor-summary{grid-template-columns:1fr}.usage-monitor-filters button{width:100%}.secure-session-badge{width:fit-content;max-width:calc(100vw - 28px);margin:8px auto 10px;position:sticky;top:8px}.teacher-section-list article{grid-template-columns:1fr;align-items:stretch;gap:14px;padding:18px}.teacher-section-list article strong{margin-bottom:8px;font-size:22px;line-height:1.12;display:block}.teacher-section-list article p{margin:0 0 8px;font-size:16px;line-height:1.35}.teacher-section-list article small{color:#0d6b43;background:#edf7f1;border:1px solid #cce6d6;border-radius:999px;align-self:flex-start;padding:6px 10px;font-size:13px;font-weight:900;display:inline-flex}.teacher-card-actions{grid-template-columns:1fr auto;gap:10px;width:100%;display:grid}.teacher-card-actions button{white-space:normal;justify-content:center;width:100%;min-height:48px}.teacher-card-actions button:first-child:nth-last-child(3){grid-column:1/-1}.teacher-card-actions button svg{flex:none}}@media (max-width:430px){.teacher-card-actions{grid-template-columns:1fr}.teacher-card-actions button:first-child:nth-last-child(3){grid-column:auto}}.teacher-audit-layout{grid-template-columns:minmax(300px,380px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.teacher-audit-list{gap:8px;max-height:620px;padding-right:4px;display:grid;overflow:auto}.teacher-audit-list button{color:#102019;text-align:left;background:#fff;border:1px solid #d8e5df;border-radius:8px;gap:8px;width:100%;min-height:auto;padding:12px 14px;display:grid}.teacher-audit-list button.active{background:linear-gradient(135deg,#effaf4 0%,#fff 100%);border-color:#15945e;box-shadow:inset 4px 0 #15945e}.teacher-audit-card-top,.teacher-audit-card-bottom,.teacher-audit-card-line{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.teacher-audit-card-top strong,.teacher-audit-card-line{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.teacher-audit-card-top b{color:#087341;background:#e8f7ee;border:1px solid #bfe8cf;border-radius:999px;flex:none;padding:5px 9px;font-size:11px}.teacher-audit-list button:not(.active) .teacher-audit-card-top b{color:#53645d;background:#f3f6f5;border-color:#dce8e2}.teacher-audit-card-bottom{border-top:1px solid #edf3f0;padding-top:8px}.teacher-audit-list span,.teacher-audit-list small,.teacher-audit-meta,.teacher-audit-columns span,.teacher-audit-columns small,.teacher-audit-incidents span{color:#5d6b65}.teacher-audit-detail{background:linear-gradient(135deg,#fff 0%,#f7fbf9 100%);border:1px solid #d8e5df;border-radius:8px;gap:16px;padding:20px;display:grid}.teacher-audit-detail .teacher-schedule-title{margin-bottom:6px}.teacher-audit-detail .teacher-schedule-title h2{overflow-wrap:anywhere;max-width:100%;font-size:clamp(28px,3vw,38px)}.teacher-audit-detail .list-summary-strip{grid-template-columns:repeat(3,minmax(0,1fr));margin:4px 0 10px}.teacher-audit-detail .list-summary-strip article{padding:12px}.teacher-audit-detail .list-summary-strip strong{font-size:26px}.teacher-audit-meta{flex-wrap:wrap;gap:10px;font-size:13px;font-weight:800;display:flex}.teacher-audit-meta span{background:#f2f7f4;border:1px solid #dce8e2;border-radius:999px;padding:7px 10px}.teacher-audit-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.teacher-audit-columns article{background:#fff;border:1px solid #d8e5df;border-radius:8px;max-height:420px;padding:14px;overflow:auto}.teacher-audit-columns h3{border-bottom:1px solid #d8e5df;margin:0 0 10px;padding-bottom:8px}.teacher-audit-columns p{border-bottom:1px solid #edf3f0;gap:3px;margin:0;padding:8px 0;display:grid}.teacher-audit-columns p:last-child{border-bottom:0}.teacher-audit-incidents{background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;gap:4px;padding:14px;display:grid}@media (max-width:900px){.teacher-audit-layout,.teacher-audit-columns{grid-template-columns:1fr}}
