:root{--navy: #0B1A33;--navy-2: #16284A;--aqua: #3FD1B9;--aqua-text: #0A7C7C;--aqua-soft: #e3f8f5;--bg: #f3f5f8;--card: #FFFFFF;--surface: var(--card);--border: #E2E7EE;--text: #1F2A3D;--muted: #55627A;--red: #B42318;--red-bg: #FEF3F2;--green: #067647;--ink: var(--text);--ink-soft: var(--muted);--rule: var(--border);--accent: var(--green);--success: var(--green);--neg: var(--red);--danger: var(--red);--warn: #8a5712;--review: #35617d;--table-font-size: .72rem;--font-sans: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-serif: "IBM Plex Serif", Georgia, serif;--font-mono: var(--font-sans);--radius: 10px;--shadow-sm: 0 1px 3px rgba(11, 26, 51, .1);--shadow-md: 0 1px 3px rgba(11, 26, 51, .1);--filter-control-height: 2.5rem}*{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);color:var(--text);background:var(--bg);font-variant-numeric:tabular-nums}.spacer{flex:1}.user-email{color:var(--ink-soft);font-size:.85rem}.app-shell{display:flex;min-height:100vh}.app-main-col{flex:1;min-width:0;display:flex;flex-direction:column}.sidebar{width:230px;flex-shrink:0;background:var(--navy);color:#fff;display:flex;flex-direction:column;padding:1rem 0 1.25rem;transition:width .2s ease;overflow:hidden}.sidebar.sidebar-collapsed{width:0;min-width:0;padding:0}.sidebar-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:0 1rem 1rem}.sidebar-logo{height:28px;width:auto;display:block;flex-shrink:0}.sidebar-close{display:none;border:none;background:none;color:#fff;cursor:pointer;padding:.25rem}.sidebar-collapse-toggle{border:none;background:#ffffff14;color:#fff;cursor:pointer;padding:.3rem;border-radius:4px;display:flex;align-items:center;justify-content:center}.sidebar-collapse-toggle:hover{background:#ffffff29}.sidebar-school{margin:0 1rem 1rem;padding:.6rem .75rem;background:var(--navy-2);border-radius:8px}.sidebar-school-label{display:block;font-size:.65rem;font-weight:700;letter-spacing:.06em;color:#fff9;margin-bottom:.35rem}.sidebar-school select{width:100%;max-width:100%;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:6px;padding:.35rem .4rem;font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-school select option{color:var(--text)}.sidebar-nav{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.15rem}.sidebar-nav button{width:100%;display:flex;align-items:center;gap:.65rem;padding:.6rem 1rem .6rem 1.1rem;border:none;border-left:3px solid transparent;background:transparent;color:#ffffffc7;font-size:.85rem;text-align:left;cursor:pointer}.sidebar-nav button:hover{background:#ffffff0f}.sidebar-nav button.active{background:var(--aqua-soft);color:var(--navy);font-weight:700;border-left-color:var(--aqua)}.sidebar-nav button.active svg{color:var(--navy)}.sidebar-backdrop{display:none}.sidebar-hamburger{display:none;border:1px solid var(--border);background:#fff;border-radius:6px;padding:.4rem;cursor:pointer;color:var(--text)}.sidebar-reopen{border:1px solid var(--border);background:#fff;border-radius:6px;padding:.4rem;cursor:pointer;color:var(--text);display:flex;align-items:center;justify-content:center}.sidebar-reopen:hover{background:var(--bg)}.app-topbar{display:flex;align-items:center;gap:1rem;padding:.75rem 1.5rem;border-bottom:1px solid var(--border);background:var(--card)}.view-as-banner{display:flex;align-items:center;justify-content:center;gap:1rem;padding:.5rem 1.5rem;font-size:13px;font-weight:600;background:#fff3cd;color:#7a5b00;border-bottom:1px solid #f0d58c;position:sticky;top:0;z-index:20}.view-as-banner strong{font-weight:700}.view-as-banner .btn-secondary{padding:.3rem .75rem;font-size:12px}@media (min-width: 768px) and (max-width: 1099px){.sidebar:not(.sidebar-collapsed){width:64px}.sidebar:not(.sidebar-collapsed) .sidebar-label,.sidebar:not(.sidebar-collapsed) .sidebar-school,.sidebar:not(.sidebar-collapsed) .sidebar-logo{display:none}.sidebar:not(.sidebar-collapsed) .sidebar-top{justify-content:center;padding:0 0 1rem}.sidebar:not(.sidebar-collapsed) .sidebar-nav button{justify-content:center;padding:.6rem}}@media (max-width: 767px){.sidebar{position:fixed;top:0;left:0;bottom:0;z-index:60;width:230px;transform:translate(-100%);transition:transform .2s ease}.sidebar.sidebar-collapsed{width:230px;padding:1rem 0 1.25rem}.sidebar.sidebar-mobile-open{transform:translate(0)}.sidebar-close{display:block}.sidebar-collapse-toggle,.sidebar-reopen{display:none}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0b1a3366;z-index:55}.sidebar-hamburger{display:inline-flex;align-items:center;justify-content:center}}button.btn-primary,.btn-primary{background:var(--navy);color:#fff;border:none;border-radius:8px;min-height:40px;padding:0 1.1rem;font-size:.85rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.4rem}button.btn-secondary,.btn-secondary{background:#fff;color:var(--text);border:1px solid var(--border);border-radius:8px;min-height:40px;padding:0 1.1rem;font-size:.85rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.4rem}button.btn-primary:disabled,.btn-primary:disabled,button.btn-secondary:disabled,.btn-secondary:disabled{opacity:.55;cursor:not-allowed}button.btn-secondary:hover,.btn-secondary:hover{background:var(--bg)}.report-page-shell{max-width:100%}.page-header-card{background:#fff;border-radius:16px;box-shadow:0 1px 2px #0f1b330d,0 8px 24px #0f1b330f;padding:18px 24px;margin-bottom:1.25rem}.page-header-row1{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.page-header-left{flex:1;min-width:0}.page-header-eyebrow{display:block;text-transform:uppercase;font-size:.75rem;font-weight:600;letter-spacing:.08em;color:#4a5363}.page-header-title{font-family:var(--font-serif);font-weight:600;font-size:1.375rem;color:#0f1b33;margin:6px 0 0}.page-header-subtitle{margin:6px 0 0;font-size:.8125rem;color:#4a5363;max-width:46rem}.page-header-logo{flex:0 0 auto}.page-header-rule{border:none;border-top:3px solid #0f1b33;margin:12px 0 0}.page-header-toolbar{display:flex;align-items:flex-end;justify-content:flex-end;gap:1.25rem;flex-wrap:wrap;margin-top:12px}@media (max-width: 760px){.page-header-row1{flex-wrap:wrap}.page-header-toolbar{justify-content:flex-start}.page-header-title{font-size:1.125rem}}.payroll-definition-filters{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem;margin-bottom:1.25rem}.payroll-definition-filters-label{font-weight:600;font-size:.85rem;color:var(--navy);margin-right:.25rem}.payroll-definition-dropdown{position:relative}.payroll-definition-dropdown-toggle{display:inline-flex;align-items:center;gap:.4rem;background:#fff;border:1px solid var(--border);border-radius:8px;padding:.5rem .85rem;font-size:.85rem;font-weight:500;color:var(--text);cursor:pointer}.payroll-definition-dropdown-toggle:hover{background:var(--bg)}.payroll-definition-dropdown-count{background:var(--navy);color:#fff;font-size:.7rem;font-weight:700;border-radius:999px;padding:.05rem .4rem;line-height:1.3}.payroll-definition-dropdown-caret{font-size:.7rem;color:var(--ink-soft)}.payroll-definition-dropdown-panel{position:absolute;top:calc(100% + .3rem);left:0;z-index:20;background:#fff;border:1px solid var(--rule);border-radius:10px;box-shadow:0 8px 30px #0b1a3326;padding:.6rem .75rem;min-width:220px;max-height:320px;overflow-y:auto;display:flex;flex-direction:column;gap:.35rem}.payroll-definition-option{display:flex;align-items:baseline;gap:.4rem;font-size:.82rem;color:var(--text);cursor:pointer;white-space:nowrap}.payroll-definition-option-all{font-weight:600}.payroll-definition-dropdown-divider{border-top:1px solid var(--rule);margin:.1rem 0 .2rem}.payroll-tables-wrap{overflow:auto;max-height:calc(100vh - 230px);background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:.75rem}.payroll-tables-wrap table.payroll-fixed-table+table.payroll-fixed-table{border-top:2px solid var(--navy)}table.payroll-fixed-table{table-layout:fixed;width:100%}table.payroll-fixed-table td,table.payroll-fixed-table th{font-variant-numeric:tabular-nums}table.payroll-fixed-table th:nth-child(1),table.payroll-fixed-table td:nth-child(1){position:sticky;left:0;z-index:2;background:var(--card)}table.payroll-fixed-table thead th:nth-child(1){z-index:4;background:#f8f9fb}.payroll-definition-filters-trailing{margin-left:auto}.payroll-show-district-cost-toggle{display:inline-flex;align-items:center;gap:.5rem;font-size:.82rem;font-weight:500;color:var(--text);cursor:pointer}.district-cost-unmapped-warning{margin-top:.5rem;padding:.75rem 1rem;background:#fdf6ec;border:1px solid var(--warn);border-radius:8px;color:var(--warn);font-size:.85rem}.district-cost-unmapped-warning p{margin:0 0 .4rem}.district-cost-unmapped-warning ul{margin:0;padding-left:1.2rem}.page-header-toolbar label,.upload-form label{font-size:.75rem;font-weight:400;color:#4a5363;display:flex;flex-direction:column;gap:.3rem}.select-field,.page-header-toolbar select,.upload-form select{font-size:.8325rem;font-family:inherit;font-weight:400;padding:.35rem .5rem;border:1px solid var(--border);border-radius:4px;height:var(--filter-control-height);background:#fff;color:var(--text)}.page-header-toolbar>.btn-primary,.page-header-toolbar>.export-menu{align-self:flex-end}.ask-pill{display:inline-flex;align-items:center;gap:.4rem;min-height:40px;padding:0 1rem;border:1px solid var(--aqua);border-radius:999px;background:#fff;color:var(--aqua-text);font-size:.85rem;font-weight:600;cursor:pointer}.ask-pill:hover{background:var(--aqua-soft)}.font-size-toggle{display:flex;gap:.15rem;margin-right:.5rem}.font-size-toggle button{width:1.8rem;height:1.8rem;border:1px solid var(--rule);border-radius:4px;background:#fff;color:var(--ink-soft);cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.font-size-toggle button.active{border-color:var(--ink);color:var(--ink);background:var(--rule);font-weight:700}.bva-view-toggle{display:inline-flex;flex-wrap:wrap;gap:.2rem;padding:.2rem;background:var(--bg);border:1px solid var(--rule);border-radius:999px;margin-bottom:.75rem}.bva-view-toggle button{border:none;background:transparent;color:var(--ink-soft);font-size:.8rem;font-weight:600;padding:.35rem .85rem;border-radius:999px;cursor:pointer;white-space:nowrap}.bva-view-toggle button.active{background:var(--navy);color:#fff}main{padding:1.5rem;padding-right:calc(1.5rem + var(--chat-panel-width, 0px));box-sizing:border-box}.login-screen{min-height:100vh;background:var(--navy);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;padding:2rem 1.5rem}.login-screen-logo{height:36px;width:auto;display:block}.login-card{width:100%;max-width:400px;background:#fff;border-radius:16px;box-shadow:0 12px 40px #00000047;padding:2.25rem 2rem;box-sizing:border-box}.login-card-title{margin:0 0 1.25rem;font-family:var(--font-serif);font-weight:500;font-size:1.5rem;color:var(--navy)}.login-card-copy{font-size:.88rem;color:var(--muted);line-height:1.5}.login-card form{display:flex;flex-direction:column;gap:1rem}.login-card label{display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;font-weight:500;color:var(--text)}.login-card input,.login-card select{width:100%;padding:.7rem .75rem;border:1px solid var(--border);border-radius:8px;font:inherit;box-sizing:border-box}.login-submit{width:100%;min-height:44px;margin-top:.25rem;border:none;border-radius:8px;background:var(--navy);color:#fff;font-family:inherit;font-size:.95rem;font-weight:700;cursor:pointer}.login-submit:hover{background:var(--navy-2)}.login-submit:disabled{opacity:.6;cursor:not-allowed}.invite-submit,.invite-submit:hover{color:var(--aqua)}.login-forgot-link{display:block;margin:1rem 0 0;border:none;background:none;padding:0;color:var(--aqua-text);font-size:.85rem;font-weight:500;cursor:pointer;text-align:left}.login-forgot-link:hover{text-decoration:underline}.login-screen-home-link{color:#ffffffbf;font-size:.85rem;text-decoration:none}.login-screen-home-link:hover{color:#fff}.password-field{position:relative;display:flex}.password-field input{flex:1;padding-right:2.4rem}.password-field .toggle-visibility{position:absolute;right:.4rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:.2rem;color:var(--muted);display:flex;align-items:center}.password-field .toggle-visibility:hover{color:var(--text)}.login-card .error{color:var(--red);font-size:.85rem;margin:0}.login-card .password-policy{font-size:.85rem;color:var(--muted);margin-top:-.5rem}.login-card code{display:inline-block;max-width:100%;overflow-wrap:break-word;word-break:break-all;white-space:pre-wrap;font-size:.85rem}.login-qr{display:block;margin:.25rem 0}.empty-state{padding:3rem;text-align:center;color:var(--ink-soft)}.hint{font-size:.85rem;color:var(--muted)}.page-subtitle{margin:.3rem 0 1rem;font-size:.8125rem;color:var(--muted);max-width:46rem}.controls{margin-bottom:1rem;display:flex;align-items:flex-end;gap:1rem}.controls label{display:flex;flex-direction:column;gap:.3rem;font-size:.8rem;width:220px}.export-menu{position:relative}.export-menu>button{padding:.45rem .8rem;border:1px solid var(--rule);border-radius:4px;background:#fff;color:var(--ink);font-size:.8rem;height:var(--filter-control-height);cursor:pointer}.export-menu>button:disabled{cursor:not-allowed;opacity:.6}.export-menu-dropdown{position:absolute;top:calc(100% + .25rem);left:0;z-index:10;display:flex;flex-direction:column;min-width:160px;border:1px solid var(--rule);border-radius:4px;background:#fff;box-shadow:0 2px 8px #0000001f;overflow:hidden}.export-menu-dropdown button{padding:.5rem .8rem;border:none;background:#fff;text-align:left;font-size:.8rem;cursor:pointer;color:var(--ink)}.export-menu-dropdown button:hover:not(:disabled){background:var(--rule)}.export-menu-dropdown button:disabled{color:var(--ink-soft);cursor:not-allowed}.export-menu-error{margin-left:.5rem;color:var(--neg);font-size:.8rem}.export-menu-info{margin-left:.5rem;color:var(--review);font-size:.8rem}.summary-toggle-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .8rem;border:1px solid var(--rule);border-radius:4px;background:#fff;color:var(--ink);font-size:.8rem;font-family:inherit;height:var(--filter-control-height);cursor:pointer}.summary-toggle-btn:hover{background:var(--bg)}.summary-toggle-chevron{display:inline-block;transition:transform .16s ease}.summary-toggle-chevron-collapsed{transform:rotate(-90deg)}.collapsible-region{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .22s ease,opacity .18s ease}.collapsible-region-expanded{grid-template-rows:1fr;opacity:1}.collapsible-region-inner{overflow:hidden;min-height:0}.upload-form{display:flex;align-items:flex-end;gap:1rem;padding:1rem;margin-bottom:1.5rem;border:1px solid var(--rule);border-radius:8px;background:#f8f7f2}.upload-form input[type=text],.upload-form input:not([type=file]){padding:.4rem;border:1px solid var(--rule);border-radius:4px;width:100px}.upload-form .error{color:var(--neg);font-size:.85rem;margin:0}.upload-queue{flex-basis:100%;margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.3rem;max-height:180px;overflow-y:auto}.upload-queue li{display:flex;justify-content:space-between;gap:.75rem;padding:.3rem .5rem;border:1px solid var(--rule);border-radius:4px;background:#fff;font-size:.78rem}.upload-queue-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-queue-status{color:var(--ink-soft);white-space:nowrap}.upload-queue-status button{border:none;background:none;cursor:pointer;color:var(--ink-soft);font-size:.9rem;line-height:1;padding:0 .2rem}.upload-queue-succeeded .upload-queue-status{color:var(--accent)}.upload-queue-failed .upload-queue-status{color:var(--neg)}.upload-queue-uploading .upload-queue-status{font-style:italic}.as-of{color:var(--ink-soft);font-size:.85rem;padding:0 .5rem;margin:.75rem 0}.table-wrap{overflow:auto;max-height:calc(100vh - 230px);background:var(--card);border:1px solid var(--border);border-radius:var(--radius)}table.bva-table{border-collapse:collapse;font-size:var(--table-font-size);line-height:1.2;width:auto}table.bva-table th,table.bva-table td{padding:.4rem .6rem;border-bottom:1px solid #eef1f4;text-align:right;white-space:nowrap}table.bva-table th:nth-child(1),table.bva-table th:nth-child(2),table.bva-table td.acct,table.bva-table td.name{text-align:left}table.bva-table td.acct{color:var(--muted)}table.bva-table tbody tr:not(.fund-header):not(.obj-header):not(.sub):not(.objsub):not(.grand):hover td{background:#f8fafd}table.bva-table thead th,table.bva-table tr.col-header th{background:#f8f9fb;color:#4a5363;font-weight:600;font-size:.64rem;text-transform:uppercase;letter-spacing:.04em;text-align:right;border-bottom:2px solid #d9dee6}table.bva-table thead th:nth-child(1),table.bva-table thead th:nth-child(2),table.bva-table tr.col-header th:nth-child(1),table.bva-table tr.col-header th:nth-child(2){text-align:left}table.bva-table tr.fund-header td{background:#f3f2ec;font-weight:700;text-align:left;border-top:2px solid var(--navy)}table.bva-table tr.obj-header td{background:#fbfaf7;font-weight:500;text-align:left;color:var(--ink-soft);font-size:.66rem;padding-left:1rem}table.bva-table tr.sub td,table.bva-table tr.objsub td{background:#f8f7f2;font-weight:700;border-top:2px solid var(--border)}table.bva-table tr.objsub td.name{padding-left:1rem;font-weight:600}table.bva-table tr.grand td{background:var(--navy);color:#fff;font-weight:700;border-top:2px solid var(--navy)}table.bva-table tr.fund-balance-row td{background:var(--aqua-soft);color:var(--text)}table.bva-table tr.unfavorable td{background:var(--red-bg)}table.bva-table tr.cashflow-unmapped-row td{font-style:italic;color:var(--ink-soft)}table.bva-table tr.cashflow-unmapped-row td.name{color:var(--warn)}.cashflow-unmapped-note{font-size:.68rem;font-style:normal;font-weight:400;color:var(--ink-soft)}table.bva-table td.muted{color:var(--ink-soft)}table.bva-table td.neg{color:var(--neg);font-weight:700}table.bva-table td.total-cell{font-weight:700}.cnt{color:var(--ink-soft);font-weight:400;font-size:.66rem}table.bva-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}table.bva-table th.sortable:hover{background:var(--border)}table.bva-table th .sort-indicator{font-size:.7em;display:inline-block;width:.8em}table.bva-table td.proj-first,table.bva-table th.proj-first{border-left:1px dashed var(--border)}.proj-sublabel{font-size:.85em;font-weight:400;font-style:italic;color:var(--muted)}table.bva-table thead th,table.bva-table tr.col-header th{position:sticky;top:0;z-index:3}table.bva-table-sticky-cols td:nth-child(1),table.bva-table-sticky-cols th:nth-child(1){position:sticky;left:0;z-index:2;width:70px;min-width:70px;background:var(--card)}table.bva-table-sticky-cols td:nth-child(2),table.bva-table-sticky-cols th:nth-child(2){position:sticky;left:70px;z-index:2;width:200px;min-width:200px;background:var(--card)}table.bva-table-sticky-cols thead th:nth-child(1),table.bva-table-sticky-cols thead th:nth-child(2),table.bva-table-sticky-cols tr.col-header th:nth-child(1),table.bva-table-sticky-cols tr.col-header th:nth-child(2){z-index:4}table.bva-table-sticky-cols tr.fund-header td:nth-child(1),table.bva-table-sticky-cols tr.fund-header td:nth-child(2){background:#f3f2ec}table.bva-table-sticky-cols tr.obj-header td:nth-child(1),table.bva-table-sticky-cols tr.obj-header td:nth-child(2){background:#fbfaf7}table.bva-table-sticky-cols tr.sub td:nth-child(1),table.bva-table-sticky-cols tr.sub td:nth-child(2),table.bva-table-sticky-cols tr.objsub td:nth-child(1),table.bva-table-sticky-cols tr.objsub td:nth-child(2){background:#f8f7f2}table.bva-table-sticky-cols tr.grand td:nth-child(1),table.bva-table-sticky-cols tr.grand td:nth-child(2){background:var(--navy)}table.bva-table-sticky-cols tr.fund-balance-row td:nth-child(1),table.bva-table-sticky-cols tr.fund-balance-row td:nth-child(2){background:var(--aqua-soft)}table.bva-table-sticky-cols tr.unfavorable td:nth-child(1),table.bva-table-sticky-cols tr.unfavorable td:nth-child(2){background:var(--red-bg)}table.bva-table td.proj,table.bva-table th.proj{font-style:italic;color:var(--ink-soft)}table.bva-table th.proj{background:#f8f7f2}.s-over{color:var(--neg)}.s-review{color:var(--review)}.s-near{color:var(--warn)}.muted{color:var(--ink-soft)}.recent-issues{margin:1rem 0;padding:.9rem 1.1rem;border:1px solid var(--rule);border-left:3px solid var(--neg);border-radius:6px;background:#fdf7f6}.recent-issues h3{margin:0 0 .5rem;font-size:.9rem}.recent-issues ul{margin:0;padding-left:1.1rem}.recent-issues li{margin-bottom:.6rem;font-size:.85rem}.issue-error{color:var(--ink-soft);font-size:.8rem;margin-top:.1rem}.school-branding-section{padding:.9rem 1.1rem;border:1px solid var(--rule);border-radius:6px;background:#fff;margin:1rem 0}.school-branding-section h3{margin:0 0 .3rem;font-size:.9rem}.school-branding-row{display:flex;align-items:center;gap:1rem;margin-top:.5rem;flex-wrap:wrap}.school-branding-controls{display:flex;align-items:center;gap:.5rem}.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-top:1rem}.status-block{padding:.9rem 1.1rem;border:1px solid var(--rule);border-radius:6px;background:#fff}.status-block h3{margin:0 0 .6rem;font-size:.9rem}.status-block p{margin:0;font-size:.85rem}.month-chips{display:flex;flex-wrap:wrap;gap:.35rem}.chip{display:inline-block;padding:.2rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600}.chip-uploaded{background:#e8f1ec;color:var(--accent)}.chip-open{background:#fbeee0;color:var(--warn)}.s-ok{color:var(--accent)}.strip4,.strip2{display:grid;gap:1rem;margin:1rem 0}.strip4{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.strip2{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.stat-tile{padding:.9rem 1rem;border:1px solid #e8ecf1;border-radius:16px;background:linear-gradient(180deg,#fff,#fbfcfd);box-shadow:0 1px 2px #0f1b330d,0 6px 16px #0f1b330f,0 18px 40px -12px #0f1b331a}.stat-tile.stat-tile-alert{border-color:#f0b9b6;background:linear-gradient(180deg,#fff8f7,#fff4f3)}.stat-tile-alert-label{display:flex;align-items:center;gap:.35rem}.stat-tile .n{font-size:1.3rem;font-weight:700;font-family:var(--font-mono, monospace)}.stat-tile .l{font-size:.78rem;color:var(--ink-soft);margin-top:.2rem}.stat-tile .sub{font-size:.72rem;color:var(--ink-soft);margin-top:.15rem}.stat-tile.pos .n{color:var(--accent)}.stat-tile.neg .n{color:var(--neg)}.stat-tile.warn .n{color:var(--warn)}.stat-tile.rev .n{color:var(--review)}.stat-tile-delta{display:flex;align-items:center;gap:.25rem;font-size:.75rem;font-weight:600;margin-top:.4rem}.stat-tile-delta-pos{color:var(--green)}.stat-tile-delta-neg{color:var(--red)}.stat-tile-progress-wrap{position:relative;margin-top:.6rem}.stat-tile-progress{height:8px;border-radius:999px;background:#e8ecf1;overflow:hidden;box-shadow:inset 0 1px 2px #0f1b332e}.stat-tile-progress-bar{height:100%;border-radius:999px;background:linear-gradient(180deg,#6fe0c9,var(--aqua-text));box-shadow:0 1px 3px #0a7c7c59}.stat-tile-progress-tick{position:absolute;top:-3px;width:2px;height:14px;background:#1a2233}.kpi-row{display:flex;gap:1rem;align-items:stretch;margin:1rem 0;flex-wrap:wrap}.kpi-row .kpi-cards{flex:3;min-width:320px;margin:0}.kpi-trend{flex:1;min-width:220px}.kpi-trend h3{margin:0 0 .4rem;font-size:.78rem;color:var(--muted);font-weight:600}.stat-hero{margin:.5rem 0 1.5rem;padding:1.2rem 1.5rem;border:1px solid var(--rule);border-radius:8px;background:#f8f7f2;display:flex;flex-direction:column;align-items:flex-start;gap:.15rem}.stat-hero .n{font-size:2rem;font-weight:700;font-family:var(--font-mono, monospace);color:var(--ink)}.stat-hero .l{font-size:.85rem;color:var(--ink-soft)}.stat-hero .sub{font-size:.78rem;color:var(--ink-soft)}.chart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:1rem;margin-bottom:1rem}.chart-card{padding:1.1rem 1.25rem;border:1px solid #e8ecf1;border-radius:16px;background:linear-gradient(180deg,#fff,#fbfcfd);box-shadow:0 1px 2px #0f1b330d,0 6px 16px #0f1b330f,0 18px 40px -12px #0f1b331a}.chart-card h3{margin:0 0 .3rem;font-size:.95rem;font-weight:600}.chart-wrap{position:relative}.chart-wrap svg text{paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round}.chart-wrap-strip{margin-top:.4rem}.chart-strip-title{font-size:.75rem;font-weight:600;color:var(--muted);margin-bottom:.2rem}.chart-takeaway{margin:0 0 .5rem;font-size:.8rem;color:var(--muted);line-height:1.45}.chart-tooltip{position:absolute;transform:translate(-50%,-100%);pointer-events:none;background:var(--ink);color:#fff;padding:.4rem .6rem;border-radius:4px;font-size:.75rem;white-space:nowrap;z-index:5}.legend{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:.6rem;font-size:.78rem;color:var(--ink-soft)}.legend .sw{display:inline-block;width:.7rem;height:.7rem;border-radius:2px;margin-right:.3rem;vertical-align:-1px}.waterfall-mini-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin-top:.4rem}.waterfall-mini-stat{padding:.6rem .7rem;border-radius:8px;background:#f8f9fb}.waterfall-mini-stat-label{font-size:.68rem;color:var(--muted)}.waterfall-mini-stat-value{font-size:.95rem;font-weight:600;font-variant-numeric:tabular-nums;margin-top:.1rem}.donut-with-table{display:flex;flex-direction:column}.donut-row{display:flex;flex-wrap:wrap;gap:1.1rem;align-items:center;width:100%}.donut-table-wrap{flex:1 1 240px;min-width:0;overflow-x:auto}table.donut-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:13px}table.donut-table th{padding:.4rem .5rem;text-align:left;font-size:.65rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #e3e7ed}table.donut-table th.r,table.donut-table td.r{text-align:right}table.donut-table td{padding:.45rem .5rem;border-bottom:1px solid #eef1f4;font-variant-numeric:tabular-nums;font-size:13px;font-weight:400;color:#1a2233;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}tr.donut-table-subtotal td{font-weight:700}table.donut-table .sw{width:.6rem;height:.6rem;border-radius:3px;display:inline-block;margin-right:.35rem;vertical-align:-1px}.donut-share-track{position:relative;height:6px;border-radius:3px;background:#edf0f4;overflow:hidden;box-shadow:inset 0 1px 2px #0f1b3324}.donut-share-fill{height:100%;border-radius:3px;box-shadow:0 1px 2px #0f1b3340}.donut-table-footnote{margin:.5rem 0 0;padding:0 .5rem;font-size:12px;color:var(--muted)}.two-ring-wrap{position:relative;flex:0 0 auto}.notable-items{margin-top:1rem;padding:1rem 1.2rem;border:1px solid var(--rule);border-radius:6px;background:#fff}.notable-items h3{margin:0 0 .6rem;font-size:.9rem}.notable-items dl{margin:0}.notable-items dt{font-weight:600;font-size:.82rem;margin-top:.5rem}.notable-items dd{margin:.15rem 0 0;font-size:.85rem;color:var(--ink-soft)}.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin-bottom:1rem}.dashboard-main-grid{grid-template-columns:2fr 1fr}.dashboard-chart-wide{min-width:0}@media (max-width: 900px){.dashboard-main-grid{grid-template-columns:1fr}}.alerts-list{display:flex;flex-direction:column;gap:.6rem}.alert-card{display:flex;gap:.6rem;align-items:flex-start;padding:.7rem;border-radius:12px;background:linear-gradient(180deg,#fff,#f6f8fa);border:1px solid #e8ecf1;box-shadow:0 1px 2px #0f1b330d,0 4px 10px #0f1b330d}.alert-tag{flex:0 0 auto;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:700;letter-spacing:.04em}.alert-tag-high{background:#fde8e7;color:#a3261c}.alert-tag-watch{background:#fdf3dc;color:#7a5200}.alert-tag-info{background:#e6f0fb;color:#1c5cab}.alert-card-title{font-size:.82rem;font-weight:600;line-height:1.35}.alert-card-text{margin-top:.15rem;font-size:.76rem;color:var(--muted);line-height:1.45}.ahead-of-pace-table-wrap{overflow-x:auto;border:1px solid #e8ecf1;border-radius:12px;box-shadow:inset 0 1px 2px #0f1b330a}table.ahead-of-pace-table{width:100%}.ahead-of-pace-footnote{margin-top:.5rem;font-size:.75rem;color:var(--muted)}.pace-bar-cell{display:flex;align-items:center;gap:.5rem;min-width:150px}.pace-bar-track{position:relative;flex:1;height:8px;border-radius:4px;background:#edf0f4}.pace-bar-fill{height:100%;border-radius:4px;box-shadow:0 1px 3px #0f1b334d}.pace-bar-tick{position:absolute;top:-3px;width:2px;height:14px;background:#1a2233}.pace-bar-pct{width:2.3rem;text-align:right;font-weight:600;font-size:.78rem}.status-chip{display:inline-block;padding:3px 9px;border-radius:999px;font-size:.72rem;font-weight:600;white-space:nowrap}.status-chip-crit{background:#fde8e7;color:#a3261c}.status-chip-warn{background:#fdf3dc;color:#7a5200}.status-chip-ok{background:#e6f0fb;color:#1c5cab}.status-chip-good{background:#e3f3ea;color:#17633a}.status-chip-none{background:#f1f3f6;color:#4a5363}.chat-widget{position:relative;display:inline-block}.chat-panel-title{display:flex;align-items:center;gap:.4rem}.chat-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}.chat-chip{background:var(--aqua-soft);color:var(--aqua-text);border:1px solid var(--aqua);cursor:pointer;font-weight:500}.chat-chip:hover{background:var(--aqua);color:#fff}.chat-panel{position:fixed;top:0;right:0;bottom:0;z-index:50;max-width:90vw;display:flex;flex-direction:column;border-left:1px solid var(--rule);background:#fff;box-shadow:-4px 0 16px #00000026}.chat-resize-handle{position:absolute;top:0;left:-3px;bottom:0;width:6px;cursor:ew-resize;touch-action:none;z-index:1}.chat-resize-handle:hover{background:var(--accent);opacity:.4}.chat-panel-header{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;border-bottom:1px solid var(--rule);background:var(--aqua-soft);color:var(--navy);font-size:.82rem;font-weight:600}.chat-close{border:none;background:none;font-size:1.1rem;line-height:1;cursor:pointer;color:var(--ink-soft);padding:.1rem .4rem}.chat-close:hover{color:var(--ink)}.chat-messages{flex:1;overflow-y:auto;padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.chat-message{padding:.5rem .65rem;border-radius:6px;font-size:.82rem;line-height:1.35;max-width:92%}.chat-user{align-self:flex-end;background:var(--aqua);color:var(--navy);white-space:pre-wrap}.chat-assistant{align-self:flex-start;background:#f3f2ec;color:var(--ink)}.chat-pending{color:var(--ink-soft);font-style:italic}.chat-assistant p{margin:0 0 .5rem}.chat-assistant p:last-child{margin-bottom:0}.chat-assistant ul,.chat-assistant ol{margin:0 0 .5rem;padding-left:1.1rem}.chat-assistant li{margin-bottom:.15rem}.chat-assistant strong{font-weight:700}.chat-assistant code{background:#0b1a3314;border-radius:3px;padding:.05rem .3rem;font-size:.78rem;font-family:var(--font-mono)}.chat-assistant table{border-collapse:collapse;width:100%;margin:0 0 .5rem;font-size:.76rem}.chat-assistant th,.chat-assistant td{border:1px solid var(--rule);padding:.25rem .4rem;text-align:left}.chat-assistant th{background:#e9e7de;font-weight:700}.chat-error{margin:0 .75rem;color:var(--neg);font-size:.78rem}.chat-input-row{display:flex;gap:.4rem;padding:.6rem;border-top:1px solid var(--rule);background:#faf9f5}.chat-input-row textarea{flex:1;resize:none;padding:.4rem;border:1px solid var(--rule);border-radius:4px;font-family:inherit;font-size:.82rem}.chat-input-row .btn-primary:disabled{opacity:.5;cursor:not-allowed}.admin-page{display:flex;flex-direction:column;gap:1.5rem;max-width:1400px}.admin-page-header h1{margin:0;font-size:1.75rem;font-weight:700}.admin-summary{margin:.4rem 0 0;font-size:.875rem;color:var(--muted)}.admin-tabbar{display:flex;gap:.25rem;border-bottom:1px solid var(--rule)}.admin-tab{padding:.75rem 1.1rem;font-size:15px;font-weight:500;color:#4a5363;background:none;border:none;border-bottom:3px solid transparent;margin-bottom:-1px;cursor:pointer}.admin-tab-active{font-weight:600;color:var(--navy);border-bottom-color:var(--navy)}.admin-tab-panel{display:flex;flex-direction:column;gap:1rem}.admin-inline-banner{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem .9rem;border-radius:8px;font-size:13px;background:var(--aqua-soft);color:#17633a;border:1px solid #bfe3cd}.admin-inline-banner-error{background:var(--red-bg);color:var(--neg);border-color:#e3a8a3}.admin-inline-banner-close{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border:none;background:none;color:inherit;cursor:pointer;border-radius:6px}.admin-inline-banner-close:hover{background:#0000000f}.admin-toolbar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between}.admin-view-as{display:flex;align-items:center;gap:.5rem;flex:0 0 auto}.admin-view-as-select{width:auto;min-width:220px;max-width:280px}.admin-search-field{flex:1 1 240px;max-width:320px}.admin-sr-only{position:absolute;left:-9999px}.admin-input{height:2.5rem;width:100%;padding:0 .75rem;border:1px solid var(--rule);border-radius:8px;font:inherit;font-size:.875rem;background:#fff;box-sizing:border-box}.admin-panel-layout{display:flex;flex-wrap:wrap;gap:1.5rem;align-items:flex-start}.admin-panel-layout-main{flex:999 1 480px;min-width:0;display:flex;flex-direction:column;gap:.75rem}.admin-table-card{background:#fff;border:1px solid var(--rule);border-radius:12px;overflow-x:auto}.admin-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f1b3340;z-index:60}.admin-drawer{position:fixed;top:0;right:0;bottom:0;width:520px;max-width:100%;z-index:61;background:#fff;box-shadow:-8px 0 24px #0f1b331f;display:flex;flex-direction:column}.admin-drawer-header{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--rule)}.admin-drawer-header h2{margin:0;font-size:18px;font-weight:700}.admin-drawer-form{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.admin-drawer-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column;gap:16px}.admin-drawer-footer{flex:0 0 auto;display:flex;gap:.625rem;justify-content:flex-end;padding:16px 24px;border-top:1px solid var(--rule)}@media (max-width: 640px){.admin-drawer{width:100%}}.admin-side-panel-close{display:inline-flex;width:2.5rem;height:2.5rem;align-items:center;justify-content:center;color:var(--muted);border:none;background:none;border-radius:8px;cursor:pointer}.admin-side-panel-close:hover{background:var(--bg)}.admin-side-card{flex:1 1 280px;max-width:340px;background:#fff;border:1px solid var(--rule);border-radius:12px;padding:22px;box-sizing:border-box;display:flex;flex-direction:column;gap:.5rem}.admin-side-card h2{margin:0 0 .5rem;font-size:18px;font-weight:700}.admin-settings-card{max-width:400px;border:none;border-radius:16px;box-shadow:0 12px 40px #0000001f;padding:2.25rem 2rem}.admin-settings-card h2{margin:0 0 .75rem;font-family:var(--font-serif);font-weight:500;font-size:1.5rem;color:var(--navy)}.admin-settings-card .admin-settings-copy{font-size:.88rem;line-height:1.5}.admin-settings-card .admin-panel-form{display:flex;flex-direction:column;gap:1rem}.admin-settings-card label{display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;font-weight:500;color:var(--text)}.admin-settings-card input{width:100%;padding:.7rem .75rem;border:1px solid var(--border);border-radius:8px;font:inherit;box-sizing:border-box;color:var(--text);background:#fff}.admin-settings-card .btn-primary{width:100%;min-height:44px;margin-top:.25rem;font:inherit;font-size:.95rem;font-weight:600}.admin-settings-card .btn-primary:hover{background:var(--navy-2)}.admin-settings-card .btn-primary:disabled{opacity:.6;cursor:not-allowed}.admin-settings-copy{margin:0 0 .25rem;font-size:13px;color:var(--muted);line-height:1.5}.admin-settings-saved{margin:0;font-size:.85rem;color:var(--success)}.admin-panel-form{display:flex;flex-direction:column;gap:16px;align-items:stretch}.admin-panel-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:500;text-align:left}.admin-label-row{display:inline-flex;align-items:baseline;gap:.3rem}.admin-panel-form input[type=email],.admin-panel-form input[type=text],.admin-panel-form select{height:40px;padding:0 .75rem;border:1px solid #cdd3dc;border-radius:8px;font:inherit;font-size:14px;width:100%;box-sizing:border-box}.admin-panel-form input::placeholder{color:#6b7380}.admin-panel-form .error{color:var(--neg);font-size:.85rem;margin:0}.admin-optional{font-weight:400;font-size:13px;color:#4a5363}.admin-full-width{width:100%}.admin-panel-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.admin-panel-actions{display:flex;gap:.625rem;justify-content:flex-end}.admin-panel-actions-start{justify-content:flex-start;margin-top:.4rem}.admin-drawer-body .admin-panel-grid-2 label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:500;text-align:left}.admin-drawer-body .admin-panel-grid-2 input{height:40px;padding:0 .75rem;border:1px solid #cdd3dc;border-radius:8px;font:inherit;font-size:14px;width:100%;box-sizing:border-box}.admin-muted-note{margin:0;font-size:13px;color:#4a5363}.admin-fieldset{border:1px solid var(--rule);border-radius:10px;padding:.875rem 1rem;margin:0;display:flex;flex-direction:column;gap:.625rem}.admin-fieldset legend{padding:0 .375rem;font-size:13px;font-weight:600}.admin-checkbox-row{display:flex;flex-direction:row;align-items:center;gap:10px;cursor:pointer;font-weight:400;font-size:14px;line-height:1.35;min-height:36px}.admin-checkbox-row input[type=checkbox]{width:16px;height:16px;flex:0 0 auto}.admin-school-picker{display:flex;flex-direction:column;gap:.75rem}.admin-school-bulk-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.admin-school-bulk-label{font-size:13px;color:#4a5363}.admin-school-bulk-spacer{flex:1 1 auto}.admin-school-bulk-dot{color:var(--muted)}.admin-link-button{border:none;background:none;font:inherit;font-size:13px;color:var(--navy);cursor:pointer;padding:.25rem .1rem}.admin-link-button:hover{text-decoration:underline}.admin-link-button:disabled{opacity:.5;cursor:not-allowed;text-decoration:none}.admin-school-filter{height:36px}.admin-school-grid-scroll{max-height:320px;overflow-y:auto;border:1px solid var(--rule);border-radius:8px;padding:.5rem .65rem}.admin-school-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 1rem}.admin-school-cell{display:flex;flex-direction:column;gap:.3rem}.admin-school-checkbox-row{display:flex;flex-direction:row;align-items:flex-start;gap:10px;cursor:pointer}.admin-school-checkbox-row input[type=checkbox]{width:16px;height:16px;flex:0 0 auto;margin-top:2px}.admin-school-cell-text{display:flex;flex-direction:column;min-width:0}.admin-school-cell-name{font-size:14px}.admin-school-cell-code{font-size:12px;color:#4a5363;white-space:nowrap}.admin-school-cell-role{align-self:flex-start;margin-left:26px;height:40px}.admin-status-pill{display:inline-flex;align-items:center;justify-content:center;height:22px;padding:0 .6rem;border-radius:999px;font-size:12px;font-weight:600;line-height:1}.admin-status-pill-active{background:var(--aqua-soft);color:#17633a}.admin-status-pill-inactive{background:var(--red-bg);color:var(--neg)}table.account-mapping-table{table-layout:auto}table.account-mapping-table th:nth-child(1),table.account-mapping-table td:nth-child(1),table.account-mapping-table th:nth-child(3),table.account-mapping-table td:nth-child(3){width:1%}table.account-mapping-table td.name{white-space:normal}table.account-mapping-table td:nth-child(4){text-align:left;padding-left:1.1rem}table.account-mapping-table tr.col-header th:nth-child(4){text-align:left;padding-left:1.1rem}table.account-mapping-table tr.account-mapping-unmapped-row td{background:#fffaf2}.account-mapping-badge{display:inline-flex;align-items:center;justify-content:center;height:16px;padding:0 .4rem;border-radius:999px;font-size:10px;font-weight:600;line-height:1;white-space:nowrap;flex-shrink:0}.account-mapping-badge-unmapped{background:var(--red-bg);color:var(--neg)}.account-mapping-acct-line{display:flex;align-items:center;gap:.4rem;white-space:nowrap}.account-mapping-acct-code{font-variant-numeric:tabular-nums;font-weight:500}.account-mapping-acct-kind{color:var(--ink-soft)}.account-mapping-cell{display:flex;flex-direction:column;gap:.2rem}.account-mapping-cell-line{display:flex;align-items:center;gap:.5rem}.account-mapping-resolved{color:var(--ink);white-space:nowrap}.account-mapping-resolved-line{font-weight:600}.account-mapping-source-tag{display:inline-block;margin-left:.4rem;padding:1px .4rem;border-radius:999px;font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;vertical-align:middle}.account-mapping-source-tag-master{background:var(--aqua-soft);color:#17633a}.account-mapping-source-tag-override{background:#eef1fb;color:var(--navy-2)}.account-mapping-suggest-btn{padding:.2rem .45rem;border:1px dashed var(--warn);border-radius:4px;white-space:nowrap;background:#fff;color:var(--warn);font-size:inherit;font-weight:600;cursor:pointer;text-align:left}.account-mapping-suggest-btn:hover{background:#fff8ec}.account-mapping-suggest-btn:disabled{opacity:.6;cursor:not-allowed}.account-mapping-link-btn{padding:0;border:none;background:none;color:var(--aqua-text);font-size:inherit;white-space:nowrap;font-weight:600;cursor:pointer;text-decoration:underline}.account-mapping-link-btn:hover{color:var(--navy)}.account-mapping-link-btn:disabled{opacity:.5;cursor:not-allowed;text-decoration:none}.account-mapping-select{height:27px;padding:1px 4px;font-size:inherit;font-family:inherit;line-height:1.2;border:1px solid var(--border);border-radius:4px;background:#fff;color:var(--text);width:100%;max-width:100%;min-width:0;box-sizing:border-box}.account-mapping-cell-error{margin:.2rem 0 0;font-size:.68rem;white-space:normal}.account-mapping-bulk-row{margin-bottom:.75rem}.account-mapping-toast{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;padding:.6rem .9rem;border:1px solid var(--border);border-radius:8px;background:var(--aqua-soft);color:#17633a;font-size:.85rem}.account-mapping-toast .account-mapping-link-btn{color:#0c4a2e}.account-mapping-table-wrap{max-height:calc(100vh - 330px)}table.account-mapping-table tfoot td{position:sticky;bottom:0;z-index:4;background:#fff;border-top:2px solid var(--navy);border-bottom:none;white-space:normal;text-align:left;padding:.55rem .6rem}.account-mapping-totals-line{display:block}.account-mapping-totals-line strong{color:var(--navy)}.account-mapping-totals-sep{margin:0 .6rem;color:var(--border)}@media (max-width: 900px){table.account-mapping-table,table.account-mapping-table thead,table.account-mapping-table tbody,table.account-mapping-table tfoot,table.account-mapping-table th,table.account-mapping-table td,table.account-mapping-table tr{display:block;width:100%!important}table.account-mapping-table thead{position:absolute;top:-9999px;left:-9999px}table.account-mapping-table tr{margin-bottom:.9rem;padding:.9rem;border:1px solid var(--border);border-radius:10px;background:#fff}table.account-mapping-table td{border:none;padding:.3rem 0!important;text-align:left!important;white-space:normal}table.account-mapping-table td:before{content:attr(data-label);display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);margin-bottom:2px}.account-mapping-acct-line,.account-mapping-cell-line{white-space:normal;flex-wrap:wrap}table.account-mapping-table tfoot td{position:static;border-top:1px solid var(--border)}}table.admin-table{width:100%;border-collapse:collapse;table-layout:fixed;font-family:var(--font-sans);font-size:14px;color:#1a2233}table.admin-table th,table.admin-table td{vertical-align:middle;padding:12px 14px;height:52px;box-sizing:border-box;text-align:left}table.admin-table thead th{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#4a5363;background:#f8f9fb;border-bottom:1px solid #e3e7ed;white-space:nowrap}table.admin-table tbody td{font-size:14px;font-weight:400;color:#1a2233;border-bottom:1px solid #eef1f4}table.admin-table-users,table.admin-table-schools{width:max-content;min-width:100%}.admin-row-selected td{background:#f1f5fd}.admin-user-name,.admin-user-email{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.admin-user-name{font-weight:500;font-size:14px;color:#1a2233}.admin-user-email,.admin-muted-cell{font-size:12px;color:#4a5363}.admin-code-cell{font-variant-numeric:tabular-nums;font-size:14px;color:#1a2233}.admin-nowrap{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-actions-cell{text-align:right;white-space:nowrap}.admin-actions-inline{display:inline-flex;gap:8px;align-items:center}.admin-row-action{display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:13px;font-weight:500;border-radius:6px;border:1px solid #cdd3dc;background:#fff;color:#1a2233;cursor:pointer;white-space:nowrap}.admin-row-action:hover{background:var(--bg)}.admin-row-action:disabled{opacity:.5;cursor:not-allowed}.admin-row-action-danger{border-color:#e3a8a3;color:#a3261c}.admin-row-action-danger:hover{background:#fff5f4}table.admin-table tr.admin-row-editing td{text-align:left;vertical-align:top;height:auto;padding:.75rem .6rem}.admin-inline-edit-form{display:flex;flex-direction:column;gap:.6rem;padding:.5rem 0;align-items:flex-start}.admin-inline-edit-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:500;text-align:left}.admin-inline-edit-form input[type=text]{height:40px;padding:0 .75rem;border:1px solid #cdd3dc;border-radius:8px;font-size:14px;max-width:280px;box-sizing:border-box}.admin-inline-edit-form label.admin-checkbox-label{flex-direction:row;align-items:center;gap:8px;font-weight:400;max-width:420px}.admin-checkbox-label input[type=checkbox]{width:16px;height:16px;flex-shrink:0}.admin-segmented{display:inline-flex;height:40px;border:1px solid var(--rule);border-radius:8px;overflow:hidden;background:#fff}.admin-segmented button{height:40px;padding:0 .9rem;border:none;border-left:1px solid var(--rule);background:#fff;color:#1a2233;font:inherit;font-size:13px;cursor:pointer}.admin-segmented button:first-child{border-left:none}.admin-segmented-active{background:var(--navy)!important;color:#fff!important;font-weight:600}.admin-activity-filters{display:flex;flex-wrap:wrap;gap:.875rem;align-items:flex-end}.admin-filter-field{display:flex;flex-direction:column;gap:.3rem}.admin-filter-field span{font-size:12px;color:#4a5363}.admin-filter-field .admin-input{width:auto;min-width:180px;height:40px}table.admin-table td.admin-activity-what{vertical-align:middle;white-space:normal;height:auto}table.admin-cleanup-table td{vertical-align:top;white-space:normal;height:auto}.admin-cleanup-kind{color:var(--warn);font-size:.82rem;font-weight:600;white-space:nowrap}.admin-cleanup-value{max-width:260px;word-break:break-word;font-size:.82rem}.admin-cleanup-input{width:100%;min-width:180px;padding:.3rem .5rem;border:1px solid var(--rule);border-radius:6px;font:inherit;font-size:.82rem;box-sizing:border-box}.admin-activity-label{font-size:14px;font-weight:500;color:#1a2233}.admin-activity-code{font-variant-numeric:tabular-nums;font-size:12px;color:#4a5363;margin-top:.1rem}.admin-activity-group td{background:#f1f5fd}.admin-activity-group-header{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center;justify-content:space-between}.admin-show-details-btn{height:32px;padding:0 12px;border:1px solid #cdd3dc;border-radius:6px;background:#fff;font:inherit;font-size:13px;font-weight:500;color:#1a2233;cursor:pointer;white-space:nowrap}.admin-show-details-btn:hover{background:var(--bg)}.admin-activity-detail-row td{background:#fafbfd}@media (max-width: 640px){.admin-school-grid,.admin-panel-grid-2{grid-template-columns:1fr}}@media (max-width: 768px){.hero-mock-body{flex-direction:column!important}.hero-mock-sidebar{flex-direction:row!important;align-items:center!important;max-width:none!important;width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch;padding:10px 12px!important;gap:8px!important}.hero-mock-sidebar-school{display:none!important}.hero-mock-nav-item{flex:0 0 auto!important;white-space:nowrap!important}.hero-mock-content{width:100%!important}.hero-mock-kpis{grid-template-columns:repeat(2,1fr)!important;gap:8px!important}.hero-mock-col-line,.hero-mock-col-amt{display:none!important}.hero-mock-table-wrap:after{content:"";position:absolute;top:0;right:0;bottom:0;width:24px;background:linear-gradient(to right,#fff0,#fff);pointer-events:none}.who-its-for-row{flex-direction:column!important;text-align:center!important;gap:8px!important}}.boolean-switch{width:2rem;height:1.1rem;border-radius:999px;border:1px solid var(--rule);background:var(--bg);padding:2px;cursor:pointer;display:inline-flex;align-items:center;flex-shrink:0;transition:background .15s ease,border-color .15s ease}.boolean-switch.on{background:var(--navy);border-color:var(--navy)}.boolean-switch:disabled{opacity:.5;cursor:not-allowed}.boolean-switch-knob{width:.85rem;height:.85rem;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0b1a334d;transition:transform .15s ease}.boolean-switch.on .boolean-switch-knob{transform:translate(.9rem)}.rb-layout{display:grid;grid-template-columns:minmax(300px,420px) 1fr;gap:1.25rem;align-items:start}@media (max-width: 1100px){.rb-layout{grid-template-columns:1fr}}.rb-panel{background:var(--card);border:1px solid var(--rule);border-radius:var(--radius);padding:1rem;margin-bottom:1rem}.rb-panel h3{margin:0 0 .6rem;font-size:.95rem}.rb-panel label{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;margin-bottom:.6rem}.rb-panel input[type=text],.rb-panel input[type=date],.rb-panel input[type=number],.rb-panel input[type=datetime-local],.rb-panel select{width:100%;height:var(--filter-control-height);padding:.35rem .5rem;border:1px solid var(--border);border-radius:4px;font-family:inherit;font-size:.8325rem;color:var(--text);background:#fff;box-sizing:border-box}.rb-panel textarea{width:100%;min-height:90px;padding:.5rem;border:1px solid var(--border);border-radius:4px;font-family:inherit;font-size:.8325rem;color:var(--text);box-sizing:border-box}.rb-preset-row{display:flex;gap:.5rem;margin-bottom:.75rem;flex-wrap:wrap}.rb-preset-row button{padding:.4rem .8rem;border-radius:999px;border:1px solid var(--rule);background:#fff;cursor:pointer;font-size:.78rem}.rb-preset-row button.active{background:var(--navy);color:#fff;border-color:var(--navy)}.rb-section-list{display:flex;flex-direction:column;gap:.4rem}.rb-section-row{display:flex;align-items:center;gap:.6rem;padding:.5rem .6rem;border:1px solid var(--rule);border-radius:6px;background:#fff}.rb-section-row.dragging{opacity:.5}.rb-drag-handle{cursor:grab;color:var(--ink-soft);flex-shrink:0;touch-action:none}.rb-section-main{flex:1;min-width:0}.rb-section-label{font-size:.84rem;font-weight:600}.rb-section-desc{font-size:.72rem;color:var(--ink-soft);margin-top:.1rem}.rb-group-badge{font-size:.65rem;text-transform:uppercase;letter-spacing:.4px;padding:.15rem .45rem;border-radius:999px;border:1px solid var(--rule);color:var(--ink-soft);cursor:pointer;flex-shrink:0;background:#fff}.rb-group-badge.appendix{background:#f0f3f7}.rb-preview{background:var(--card);border:1px solid var(--rule);border-radius:var(--radius);padding:1.5rem}.rb-preview>.page-header{margin-bottom:1rem}.rb-section{margin-bottom:1.25rem}.rb-section-heading{font-size:1rem;font-weight:700;color:var(--navy);margin:0 0 .5rem}.rb-appendix-divider{text-align:center;font-weight:700;letter-spacing:.5px;color:var(--ink-soft);border-top:2px solid var(--rule);border-bottom:2px solid var(--rule);padding:.5rem 0;margin:1.5rem 0}.rb-placeholder{color:var(--ink-soft);font-style:italic;font-size:.85rem;padding:.5rem 0}.rb-flag{color:var(--neg);font-weight:600}.rb-at-a-glance{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1.5rem}.rb-at-a-glance .kpi{padding:.75rem .85rem;border:1px solid #e8ecf1;border-radius:14px;background:linear-gradient(180deg,#fff,#f8f9fb);box-shadow:0 1px 2px #0f1b330d,0 6px 14px #0f1b3312}.rb-at-a-glance .kpi-alert{border-color:#f0b9b6;background:linear-gradient(180deg,#fff8f7,#fff4f3)}.rb-at-a-glance .kpi-alert .kl,.rb-at-a-glance .kpi-alert .kv{color:#a3261c}.rb-at-a-glance .kl{font-size:.68rem;font-weight:600;letter-spacing:.04em;color:var(--muted)}.rb-at-a-glance .kv{margin-top:.25rem;font-size:1.15rem;font-weight:700;font-variant-numeric:tabular-nums}.rb-at-a-glance .ks{margin-top:.1rem;font-size:.72rem;color:var(--muted)}@media (max-width: 640px){.rb-at-a-glance{grid-template-columns:repeat(2,1fr)}}.two-ring-section{display:flex;flex-wrap:wrap;gap:1.8rem;align-items:center;margin-top:.75rem;width:100%}.two-ring-table-wrap{flex:1 1 240px;min-width:0;overflow-x:auto}.two-ring-table-wrap .sw{width:.6rem;height:.6rem;display:inline-block;margin-right:.35rem;vertical-align:-1px}tr.rb-section-group-row td{background:#f3f2ec;font-weight:700;border-top:2px solid var(--navy)}.rb-board-attention-callout{margin-top:.75rem;padding:.7rem .85rem;border-radius:8px;background:#fff8f7;border:1px solid #f0b9b6;font-size:.82rem;line-height:1.5}.rb-board-attention-callout b{color:#a3261c}.rb-narrative{position:relative}.rb-narrative p{margin:0;font-size:.85rem;line-height:1.5;cursor:text;padding:.3rem;border-radius:4px}.rb-narrative p:hover{background:var(--bg)}.rb-narrative textarea{width:100%;font-family:inherit;font-size:.85rem;line-height:1.5;padding:.4rem;border:1px solid var(--aqua-text);border-radius:4px;resize:vertical;min-height:3.5rem}.rb-narrative-override-badge{font-size:.65rem;color:var(--aqua-text);margin-left:.4rem}.rb-free-text-row{display:flex;gap:.5rem;align-items:flex-start;margin-bottom:.4rem}.rb-free-text-row input[type=text]{flex:1;padding:.35rem;border:1px solid var(--rule);border-radius:4px}.rb-free-text-row select{padding:.35rem;border:1px solid var(--rule);border-radius:4px}.rb-free-text-row button{border:none;background:none;color:var(--neg);cursor:pointer;font-size:1rem}@media (max-width: 640px){.rb-preview{padding:1rem}}.vault-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0b1a3366;z-index:200;display:flex;align-items:center;justify-content:center;padding:1rem}.vault-modal-actions{display:flex;gap:.6rem;margin-top:.25rem}.vault-modal-actions .login-submit{width:auto;flex:1;margin-top:0}.vault-modal-actions .btn-secondary{flex:1;min-height:44px;font-size:.95rem;font-weight:600;border-radius:8px}.vault-secret-display input,.vault-secret-display textarea{width:100%;padding:.4rem;border:1px solid var(--border);border-radius:6px;font-family:monospace}.vault-header{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:.75rem}.vault-header h2{margin:0}.vault-completion-badge{font-size:.78rem;font-weight:600;color:var(--navy);background:var(--bg);border:1px solid var(--rule);border-radius:999px;padding:.25rem .75rem}.vault-entry-card{border:1px solid var(--rule);border-radius:6px;padding:.6rem .8rem}.vault-entry-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4rem}.vault-entry-card-header h4{margin:0;font-size:.85rem}.vault-entry-delete{border:none;background:none;color:var(--neg);font-size:.75rem;cursor:pointer;padding:0}.vault-entry-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.5rem .9rem}.vault-field-row{display:flex;flex-direction:column;gap:.25rem;font-size:.78rem}.vault-field-label{color:var(--ink-soft);font-size:.72rem}.vault-field-row input[type=text],.vault-field-row input[type=password]{padding:.3rem .4rem;border:1px solid var(--rule);border-radius:4px;font-size:.8rem}.vault-field-row-sensitive{gap:.3rem}.vault-field-sensitive-controls{display:flex;align-items:center;gap:.4rem}.vault-field-masked{font-family:monospace;color:var(--ink-soft);font-size:.8rem}.vault-revealed-value{font-family:monospace;font-size:.8rem;word-break:break-all}.vault-icon-btn{border:none;background:none;color:var(--navy);cursor:pointer;padding:.15rem;display:inline-flex;align-items:center}.vault-icon-btn:hover{color:var(--accent)}.vault-field-new-value{margin-top:.1rem}.vault-add-custom{margin-top:.4rem;align-self:flex-start}.vault-tabbar{margin-bottom:1rem}.vault-logins-layout{display:flex;gap:1rem;align-items:flex-start}.vault-account-list{flex:0 0 320px;width:320px;background:#fff;border:1px solid var(--rule);border-radius:12px;padding:.75rem;display:flex;flex-direction:column;gap:.6rem;max-height:calc(100vh - 220px);overflow-y:auto;position:sticky;top:1rem}.vault-account-search{width:100%;padding:.45rem .6rem;border:1px solid var(--border);border-radius:8px;font:inherit;font-size:.85rem;box-sizing:border-box}.vault-filter-chips{display:flex;flex-wrap:wrap;gap:.35rem}.vault-filter-chip{border:1px solid var(--rule);background:var(--bg);color:var(--ink-soft);border-radius:999px;padding:.25rem .65rem;font-size:.72rem;font-weight:600;cursor:pointer}.vault-filter-chip-active{background:var(--navy);border-color:var(--navy);color:#fff}.vault-account-groups{display:flex;flex-direction:column;gap:.3rem}.vault-account-group{border-bottom:1px solid var(--rule)}.vault-account-group:last-child{border-bottom:none}.vault-account-group-header{width:100%;display:flex;align-items:center;gap:.4rem;text-align:left;background:none;border:none;padding:.5rem .2rem;font-weight:700;font-size:.78rem;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.02em;cursor:pointer}.vault-account-group-count{margin-left:auto;font-weight:600;color:var(--muted);background:var(--bg);border-radius:999px;padding:.05rem .45rem;font-size:.7rem;text-transform:none;letter-spacing:0}.vault-account-group-body{display:flex;flex-direction:column;gap:.1rem;padding-bottom:.4rem}.vault-account-row{display:flex;align-items:center;border-radius:6px;border-left:3px solid transparent}.vault-account-row-selected{background:var(--aqua-soft);border-left-color:var(--navy)}.vault-account-row-main{flex:1;display:flex;align-items:center;justify-content:space-between;gap:.5rem;background:none;border:none;text-align:left;cursor:pointer;padding:.4rem .5rem;min-width:0}.vault-account-row-name{font-size:.82rem;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vault-account-row-status{font-size:.68rem;color:var(--muted);flex-shrink:0}.vault-account-row-status-empty{color:var(--warn);font-weight:600}.vault-account-row-favorite{border:none;background:none;color:var(--rule);cursor:pointer;padding:.3rem;display:flex}.vault-account-row-favorite-active{color:#d4a017}.vault-account-detail{flex:1;min-width:0;background:#fff;border:1px solid var(--rule);border-radius:12px;padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:1.1rem}.vault-account-detail-empty{align-items:center;justify-content:center;min-height:240px}.vault-account-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.vault-account-eyebrow{font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.vault-account-title{margin:.15rem 0 .3rem;font-family:var(--font-serif);font-weight:500;font-size:24px;color:var(--navy)}.vault-account-meta{margin:0;font-size:.78rem;color:var(--muted)}.vault-account-detail-actions{display:flex;gap:.5rem;flex-shrink:0}.vault-logins-table-wrap{overflow-x:auto}.vault-logins-table{width:100%;border-collapse:collapse;font-size:.85rem}.vault-logins-table th{text-align:left;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);padding:.3rem .6rem;border-bottom:1px solid var(--rule)}.vault-logins-table td{padding:.45rem .6rem;border-bottom:1px solid var(--rule);vertical-align:middle}.vault-logins-table td:first-child,.vault-logins-table th:first-child{padding-left:0}.vault-login-label{font-weight:600;color:var(--ink-soft);white-space:nowrap}.vault-logins-table input[type=text]{width:100%;padding:.3rem .5rem;border:1px solid var(--rule);border-radius:6px;font:inherit;font-size:.85rem;box-sizing:border-box}.vault-sensitive-control{display:flex;flex-direction:column;gap:.25rem}.vault-sensitive-value-row{display:flex;align-items:center;gap:.4rem}.vault-add-login-link{display:inline-flex;align-items:center;gap:.3rem;border:none;background:none;color:var(--accent);font-size:.78rem;font-weight:600;cursor:pointer;padding:.4rem 0}.vault-account-details-block{display:flex;flex-direction:column;gap:.6rem}.vault-account-fields-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.6rem 1rem}.vault-detail-field{display:flex;flex-direction:column;gap:.25rem;font-size:.82rem}.vault-detail-field input[type=text]{padding:.35rem .5rem;border:1px solid var(--rule);border-radius:6px;font:inherit;font-size:.85rem}.vault-detail-field-value{color:var(--text);font-size:.85rem}.vault-show-empty-toggle{align-self:flex-start;border:none;background:none;color:var(--accent);font-size:.78rem;font-weight:600;cursor:pointer;padding:0}.vault-security-questions{border-top:1px solid var(--rule);padding-top:.75rem}.vault-security-toggle{border:none;background:none;color:var(--ink-soft);font-size:.8rem;font-weight:600;cursor:pointer;padding:0}.vault-security-rows{display:flex;flex-direction:column;gap:.6rem;margin-top:.6rem}.vault-security-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.6rem 1rem}.vault-notes{display:flex;flex-direction:column;gap:.3rem;border-top:1px solid var(--rule);padding-top:.75rem}.vault-notes textarea{width:100%;padding:.5rem .6rem;border:1px solid var(--rule);border-radius:8px;font:inherit;font-size:.85rem;resize:vertical;box-sizing:border-box}.vault-account-save-bar{display:flex;justify-content:flex-end;border-top:1px solid var(--rule);padding-top:.75rem}.vault-info-cards{display:flex;flex-direction:column;gap:.9rem}.vault-info-card{background:#fff;border:1px solid var(--rule);border-radius:12px;padding:1.1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.vault-info-card-header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.vault-info-card-header h3{margin:0;font-family:var(--font-serif);font-weight:500;font-size:1.15rem;color:var(--navy)}.vault-profile-cards{display:flex;flex-direction:column;gap:.9rem}.vault-profile-card{background:#fff;border:1px solid var(--rule);border-radius:12px;padding:1.1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.vault-profile-card select{padding:.35rem .5rem;border:1px solid var(--rule);border-radius:6px;font:inherit;font-size:.85rem}.vault-field-hint{font-size:.7rem;color:var(--warn)}.vault-combobox{position:relative}.vault-combobox input{width:100%;box-sizing:border-box}.vault-combobox-panel{position:absolute;top:calc(100% + 2px);left:0;right:0;z-index:20;max-height:220px;overflow-y:auto;background:#fff;border:1px solid var(--rule);border-radius:8px;box-shadow:var(--shadow-md);padding:.25rem}.vault-combobox-option{display:block;width:100%;text-align:left;border:none;background:none;padding:.4rem .5rem;border-radius:6px;font-size:.85rem;cursor:pointer;color:var(--text)}.vault-combobox-option:hover{background:var(--bg)}.vault-combobox-add{color:var(--accent);font-weight:600;border-top:1px solid var(--rule);margin-top:.15rem}.vault-expiration-badge{display:inline-block;margin-top:.3rem;font-size:.68rem;font-weight:700;border-radius:999px;padding:.1rem .5rem}.vault-expiration-badge-soon{background:#fdf6ec;color:var(--warn)}.vault-expiration-badge-expired{background:var(--red-bg);color:var(--red)}.vault-insurance-policies{display:flex;flex-direction:column;gap:.9rem}.vault-insurance-policies-title{margin:0;font-family:var(--font-serif);font-weight:500;font-size:1.15rem;color:var(--navy)}.vault-policy-row{background:#fff;border:1px solid var(--rule);border-radius:12px;padding:1.1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem;position:relative}.vault-policy-row-draft{border-style:dashed;border-color:var(--accent)}.vault-policy-fields-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.6rem 1rem}.vault-needs-review-badge{align-self:flex-start;background:#fdf6ec;color:var(--warn);font-size:.68rem;font-weight:700;border-radius:999px;padding:.1rem .5rem}.vault-policy-row-footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;border-top:1px solid var(--rule);padding-top:.6rem}.vault-policy-row-actions{display:flex;gap:.5rem}.vault-manage-sam-gov-link{border:none;background:none;color:var(--accent);font-size:.78rem;font-weight:600;cursor:pointer;padding:0}.vault-custom-field-note{margin-top:-.25rem;font-size:.78rem}.vault-custom-field-row{display:flex;align-items:flex-end;gap:.3rem}.vault-custom-field-row>label{flex:1;min-width:0}.vault-custom-field-menu-wrap{position:relative}.vault-custom-field-menu-btn{border:none;background:none;color:var(--ink-soft);cursor:pointer;padding:.3rem;line-height:1;border-radius:6px}.vault-custom-field-menu-btn:hover{background:var(--bg)}.vault-custom-field-menu-panel{position:absolute;top:calc(100% + 2px);right:0;z-index:20;min-width:150px;background:#fff;border:1px solid var(--rule);border-radius:8px;box-shadow:var(--shadow-md);padding:.25rem}.vault-custom-field-menu-option{display:block;width:100%;text-align:left;border:none;background:none;padding:.4rem .5rem;border-radius:6px;font-size:.82rem;cursor:pointer;color:var(--text)}.vault-custom-field-menu-option:hover{background:var(--bg)}.vault-custom-field-menu-option-danger{color:var(--neg)}.vault-add-custom-field-btn{align-self:flex-start;border:none;background:none;color:var(--accent);font-size:.78rem;font-weight:600;cursor:pointer;padding:0;display:inline-flex;align-items:center;gap:.3rem}@media (max-width: 860px){.vault-logins-layout{flex-direction:column}.vault-account-list{width:100%;max-height:none;position:static}}.bb-grid,.bb-yn-grid{min-width:0}.bb-grid>*,.bb-yn-grid>*{min-width:0}.bb-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem 1rem}.bb-span-2{grid-column:span 2}.bb-span-all{grid-column:1 / -1}@media (min-width: 900px){.bb-grid{grid-template-columns:repeat(3,1fr)}}.rb-panel .bb-field{margin-bottom:0}.bb-field-hint{display:block;font-weight:400;color:var(--muted);font-size:.75rem;margin-top:.15rem}.bb-field-label-row{display:flex;align-items:center;gap:.4rem}.bb-auto-tag{display:inline-flex;align-items:center;font-size:.65rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--muted);background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:.05rem .35rem;flex-shrink:0}.bb-yn-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.4rem 1.25rem}@media (min-width: 1280px){.bb-yn-grid{grid-template-columns:repeat(3,1fr)}}.bb-yn-cell{border-bottom:1px dotted var(--rule);padding:.4rem 0;min-width:0}.bb-yn-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem;font-size:.8rem;min-width:0}.bb-yn-row span{min-width:0}.bb-yn-row select{width:110px;flex-shrink:0}.bb-yn-hint{display:block;font-size:.7rem;color:var(--muted);margin-top:.15rem}.bb-lock-pill{display:inline-flex;align-items:center;gap:.3rem;font-size:.8rem;font-weight:600;color:var(--navy);white-space:nowrap;flex-shrink:0}.bb-lock-pill svg{flex-shrink:0;color:var(--muted)}.bb-trade-row{display:flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:400;min-width:0;cursor:pointer}.bb-trade-row input[type=checkbox]{flex-shrink:0;width:16px;height:16px}.bb-items-table{width:100%;border-collapse:collapse;font-size:.8rem;margin-bottom:.4rem}.bb-items-table th,.bb-items-table td{padding:.3rem;box-sizing:border-box}.bb-items-table th{text-align:left;font-size:.75rem;color:var(--muted);font-weight:400;border-bottom:1px solid var(--rule)}.bb-items-table input,.bb-items-table select{height:27px;width:100%;box-sizing:border-box;padding:1px 4px;line-height:1.2;border:1px solid var(--border);border-radius:4px;font:inherit;background:#fff;color:var(--text)}.bb-remove-row{border:none;background:none;color:var(--neg);font-size:1rem;cursor:pointer;padding:0}.bb-items-actions{display:flex;gap:.6rem;flex-wrap:wrap}.bb-items-help{margin:.4rem 0 1rem}.bb-calc{background:var(--aqua-soft);border-radius:8px;padding:.6rem .85rem;font-size:.82rem;margin-bottom:.75rem}.bb-errors{background:var(--red-bg);border:1px solid #f0b9b6;color:var(--neg);border-radius:8px;padding:.6rem .85rem;margin-bottom:.75rem;font-size:.85rem}.bb-errors ul{margin:.3rem 0 0;padding-left:1.1rem}.bb-ok{background:var(--aqua-soft);color:#17633a;border-radius:8px;padding:.5rem .85rem;margin-bottom:.75rem;font-size:.85rem}.bb-action-bar{display:flex;gap:.6rem;align-items:center;margin-bottom:1.25rem;flex-wrap:wrap}.bb-save-status{font-size:.78rem;color:var(--muted)}.bb-build-as{display:flex;align-items:center;gap:.4rem;font-size:.82rem;color:var(--muted)}.bb-recent-build-actions{display:flex;gap:.5rem;flex-wrap:wrap;white-space:nowrap}.bb-lock-changes ul,.bb-fix-all-summary ul{margin:.3rem 0 0;padding-left:1.1rem}.bb-fix-all-summary{display:flex;flex-direction:column;align-items:flex-start;gap:.3rem}.bb-template-manager{padding:.5rem .75rem;font-size:.82rem;color:var(--muted)}.bb-template-manager-label{font-weight:600;color:var(--text)}.bb-template-manager-upload{display:flex;align-items:center;gap:.5rem;margin-top:.3rem}
