:root{font-family:system-ui,-apple-system,"Microsoft YaHei",sans-serif;color:#17283d;background:#f2f5fa;font-size:16px;line-height:1.6}*{box-sizing:border-box}body{margin:0}header{background:#132b47;color:white;padding:1.1rem max(5vw,1rem);display:flex;align-items:center;gap:2rem;flex-wrap:wrap}header a{color:white;text-decoration:none}nav{display:flex;gap:1.5rem;flex:1}.brand{font-weight:750;font-size:1.35rem}main{max-width:1180px;margin:2.5rem auto;padding:0 1rem}h1{font-size:2rem;line-height:1.3}h2{font-size:1.3rem}.login{max-width:440px;margin:8vh auto}.eyebrow{color:#126fa0;font-weight:700}section,.panel{background:white;padding:1.5rem;border:1px solid #dbe3ed;border-radius:12px;margin-bottom:1.5rem}label{display:block;font-size:.95rem;margin-bottom:1rem}input,select,textarea,button{font:inherit;border-radius:6px;padding:.6rem .8rem}input,select,textarea{display:block;width:100%;border:1px solid #9facbd;background:#fff;color:#17283d}button{background:#146b99;color:white;border:1px solid transparent;cursor:pointer}button:hover{background:#105579}.secondary{background:transparent;border-color:#a7bacb}.secondary.danger{color:#c92a2a;border-color:#f0a8a8}.secondary.danger:hover{background:#fff5f5;border-color:#e03131}a{color:#075f91}form.inline,.filters{display:flex;gap:1rem;align-items:end;flex-wrap:wrap}form.inline label,.filters label{flex:1;min-width:140px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.amount{font-size:1.8rem;font-weight:750;font-variant-numeric:tabular-nums}.muted{color:#52667d}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;white-space:nowrap}td,th{text-align:left;padding:.8rem;border-bottom:1px solid #dbe3ed}th{font-size:.9rem;color:#52667d}.notice,[role=alert]{padding:1rem;background:#fff3ce;border-left:4px solid #b8860b}details{margin:1rem 0}summary{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #e89c16;outline-offset:3px}@media(max-width:600px){header{gap:1rem}main{margin:1.5rem auto}nav{order:3;flex-basis:100%}h1{font-size:1.6rem}section{padding:1rem}}
