:root{--bg:#08111f;--panel:#101b2d;--panel2:#142238;--line:#24344d;--text:#eef5ff;--muted:#8fa2bd;--blue:#4d8dff;--green:#35d07f;--red:#ff6474;--amber:#f6c85f}*{box-sizing:border-box}body{margin:0;background:linear-gradient(135deg,#07101d,#0c1627);color:var(--text);font:14px Inter,Segoe UI,Arial,sans-serif;display:flex;min-height:100vh}aside{width:230px;background:#08101c;border-right:1px solid var(--line);padding:24px 18px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;margin-bottom:32px}.brand>span,.logo{width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#377dff,#77a5ff);display:grid;place-items:center;font-size:22px;font-weight:900}.brand small{display:block;color:var(--muted)}nav{display:grid;gap:8px}nav a{color:#cbd8ec;text-decoration:none;padding:11px 13px;border-radius:10px}nav a:hover{background:#15233a}.logout{margin-top:auto;width:100%;background:transparent;border:1px solid var(--line);color:var(--muted);padding:10px;border-radius:9px}main{margin-left:230px;width:calc(100% - 230px);padding:28px;max-width:1700px}header,.head{display:flex;justify-content:space-between;align-items:center}header h1{margin:0;font-size:25px}header p,.head p{margin:5px 0;color:var(--muted)}.pill{background:#143523;color:#77e5a8;border:1px solid #25563a;border-radius:999px;padding:7px 11px}.statusbar,.cards,.twocol{display:grid;gap:14px;margin-top:20px}.statusbar{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.statusbar>div,.cards article,.panel{background:rgba(16,27,45,.95);border:1px solid var(--line);border-radius:15px}.statusbar>div{padding:13px;display:flex;gap:8px;align-items:center}.statusbar span{margin-left:auto;color:var(--muted)}i{width:9px;height:9px;border-radius:50%;display:block}i.up{background:var(--green);box-shadow:0 0 12px var(--green)}i.down{background:var(--red)}.cards{grid-template-columns:repeat(4,1fr)}.cards article{padding:18px}.cards small,.cards span{display:block;color:var(--muted)}.cards strong{display:block;font-size:34px;margin:9px 0}.twocol{grid-template-columns:1.4fr 1fr}.panel{padding:18px;margin-top:18px}.head h2{margin:0;font-size:17px}.button,button{background:var(--blue);border:0;color:#fff;border-radius:9px;padding:10px 14px;text-decoration:none;cursor:pointer}.actions{display:flex;gap:10px;flex-wrap:wrap}.filters{display:flex;gap:9px;margin:16px 0;flex-wrap:wrap}.filters input,.filters select,.loginbox input{background:#0b1525;border:1px solid var(--line);color:var(--text);border-radius:9px;padding:10px}.filters input:first-child{min-width:330px;flex:1}.tablewrap{overflow:auto}.tablewrap.short{max-height:390px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:11px;border-top:1px solid var(--line);vertical-align:top}th{color:var(--muted);font-size:12px;text-transform:uppercase}.mono,pre{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.state{padding:4px 8px;border-radius:999px}.state.sent{background:#133c29;color:#75e4a6}.state.deferred{background:#4b3c12;color:#ffe083}.state.bounced,.state.expired{background:#4b2028;color:#ff9ba5}.bars{height:180px;display:flex;gap:5px;align-items:end;padding-top:20px}.bars>div{flex:1;height:100%;display:flex;align-items:end;position:relative}.bars span{display:block;width:100%;min-height:3px;background:linear-gradient(#6da1ff,#346fe2);border-radius:5px 5px 0 0}.bars small{position:absolute;bottom:-18px;color:var(--muted)}.timeline article{display:grid;grid-template-columns:190px 1fr;gap:15px;padding:15px 0;border-top:1px solid var(--line)}.timeline time{color:var(--muted)}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#091321;padding:12px;border-radius:8px;color:#bcd0e9}.logs>div{border-top:1px solid var(--line);padding:12px 0}.logs time{color:var(--muted);margin-right:14px}.flash{margin-top:15px;padding:12px;border-radius:9px}.flash.error{background:#48222a;color:#ffb0b9}.flash.ok{background:#163b29;color:#89e7af}.muted{color:var(--muted)}.loginbody{display:grid;place-items:center}.loginbox{width:min(390px,92vw);background:var(--panel);padding:30px;border:1px solid var(--line);border-radius:18px;box-shadow:0 25px 80px #0008}.loginbox .logo{margin:auto}.loginbox h1{text-align:center}.loginbox>p{text-align:center;color:var(--muted)}.loginbox label{display:grid;gap:7px;margin:13px 0}.loginbox button{width:100%;margin-top:8px}@media(max-width:900px){aside{display:none}main{margin:0;width:100%;padding:15px}.cards,.twocol{grid-template-columns:1fr 1fr}}@media(max-width:600px){.cards,.twocol{grid-template-columns:1fr}.filters input:first-child{min-width:100%}}
.cards.six{grid-template-columns:repeat(6,1fr)}.metricgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.metricgrid>div{background:#0b1525;border:1px solid var(--line);border-radius:10px;padding:12px}.metricgrid b,.metricgrid span{display:block;color:var(--muted)}.metricgrid strong{display:block;font-size:24px;margin:6px 0}.good{color:var(--green)}.warn{color:var(--amber)}.checklist{display:grid;gap:8px;margin:14px 0}.checklist>div{display:flex;justify-content:space-between;gap:12px;padding:10px;border-bottom:1px solid var(--line)}.checklist span{color:var(--muted)}@media(max-width:1200px){.cards.six{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.cards.six,.metricgrid{grid-template-columns:1fr 1fr}}
.alerts{display:grid;gap:8px;margin-top:18px}.alert,.allok{border-radius:11px;padding:11px 14px;display:flex;gap:12px;align-items:center}.alert.critical{background:#4b2028;border:1px solid #7b3541;color:#ffb6bd}.alert.warning{background:#493b16;border:1px solid #705d27;color:#ffe294}.allok{margin-top:18px;background:#143523;border:1px solid #25563a;color:#86e8af}.threecol{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.servicegrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-top:14px}.servicegrid>div{background:#0b1525;border:1px solid var(--line);border-radius:10px;padding:11px;display:flex;gap:8px;align-items:center}.servicegrid span{margin-left:auto;color:var(--muted)}.checklist i{display:inline-block;margin-right:8px}.certgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:14px 0}.certgrid>div{display:flex;justify-content:space-between;background:#0b1525;border:1px solid var(--line);padding:11px;border-radius:10px}.certgrid span{color:var(--muted)}.mail-chart{display:flex;align-items:flex-end;gap:12px;min-height:240px;padding:24px 10px 34px;overflow-x:auto;border-bottom:1px solid #29405f}.mail-chart-item{position:relative;flex:1 0 38px;min-width:38px;height:190px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}.mail-chart-bar{display:block;width:26px;flex:none;background:linear-gradient(180deg,#63adff,#438cff 45%,#2768e8);border-radius:6px 6px 2px 2px;box-shadow:0 0 12px rgba(69,137,255,.3)}.mail-chart-value{margin-bottom:6px;font-size:12px}.mail-chart-hour{position:absolute;bottom:-25px;color:var(--muted)}
.mail-chart-h-1{height:8px}.mail-chart-h-2{height:16px}.mail-chart-h-3{height:24px}.mail-chart-h-4{height:32px}.mail-chart-h-5{height:40px}.mail-chart-h-6{height:48px}.mail-chart-h-7{height:56px}.mail-chart-h-8{height:64px}.mail-chart-h-9{height:72px}.mail-chart-h-10{height:80px}.mail-chart-h-11{height:88px}.mail-chart-h-12{height:96px}.mail-chart-h-13{height:104px}.mail-chart-h-14{height:112px}.mail-chart-h-15{height:120px}.mail-chart-h-16{height:128px}.mail-chart-h-17{height:136px}.mail-chart-h-18{height:144px}.mail-chart-h-19{height:152px}.mail-chart-h-20{height:160px}@media(max-width:1200px){.threecol{grid-template-columns:1fr 1fr}}@media(max-width:700px){.threecol{grid-template-columns:1fr}}

/* Spam Center */
.spam-kpis,
.spam-dashboard-cards {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 18px;
}

.spam-dashboard-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.spam-kpis article,
.spam-dashboard-cards a {
    display: flex;
    flex-direction: column;
    gap: 7px;
    padding: 18px;
    border: 1px solid #263d5b;
    border-radius: 14px;
    background: linear-gradient(145deg, #14233a, #101c2e);
    text-decoration: none;
    color: inherit;
}

.spam-kpis small,
.spam-dashboard-cards small {
    color: #91a9c9;
}

.spam-kpis strong,
.spam-dashboard-cards strong {
    font-size: 30px;
    color: #f2f7ff;
}

.spam-kpis span,
.spam-dashboard-cards span {
    color: #7893b7;
    font-size: 13px;
}

.spam-filter {
    display: grid;
    grid-template-columns: minmax(240px, 1fr) 170px auto;
    gap: 10px;
    margin-bottom: 18px;
}

.spam-filter input,
.spam-filter select {
    min-height: 42px;
    padding: 0 12px;
    border: 1px solid #294362;
    border-radius: 9px;
    background: #0d192a;
    color: #e5eefc;
}

.spam-address {
    max-width: 320px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.spam-score {
    display: inline-flex;
    justify-content: center;
    min-width: 58px;
    padding: 4px 7px;
    border-radius: 7px;
    font-weight: 700;
}

.spam-score.ok {
    color: #75e5a1;
    background: rgba(31, 178, 95, .12);
}

.spam-score.warning {
    color: #ffc768;
    background: rgba(255, 167, 38, .13);
}

.spam-score.critical {
    color: #ff8282;
    background: rgba(255, 72, 72, .14);
}

.spam-symbols {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    max-width: 380px;
}

.spam-symbols span {
    padding: 3px 6px;
    border: 1px solid #304d72;
    border-radius: 6px;
    background: #122239;
    color: #a9c7ed;
    font-size: 11px;
}

table td small {
    display: block;
    margin-top: 4px;
    color: #7893b7;
}

@media (max-width: 1000px) {
    .spam-kpis {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .spam-filter {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 650px) {
    .spam-kpis,
    .spam-dashboard-cards {
        grid-template-columns: 1fr;
    }
}
