:root{color-scheme:light;--ink:#183147;--muted:#536779;--line:#dce5eb;--brand:#203e59;--surface:#fff;--bg:#f4f7f9;--green:#226247}
*{box-sizing:border-box}html{scroll-padding-top:20px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.8 Tahoma,Arial,sans-serif;overflow-wrap:anywhere}
a{color:#214f79;text-underline-offset:4px}a:hover{color:#103450}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b47a18;outline-offset:4px}
.skip-link{position:absolute;inset-block-start:-100px;inset-inline-start:16px;z-index:10;background:white;padding:12px 20px;border:2px solid var(--brand)}.skip-link:focus{inset-block-start:12px}
.site-header{padding:18px max(20px,calc((100% - 1120px)/2));background:var(--brand);color:white;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.brand{display:grid}.site-header a{color:white;text-decoration:none}.brand a{font-size:20px;font-weight:bold}.brand span{font-size:12px;color:#d7e5ef}.account-nav{display:flex;align-items:center;gap:12px;margin-inline-start:auto;flex-wrap:wrap}.account-nav a{min-height:44px;display:inline-flex;align-items:center}.account-nav form{display:block;margin:0}.account-nav button{background:transparent;color:white;border-color:#a0b2c1}
main{max-width:1120px;margin:28px auto;padding:0 20px;min-width:0}h1{font-size:clamp(23px,3.2vw,30px)}h2{font-size:21px}h3{font-size:18px}h1,h2,h3{font-weight:600;line-height:1.6;margin:0 0 12px}p{margin:8px 0 16px}.muted,.hint{color:var(--muted)}.hint{font-size:14px}.eyebrow{font-size:13px;font-weight:bold;color:var(--green);margin-bottom:4px}.page-heading{margin-block:24px}.page-heading p{max-width:760px}.lead{font-size:17px;color:var(--muted)}
section{padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:14px;margin:18px 0;min-width:0}.section-heading,.row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.section-heading h2{margin:0}.section-heading{margin-bottom:16px}.section-heading p{margin:0}.empty-state{text-align:center;padding:24px;color:var(--muted);border:1px dashed #bdcbd6;border-radius:12px;background:#f8fafb}
form{display:grid;gap:16px}label{display:grid;gap:7px;min-width:0}input,textarea,select,button{font:inherit;max-width:100%;min-width:0}input,textarea,select{width:100%;border:1px solid #aabcca;border-radius:9px;padding:10px 12px;background:white;color:var(--ink);min-height:46px}textarea{resize:vertical;min-height:96px}input[type=file]{font-size:14px;line-height:1.6;padding:10px}input[type=email]{direction:ltr;text-align:left}button,.button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:9px 18px;border-radius:9px;border:1px solid #9caebe;background:white;color:var(--ink);text-decoration:none;cursor:pointer;line-height:1.6;text-align:center}button{justify-self:start}button:hover,.button:hover{background:#edf3f7}button.primary,.button{background:var(--brand);color:white;border-color:var(--brand)}button.primary:hover{background:#143047}.button.secondary{background:white;color:var(--brand)}button:disabled{cursor:not-allowed;opacity:.65}.field-error{color:#8e2929;font-size:14px}.form-help{padding:14px 16px;background:#f2f6f9;border-radius:10px;margin:0}.form-help p:last-child{margin-bottom:0}fieldset{min-width:0;border:1px solid var(--line);border-radius:10px;padding:18px;margin:0}legend{font-weight:bold;padding-inline:8px}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:18px 0}.stats section{margin:0;padding:20px;display:flex;flex-direction:column;gap:8px}.stats span,.stats strong{display:block}.stats span{font-size:14px;color:var(--muted)}.stats strong{font-size:clamp(22px,2.3vw,29px);font-weight:600;font-variant-numeric:tabular-nums;line-height:1.6}.stats small{font-size:12px;color:var(--muted)}.stats .fund-balance{background:#edf4f7;border-color:#c5d6e1}
.actions,.inline,nav,footer{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.actions{margin:20px 0}.inline{align-items:flex-end}.inline label{flex:1;min-width:170px}.badge,.tag{display:inline-block;padding:4px 12px;border-radius:7px;background:#edf2f6;font-size:13px}.badge.good,.tag.approved{background:#e5f2e9;color:#235c3d}.badge.warning,.tag.pending{background:#fff2d8;color:#725018}.tag.rejected{background:#fceeee;color:#822929}
.fund-context{padding:18px 20px;margin-top:0;background:white;border-radius:12px}.fund-context .fund-name{font-weight:bold;font-size:18px}.fund-context .context-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fund-context .context-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.fund-nav{margin-top:14px;border-top:1px solid var(--line);padding-top:12px;display:flex;gap:8px;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;white-space:nowrap;max-width:100%}.fund-nav a{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;border-radius:8px;text-decoration:none;flex-shrink:0}.fund-nav a[aria-current=page]{color:white;background:var(--brand)}.fund-nav a:hover{background:#e9f0f5;color:var(--brand)}
.notice{background:#e7f4eb;color:#20583c;padding:15px 18px;border-radius:10px;overflow-wrap:anywhere}.notice.warning{background:#fff3dc;color:#725018}.errors{background:#fff0ef;color:#822929;padding:16px 20px;border-radius:10px;border:1px solid #e9c1bd}.errors ul{padding-inline-start:24px;margin-bottom:0}.errors p{margin:0}.table{overflow-x:auto;max-width:100%;overscroll-behavior-inline:contain;scrollbar-width:thin}table{width:100%;border-collapse:collapse;text-align:right;font-size:14px;min-width:540px}td,th{padding:12px;border-bottom:1px solid var(--line);vertical-align:top}th{background:#f3f6f8;font-weight:600}td{font-variant-numeric:tabular-nums}.table td:first-child,.table th:first-child{min-width:120px}.pre{white-space:pre-wrap;overflow-wrap:anywhere}details{padding:14px 0;border-bottom:1px solid var(--line)}summary{cursor:pointer;min-height:44px;padding:7px 0;font-weight:600}details[open]>summary{margin-bottom:16px}.setup{border:1px solid var(--line);border-radius:12px;padding:14px 20px;background:white;margin:18px 0}.setup-list{list-style:none;padding:0;display:grid;gap:12px}.setup-list li{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding-bottom:10px;border-bottom:1px solid var(--line)}.receipt-list>section{border-inline-start:4px solid #c7d7e2}.receipt-list>section.pending{border-inline-start-color:#b7832d}.receipt-amounts{display:flex;gap:12px;flex-wrap:wrap}.receipt-amounts span{background:#f4f7f9;padding:6px 10px;border-radius:7px}.support-panel{background:#f7fafb}.support-panel summary{font-weight:normal}.auth{max-width:620px;margin:30px auto}.auth .intro{margin-bottom:24px}.auth .intro p{color:var(--muted)}.form-footer{border-top:1px solid var(--line);padding-top:18px;margin-top:20px}.site-footer{padding:28px 20px;justify-content:center;color:var(--muted);font-size:14px}.site-footer a{min-height:44px;display:inline-flex;align-items:center}
@media(max-width:700px){.site-header{padding:16px;gap:12px}.brand{width:100%}.account-nav{margin:0;width:100%;gap:16px}.account-nav form{margin-inline-start:auto}.account-nav button{padding:8px 12px;font-size:14px}main{padding:0 14px;margin-top:18px}.grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stats section{padding:14px}.stats strong{font-size:22px}.stats span{font-size:13px}section{padding:18px}.fund-context{padding:14px}.fund-nav{margin-inline:-2px;max-width:calc(100% + 4px)}.fund-nav a{padding:8px 10px;font-size:14px}.actions{display:grid;grid-template-columns:1fr;gap:10px}.actions .button{width:100%}.inline{display:grid;width:100%}.inline label{min-width:0;width:100%}.inline button{width:100%}.setup{padding:12px 16px}h2{font-size:19px}button{max-width:100%}input,textarea,select{font-size:16px}.receipt-amounts{display:grid;gap:8px}.row{align-items:flex-start}.site-footer{gap:8px 20px}}
@media(max-width:360px){.stats{grid-template-columns:1fr}.account-nav{gap:10px;font-size:14px}.brand a{font-size:18px}}
@media print{.site-header,.site-footer,.fund-nav,.skip-link,form,.actions{display:none!important}body{background:white;color:black}main{max-width:none;margin:0;padding:0}section{break-inside:avoid}.table{overflow:visible}table{min-width:0}.fund-context{border:0}}
.button:hover,button.primary:hover{background:#143047;color:white}.button.secondary:hover{background:#edf3f7;color:var(--brand)}.account-nav button:hover{background:#345570}.table:focus-visible{outline:3px solid #b47a18;outline-offset:3px}
