:root{font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#242322;background:#faf9f6;--brand:#861a22;--line:#dedbd6}*{box-sizing:border-box}body{margin:0}header{padding:18px max(22px,calc((100vw - 1160px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:white;gap:16px}.wordmark{color:var(--brand);font-weight:750;text-decoration:none;font-size:21px}main{max-width:1160px;margin:30px auto;padding:0 22px 70px}h1{font-size:32px;letter-spacing:-1px;margin:0 0 12px}h2{font-size:21px;margin:0 0 16px}h3{margin:0 0 8px}p{margin:8px 0 16px}.muted,small{color:#68655f}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.card{padding:24px;border:1px solid var(--line);border-radius:18px;background:white;margin:18px 0}.grid>.card{margin:0}.auth{max-width:480px;margin:8vh auto}.auth .card{padding:30px}label{display:block;font-weight:600;margin:14px 0}input,select,textarea{width:100%;display:block;padding:12px;border:1px solid #b9b5ae;border-radius:9px;font:inherit;background:white;color:inherit;margin-top:6px}input[type=checkbox]{display:inline;width:20px;height:20px;vertical-align:middle;margin:0 8px 0 0}button,.button{border:0;border-radius:999px;background:var(--brand);color:#fff;padding:11px 20px;font:600 15px/1.3 inherit;cursor:pointer;display:inline-block;text-decoration:none;min-height:44px}button:disabled{opacity:.5;cursor:wait}.secondary{background:#efede9;color:#242322}.danger{color:#a22020;background:#fbe8e6}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px}nav{display:flex;gap:8px;overflow:auto;margin:22px 0}nav button{white-space:nowrap}nav button[aria-current=true]{background:var(--brand);color:white}a{color:var(--brand)}.notice{padding:14px 18px;border-left:4px solid var(--brand);background:#f2efea;border-radius:8px;margin:16px 0}.error{color:#a82020;background:#fff0ee;padding:14px;border-radius:9px;white-space:pre-wrap}.success{color:#156a37}.scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top}th{font-weight:650;color:#5e5a54}td select{padding:7px;min-width:110px}code,.codes{font-family:ui-monospace,monospace;overflow-wrap:anywhere}.codes{padding:16px;background:#f2efea;line-height:1.9;white-space:pre-wrap}.badge{display:inline-block;border:1px solid var(--line);padding:3px 10px;border-radius:99px;font-size:12px;color:#625f58}.split{display:grid;grid-template-columns:1fr 1fr;gap:18px}.heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.error:empty{display:none}dialog{max-width:440px;width:90%;padding:26px;border:1px solid var(--line);border-radius:18px}dialog::backdrop{background:#0006}.module-list{display:flex;flex-wrap:wrap;gap:12px}.module-list label{margin:0;padding:9px 12px;border:1px solid var(--line);border-radius:10px;font-size:14px}details{margin-top:18px}summary{cursor:pointer;font-weight:600}.amount{font-size:29px;font-weight:750}.row{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line)}#identity{font-size:14px;display:flex;align-items:center;gap:12px}pre{white-space:pre-wrap;word-break:break-word}*:focus-visible{outline:3px solid #bf8e56;outline-offset:3px}@media(max-width:640px){main{padding:0 16px 50px;margin-top:22px}header{padding:16px}.split{grid-template-columns:1fr}.card{padding:18px}.auth{margin:4vh auto}h1{font-size:28px}#identity>span{display:none}}
#networkPeriod{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}#networkPeriod label{margin:0}.kpi{margin:0;min-height:190px}.kpi .amount{margin:10px 0}.kpi .badge{white-space:normal}.kpi p{font-size:14px}#networkPeriod input{min-width:180px}

/* Business cards keep words intact; wide tables scroll horizontally. */
.card,.kpi,.card *{word-break:normal;overflow-wrap:normal;hyphens:none}.card table{min-width:440px}.card input,.card select{min-width:0}.card .codes{overflow-wrap:anywhere}


.archive-thread{display:block;width:100%;text-align:left;margin:8px 0}.archive-message{padding:16px 0;border-bottom:1px solid var(--line)}.archive-text{white-space:pre-wrap;overflow-x:auto;margin:8px 0}
