:root{font-family:system-ui,'Microsoft YaHei',sans-serif;color:#173f49;background:#f3f8f8;font-size:14px}*{box-sizing:border-box}body{margin:0}header{background:#103e49;color:white;padding:20px 4%;display:flex;align-items:center;gap:18px}header strong{font-size:21px;margin-right:auto}main{max-width:1300px;margin:28px auto;padding:0 24px}h1{font-size:27px}h2{font-size:19px}button,.button{cursor:pointer;border:1px solid #78c9c2;background:#81d8d0;color:#123e46;padding:10px 16px;border-radius:7px;font:inherit;text-decoration:none;display:inline-block}button:hover{filter:brightness(.96)}button.secondary{background:white;border-color:#cadadc}button.danger{background:#fff;color:#b42332;border-color:#e6b7bf}button:disabled{opacity:.5;cursor:wait}input,select,textarea{font:inherit;border:1px solid #c4d5d8;border-radius:6px;padding:10px;width:100%;background:white;color:#173f49}label{display:block;margin:12px 0}label span{display:block;margin-bottom:6px}small,.muted{color:#617e84}section,.card{background:white;padding:22px;border:1px solid #dce8e8;border-radius:12px;margin-bottom:20px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:15px}.cards .card strong{display:block;font-size:26px;margin-top:10px}.owed{color:#b42332}.toolbar{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin:18px 0}.toolbar label{min-width:155px;margin:0}.table{overflow:auto}table{border-collapse:collapse;width:100%;white-space:nowrap}th,td{padding:14px 12px;border-bottom:1px solid #e0e9e9;text-align:left}th{background:#dff5f2;font-weight:600}td button{padding:5px 10px}tr.void{color:#7f8f92;text-decoration:line-through}dialog{border:0;border-radius:14px;padding:26px;width:min(530px,94vw);max-height:90vh;box-shadow:0 18px 70px #103e4950}dialog::backdrop{background:#153c4977}dialog h2{margin-top:0}.login{max-width:390px;margin:12vh auto;background:white;padding:30px;border-radius:12px}.login h1{font-size:23px}.login button{width:100%;margin-top:12px}body:has(.login){background:#103e49;min-height:100vh;padding:1px}.error{color:#b42332;white-space:pre-wrap}#notice{position:fixed;right:20px;bottom:20px;background:#173f49;color:white;padding:14px;border-radius:8px;display:none}.preview{padding:14px;background:#e4f7f4;line-height:1.8;border-radius:8px}.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:600px){main{padding:0 12px}.cards{grid-template-columns:1fr 1fr}header{flex-wrap:wrap}header strong{width:100%}.row{grid-template-columns:1fr}}
fieldset{border:1px solid #cadadc;border-radius:8px;margin-top:16px}fieldset input[type=checkbox]{width:auto;margin-right:6px}
#language-control{display:flex;align-items:center;justify-content:flex-end;gap:10px;background:#e4f7f4;margin:0;padding:8px 4%;color:#173f49}#language-control select{width:125px;padding:6px}body:has(.login){padding-top:0}

label .password-entry{display:flex;align-items:stretch;gap:8px}.password-entry input{min-width:0;flex:1}.password-entry .password-toggle{width:auto;margin:0;flex-shrink:0;white-space:nowrap;padding:8px 10px}

.price-audience{white-space:normal;min-width:180px;max-width:340px}.audience-name{display:block;margin:3px 0}

body:has(.login){display:flow-root;background:#103e49 url('/login-wealth.png') center center / cover no-repeat fixed;min-height:100svh}
.login #language-control{background:transparent;color:#617e84;padding:0;margin:0 0 20px;gap:8px;font-size:12px}
.login #language-control select{width:105px;padding:6px 8px;font-size:13px}
.login h1{margin-top:0}
.login{box-shadow:0 20px 70px #0006;border:1px solid #ffffff80;margin:10vh auto 40px}
@media(max-width:600px){.login{width:calc(100% - 32px);padding:26px;margin-top:8vh}body:has(.login){background-position:35% center}}
