:root{--ink:#172033;--muted:#6d7789;--surface:#fff;--line:#e8ebf0;--accent:#5b5ce2}*{box-sizing:border-box}body{margin:0;background:#f6f7fb;color:var(--ink);font-family:Inter,system-ui,-apple-system,sans-serif}.sidebar{position:fixed;width:250px;inset:0 auto 0 0;background:#172033;color:#fff;padding:31px 20px;display:flex;flex-direction:column}.brand{font-size:22px;font-weight:800;color:#fff;text-decoration:none;letter-spacing:-1px}.brand span{color:#9c9dff}.dark{color:#172033}.sidebar nav{margin-top:48px;display:grid;gap:7px}.sidebar nav a,.sidebar-bottom a{color:#b9c0d0;text-decoration:none;padding:11px 13px;border-radius:9px;display:flex;align-items:center;gap:10px;line-height:1.2}.sidebar nav a i,.sidebar-bottom a i{font-size:1rem;flex:0 0 auto;opacity:.95}.sidebar nav a.active,.sidebar nav a:hover{background:#29364e;color:#fff}.sidebar-bottom{margin-top:auto;color:#fff;display:grid;gap:10px;padding:12px;border-top:1px solid #29364e}.sidebar-bottom a.sidebar-logout{color:#ffbf59;background:rgba(255,191,89,.12)}.sidebar-bottom a.sidebar-logout:hover{color:#ffe0ad;background:rgba(255,191,89,.2)}.main{margin-left:250px;padding:48px;max-width:1500px}.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.page-head h1,h1{letter-spacing:-1.4px;margin:0;font-size:32px}.eyebrow{color:var(--accent);font-weight:700;text-transform:uppercase;font-size:11px;letter-spacing:1.2px;margin:0 0 7px}.panel{background:var(--surface);border:1px solid var(--line);box-shadow:0 4px 18px #17203309;border-radius:14px;padding:25px;margin-bottom:20px}.panel h2{font-size:18px;margin:0 0 20px}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:25px}.stat{background:#fff;border:1px solid var(--line);border-radius:13px;padding:19px}.stat small,.grid-summary small{display:block;color:var(--muted)}.stat strong{font-size:28px}.form-control,.form-select{margin:6px 0 17px;border-color:#dce1ea;padding:10px}label{font-weight:650;font-size:13px}.btn-primary{background:var(--accent);border-color:var(--accent)}.departments{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.departments label{border:1px solid var(--line);border-radius:7px;padding:6px 9px;font-weight:500}.selection{color:var(--muted)}.rich-editor{min-height:170px;border:1px solid #dce1ea;border-radius:0 0 8px 8px;padding:13px;outline:0}.editor-tools{padding:7px;border:1px solid #dce1ea;border-bottom:0;border-radius:8px 8px 0 0;background:#f8f9fb}.editor-tools button{border:0;background:transparent;padding:3px 8px}.editor-tools input{vertical-align:middle}.email-preview{background:#fcfcfd;border:1px solid var(--line);padding:20px;max-width:760px}.grid-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.grid-summary strong,.grid-summary span{display:block}.login-main{min-height:100vh;display:grid;place-items:center;background:linear-gradient(120deg,#eef0ff,#fafbff)}.login-card{background:#fff;border-radius:18px;padding:40px;width:410px;box-shadow:0 20px 55px #1720331c}.login-card h1{margin-top:34px}.login-card p{color:var(--muted);margin-bottom:25px}@media(max-width:900px){.sidebar{position:static;width:auto;height:auto}.main{margin:0;padding:25px}.stats,.grid-summary{grid-template-columns:repeat(2,1fr)}}
.region-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;align-items:start}.region-group{border:1px solid var(--line);border-radius:10px;padding:12px;background:#fcfcfd;min-width:0}.region-group legend{float:none;width:auto;padding:0 4px;margin:0 0 8px;font-size:13px;font-weight:750;color:var(--ink)}.region-group label{display:inline-flex;margin:3px 4px 3px 0;padding:5px 8px}.region-group .form-text{font-size:12px;line-height:1.4}
.sidebar-bottom{border-top:0}.panel h2{font-size:1.5rem;color:#9c9dff}.region-actions{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.region-actions .btn{min-width:calc(50% - 3px);font-size:.72rem;padding:.3rem .4rem}.region-group label{width:56px;justify-content:center;gap:5px}.region-group input[type=checkbox]{margin:0}
.btn{display:inline-flex;align-items:center;gap:10px}.btn i{margin-right:0!important}
.region-group legend{margin:0}.region-toggle{border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);font-weight:750;padding:6px 10px;cursor:pointer}.region-toggle:hover{background:#f0f1ff;border-color:#9c9dff}
.btn{width:auto}.region-toggle{display:inline-flex;width:auto}.region-toggle.is-selected,.btn[data-deps-toggle].is-selected{background:#e8f5ee;border-color:#198754;color:#146c43}.input-group .form-select{margin:0}.input-group-text{align-items:center;display:flex;white-space:nowrap}
.region-toggle.is-selected,.btn[data-deps-toggle].is-selected{background:#9c9dff;border-color:#9c9dff;color:#172033}.form-control[type=file]{margin-top:6px;padding:.375rem .75rem}.form-control[type=file]::file-selector-button{height:100%;margin:-.375rem .75rem -.375rem -.75rem;padding:.375rem .75rem}.signature-preview{margin-top:8px;padding:12px;border-top:1px dashed var(--line);color:var(--muted);background:#fafaff}.signature-preview img{height:80px;width:auto}
.sidebar-bottom a.sidebar-logout{justify-self:start;width:auto}.region-toggle.is-selected,.btn[data-deps-toggle].is-selected{color:#fff}
.btn-primary{background-color:var(--primary);border-color:var(--primary);color:#fff}.btn-primary:hover,.btn-primary:focus{background-color:color-mix(in srgb,var(--primary) 82%,#000);border-color:color-mix(in srgb,var(--primary) 82%,#000);color:#fff}.brand span{color:var(--primary)}.region-toggle.is-selected,.btn[data-deps-toggle].is-selected{background:var(--primary);border-color:var(--primary);color:#fff}
:root{--primary:#9c9dff;--accent:var(--primary)}
.btn-primary:hover,.btn-primary:focus{background-color:#8586e8;border-color:#8586e8}
.btn-primary:hover,.btn-primary:focus{background-color:color-mix(in srgb,var(--primary) 82%,#000);border-color:color-mix(in srgb,var(--primary) 82%,#000)}
.region-group input[type=checkbox]{accent-color:var(--primary)}.form-check-input:checked{background-color:var(--primary);border-color:var(--primary)}
.region-group input[type=checkbox]{appearance:none;width:1rem;height:1rem;margin:0;border:1px solid #adb5bd;border-radius:.25rem;background-color:#fff;background-position:center;background-repeat:no-repeat;background-size:contain;vertical-align:-.15em}.region-group input[type=checkbox]:checked{background-color:var(--primary);border-color:var(--primary);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m5 10 3 3 7-7'/%3e%3c/svg%3e")}
.form-control:focus,.form-select:focus{border-color:var(--primary);box-shadow:0 0 0 .25rem rgba(156,157,255,.25)}
.form-select{accent-color:var(--primary)}.form-select option:checked{background-color:var(--primary);color:#fff}
.form-select option:hover,.form-select option:focus{background-color:var(--primary);color:#fff}
.stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}.stat{position:relative;display:flex;align-items:center;gap:15px;min-height:108px;overflow:hidden;border:1px solid rgba(23,32,51,.08);box-shadow:0 8px 24px rgba(23,32,51,.06);transition:transform .18s ease,box-shadow .18s ease}.stat:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(23,32,51,.1)}.stat:after{content:"";position:absolute;right:-24px;bottom:-32px;width:100px;height:100px;border-radius:50%;background:currentColor;opacity:.06}.stat-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;font-size:20px;flex:0 0 42px}.stat-content{position:relative;z-index:1}.stat-content small{font-size:12px;font-weight:650;letter-spacing:.02em}.stat-content strong{display:block;margin-top:5px;font-size:30px;line-height:1}.stat-violet{color:#6869d9}.stat-violet .stat-icon{background:#eeefff}.stat-green{color:#198754}.stat-green .stat-icon{background:#e7f6ee}.stat-blue{color:#3278b8}.stat-blue .stat-icon{background:#eaf3fb}.stat-amber{color:#b77b13}.stat-amber .stat-icon{background:#fff5df}.stat-red{color:#c34d5b}.stat-red .stat-icon{background:#fdecef}@media(max-width:1100px){.stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.profile-switch .form-check-input{cursor:pointer;background-color:#f0ad4e;border-color:#f0ad4e}.profile-switch .form-check-input:checked{background-color:var(--primary);border-color:var(--primary)}
.stat-icon{width:46px;height:46px;flex-basis:46px;font-size:22px}
.preview-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;background:linear-gradient(135deg,#fff,#fafaff)}.preview-summary>div{min-width:0}.preview-summary small{display:block;color:var(--muted);font-size:.72rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px}.preview-summary strong,.preview-summary span{display:block}.preview-summary strong{line-height:1.45}.preview-summary span{color:var(--muted);font-size:.9rem;margin-top:5px}.sequence-dates{font-variant-numeric:tabular-nums}.preview-message-label{margin-bottom:6px}.message-preview-panel h2{font-size:1.35rem;margin-bottom:18px}.alert-info{border-color:#dfe0ff;background:#f5f5ff;color:#42437e}@media(max-width:1000px){.preview-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.preview-summary{grid-template-columns:1fr}}
.preview-summary-panels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.preview-summary-card{margin-bottom:20px;min-height:130px}.preview-summary-card small{display:block;color:var(--muted);font-size:.72rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}.preview-summary-card strong,.preview-summary-card span{display:block}.preview-summary-card strong{line-height:1.45}.preview-summary-card span{color:var(--muted);font-size:.9rem;margin-top:6px}.sequence-dates{font-variant-numeric:tabular-nums}@media(max-width:1100px){.preview-summary-panels{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.preview-summary-panels{grid-template-columns:1fr}}
.preview-summary-card{position:relative;display:flex;gap:14px;min-height:184px;margin-bottom:20px;padding:20px;border:1px solid rgba(23,32,51,.08);box-shadow:0 8px 24px rgba(23,32,51,.06);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}.preview-summary-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(23,32,51,.1)}.preview-summary-card:after{content:"";position:absolute;right:-30px;bottom:-35px;width:120px;height:120px;border-radius:50%;background:currentColor;opacity:.055}.summary-card-icon{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border-radius:12px;font-size:21px}.summary-card-content{position:relative;z-index:1;min-width:0}.preview-summary-card small{margin:2px 0 9px}.preview-summary-card strong{font-size:1.02rem;overflow-wrap:anywhere}.summary-sender{color:#6869d9}.summary-sender .summary-card-icon{background:#eeefff}.summary-month{color:#3278b8}.summary-month .summary-card-icon{background:#eaf3fb}.summary-target{color:#b77b13}.summary-target .summary-card-icon{background:#fff5df}.summary-sequence{color:#198754}.summary-sequence .summary-card-icon{background:#e7f6ee}.campaign-timeline{position:relative;margin:2px 0 5px;padding-left:22px}.campaign-timeline:before{content:"";position:absolute;left:7px;top:9px;bottom:9px;width:2px;background:currentColor;opacity:.2}.timeline-item{position:relative;display:flex;align-items:flex-start;gap:9px;min-height:27px}.timeline-dot{position:absolute;left:-22px;top:2px;display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:currentColor;color:#fff;font-size:9px;font-weight:800}.timeline-item strong,.timeline-item span{font-size:.76rem;line-height:1.2}.timeline-item span{margin-top:2px}.timeline-note{font-size:.72rem!important;margin-top:5px}@media(max-width:1250px){.preview-summary-panels{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.preview-summary-panels{grid-template-columns:1fr}.preview-summary-card{min-height:0}}
.timeline-label{color:var(--ink)!important}.timeline-date{display:block;margin-top:3px!important;color:#198754!important;font-weight:800!important;font-variant-numeric:tabular-nums}
.timeline-item{align-items:center}.timeline-item>div{display:flex;flex-direction:column;justify-content:center;padding-top:0}.timeline-label{display:block;line-height:16px}.timeline-dot{top:50%;margin-top:0!important;transform:translateY(-50%);display:grid;place-items:center;background:transparent;color:currentColor;font-size:1.15rem}.timeline-offset{color:var(--muted)!important;font-weight:400!important;font-size:.9em!important}.timeline-offset .bi{font-size:.8em;vertical-align:-.05em}.test-send-form .btn{height:46px}
.test-send-form .form-control,.test-send-form .form-select{margin-bottom:0}.test-send-form .btn{min-height:42px}
.campaign-status-badge{font-size:.38em;line-height:1;padding:.45em .7em;vertical-align:.28em!important;letter-spacing:.02em}
.btn-validation{height:46px;padding:.625rem 1rem;font-size:1rem;line-height:1.5;font-weight:700;display:inline-flex;align-items:center;gap:.55rem}.btn-validation i{font-size:1rem;line-height:1}
.page-head>.btn i{font-size:1rem;line-height:1}
.brand .brand-mailing{color:#fff!important}.brand>span:not(.brand-mailing){color:var(--primary)}
.login-card .brand-mailing{color:var(--ink)!important}
.campaign-meta{line-height:1.9}.campaign-meta i{width:1.1rem;color:var(--muted);text-align:center;margin-right:.25rem}
.campaign-form small.form-text{margin-top:-12px;margin-bottom:6px}
.sidebar .brand{width:120px}.sidebar .brand-logo{width:120px;max-height:80px}.login-card .brand-logo{width:100%;max-width:100%;max-height:none}
.search-control{position:relative}.search-control .form-control{padding-right:2.8rem}.search-clear{position:absolute;right:.7rem;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--muted);font-size:1.1rem;line-height:1;padding:0}.search-clear:hover{color:var(--primary)}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{display:none;-webkit-appearance:none}input[type=search]::-ms-clear{display:none;width:0;height:0}
.brand{display:block;width:max-content}.brand-logo{display:block;width:100%;height:auto;max-height:72px;object-fit:contain;object-position:left center;margin-bottom:12px}.login-card .brand-logo{object-position:center;margin:0 auto 14px;width:100%;max-width:100%;max-height:none}
.app-footer{display:flex;justify-content:space-between;gap:1rem;margin-top:30px;padding:18px 2px 4px;color:var(--muted);font-size:.82rem}.app-footer a,.login-card-footer a{color:inherit;font-weight:700}.login-card-footer{display:flex;justify-content:space-between;gap:1rem;margin-top:28px;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:.78rem}.mobile-header{display:none}
.main{min-height:100vh;display:flex;flex-direction:column}.main>.app-footer{margin-top:auto}
.app-footer{position:fixed;z-index:1000;left:250px;right:0;bottom:0;height:36px;margin:0!important;padding:0 48px;background:#f0f1f6;border-top:1px solid #e5e7ee;align-items:center}
.main{padding-bottom:84px}
.summary-sequence{grid-column:1/-1}.summary-recipients .summary-card-content strong{font-size:1.5rem}.summary-recipients .btn{width:auto}.summary-sequence .campaign-timeline{display:flex;position:relative;justify-content:space-between;gap:24px;margin:18px 0 4px;padding:18px 0 0}.summary-sequence .campaign-timeline:before{left:0;right:0;top:26px;bottom:auto;width:auto;height:2px}.summary-sequence .timeline-item{z-index:1;display:flex;flex:1;flex-direction:column;align-items:center;gap:8px;min-height:84px;text-align:center}.summary-sequence .timeline-dot{position:relative;left:auto;top:auto;transform:none;width:42px;height:42px;background:var(--surface);color:currentColor;font-size:2rem;line-height:1}.summary-sequence .timeline-item>div{align-items:center}.summary-sequence .timeline-label{font-size:.9rem}.summary-sequence .timeline-date{font-size:.9rem}
.summary-recipients{color:#c34d5b}.summary-recipients .summary-card-icon{background:#fdecef}.summary-sender{color:#6869d9}.summary-sender .summary-card-icon{background:#eeefff}.summary-month{color:#3278b8}.summary-month .summary-card-icon{background:#eaf3fb}.summary-target{color:#b77b13}.summary-target .summary-card-icon{background:#fff5df}.summary-sequence{color:#198754}.summary-sequence .summary-card-icon{background:#e7f6ee}
.summary-sequence .summary-card-content{flex:1;min-width:0}.summary-sequence .campaign-timeline{width:100%;align-items:flex-start;position:relative;padding:18px 28px 0}.summary-sequence .campaign-timeline:before{left:14px;right:14px;top:39px;height:2px}.summary-sequence .timeline-start{position:absolute;z-index:2;left:0;top:31px;width:16px;height:16px;border:2px solid currentColor;border-radius:50%;background:currentColor}.summary-sequence .timeline-end{position:absolute;z-index:2;right:0;top:32px;width:14px;height:14px;border-top:3px solid currentColor;border-right:3px solid currentColor;transform:rotate(45deg)}.summary-sequence .timeline-item{position:relative;z-index:3}.summary-sequence .timeline-dot{top:auto!important;transform:none!important;flex:0 0 42px}
.summary-sequence .campaign-timeline{height:132px;padding:0 28px;align-items:flex-start}.summary-sequence .campaign-timeline:before{top:39px!important}.summary-sequence .timeline-item{padding-top:18px;min-height:0}.summary-sequence .timeline-dot{position:relative!important;top:0!important;left:auto!important;transform:none!important}.summary-sequence .timeline-start{top:31px!important;background:#198754!important;border-color:#198754!important}.summary-sequence .timeline-end{top:32px!important}
.summary-sequence .timeline-end{border-color:#198754!important}
.summary-sequence .campaign-timeline{height:132px;padding:0 28px!important;display:flex!important;align-items:flex-start!important}.summary-sequence .campaign-timeline:before{top:21px!important}.summary-sequence .timeline-item{padding-top:0!important;display:flex!important;align-items:center!important;justify-content:flex-start;gap:8px;min-height:0;height:auto}.summary-sequence .timeline-dot{display:flex!important;align-items:center!important;justify-content:center;position:relative!important;top:0!important;width:42px;height:42px;flex:0 0 42px}.summary-sequence .timeline-item>div{align-items:center;margin-top:50px}.summary-sequence .timeline-start{top:13px!important}.summary-sequence .timeline-end{top:14px!important}
.summary-sequence .campaign-timeline{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:42px auto!important;column-gap:24px;row-gap:8px;height:132px!important;padding:0 28px!important;align-items:start!important}.summary-sequence .campaign-timeline:before{top:20px!important;left:14px!important;right:14px!important}.summary-sequence .timeline-item{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;height:auto!important;min-height:0!important;padding:0!important;margin:0!important;z-index:3}.summary-sequence .timeline-dot{position:relative!important;top:0!important;left:auto!important;transform:none!important;width:42px!important;height:42px!important;flex:0 0 42px!important;margin:0!important}.summary-sequence .timeline-item>div{display:flex!important;align-items:center!important;margin:0!important;padding:0!important}.summary-sequence .timeline-start{top:13px!important}.summary-sequence .timeline-end{top:14px!important}
.summary-sequence .campaign-timeline:before{bottom:auto!important;height:2px!important}.summary-sequence .timeline-start{width:16px!important;height:16px!important;background:#198754!important;border:2px solid #198754!important;border-radius:50%;transform:none!important}.summary-sequence .timeline-end{width:14px!important;height:14px!important;border:0!important;border-top:3px solid #198754!important;border-right:3px solid #198754!important;transform:rotate(45deg)!important}
@media(max-width:900px){.mobile-nav-toggle{display:grid;place-items:center;position:fixed;top:14px;right:14px;z-index:1205;width:44px;height:44px;border:0;border-radius:10px;background:var(--primary);color:#fff;font-size:1.35rem;box-shadow:0 5px 15px #1720332b}.sidebar{position:fixed;z-index:1090;inset:0 0 0 auto;width:min(82vw,300px);height:100vh;padding:31px 20px;transform:translateX(102%);transition:transform .25s ease;box-shadow:-10px 0 30px #17203333}.sidebar.is-open{transform:translateX(0)}.mobile-nav-backdrop{display:block;position:fixed;inset:0;z-index:1080;background:#17203366;opacity:0;pointer-events:none;transition:opacity .25s ease}.mobile-nav-backdrop.is-visible{opacity:1;pointer-events:auto}.main{margin:0;padding:25px 25px 84px}.stats,.grid-summary{grid-template-columns:repeat(2,1fr)}.app-footer{left:0;padding:0 25px}}
@media(max-width:900px){.mobile-header{display:flex;position:sticky;top:0;z-index:1091;height:72px;align-items:center;justify-content:space-between;padding:0 14px 0 25px;background:#172033;border-bottom:1px solid #29364e;color:#fff}.mobile-brand{font-size:22px;font-weight:800;letter-spacing:-1px;text-decoration:none;color:#fff}.mobile-brand .brand-mailing{color:#fff!important}.mobile-nav-toggle{position:static;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:10px;background:var(--primary);color:#fff;font-size:1.35rem}.sidebar .brand{display:none}.main{padding-bottom:84px}}
