:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#25262a;background:#f4f4f6;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer;border:1px solid #d9d9dd;border-radius:7px;background:#fff;padding:8px 12px;color:inherit}button:hover{background:#f0f1f4}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #88baff;outline-offset:2px}button.primary{background:#087bfa;border-color:#087bfa;color:white}button.danger{color:#bd3131}.muted,small{color:#777d87}header{height:76px;display:flex;align-items:center;gap:24px;padding:0 24px;background:#fafafb;border-bottom:1px solid #ddd}header h1{font-size:19px;font-weight:650;margin:0}header .brand{color:#087bfa;font-size:26px}header .spacer{flex:1}.toolbar{height:66px;display:flex;align-items:center;gap:10px;padding:0 24px;border-bottom:1px solid #dedee3;background:#fff}.toolbar input{max-width:300px;margin-left:auto}.layout{display:grid;grid-template-columns:218px 68px 290px minmax(340px,1fr);height:calc(100dvh - 142px)}.pane{min-width:0;overflow:auto;border-right:1px solid #dedee3;background:#fff}.sidebar{background:#f0f0f4;padding:20px 12px}.heading{text-transform:uppercase;letter-spacing:1px;color:#858891;font-size:10px;font-weight:700;margin:0 0 14px 12px}.group{display:flex;align-items:center;justify-content:space-between;margin:4px 0}.group>button:first-child{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.group button,.letters button,.person{border:0;background:transparent}.group.selected>button:first-child{background:#dce7f8;color:#125aaa}.group .manage{padding:5px;color:#858891}.group small{margin-left:6px}.sidebar .new-group{margin-top:18px;width:100%;background:transparent;border-style:dashed;color:#626975}.letters{padding:20px 12px;text-align:center}.letters .heading{margin-left:0}.letters button{display:block;width:100%;padding:5px 0;color:#757a83;margin-bottom:1px}.letters button.active{color:white;background:#087bfa;border-radius:6px}.list-title{padding:20px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;font-weight:600}.person{display:flex;width:100%;gap:12px;text-align:left;padding:16px;border-bottom:1px solid #eee;border-radius:0;align-items:center}.person.selected{background:#eaf2ff}.avatar{background:#eef0f4;color:#747b8c;border-radius:50%;width:37px;height:37px;display:grid;place-items:center;font-size:13px;flex-shrink:0}.person strong{display:block;font-weight:550;margin-bottom:5px}.person small{display:block;max-width:200px;overflow:hidden;text-overflow:ellipsis}.details{padding:32px;max-width:800px;margin:auto}.details-head{display:flex;gap:16px;align-items:center;margin-bottom:28px}.details-head .avatar{height:60px;width:60px;font-size:22px;background:#e5edfa;color:#4371b4}.details h2{font-size:23px;font-weight:600;margin:0 0 7px}.badge{display:inline-block;padding:5px 9px;border-radius:5px;background:#f0f1f4;color:#6d7380;font-size:11px}.badge.green{background:#e5f4ea;color:#277945}.field{display:block;margin-bottom:19px}.field>span{display:block;font-size:12px;color:#747984;margin-bottom:7px}input,textarea,select{border:1px solid #dcdfe5;border-radius:7px;background:#fff;padding:10px 11px;width:100%;color:#25262a}textarea{resize:vertical;min-height:85px}.checks{display:flex;gap:12px;flex-wrap:wrap;margin:10px 0 22px}.checks label{display:flex;gap:6px;align-items:center}.checks input,input[type=checkbox]{width:auto}.actions{display:flex;gap:8px;align-items:center;margin:24px 0}.actions .danger{margin-left:auto}.empty{padding:70px 24px;color:#9297a0;text-align:center;line-height:1.8}.empty .icon{font-size:42px;color:#bdc4cf;margin-bottom:15px}.card{max-width:440px;margin:12vh auto;background:white;border:1px solid #e0e1e6;border-radius:16px;padding:32px;box-shadow:0 10px 40px #202a4510}.card h1{font-size:26px;margin:0 0 12px}.card p{line-height:1.65;color:#777d87}.card button.primary{width:100%;margin-top:12px}.card .field{margin-top:20px}dialog{border:1px solid #dedfe5;border-radius:14px;max-width:620px;width:calc(100% - 32px);padding:28px;box-shadow:0 20px 70px #0003}dialog::backdrop{background:#20253555}dialog h2{margin-top:0}dialog p{line-height:1.6;color:#727885}dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f5f6f8;padding:16px;border-radius:8px}.mail{padding:14px 0;border-top:1px solid #eee}.mail button{margin-top:8px}#notice{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#252a34;color:#fff;padding:12px 20px;border-radius:9px;max-width:90%;display:none;z-index:10}.test-tag{font-size:11px;color:#9a762a;background:#faf1d9;padding:5px 8px;border-radius:5px}footer{font-size:12px;color:#8b9099;line-height:1.6;border-top:1px solid #eee;padding-top:20px}.events{font-size:12px;line-height:1.7;color:#777d87}@media(max-width:1050px){.layout{grid-template-columns:180px 54px 230px minmax(300px,1fr)}.details{padding:24px}.toolbar{padding:12px}.person small{max-width:155px}}@media(max-width:780px){header{padding:0 14px;gap:10px}header .test-tag{display:none}.toolbar{height:auto;flex-wrap:wrap}.toolbar input{max-width:none;order:-1}.layout{height:calc(100dvh - 190px);grid-template-columns:160px 50px 230px 330px;overflow-x:auto}.pane{height:100%}.card{margin:8vh 16px}header button{font-size:12px;padding:7px}}
.top-nav{display:flex;gap:4px;background:#eceef2;border-radius:8px;padding:3px}.top-nav button{border:0;background:transparent;color:#737986;padding:6px 12px}.top-nav button.active{background:#fff;color:#25262a;box-shadow:0 1px 4px #0001}.draft-layout{display:grid;grid-template-columns:290px minmax(0,1fr);height:calc(100dvh - 142px)}.draft-item{min-height:108px}.draft-item>span{min-width:0;width:100%}.draft-item strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.draft-item small{max-width:100%;white-space:nowrap;margin-top:7px}.draft-workspace{display:flex;flex-direction:column;background:#fff}.editor-toolbar{display:flex;gap:10px;align-items:center;padding:18px 28px;border-bottom:1px solid #eee}.spacer{flex:1}.segmented{display:flex;gap:3px;background:#f0f1f4;padding:3px;border-radius:8px}.segmented button{border:0;background:transparent;color:#737986;padding:6px 12px}.segmented button.active{background:white;color:#25262a;box-shadow:0 1px 3px #0001}.subject-field{display:flex;align-items:center;gap:20px;padding:16px 32px;border-bottom:1px solid #eee}.subject-field>span{color:#858a93;font-size:12px}.subject-field input{border:0;border-radius:0;font-size:18px;font-weight:550;padding-left:0}.body-field{display:block;flex:1}.body-field textarea{width:100%;min-height:300px;height:100%;border:0;border-radius:0;resize:none;line-height:1.8;padding:28px 32px;font-size:16px}.body-field textarea:focus-visible{outline-offset:-4px}#editor-fields:not([hidden]){display:flex;flex-direction:column;flex:1;min-height:380px}.editor-footer{display:flex;justify-content:space-between;gap:12px;padding:16px 28px;background:#fafafb;font-size:11px}.letter-paper{max-width:700px;margin:28px auto;padding:34px 40px;border:1px solid #e5e7ec;border-radius:10px;background:white;box-shadow:0 5px 20px #00000005}.letter-paper h2{font-size:23px;line-height:1.4;overflow-wrap:anywhere}.preview-label{font-size:10px;letter-spacing:1.4px;color:#9a9fa8}.letter-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.85;font-size:16px}#letter-preview:not([hidden]){padding:0 26px 24px;flex:1;background:#f5f6f8}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}@media(max-width:780px){.draft-layout{grid-template-columns:210px minmax(400px,1fr);overflow:auto;height:calc(100dvh - 142px)}.editor-toolbar{padding:14px}.top-nav button{padding:6px 8px}.draft-layout .pane{height:auto}.editor-footer{flex-wrap:wrap}.letter-paper{padding:25px}.subject-field{padding:14px 24px}.body-field textarea{padding:24px}}
button:disabled{cursor:default;opacity:.45}button:disabled:hover{background:inherit}button.primary:disabled:hover{background:#087bfa}
dialog.preparation-dialog{max-width:1020px;width:calc(100% - 40px);max-height:90dvh;padding:28px}.preparation-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:24px}.preparation-head h2{margin:8px 0 0}.preparation-grid{display:grid;grid-template-columns:minmax(230px,1fr) minmax(300px,1.6fr);gap:30px}.preparation-grid p{font-size:12px}.audience-summary{font-size:16px!important}.audience-summary b{font-size:30px;color:#087bfa;margin-right:6px}.recipient-list{max-height:240px;overflow:auto;border-top:1px solid #eee;margin:15px 0}.recipient-list>div{padding:10px 0;border-bottom:1px solid #eee}.recipient-list strong,.recipient-list small{display:block;font-size:12px;margin:3px 0;overflow-wrap:anywhere}.sender-line{display:flex;gap:16px;font-size:12px;margin-bottom:16px;overflow-wrap:anywhere}.sender-line>span{color:#858a93}.preparation-paper{border:1px solid #e1e4e9;border-radius:9px;padding:24px}.preparation-paper h3{font-size:19px;margin:0 0 22px;overflow-wrap:anywhere}.preparation-paper .letter-body{font-size:14px}.preparation-paper footer{font-size:11px!important;margin-top:25px;line-height:1.7}.preparation-checks{background:#f4f6f9;border-radius:8px;padding:18px;margin-top:24px;line-height:1.6;font-size:13px}.preparation-checks ul{padding-left:20px}.preparation-checks p{margin:8px 0}.editor-toolbar{flex-wrap:wrap}@media(max-width:700px){.preparation-grid{grid-template-columns:1fr}.preparation-head{align-items:flex-start}.preparation-head button{font-size:12px}.preparation-paper{padding:18px}}
.test-mail-panel{border-top:1px solid #e3e5ea;margin-top:20px;padding-top:16px}.test-mail-panel h3{font-size:15px;margin:0 0 10px}.test-mail-panel p{font-size:12px}.sender-line{align-items:center;flex-wrap:wrap}.sender-line button{margin-left:auto;font-size:11px;padding:5px 8px}#sender-error{color:#b22b35}#test-mail-status{line-height:1.6}
.send-panel{border-top:1px solid #e3e5ea;margin-top:20px;padding-top:16px}.send-panel h3{font-size:15px;margin:0 0 10px}.send-panel p,.send-panel li{font-size:12px;line-height:1.6}.send-blockers{margin:8px 0 12px;padding-left:18px;color:#8a5a00}.send-panel progress{width:100%;height:8px;accent-color:#3478f6}.campaign-progress{font-size:14px!important}.campaign-last{background:#f5f6f8;border-radius:8px;padding:8px 12px;margin-bottom:10px}.send-confirm{background:#f5f6f8;border-radius:10px;padding:10px 14px}.send-confirm p{display:flex;gap:12px;margin:4px 0}.send-confirm span{color:#6b7280;min-width:80px}#send-status{color:#b22b35}
.settings-dialog{width:min(560px,94vw)}.settings-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.settings-head h2{margin:0}.settings-status{font-size:12px;margin:0 0 14px;padding:6px 10px;border-radius:8px;background:#f5f6f8;color:#6b7280}.settings-status.on{background:#eaf6ee;color:#1f7a3d}.settings-tabs{display:flex;margin-bottom:16px}.settings-tabs button{flex:1}#settings-body p{font-size:13px;line-height:1.5}#settings-body .muted{font-size:12px}.check{display:flex;gap:8px;align-items:center;font-size:13px;margin:6px 0}.form-error{color:#b22b35;font-size:12px;min-height:1em}
.layout.timed{grid-template-columns:218px 150px 300px minmax(340px,1fr)}.times button{text-align:left;padding:6px 10px;font-size:13px;white-space:nowrap}.times button:disabled{opacity:.35}.layout.timed>.draft-workspace{display:flex;flex-direction:column}.sent-mark{color:#277945;font-weight:600}.badge.red{background:#fdecee;color:#b22b35}.mail-item{min-height:84px;align-items:flex-start}.mail-item>span:last-child{min-width:0;width:100%}.mail-item strong,.mail-item small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mail-item small{margin-top:4px}.dot{width:9px;height:9px;border-radius:50%;margin-top:6px;flex-shrink:0;background:#c9ccd3}.dot.sent{background:#2ea05a}.dot.failed{background:#d63b47}.dot.queued{background:#f0a020}.dot.local{background:#9aa6c0}.mail-error{background:#fdecee;color:#9b1f2a;padding:10px 14px;border-radius:8px;font-size:13px;line-height:1.5}.mail-meta{display:grid;grid-template-columns:120px 1fr;gap:6px 14px;font-size:13px;margin:18px 0}.mail-meta dt{color:#858a93}.mail-meta dd{margin:0;overflow-wrap:anywhere}.details .letter-paper{margin:18px 0}
@media(max-width:1050px){.layout.timed{grid-template-columns:170px 140px 240px minmax(300px,1fr)}}
.kind-switch{display:flex;margin-top:6px}.kind-switch button{flex:1}.kind-help{font-size:12px;line-height:1.55;background:#f5f6f8;border-radius:8px;padding:8px 10px;margin:8px 0 14px}.not-ad{background:#fff8e6;border:1px solid #f1d58a;border-radius:8px;padding:10px 12px;margin:10px 0;line-height:1.5;align-items:flex-start}.not-ad input{margin-top:3px}
