*{box-sizing:border-box}body{margin:0;background:#f5f7fb;color:#172638;font:17px system-ui,-apple-system,sans-serif}header{display:flex;justify-content:space-between;align-items:center;padding:20px 5%;background:white;border-bottom:1px solid #e3e8f0}a{color:#123b8a;text-decoration:none}.brand{display:flex;gap:12px;font-weight:750;font-size:32px}.brand span{font-size:24px}.brand small{display:block;font-weight:400;font-size:14px;color:#61738d}button{background:#123b8a;color:white;border:0;border-radius:12px;padding:13px 20px;font:inherit;cursor:pointer;min-height:46px}button:disabled{cursor:wait;opacity:.6}#workspace{display:grid;grid-template-columns:240px minmax(0,1fr);max-width:1600px;margin:auto}nav{padding:28px 16px;display:flex;flex-direction:column;gap:6px}nav button{background:transparent;color:#61738d;text-align:left;font-size:16px}nav button.active{background:#123b8a;color:white}main{padding:28px 36px;min-width:0}.heading{display:flex;align-items:center;justify-content:space-between;gap:16px}h1{font-size:30px;margin:0 0 20px}h2{font-size:23px;margin:0 0 18px}p{line-height:1.6}small,.muted{color:#61738d}#notice:empty{display:none}#notice{padding:14px;background:#fff0d3;border-radius:12px}.card{padding:26px;background:white;border:1px solid #e3e8f0;border-radius:20px;margin-bottom:20px;overflow-wrap:anywhere}.balance{font-size:clamp(34px,5vw,64px);font-weight:750;margin:12px 0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.actions{display:flex;gap:12px;flex-wrap:wrap}.actions a{padding:13px 20px;background:#edf2fc;border-radius:12px}.status{display:inline-block;padding:6px 10px;background:#edf2fc;color:#123b8a;border-radius:8px;font-size:14px}.warning{background:#fff0d3;color:#8b5000}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;min-width:600px;font-size:16px}th,td{text-align:left;padding:14px 12px;border-bottom:1px solid #e3e8f0;vertical-align:top}th{color:#61738d;font-weight:500}.login{margin:10vh auto;padding:34px;background:white;border-radius:22px;width:min(560px,92vw)}input,select{font:inherit;width:100%;padding:13px;border:1px solid #d5deec;border-radius:10px;background:white}label{display:block;font-size:15px;margin-bottom:6px}form .grid{margin-bottom:18px}form p{font-size:15px}#filters{max-width:420px;margin-bottom:20px}[hidden]{display:none!important}@media(max-width:850px){#workspace{display:block}nav{flex-direction:row;overflow:auto;padding:14px;gap:4px}nav button{white-space:nowrap;flex-shrink:0}main{padding:20px 16px}header{padding:16px}.card{padding:20px}h1{font-size:26px}.heading button{padding:10px 14px}.grid{grid-template-columns:1fr}body{font-size:17px}}
.brand{align-items:center}.brand-fish{display:block;width:64px;height:64px;object-fit:cover;border-radius:15px;flex-shrink:0}

.recipient-list{display:flex;flex-direction:column;gap:8px;margin:14px 0}.recipient-choice{text-align:left;background:#edf2fc;color:#123b8a;overflow-wrap:anywhere}.secondary{background:#edf2fc;color:#123b8a}#invoiceSendPanel{scroll-margin-top:20px}#invoiceRecipientForm .grid{margin-bottom:14px}

.center-links{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.center-links span{color:#123b8a;font-weight:700}.heading .actions{justify-content:flex-end}dialog{width:min(600px,94vw);max-height:90vh;overflow:auto;border:1px solid #d5deec;border-radius:20px;padding:26px;color:#172638}dialog::backdrop{background:#17263888}dialog textarea{font:inherit;width:100%;padding:13px;border:1px solid #d5deec;border-radius:10px;margin:8px 0 16px}dialog label{margin-top:18px}dialog h2{margin:0}#bankVoiceStatus{white-space:pre-wrap}@media(max-width:600px){header{flex-wrap:wrap;gap:14px}.heading{align-items:flex-start;flex-wrap:wrap}.heading .actions{justify-content:flex-start}dialog{padding:20px}}

#bankVoiceOpen{display:flex;align-items:center;justify-content:center;gap:8px;padding:6px 10px;font-size:12px;white-space:nowrap;user-select:none;touch-action:none}#bankVoiceOpen img{width:36px;height:36px;object-fit:cover;border-radius:8px}#bankVoiceOpen.listening{box-shadow:inset 0 0 0 2px #fff,0 0 0 2px #123b8a}#bankVoiceLive{color:#123b8a;background:#edf2fc;padding:12px 16px;border-radius:12px;overflow-wrap:anywhere}@media(max-width:700px){#bankVoiceOpen span{display:none}}
