:root{--navy:#0f1f3d;--gold:#d4a72c;--bg:#f4f5f8;--text:#14213d;--muted:#5b6475;--ok:#1e7d3a;--bad:#b3261e}
*{box-sizing:border-box}body{margin:0;font:17px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--text)}
header{background:var(--navy);color:#fff;padding:14px 16px;display:flex;align-items:center;gap:10px;position:sticky;top:0;z-index:5}
header img{width:34px;height:34px;border-radius:8px}header h1{font-size:19px;margin:0;font-weight:700}header .sub{color:var(--gold);font-size:13px}
main{max-width:640px;margin:0 auto;padding:16px}
.card{background:#fff;border-radius:14px;padding:16px;margin:0 0 14px;box-shadow:0 1px 3px rgba(0,0,0,.08)}
h2{font-size:18px;margin:0 0 10px}
input[type=text],input[type=password],textarea{width:100%;font:inherit;padding:12px;border:1px solid #c9cfdb;border-radius:10px;background:#fff}
textarea{min-height:90px;resize:vertical}
button{font:inherit;font-weight:600;border:0;border-radius:10px;padding:13px 16px;background:var(--navy);color:#fff;cursor:pointer}
button.gold{background:var(--gold);color:var(--navy)}button.ghost{background:#e7eaf1;color:var(--text)}button.danger{background:#fbe9e7;color:var(--bad)}
button.big{width:100%;font-size:18px;padding:16px}button:disabled{opacity:.5}
.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.muted{color:var(--muted);font-size:14px}
.ok{color:var(--ok)}.bad{color:var(--bad)}.hide{display:none!important}
.msg{border-left:5px solid var(--gold);background:#fff;border-radius:12px;padding:14px;margin:0 0 12px;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.msg .text{font-size:22px;font-weight:600;margin:0 0 8px;word-wrap:break-word}
.msg.acked{border-left-color:#9aa3b5;opacity:.85}.msg.test .text{font-size:17px;font-weight:500}
.steps{padding-left:20px;margin:8px 0}.steps li{margin:0 0 10px}
.ico{display:inline-block;vertical-align:middle;width:26px;height:26px;margin:0 2px;background:#eef1f7;border-radius:6px;padding:3px}
.notice{background:#fff7e0;border:1px solid #f0d58a;border-radius:12px;padding:14px;margin:0 0 14px}
.emp{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #eceff4;gap:8px}
.emp label{display:flex;gap:10px;align-items:center;flex:1}.emp input{width:22px;height:22px}
.pill{font-size:12px;padding:2px 8px;border-radius:99px;background:#e7f4ea;color:var(--ok)}.pill.no{background:#fbe9e7;color:var(--bad)}
table{width:100%;border-collapse:collapse;font-size:14px}td{padding:6px 4px;border-top:1px solid #eceff4;vertical-align:top}
