*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#f3f5f8;color:#1e2530;font-size:15px}
a{color:#1d5fd0}.top{background:#1e2530;color:#fff;display:flex;align-items:center;gap:24px;padding:0 20px;height:52px}
.brand{font-weight:700;font-size:17px}.top nav{display:flex;gap:4px;margin-left:auto}.top nav a{color:#cdd3dc;text-decoration:none;padding:8px 12px;border-radius:6px}
.top nav a.active,.top nav a:hover{background:#334155;color:#fff}.top nav a.muted{opacity:.7}
main{max-width:1100px;margin:0 auto;padding:20px}h1{font-size:22px;margin:0 0 16px}h2{font-size:17px;margin:0 0 12px}
.card{background:#fff;border:1px solid #e2e6ec;border-radius:10px;padding:18px;margin-bottom:18px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width:800px){.grid{grid-template-columns:1fr}}
label{display:block;font-weight:600;margin:10px 0 4px;font-size:13px}input[type=text],input[type=password],input[type=search],textarea,select{width:100%;padding:8px 10px;border:1px solid #c9d0da;border-radius:6px;font:inherit}
textarea{min-height:120px;resize:vertical}.hint{color:#667085;font-size:12.5px;margin-top:4px}
.btn{display:inline-block;background:#1d5fd0;color:#fff;border:0;padding:9px 16px;border-radius:6px;font:inherit;font-weight:600;cursor:pointer;text-decoration:none}
.btn:hover{background:#174ca8}.btn.sec{background:#e6eaf0;color:#1e2530}.btn.danger{background:#d0342c}.btn.sm{padding:5px 10px;font-size:13px}.btn:disabled{opacity:.5;cursor:default}
table{width:100%;border-collapse:collapse;background:#fff}th,td{padding:8px 10px;border-bottom:1px solid #eceff3;text-align:left;font-size:14px}th{background:#f8f9fb;font-size:12.5px;text-transform:uppercase;color:#556}
tr:hover td{background:#fafbfd}.alert{padding:10px 14px;border-radius:8px;margin-bottom:14px}.alert.ok{background:#e4f7ea;color:#14532d}.alert.err{background:#fde8e7;color:#7f1d1d}.alert.warn{background:#fff4d6;color:#7a4b00}
.badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:12px;background:#e6eaf0}.badge.ok,.badge.delivered,.badge.sent{background:#d1f2dc;color:#14532d}.badge.failed,.badge.undelivered{background:#fde0de;color:#7f1d1d}.badge.queued,.badge.sending,.badge.accepted{background:#e0ecff;color:#1e3a8a}
.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.right{margin-left:auto}.stats{display:flex;gap:14px;flex-wrap:wrap}.stat{background:#fff;border:1px solid #e2e6ec;border-radius:10px;padding:14px 18px;min-width:140px}.stat b{display:block;font-size:24px}.stat span{color:#667085;font-size:13px}
.progress{height:14px;background:#e6eaf0;border-radius:7px;overflow:hidden}.progress i{display:block;height:100%;background:#1d5fd0;transition:width .3s}
.login{max-width:360px;margin:80px auto}.chk{display:flex;gap:8px;align-items:center;font-weight:400;margin:6px 0}
pre.small{font-size:12px;background:#f8f9fb;padding:10px;border-radius:6px;overflow:auto}
.tabs{display:flex;gap:6px;margin-bottom:12px}.tabs a{padding:6px 12px;border-radius:6px;background:#e6eaf0;color:#1e2530;text-decoration:none}.tabs a.active{background:#1d5fd0;color:#fff}

.glist{margin:6px 0 6px 22px;background:#f8f9fb;border:1px solid #e2e6ec;border-radius:8px;padding:10px}
.glist-box{max-height:320px;overflow:auto;background:#fff;border:1px solid #e2e6ec;border-radius:6px}
.glist-box label{display:flex;gap:8px;align-items:center;font-weight:400;margin:0;padding:5px 10px;border-bottom:1px solid #f0f2f5;font-size:13.5px}
.glist-box label.sent{background:#fff1e0}.glist-box label.sent .ph{color:#9a5b00}.glist-box label .nm{color:#556}.glist-box label .badge{margin-left:auto}
.glist-box label:hover{filter:brightness(.98)}
.badge.cancelled{background:#e6eaf0;color:#556;text-decoration:line-through}
