.expense-filters{display:flex;align-items:end;flex-wrap:wrap}.expense-filters label{display:grid;gap:4px;min-width:125px;flex:1;font-size:calc(10px * var(--system-font-scale, 1));color:var(--muted)}.expense-filters input,.expense-filters select{min-height:34px;padding:6px 8px;border:1px solid #d2e0e8;border-radius:6px;background:white;color:var(--ink)}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding-top:12px;font-size:calc(10px * var(--system-font-scale, 1));color:var(--muted)}.pagination span{margin-right:auto}.pagination a{color:var(--indigo);font-weight:700}.inline-category-form{display:grid;grid-template-columns:minmax(120px,1fr) minmax(170px,1.4fr) auto;gap:7px;align-items:center}.inline-category-form input{width:100%;min-height:33px;padding:6px 8px;border:1px solid #d2e0e8;border-radius:5px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.prd-document{max-width:1120px;margin:0 auto}.prd-intro{padding:clamp(22px,4vw,36px);background:linear-gradient(125deg,#e8f5f4,#edf4fa 70%,#fff)}.prd-intro h2{margin:0 0 12px;font-size:clamp(27px,4vw,38px);line-height:1.2;letter-spacing:-1px}.prd-intro>p:not(.eyebrow){max-width:800px;color:var(--muted);font-size:calc(14px * var(--system-font-scale, 1))}.prd-intro .prd-meta{margin:20px 0 0;padding-top:14px;border-top:1px solid #cfe0e5;font-size:calc(11px * var(--system-font-scale, 1))!important}.prd-meta span{padding:0 7px;color:var(--indigo)}.prd-section{padding:clamp(18px,3vw,26px)}.prd-section h2{margin:0 0 13px;font-size:calc(18px * var(--system-font-scale, 1));letter-spacing:-.4px}.prd-section h3{margin:0 0 8px;font-size:calc(14px * var(--system-font-scale, 1));letter-spacing:0}.prd-section p,.prd-list{color:var(--muted);font-size:calc(12px * var(--system-font-scale, 1));line-height:1.8}.prd-section p:last-child{margin-bottom:0}.prd-list{margin:0;padding-left:21px}.prd-list li+li{margin-top:7px}.prd-personas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.prd-personas article{padding:16px;border:1px solid var(--line);border-radius:9px;background:#fbfdfe}.prd-table{min-width:700px}.prd-table th,.prd-table td{padding:12px;line-height:1.65;white-space:normal}.prd-table th:first-child{width:74px;color:var(--indigo-dark)}.prd-table td:nth-child(2){min-width:150px;font-weight:700;color:var(--ink)}.prd-table td:last-child{min-width:360px;color:var(--muted)}
@media(max-width:600px){.prd-personas{grid-template-columns:minmax(0,1fr)}.prd-intro .prd-meta span{display:none}.prd-intro .prd-meta strong:nth-of-type(2){display:block;margin-top:8px}}
.help-document-links{margin-bottom:20px}.help-document-card{display:block;color:inherit;text-decoration:none;transition:transform .16s,border-color .16s,box-shadow .16s}.help-document-card:hover{transform:translateY(-2px);border-color:#9bd3d2;box-shadow:0 10px 24px #12395712}.help-document-card h2{margin:0 0 10px;font-size:calc(18px * var(--system-font-scale, 1))}.help-document-card p{color:var(--muted);font-size:calc(12px * var(--system-font-scale, 1));line-height:1.75}.help-document-card>strong{color:var(--indigo);font-size:calc(11px * var(--system-font-scale, 1))}.help-document-card>strong span{margin-left:5px}
.side-user .avatar{flex:0 0 48px;width:48px;height:48px;overflow:hidden;border:2px solid #76ded3;background:#d9f1ed}
.side-user .avatar img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:center}
.dashboard-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:15px 0}
.dashboard-chart{min-width:0;margin:0}
.chart-bars{display:flex;align-items:stretch;justify-content:space-around;gap:10px;min-height:180px;padding:12px 4px 0}
.chart-bar-column{display:grid;grid-template-rows:18px 1fr 20px;justify-items:center;align-items:end;gap:5px;min-width:24px;flex:1}
.chart-bar-value,.chart-bar-label{font-size:calc(10px * var(--system-font-scale, 1));font-weight:700;color:#597486}
.chart-bar-track{display:flex;align-items:end;justify-content:center;width:min(38px,80%);height:100%;min-height:105px;border-radius:8px 8px 3px 3px;background:#eff4f7;overflow:hidden}
.chart-bar-track i{display:block;width:100%;min-height:4px;border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,#0b6db8,#268fc2)}
.chart-bar-track i.chart-bar-teal{background:linear-gradient(180deg,#37b7bc,#087c89)}
.activity-pie-layout{display:flex;align-items:center;gap:20px;margin-top:12px}
.activity-pie{width:130px;height:130px;flex:0 0 130px;border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff,0 0 0 1px #d9e5ec}
.activity-pie-legend{display:grid;gap:9px}.activity-pie-legend>div{display:flex;align-items:center;gap:7px;font-size:calc(11px * var(--system-font-scale, 1));font-weight:700;color:#45677d}
.activity-pie-legend i{width:10px;height:10px;border-radius:50%}
.usage-trend-list{display:grid;gap:8px;margin-top:12px}
.usage-trend-row{display:grid;grid-template-columns:32px minmax(40px,1fr) 82px minmax(40px,1fr) 75px;align-items:center;gap:7px}
.usage-trend-row>b,.usage-trend-row>small{font-size:calc(9px * var(--system-font-scale, 1));color:#597486}.usage-trend-row>small{white-space:nowrap}
.usage-trend-track{display:block;height:8px;border-radius:8px;background:#eff4f7;overflow:hidden}.usage-trend-track i{display:block;height:100%;min-width:2px;border-radius:inherit;background:#0b6db8}.usage-trend-track i.usage-plan-bar{background:#37b7bc}
.chart-legend-dot{display:inline-block;width:8px;height:8px;margin:0 4px 0 8px;border-radius:50%;background:#0b6db8}.chart-legend-dot.plan{background:#37b7bc}
.student-dashboard-charts{align-items:stretch}.student-dashboard-charts .dashboard-chart{overflow:hidden}.chart-empty{min-height:150px;display:grid;place-items:center;text-align:center;padding:20px;color:#597486;font-size:calc(12px * var(--system-font-scale, 1))}.category-chart-legend{display:flex;gap:16px;margin:12px 0;color:#597486;font-size:calc(10px * var(--system-font-scale, 1));font-weight:700}.category-chart-legend i{display:inline-block;width:9px;height:9px;margin-right:5px;border-radius:3px;background:#0b6db8}.category-chart-legend .actual-key{background:#37b7bc}.category-chart-list{display:grid;gap:14px}.category-chart-row{display:grid;grid-template-columns:minmax(70px,110px) minmax(90px,1fr);align-items:center;gap:5px 12px}.category-chart-row>b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:calc(11px * var(--system-font-scale, 1));color:#23445a}.category-chart-bars{display:grid;gap:5px}.category-chart-track{display:block;height:8px;border-radius:8px;background:#eff4f7;overflow:hidden}.category-chart-track i{display:block;height:100%;min-width:2px;border-radius:inherit;background:#0b6db8}.category-chart-track.actual-track i{background:#37b7bc}.category-chart-row>small{grid-column:2;display:flex;justify-content:space-between;gap:6px;color:#597486;font-size:calc(9px * var(--system-font-scale, 1))}
.system-notice-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px}
.system-notice-panel h2{margin:0;font-size:calc(17px * var(--system-font-scale, 1))}.system-notice-panel p:not(.eyebrow){margin:5px 0 0;color:#587080;font-size:calc(12px * var(--system-font-scale, 1))}
.status-indicator{display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%;background:#25a887;box-shadow:0 0 0 3px #25a88720}
.notice.warning{padding:14px 16px;margin:12px 0;border-radius:9px;background:#fff6e8;color:#76501a;font-size:calc(12px * var(--system-font-scale, 1));line-height:1.6}
.backup-restore-form{min-width:220px;grid-template-columns:1fr auto;gap:6px;align-items:end}
.backup-restore-form .field{font-size:calc(10px * var(--system-font-scale, 1))}.backup-restore-form .field input{min-height:34px;padding:6px 8px}.backup-restore-form .form-actions{grid-column:auto;margin:0}
.report-print-header{display:none}
@media print{.report-print-header{display:block;padding:0 0 16px;border-bottom:1px solid #999;margin-bottom:18px}.report-print-header h2{font-size:calc(22px * var(--system-font-scale, 1))}.report-controls,.report-shortcuts,.note-panel{display:none!important}}
@page{size:A4 portrait;margin:16mm}
@media print{html,body.app-body{background:#fff!important;color:#111!important}.app-main{max-width:none!important;margin:0!important;padding:0!important}.report-print-header{color:#111!important}.report-print-header .eyebrow{color:#333!important}.report-print-header p:last-child{color:#444!important}.panel{border:0!important;border-radius:0!important;padding:0!important;margin:0 0 12mm!important;box-shadow:none!important;break-inside:auto!important}.panel-heading h2{color:#111!important}.table-wrap{overflow:visible!important}.table-wrap table{min-width:0!important;width:100%!important;font-size:9pt!important}thead{display:table-header-group}tr{break-inside:avoid;page-break-inside:avoid}th,td{color:#111!important;border-color:#bbb!important;background:transparent!important}.empty-state{color:#444!important}}
@media(max-width:700px){.expense-filters{display:grid;grid-template-columns:1fr 1fr}.expense-filters label{min-width:0}.inline-category-form{grid-template-columns:1fr}.pagination{flex-wrap:wrap}.pagination span{width:100%}}
@media(max-width:760px){.dashboard-chart-grid{grid-template-columns:1fr}.system-notice-panel{align-items:flex-start;flex-direction:column}.activity-pie-layout{gap:14px}}
@media(max-width:520px){.usage-trend-row{grid-template-columns:28px minmax(24px,1fr) 66px minmax(24px,1fr) 58px;gap:4px}.usage-trend-row>b,.usage-trend-row>small{font-size:calc(8px * var(--system-font-scale, 1))}.activity-pie{width:104px;height:104px;flex-basis:104px}.account-filters{display:grid;grid-template-columns:1fr!important}.admin-report-filters{display:grid;grid-template-columns:1fr!important}}
@media print{.row-actions,.table-actions,.pagination{display:none!important}}
.btn,.button,.auth-form > .btn,.header-cta{white-space:nowrap}

.category-edit-form{display:grid;gap:14px}.category-edit-form label{min-width:0}
