.opa-payment-wrap{--opa-navy:#0d2744;--opa-blue:#1257a6;--opa-gold:#c68a25;--opa-brown:#6d4627;--opa-ink:#162333;--opa-muted:#667486;--opa-line:#e4e9ef;--opa-soft:#f6f8fb;max-width:1180px;margin:32px auto;padding:0 16px;font-family:"Noto Sans Bengali",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--opa-ink);box-sizing:border-box}.opa-payment-wrap *{box-sizing:border-box}.opa-payment-shell{background:#fff;border:1px solid #e1e6ec;border-radius:22px;overflow:hidden;box-shadow:0 18px 55px rgba(15,39,68,.12)}.opa-site-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding:14px 30px;background:#fff;border-bottom:3px solid var(--opa-gold);min-height:126px}.opa-header-spacer{min-width:0}.opa-logo-center{width:112px;height:112px;overflow:hidden;display:flex;align-items:center;justify-content:center;justify-self:center}.opa-logo{width:112px;height:112px;max-width:100%;max-height:100%;object-fit:contain;display:block;flex:0 0 112px;transform:none}.opa-contact-block{justify-self:end;text-align:left;line-height:1.5;min-width:290px}.opa-institute-name{font-size:20px;font-weight:900;color:var(--opa-navy);margin-bottom:5px}.opa-meta{font-size:13px;color:#4f5d6c;margin-top:4px}.opa-pin{font-size:18px;color:var(--opa-gold)}.opa-content-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(330px,.88fr);gap:22px;padding:26px;background:var(--opa-soft)}.opa-form-card,.opa-pay-card{background:#fff;border:1px solid var(--opa-line);border-radius:18px;padding:24px;box-shadow:0 6px 20px rgba(20,40,60,.05)}.opa-card-title{display:flex;align-items:center;gap:12px;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--opa-line)}.opa-card-title h2{margin:0;font-size:20px;color:var(--opa-navy)}.opa-card-title p{margin:3px 0 0;color:var(--opa-muted);font-size:12px}.opa-step{width:36px;height:36px;border-radius:10px;background:#edf4fc;color:var(--opa-blue);display:grid;place-items:center;font-weight:900}.opa-field{margin:0 0 15px}.opa-payment-wrap label{display:block;font-size:13px;font-weight:800;color:#263548;margin-bottom:7px}.opa-payment-wrap label span{color:#d32f2f}.opa-payment-wrap label em{font-style:normal;color:#7b8794;font-weight:600}.opa-payment-wrap input,.opa-payment-wrap select{width:100%;border:1px solid #cfd7e1;border-radius:10px;background:#fff;color:#172434;padding:12px 13px;font-size:14px;outline:none;transition:border-color .2s,box-shadow .2s}.opa-payment-wrap input:focus,.opa-payment-wrap select:focus{border-color:#4e86c8;box-shadow:0 0 0 3px rgba(18,87,166,.09)}.opa-payment-wrap input::placeholder{color:#a0a9b4}.opa-two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}.opa-amount-card{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:14px 16px;margin:4px 0 18px;border:1px solid #dfe8f2;border-radius:12px;background:#f7fbff}.opa-amount-card span{display:block;font-weight:800;font-size:13px;color:var(--opa-navy)}.opa-amount-card small{display:block;color:var(--opa-muted);font-size:11px;margin-top:2px}.opa-amount-card strong{font-size:24px;color:var(--opa-blue);white-space:nowrap}.opa-payment-wrap small{font-size:11px;color:#768293}.opa-file{padding:10px!important;background:#fafbfd!important}.opa-consent{display:flex;gap:9px;align-items:flex-start;margin-top:8px;padding:11px 12px;border-radius:10px;background:#f3f7fc;border:1px solid #dce8f5;color:#46617e}.opa-consent span{font-size:15px}.opa-consent p{margin:0;font-size:11px;line-height:1.55}.opa-submit{width:100%;margin-top:14px;border:0;border-radius:11px;padding:14px 18px;background:linear-gradient(135deg,#0d2744,#145da9);color:#fff;font-size:16px;font-weight:900;cursor:pointer;box-shadow:0 8px 18px rgba(13,39,68,.16);transition:transform .15s,opacity .15s}.opa-submit:hover{transform:translateY(-1px)}.opa-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.opa-result{margin-top:12px;padding:11px 12px;border-radius:9px;text-align:center;font-size:13px;display:none}.opa-result.success,.opa-result.error{display:block}.opa-result.success{background:#eaf8ef;color:#146c2e}.opa-result.error{background:#fff0f0;color:#a01b1b}.opa-instruction{display:grid;gap:9px;margin-bottom:18px}.opa-instruction-row{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.5;color:#526174}.opa-instruction-row b{width:24px;height:24px;flex:0 0 24px;border-radius:50%;display:grid;place-items:center;background:#edf4fc;color:var(--opa-blue);font-size:11px}.opa-qr-card{text-align:center;border:1px solid #e4d5bd;border-radius:15px;overflow:hidden;background:#fffaf2;padding-bottom:15px}.opa-qr-brand{padding:10px;background:var(--opa-navy);color:#fff;font-weight:900;font-size:15px}.opa-qr-brand span{color:#f0c979;margin-left:6px}.opa-qr-card img{width:min(290px,88%);height:auto;display:block;margin:18px auto 13px;border:7px solid #fff;border-radius:10px;box-shadow:0 5px 20px rgba(0,0,0,.1)}.opa-qr-card strong{display:block;color:var(--opa-navy);font-size:14px}.opa-qr-card small{display:block;margin-top:3px;color:#8a7659}.opa-supported{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:14px}.opa-supported span{width:100%;font-size:11px;color:var(--opa-muted);margin-bottom:2px}.opa-supported b{font-size:10px;background:#f5f6f8;border:1px solid #e2e6eb;border-radius:20px;padding:5px 8px;color:#4b5968}.opa-important{margin-top:15px;padding:11px 12px;background:#fff8e9;border:1px solid #efd9a6;border-radius:10px}.opa-important strong{font-size:12px;color:#9a6a13}.opa-important p{margin:4px 0 0;font-size:11px;color:#76633f;line-height:1.5}.opa-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--opa-line);border-top:1px solid var(--opa-line)}.opa-benefits>div{background:#fff;padding:17px 15px;display:grid;grid-template-columns:34px 1fr;column-gap:9px;align-items:center}.opa-benefits span{grid-row:span 2;width:34px;height:34px;border-radius:50%;border:1px solid #d8c19a;color:var(--opa-gold);display:grid;place-items:center;font-weight:900}.opa-benefits strong{font-size:12px;color:var(--opa-navy)}.opa-benefits small{font-size:10px;color:var(--opa-muted)}.opa-footer{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap;padding:15px 20px;background:#0b2035;color:#aebccc;font-size:10px}.opa-footer strong{color:#fff}.opa-footer span:not(:last-child):after{content:"•";margin-left:14px;color:#65798c}@media(max-width:900px){.opa-content-grid{grid-template-columns:1fr}.opa-pay-card{order:2}.opa-benefits{grid-template-columns:1fr 1fr}.opa-logo-center{width:96px;height:96px}.opa-logo{width:96px;height:96px;flex-basis:96px;transform:none}.opa-site-header{grid-template-columns:1fr auto 1fr}.opa-contact-block{min-width:230px}}@media(max-width:650px){.opa-payment-wrap{margin:15px auto;padding:0 8px}.opa-site-header{grid-template-columns:1fr;justify-items:center;padding:16px 14px;gap:12px}.opa-header-spacer{display:none}.opa-logo-center{grid-row:1}.opa-logo-center{width:100px;height:100px}.opa-logo{width:100px;height:100px;flex-basis:100px;transform:none}.opa-contact-block{grid-row:2;justify-self:stretch;min-width:0;text-align:center}.opa-institute-name{font-size:16px}.opa-meta{font-size:10px}.opa-hero{display:none}.opa-hero{padding:22px 16px;justify-content:flex-start}.opa-hero-icon{width:46px;height:46px;font-size:23px}.opa-hero h1{font-size:24px}.opa-hero p{font-size:11px}.opa-content-grid{padding:12px;gap:12px}.opa-form-card,.opa-pay-card{padding:16px;border-radius:14px}.opa-two-col{grid-template-columns:1fr}.opa-benefits{grid-template-columns:1fr}.opa-benefits>div{padding:13px 15px}.opa-footer{display:block;text-align:center;line-height:1.7}.opa-footer span{display:block}.opa-footer span:not(:last-child):after{display:none}}

/* The previous hero banner is intentionally removed from the payment page. */
.opa-hero{display:none!important}
/* Admission flow additions */
.opa-admission-card{max-width:920px;margin:28px auto}
.opa-admission-card textarea{width:100%;box-sizing:border-box;border:1px solid #d8dee8;border-radius:10px;padding:12px 14px;font:inherit;resize:vertical;background:#fff}
.opa-flow-success{max-width:1180px;margin:18px auto 0;padding:13px 18px;border:1px solid #b7e1c2;border-radius:12px;background:#effaf2;color:#146c2e;font-weight:700}
.opa-admission-wrap .opa-form-card{box-shadow:0 12px 35px rgba(20,45,80,.08)}

/* v1.2.3 Admission division checkboxes */
.opa-checkbox-grid{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.opa-checkbox{display:flex;align-items:center;gap:8px;padding:11px 14px;border:1px solid #d7dce5;border-radius:10px;background:#fff;cursor:pointer;font-weight:600}
.opa-checkbox input{width:18px;height:18px;margin:0;accent-color:#0b5cab}
.opa-division-field small{display:block;margin-top:7px;opacity:.7}

.opa-monthly-heading{margin:18px 0 14px;padding:14px 20px;background:#f4f8fc;border:1px solid #d9e4ef;border-left:4px solid #123b68;border-radius:10px;text-align:center}
.opa-monthly-heading h2{margin:0;font-size:20px;line-height:1.5;color:#123b68;font-weight:700}
@media(max-width:600px){.opa-monthly-heading{padding:12px 14px}.opa-monthly-heading h2{font-size:17px}}
.opa-search-help{display:block;margin:-8px 0 16px;color:#667085;font-size:13px;line-height:1.6}

.opa-monthly-lookup-card{max-width:1180px;margin:0 26px 22px}.opa-lookup-button-field .opa-submit{margin-top:0}.opa-monthly-lookup-result{margin-top:4px;padding:11px 13px;border-radius:10px;font-size:13px;display:none}.opa-monthly-lookup-result.success,.opa-monthly-lookup-result.error{display:block}.opa-monthly-lookup-result.success{background:#edf9f0;border:1px solid #bfe3c7;color:#175f2b}.opa-monthly-lookup-result.error{background:#fff1f1;border:1px solid #efc7c7;color:#9d2020}.opa-use-monthly-student{margin-top:9px;border:0;border-radius:8px;padding:9px 13px;background:#1257a6;color:#fff;font-weight:800;cursor:pointer}.opa-lookup-btn{display:block}.opa-monthly-lookup-card .opa-card-title{margin-bottom:14px}@media(max-width:650px){.opa-monthly-lookup-card{margin:0 12px 14px;padding:16px}.opa-lookup-button-field label{display:none}}

/* Public Student Information */
.opa-student-public{background:#f5f7fb;padding:24px 12px}.opa-student-shell{max-width:1100px;margin:0 auto}.opa-student-search-card,.opa-student-result-card{background:#fff;border:1px solid #e4e8ef;border-radius:18px;box-shadow:0 10px 30px rgba(18,59,115,.07);padding:28px;margin:22px 0}.opa-student-title{display:flex;gap:14px;align-items:center;margin-bottom:20px}.opa-student-title>span{font-size:32px}.opa-student-title h1{margin:0;color:#123b73;font-size:28px}.opa-student-title p{margin:4px 0 0;color:#667085}.opa-student-search-form{display:flex;gap:10px}.opa-student-search-form input{flex:1;min-height:48px;border:1px solid #d6dce5;border-radius:10px;padding:0 14px;font-size:16px}.opa-student-search-form button{border:0;border-radius:10px;padding:0 22px;background:#123b73;color:#fff;font-weight:700;cursor:pointer}.opa-student-not-found{margin-top:16px;padding:13px 15px;border-radius:10px;background:#fff3f3;color:#b42318}.opa-student-badge{display:inline-block;background:#eaf8ef;color:#18794e;border-radius:999px;padding:7px 13px;font-size:13px;font-weight:700}.opa-student-profile{display:flex;align-items:center;gap:15px;margin:18px 0 24px}.opa-student-avatar{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#eef4ff;font-size:30px}.opa-student-profile h2{margin:0;color:#172033}.opa-student-profile p{margin:5px 0;color:#667085}.opa-student-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.opa-student-grid>div{border:1px solid #e5e9f0;border-radius:12px;padding:14px;background:#fafbfc}.opa-student-grid small{display:block;color:#667085;margin-bottom:5px}.opa-student-grid strong{color:#172033}.opa-student-grid .opa-active{color:#18794e}.opa-student-note{margin-top:16px;padding:12px 14px;border-radius:10px;background:#f3f7ff;color:#42526b}@media(max-width:700px){.opa-student-search-form{flex-direction:column}.opa-student-search-form button{min-height:48px}.opa-student-grid{grid-template-columns:1fr}.opa-student-search-card,.opa-student-result-card{padding:20px}}

.opa-student-form-actions{margin-top:20px;display:flex;justify-content:flex-start}
.opa-admission-download-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:#123f8c;color:#fff!important;text-decoration:none!important;padding:12px 18px;border-radius:9px;font-weight:700;box-shadow:0 4px 12px rgba(18,63,140,.18)}
.opa-admission-download-btn:hover{filter:brightness(.95);color:#fff!important}

.opa-account-box{margin:22px 0;padding:18px;border:1px solid #dbe3ef;border-radius:12px;background:#f8fbff}
.opa-account-title{margin-bottom:12px}.opa-account-title h3{margin:0;font-size:18px}.opa-account-title p{margin:3px 0 0}
.opa-security-note{display:block;margin-top:4px;color:#536274;line-height:1.6}
.opa-portal-login-card #opa-student-loginform p{margin:0 0 14px}
.opa-portal-login-card #opa-student-loginform label{display:block;font-weight:700;margin-bottom:6px}
.opa-portal-login-card #opa-student-loginform input[type=text],
.opa-portal-login-card #opa-student-loginform input[type=password]{width:100%;padding:12px;border:1px solid #ccd5e2;border-radius:8px}
.opa-portal-login-card #wp-submit{background:#123f8c;color:#fff;border:0;border-radius:8px;padding:12px 18px;font-weight:700;cursor:pointer}
.opa-portal-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}
.opa-portal-topbar h2{margin:10px 0 0}.opa-portal-logout{display:inline-block;padding:9px 13px;border-radius:8px;background:#eef1f5;text-decoration:none}
.opa-portal-section-title{margin:24px 0 12px;padding-bottom:8px;border-bottom:1px solid #e5e9ef}
.opa-due-red{color:#b42318!important}

.opa-photo-field input[type=file]{width:100%;padding:10px;border:1px dashed #aeb9c8;border-radius:8px;background:#fff}
.opa-photo-preview-wrap{margin-top:12px}
.opa-photo-preview-wrap img{width:120px;height:140px;object-fit:cover;border-radius:8px;border:1px solid #d3dae5;background:#fff}
.opa-public-student-photo{margin:0 0 18px}
.opa-public-student-photo img{width:130px;height:150px;object-fit:cover;border-radius:10px;border:1px solid #d6dce5;background:#fff}
.opa-portal-photo{margin:8px 0}
.opa-portal-photo img{width:100px;height:115px;object-fit:cover;border-radius:9px;border:1px solid #d5dbe5}

.opa-correction-box{margin-top:18px;padding:14px 16px;border:1px solid #d9e2ef;border-radius:10px;background:#f8fbff;display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center}
.opa-correction-box a{margin-left:auto;font-weight:700;text-decoration:none}
.opa-edit-search-form{grid-template-columns:1fr 1fr auto}
.opa-edit-grid label{display:block;font-size:13px;font-weight:700;margin-bottom:6px}
.opa-edit-grid input,.opa-edit-grid select,.opa-edit-grid textarea{width:100%;padding:10px;border:1px solid #ccd5e2;border-radius:8px;background:#fff}
.opa-edit-address{grid-column:1/-1}
.opa-edit-photo{margin:18px 0}.opa-edit-current-photo{margin:10px 0}.opa-edit-current-photo img{width:110px;height:125px;object-fit:cover;border-radius:8px}
.opa-edit-warning{margin:16px 0;padding:12px;background:#fff7e6;border:1px solid #f2d394;border-radius:8px}
.opa-edit-submit{border:0;cursor:pointer}
.opa-edit-success{margin:16px 0;padding:14px;background:#ecfdf3;border:1px solid #a6f4c5;color:#05603a;border-radius:8px;font-weight:700}
@media(max-width:700px){.opa-edit-search-form{grid-template-columns:1fr}.opa-correction-box a{margin-left:0}}

.opa-portal-card-downloads{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:12px}
.opa-portal-card-item{border:1px solid #d8e0eb;border-radius:10px;padding:15px;background:#fbfdff;display:flex;flex-direction:column;gap:8px}
.opa-portal-card-item strong{font-size:16px;color:#173f77}
.opa-portal-card-item small{color:#637083;line-height:1.5}
.opa-portal-card-item .opa-admission-download-btn{align-self:flex-start}
@media(max-width:700px){.opa-portal-card-downloads{grid-template-columns:1fr}}

.opa-result-list{display:grid;gap:14px;margin-top:12px}
.opa-result-item{border:1px solid #d8e0eb;border-radius:12px;padding:16px;background:#fbfdff;display:grid;grid-template-columns:minmax(180px,1fr) minmax(260px,1.2fr) auto;gap:14px;align-items:center}
.opa-result-item>div:first-child{display:flex;flex-direction:column;gap:4px}.opa-result-item>div:first-child strong{font-size:16px;color:#173f77}.opa-result-item>div:first-child small{color:#687587}
.opa-result-summary{display:flex;gap:14px;flex-wrap:wrap}.opa-result-summary span{font-size:12px;color:#667386}.opa-result-summary b{display:block;font-size:14px;color:#172235;margin-top:2px}
@media(max-width:800px){.opa-result-item{grid-template-columns:1fr}.opa-result-item .opa-admission-download-btn{justify-self:start}}

.opa-routine-actions{margin:10px 0}.opa-routine-card{border:1px solid #d8e0eb;border-radius:12px;background:#fff;overflow:hidden;margin:12px 0 18px}.opa-routine-heading{padding:15px 16px;background:#f7f9fc;border-bottom:1px solid #d8e0eb}.opa-routine-heading h3{margin:0 0 5px;color:#173f77;font-size:18px}.opa-routine-heading p{margin:0;color:#667386}.opa-routine-table-wrap{overflow-x:auto}.opa-routine-table{width:100%;border-collapse:collapse;min-width:620px}.opa-routine-table th,.opa-routine-table td{padding:11px 12px;border-bottom:1px solid #e5e9ef;text-align:left}.opa-routine-table th{background:#fbfcfe;color:#41516a;font-size:13px}.opa-routine-table td:nth-child(3){font-weight:700;color:#1c2e46}.opa-routine-filter{display:flex;gap:10px;margin-top:15px}.opa-routine-filter select{flex:1;min-height:42px;border:1px solid #ccd5e1;border-radius:8px;padding:8px 10px}.opa-routine-filter button{border:0;border-radius:8px;padding:9px 16px;background:#174ea6;color:#fff;font-weight:700;cursor:pointer}@media(max-width:650px){.opa-routine-filter{flex-direction:column}.opa-routine-table{min-width:560px}}

.opa-routine-table{min-width:920px}
.opa-routine-table th,.opa-routine-table td{text-align:center;vertical-align:middle}
.opa-routine-table th:first-child,.opa-routine-table td:first-child{min-width:120px;text-align:left}

/* v1.8.3 Student portal account controls */
.opa-portal-account-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.opa-portal-password-toggle{display:inline-flex;align-items:center;justify-content:center;border:1px solid #174ea6;background:#fff;color:#174ea6;border-radius:8px;padding:9px 13px;font-weight:700;cursor:pointer;line-height:1.2}
.opa-portal-password-toggle:hover,.opa-portal-password-toggle:focus{background:#eef5ff}
.opa-portal-credentials-panel{margin-top:18px;padding:18px;border:1px solid #dbe3ef;border-radius:12px;background:#f8fbff}
@media(max-width:640px){.opa-portal-account-actions{justify-content:flex-start}.opa-portal-password-toggle,.opa-portal-logout{font-size:13px}}

/* v1.8.4 Reliable CSS-only portal credential toggle */
.opa-portal-credentials-toggle{
    position:absolute!important;
    opacity:0!important;
    pointer-events:none!important;
    width:1px!important;
    height:1px!important;
}
.opa-portal-password-toggle{
    user-select:none;
    -webkit-user-select:none;
}
.opa-portal-credentials-panel{
    display:none!important;
}
.opa-portal-credentials-toggle:checked ~ .opa-portal-credentials-panel{
    display:block!important;
}
.opa-portal-credentials-toggle:checked ~ .opa-portal-topbar .opa-portal-password-toggle{
    background:#174ea6;
    color:#fff;
}

/* v1.8.5 Credentials-only view */
.opa-portal-credentials-toggle:checked ~ *{
    display:none!important;
}
.opa-portal-credentials-toggle:checked ~ .opa-portal-topbar,
.opa-portal-credentials-toggle:checked ~ .opa-portal-credentials-panel{
    display:block!important;
}
.opa-portal-credentials-toggle:checked ~ .opa-portal-topbar > div:first-child{
    display:none!important;
}
.opa-portal-credentials-toggle:checked ~ .opa-portal-topbar .opa-portal-account-actions{
    display:flex!important;
    width:100%;
    justify-content:flex-end;
}
.opa-portal-credentials-toggle:checked ~ .opa-portal-credentials-panel *{
    display:revert;
}
.opa-portal-credentials-toggle:checked ~ .opa-portal-credentials-panel .opa-two-col{
    display:grid;
}

/* v1.8.7 Student portal attendance */
.opa-portal-attendance-filter{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin:0 0 12px}
.opa-portal-attendance-filter label{font-weight:700;display:block}
.opa-portal-attendance-filter input[type="month"]{min-height:42px;padding:8px 10px;border:1px solid #d6deea;border-radius:8px;background:#fff}
.opa-attendance-summary-grid strong{font-size:20px}
@media(max-width:640px){.opa-portal-attendance-filter input[type="month"]{flex:1;min-width:160px}}

/* v1.9.0 Public latest result page */
.opa-latest-result-search{margin-bottom:18px}
.opa-latest-result-form{margin-top:16px}
.opa-latest-result-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px}
.opa-latest-result-head h2{margin:8px 0 2px}
.opa-latest-result-head p{margin:0}
.opa-result-public-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}
.opa-result-public-summary>div{border:1px solid #dbe3ef;border-radius:10px;padding:12px;background:#f8fbff;text-align:center}
.opa-result-public-summary small{display:block;color:#667085;margin-bottom:5px}
.opa-result-public-summary strong{font-size:19px}
.opa-result-public-table-wrap{overflow-x:auto}
.opa-result-public-table{width:100%;border-collapse:collapse;margin-top:8px}
.opa-result-public-table th,.opa-result-public-table td{border:1px solid #d7dee8;padding:10px;text-align:center}
.opa-result-public-table th:first-child,.opa-result-public-table td:first-child{text-align:left}
@media(max-width:700px){
  .opa-result-public-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .opa-latest-result-head{display:block}
  .opa-result-print-btn{margin-top:12px}
}
@media print{
  .opa-latest-result-search,.opa-result-print-btn,.opa-footer{display:none!important}
  .opa-latest-result-card{box-shadow:none!important;border:0!important}
}

/* v1.9.4 Student payment history */
.opa-payment-history-wrap{width:100%;overflow-x:auto;margin:12px 0 20px}
.opa-payment-history-table{width:100%;border-collapse:collapse;min-width:880px;background:#fff}
.opa-payment-history-table th,.opa-payment-history-table td{border:1px solid #d8e0ea;padding:9px 10px;text-align:left;vertical-align:middle;font-size:13px}
.opa-payment-history-table th{background:#f3f6fa;font-weight:700;white-space:nowrap}
.opa-payment-history-table code{font-size:12px}
.opa-history-status{display:inline-block;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}
.opa-history-status.approved{background:#e8f7ee;color:#167642}
.opa-history-status.pending{background:#fff6db;color:#8b6500}
.opa-history-status.rejected{background:#fdecec;color:#a52b2b}
.opa-history-invoice-btn{white-space:nowrap;padding:7px 10px;font-size:12px}
@media(max-width:640px){.opa-payment-history-table th,.opa-payment-history-table td{padding:8px;font-size:12px}}

/* v1.9.5 Complete payment history summary in Student Portal */
.opa-payment-history-summary{margin:12px 0 16px}
.opa-payment-history-summary strong{font-size:17px}

/* v1.9.6 Hidden Student Portal payment history */
.opa-payment-history-toggle{position:absolute!important;opacity:0!important;pointer-events:none!important}
.opa-payment-history-toggle-wrap{margin:18px 0}
.opa-payment-history-toggle-btn{display:inline-block;cursor:pointer;user-select:none}
.opa-payment-history-hidden-panel{display:none;margin-top:16px}
.opa-history-hide-label{display:none}
.opa-payment-history-toggle:checked~.opa-payment-history-hidden-panel{display:block}
.opa-payment-history-toggle:checked+.opa-payment-history-toggle-btn .opa-history-show-label{display:none}
.opa-payment-history-toggle:checked+.opa-payment-history-toggle-btn .opa-history-hide-label{display:inline}

/* v1.9.7 Student Portal password recovery */
.opa-forgot-password-wrap{margin-top:16px;border-top:1px solid #e1e7ef;padding-top:14px}
.opa-forgot-password-toggle{position:absolute!important;opacity:0!important;pointer-events:none!important}
.opa-forgot-password-link{display:inline-block;cursor:pointer;font-weight:700;color:#174a86}
.opa-forgot-close{display:none}
.opa-forgot-password-panel{display:none;margin-top:14px;padding:16px;border:1px solid #d9e1eb;border-radius:12px;background:#f8fbff}
.opa-forgot-password-panel h3{margin:0 0 5px}
.opa-forgot-password-panel>p{margin:0 0 14px;color:#667085;font-size:13px}
.opa-forgot-password-toggle:checked~.opa-forgot-password-panel{display:block}
.opa-forgot-password-toggle:checked+.opa-forgot-password-link .opa-forgot-open{display:none}
.opa-forgot-password-toggle:checked+.opa-forgot-password-link .opa-forgot-close{display:inline}
.opa-recovery-result{margin-top:12px;padding:0;font-weight:600}
.opa-recovery-result.success,.opa-recovery-result.error{padding:10px 12px;border-radius:8px}
.opa-recovery-result.success{background:#eaf8ef;color:#176b3c}
.opa-recovery-result.error{background:#fdecec;color:#a52b2b}

/* v1.9.8 Student Portal one-line quick actions + hidden content panels */
.opa-portal-quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:18px 0;align-items:stretch}
.opa-portal-panel-toggle{position:absolute!important;opacity:0!important;pointer-events:none!important}
.opa-portal-quick-btn{display:flex;align-items:center;justify-content:center;gap:5px;min-height:50px;padding:10px 9px;border:1px solid #174a86;border-radius:9px;background:#fff;color:#174a86;text-decoration:none!important;font-weight:700;font-size:15px;text-align:center;cursor:pointer;box-sizing:border-box;line-height:1.2}
.opa-portal-quick-btn:hover{background:#f2f7fd}
.opa-portal-quick-panels{margin-top:8px}
.opa-portal-quick-panel{display:none;position:relative;padding:16px;border:1px solid #dce4ee;border-radius:12px;background:#fff}
.opa-portal-panel-close{float:right;cursor:pointer;border:1px solid #d3dbe5;border-radius:7px;padding:6px 9px;font-size:12px;font-weight:700;background:#f7f8fa}
.opa-student-result-card:has(#opa-panel-payment:checked) .opa-panel-payment-content{display:block}
.opa-student-result-card:has(#opa-panel-routine:checked) .opa-panel-routine-content{display:block}
.opa-student-result-card:has(#opa-panel-card:checked) .opa-panel-card-content{display:block}
#opa-panel-payment:checked+label,#opa-panel-routine:checked+label,#opa-panel-card:checked+label{background:#174a86;color:#fff}
.opa-portal-quick-panel .opa-portal-section-title{clear:both;padding-top:6px}
@media(max-width:700px){
 .opa-portal-quick-actions{
   display:grid!important;
   grid-template-columns:repeat(2,minmax(0,1fr))!important;
   gap:8px!important;
   width:100%!important;
   max-width:100%!important;
   overflow:visible!important;
   padding-bottom:0!important;
   box-sizing:border-box!important;
 }
 .opa-portal-quick-btn{
   width:100%!important;
   min-width:0!important;
   max-width:100%!important;
   min-height:52px!important;
   padding:9px 6px!important;
   font-size:13px!important;
   line-height:1.25!important;
   white-space:normal!important;
   overflow-wrap:anywhere!important;
   box-sizing:border-box!important;
 }
 .opa-portal-quick-btn span{min-width:0!important}
}
