: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%;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:6px;padding:.35rem .4rem;font-size:.82rem}.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 (max-width: 900px){.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-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:24px 28px;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.875rem;color:#0f1b33;margin:8px 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:18px 0 0}.page-header-toolbar{display:flex;align-items:flex-end;justify-content:flex-end;gap:1.25rem;flex-wrap:wrap;margin-top:16px}@media (max-width: 760px){.page-header-row1{flex-wrap:wrap}.page-header-toolbar{justify-content:flex-start}}.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{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-size:.95rem;font-weight:600;cursor:pointer}.login-submit:hover{background:var(--navy-2)}.login-submit:disabled{opacity:.6;cursor:not-allowed}.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:.78rem;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)}.empty-state .hint{font-size:.85rem}.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}.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 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-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.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{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}.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=datetime-local],.rb-panel select{padding:.4rem;border:1px solid var(--rule);border-radius:4px;font-family:inherit}.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-card{background:#fff;border-radius:10px;padding:1.5rem;max-width:380px;width:100%;box-shadow:0 8px 30px #0b1a3340}.vault-modal-card h3{margin-top:0}.vault-modal-card label{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.6rem;font-size:.85rem}.vault-modal-actions{display:flex;gap:.5rem;margin-top:.75rem}.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-section{border:1px solid var(--rule);border-radius:6px;margin-bottom:.75rem;background:#fff}.vault-section-header{width:100%;display:flex;align-items:center;gap:.5rem;text-align:left;background:var(--bg);border:none;border-radius:6px 6px 0 0;padding:.6rem .9rem;font-weight:700;font-size:.9rem;cursor:pointer}.vault-section-body{padding:.75rem .9rem;display:flex;flex-direction:column;gap:.6rem}.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-save-bar{display:flex;gap:.6rem;position:sticky;bottom:0;background:#fff;padding:.75rem 0;border-top:1px solid var(--rule);margin-top:1rem}
