/* v78 unified student/employee profile search and readable profile ledgers. */
.spx-dues-tools,.spx-dues-search{display:none!important}
.spx-searchbar.is-profile{display:none!important}
.qedu-v77-legacy-scope{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;pointer-events:none!important}
.spx-search-field{overflow:visible!important}
.qedu-profile-suggestions{position:absolute;z-index:120;top:calc(100% + 7px);left:0;right:0;width:100%;min-width:0;max-height:310px;box-sizing:border-box;overflow:auto;padding:5px;border:1px solid #dbe3f0;border-radius:11px;background:rgba(255,255,255,.98);box-shadow:0 18px 45px rgba(15,23,42,.2);backdrop-filter:blur(15px)}
.qedu-profile-suggestions[hidden]{display:none!important}
.qedu-profile-suggestions>button{width:100%;min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;border:0;border-radius:8px;background:transparent;color:#1e293b;text-align:left;cursor:pointer;transition:background .12s ease,transform .12s ease}
.qedu-profile-suggestions>button:hover,.qedu-profile-suggestions>button.is-selected{background:#eef2ff;transform:translateX(2px)}
.qedu-profile-suggestions strong,.qedu-profile-suggestions small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.qedu-profile-suggestions strong{font-size:.72rem;line-height:1.2}.qedu-profile-suggestions small{margin-top:1px;color:#64748b;font-size:.62rem;font-weight:800}
.qedu-profile-suggestions em{flex:0 0 auto;padding:3px 6px;border-radius:999px;font-size:.55rem;font-style:normal;font-weight:900}
.qedu-profile-suggestions em.active{background:#dcfce7;color:#15803d}.qedu-profile-suggestions em.inactive{background:#fee2e2;color:#b91c1c}
.qedu-suggestion-loading,.qedu-suggestion-empty{min-height:44px;display:flex;align-items:center;justify-content:center;gap:7px;color:#64748b;font-size:.76rem;font-weight:750}

.qedu-profile-scope{--scope:#16a34a;position:relative;width:130px;min-width:130px;height:38px;padding:2px;border:1px solid color-mix(in srgb,var(--scope) 26%,#dbe3f0);border-radius:999px;background:color-mix(in srgb,var(--scope) 7%,#fff);transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}
.qedu-profile-scope.is-both{--scope:#6d28d9}.qedu-profile-scope.is-inactive{--scope:#dc2626}
.qedu-scope-labels{position:absolute;inset:2px;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);pointer-events:none}
.qedu-scope-labels button{min-width:0;padding:0 2px;border:0;background:transparent;color:#64748b;font-size:.54rem;font-weight:900;cursor:pointer;pointer-events:auto;transition:color .18s ease}
.qedu-scope-labels button[aria-pressed="true"]{color:#fff}
.qedu-profile-scope>input{position:absolute;inset:2px;z-index:1;width:calc(100% - 4px);height:34px;margin:0;opacity:1;appearance:none;-webkit-appearance:none;background:transparent;cursor:grab;touch-action:pan-y}
.qedu-profile-scope>input:active{cursor:grabbing}
.qedu-profile-scope>input::-webkit-slider-runnable-track{height:34px;border-radius:999px;background:transparent}
.qedu-profile-scope>input::-webkit-slider-thumb{width:40px;height:34px;margin-top:0;border:0;border-radius:999px;background:var(--scope);box-shadow:0 5px 14px color-mix(in srgb,var(--scope) 35%,transparent);appearance:none;-webkit-appearance:none;transition:background .18s ease,box-shadow .18s ease}
.qedu-profile-scope>input::-moz-range-track{height:34px;border:0;border-radius:999px;background:transparent}
.qedu-profile-scope>input::-moz-range-thumb{width:40px;height:34px;border:0;border-radius:999px;background:var(--scope);box-shadow:0 5px 14px color-mix(in srgb,var(--scope) 35%,transparent)}
.qedu-profile-scope:focus-within{box-shadow:0 0 0 3px color-mix(in srgb,var(--scope) 15%,transparent)}

.spx-search-controls>.qedu-profile-scope{margin-right:1px}
.spx-searchbar.search-open .qedu-profile-scope{opacity:0;visibility:hidden;pointer-events:none}
.spx-total-dues{overflow:visible!important;isolation:auto!important}
.qedu-profile-command{position:absolute;z-index:20;top:9px;right:8px;left:8px;min-height:38px;display:flex;align-items:center;justify-content:flex-end;gap:4px}
.qedu-profile-command-actions{display:flex;align-items:center;gap:3px}
.qedu-profile-command-actions button,.qedu-profile-inline-search>button{width:32px;height:32px;display:grid;place-items:center;padding:0;border:1px solid color-mix(in srgb,currentColor 13%,transparent);border-radius:50%;background:rgba(255,255,255,.86);color:inherit;cursor:pointer;box-shadow:0 3px 9px rgba(15,23,42,.06);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}
.qedu-profile-command-actions button:hover,.qedu-profile-inline-search>button:hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(15,23,42,.12);background:#fff}
.qedu-profile-inline-search{position:absolute;inset:0;display:flex;align-items:center;gap:8px;padding:4px 5px 4px 12px;border:1px solid #c7d2fe;border-radius:999px;background:#fff;box-shadow:0 9px 24px rgba(15,23,42,.14);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-3px) scale(.98);transition:opacity .14s ease,transform .16s ease}
.qedu-profile-command.search-open .qedu-profile-inline-search{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important}
.qedu-profile-command.search-open>.qedu-profile-scope,.qedu-profile-command.search-open>.qedu-profile-command-actions{opacity:0;visibility:hidden;pointer-events:none}
.qedu-profile-inline-search>i{color:#6366f1}
.qedu-profile-inline-search>input{min-width:0;flex:1;height:34px;padding:0;border:0;outline:0;background:transparent;color:#172033;font:inherit;font-size:.78rem;font-weight:700}
.qedu-profile-inline-search>input::-webkit-search-cancel-button{display:none}
.spx-search-field>.qedu-profile-suggestions,.qedu-profile-inline-search>.qedu-profile-suggestions{top:calc(100% + 6px);left:0;right:0;width:100%;min-width:0;box-sizing:border-box}
.spx-total-dues>.qedu-profile-command~span{margin-top:42px}

/* Inactive accounts remain visible but their money summary is deliberately neutral. */
.spx-page:not(.emp-profile-page) .spx-total-dues.inactive,
.emp-profile-page .spx-total-dues.inactive,
.emp-profile-page .spx-total-dues.payable.inactive{border-color:#d6dde7!important;background:linear-gradient(155deg,#f8fafc,#eef2f6)!important}
.spx-page:not(.emp-profile-page) .spx-total-dues.inactive>span,
.spx-page:not(.emp-profile-page) .spx-total-dues.inactive>strong,
.spx-page:not(.emp-profile-page) .spx-total-dues.inactive>small,
.emp-profile-page .spx-total-dues.inactive>span,
.emp-profile-page .spx-total-dues.inactive>strong,
.emp-profile-page .spx-total-dues.inactive>small{color:#64748b!important}

/* Let the page own vertical scrolling. Tables stay compact, readable and complete. */
.spx-transactions{display:block!important;min-height:0!important}
.spx-transaction-scroll,
.spx-ledger-inset .spx-transaction-scroll,
.emp-profile-page .spx-transaction-scroll,
.spx-page:not(.emp-profile-page) .spx-ledger-inset .spx-transaction-scroll{width:100%!important;height:auto!important;max-height:none!important;min-height:0!important;overflow-x:auto!important;overflow-y:visible!important;overscroll-behavior-x:contain;overscroll-behavior-y:auto}
.spx-transaction-table,
.spx-ledger-inset .spx-transaction-table{width:100%!important;min-width:980px!important;table-layout:auto!important;font-size:.69rem;line-height:1.3}
.spx-transaction-table th,.spx-transaction-table td,
.spx-ledger-inset .spx-transaction-table th,.spx-ledger-inset .spx-transaction-table td{height:auto!important;padding:7px 6px!important;vertical-align:middle!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:normal!important;word-break:normal!important;white-space:normal!important}
.spx-transaction-table th{color:#64748b;font-size:.58rem;line-height:1.2;letter-spacing:.025em}
.spx-transaction-table th:nth-child(1){width:76px!important}.spx-transaction-table th:nth-child(2){width:76px!important}.spx-transaction-table th:nth-child(3){width:96px!important}.spx-transaction-table th:nth-child(4){width:108px!important}.spx-transaction-table th:nth-child(5){width:26%!important;min-width:200px!important}.spx-transaction-table th:nth-child(6),.spx-transaction-table th:nth-child(7),.spx-transaction-table th:nth-child(8),.spx-transaction-table th:nth-child(9){width:84px!important}.spx-transaction-table th:nth-child(10){width:62px!important}
.spx-transaction-table td:nth-child(1),.spx-transaction-table td:nth-child(2),.spx-transaction-table td:nth-child(6),.spx-transaction-table td:nth-child(7),.spx-transaction-table td:nth-child(8),.spx-transaction-table td:nth-child(9),.spx-transaction-table td:nth-child(10){white-space:nowrap!important}
.spx-transaction-table td:nth-child(6),.spx-transaction-table td:nth-child(7),.spx-transaction-table td:nth-child(8),.spx-transaction-table td:nth-child(9){text-align:right}
.spx-transaction-table .spx-description{min-width:190px!important;max-width:none!important;white-space:normal!important;line-height:1.35}
.spx-transaction-view{padding:4px 6px!important;font-size:.59rem!important}

@media(max-width:760px){
  .spx-searchbar{min-height:106px!important;padding:8px!important}
  .spx-search-controls{width:100%;display:flex!important;justify-content:flex-end;gap:7px!important}
  .spx-search-controls>.qedu-profile-scope{width:min(220px,calc(100vw - 158px));min-width:168px;height:48px}
  .qedu-profile-scope>input{height:42px}.qedu-profile-scope>input::-webkit-slider-runnable-track{height:42px}.qedu-profile-scope>input::-webkit-slider-thumb{width:58px;height:42px}.qedu-profile-scope>input::-moz-range-track{height:42px}.qedu-profile-scope>input::-moz-range-thumb{width:58px;height:42px}
  .qedu-scope-labels button{font-size:.68rem}
  .spx-searchbar.search-open{min-height:62px!important}
  .spx-searchbar.search-open .spx-search-field{left:8px!important;right:8px!important;width:auto!important}
  .qedu-profile-suggestions{max-height:min(48vh,340px)}
  .spx-search-field .qedu-profile-suggestions{position:absolute;top:calc(100% + 7px);left:0;right:0;width:100%}
  .qedu-profile-command{position:relative;top:auto;right:auto;left:auto;width:100%;min-height:52px;justify-content:space-between;gap:7px;margin-bottom:10px}
  .qedu-profile-command>.qedu-profile-scope{flex:1;width:auto;min-width:0;height:48px}
  .qedu-profile-command-actions button{width:40px;height:40px}
  .qedu-profile-inline-search{height:50px;padding-left:14px}
  .qedu-profile-inline-search>input{font-size:.9rem}
  .qedu-profile-inline-search>.qedu-profile-suggestions{position:absolute;top:calc(100% + 6px);left:0;right:0;width:100%;min-width:0}
  .spx-total-dues>.qedu-profile-command~span{margin-top:0}
  .spx-transaction-table,.spx-ledger-inset .spx-transaction-table{min-width:900px!important;font-size:.66rem}
}
@media(max-width:410px){
  .spx-search-controls>.qedu-profile-scope{width:calc(100vw - 146px);min-width:150px}
  .qedu-profile-command>.qedu-profile-scope{min-width:155px}
  .qedu-scope-labels button{font-size:.61rem}
  .qedu-profile-command-actions{gap:3px}.qedu-profile-command-actions button{width:36px;height:36px}
}
:root[data-theme="dark"] .qedu-profile-suggestions,:root[data-theme="dark"] .qedu-profile-inline-search{border-color:#334155;background:rgba(15,23,42,.98);color:#e2e8f0}
:root[data-theme="dark"] .qedu-profile-suggestions>button{color:#e2e8f0}:root[data-theme="dark"] .qedu-profile-suggestions>button:hover,:root[data-theme="dark"] .qedu-profile-suggestions>button.is-selected{background:#1e293b}
:root[data-theme="dark"] .qedu-profile-scope{background:color-mix(in srgb,var(--scope) 12%,#0f172a);border-color:color-mix(in srgb,var(--scope) 40%,#334155)}
:root[data-theme="dark"] .qedu-profile-inline-search>input{color:#f8fafc}
