[hidden]{display:none!important}
*{box-sizing:border-box}
:root{
  --nav:#0b1220;--nav2:#172033;--nav3:#23314b;--ink:#182230;--muted:#667085;
  --line:#e4e7ec;--soft:#f7f8fa;--bg:#f2f4f7;--card:#fff;--gold:#c9a227;--gold2:#f6df86;
  --green:#067647;--greenBg:#ecfdf3;--red:#b42318;--redBg:#fff1f1;--orange:#b54708;--orangeBg:#fff7ed;
  --blue:#175cd3;--blueBg:#eef4ff;--purple:#6941c6;--purpleBg:#f5f3ff;
  --shadow:0 18px 42px rgba(16,24,40,.08);--shadow2:0 26px 70px rgba(16,24,40,.14);
}
html{background:var(--bg);scrollbar-gutter:stable}
body{margin:0;min-height:100vh;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:linear-gradient(180deg,#f9fafb 0,#f2f4f7 38%,#eef1f5 100%);overflow-x:hidden}
button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit}.qaj-access-hidden,.f2-access-hidden{display:none!important}

/* Boot */
.f2-boot{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;align-content:center;gap:18px;background:radial-gradient(circle at 50% 32%,#263753 0,#111a2b 42%,#070b13 100%);color:#fff;text-align:center}
.f2-boot>div:last-child{display:grid;gap:5px}.f2-boot>div:last-child span{color:#cbd5e1;font-size:14px}
.f2-boot-orb{width:92px;height:92px;border:1px solid rgba(255,255,255,.16);border-radius:30px;display:grid;place-items:center;position:relative;background:rgba(255,255,255,.055);box-shadow:0 32px 90px rgba(0,0,0,.36)}
.f2-boot-orb span{position:absolute;inset:8px;border:3px solid rgba(249,231,161,.16);border-top-color:#f9e7a1;border-radius:24px;animation:f2spin 1s linear infinite}.f2-boot-orb strong{color:#f9e7a1;letter-spacing:.09em;font-size:20px}@keyframes f2spin{to{transform:rotate(360deg)}}

/* Fixed command shell */
.f2-topbar{position:fixed;top:0;left:0;right:0;height:70px;z-index:90;background:linear-gradient(135deg,#0b1220,#172033 70%,#21304a);color:#fff;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:12px;padding:0 max(18px,calc((100vw - 1540px)/2));box-shadow:0 10px 26px rgba(16,24,40,.12)}
.f2-back,.f2-icon-btn{width:40px;height:40px;border:1px solid rgba(255,255,255,.13);border-radius:12px;background:rgba(255,255,255,.07);color:#fff;display:grid;place-items:center;text-decoration:none;font-size:18px;font-weight:900}.f2-back:hover,.f2-icon-btn:hover{background:rgba(255,255,255,.13)}
.f2-brand{display:flex;align-items:center;gap:10px}.f2-brand-mark{width:42px;height:42px;border-radius:13px;border:1px solid rgba(249,231,161,.30);background:linear-gradient(135deg,rgba(249,231,161,.15),rgba(255,255,255,.04));color:#f9e7a1;display:grid;place-items:center;font-size:12px;font-weight:950;letter-spacing:.05em}.f2-brand div{display:grid;line-height:1.15}.f2-brand small{font-size:9px;text-transform:uppercase;color:#d6bc61;font-weight:950;letter-spacing:.10em}.f2-brand strong{font-size:16px;letter-spacing:-.01em}.f2-top-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.f2-user-btn{height:42px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.07);border-radius:13px;padding:4px 9px 4px 5px;display:flex;align-items:center;gap:8px;color:#fff}.f2-user-btn span{width:32px;height:32px;border-radius:10px;background:#f6df86;color:#4a3900;display:grid;place-items:center;font-weight:950}.f2-user-btn em{font-style:normal;font-weight:850;font-size:12px;max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Desktop = old-finance style command rail, NOT a side nav */
.f2-sidebar{position:fixed;top:70px;left:0;right:0;height:64px;z-index:80;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-bottom:1px solid #e4e7ec;padding:8px max(18px,calc((100vw - 1540px)/2));display:flex;align-items:center;gap:10px;box-shadow:0 8px 22px rgba(16,24,40,.045)}
.f2-sidebar-head{display:none}.f2-nav{display:flex;gap:5px;align-items:center;overflow-x:auto;scrollbar-width:none;flex:1}.f2-nav::-webkit-scrollbar{display:none}.f2-nav button{border:1px solid transparent;background:transparent;color:#475467;border-radius:12px;padding:7px 9px;display:flex;align-items:center;gap:6px;white-space:nowrap;font-size:11px;min-height:44px}.f2-nav button span{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:#f2f4f7;color:#344054;font-size:14px;font-weight:950}.f2-nav button strong{font-weight:900}.f2-nav button:hover{border-color:#e4e7ec;background:#f8fafc}.f2-nav button.active{background:#111827;color:#fff;border-color:#111827;box-shadow:0 8px 20px rgba(17,24,39,.16)}.f2-nav button.active span{background:#f6df86;color:#3c3000}.f2-sidebar-foot{margin:0 0 0 auto;flex:0 0 auto}.f2-sidebar-foot a{display:flex;align-items:center;gap:7px;text-decoration:none;color:#6941c6;border:1px solid #e9d7fe;background:#f9f5ff;padding:8px 10px;border-radius:12px;white-space:nowrap}.f2-sidebar-foot a span{font-size:15px}.f2-sidebar-foot a strong{font-size:11px}.f2-sidebar-foot a small{display:none}

.f2-main{width:min(1540px,calc(100% - 36px));margin:0 auto;padding:150px 0 50px}.f2-page-head{display:none;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}.f2-page-head p{margin:0 0 4px;color:#987200;text-transform:uppercase;font-size:10px;letter-spacing:.10em;font-weight:950}.f2-page-head h1{margin:0;font-size:clamp(27px,3vw,38px);letter-spacing:-.04em}.f2-page-head span{display:block;color:var(--muted);margin-top:4px;font-size:12px}.f2-page-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.f2-mobile-menu{display:none}

/* Buttons */
.f2-btn,.f2-btn-gold,.f2-btn-danger,.f2-btn-ghost{border:0;border-radius:11px;padding:10px 13px;font-size:11px;font-weight:900;line-height:1.1;min-height:38px}.f2-btn{background:#172033;color:#fff}.f2-btn:hover{background:#0b1220}.f2-btn-gold{background:#f4d96d;color:#3c3000;border:1px solid #dec24f}.f2-btn-gold:hover{background:#edcf51}.f2-btn-danger{background:#fee4e2;color:var(--red);border:1px solid #fecdca}.f2-btn-ghost{background:#fff;color:#344054;border:1px solid #d0d5dd}.f2-btn-ghost:hover{background:#f8fafc}.f2-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.f2-link{border:0;background:transparent;padding:4px 2px;color:#175cd3;font-size:11px;font-weight:900;text-decoration:none}.f2-link:hover{text-decoration:underline}.f2-link.danger{color:#b42318}

/* Core room surfaces */
.f2-room{display:grid;gap:12px}.f2-card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 8px 24px rgba(16,24,40,.045);padding:14px;min-width:0}.f2-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}.f2-card-head h2,.f2-card-head h3{margin:0;color:#172033;letter-spacing:-.02em}.f2-card-head h2{font-size:18px}.f2-card-head h3{font-size:14px}.f2-card-head p{margin:4px 0 0;color:var(--muted);font-size:11px;line-height:1.4}.f2-narrow-card{max-width:900px;margin-inline:auto}

/* Dashboard modeled on legacy V148 */
.f2-command-board{display:grid;gap:14px}.f2-command-hero{border:1px solid rgba(201,162,39,.24);border-radius:28px;padding:22px;background:radial-gradient(circle at 90% 0,rgba(249,231,161,.15),transparent 25%),linear-gradient(135deg,#111827 0,#1f2a44 58%,#896f1d 150%);color:#fff;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;box-shadow:0 20px 50px rgba(16,24,40,.16)}.f2-command-hero .tag{display:inline-flex;width:max-content;border-radius:999px;padding:5px 8px;background:rgba(249,231,161,.14);color:#f9e7a1;text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:950}.f2-command-hero h2{margin:8px 0 3px;color:#fff;font-size:28px;letter-spacing:-.045em}.f2-command-hero p{margin:0;color:#d0d5dd;font-weight:750;font-size:12px;max-width:680px;line-height:1.45}.f2-command-hero .f2-btn-gold{min-width:190px;min-height:44px;background:#fff3b0;border-color:#fff3b0;font-size:12px}
.f2-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.f2-kpi{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:20px;padding:15px;display:grid;gap:3px;min-height:86px}.f2-kpi:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#c9a227}.f2-kpi.green:before{background:var(--green)}.f2-kpi.red:before{background:var(--red)}.f2-kpi.orange:before{background:var(--orange)}.f2-kpi.blue:before{background:var(--blue)}.f2-kpi.purple:before{background:var(--purple)}.f2-kpi small{font-size:9px;color:#667085;text-transform:uppercase;font-weight:950;letter-spacing:.05em}.f2-kpi strong{font-size:22px;color:#172033;letter-spacing:-.035em;overflow-wrap:anywhere}.f2-kpi span{font-size:10px;color:#667085;font-weight:750}.f2-kpi.actionable{cursor:pointer;transition:.14s ease}.f2-kpi.actionable:hover{transform:translateY(-2px);border-color:#c9a227;box-shadow:0 12px 30px rgba(16,24,40,.08)}
.f2-command-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.f2-command-card{border:2px solid rgba(23,32,51,.08);border-radius:26px;padding:17px;background:linear-gradient(135deg,#fff,#f8fafc);text-align:left;min-height:118px;display:grid;grid-template-columns:46px minmax(0,1fr);grid-template-rows:auto auto;gap:3px 10px;align-content:center;color:#172033;box-shadow:0 9px 24px rgba(16,24,40,.05);transition:.14s ease}.f2-command-card:hover{transform:translateY(-2px);border-color:#d4b848;box-shadow:0 16px 34px rgba(16,24,40,.09)}.f2-command-card .ico{grid-row:1/3;width:46px;height:46px;border-radius:18px;display:grid;place-items:center;background:#f2f4f7;font-weight:950;font-size:22px}.f2-command-card strong{font-size:16px;line-height:1.15}.f2-command-card small{color:#667085;font-size:12px;font-weight:750;line-height:1.3}.f2-command-card.gold{background:linear-gradient(135deg,#fff9df,#fff);border-color:#ead999}.f2-command-card.gold .ico{background:#fff0a6;color:#6f5600}.f2-command-card.blue{background:linear-gradient(135deg,#eef4ff,#fff)}.f2-command-card.blue .ico{background:#dbeafe;color:#175cd3}.f2-command-card.green{background:linear-gradient(135deg,#ecfdf3,#fff)}.f2-command-card.green .ico{background:#d1fadf;color:#067647}.f2-command-card.red{background:linear-gradient(135deg,#fff1f1,#fff)}.f2-command-card.red .ico{background:#fee4e2;color:#b42318}.f2-command-card.purple{background:linear-gradient(135deg,#f5f3ff,#fff)}.f2-command-card.purple .ico{background:#ebe9fe;color:#6941c6}.f2-command-card.orange{background:linear-gradient(135deg,#fff7ed,#fff)}.f2-command-card.orange .ico{background:#ffead5;color:#b54708}

.f2-dashboard-strip{display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr) auto auto;gap:12px;align-items:center;background:#fff;border:1px solid #e4e7ec;border-radius:16px;padding:11px 14px;box-shadow:0 8px 24px rgba(16,24,40,.045)}.f2-dashboard-strip>div{display:grid;gap:2px}.f2-dashboard-strip small{font-size:8.5px;color:#667085;text-transform:uppercase;font-weight:950;letter-spacing:.05em}.f2-dashboard-strip strong{font-size:18px;color:#172033}.f2-dashboard-strip>span{color:#98a2b3;font-weight:900}.f2-dashboard-strip .note{font-size:10px;color:#667085;font-weight:800}.f2-dashboard-strip .f2-link{justify-self:end}
.f2-dashboard-lower{display:grid;grid-template-columns:1.05fr .95fr;gap:10px}.f2-compact-feed{display:grid;gap:6px}.f2-feed-row{border:1px solid #eaecf0;border-radius:13px;padding:9px 10px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;background:#fff}.f2-feed-row strong{font-size:11px}.f2-feed-row small{display:block;color:#667085;font-size:9.5px;margin-top:2px}.f2-feed-row>span{font-size:11px;font-weight:950;color:#172033;text-align:right}

/* Toolbars + fields */
.f2-toolbar{display:grid;grid-template-columns:minmax(230px,1fr) repeat(2,minmax(130px,195px)) auto;gap:7px;align-items:center}.f2-toolbar.compact{grid-template-columns:minmax(230px,1fr) auto}.f2-toolbar input,.f2-toolbar select,.f2-field input,.f2-field select,.f2-field textarea,.f2-form-grid input,.f2-form-grid select,.f2-form-grid textarea,.f2-inline-fields input,.f2-inline-fields select{width:100%;border:1px solid #d0d5dd;border-radius:11px;background:#fff;padding:9px 10px;color:#172033;outline:none;font-size:11px;min-height:39px}.f2-toolbar input:focus,.f2-toolbar select:focus,.f2-field input:focus,.f2-field select:focus,.f2-field textarea:focus,.f2-form-grid input:focus,.f2-form-grid select:focus,.f2-form-grid textarea:focus{border-color:#c9a227;box-shadow:0 0 0 3px rgba(201,162,39,.12)}.f2-form-grid textarea,.f2-field textarea{min-height:82px;resize:vertical}.f2-month-label{display:grid;gap:4px;color:#667085;font-size:9px;font-weight:950;text-transform:uppercase;letter-spacing:.05em}.f2-eyebrow{margin:0 0 5px;color:#9a7600;font-size:9px;font-weight:950;text-transform:uppercase;letter-spacing:.10em}

/* Master-detail workbench - the main legacy Finance pattern */
.f2-workbench{border:1px solid #dfe3e8;background:#fff;border-radius:20px;box-shadow:var(--shadow);overflow:hidden;min-height:590px}.f2-workbench-head{padding:14px 15px;border-bottom:1px solid #e4e7ec;background:linear-gradient(135deg,#fff,#fbfaf5);display:flex;justify-content:space-between;gap:12px;align-items:center}.f2-workbench-head h2{margin:0;font-size:18px;letter-spacing:-.03em}.f2-workbench-head p{margin:3px 0 0;color:#667085;font-size:10px}.f2-workbench-body{display:grid;grid-template-columns:370px minmax(0,1fr);min-height:540px}.f2-master{border-right:1px solid #e4e7ec;background:linear-gradient(180deg,#fbfcfd,#f7f8fa);padding:11px;min-width:0;display:flex;flex-direction:column}.f2-master .f2-toolbar{grid-template-columns:1fr}.f2-master-list{display:grid;gap:6px;margin-top:8px;overflow:auto;max-height:calc(100vh - 292px);padding-right:2px;scrollbar-width:none}.f2-master-list::-webkit-scrollbar{display:none}.f2-master-card{width:100%;border:1px solid #e4e7ec;border-radius:14px;background:#fff;padding:10px;text-align:left;display:grid;gap:5px;color:#172033}.f2-master-card:hover{border-color:#c9a227;background:#fffdf5}.f2-master-card.active{border-color:#8c6f08;background:linear-gradient(135deg,#fff9df,#fff);box-shadow:inset 3px 0 #c9a227}.f2-master-card .top{display:flex;justify-content:space-between;gap:7px;align-items:flex-start}.f2-master-card strong{font-size:11.5px;line-height:1.25}.f2-master-card small{color:#667085;font-size:9.5px;line-height:1.3}.f2-master-card .money{font-size:12px;font-weight:950;color:#172033}.f2-detail-pane{padding:14px;min-width:0;overflow:auto;max-height:calc(100vh - 208px)}
.f2-detail-hero{border-radius:18px;padding:14px 15px;background:radial-gradient(circle at top right,rgba(249,231,161,.14),transparent 32%),linear-gradient(135deg,#111827,#25334b);color:#fff;margin-bottom:10px}.f2-detail-hero p{color:#d0d5dd;margin:4px 0 0;font-size:10px}.f2-detail-hero h2{margin:5px 0 0;font-size:19px;letter-spacing:-.03em}.f2-detail-hero.light{background:linear-gradient(135deg,#fff9df,#fff);color:#172033;border:1px solid #ead999}.f2-detail-hero.light p{color:#667085}.f2-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:6px}.f2-info-grid.mini{grid-template-columns:repeat(3,minmax(0,1fr))}.f2-info{border:1px solid #e4e7ec;background:#f9fafb;border-radius:12px;padding:9px;display:grid;gap:2px;min-width:0}.f2-info small{font-size:8.5px;color:#667085;text-transform:uppercase;font-weight:950;letter-spacing:.04em}.f2-info strong{font-size:11.5px;overflow-wrap:anywhere}.f2-section{margin-top:11px}.f2-section>h3,.f2-section summary{margin:0 0 6px;font-size:11.5px;color:#172033}.f2-section summary{cursor:pointer;padding:8px 9px;border:1px solid #e4e7ec;border-radius:11px;background:#f8fafc;list-style:none}.f2-section summary::-webkit-details-marker{display:none}.f2-section summary:after{content:"▾";float:right;color:#98a2b3}.f2-note{border:1px solid #e4e7ec;background:#f8fafc;border-radius:12px;padding:9px;color:#475467;font-size:10px;line-height:1.45;white-space:pre-wrap}.f2-note.success{background:#ecfdf3;border-color:#abefc6;color:#05603a}

/* Lists */
.f2-list{display:grid;gap:6px}.f2-scroll-list{max-height:calc(100vh - 280px);overflow:auto;scrollbar-width:none}.f2-scroll-list::-webkit-scrollbar{display:none}.f2-list-card,.f2-family-card{border:1px solid #e4e7ec;border-radius:14px;background:#fff;padding:10px;display:grid;gap:5px;text-align:left;color:#172033}.f2-list-card.static{cursor:default}.f2-list-card:hover,.f2-list-card.active,.f2-family-card:hover,.f2-family-card.active{border-color:#c9a227;background:#fffdf5}.f2-list-top{display:flex;justify-content:space-between;gap:7px;align-items:flex-start}.f2-list-card h3{margin:0;font-size:11.5px}.f2-list-card p{margin:0;color:#667085;font-size:10px}.f2-meta{display:flex;gap:5px;flex-wrap:wrap;color:#667085;font-size:9px;font-weight:800}.f2-meta span{display:inline-flex;border-radius:999px;padding:3px 6px;background:#f2f4f7}.f2-money-row{display:flex;justify-content:space-between;gap:8px;color:#667085;font-size:9.5px}.f2-money-row strong{color:#172033;font-size:10.5px}
.f2-receipt-row,.f2-due-row{border:1px solid #e4e7ec;border-radius:13px;padding:9px 10px;background:#fff;display:flex;justify-content:space-between;gap:10px;align-items:center}.f2-receipt-row.selected,.f2-due-row.selected{border-color:#c9a227;background:#fffdf4}.f2-receipt-row strong,.f2-due-row strong{font-size:10.5px}.f2-receipt-row small,.f2-due-row small{display:block;color:#667085;font-size:9px;margin-top:2px}.f2-check-row{display:flex;align-items:flex-start;gap:8px;cursor:pointer;min-width:0;flex:1}.f2-check-row input{width:17px;height:17px;margin:1px 0 0;flex:0 0 auto}

/* Status */
.f2-pill{display:inline-flex;width:max-content;border-radius:999px;padding:4px 7px;font-size:8px;text-transform:uppercase;font-weight:950;letter-spacing:.025em;background:#f2f4f7;color:#475467}.f2-pill.due,.f2-pill.pending,.f2-pill.pending-payment,.f2-pill.pending_payment{background:#fff0d6;color:#9a3412}.f2-pill.paid,.f2-pill.approved,.f2-pill.active{background:#dcfae6;color:#067647}.f2-pill.rejected,.f2-pill.blocked,.f2-pill.cancelled{background:#fee4e2;color:#b42318}.f2-pill.sponsored,.f2-pill.waived{background:#f4ebff;color:#6941c6}.f2-pill.held{background:#fef3c7;color:#92400e}.f2-pill.temporarily-unblocked,.f2-pill.temporarily_unblocked{background:#eef4ff;color:#175cd3}.f2-pill.left{background:#ffe4e6;color:#be123c}.f2-danger-text{color:#b42318!important;font-weight:900}

/* Receipts review */
.f2-receipt-review{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(310px,1.15fr);gap:10px}.f2-receipt-preview{border:1px solid #e4e7ec;background:#f8fafc;border-radius:15px;padding:8px;min-height:330px;display:grid;place-items:center}.f2-receipt-preview img,.f2-receipt-preview iframe{width:100%;height:320px;object-fit:contain;border:0;border-radius:10px;background:#fff}.f2-receipt-preview .file-link{display:grid;place-items:center;gap:8px;text-align:center;color:#175cd3;text-decoration:none;font-weight:900}.f2-review-form{display:grid;gap:7px}.f2-review-form .row{display:grid;grid-template-columns:120px 1fr;gap:8px;align-items:center}.f2-review-form label{font-size:9.5px;font-weight:900;color:#475467}.f2-review-form input,.f2-review-form textarea{width:100%;border:1px solid #d0d5dd;border-radius:10px;padding:8px 9px;font-size:10.5px}.f2-review-form textarea{min-height:70px;resize:vertical}.f2-review-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}

/* Allocation Desk */
.f2-ledger-head{border-radius:20px;padding:15px 16px;background:linear-gradient(135deg,#111827,#26344d 70%,#8b7121 155%);color:#fff;display:flex;justify-content:space-between;gap:12px;align-items:center}.f2-ledger-head h2{margin:0;font-size:20px}.f2-ledger-head p{margin:4px 0 0;color:#d0d5dd;font-size:10px}.f2-ledger-stats{display:flex;gap:7px;flex-wrap:wrap}.f2-ledger-stat{min-width:110px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);border-radius:12px;padding:8px 10px}.f2-ledger-stat small{display:block;color:#d0d5dd;font-size:8px;text-transform:uppercase;font-weight:950}.f2-ledger-stat strong{font-size:14px}.f2-family-grid{display:grid;grid-template-columns:340px minmax(0,1fr);gap:10px}.f2-family-detail-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start}.f2-family-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}.f2-family-tag{display:inline-flex;padding:4px 7px;border-radius:999px;background:#eef4ff;color:#175cd3;font-size:8.5px;font-weight:900}.f2-family-tag.gold{background:#fff7d6;color:#806000}.f2-ledger-columns{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.f2-ledger-panel{border:1px solid #e4e7ec;border-radius:15px;background:#fbfcfd;padding:10px;min-width:0}.f2-ledger-panel h3{margin:0 0 7px;font-size:11px}.f2-ledger-panel .f2-list{max-height:310px;overflow:auto;scrollbar-width:none}.f2-ledger-panel .f2-list::-webkit-scrollbar{display:none}.f2-ledger-command{position:sticky;bottom:0;margin-top:9px;border:1px solid #e4e7ec;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-radius:14px;padding:8px;display:flex;gap:6px;flex-wrap:wrap;align-items:center;box-shadow:0 -8px 22px rgba(16,24,40,.05)}

/* Generate dues control room */
.f2-gen-control{border:1px solid #e4e7ec;border-radius:18px;background:#fff;padding:10px;display:grid;gap:8px}.f2-gen-topline{display:grid;grid-template-columns:auto minmax(190px,260px) minmax(240px,1fr) auto;gap:7px;align-items:center}.f2-lane-tabs{display:flex;gap:4px}.f2-lane-tabs button{border:1px solid #d0d5dd;background:#fff;border-radius:10px;padding:8px 10px;font-size:10px;font-weight:900;color:#475467}.f2-lane-tabs button.active{background:#172033;border-color:#172033;color:#fff}.f2-gen-filters{display:flex;gap:5px;flex-wrap:wrap}.f2-gen-filter{border:1px solid #d0d5dd;background:#fff;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:900;color:#475467}.f2-gen-filter.active{background:#fff7d6;border-color:#d4a516;color:#6f5600}.f2-gen-layout{display:grid;grid-template-columns:315px minmax(0,1fr);gap:10px}.f2-selector-panel{border:1px solid #e4e7ec;border-radius:17px;background:linear-gradient(180deg,#fff,#f8fafc);padding:10px;min-width:0}.f2-selector{display:grid;gap:6px;max-height:calc(100vh - 295px);overflow:auto;scrollbar-width:none}.f2-selector::-webkit-scrollbar{display:none}.f2-selector button{border:1px solid #e4e7ec;border-radius:13px;background:#fff;padding:9px;text-align:left;color:#172033;display:grid;gap:3px}.f2-selector button:hover,.f2-selector button.active{border-color:#c9a227;background:#fffdf4}.f2-selector button strong{font-size:10.5px}.f2-selector button small{font-size:8.8px;color:#667085}.f2-selector details{margin-top:7px}.f2-selector details summary{font-size:9.5px;font-weight:950;color:#667085;cursor:pointer;padding:7px 4px}.f2-gen-workspace{border:1px solid #e4e7ec;border-radius:17px;background:#fff;padding:11px;min-width:0}.f2-gen-row{border:1px solid #e4e7ec;border-left:4px solid #98a2b3;border-radius:13px;padding:9px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;background:#fff}.f2-gen-row.ready{border-left-color:#067647}.f2-gen-row.held{border-left-color:#b54708;background:#fffbeb}.f2-gen-row.no-rule{border-left-color:#b42318;background:#fff7f6}.f2-gen-row.exists{border-left-color:#175cd3;background:#f8fbff}.f2-gen-row>input{width:16px;height:16px}.f2-gen-row strong{font-size:10.5px}.f2-gen-row small{display:block;color:#667085;font-size:8.8px;margin-top:2px}.f2-gen-right{text-align:right;display:grid;gap:2px;justify-items:end}.f2-teacher-splits{border:1px solid #ddd6fe;background:#faf9ff;border-radius:14px;padding:9px;margin:8px 0}.f2-teacher-splits summary{cursor:pointer;font-size:10px;font-weight:950;color:#4c1d95}.f2-split-row{display:grid;grid-template-columns:minmax(0,1fr) 95px 115px;gap:7px;align-items:center;padding:6px 0;border-top:1px solid #ede9fe}.f2-split-row:first-of-type{border-top:0}.f2-split-row strong{font-size:10px}.f2-split-row small{display:block;color:#667085;font-size:8.5px}

/* Manual / receipt forms */
.f2-form{display:grid;gap:10px}.f2-form-grid{display:grid;grid-template-columns:155px minmax(0,1fr);gap:8px 10px;align-items:center}.f2-form-grid label{font-size:10px;font-weight:900;color:#344054}.f2-form-actions{display:flex;gap:7px;justify-content:flex-end;flex-wrap:wrap;margin-top:3px}.f2-inline-fields{display:flex;gap:7px;flex-wrap:wrap;align-items:end}.f2-inline-fields label{display:grid;gap:4px;min-width:140px;color:#667085;font-size:9px;font-weight:900;text-transform:uppercase}.f2-student-picker{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:8px}.f2-student-results{border:1px solid #e4e7ec;border-radius:13px;background:#f8fafc;max-height:210px;overflow:auto;padding:6px;display:grid;gap:4px}.f2-student-result{border:1px solid #e4e7ec;background:#fff;border-radius:10px;padding:7px 8px;text-align:left;display:grid;gap:2px}.f2-student-result.active{border-color:#c9a227;background:#fffdf4}.f2-student-result strong{font-size:10px}.f2-student-result small{font-size:8.5px;color:#667085}.f2-selected-person{border:1px solid #ead999;background:#fffdf4;border-radius:13px;padding:10px;display:grid;align-content:start;gap:4px}.f2-selected-person small{color:#806000;font-size:8px;text-transform:uppercase;font-weight:950}.f2-selected-person strong{font-size:12px}.f2-selected-person span{font-size:9px;color:#667085}

/* Sponsors */
.f2-sponsor-hero{border:1px solid #e9d7fe;background:linear-gradient(135deg,#f9f5ff,#fff);border-radius:16px;padding:12px}.f2-sponsor-hero h2{margin:5px 0 2px;font-size:18px}.f2-sponsor-due-table{width:100%;border-collapse:collapse;font-size:9.5px}.f2-sponsor-due-table th,.f2-sponsor-due-table td{padding:7px;border-bottom:1px solid #eaecf0;text-align:left}.f2-sponsor-due-table th{color:#667085;text-transform:uppercase;font-size:8px}

/* Blocked Accounts */
.f2-blocked-toolbar{display:grid;grid-template-columns:minmax(230px,1fr) 155px 145px auto;gap:7px}.f2-blocked-row{border:1px solid #e4e7ec;border-left:4px solid #b42318;border-radius:14px;background:#fff;padding:10px;display:grid;grid-template-columns:minmax(0,1.2fr) .65fr .65fr auto;gap:9px;align-items:center}.f2-blocked-row.temp{border-left-color:#175cd3;background:#f8fbff}.f2-blocked-row.left{border:2px solid #e11d48;background:linear-gradient(90deg,#ffe4e6,#fff1f2 35%,#fff);box-shadow:0 10px 26px rgba(180,35,24,.10)}.f2-blocked-row h3{margin:0;font-size:11px}.f2-blocked-row p{margin:2px 0 0;color:#667085;font-size:9px}.f2-blocked-money small{display:block;color:#667085;font-size:8px;text-transform:uppercase;font-weight:950}.f2-blocked-money strong{font-size:11px}.f2-blocked-actions{display:flex;gap:5px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.f2-blocked-actions select{border:1px solid #d0d5dd;border-radius:9px;padding:6px;font-size:9px}

/* Fee Rules control room */
.f2-rule-shell{border:1px solid #eadfbf;border-radius:22px;background:#fbfaf7;overflow:hidden;box-shadow:var(--shadow)}.f2-rule-head{padding:16px;background:linear-gradient(135deg,#172033,#23314b 60%,#94781f 145%);color:#fff;display:flex;justify-content:space-between;gap:12px;align-items:center}.f2-rule-head small{display:block;color:#f9d86f;font-size:8px;font-weight:950;text-transform:uppercase;letter-spacing:.10em}.f2-rule-head h2{margin:2px 0 0;font-size:20px}.f2-rule-toolbar{padding:9px;border-bottom:1px solid #eadfbf;background:linear-gradient(135deg,#fff,#fff8e7);display:grid;grid-template-columns:minmax(230px,1fr) auto auto;gap:7px}.f2-rule-grid{display:grid;grid-template-columns:350px minmax(0,1fr);min-height:560px}.f2-rule-left{border-right:1px solid #eadfbf;padding:10px;background:linear-gradient(180deg,#fff,#fffbef);min-width:0}.f2-rule-right{padding:12px;background:linear-gradient(180deg,#fff,#f9fffb);min-width:0;max-height:calc(100vh - 245px);overflow:auto}.f2-rule-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-bottom:7px}.f2-rule-stats article{border:1px solid #eadfbf;border-radius:11px;background:#fff;padding:7px}.f2-rule-stats small{display:block;font-size:7.5px;color:#856214;text-transform:uppercase;font-weight:950}.f2-rule-stats strong{font-size:13px}.f2-rule-list{display:grid;gap:5px;max-height:calc(100vh - 350px);overflow:auto;scrollbar-width:none}.f2-rule-list::-webkit-scrollbar{display:none}.f2-rule-card{border:1px solid #e2d7bd;background:#fff;border-radius:13px;padding:9px;text-align:left;display:grid;gap:5px}.f2-rule-card.active{border-color:#15803d;background:linear-gradient(135deg,#ecfdf3,#fffdf4)}.f2-rule-card strong{font-size:10.5px}.f2-rule-card .amount{font-size:12px;font-weight:950}.f2-rule-chiprow{display:flex;gap:4px;flex-wrap:wrap}.f2-rule-chip{padding:3px 6px;border-radius:999px;background:#f1f5f9;color:#475467;font-size:7.5px;font-weight:900}.f2-rule-chip.bypassed{background:#ffe4e6;color:#be123c}.f2-rule-link-row{border:1px solid #e4e7ec;border-radius:12px;padding:8px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.f2-rule-link-row strong{font-size:10px}.f2-rule-link-row small{display:block;color:#667085;font-size:8.5px;margin-top:2px}

/* Teacher payments */
.f2-teacher-control{border:1px solid #e4e7ec;background:#fff;border-radius:18px;padding:11px}.f2-teacher-headline{display:flex;justify-content:space-between;gap:12px;align-items:center}.f2-teacher-headline h2{margin:0;font-size:17px}.f2-teacher-headline p{margin:3px 0 0;color:#667085;font-size:10px}.f2-teacher-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:7px}.f2-teacher-bubble{border:1px solid #e4e7ec;border-radius:14px;background:#f8fafc;padding:10px;display:grid;gap:4px;text-align:left;color:#172033}.f2-teacher-bubble:hover{border-color:#c9a227}.f2-teacher-bubble.pending{border-color:#fed7aa;background:linear-gradient(180deg,#fff7ed,#fff)}.f2-teacher-bubble.paid{border-color:#abefc6;background:linear-gradient(180deg,#ecfdf3,#fff)}.f2-teacher-bubble.empty{opacity:.7}.f2-teacher-bubble strong{font-size:10.5px}.f2-teacher-bubble small{font-size:8.5px;color:#667085}.f2-teacher-bubble em{font-style:normal;font-size:15px;font-weight:950;color:#b54708}.f2-teacher-bubble.paid em{color:#067647}.f2-teacher-detail-groups{display:grid;gap:8px}.f2-teacher-group{border:1px solid #e4e7ec;border-radius:14px;overflow:hidden}.f2-teacher-group>header{background:#f8fafc;padding:8px 10px;display:flex;justify-content:space-between;gap:8px;align-items:center}.f2-teacher-group>header strong{font-size:10px}.f2-teacher-group>header span{font-size:10px;font-weight:950}.f2-teacher-payment-row{display:grid;grid-template-columns:minmax(0,1.2fr) .6fr .45fr .45fr .65fr auto;gap:6px;align-items:center;padding:7px 9px;border-top:1px solid #eaecf0;font-size:8.8px}.f2-teacher-payment-row>strong{font-size:9.5px}.f2-teacher-payment-row small{color:#667085}.f2-teacher-payment-row .amt{text-align:right;font-weight:950;font-size:9.5px}

/* Fund transfer */
.f2-ft-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:10px;padding:14px;border-radius:17px;background:linear-gradient(135deg,#0f172a,#243146);color:#fff}.f2-ft-head .f2-eyebrow{color:#f6d978}.f2-ft-head h2{margin:0}.f2-ft-head small{color:#d0d5dd}.f2-ft-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,.8fr);gap:10px;margin-top:10px}.f2-ft-grid>section,.f2-ft-grid>aside{min-width:0;border:1px solid #e5e7eb;border-radius:15px;padding:10px;background:#fff}.f2-ft-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;border:1px solid #e5e7eb;border-radius:12px;padding:9px;background:#fff}.f2-ft-row>input[type=checkbox],.f2-ft-extra>input[type=checkbox]{width:17px;height:17px;margin:0}.f2-ft-row>div{display:grid;gap:3px;min-width:0}.f2-ft-row>div:last-child{text-align:right}.f2-ft-row small{color:#667085;overflow-wrap:anywhere;font-size:8.5px}.f2-ft-extra{display:grid;grid-template-columns:auto repeat(6,minmax(90px,1fr)) auto;gap:5px;align-items:center;border:1px solid #e5e7eb;border-radius:12px;padding:8px;background:#f8fafc;overflow-x:auto}.f2-ft-extra input{min-width:90px;padding:7px 8px;border-radius:8px}.f2-ft-statements summary{cursor:pointer;list-style:none;padding:4px 0}.f2-row-actions{display:flex;gap:5px;align-items:center;justify-content:flex-end;flex-wrap:wrap}

/* Misc */
.f2-split{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:10px}.f2-loading{min-height:280px;border:1px solid #e4e7ec;border-radius:18px;background:#fff;display:grid;place-items:center;align-content:center;gap:9px;color:#667085}.f2-spinner{width:26px;height:26px;border:3px solid #e4e7ec;border-top-color:#c9a227;border-radius:999px;animation:f2spin .8s linear infinite}.f2-empty{border:1px dashed #d0d5dd;border-radius:13px;background:#f8fafc;color:#98a2b3;text-align:center;padding:18px;font-size:10px}.f2-private-money{filter:none}.qaj-hide-teacher-money .f2-private-money{display:none!important}

/* Modals */
.f2-modal{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:16px}.f2-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.64);backdrop-filter:blur(7px)}.f2-modal-box{position:relative;width:min(1120px,100%);max-height:92vh;background:#fff;border-radius:22px;box-shadow:0 40px 100px rgba(0,0,0,.32);display:flex;flex-direction:column;overflow:hidden}.f2-modal-box>header{display:flex;justify-content:space-between;gap:12px;padding:14px 15px;border-bottom:1px solid #e4e7ec;background:#fff}.f2-modal-box>header p{margin:0 0 3px;color:#987200;text-transform:uppercase;font-size:8px;font-weight:950;letter-spacing:.10em}.f2-modal-box>header h2{margin:0;font-size:18px}.f2-modal-box>header span{color:#667085;font-size:9.5px}.f2-modal-box>header button{width:36px;height:36px;border:0;border-radius:11px;background:#f2f4f7;font-size:19px}.f2-modal-body{overflow:auto;padding:12px}.f2-confirm-box{position:relative;width:min(420px,100%);background:#fff;border-radius:20px;box-shadow:0 35px 90px rgba(0,0,0,.3);padding:20px;text-align:center}.f2-confirm-box>span{width:56px;height:56px;margin:0 auto 10px;border-radius:999px;background:#fff7ed;color:#b54708;display:grid;place-items:center;font-size:25px;font-weight:950}.f2-confirm-box h2{margin:0}.f2-confirm-box p{color:#667085;font-size:11px;line-height:1.5}.f2-confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:12px}.f2-confirm-actions button{border:0;border-radius:11px;padding:10px;font-weight:900}.f2-confirm-actions button:first-child{background:#f2f4f7}.f2-confirm-actions .danger{background:#172033;color:#fff}.f2-toast-stack{position:fixed;right:14px;bottom:14px;z-index:500;display:grid;gap:6px;width:min(350px,calc(100vw - 28px))}.f2-toast{background:#101828;color:#fff;border-radius:13px;padding:10px 12px;box-shadow:0 20px 50px rgba(0,0,0,.22);display:grid;gap:2px}.f2-toast.success{background:#064e3b}.f2-toast.error{background:#7f1d1d}.f2-toast small{color:rgba(255,255,255,.72);font-size:9px}.f2-user-menu{position:fixed;top:60px;right:18px;z-index:120;width:225px;background:#fff;border:1px solid #e4e7ec;border-radius:15px;padding:8px;box-shadow:var(--shadow);display:grid;gap:4px}.f2-user-menu strong,.f2-user-menu small{padding:3px 7px}.f2-user-menu small{color:#667085;font-size:9px}.f2-user-menu a,.f2-user-menu button{border:0;background:#f8fafc;border-radius:9px;padding:9px;color:#172033;text-decoration:none;text-align:left;font-weight:850;font-size:10px}.f2-mobile-nav{display:none}

@media(max-width:1100px){
  .f2-sidebar-foot{display:none}.f2-nav button{padding:7px}.f2-nav button strong{display:none}.f2-nav button span{width:31px;height:31px}
  .f2-workbench-body{grid-template-columns:315px minmax(0,1fr)}.f2-family-grid{grid-template-columns:300px minmax(0,1fr)}.f2-rule-grid{grid-template-columns:315px minmax(0,1fr)}
  .f2-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.f2-dashboard-lower{grid-template-columns:1fr}.f2-ledger-columns{grid-template-columns:1fr}.f2-gen-layout{grid-template-columns:280px minmax(0,1fr)}
}

@media(max-width:780px){
  body{padding-bottom:72px}.f2-topbar{height:62px;padding:0 10px}.f2-back{display:none}.f2-brand-mark{width:37px;height:37px}.f2-brand small{display:none}.f2-user-btn em{display:none}.f2-icon-btn,.f2-user-btn{height:38px}.f2-sidebar{top:62px;bottom:0;height:auto;right:0;z-index:200;background:#0b1220;border:0;padding:12px;display:flex;align-items:stretch;flex-direction:column;transform:translateY(105%);transition:.2s ease;box-shadow:none}.f2-sidebar.open{transform:none;box-shadow:0 -30px 80px rgba(0,0,0,.35)}.f2-sidebar-head{display:flex;justify-content:space-between;align-items:center;padding:4px 4px 10px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:5px;color:#fff}.f2-sidebar-head p{margin:0;font-weight:900}.f2-sidebar-head button{border:0;background:rgba(255,255,255,.08);color:#fff;width:36px;height:36px;border-radius:10px;font-size:19px}.f2-nav{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;overflow:auto;align-content:start}.f2-nav button{min-height:54px;border-color:rgba(255,255,255,.08);background:rgba(255,255,255,.04);color:#d0d5dd}.f2-nav button strong{display:block}.f2-nav button.active{background:#fff;color:#172033}.f2-sidebar-foot{display:block;margin-top:auto}.f2-sidebar-foot a{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.08);color:#f9e7a1}.f2-main{width:calc(100% - 18px);padding:74px 0 16px}.f2-page-head{display:none}.f2-page-head h1{font-size:26px}.f2-page-head span{font-size:10.5px}.f2-page-actions{display:none}.f2-mobile-menu{display:inline-grid;width:34px;height:34px;border:1px solid #d0d5dd;background:#fff;border-radius:10px;place-items:center;margin-bottom:6px}.f2-command-hero{grid-template-columns:1fr;padding:15px;border-radius:20px}.f2-command-hero h2{font-size:22px}.f2-command-hero .f2-btn-gold{width:100%;min-width:0}.f2-command-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.f2-dashboard-strip{grid-template-columns:1fr 1fr;gap:7px}.f2-dashboard-strip>span{display:none}.f2-dashboard-strip .note{grid-column:1/-1}.f2-dashboard-strip .f2-link{grid-column:1/-1;justify-self:start}.f2-command-card{grid-template-columns:33px 1fr;min-height:96px;padding:13px;border-radius:20px}.f2-command-card .ico{width:38px;height:38px;border-radius:14px;font-size:20px}.f2-command-card small{display:none}.f2-kpis{grid-template-columns:1fr 1fr;gap:6px}.f2-kpi{padding:10px;min-height:70px}.f2-kpi strong{font-size:18px}.f2-card{padding:10px;border-radius:15px}.f2-toolbar,.f2-toolbar.compact,.f2-blocked-toolbar{grid-template-columns:1fr}.f2-workbench{min-height:0}.f2-workbench-head{padding:10px}.f2-workbench-body{grid-template-columns:1fr;min-height:0}.f2-master{border-right:0;border-bottom:1px solid #e4e7ec;padding:8px}.f2-master-list{display:flex;overflow-x:auto;overflow-y:hidden;max-height:none;padding-bottom:3px}.f2-master-card{min-width:220px;max-width:250px;flex:0 0 auto}.f2-detail-pane{padding:10px;max-height:none}.f2-receipt-review{grid-template-columns:1fr}.f2-receipt-preview{min-height:250px}.f2-receipt-preview img,.f2-receipt-preview iframe{height:260px}.f2-family-grid{grid-template-columns:1fr}.f2-family-grid>aside .f2-list{display:flex;overflow-x:auto;max-height:none}.f2-family-card{min-width:225px}.f2-ledger-head{display:grid}.f2-ledger-stats{display:grid;grid-template-columns:repeat(3,1fr)}.f2-ledger-stat{min-width:0}.f2-gen-topline{grid-template-columns:1fr}.f2-gen-layout{grid-template-columns:1fr}.f2-selector{display:flex;overflow-x:auto;max-height:none}.f2-selector button{min-width:205px}.f2-selector details{min-width:205px}.f2-gen-row{grid-template-columns:auto 1fr}.f2-gen-right{grid-column:2;text-align:left;justify-items:start}.f2-form-grid{grid-template-columns:1fr}.f2-student-picker{grid-template-columns:1fr}.f2-selected-person{min-height:auto}.f2-blocked-row{grid-template-columns:1fr 1fr}.f2-blocked-actions{grid-column:1/-1;justify-content:flex-start}.f2-rule-shell{border-radius:17px}.f2-rule-head{padding:12px}.f2-rule-toolbar{grid-template-columns:1fr}.f2-rule-grid{grid-template-columns:1fr}.f2-rule-left{border-right:0;border-bottom:1px solid #eadfbf}.f2-rule-list{display:flex;overflow-x:auto;max-height:none}.f2-rule-card{min-width:210px}.f2-rule-right{max-height:none}.f2-teacher-grid{grid-template-columns:1fr 1fr}.f2-teacher-payment-row{grid-template-columns:1fr auto}.f2-teacher-payment-row>*:not(:first-child):not(.amt):not(.f2-actions){display:none}.f2-teacher-payment-row .amt{grid-column:2}.f2-ft-grid{grid-template-columns:1fr}.f2-ft-head{display:grid}.f2-ft-extra{grid-template-columns:auto minmax(130px,1fr) minmax(110px,1fr)}.f2-modal{padding:7px;align-items:end}.f2-modal-box{width:100%;max-height:94vh;border-radius:20px 20px 10px 10px}.f2-mobile-nav{position:fixed;left:7px;right:7px;bottom:7px;z-index:150;height:58px;border-radius:19px;background:rgba(11,18,32,.97);display:grid;grid-template-columns:repeat(5,1fr);padding:5px;gap:3px;box-shadow:0 24px 60px rgba(15,23,42,.35)}.f2-mobile-nav button{border:0;background:transparent;color:#9ca8ba;border-radius:13px;display:grid;place-items:center;align-content:center;gap:1px}.f2-mobile-nav button.active{background:#fff;color:#172033}.f2-mobile-nav span{font-weight:900}.f2-mobile-nav small{font-size:7.5px;font-weight:900}.f2-toast-stack{bottom:74px}
}
@media(max-width:440px){.f2-main{width:calc(100% - 14px)}.f2-command-actions{grid-template-columns:1fr 1fr}.f2-kpis{grid-template-columns:1fr 1fr}.f2-kpi strong{font-size:17px}.f2-teacher-grid{grid-template-columns:1fr}.f2-review-form .row{grid-template-columns:1fr}.f2-split-row{grid-template-columns:1fr 82px 98px}.f2-rule-link-row{grid-template-columns:1fr}.f2-ledger-stats{grid-template-columns:1fr 1fr}.f2-user-menu{right:7px;top:56px}.f2-ft-row{grid-template-columns:auto 1fr}.f2-ft-row>div:last-child{grid-column:2;text-align:left}.f2-ft-extra{grid-template-columns:auto 1fr}.f2-ft-extra input{grid-column:2}.f2-ft-extra button{grid-column:2;justify-self:start}}
.f2-room-intro{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;background:#fff;border:1px solid #e4e7ec;border-radius:18px;padding:14px 16px;box-shadow:0 8px 24px rgba(16,24,40,.045)}.f2-room-intro h2{margin:2px 0 4px;font-size:20px;letter-spacing:-.035em;color:#172033}.f2-room-intro p{margin:0;color:#667085;font-size:11px;line-height:1.45;max-width:760px}.f2-eyebrow{display:inline-block;font-size:8.5px;text-transform:uppercase;letter-spacing:.1em;color:#987200;font-weight:950;margin-bottom:2px}
@media(max-width:780px){.f2-room-intro{padding:11px 12px;border-radius:15px}.f2-room-intro h2{font-size:18px}.f2-room-intro>button{display:none}}
/* ================================
   LEGACY-GROUNDED DECISION FORMS
================================ */
.f2-action-context{border:1px solid #ead999;background:linear-gradient(180deg,#fffdf4,#fff);border-radius:15px;padding:11px 12px;display:grid;gap:3px}.f2-action-context h3{margin:2px 0 0;font-size:15px;letter-spacing:-.02em}.f2-action-context p{margin:0;color:#667085;font-size:10px;line-height:1.4}.f2-field-stack{display:grid;gap:6px;font-size:10px;font-weight:900;color:#344054}.f2-field-stack textarea,.f2-field-stack input,.f2-field-stack select{width:100%;border:1px solid #d0d5dd;border-radius:11px;background:#fff;padding:10px;color:#172033;outline:none}.f2-field-stack textarea{min-height:110px;resize:vertical}.f2-field-stack textarea:focus,.f2-field-stack input:focus,.f2-field-stack select:focus{border-color:#c9a227;box-shadow:0 0 0 3px rgba(201,162,39,.12)}.f2-note.warning{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.f2-teacher-payment-header{display:grid;grid-template-columns:minmax(0,1.2fr) .6fr .45fr .45fr .65fr auto;gap:6px;align-items:center;padding:6px 9px;background:#fcfcfd;border-top:1px solid #eaecf0;color:#667085;text-transform:uppercase;letter-spacing:.045em;font-size:7.3px;font-weight:950}.f2-teacher-payment-header span:nth-child(5){text-align:right}
@media(max-width:780px){.f2-teacher-payment-header{display:none}.f2-action-context{padding:10px}.f2-field-stack textarea{min-height:130px}}
@media(max-width:780px){.f2-back{display:grid;width:38px;height:38px;flex:0 0 auto}.f2-brand{gap:7px}.f2-brand strong{font-size:15px}}
@media(max-width:780px){.f2-family-detail-top{grid-template-columns:1fr}.f2-family-detail-top>.f2-info-grid{min-width:0!important}.f2-ledger-command{bottom:70px;padding-bottom:9px}.f2-ledger-command .f2-btn,.f2-ledger-command .f2-btn-gold,.f2-ledger-command .f2-btn-ghost{flex:1 1 calc(50% - 6px)}}
