/* Visual language shared with the Communication Center. */
:root{--hub-red:#b91c1c;--hub-dark:#202124;--hub-bg:#f7f7f8;--hub-text:#27272a}
body.has-system-menu{margin:0;padding-inline-start:245px!important;box-sizing:border-box;background:var(--hub-bg);color:var(--hub-text);font:14px/1.8 Tahoma,Arial,sans-serif}
body.has-system-menu .system-menu{position:fixed;inset-block:0;inset-inline-start:0;width:245px;overflow:auto;background:var(--hub-dark);color:white;padding:20px 16px;z-index:90;box-sizing:border-box;font:14px/1.8 Tahoma,Arial,sans-serif;border:0}
.system-menu summary{cursor:pointer;color:#d4d4d8;font-weight:bold;padding:0 6px 12px}.system-menu a{display:block;padding:9px 12px;border-radius:9px;text-decoration:none;color:#d4d4d8}.system-menu a:hover,.system-menu a:focus-visible{background:#343539;color:white}.system-menu a.active{background:#7f1d1d;color:white}
.system-menu .shell-brand{display:flex;align-items:center;gap:10px;padding:10px 2px;font-size:22px;color:#fff;font-weight:bold}.system-menu .shell-brand img{width:48px;height:48px;object-fit:contain;background:white;border-radius:10px}.system-menu .shell-brand small{font-size:11px;color:#d4d4d8;font-weight:normal;display:block}.system-menu .shell-profile{display:flex;align-items:center;gap:10px;margin:10px 0 16px;padding:10px 0;color:white;font-size:12px}.shell-profile small{display:block;color:#a1a1aa;font-size:10px}.shell-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#fff1f2;color:#991b1b;font-size:20px;flex-shrink:0}.shell-group{margin:16px 0}.shell-group p{font-size:10px;color:#a1a1aa;margin:0 8px 6px}.shell-group a{font-size:12px}.shell-footer{margin-top:22px;padding:12px 6px;color:#a1a1aa}.shell-footer button{background:#fff1f2;color:#991b1b;padding:8px 14px;border:0;border-radius:9px;font:inherit;margin-top:10px;cursor:pointer}
body.has-system-menu .app-shell{display:block;min-height:100vh}body.has-system-menu .content{margin:0;padding:32px 38px;max-width:1650px;width:100%;min-width:0}body.has-system-menu .extra-page{max-width:1450px;margin:0 auto;padding:32px 38px;background:transparent;border-radius:0;font:14px/1.8 Tahoma,Arial,sans-serif;color:var(--hub-text)}body.has-system-menu h1{font-size:26px;margin:0 0 14px}body.has-system-menu h2{font-size:18px}body.has-system-menu .card,body.has-system-menu .panel{background:white;border:1px solid #e0e8e8;border-radius:14px;padding:22px;margin-bottom:18px;box-shadow:none}body.has-system-menu .metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0}body.has-system-menu .metrics article{background:white;border:1px solid #e0e8e8;border-radius:14px;padding:22px}body.has-system-menu .metrics article strong{font-size:32px;display:block;color:var(--hub-red)}body.has-system-menu .metrics article span,body.has-system-menu .metrics article small{display:block;color:#71717a}body.has-system-menu .eyebrow{color:#71717a;font-size:12px;margin:0 0 6px}body.has-system-menu .topbar{background:transparent;border:0;padding:0 0 20px;color:#71717a}body.has-system-menu button:not(.logout),body.has-system-menu .button.primary{background:var(--hub-red);border:0;border-radius:9px;padding:9px 18px;color:white;font:inherit;cursor:pointer}body.has-system-menu input,body.has-system-menu select,body.has-system-menu textarea{font:inherit;border:1px solid #d6e2e2;border-radius:8px;padding:10px;background:white;color:#27272a;max-width:100%;box-sizing:border-box}body.has-system-menu .actions{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}body.has-system-menu .actions a{display:inline-block;border-radius:9px;padding:9px 18px;text-decoration:none;background:#fff1f2;color:#991b1b}body.has-system-menu .actions a.primary{background:var(--hub-red);color:white}body.has-system-menu .scroll,body.has-system-menu .table-wrap{overflow:auto}body.has-system-menu table{border-collapse:collapse;width:100%;text-align:start;font-size:13px}body.has-system-menu td,body.has-system-menu th{padding:12px;border:0;border-bottom:1px solid #e8eeee;vertical-align:top}body.has-system-menu th{background:#f6f9f8;color:#658084;font-weight:normal}.extra-page small{display:block;color:#71717a}.extra-page .notice{padding:12px 16px;border-radius:10px;background:#eef8ef}.extra-page .error{color:#b91c1c}.dashboard-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.dashboard-actions a{display:block;padding:18px;background:white;border:1px solid #e0e8e8;border-radius:14px;color:#27272a;text-decoration:none}.dashboard-actions a strong{display:block;color:#b91c1c;margin-bottom:6px}.dashboard-actions a small{color:#71717a}
@media(max-width:900px){body.has-system-menu{padding-inline-start:0!important;padding-top:56px!important}body.has-system-menu .system-menu{inset-block-end:auto;width:100%;max-height:85dvh;padding:8px 14px}.system-menu details>summary{padding:4px}.system-menu details:not([open])>div{display:none}.system-menu details[open]>div{max-height:75dvh;overflow:auto}.system-menu nav{display:block}.system-menu .shell-brand{font-size:19px}body.has-system-menu .content,body.has-system-menu .extra-page{padding:20px 16px}body.has-system-menu .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-actions{grid-template-columns:1fr 1fr}body.has-system-menu h1{font-size:22px}body.has-system-menu input,body.has-system-menu select{font-size:16px}}
@media(max-width:500px){.dashboard-actions{grid-template-columns:1fr}body.has-system-menu .metrics article{padding:15px}}
@media print{.system-menu{display:none!important}body.has-system-menu{padding:0!important}body.has-system-menu .content,body.has-system-menu .extra-page{padding:0!important}}
.shell-avatar img{width:38px;height:38px;object-fit:cover;border-radius:50%}

/* Compact, horizontally scrollable grouped navigation. */
body.has-system-menu{padding-inline-start:0!important;padding-top:166px!important}.system-menu{display:block!important;position:fixed!important;inset:0 0 auto!important;width:100%!important;max-height:none!important;overflow:visible!important;padding:0 20px!important;background:#202124!important;border:0!important;z-index:1000!important}.shell-topline{height:66px;display:flex;align-items:center;gap:18px;max-width:1700px;margin:auto}.system-menu .shell-brand{font-size:19px;padding:4px 0;white-space:nowrap}.system-menu .shell-brand img{width:40px;height:40px}.system-menu .shell-profile{margin:0;margin-inline-start:auto;max-width:300px;padding:2px}.shell-topline form{margin:0}.system-menu .shell-logout,.system-menu .rail-arrow{background:#343539!important;color:white!important;border:0!important;padding:6px 12px!important;font-size:13px!important}.shell-rail{display:flex;align-items:center;gap:5px;max-width:1700px;margin:auto}.shell-groups{display:flex!important;gap:5px;overflow-x:auto;scrollbar-width:none;flex:1;white-space:nowrap;padding:4px 0}.shell-groups button{flex-shrink:0;color:#d4d4d8!important;background:transparent!important;border:0!important;border-radius:8px;padding:8px 18px!important;font:14px Tahoma,Arial,sans-serif!important;cursor:pointer}.shell-groups button.active{background:#7f1d1d!important;color:white!important}.shell-panel{display:flex!important;gap:6px;overflow-x:auto;white-space:nowrap;max-width:1700px;margin:auto;padding:5px 0 9px;scrollbar-width:thin}.shell-panel[hidden]{display:none!important}.system-menu .shell-panel a{flex-shrink:0;font-size:12px;padding:6px 12px}.shell-panels{border-top:1px solid #ffffff15}.system-menu .shell-avatar,.shell-avatar img{width:32px;height:32px}.system-menu .shell-profile small{font-size:10px}.system-menu .shell-brand small{font-size:10px}body.has-system-menu .extra-page,body.has-system-menu .content{max-width:1700px}#installment-dates input{min-width:110px}.scan-auto-controls{display:flex;flex-wrap:wrap;gap:16px;padding:14px;background:#f4f6f8;border-radius:10px}.scan-auto-controls label{display:flex!important;align-items:center;gap:7px}.scan-auto-controls input{width:19px!important;height:19px}
@media(max-width:900px){body.has-system-menu{padding-top:156px!important}.system-menu{padding:0 8px!important}.shell-topline{height:60px;gap:8px}.system-menu .shell-profile>span:last-child{max-width:110px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.system-menu .shell-brand{font-size:16px}.system-menu .shell-brand small{display:none}.system-menu .shell-brand img{width:32px;height:32px}.shell-groups button{padding:8px 12px!important;font-size:13px!important}.shell-panel a{font-size:12px!important}.system-menu .rail-arrow{padding:5px 8px!important}}@media print{body.has-system-menu{padding-top:0!important}}

@media print{.system-menu{display:none!important}body.has-system-menu{padding:0!important}}

.sheet-header-float{background:white;box-shadow:0 3px 7px #0002}.sheet-header-float[hidden]{display:none!important}.sheet-header-float table{margin:0!important}.sheet-header-float th{position:static!important;box-sizing:border-box}@media print{.sheet-header-float{display:none!important}}

.sheet-roll-pin{position:sticky!important;inset-inline-start:0;z-index:4;background:var(--sheet-roll-background,#fff)!important;box-shadow:-2px 0 3px #0002}.sheet-header-float th.sheet-roll-pin{position:sticky!important;inset-inline-start:0;z-index:6}@media print{.sheet-roll-pin{position:static!important;box-shadow:none}}

/* Study system, independent of tuition balances and operational status. */
table td[data-study-kind="regular"]{background:#c6e0b4!important;color:#172b10!important}
table td[data-study-kind="correspondence"]{background:#fff2cc!important;color:#463600!important}
table td[data-study-kind="online"]{background:#ddebf7!important;color:#12334d!important}
table td[data-study-kind="closed"]{background:#f8cccc!important;color:#8b1515!important;font-weight:700}
.study-system-legend{display:flex;flex-wrap:wrap;gap:.5rem;margin:.6rem 0}.study-system-legend span{padding:.3rem .7rem;border-radius:.4rem;color:#172b10;background:#c6e0b4}.study-system-legend .correspondence{background:#fff2cc;color:#463600}.study-system-legend .online{background:#ddebf7;color:#12334d}.study-system-legend .closed{background:#f8cccc;color:#8b1515}
.state-review-reason{display:block;white-space:normal;min-width:10rem;max-width:22rem;font-size:.85em;font-weight:400;margin-top:.35rem;color:#684a00}

/* Fill the complete student row, including the pinned registration cell. */
body table tr[data-study-kind="regular"] > td{background:#e5f0dc!important;color:#172b10!important;--sheet-roll-background:#e5f0dc}
body table tr[data-study-kind="correspondence"] > td{background:#fff2cc!important;color:#463600!important;--sheet-roll-background:#fff2cc}
body table tr[data-study-kind="online"] > td{background:#ddebf7!important;color:#12334d!important;--sheet-roll-background:#ddebf7}
body table tr[data-study-kind="closed"] > td{background:#f8cccc!important;color:#8b1515!important;--sheet-roll-background:#f8cccc}

.ora-account-tools{position:fixed;bottom:max(12px,env(safe-area-inset-bottom));left:12px;z-index:10050;display:flex;align-items:center;flex-wrap:wrap;gap:4px;max-width:calc(100vw - 24px);padding:5px;border:1px solid #ddd;border-radius:12px;background:#fff;box-shadow:0 3px 12px #0002;direction:ltr;font:600 14px system-ui;box-sizing:border-box}.ora-account-tools>a,.ora-account-tools>button{position:static!important;display:inline-flex;align-items:center;justify-content:center;min-height:40px;margin:0!important;padding:7px 12px!important;border:0!important;border-radius:8px!important;box-shadow:none!important;background:#fff!important;color:#5d1720!important;text-decoration:none!important;font:inherit!important;line-height:1.4;cursor:pointer}.ora-account-tools>a.active{background:#a72a36!important;color:#fff!important}.ora-account-tools>button{border-inline-start:1px solid #ddd!important}.ora-account-tools :focus-visible{outline:3px solid #1a73e8;outline-offset:2px}.ora-install-help{position:absolute;bottom:calc(100% + 8px);left:0;width:300px;max-width:calc(100vw - 24px);padding:14px;background:#fff;color:#222;border:1px solid #ddd;border-radius:10px;box-shadow:0 3px 12px #0002;direction:rtl;text-align:start}.ora-install-help[hidden]{display:none}@media(max-width:420px){.ora-account-tools{font-size:13px}.ora-account-tools>a,.ora-account-tools>button{padding:6px 9px!important}}@media print{.ora-account-tools{display:none!important}}

.ora-language-options{display:inline-flex;align-items:center;gap:2px;flex-shrink:0;padding:3px;border:1px solid #ddd;border-radius:9px;background:white;direction:ltr;font:600 13px system-ui}.ora-language-options>a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:5px 8px!important;border:0!important;border-radius:6px;background:#fff!important;color:#5d1720!important;text-decoration:none;font:inherit!important;line-height:1.3}.ora-language-options>a.active{background:#a72a36!important;color:white!important}.account-row{flex-wrap:wrap}.shell-topline{flex-wrap:nowrap}.ora-language-options :focus-visible{outline:3px solid #1a73e8;outline-offset:2px}@media(max-width:600px){.ora-language-options{font-size:11px}.ora-language-options>a{padding:4px 6px!important;min-height:32px}.shell-topline{gap:5px!important}.shell-topline .shell-profile>span:last-child{max-width:60px!important}.shell-topline .shell-brand>span{max-width:85px;overflow:hidden;text-overflow:ellipsis}}@media print{.ora-language-options{display:none!important}}

/* Stable two-axis registration column, including Safari's first paint. */
table[data-sheet-roll="true"]{border-collapse:separate!important;border-spacing:0!important}.table-wrap:has(>table[data-sheet-roll]),.scroll:has(>table[data-sheet-roll]){position:relative;isolation:isolate}
[dir="rtl"] table[data-sheet-roll] .sheet-roll-pin{right:0!important;left:auto!important}[dir="ltr"] table[data-sheet-roll] .sheet-roll-pin{left:0!important;right:auto!important}
table[data-sheet-roll] .sheet-roll-pin{position:-webkit-sticky!important;position:sticky!important;transform:translateZ(0);backface-visibility:hidden;z-index:5}
.sheet-header-float .sheet-floating-cell{overflow:hidden;margin:0!important;direction:inherit}.sheet-header-float{direction:rtl}.student-roll-search{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-top:18px;padding-top:16px;border-top:1px solid #e0e8e8}.student-roll-search label{display:grid;gap:6px;min-width:220px}.student-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.student-facts dt{color:#657075}.student-facts dd{margin:4px 0;font-weight:600}@media print{table[data-sheet-roll] .sheet-roll-pin{position:static!important;transform:none}.sheet-header-float{display:none!important}}

body.ora-branch-embed.has-system-menu{padding-top:0!important}body.ora-branch-embed .system-menu{display:none!important}body.ora-branch-embed .app-shell{display:block!important}body.ora-branch-embed .app-shell>aside{display:none!important}body.ora-branch-embed #device-panel{display:none!important}
