#student-portal [data-ro-page][hidden],#student-portal [data-ro-person][hidden],#student-portal [data-ro-profile][hidden],#student-portal [data-ro-placeholder][hidden],#student-portal [data-ro-empty][hidden]{display:none!important}
#student-portal .ro-people{padding:18px 20px;color:#e9f1f9;font:14px/1.5 system-ui,sans-serif}#student-portal .ro-people-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}#student-portal .ro-people-switch{display:flex;border:1px solid #2c4358}#student-portal .ro-people-switch button{border:0;border-right:1px solid #2c4358;background:#122438;color:#a9c0d5;padding:10px 16px;border-radius:0;cursor:pointer}#student-portal .ro-people-switch button:last-child{border-right:0}#student-portal .ro-people-switch button.is-active{background:#285476;color:#fff}#student-portal .ro-people-switch span{opacity:.65;margin-left:5px}#student-portal .ro-people-search input{width:min(330px,100%);min-width:240px;background:#14283b!important;color:#f2f8ff!important;border:1px solid #38546b!important;border-radius:0!important;padding:10px 12px!important;font-size:13px!important}#student-portal .ro-people-layout{display:grid;grid-template-columns:minmax(230px,35%) minmax(0,1fr);border:1px solid #2c4358;background:#122438;min-height:530px;max-height:calc(100vh - 190px)}#student-portal .ro-people-list{border-right:1px solid #2c4358;overflow:auto;min-height:0}#student-portal .ro-person{display:flex!important;align-items:center;gap:12px;width:100%;padding:12px!important;border:0!important;border-bottom:1px solid #263d52!important;border-radius:0!important;background:transparent!important;color:#e6f0f8!important;text-align:left;cursor:pointer}#student-portal .ro-person:hover,#student-portal .ro-person.is-selected{background:#1e3c55!important}#student-portal .ro-person-avatar,#student-portal .ro-profile-avatar{display:grid;place-items:center;background:#294d69;color:#bde5ff;border:1px solid #427293;font-weight:700;width:36px;height:36px;flex-shrink:0}#student-portal .ro-person-info{display:grid;gap:1px;min-width:0}#student-portal .ro-person-info strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#student-portal .ro-person-info small{color:#91aac0;font-size:11px}#student-portal .ro-person-chevron{margin-left:auto;color:#87badb;font-size:22px}#student-portal .ro-person-detail{padding:28px;overflow:auto;min-width:0}#student-portal .ro-person-placeholder{display:grid;justify-items:center;align-content:center;min-height:350px;color:#a7bed2;text-align:center}#student-portal .ro-placeholder-symbol{font-size:40px;color:#6cadd8}#student-portal .ro-person-placeholder strong{font-size:17px;color:#e5f1fb}#student-portal .ro-person-placeholder p{font-size:13px}#student-portal .ro-profile-top{display:flex;align-items:center;gap:16px;padding-bottom:22px;border-bottom:1px solid #2c4358}#student-portal .ro-profile-avatar{width:54px;height:54px;font-size:22px}#student-portal .ro-profile-top h2{font-size:22px;margin:0;color:#fff}#student-portal .ro-profile-top span{font-size:12px;color:#a4bfd4}#student-portal .ro-profile-fields{margin:0}#student-portal .ro-profile-fields>div{display:grid;grid-template-columns:150px 1fr;gap:12px;padding:18px 0;border-bottom:1px solid #2c4358}#student-portal .ro-profile-fields dt{color:#8faec6;font-size:12px}#student-portal .ro-profile-fields dd{margin:0;overflow-wrap:anywhere}#student-portal .ro-profile-note{color:#819bb1;font-size:12px;margin-top:26px;max-width:440px}#student-portal .ro-people-empty{padding:20px;color:#9eb5c8}@media(max-width:750px){#student-portal .ro-people{padding:12px}#student-portal .ro-people-toolbar{flex-wrap:wrap}#student-portal .ro-people-search,#student-portal .ro-people-search input{width:100%;min-width:0}#student-portal .ro-people-layout{grid-template-columns:1fr;max-height:none}#student-portal .ro-people-list{max-height:280px;border-right:0;border-bottom:1px solid #2c4358}#student-portal .ro-person-detail{padding:20px;min-height:260px}}

