/* FEMS Parent Fee Portal v2.2.0 - loaded after legacy payment-portal.css */
body.fee-portal{background:#f3f5f7;color:#17191d;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body.fee-portal *{box-sizing:border-box}
.fee-top{background:#111318!important;padding:7px clamp(15px,5vw,65px)!important;font-size:11px!important}
.fee-header{background:#fff!important;color:#17191d!important;padding:12px clamp(14px,5vw,65px)!important;border-bottom:1px solid #e5e8ec;box-shadow:none!important;position:sticky;top:0;z-index:60}
.fee-brand img{width:42px!important;height:42px!important;border-radius:10px!important;border:1px solid #eceff2!important;padding:2px!important}.fee-brand h1{font-size:17px!important;color:#17191d}.fee-brand p{color:#69717d!important;font-size:10px!important}
.fee-nav{align-items:center}.fee-nav a{color:#343940!important;padding:9px 10px;border-radius:8px}.fee-nav a:hover{background:#f1f3f5}.fee-nav a:last-child{background:#900008;color:#fff!important}
.fee-wrap{max-width:1160px!important;margin:0 auto!important;padding:32px 18px 52px!important}
.fee-hero{background:linear-gradient(135deg,#111318,#6d0006);color:#fff;border-radius:18px;padding:28px 24px!important;text-align:left!important;margin:0 0 18px!important;position:relative;overflow:hidden}
.fee-hero:after{content:"";position:absolute;width:230px;height:230px;border-radius:50%;right:-100px;top:-100px;border:1px solid rgba(255,255,255,.10);box-shadow:0 0 0 35px rgba(255,255,255,.02)}
.fee-hero h2{color:#fff!important;font-size:32px!important;margin:0 0 7px!important}.fee-hero p{color:#e4e7eb!important;max-width:850px!important;margin:0!important}
.fee-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 17px}.fee-progress-step{background:#fff;border:1px solid #e5e8ec;border-radius:11px;padding:10px 12px;display:flex;gap:9px;align-items:center;color:#69717d;font-size:11px;font-weight:750}.fee-progress-step strong{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#fff1f2;color:#900008;font-size:10px}.fee-progress-step.active{border-color:#e2c4c7;background:#fffafa;color:#4d161a}
.notice{border-radius:10px!important;border:1px solid transparent!important}.notice.success{background:#e8f7ed!important;color:#176a31!important;border-color:#d2ecdc!important}.notice.error{background:#fdeaea!important;color:#8b1111!important;border-color:#f3d0d0!important}.notice.info{background:#edf5ff!important;color:#1e4f7c!important;border-color:#d9e9fb!important}
.fee-card{background:#fff!important;border:1px solid #e4e8ec!important;border-radius:16px!important;padding:22px!important;box-shadow:0 10px 28px rgba(16,24,40,.05)!important;margin-bottom:17px!important}
.fee-card h3{color:#820006!important;font-size:18px!important;margin:0 0 15px!important}.fee-card h3:before{content:"";display:inline-block;width:4px;height:18px;background:#900008;border-radius:6px;margin-right:9px;vertical-align:-3px}
.fee-field label{font-size:12px!important}.fee-field input,.fee-field select{padding:12px 13px!important;border-radius:9px!important;border-color:#ccd2d8!important}.fee-field input:focus,.fee-field select:focus{border-color:#9c0008!important;box-shadow:0 0 0 3px rgba(144,0,8,.08)!important}
.fee-btn{background:#900008!important;border-radius:9px!important;padding:12px 16px!important;min-height:43px}.fee-btn.secondary{background:#17191d!important}.fee-btn.light{background:#f0f2f4!important;color:#7e0006!important}
.student-strip{padding-bottom:16px!important}.student-name{font-size:25px!important;color:#17191d}.student-meta{font-size:13px!important}
.fee-summary{gap:12px!important}.fee-stat{background:#fafbfc!important;border:1px solid #e6e9ed!important;border-radius:12px!important;padding:16px!important}.fee-stat strong{font-size:24px!important;color:#8f0008!important}
.invoice-list{border:1px solid #e5e8ec;border-radius:10px;overflow:hidden}.invoice-list th{background:#f7f8fa;color:#444b55;font-size:11px;text-transform:uppercase;letter-spacing:.25px}.invoice-list th,.invoice-list td{padding:10px 11px!important}
.method-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:15px!important}.method-card{border:1px solid #e4e8ec!important;border-left:0!important;border-top:4px solid #900008!important;border-radius:13px!important;padding:18px!important;background:#fff}.method-card h4{font-size:17px!important;margin:0 0 13px!important}
.method-card:first-child h4:after{content:"Mobile";display:inline-flex;margin-left:8px;padding:4px 7px;border-radius:999px;background:#fff2f3;color:#900008;font-size:10px;vertical-align:2px}.method-card:last-child h4:after{content:"Bank";display:inline-flex;margin-left:8px;padding:4px 7px;border-radius:999px;background:#fff8e8;color:#8a6112;font-size:10px;vertical-align:2px}
.receipt-row{border-radius:10px!important;background:#fafbfc}.fee-footer{background:#111318;color:#aeb4bc!important;padding:18px!important;margin-top:14px}
@media(max-width:760px){.fee-top{display:none!important}.fee-header{flex-direction:row!important;align-items:center!important}.fee-nav a:not(:first-child){display:none}.fee-wrap{padding:18px 11px 38px!important}.fee-hero{border-radius:13px;padding:22px 17px!important}.fee-hero h2{font-size:27px!important}.fee-progress{grid-template-columns:1fr}.fee-card{padding:16px!important;border-radius:13px!important}.fee-summary{grid-template-columns:1fr!important}.method-grid{grid-template-columns:1fr!important}.student-strip{gap:12px!important}.student-name{font-size:21px!important}.invoice-list{display:block!important;overflow-x:auto!important;white-space:nowrap}.receipt-row{align-items:flex-start!important;flex-direction:column}.receipt-row .fee-btn{width:100%}}
