:root{--ink:#080808;--muted:#4d5152;--paper:#fff;--line:#0d0d0d;--cyan:#02aec1;--pink:#7a0f1f}*{box-sizing:border-box}body{margin:0;background:linear-gradient(135deg,#eaf3fe,#d6e6fa);color:var(--ink);font:15px/1.55 "Space Grotesk",Arial,sans-serif}.page{padding:30px 18px;min-height:100vh;display:grid;place-items:center}.invitation{width:min(800px,100%);background:var(--paper);box-shadow:0 22px 60px #1b363433;padding:clamp(28px,6vw,72px);position:relative;overflow:hidden}.invitation:before{content:"";position:absolute;height:310px;width:310px;border:1px solid var(--line);border-radius:50%;right:-195px;top:-195px}.masthead,footer{position:relative;display:flex;justify-content:space-between;gap:14px;color:var(--ink);font:500 10px/1.4 "DM Mono",monospace;letter-spacing:.07em;text-transform:uppercase}.masthead{padding-bottom:18px;border-bottom:2px solid var(--line)}.title-block{margin:72px 0 55px}.kicker{font:500 11px/1.4 "DM Mono",monospace;letter-spacing:.12em;color:var(--pink);text-transform:uppercase;margin:0 0 16px}h1,h2{font-family:"Archivo Black",Arial,sans-serif;font-weight:400;letter-spacing:-.055em}.invitation h1{font-size:clamp(45px,9.6vw,79px);line-height:.93;margin:0;color:var(--ink);text-transform:uppercase}.invitation h1 em{color:var(--pink);font-style:normal}.intro{max-width:390px;font-size:17px;margin:26px 0 0;color:var(--muted)}.facts{display:grid;grid-template-columns:1.2fr 1.4fr 1fr;border-top:2px solid var(--line);border-bottom:2px solid var(--line)}.facts>div{padding:18px 16px 18px 0}.facts>div+div{border-left:2px solid var(--line);padding-left:16px}.fact-label{display:block;color:var(--pink);font:500 10px "DM Mono",monospace;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}.facts strong{font-size:13px;font-weight:700;line-height:1.5}.details{max-width:620px;margin:42px 0;color:var(--muted)}.details p{margin:0 0 15px}#rsvp-form{border-top:3px solid var(--ink);padding-top:22px}.form-heading{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:24px;color:var(--ink);font:700 17px "Space Grotesk",sans-serif}.form-heading small{font:400 11px "DM Mono",monospace;color:var(--muted)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:grid;gap:7px;font-weight:700;font-size:13px}input,textarea{width:100%;border:1px solid var(--ink);background:#fff;border-radius:0;font:14px "Space Grotesk",sans-serif;padding:11px;color:var(--ink)}input:focus,textarea:focus{outline:2px solid #f51c8280;border-color:var(--pink)}fieldset{border:0;padding:0;margin:23px 0}legend{font-weight:700;font-size:14px;margin-bottom:10px}.choices{display:flex;gap:8px;flex-wrap:wrap}.choices label{display:flex;align-items:center;gap:7px;border:1px solid var(--ink);padding:9px 11px;font-weight:500;cursor:pointer}.choices input{width:auto;accent-color:var(--pink)}.note-label span{color:var(--muted);font-weight:400}.note-label textarea{min-height:82px;resize:vertical}.updates{display:flex;align-items:center;gap:9px;margin:19px 0 25px;color:var(--muted);font-weight:400}.updates input{width:auto;accent-color:var(--pink)}button,.download{border:0;background:var(--pink);color:white;padding:13px 18px;font:700 13px "Space Grotesk",sans-serif;cursor:pointer;text-decoration:none;display:inline-block}button span{margin-left:18px;font-size:18px;line-height:0}button:disabled{opacity:.65;cursor:wait}#feedback{color:#a2382c;margin:10px 0 0}.thank-you{padding:34px 0 10px}.thank-you h2{font-size:40px;margin:0 0 12px;color:var(--ink)}.thank-you p:last-child{color:var(--muted)}footer{margin-top:72px;padding-top:18px;border-top:2px solid var(--line)}.admin-card{width:min(430px,100%);background:var(--paper);padding:38px;box-shadow:0 22px 60px #1b363433}.admin-card h1{margin:0 0 26px;color:var(--ink);font-size:44px}.admin-card form{display:grid;gap:17px}.admin-card--wide{width:min(1120px,100%)}.admin-top{display:flex;justify-content:space-between;gap:20px;align-items:start}.admin-top>div:last-child:not(:first-child){display:flex;gap:10px;align-items:center}.admin-top form{display:block}.plain-button{background:transparent;color:var(--ink);border:1px solid var(--ink);padding:11px 13px}.summary{color:var(--muted)}.table-wrap{overflow:auto;border-top:2px solid var(--line)}table{width:100%;min-width:780px;border-collapse:collapse;font-size:13px}th,td{text-align:left;vertical-align:top;padding:12px 10px;border-bottom:1px solid var(--line)}th{color:var(--pink);font:500 10px "DM Mono",monospace;letter-spacing:.07em;text-transform:uppercase}td a{color:var(--cyan)}.admin-nav{display:flex;gap:18px;border-bottom:2px solid var(--line);margin:0 0 22px}.admin-nav a{padding:9px 0;color:var(--muted);text-decoration:none;font-weight:600}.admin-nav a.admin-nav__active{color:var(--pink);border-bottom:3px solid var(--pink);margin-bottom:-2px}.admin-nav span{font:500 9px "DM Mono",monospace;text-transform:uppercase;letter-spacing:.06em;margin-left:4px}.planner-intro{max-width:680px;color:var(--muted)}.guest-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));border-top:2px solid var(--line);border-bottom:2px solid var(--line);margin:25px 0}.guest-summary div{padding:13px 11px}.guest-summary div+div{border-left:1px solid var(--line)}.guest-summary strong{display:block;font:28px "Archivo Black",Arial,sans-serif;color:var(--pink)}.guest-summary span{font-size:11px;color:var(--muted)}.guest-summary .hq-parked strong{color:var(--muted)}.planner-actions{display:flex;gap:10px;align-items:center;margin:18px 0}.match{font-weight:700;font-size:12px}.match--matched{color:#177040}.match--review{color:#b06b00}.match--waiting{color:var(--muted)}.guest-table-wrap table{min-width:1020px}@media(max-width:620px){.page{padding:0}.invitation{min-height:100vh;padding:28px 24px}.title-block{margin:54px 0 42px}.facts{grid-template-columns:1fr}.facts>div+div{border-left:0;border-top:2px solid var(--line);padding-left:0}.two-col{grid-template-columns:1fr}.form-heading small{display:none}footer{margin-top:48px}.admin-card{min-height:100vh;padding:28px 22px}.admin-top{display:block}.admin-top>div:last-child:not(:first-child){margin-top:15px}.admin-nav{gap:13px}.guest-summary{grid-template-columns:repeat(2,1fr)}.guest-summary div:nth-child(3),.guest-summary div:nth-child(5){border-left:0}.guest-summary div:nth-child(n+3){border-top:1px solid var(--line)}.planner-actions{align-items:stretch;flex-direction:column}}
.group-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:22px 0}.group-card{min-width:0;text-align:left;background:#fff;color:var(--ink);border:1px solid var(--line);padding:12px}.group-card strong{display:block;font-size:14px}.group-card span{display:block;color:var(--muted);font-size:10px;font-weight:500;line-height:1.45;margin-top:4px}.group-card--active{background:var(--ink);color:#fff}.group-card--active span{color:#fff}@media(max-width:620px){.group-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
.match-explainer{margin:0 0 16px;color:var(--muted);font-size:12px}.match-explainer em{font-style:normal;color:#b06b00;font-weight:700}.inline-input{min-width:105px;width:100%;border:0;border-bottom:1px solid transparent;padding:5px 1px;background:transparent;font-size:13px}.inline-input:hover,.inline-input:focus{border-bottom-color:var(--pink);outline:0}.status-pills{display:flex;gap:3px}.status-pill{background:#fff;color:var(--muted);border:1px solid #c5c8c8;padding:5px 7px;font-size:11px;line-height:1.2}.status-pill--active{background:var(--pink);border-color:var(--pink);color:#fff}.remove-guest{background:transparent;color:#a2382c;border:1px solid #e4b7b2;border-radius:50%;font-size:18px;line-height:18px;padding:0;width:25px;height:25px}.match--duplicate{color:#7550a5}.guest-table-wrap td{vertical-align:middle}
.admin-page{display:block}.workspace{margin:0 auto}.workspace-subtitle{max-width:650px;color:var(--muted);margin:-15px 0 22px}.list-toolbar,.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:30px 0 12px}.list-toolbar h2,.section-heading h2{font-size:26px;margin:0;letter-spacing:-.04em}.list-toolbar p{margin:3px 0 0;color:var(--muted);font-size:12px}.empty-cell,.empty-state{padding:28px;color:var(--muted);text-align:center}.group-card span,.group-card small{margin-left:0}.group-card i{display:block;height:4px;background:#ecefee;margin:9px 0 5px}.group-card i b{display:block;height:100%;background:var(--pink)}.group-card small{display:block;font-size:10px;color:var(--muted)}.group-card--active i{background:#474747}.group-card--active small{color:#fff}.person-name{font-weight:700}.admin-feedback{min-height:22px}.admin-feedback--ok{color:#177040}.admin-feedback--error{color:#a2382c}
.matching-help{display:flex;gap:18px;align-items:center;padding:15px 18px;background:#f3f6f5;border-left:4px solid var(--cyan);margin:18px 0}.matching-help span{color:var(--muted);font-size:13px}.matching-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px}.section-heading{align-items:center;margin-top:12px}.section-heading .kicker{margin-bottom:3px}.section-heading input{width:180px}.match-list{display:grid;gap:12px}.match-card{border:1px solid #cdd3d1;padding:16px;background:#fff}.match-card--done{border-color:#a9d4be;background:#fbfffd}.match-card__top{display:flex;justify-content:space-between;align-items:center;gap:12px}.match-card__top small{color:var(--muted)}.match-card h3{font-size:21px;margin:13px 0 1px}.match-card a{color:var(--cyan)}.match-state{font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;background:#eef0ef;padding:4px 7px}.match-state--review{background:#fff0d5;color:#8a5900}.match-state--done{background:#dff5e9;color:#177040}.response-facts{display:flex;gap:7px;margin-top:12px}.response-facts span{background:#f2f4f3;padding:5px 8px;font-size:11px}.response-note{color:var(--muted);font-size:12px;margin:10px 0}.link-control{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:13px}.link-control select{min-width:0;border:1px solid var(--ink);background:#fff;padding:9px}.matched-pair{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;margin:14px 0}.matched-pair div{display:grid}.matched-pair small{color:var(--muted);text-transform:uppercase;font-size:9px}.matched-pair span{font-size:11px;color:var(--muted)}.unlink-response{background:transparent;color:#a2382c;border:0;padding:4px;font-size:11px}
.paranymph-login p{color:var(--muted)}.hq-body{background:#edf2f0}.prototype-banner{display:flex;gap:12px;align-items:center;background:#0d0d0d;color:#fff;padding:12px 16px;margin:5px 0 20px}.prototype-banner span{color:#cdd4d2;font-size:12px}.hq-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:22px 0}.hq-summary div{border:1px solid #bdc7c4;background:#fff;padding:14px}.hq-summary span,.hq-summary small{display:block;color:var(--muted);font-size:10px}.hq-summary strong{display:block;color:var(--pink);font:32px "Archivo Black",Arial,sans-serif}.hq-summary .hq-missing strong{color:#a2382c}.hq-toolbar{display:grid;grid-template-columns:2fr 1fr 1fr;gap:9px;margin:20px 0 10px}.hq-toolbar select{border:1px solid var(--ink);background:#fff;padding:10px}.bulk-bar{display:flex;gap:7px;align-items:center;flex-wrap:wrap;background:#f3f6f5;border:1px solid #ccd3d1;padding:10px;margin-bottom:12px}.bulk-bar label{display:flex;align-items:center;gap:6px}.bulk-bar input{width:auto}.bulk-bar span{color:var(--muted);font-size:11px}.bulk-bar button{padding:7px 9px;font-size:10px}.hq-table table{min-width:1120px}.hq-table td{vertical-align:middle}.hq-table input{width:auto}.hq-table td>a{font-size:12px}.missing-contact{color:#a2382c;font-size:11px}.group-tag{display:inline-block;border:1px solid #bfc7c5;padding:3px 6px;font-size:10px}.rsvp-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#adb3b1;margin-right:5px}.rsvp-dot--matched{background:#28a766}.comm-toggle{display:flex;align-items:center;gap:5px;background:#fff;color:var(--muted);border:1px solid #cbd0cf;padding:6px 8px;font-size:10px;white-space:nowrap}.comm-toggle i{width:8px;height:8px;border-radius:50%;background:#b5bab9}.comm-toggle--done{color:#177040;border-color:#90c9aa;background:#f3fff8}.comm-toggle--done i{background:#28a766}
@media(max-width:850px){.matching-layout{grid-template-columns:1fr}.hq-summary{grid-template-columns:repeat(2,1fr)}.hq-toolbar{grid-template-columns:1fr}.matching-help{align-items:start;flex-direction:column}.list-toolbar{align-items:start;flex-direction:column}.section-heading input{width:150px}}
.candidate-list{margin-top:13px}.candidate-list>small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;margin-bottom:5px}.candidate-choice{display:inline-grid;text-align:left;background:#fff8fb;color:var(--ink);border:1px solid #f3a4ca;padding:6px 9px;margin:0 5px 5px 0}.candidate-choice strong,.candidate-choice span{margin:0}.candidate-choice span{font-size:9px;color:var(--muted)}.link-control input{min-width:0;padding:9px}.hq-tabs{display:flex;gap:4px;border-bottom:2px solid var(--ink);margin:22px 0}.hq-tab{background:#fff;color:var(--muted);border:1px solid #cbd0cf;border-bottom:0;padding:10px 15px}.hq-tab--active{background:var(--ink);color:#fff;border-color:var(--ink)}.campaign-heading{display:flex;justify-content:space-between;gap:18px;align-items:end;margin:25px 0 14px}.campaign-heading h2{font-size:28px;margin:0}.campaign-heading p{color:var(--muted);margin:4px 0 0}.campaign-layout{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(420px,1.4fr);gap:18px;align-items:start}.campaign-list{display:grid;gap:9px}.campaign-card{display:grid;text-align:left;background:#fff;color:var(--ink);border:1px solid #cbd0cf;padding:14px}.campaign-card>span,.campaign-card>strong,.campaign-card>small{margin-left:0}.campaign-card>strong{font-size:16px;margin-top:7px}.campaign-card>span:not(.campaign-status),.campaign-card>small{color:var(--muted);font-size:11px}.campaign-card--active{border:2px solid var(--pink);padding:13px}.campaign-status{justify-self:start;background:#eef0ef;padding:3px 6px;font-size:9px;text-transform:uppercase}.campaign-status--tested{background:#ddf6e8;color:#177040}.campaign-empty{display:grid;padding:28px;border:1px dashed #aeb8b5;text-align:center}.campaign-empty span{color:var(--muted);font-size:12px}.campaign-editor{display:grid;gap:15px;border:2px solid var(--ink);padding:20px;background:#fff}.editor-title{display:flex;justify-content:space-between;gap:15px}.editor-title h2{font-size:26px;margin:0}.campaign-editor select{border:1px solid var(--ink);background:#fff;padding:10px}.campaign-editor textarea{min-height:230px;resize:vertical;line-height:1.6}.audience-preview{background:#f3f6f5;border-left:3px solid var(--cyan);padding:10px 12px;color:var(--muted);font-size:12px}.audience-preview strong{color:var(--ink);font-size:18px}.editor-actions{display:flex;flex-wrap:wrap;gap:8px}.send-live{background:#d9dddc;color:#777}.send-live:disabled{cursor:not-allowed}.prototype-banner b{color:#fff}.paranymph-login h1{line-height:.95}@media(max-width:850px){.campaign-layout{grid-template-columns:1fr}.campaign-heading{align-items:start;flex-direction:column}.editor-actions{display:grid}}
.delivery-status{display:inline-block;border-radius:20px;padding:4px 8px;background:#eef0ef;color:var(--muted);font-size:10px;text-transform:capitalize}.delivery-status--sent{background:#e3eefc;color:#285f9a}.delivery-status--delivered{background:#dff5e9;color:#177040}.delivery-status--bounced{background:#fae2df;color:#a2382c}.tracking-empty{color:var(--muted);font-size:10px}.bulk-bar select{background:#fff;border:1px solid var(--ink);padding:6px}
.campaign-layout{grid-template-columns:minmax(275px,330px) minmax(0,1fr);gap:22px}.campaign-list{gap:12px}.campaign-card{gap:7px;padding:16px;overflow:hidden}.campaign-card--active{padding:15px}.campaign-card-top{display:flex!important;align-items:center;justify-content:space-between;width:100%;color:inherit!important;font-size:inherit!important}.campaign-card>strong{font-size:20px;line-height:1.05;margin-top:4px}.campaign-subject{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.campaign-new{background:#fff0d5;color:#8a5900;padding:3px 7px;font-size:9px;text-transform:uppercase;font-weight:700}.campaign-card-metrics{display:grid!important;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:7px;color:inherit!important}.campaign-card-metrics span{display:grid;background:#f4f6f5;padding:7px 5px;color:var(--muted);font-size:9px}.campaign-card-metrics b{color:var(--ink);font-size:17px}.campaign-editor{gap:0;padding:22px;min-width:0}.editor-title{align-items:start;margin-bottom:18px}.campaign-progress{display:flex;gap:8px;flex-wrap:wrap;background:#f3f6f5;border:1px solid #d7dcda;padding:10px;margin-bottom:16px}.campaign-progress>p{margin:2px;color:var(--muted);font-size:12px}.progress-number{display:grid;min-width:90px;padding:6px 10px;border-right:1px solid #cbd0cf}.progress-number:last-child{border-right:0}.progress-number strong{font-size:21px;line-height:1}.progress-number span{color:var(--muted);font-size:9px;text-transform:uppercase;margin-top:4px}.progress-number--pending strong{color:var(--pink)}.progress-number--new strong{color:#8a5900}.campaign-detail-tabs{display:flex;border-bottom:1px solid var(--ink);margin:0 -22px 19px;padding:0 22px}.campaign-detail-tab{background:#fff;color:var(--muted);border:0;border-bottom:4px solid transparent;padding:11px 15px;margin-bottom:-2px}.campaign-detail-tab--active{color:var(--ink);border-bottom-color:var(--pink)}.campaign-detail-tab:disabled{color:#b6bbba;cursor:not-allowed}.campaign-detail-tab span{display:inline-flex;justify-content:center;min-width:19px;background:#ecefee;border-radius:20px;padding:2px 5px;margin-left:4px;font-size:9px}.campaign-message-form{display:grid;gap:14px}.campaign-editor .campaign-message-form textarea{min-height:165px}.audience-preview em{display:block;color:#8a5900;margin-top:5px}.editor-actions{padding-top:3px}.campaign-recipients-panel{min-width:0}.recipient-explainer{display:flex;justify-content:space-between;gap:20px;align-items:start}.recipient-explainer h3{font-size:22px;margin:0}.recipient-explainer p{max-width:570px;color:var(--muted);font-size:12px;margin:4px 0 16px}.recipient-stats{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.recipient-stats span{display:grid;min-width:72px;border:1px solid #cbd0cf;padding:7px 9px;color:var(--muted);font-size:9px;text-transform:uppercase}.recipient-stats b{font-size:16px;color:var(--ink)}.recipient-stats .recipient-stat-pending{border-color:#f17db4;background:#fff7fb}.recipient-stat-pending b{color:var(--pink)}.recipient-toolbar{display:grid;grid-template-columns:1fr 210px;gap:8px;margin:7px 0 10px}.recipient-toolbar select{border:1px solid var(--ink);background:#fff;padding:10px}.campaign-recipient-table{max-height:490px;border:1px solid #cbd0cf}.campaign-recipient-table table{min-width:760px}.campaign-recipient-table th{position:sticky;top:0;background:#f3f6f5;z-index:1}.campaign-recipient-table td{vertical-align:middle}.campaign-recipient-table td:nth-child(2) strong,.campaign-recipient-table td:nth-child(2) small{display:block}.campaign-recipient-table td:nth-child(2) small{color:var(--muted);font-size:9px;margin-top:2px}.campaign-recipient-table tr.recipient-excluded{opacity:.58}.recipient-switch{display:inline-flex}.recipient-switch input{position:absolute;opacity:0;pointer-events:none}.recipient-switch span{position:relative;width:38px;height:22px;border-radius:20px;background:#c9cecc;transition:.15s}.recipient-switch span:after{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #777;transition:.15s}.recipient-switch input:checked+span{background:var(--pink)}.recipient-switch input:checked+span:after{transform:translateX(16px)}.recipient-switch input:disabled+span{opacity:.35;cursor:not-allowed}.delivery-status--not_sent{background:#fff0d5;color:#8a5900}.delivery-status--new{background:#ffe0ef;color:#a60051}.delivery-status--excluded,.delivery-status--missing{background:#ecefee;color:#626867}.recipient-send-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#0d0d0d;color:#fff;padding:13px 15px;margin-top:12px}.recipient-send-bar>div{display:grid}.recipient-send-bar span{color:#bcc3c1;font-size:10px;margin-top:2px}.recipient-send-bar .send-live{white-space:nowrap}.send-live:disabled{background:#d9dddc;color:#777}.campaign-recipient-table a{font-size:11px}.campaign-recipient-table .group-tag{white-space:nowrap}
@media(max-width:1050px){.campaign-layout{grid-template-columns:1fr}.campaign-list{grid-template-columns:repeat(2,minmax(0,1fr))}.campaign-editor{margin-top:4px}}@media(max-width:700px){.campaign-list{grid-template-columns:1fr}.campaign-progress{display:grid;grid-template-columns:repeat(2,1fr)}.progress-number{border:0}.recipient-explainer{display:block}.recipient-stats{justify-content:start;margin-bottom:12px}.recipient-toolbar{grid-template-columns:1fr}.recipient-send-bar{align-items:start;flex-direction:column}.recipient-send-bar button{width:100%}.campaign-detail-tabs{overflow:auto}.campaign-heading button{width:100%}}
[hidden]{display:none!important}
.campaign-layout>*{min-width:0}.campaign-card span{margin-left:0;line-height:1.25}.campaign-card-metrics span{margin-left:0!important}.campaign-card-metrics b{display:block;line-height:1.15}.campaign-editor>*{min-width:0}.campaign-recipient-table{width:100%;min-width:0;overflow:auto}.campaign-recipient-table table{width:100%;min-width:620px}
.recipient-switch input{width:1px;height:1px}
.email-log-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:5px 0 14px}.email-log-summary div{display:grid;border:1px solid #cbd0cf;background:#fff;padding:11px 13px}.email-log-summary strong{font:25px "Archivo Black",Arial,sans-serif}.email-log-summary span{color:var(--muted);font-size:9px;text-transform:uppercase}.email-log-summary .email-log-delivered strong{color:#177040}.email-log-summary .email-log-issues strong{color:#a2382c}.email-log-toolbar{display:grid;grid-template-columns:1fr 180px 180px;gap:8px;margin-bottom:12px}.email-log-toolbar select{border:1px solid var(--ink);background:#fff;padding:10px}.email-log-layout{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);gap:15px;align-items:start}.email-log-list{display:grid;gap:8px;max-height:650px;overflow:auto;padding-right:3px}.email-log-card{display:grid;gap:5px;text-align:left;background:#fff;color:var(--ink);border:1px solid #cbd0cf;padding:13px}.email-log-card span,.email-log-card time{margin-left:0;line-height:1.35}.email-log-card>strong{font-size:16px}.email-log-card--active{border:2px solid var(--pink);padding:12px}.email-log-card-top{display:flex;align-items:center;justify-content:space-between}.email-kind{padding:3px 6px;background:#e4f8fb;color:#007a89;font-size:9px;text-transform:uppercase;font-weight:700}.email-kind--guest{background:#ffe2f0;color:#a60051}.email-log-subject{font-size:12px;font-weight:600}.email-log-recipient,.email-log-card time{color:var(--muted);font-size:10px}.email-log-detail{border:2px solid var(--ink);background:#fff;padding:20px;min-width:0}.email-detail-heading{display:flex;justify-content:space-between;gap:15px;align-items:start}.email-detail-heading h3{font-size:25px;margin:0}.email-meta{display:grid;grid-template-columns:1.2fr 1fr 1fr;border-top:1px solid #cbd0cf;border-bottom:1px solid #cbd0cf;margin:18px 0}.email-meta div{padding:11px 10px}.email-meta div+div{border-left:1px solid #cbd0cf}.email-meta dt,.email-snapshot>span{color:var(--pink);font:500 9px "DM Mono",monospace;letter-spacing:.07em;text-transform:uppercase}.email-meta dd{margin:4px 0 0;font-size:11px;font-weight:700}.email-meta dd small{display:block;color:var(--muted);font-weight:400;overflow-wrap:anywhere}.email-snapshot{display:grid;gap:7px}.email-snapshot>strong{font-size:17px;margin-bottom:14px}.email-body-copy{white-space:pre-wrap;border:1px solid #cbd0cf;background:#fafbfb;padding:16px;min-height:180px;font-size:13px;line-height:1.65;overflow-wrap:anywhere}.legacy-snapshot{background:#fff4dc;border-left:3px solid #d99100;color:#755000;padding:9px 11px;font-size:10px}.provider-reference{color:var(--muted);font:9px "DM Mono",monospace;overflow-wrap:anywhere}.email-log-empty{display:grid;text-align:center;border:1px dashed #aeb8b5;padding:35px}.email-log-empty span{color:var(--muted);font-size:11px}.delivery-status--opened,.delivery-status--clicked{background:#e4f2ff;color:#285f9a}.delivery-status--delivery_delayed{background:#fff0d5;color:#8a5900}.delivery-status--complained,.delivery-status--failed{background:#fae2df;color:#a2382c}
@media(max-width:850px){.email-log-summary{grid-template-columns:repeat(2,1fr)}.email-log-toolbar{grid-template-columns:1fr}.email-log-layout{grid-template-columns:1fr}.email-log-list{max-height:430px}.email-meta{grid-template-columns:1fr}.email-meta div+div{border-left:0;border-top:1px solid #cbd0cf}}@media(max-width:620px){.hq-tabs{overflow:auto}.hq-tab{white-space:nowrap}.email-log-detail{padding:15px}.email-detail-heading{display:block}.email-detail-heading>.delivery-status{margin-top:8px}}

.prototype-banner--live{background:#177040}.prototype-banner--live span{color:#d6f0e1}.send-live:not(:disabled){background:var(--pink);color:#fff;cursor:pointer}

.send-modal{position:fixed;inset:0;background:rgba(8,8,8,.62);display:flex;align-items:center;justify-content:center;padding:18px;z-index:50}.send-modal[hidden]{display:none}.send-modal__box{background:#fff;border:2px solid var(--ink);padding:24px;max-width:520px;width:100%;max-height:90vh;overflow:auto}.send-modal__box h2{font-size:26px;margin:0 0 6px}.send-modal__lead{color:#a2382c;font-size:12px;margin:0 0 16px}.send-modal__summary{display:grid;grid-template-columns:minmax(90px,auto) 1fr;gap:8px 14px;margin:0 0 14px;font-size:13px}.send-modal__summary dt{color:var(--muted);font-size:11px;text-transform:uppercase}.send-modal__summary dd{margin:0;word-break:break-word}.send-modal__summary dd b{font-size:17px}.send-modal__skips{background:#f3f6f5;border-left:3px solid var(--cyan);padding:10px 12px;font-size:12px;color:#4d5152;margin-bottom:16px}.send-modal__skips ul{margin:4px 0 0;padding-left:16px}.send-modal__confirm{display:grid;gap:6px;font-size:12px;margin-bottom:16px}.send-modal__confirm input{padding:10px;border:1px solid var(--ink)}.send-modal__actions{display:flex;gap:9px;justify-content:flex-end}

.photo-usage{background:#f3f6f5;border-left:3px solid var(--cyan);padding:11px 13px;font-size:12px;color:#4d5152;margin-bottom:12px}.photo-usage b{color:var(--ink)}.photo-toolbar{display:grid;grid-template-columns:2fr 1fr;gap:9px;margin-bottom:14px}.photo-toolbar select{border:1px solid var(--ink);background:#fff;padding:10px}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(142px,1fr));gap:10px}.photo-cell{position:relative;padding:0;border:1px solid #cbd0cf;background:#eee;aspect-ratio:1;overflow:hidden;cursor:zoom-in}.photo-cell img{width:100%;height:100%;object-fit:cover;display:block}.photo-cell figcaption{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(transparent,rgba(8,8,8,.82));color:#fff;padding:16px 8px 7px;font-size:10px;text-align:left;line-height:1.35}.photo-cell--hidden img{opacity:.35}.photo-flag{position:absolute;top:6px;right:6px;background:#a2382c;color:#fff;font-size:9px;padding:2px 5px;text-transform:uppercase}.photo-empty{color:var(--muted);padding:30px;text-align:center;border:1px dashed #aeb8b5}.lightbox{position:fixed;inset:0;background:rgba(8,8,8,.93);display:flex;align-items:center;justify-content:center;z-index:60}.lightbox[hidden]{display:none}.lightbox__figure{margin:0;max-width:min(1100px,92vw);max-height:92vh;display:flex;flex-direction:column;gap:10px;align-items:center}.lightbox__figure img{max-width:100%;max-height:76vh;object-fit:contain;background:#111}.lightbox__figure figcaption{color:#e8ecea;font-size:12px;text-align:center;line-height:1.6;max-width:640px}.lightbox__figure figcaption b{display:block;font-size:15px;color:#fff;margin-bottom:3px}.lightbox__figure figcaption .lb-actions{margin-top:10px;display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.lightbox__figure figcaption a,.lightbox__figure figcaption button{font-size:11px;padding:6px 10px;background:#fff;color:#080808;border:0;text-decoration:none;cursor:pointer}.lightbox__figure figcaption .lb-delete{background:#a2382c;color:#fff}.lightbox__close{position:absolute;top:14px;right:18px;background:transparent;color:#fff;border:0;font-size:34px;line-height:1;cursor:pointer;padding:4px 10px}.lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.14);color:#fff;border:0;font-size:38px;line-height:1;padding:12px 16px;cursor:pointer}.lightbox__nav--prev{left:10px}.lightbox__nav--next{right:10px}@media(max-width:620px){.photo-toolbar{grid-template-columns:1fr}.lightbox__nav{font-size:28px;padding:9px 11px}}

.settings-section{font-size:22px;margin:30px 0 4px;padding-top:22px;border-top:2px solid var(--ink)}.settings-section:first-of-type{border-top:0;padding-top:0;margin-top:18px}

.photo-flag--pending{background:#0d6f8f}

.photo-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;background:#f3f6f5;border:1px solid #ccd3d1;padding:10px;margin-bottom:12px}.photo-actions label{display:flex;align-items:center;gap:6px;font-size:12px}.photo-actions input[type=checkbox]{width:auto}.photo-actions strong{font-size:12px;color:var(--muted)}.photo-actions button{padding:7px 10px;font-size:11px}.photo-actions button:disabled{background:#d9dddc;color:#8d9391;cursor:not-allowed}.photo-actions__spacer{flex:1}.danger-button{background:#a2382c;color:#fff}.photo-pick{position:absolute;top:6px;left:6px;width:20px;height:20px;z-index:2;cursor:pointer}.photo-cell--picked{outline:3px solid var(--pink);outline-offset:-3px}

.send-progress{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-left:3px solid var(--cyan);background:#f3f6f5;padding:11px 13px;font-size:13px;margin-bottom:12px}.send-progress--paused{border-left-color:#c8892a;background:#fff8ee}.send-progress--stopped{border-left-color:#a2382c;background:#fff4f2}.send-progress--done{border-left-color:#28a766;background:#f3fff8}.send-progress__failed{color:#a2382c;font-size:11px}.reach-note{background:#fff8ee;border-left:3px solid #c8892a;padding:10px 12px;font-size:12px;color:#4d5152;margin-bottom:12px}.reach-note b{color:var(--ink)}.reach-note a{color:#a2382c}.bulk-bar__spacer{flex:1}.manual-tracking{border:1px solid #ccd3d1;background:#fff;padding:10px 12px;margin-bottom:12px}.manual-tracking summary{cursor:pointer;font-size:12px;color:var(--muted)}.manual-tracking p{font-size:11px;color:#4d5152;margin:8px 0}.manual-tracking__warn{color:#a2382c}.manual-tracking .bulk-bar{margin:0}

.body-hint{display:block;color:#4d5152;font-size:11px;line-height:1.55;margin-top:6px}.body-hint b{color:var(--ink)}

.send-modal__lead--calm{color:#4d5152}

.draft-status{display:inline-flex;align-items:center;font-size:11px;color:var(--muted);margin-right:auto}.draft-status--saving{color:#c8892a}.draft-status--ok{color:#177040}.draft-status--error{color:#a2382c}

.view-switch{display:flex;gap:4px;margin:18px 0 6px}
.view-tab{background:#fff;color:var(--muted);border:1px solid #cbd0cf;padding:8px 16px;font-size:11px}
.view-tab--active{background:var(--ink);color:#fff;border-color:var(--ink)}
.board{display:flex;gap:14px;overflow-x:auto;padding:14px 2px 18px;align-items:flex-start}
.board-col{flex:0 0 234px;width:234px;border:1px solid #cbd0cf;background:#fff}
.board-col__head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;background:var(--ink);color:#fff;padding:7px 10px;position:sticky;top:0;z-index:2}
.board-col__head strong{font:12px "Archivo Black",Arial,sans-serif;letter-spacing:.01em}
.board-col__head span{font-size:10px;color:#c9cfcd}
.board-table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse}
.board-table th{font-size:8px;letter-spacing:.02em;text-transform:uppercase;color:var(--muted);font-weight:500;padding:5px 0;border-bottom:1px solid #dfe4e3;text-align:center;white-space:nowrap;overflow:hidden}
.board-table th:first-child{text-align:left;padding-left:10px}
.board-table td{border-bottom:1px solid #eef1f0;padding:0;text-align:center;vertical-align:middle;height:26px}
.board-table td:first-child{text-align:left}
.board-name{width:100%;box-sizing:border-box;border:0;background:transparent;padding:0 7px;height:26px;line-height:26px;font:12px "DM Sans",Arial,sans-serif;text-overflow:ellipsis}
.board-name:focus{outline:2px solid var(--pink);outline-offset:-2px;background:#fff8fb}
.cell{display:flex;align-items:center;justify-content:center;width:100%;height:26px;border:0;background:transparent;cursor:pointer;font:600 11px "DM Sans",Arial,sans-serif;color:#adb3b1;padding:0}
.cell:hover{background:#eef2f1}
.cell--y{background:#d9f2e3;color:#177040}
.cell--n{background:#ffdedb;color:#a2382c}
.cell--m{background:#fff2cf;color:#8a6412}
.cell--read{cursor:default}
.cell--read:hover{background:transparent}
.board-table tr:hover .board-name,.board-table tr:hover .board-name-wrap{background:#f7faf9}.board-name-wrap{display:flex;align-items:center}.board-name-wrap .board-name{flex:1 1 auto;min-width:0}.board-mail{flex:0 0 auto;display:flex;align-items:center;padding-right:6px;color:#b4bbb9}.board-mail svg{display:block;width:9px;height:auto}.board-mail--clash{color:#c08a2e}

.board-col__foot b{color:var(--ink);font-size:12px}
.board-add{width:100%;border:0;border-top:1px dashed #cbd0cf;background:#fff;color:var(--muted);padding:6px 8px;font-size:10px;cursor:pointer;text-align:left}
.board-add:hover{background:#fff8fb;color:var(--pink)}
.board-remove{border:0;background:transparent;color:#d5dad8;cursor:pointer;font-size:13px;padding:0 5px}
.board-remove:hover{color:#a2382c}
.board-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin-bottom:4px}
.board-legend span{display:inline-flex;align-items:center;gap:5px}
.board-legend i{width:15px;height:15px;display:inline-block;border:1px solid #dfe4e3}


/* A parked group ("Maybe") is names only: no cells, no tally, no total. */
.board-col--parked{background:#fbfcfc}
.board-col--parked .board-col__head{background:#6b7472}
.board-col__note{margin:0;border-top:1px solid #cbd0cf;background:#f7faf9;color:#8d9391;padding:6px 8px;font:italic 10px "DM Sans",Arial,sans-serif;text-align:center}

col.c-name{width:auto}
col.c-cell{width:33px}
col.c-x{width:24px}

.board-col--drag{opacity:.4}
.board-col--over{outline:2px dashed var(--pink);outline-offset:-2px}
.board-col__head{cursor:grab}
.board-col__head:active{cursor:grabbing}
.board-col__grip{color:#6c7573;letter-spacing:1px;font-size:11px;margin-right:2px}
.board-add-group{flex:0 0 150px;align-self:stretch;min-height:120px;border:1px dashed #b6bfbd;background:transparent;color:var(--muted);font-size:12px;cursor:pointer}
.board-add-group:hover{border-color:var(--pink);color:var(--pink);background:#fff8fb}

.column-toggles{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin:6px 0 2px}
.column-toggles > span{font-size:11px;color:var(--muted);margin-right:2px}
.col-toggle{border:1px solid #cbd0cf;background:var(--ink);color:#fff;font-size:10px;padding:5px 9px;cursor:pointer}
.col-toggle--off{background:#fff;color:#a9b0ae;text-decoration:line-through}
.col-toggle:hover{border-color:var(--pink)}

.toggle-row{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-bottom:5px}
.toggle-row > span{font-size:11px;color:var(--muted);min-width:56px}
.col-toggle--field{background:#4a5654}
.col-toggle--field.col-toggle--off{background:#fff;color:#a9b0ae}
.col-toggle--add{background:#fff;color:var(--pink);border-style:dashed;text-decoration:none}
.board-table th.band{font-size:8px;color:#8d9391;border-bottom:1px solid #dfe4e3;background:#f7faf9;letter-spacing:.06em}
.band-row th{padding:3px 0}
.cell{position:relative}
.cell-mark{position:absolute;top:1px;right:2px;font-style:normal;font-size:7px;line-height:1;color:#8d9391}
.cell-mark--clash{color:#a2382c;font-weight:700;font-size:9px}
.cell-text{width:100%;box-sizing:border-box;border:0;background:transparent;height:26px;padding:0 5px;font:11px "DM Sans",Arial,sans-serif;text-align:center}
.cell-text:focus{outline:2px solid var(--pink);outline-offset:-2px;background:#fff8fb;text-align:left}

.email-filters{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:4px 0 10px}
.email-filters > span{font-size:11px;color:var(--muted);margin-right:2px}
.email-filter{border:1px solid #cbd0cf;background:#fff;color:var(--muted);font-size:10px;padding:6px 10px;cursor:pointer}
.email-filter--on{background:var(--ink);color:#fff;border-color:var(--ink)}
.email-source{font-size:10px;color:var(--muted);white-space:nowrap}
.email-source--you{color:#177040}
.email-source--clash{color:#a2382c;font-weight:600}
.email-source--none{color:#c2c8c6}

.tally{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse;border-top:1px solid #cbd0cf;background:#f7faf9}
.tally td,.tally th{height:17px;padding:0;text-align:center;font:600 10px "DM Sans",Arial,sans-serif;border-bottom:1px solid #eef1f0}
.tally tr:last-child td,.tally tr:last-child th{border-bottom:0}
.tally-label{text-align:right!important;padding-right:7px!important;color:#8d9391;font-weight:600}
.tally-label--y{color:#177040}.tally-label--m{color:#8a6412}.tally-label--n{color:#a2382c}
.tally--y{color:#177040;background:#eef8f2}
.tally--m{color:#8a6412;background:#fffaf0}
.tally--n{color:#a2382c;background:#fff3f1}
.tally--blank{color:#8d9391}
.tally--zero{color:#d3d8d7}
.board-total{border:2px solid var(--ink);background:#fff;max-width:760px;margin-top:4px}
.board-total__head{display:flex;justify-content:space-between;align-items:baseline;background:var(--ink);color:#fff;padding:8px 12px}
.board-total__head strong{font:13px "Archivo Black",Arial,sans-serif}
.board-total__head span{font-size:10px;color:#c9cfcd}
.total-table{width:100%;min-width:0;border-collapse:collapse}
.total-table th,.total-table td{padding:6px 8px;text-align:center;font-size:12px;border-bottom:1px solid #eef1f0}
.total-table thead th{font-size:9px;text-transform:uppercase;color:var(--muted);font-weight:500;letter-spacing:.03em}
.total-table tbody tr:last-child th,.total-table tbody tr:last-child td{border-bottom:0}
.total-label{text-align:left!important;color:var(--muted);font-weight:600;font-size:11px;white-space:nowrap}
.total-table td{font-weight:600}

.cell--muted{background:repeating-linear-gradient(135deg,#f4f6f6,#f4f6f6 3px,#eaeeed 3px,#eaeeed 6px);cursor:default}
.cell--muted:hover{background:repeating-linear-gradient(135deg,#eef2f1,#eef2f1 3px,#e2e7e6 3px,#e2e7e6 6px)}
.tally-label--na,.tally--na{color:#b3bab8}
.tally--na{background:#f7f8f8}

.lightbox__media{display:flex;align-items:center;justify-content:center;max-width:100%}
.lightbox__media img,.lightbox__media video{max-width:min(1100px,92vw);max-height:76vh;object-fit:contain;background:#111;display:block}
.photo-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:34px;height:34px;border-radius:50%;background:rgba(8,8,8,.62);color:#fff;font-size:13px;display:flex;align-items:center;justify-content:center;padding-left:2px;pointer-events:none}

.alt-sender{border:1px solid #cbd0cf;padding:14px 16px;margin:6px 0 0;display:grid;gap:14px}
.alt-sender legend{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:0 6px}
.alt-sender__why{font-size:11px;color:#4d5152;line-height:1.55;margin:0}
.alt-sender__why em{color:var(--ink);font-style:italic}
.alt-ok{color:#177040;font-weight:600}
.alt-off{color:#a2382c;font-weight:600}

@media(max-width:760px){
  /* Photos and Settings were off the right edge, so nobody found them */
  .hq-tabs{flex-wrap:wrap;gap:4px 4px;border-bottom:0}
  .hq-tab{flex:1 1 auto;min-width:calc(50% - 4px);border-bottom:1px solid #cbd0cf;padding:11px 10px;font-size:11px}
  .hq-tab--active{border-color:var(--ink)}
  /* a phone should reach the tabs without scrolling past five big tiles */
  .hq-summary{grid-template-columns:repeat(2,1fr);gap:6px;margin:14px 0}
  .hq-summary div{padding:8px 9px}
  .hq-summary strong{font-size:20px}
  .hq-summary span,.hq-summary small{font-size:9px}
  .hq .admin-top{flex-direction:row;align-items:flex-start;gap:10px}
  .hq .admin-top h1{font-size:30px}
  .hq .workspace-subtitle{display:none}
  .hq .admin-top .plain-button{padding:7px 10px;font-size:10px;white-space:nowrap}
  .prototype-banner{flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px}
}

.col-chip{display:inline-flex;align-items:stretch}
.col-chip .col-toggle{border-right:0}
.col-edit{border:1px solid #cbd0cf;border-left:0;background:#fff;color:var(--muted);font-size:10px;padding:0 6px;cursor:pointer;line-height:1}
.col-edit:hover{color:var(--pink);border-color:var(--pink)}
.col-edit--drop:hover{color:#a2382c;border-color:#a2382c}
.board-col__name{cursor:text}

.sign-out-row{margin-top:34px;padding-top:16px;border-top:1px solid #e3e8e7;text-align:right}
.sign-out-row button{background:none;border:0;color:var(--muted);font-size:11px;text-decoration:underline;text-underline-offset:3px;padding:6px 2px;cursor:pointer}
.sign-out-row button:hover{color:var(--pink)}

.board--readonly .cell{cursor:default}
.board--readonly .cell:hover{background:transparent}
.board--readonly .cell--y:hover{background:#d9f2e3}
.board--readonly .cell--n:hover{background:#ffdedb}
.board--readonly .cell--m:hover{background:#fff2cf}
.board-readonly-name{padding:0 7px;height:26px;line-height:26px;font-size:12px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