/* v13.5 Student Account panel */
#student-portal .ro-profile-tabs{display:flex;gap:0;border-bottom:1px solid #34516a;margin:18px 0 14px;overflow-x:auto}
#student-portal .ro-profile-tabs button{background:transparent!important;color:#a8c2d6!important;border:0!important;border-bottom:2px solid transparent!important;border-radius:0!important;padding:10px 13px!important;font-size:12px!important;white-space:nowrap;cursor:pointer}
#student-portal .ro-profile-tabs button.is-active{color:#fff!important;border-bottom-color:#67bdf2!important}
#student-portal .ro-account-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#student-portal .ro-account-stats>div{display:grid;gap:3px;border:1px solid #34516a;background:#172a3e;padding:14px;min-width:0}
#student-portal .ro-account-stats small{color:#91adc3;font-size:10px;letter-spacing:.08em}
#student-portal .ro-account-stats strong{font-size:24px;color:#f3f8ff}
#student-portal .ro-account-stats span{font-size:11px;color:#9eb5c8}
#student-portal .ro-account-actions{display:flex;flex-wrap:wrap;gap:7px;margin:15px 0}
#student-portal .ro-account-actions button,#student-portal .ro-account-form-actions button{border:1px solid #43799e!important;background:#234c69!important;color:#f3faff!important;border-radius:0!important;padding:7px 10px!important;font-size:12px!important;cursor:pointer}
#student-portal .ro-account-form{display:grid;gap:10px;background:#172a3e;border:1px solid #34516a;padding:14px;margin:10px 0 18px}
#student-portal .ro-account-form[hidden]{display:none!important}
#student-portal .ro-account-form label{display:grid;gap:4px;color:#b5cbdb;font-size:12px}
#student-portal .ro-account-form input{width:100%;max-width:420px;border-radius:0!important;background:#0d1e2f!important;border:1px solid #39566c!important;color:#fff!important;padding:8px!important}
#student-portal .ro-account-form-actions{display:flex;gap:8px}
#student-portal .ro-account-history h3{font-size:14px;margin:20px 0 8px;color:#eef6fc}
#student-portal .ro-account-table-wrap{max-height:280px;overflow:auto;border:1px solid #34516a}
#student-portal .ro-account-history table{width:100%;border-collapse:collapse;font-size:12px}
#student-portal .ro-account-history th,#student-portal .ro-account-history td{padding:10px;border-bottom:1px solid #294155;text-align:left}
#student-portal .ro-account-history th{color:#a8c2d6;position:sticky;top:0;background:#172a3e}
#student-portal .ro-account-history td:last-child{text-align:right;white-space:nowrap}
#student-portal .ro-positive{color:#88d6b4}#student-portal .ro-negative{color:#f0b2b8}
@media(max-width:600px){#student-portal .ro-account-stats{grid-template-columns:1fr}#student-portal .ro-person-detail{padding:12px}}

/* v13.6.0 — compact, square-cornered overview controls */
#student-portal .ro-overview-editor{display:grid;gap:18px;margin-top:12px}#student-portal .ro-overview-editor[hidden],#student-portal .ro-overview-readonly[hidden]{display:none!important}
#student-portal .ro-overview-line{display:grid;grid-template-columns:minmax(155px,32%) 1fr;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #2c4358}
#student-portal .ro-overview-line label,#student-portal .ro-account-types legend{color:#9bb9d1;font-size:11px;font-weight:700;letter-spacing:.06em}
#student-portal .ro-overview-line select{width:100%;min-width:0;background:#14283b!important;border:1px solid #3a5870!important;color:#edf6ff!important;border-radius:0!important;padding:9px 10px!important}
#student-portal .ro-account-types{border:0;margin:0;padding:0;min-width:0}#student-portal .ro-account-types legend{margin-bottom:10px}
#student-portal .ro-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
#student-portal .ro-type-choice{display:flex;align-items:center;gap:9px;min-height:42px;padding:8px 10px;background:#14283b;border:1px solid #34516a;border-radius:0!important;color:#e5f0fa;font-size:12px;cursor:pointer}
#student-portal .ro-type-choice:has(input:checked){background:#203c56;border-color:#5c9bc5}
#student-portal .ro-type-choice input{appearance:none!important;-webkit-appearance:none!important;flex:none;width:16px!important;height:16px!important;margin:0!important;border:1px solid #83a9c5!important;border-radius:0!important;background:#0c1b2a!important;display:grid;place-items:center;cursor:pointer}
#student-portal .ro-type-choice input:checked{background:#3579a6!important;border-color:#8ad1ff!important}
#student-portal .ro-type-choice input:checked:after{content:'✓';color:white;font-size:12px;line-height:1}
#student-portal .ro-type-choice input:focus-visible{outline:2px solid #b1e4ff;outline-offset:2px}
#student-portal .ro-overview-footer{display:flex;align-items:center;justify-content:space-between;gap:14px}#student-portal .ro-overview-footer small{color:#88a5bc;font-size:11px}
#student-portal .ro-overview-footer button{border-radius:0!important;background:#285476!important;color:#fff!important;border:1px solid #4e83a8!important;padding:9px 16px!important;white-space:nowrap}
#student-portal .ro-overview-readonly{display:grid;gap:14px;margin-top:15px}#student-portal .ro-overview-readonly>div{display:grid;grid-template-columns:160px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid #2c4358}#student-portal .ro-overview-readonly strong{color:#9bb9d1;font-size:12px}#student-portal .ro-overview-readonly span{font-size:13px}
@media(max-width:1100px){#student-portal .ro-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:580px){#student-portal .ro-type-grid{grid-template-columns:1fr}#student-portal .ro-overview-line{grid-template-columns:1fr}#student-portal .ro-overview-footer{flex-wrap:wrap}}

/* v13.6.3 — compact square contact editing */
#student-portal .ro-contact-form{margin:14px 0 16px;padding:0;border:0;background:transparent}
#student-portal .ro-contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#student-portal .ro-contact-fields label{display:grid;gap:7px;color:#91aac0;font-size:11px;font-weight:650;letter-spacing:.04em}
#student-portal .ro-contact-fields input{min-width:0;width:100%;height:40px;border:1px solid #38546b!important;border-radius:0!important;background:#14283b!important;color:#eaf2fa!important;padding:8px 11px!important;font-size:13px!important}
#student-portal .ro-contact-footer{display:flex;justify-content:flex-end;margin-top:10px}
#student-portal .ro-contact-footer button{background:#285476!important;border:1px solid #477694!important;color:#fff!important;border-radius:0!important;padding:9px 15px!important;cursor:pointer}
@media(max-width:760px){#student-portal .ro-contact-fields{grid-template-columns:1fr}}

/* v13.7 — compact flight history and starting hours */
#student-portal .ro-flights[hidden],#student-portal .ro-prior-form[hidden]{display:none!important}
#student-portal .ro-flights{display:grid;gap:14px;margin-top:10px}
#student-portal .ro-flight-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
#student-portal .ro-flight-stat{display:grid;gap:4px;padding:12px;background:#172a3e;border:1px solid #34516a;min-width:0}
#student-portal .ro-flight-stat small{font-size:10px;color:#91adc3;letter-spacing:.05em}
#student-portal .ro-flight-stat strong{font-size:23px;color:#f3f8ff}
#student-portal .ro-flight-stat span,#student-portal .ro-flight-disclaimer{font-size:11px;color:#9eb5c8}
#student-portal .ro-flight-disclaimer{margin:0;line-height:1.5}
#student-portal .ro-flight-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #34516a;padding:6px 0}
#student-portal .ro-flight-heading h3{font-size:13px;margin:0;color:#e9f4fc}
#student-portal .ro-flight-heading span{font-size:11px;color:#9eb5c8}
#student-portal .ro-flight-heading button,#student-portal .ro-prior-actions button{background:#285476!important;color:#fff!important;border:1px solid #477694!important;border-radius:0!important;padding:7px 12px!important;font-size:12px!important;cursor:pointer}
#student-portal .ro-prior-form{padding:12px;background:#14283b;border:1px solid #34516a;display:grid;gap:10px}
#student-portal .ro-prior-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
#student-portal .ro-prior-fields label{display:grid;gap:6px;color:#a8c2d6;font-size:11px}
#student-portal .ro-prior-fields input{min-width:0;width:100%;border-radius:0!important;background:#0d1e2f!important;border:1px solid #39566c!important;color:#fff!important;padding:8px!important}
#student-portal .ro-prior-form p{font-size:11px;color:#9eb5c8;margin:0}
#student-portal .ro-prior-actions{display:flex;gap:8px}
#student-portal .ro-flight-table-wrap{max-height:320px;overflow:auto;border:1px solid #34516a}
#student-portal .ro-flight-table-wrap table{width:100%;border-collapse:collapse;font-size:12px}
#student-portal .ro-flight-table-wrap th,#student-portal .ro-flight-table-wrap td{padding:9px 8px;border-bottom:1px solid #294155;text-align:left;white-space:nowrap}
#student-portal .ro-flight-table-wrap th{position:sticky;top:0;background:#172a3e;color:#a8c2d6}
#student-portal .ro-flight-table-wrap summary{cursor:pointer;color:#8ad1ff}
#student-portal .ro-flight-detail{line-height:1.7;padding:7px;background:#0d1e2f;color:#c3d9ea}
@media(max-width:700px){#student-portal .ro-flight-stats,#student-portal .ro-prior-fields{grid-template-columns:1fr}}

/* v13.7.1: compact admin-only completed flight editor */
#student-portal .ro-flight-edit-btn{border:1px solid #467393;background:#21435d;color:#e8f4ff;border-radius:0;padding:5px 11px;cursor:pointer}
#student-portal .ro-completed-edit{background:#11283c;color:#e9f3fc;border:1px solid #466680;border-radius:0;padding:20px;width:min(540px,calc(100vw - 28px));max-height:85vh;overflow:auto}
#student-portal .ro-completed-edit::backdrop{background:rgba(2,9,17,.75)}
#student-portal .ro-completed-edit form{display:grid;gap:12px}
#student-portal .ro-completed-edit label{display:grid;gap:5px;font-size:12px;color:#c3d8e8}
#student-portal .ro-completed-edit input{width:100%;box-sizing:border-box;border:1px solid #45677e;background:#0c2031;color:#fff;border-radius:0;padding:9px}
#student-portal .ro-completed-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#student-portal .ro-edit-warning{font-size:12px;color:#ffd39a;line-height:1.5}
#student-portal .ro-completed-edit .ro-edit-footer{display:flex;justify-content:flex-end;gap:8px}
#student-portal .ro-completed-edit button{border-radius:0;padding:9px 13px}
@media(max-width:550px){#student-portal .ro-completed-fields{grid-template-columns:1fr}}

/* v13.8.0 invoice editing — reuse square dark navy workspace styling */
#student-portal .ro-invoice-history{margin-top:18px}
#student-portal .ro-invoice-history h3{font-size:14px;margin:0 0 10px}
#student-portal .ro-invoice-edit-btn{border:1px solid #467393;background:#21435d;color:#e8f4ff;border-radius:0;padding:5px 11px;cursor:pointer}
#student-portal .ro-invoice-dialog{background:#11283c;color:#e9f3fc;border:1px solid #466680;border-radius:0;padding:20px;width:min(640px,calc(100vw - 28px));max-height:85vh;overflow:auto}
#student-portal .ro-invoice-dialog::backdrop{background:rgba(2,9,17,.75)}
#student-portal .ro-invoice-dialog form{display:grid;gap:12px}
#student-portal .ro-invoice-dialog label{display:grid;gap:5px;font-size:12px;color:#c3d8e8}
#student-portal .ro-invoice-dialog input,#student-portal .ro-invoice-dialog select{width:100%;box-sizing:border-box;border:1px solid #45677e;background:#0c2031;color:#fff;border-radius:0;padding:9px}
#student-portal .ro-invoice-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#student-portal .ro-invoice-fields .rax-invoice-service-controls{grid-column:1/-1}
#student-portal .ro-invoice-fields .ro-invoice-check{display:flex;align-items:center;gap:8px}
#student-portal .ro-invoice-fields input[type=checkbox]{width:auto}
#student-portal .ro-invoice-dialog .ro-edit-footer{display:flex;justify-content:flex-end;gap:8px}
#student-portal .ro-invoice-dialog button{border-radius:0;padding:9px 13px}
@media(max-width:550px){#student-portal .ro-invoice-fields{grid-template-columns:1fr}}

/* v13.9 optional flight-time fields */
#student-portal .ro-flight-extra-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:10px 0}
#student-portal .ro-optional-flight{border:1px solid #34516a;background:#14283b;margin:10px 0;padding:10px}
#student-portal .ro-optional-flight summary{cursor:pointer;color:#dcebf6;font-size:12px}
#student-portal .ro-optional-flight form{margin-top:12px;display:grid;gap:12px}
#student-portal .ro-optional-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
#student-portal .ro-optional-grid label{display:grid;gap:4px;font-size:11px;color:#b7cfdf}
#student-portal .ro-optional-grid input{min-width:0;width:100%;box-sizing:border-box;border:1px solid #426580;border-radius:0;background:#0b2032;color:#f0f8ff;padding:7px}
#student-portal .ro-optional-flight button{justify-self:start;border-radius:0;padding:7px 12px}
@media(max-width:850px){#student-portal .ro-flight-extra-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:500px){#student-portal .ro-optional-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v13.9.1: compact horizontal adjust-times editor */
#student-portal .ro-flights .ro-prior-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
#student-portal .ro-flights .ro-prior-fields label{min-width:0}
#student-portal .ro-flights .ro-prior-fields input{width:100%;box-sizing:border-box;border-radius:0}
@media(max-width:900px){#student-portal .ro-flights .ro-prior-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){#student-portal .ro-flights .ro-prior-fields{grid-template-columns:1fr}}

/* v13.9.3 — natural-height Students & Staff, tighter Flights layout */
@media(min-width:751px){
 #student-portal .ro-people-layout{
  height:auto!important;min-height:620px!important;max-height:none!important;
  overflow:visible!important;align-items:stretch!important;
 }
 #student-portal .ro-people-list{
  overflow:visible!important;max-height:none!important;min-height:0!important;
 }
 #student-portal .ro-person-detail{
  overflow:visible!important;max-height:none!important;min-height:0!important;
 }
}
#student-portal .ro-person-detail{padding:16px 20px!important}
#student-portal .ro-profile-top{padding-bottom:12px!important;gap:12px!important}
#student-portal .ro-profile-avatar{width:42px!important;height:42px!important}
#student-portal .ro-profile-top h2{font-size:19px!important}
#student-portal .ro-flights{gap:8px!important;margin-top:6px!important}
#student-portal .ro-flight-stats{gap:7px!important}
#student-portal .ro-flight-stat{padding:8px 10px!important;gap:2px!important}
#student-portal .ro-flight-stat strong{font-size:19px!important}
#student-portal .ro-flight-extra-stats{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:7px!important;margin:2px 0!important}
#student-portal .ro-flight-extra-stats .ro-flight-stat{padding:8px!important}
#student-portal .ro-flight-heading{padding:3px 0!important}
#student-portal .ro-flight-disclaimer{line-height:1.3!important;margin:0!important}
#student-portal .ro-optional-flight{margin:2px 0!important;padding:7px 10px!important}
#student-portal .ro-flight-table-wrap{
 max-height:none!important;overflow-y:visible!important;overflow-x:auto!important;
}
#student-portal .ro-flight-table-wrap th,
#student-portal .ro-flight-table-wrap td{padding:6px 7px!important}
#student-portal .ro-flight-table-wrap th{position:static!important}
@media(max-width:1150px){
 #student-portal .ro-flight-extra-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:750px){
 #student-portal .ro-people-layout{height:auto!important;max-height:none!important;overflow:visible!important}
 #student-portal .ro-person-detail{overflow:visible!important;max-height:none!important}
 #student-portal .ro-flight-extra-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* v14.0 private-student training checklist */
#student-portal .ro-training-workspace{padding:12px 0 4px;color:#e6f1fb}
#student-portal .ro-training-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}
#student-portal .ro-training-summary>div{display:grid;gap:3px}
#student-portal .ro-training-summary strong{font-size:18px}
#student-portal .ro-training-summary span,#student-portal .ro-training-caution{font-size:11px;color:#9bb5c9}
#student-portal .ro-training-progress-track{height:10px;background:#0a1b2b;border:1px solid #395a72;overflow:hidden}
#student-portal .ro-training-progress-track span{display:block;height:100%;background:#62b5dc}
#student-portal .ro-training-caution{margin:10px 0 13px;line-height:1.5}
#student-portal .ro-training-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
#student-portal .ro-training-item{min-width:0;padding:11px;border:1px solid #35536d;background:#172c40;display:grid;gap:9px}
#student-portal .ro-training-item.is-complete{border-color:#3d7891;background:#1a3548}
#student-portal .ro-training-item-head{display:flex;gap:9px;align-items:flex-start;line-height:1.35}
#student-portal .ro-training-item-head strong{font-size:12px;font-weight:600}
#student-portal .ro-training-box{flex:0 0 17px;height:17px;border:1px solid #6489a4;background:#0d2132;display:grid;place-items:center;font-size:13px;color:#c7e9ff}
#student-portal .ro-training-item.is-complete .ro-training-box{background:#2b805b;border-color:#50b57d;color:white}
#student-portal .ro-training-inputs{display:flex;align-items:end;gap:8px;flex-wrap:wrap}
#student-portal .ro-training-inputs label{display:grid;gap:3px;font-size:10px;color:#a9c5d7;flex:1 1 110px;max-width:170px}
#student-portal .ro-training-inputs input{width:100%;box-sizing:border-box;border:1px solid #476d86;border-radius:0;background:#0c2132;color:#f4f9ff;padding:6px 8px;font-size:13px}
#student-portal .ro-training-inputs input:disabled{opacity:.75}
#student-portal .ro-training-target{font-size:10px;color:#9ebad0;margin-bottom:5px}
#student-portal .ro-training-actions{display:flex;justify-content:flex-end;padding:12px 0}
#student-portal .ro-training-actions button{border-radius:0;background:#285476;border:1px solid #5588aa;color:#fff;padding:9px 15px;cursor:pointer}
#student-portal .ro-training-complete-message{border:1px solid #365772;background:#172c40;padding:24px}
#student-portal .ro-training-complete-message strong{font-size:17px}
#student-portal .ro-training-complete-message p{color:#9bb5c9;font-size:13px}
@media(max-width:920px){#student-portal .ro-training-grid{grid-template-columns:1fr}}

/* v14.0.4: Student invoice heading and existing billing checkout inside My Account */
#student-portal .ro-account .rax-student-invoices summary,#student-portal .ro-account .rax-billing h4,#student-portal .ro-account .rax-billing h3{color:#fff!important}
#student-portal .ro-account .rax-billing{border-radius:0;background:transparent;border:0;padding:0;margin:14px 0}
#student-portal .ro-account .rax-student-invoices{border-radius:0}
#student-portal .ro-account .rax-paypal-popup-form input{background:#0c2031;color:#fff;border:1px solid #45677e;border-radius:0;padding:9px}

/* v14.0.5: compact student account, no legacy billing panel */
#student-portal .ro-student-invoices h3,#student-portal .ro-account-deposit h3{color:#eef6fc;font:700 14px system-ui,sans-serif;margin:18px 0 8px}
#student-portal .ro-student-invoices table{width:100%;border-collapse:collapse;font-size:12px}
#student-portal .ro-student-invoices th,#student-portal .ro-student-invoices td{padding:10px;border-bottom:1px solid #294155;text-align:left}
#student-portal .ro-student-invoices th{color:#a8c2d6;background:#172a3e}
#student-portal .ro-student-invoices td:last-child{text-align:right}
#student-portal .ro-student-invoices .rax-invoice-open,#student-portal .ro-account-deposit button{background:#287cb8;color:#fff;border:1px solid #438fc4;border-radius:3px;padding:8px 12px;font:600 12px system-ui,sans-serif;cursor:pointer}
#student-portal .ro-account-deposit{border:1px solid #34516a;background:#172a3e;padding:14px;margin-top:16px;display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap}
#student-portal .ro-account-deposit h3{margin:0 0 3px}
#student-portal .ro-account-deposit p{margin:0;color:#9eb5c8;font-size:12px}
#student-portal .ro-account-deposit form{display:flex;align-items:end;gap:10px;flex-wrap:wrap}
#student-portal .ro-account-deposit label{display:grid;gap:5px;font-size:11px;color:#a8c2d6}
#student-portal .ro-account-deposit input{width:140px;padding:9px;background:#0d2134;color:#eef6fc;border:1px solid #45647e;border-radius:3px}

/* v14.0.6 student billing polish: scoped to actual .ro-people workspace */
#rax-app .ro-people .ro-student-invoices h3,
#rax-app .ro-people .ro-account-deposit h3{color:#f2f7fd!important;font-family:inherit!important;font-size:14px!important;font-weight:700!important;line-height:1.35!important;letter-spacing:0!important;text-transform:none!important;margin:0 0 10px!important;}
#rax-app .ro-people .ro-account-deposit{margin-top:18px!important;padding:14px!important;border:1px solid #34516a!important;border-radius:0!important;background:#172a3e!important;display:block!important;}
#rax-app .ro-people .ro-account-deposit h3{margin-bottom:6px!important;}
#rax-app .ro-people .ro-account-deposit p{font-size:12px!important;margin:0 0 12px!important;color:#a8c2d6!important;}
#rax-app .ro-people .ro-account-deposit form{display:flex!important;align-items:end!important;gap:10px!important;flex-wrap:wrap!important;}
#rax-app .ro-people .ro-account-deposit label{display:grid!important;gap:5px!important;font-size:12px!important;color:#dce9f4!important;}
#rax-app .ro-people .ro-account-deposit input[type=number]{width:150px!important;height:38px!important;min-height:38px!important;padding:7px 10px!important;border-radius:0!important;background:#0e2235!important;color:#fff!important;border:1px solid #45647e!important;box-shadow:none!important;font:500 13px system-ui,sans-serif!important;}
#rax-app .ro-people .ro-account-deposit button[type=submit]{height:38px!important;padding:0 15px!important;border-radius:0!important;border:1px solid #488cbb!important;background:#2678b1!important;color:#fff!important;box-shadow:none!important;font:600 12px system-ui,sans-serif!important;cursor:pointer!important;}
#rax-app .ro-people .ro-account-deposit button[type=submit]:hover{background:#358dca!important;}

/* v14.0.20 Add Person — compact admin-only workspace form */
#student-portal .ro-add-person{margin:0 0 12px;border:1px solid #34536d;background:#142b40;padding:11px 14px;color:#eaf4fb}
#student-portal .ro-add-person summary{cursor:pointer;font:700 13px/1.4 system-ui,sans-serif;color:#fff;list-style:none}
#student-portal .ro-add-person summary::-webkit-details-marker{display:none}
#student-portal .ro-add-person form{padding-top:14px}
#student-portal .ro-add-person-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
#student-portal .ro-add-person-grid label{display:grid;gap:5px;color:#a9c2d7;font:600 11px system-ui,sans-serif}
#student-portal .ro-add-person-grid input,#student-portal .ro-add-person-grid select{box-sizing:border-box;width:100%;min-width:0;background:#0e2032;color:#fff;border:1px solid #4a6780;border-radius:0;padding:9px;font:13px system-ui,sans-serif}
#student-portal .ro-add-person .ro-account-types{margin-top:12px}
#student-portal .ro-add-person-note{color:#a8bfd1;font-size:12px;margin:10px 0}
#student-portal .ro-add-person-actions{display:flex;gap:9px;justify-content:flex-end}
#student-portal .ro-add-person-actions button{background:#287cb8;color:#fff;border:1px solid #4c98ce;border-radius:0;padding:9px 14px;cursor:pointer}
#student-portal .ro-add-person-actions [data-ro-add-cancel]{background:#1b3449}
@media(max-width:650px){#student-portal .ro-add-person-grid{grid-template-columns:1fr}}

/* v14.0.23: Flight Invoices heading must remain white in every portal. */
#rax-app #student-portal .ro-invoice-history h3,
#rax-app .ro-invoice-history h3,
#rax-app .ro-student-invoices h3,
#rax-app .ro-finance-panelhead h3,
#rax-app .rax-student-invoices > summary,
#rax-app .rax-admin-subsection > summary:is([class*="invoice"]) {
 color:#fff!important;
 -webkit-text-fill-color:#fff!important;
 opacity:1!important;
}

/* v15.5.13: staff profile editor scoped to the modern people workspace */
.ro-people .ro-staff-edit-panel{max-width:100%;padding:8px 4px 24px;color:#e7f1fc}
.ro-people .ro-profile-edit-intro{margin:8px 0 20px}
.ro-people .ro-profile-edit-intro h3{font-size:1.25rem;margin:0 0 7px;color:#f5f9ff}
.ro-people .ro-profile-edit-intro p{color:#a8c0d6;margin:0}
.ro-people .rax-admin-profile-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:22px;border:1px solid #365773;border-radius:14px;background:#10283e}
.ro-people .rax-admin-profile-form>p{grid-column:1/-1;margin:0;color:#b9cde0}
.ro-people .rax-admin-profile-form>label{display:flex;flex-direction:column;gap:7px;font-size:.9rem;font-weight:600;color:#c9dcee;min-width:0}
.ro-people .rax-admin-profile-form>label:has(input[type=checkbox]){flex-direction:row;align-items:center;gap:10px;border:1px solid #375671;border-radius:9px;padding:12px}
.ro-people .rax-admin-profile-form input:not([type=checkbox]){box-sizing:border-box;width:100%;min-width:0;padding:12px 14px;background:#091e31;color:#fff;border:1px solid #466681;border-radius:8px;font:inherit}
.ro-people .rax-admin-profile-form input[type=checkbox]{width:18px;height:18px;accent-color:#59baf3}
.ro-people .rax-admin-profile-form button{grid-column:1/-1;justify-self:start;border:0;border-radius:9px;background:#2879ac;color:white;padding:12px 22px;font:inherit;font-weight:700;cursor:pointer}
.ro-people .rax-admin-profile-form button:hover{background:#3893cc}
.ro-people [data-ro-profile-page=edit] .ro-staff-edit-panel>div:not(.ro-profile-edit-intro){max-width:100%}
@media(max-width:700px){.ro-people .rax-admin-profile-form{grid-template-columns:1fr;padding:14px}.ro-people .rax-admin-profile-form>p,.ro-people .rax-admin-profile-form button{grid-column:1}}

/* v15.5.15: consistent personal Google Calendar controls */
.ro-clean .rax-ical-subscribe{max-width:100%;border:1px solid rgba(144,184,216,.35);border-radius:12px;padding:18px;background:rgba(9,29,48,.35);color:#e8f2fc;overflow-wrap:anywhere}
.ro-clean .rax-ical-subscribe summary{cursor:pointer;font-size:1.04rem;margin-bottom:12px}
.ro-clean .rax-ical-subscribe p{line-height:1.6;max-width:85ch}
.ro-clean .rax-ical-subscribe form{display:inline-flex;max-width:100%;margin:8px 10px 8px 0;vertical-align:middle}
.ro-clean .rax-ical-subscribe button.rax-btn{appearance:none;background:#286b99;border:1px solid #5a9bc5;color:#fff;border-radius:8px;padding:11px 18px;font:inherit;font-weight:600;cursor:pointer;white-space:normal}
.ro-clean .rax-ical-subscribe button.rax-btn-secondary{background:#263d53;border-color:#647d94}
.ro-clean .rax-ical-subscribe button:hover{filter:brightness(1.13)}
.ro-clean .rax-ical-subscribe a{color:#8bd4ff}
.ro-clean .rax-ical-subscribe code{white-space:normal;overflow-wrap:anywhere}
@media(max-width:650px){.ro-clean .rax-ical-subscribe{padding:12px}.ro-clean .rax-ical-subscribe form{display:flex;width:100%}.ro-clean .rax-ical-subscribe button{width:100%}}
