:root{--ink:#16202b;--ink2:#4a5b6b;--ink3:#7c8b99;--bg:#eef2f5;--panel:#fff;--panel2:#e9eef2;--line:#d5dee5;--line2:#e8edf1;--teal:#0f5f73;--teal-d:#0b4859;--teal-l:#e2f0f3;--good:#2c6b48;--good-l:#e6f2ea;--amber:#a8650a;--amber-l:#fdf2e2;--red:#a3261f;--red-l:#fbeceb}*{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:IBM Plex Sans Thai,Noto Sans Thai,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.5}.mono{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,ui-monospace,monospace}a{color:var(--teal);text-decoration:none}a:hover{color:var(--teal-d)}h1,h2,h3,p{margin:0}:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.card{background:var(--panel);border:1px solid var(--line);border-radius:10px}.btn{border:1px solid var(--line);background:var(--panel);height:44px;color:var(--ink);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-family:inherit;font-size:15px;font-weight:600;display:inline-flex}.btn:hover{background:var(--panel2)}.btn.pri{background:var(--teal);border-color:var(--teal);color:#fff}.btn.pri:hover{background:var(--teal-d)}.btn:disabled{opacity:.55;cursor:default}.lbl{color:var(--ink3);letter-spacing:.03em;margin-bottom:6px;font-size:12px;font-weight:600;display:block}.inp{border:1px solid var(--line);background:var(--panel);width:100%;height:44px;color:var(--ink);border-radius:8px;padding:0 12px;font-family:inherit;font-size:15px}.inp:focus{border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-l);outline:none}.alert{background:var(--red-l);color:var(--red);border:1px solid #eec4c1;border-radius:8px;padding:10px 14px;font-size:14px;font-weight:500}.chip{white-space:nowrap;border:1px solid #0000;border-radius:6px;align-items:center;gap:6px;height:24px;padding:0 9px;font-size:12px;font-weight:600;display:inline-flex}.chip.ok{background:var(--good-l);color:var(--good);border-color:#bcdac8}.chip.wait{background:var(--amber-l);color:var(--amber);border-color:#efd7ab}.chip.bad{background:var(--red-l);color:var(--red);border-color:#eec4c1}.chip.info{background:var(--teal-l);color:var(--teal);border-color:#b7d8de}.chip.mute{background:var(--panel2);color:var(--ink2);border-color:var(--line)}table{border-collapse:collapse;width:100%;font-size:14.5px}th{letter-spacing:.06em;text-transform:uppercase;color:var(--ink3);text-align:left;background:var(--panel2);border-bottom:1px solid var(--line);white-space:nowrap;padding:9px 12px;font-size:11.5px;font-weight:600}td{border-bottom:1px solid var(--line2);vertical-align:middle;padding:10px 12px}tbody tr:last-child td{border-bottom:none}
