:root{--bg:#f4f5f2;--paper:#fff;--ink:#17211b;--muted:#718078;--line:#dfe5df;--accent:#d6f04c;--accent-dark:#557000;--blue:#2359e8;--danger:#bd3f45;--shadow:0 18px 48px rgba(36,51,39,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}button,input,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.topbar{height:76px;background:var(--paper);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,4vw,64px)}.brand-lockup{display:flex;align-items:center;gap:12px}.brand-mark{width:34px;height:34px;border-radius:9px;background:var(--ink);color:var(--accent);display:grid;place-items:center;font-weight:800;font-size:18px}.brand-name{font-weight:800;letter-spacing:.12em;font-size:13px}.brand-sub,.eyebrow,.panel-kicker{color:var(--muted);font-size:10px;letter-spacing:.16em;font-weight:700}.top-actions{display:flex;align-items:center;gap:12px}.domain-badge{border:1px solid var(--line);background:#f8faf7;padding:7px 11px;border-radius:999px;font-family:ui-monospace,monospace;color:#3e5945}.page{max-width:1500px;margin:auto;padding:clamp(24px,4vw,56px) clamp(18px,4vw,64px)}.hero-row{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:28px}.eyebrow{margin:0 0 8px;color:var(--accent-dark)}h1{font-size:clamp(30px,4vw,54px);letter-spacing:0;margin:0;font-weight:800}h2{font-size:21px;letter-spacing:0;margin:0}.lede{margin:9px 0 0;color:var(--muted)}.connection{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.status-dot{width:8px;height:8px;border-radius:50%;background:#d5ddd6}.status-dot.ok{background:#65a94e;box-shadow:0 0 0 4px rgba(101,169,78,.12)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.metric{background:var(--paper);border:1px solid var(--line);padding:18px 20px;min-height:124px}.metric-accent{background:var(--accent);border-color:var(--accent)}.metric-label{display:block;color:var(--muted);font-size:12px}.metric strong{display:block;font-size:33px;line-height:1.1;margin:14px 0 7px}.metric-note{color:var(--muted);font-size:11px}.workspace-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);gap:18px;align-items:start}.panel{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow)}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:22px 24px 17px;border-bottom:1px solid var(--line)}.panel-kicker{margin:0 0 4px;color:var(--muted)}.icon-button{border:1px solid var(--line);background:#fff;color:var(--ink);width:34px;height:34px;border-radius:8px;font-size:18px}.generator{display:flex;gap:9px;align-items:end;padding:17px 20px;border-bottom:1px solid var(--line);background:#fbfcfa}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field label{font-size:11px;color:var(--muted);font-weight:650}.field input,.field select{height:37px;border:1px solid var(--line);background:#fff;border-radius:7px;padding:0 10px;outline:none;color:var(--ink);min-width:0}.field input:focus,.field select:focus,.search-wrap input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(35,89,232,.1)}.grow{flex:1}.compact{width:74px}.button{height:37px;border:1px solid transparent;border-radius:7px;padding:0 12px;white-space:nowrap;font-weight:700;font-size:12px}.button-primary{background:var(--ink);color:#fff}.button-primary:hover{background:#314039}.button-ghost{background:#fff;border-color:var(--line);color:var(--ink)}.button-ghost:hover{border-color:#a6b4a9}.button-danger{background:#fff3f3;border-color:#f0cacc;color:var(--danger)}.button:disabled{opacity:.4;cursor:not-allowed}.toolbar{display:flex;align-items:center;gap:8px;padding:13px 20px;border-bottom:1px solid var(--line);flex-wrap:wrap}.search-wrap{height:35px;border:1px solid var(--line);display:flex;align-items:center;gap:7px;padding:0 9px;border-radius:7px;flex:1;min-width:140px;color:var(--muted)}.search-wrap input{border:0;outline:0;width:100%;background:transparent}.selection-label{font-size:11px;color:var(--muted);margin-right:auto}.table-wrap{overflow:auto;max-height:510px}table{border-collapse:collapse;width:100%;font-size:12px}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid #edf0ec;white-space:nowrap}th{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em;position:sticky;top:0;background:#fff;z-index:1}.check-col{width:38px;padding-left:20px}td:nth-child(2){font-family:ui-monospace,monospace;color:#314d3d}.address-row{cursor:pointer}.address-row:hover{background:#fafcf8}.address-row.selected{background:#f4f8e8}.pill{display:inline-flex;padding:3px 7px;border-radius:999px;font-size:10px;background:#edf5df;color:#557000}.muted{color:var(--muted);font-size:12px}.empty{padding:44px 20px;text-align:center;color:var(--muted);font-size:12px}.reader-panel{min-height:680px}.message-list{max-height:270px;overflow:auto}.message-item{padding:14px 20px;border-bottom:1px solid #edf0ec;cursor:pointer}.message-item:hover,.message-item.active{background:#f6f9f3}.message-subject{font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-meta{display:flex;gap:9px;color:var(--muted);font-size:11px;margin-top:5px}.message-preview{color:#5e6d64;font-size:12px;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reader-empty{padding:80px 20px}.message-detail{border-top:1px solid var(--line);padding:20px}.detail-head{margin-bottom:14px}.detail-subject{font-size:18px;font-weight:800;word-break:break-word}.detail-meta{color:var(--muted);font-size:11px;margin-top:8px;line-height:1.7}.detail-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);margin-bottom:14px}.tab-button{border:0;background:none;padding:8px 4px;color:var(--muted);font-size:12px;border-bottom:2px solid transparent}.tab-button.active{color:var(--ink);border-color:var(--ink);font-weight:750}.body-view{max-height:260px;overflow:auto;background:#f8faf7;border:1px solid var(--line);padding:14px;white-space:pre-wrap;word-break:break-word;font:12px/1.65 ui-monospace,monospace}.body-view.html-view{background:#fff;white-space:normal;font-family:inherit}.attachments{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.attachment{border:1px solid var(--line);padding:6px 8px;border-radius:6px;color:#3f5c49;font-size:11px;text-decoration:none}.schedules-panel{margin-top:18px}.schedule-list{padding:0 24px}.schedule-item{display:flex;align-items:center;gap:14px;border-bottom:1px solid #edf0ec;padding:14px 0}.schedule-item:last-child{border-bottom:0}.schedule-name{font-weight:750;min-width:130px}.schedule-info{color:var(--muted);font-size:12px;flex:1}.footer{text-align:center;color:var(--muted);font-size:10px;letter-spacing:.14em;padding:30px}.footer span{margin:0 5px}.toast{position:fixed;right:22px;bottom:22px;background:var(--ink);color:#fff;padding:11px 14px;border-radius:8px;font-size:12px;opacity:0;transform:translateY(12px);transition:.2s;pointer-events:none}.toast.show{opacity:1;transform:translateY(0)}.hidden{display:none!important}.modal-backdrop{position:fixed;inset:0;background:rgba(23,33,27,.32);display:grid;place-items:center;padding:20px;z-index:10}.modal{background:#fff;border:1px solid var(--line);width:min(560px,100%);box-shadow:0 25px 70px rgba(23,33,27,.2)}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--line)}.modal-head h3{margin:0;font-size:18px}.modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:22px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;padding:15px 22px;border-top:1px solid var(--line)}
@media(max-width:1080px){.workspace-grid{grid-template-columns:1fr}.reader-panel{min-height:0}.message-list{max-height:300px}}@media(max-width:720px){.topbar{height:auto;padding:16px 18px;align-items:flex-start;gap:14px}.top-actions{flex-direction:column;align-items:flex-end;gap:7px}.top-actions .button span{display:none}.page{padding:28px 14px}.hero-row{align-items:flex-start;gap:16px;flex-direction:column}.metrics{grid-template-columns:1fr 1fr}.generator{flex-wrap:wrap}.grow{flex-basis:calc(100% - 10px)}.compact{width:calc(33.333% - 8px)}.generator .button-primary{width:100%}.toolbar .button{flex:1}.selection-label{width:100%;margin:0}.modal-grid{grid-template-columns:1fr}}
