*{box-sizing:border-box}body{margin:0;font:16px/1.4 -apple-system,system-ui,sans-serif;background:#f3f6fa;color:#1a2330;padding-bottom:90px}
header{position:sticky;top:0;background:#0b5394;color:#fff;padding:12px 14px;display:flex;justify-content:space-between;align-items:center;z-index:5}
header span{font-size:13px;opacity:.85}main{padding:12px;max-width:720px;margin:auto}
nav{position:sticky;top:46px;display:flex;background:#fff;border-bottom:1px solid #ccd;z-index:4}
nav button{flex:1;border:0;background:none;padding:14px 2px;font-size:14px;color:#456}nav button.on{color:#0b5394;font-weight:700;border-bottom:3px solid #0b5394}
.card{background:#fff;border-radius:10px;padding:12px;margin:8px 0;box-shadow:0 1px 2px #0001}
.lead{cursor:pointer}.lead small,.muted{color:#678}.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
input,select,textarea,button.b{font:inherit;padding:11px;border:1px solid #bcc6d2;border-radius:8px;width:100%;margin:4px 0;background:#fff}
button.b{background:#0b5394;color:#fff;border:0;font-weight:600;cursor:pointer}button.b.alt{background:#e7eef7;color:#0b5394}button.b.warn{background:#b45309}
.acts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.acts a{display:block;text-align:center;padding:12px;border-radius:8px;background:#e7eef7;color:#0b5394;font-weight:700;text-decoration:none}
.badge{display:inline-block;font-size:12px;padding:2px 8px;border-radius:10px;background:#e7eef7;color:#0b5394}.due{background:#fde2e2;color:#a11}
h2{font-size:20px;margin:8px 0}label{font-size:13px;color:#456}#toast{position:fixed;bottom:90px;left:50%;transform:translateX(-50%);background:#1a2330;color:#fff;padding:10px 16px;border-radius:8px}
.tpl{display:block;width:100%;text-align:left;margin:6px 0}
.cnt{display:inline-block;min-width:18px;padding:0 5px;border-radius:9px;background:#c62828;color:#fff;font-size:11px;font-weight:700;line-height:18px}
.ok{background:#e3f4e6;color:#1b6e2b}.dnc{background:#1a2330;color:#fff}.att{background:#fff4d6;color:#8a5a00}.nc{background:#fde2e2;color:#a11}
.out{border:2px solid #0b5394}.out .b{padding:14px;font-size:17px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.grid3 .b{font-size:15px;padding:14px 4px}
button.b.go{background:#1b6e2b}button.b.stop{background:#a11}h3{font-size:16px;margin:14px 0 4px;color:#456}

.thread{max-height:360px;overflow:auto;margin:6px 0}.msg{max-width:85%;padding:8px 10px;border-radius:12px;margin:4px 0}.msg.in{background:#e7eef7}.msg.out{background:#0b5394;color:#fff;margin-left:auto}.msg small{opacity:.7;font-size:11px}
.tb{width:100%;border-collapse:collapse;font-size:14px}.tb td,.tb th{padding:5px;border-bottom:1px solid #e3e8ef;text-align:left}nav button{font-size:13px}

[hidden]{display:none!important}
#upd{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));background:#0b5394;color:#fff;padding:10px 14px;border-radius:10px;display:flex;justify-content:space-between;align-items:center;z-index:99}#upd button{width:auto;margin:0;background:#fff;color:#0b5394}
