:root{--ink:#1c2926;--muted:#687571;--line:#dfe5e2;--surface:#fff;--subtle:#f7f9f8;--canvas:#f3f5f4;--accent:#13795b}*{box-sizing:border-box}html,body{max-width:100vw;min-height:100%}body{color:var(--ink);background:var(--canvas);letter-spacing:0;margin:0}a{color:inherit;text-decoration:none}button,input{letter-spacing:0}.app-layout{min-height:100vh}.app-sider{z-index:20;height:100vh;top:0;position:sticky!important}.brand-lockup{color:#fff;white-space:nowrap;border-bottom:1px solid #2c3936;align-items:center;gap:11px;height:64px;padding:0 20px;font-size:17px;font-weight:650;display:flex;overflow:hidden}.brand-lockup .anticon{color:#62c7a8;font-size:23px}.app-header{border-bottom:1px solid var(--line);z-index:15;align-items:center;height:64px;display:flex;position:sticky;top:0;padding:0 22px!important}.header-spacer{flex:1}.operator-name{color:var(--muted);margin-right:6px;font-size:13px}.app-content{min-width:0;padding:28px}.page-stack{flex-direction:column;gap:18px;max-width:1500px;margin:0 auto;display:flex}.page-header{justify-content:space-between;align-items:flex-start;gap:20px;min-height:54px;display:flex}.page-header h1{margin:0;font-size:25px;font-weight:700;line-height:1.3}.page-header p,.section-heading p{color:var(--muted);margin:5px 0 0;font-size:13px}.page-header-extra{flex-shrink:0}.filter-bar{background:var(--surface);border:1px solid var(--line);border-radius:6px;grid-template-columns:minmax(240px,1.5fr) minmax(150px,1fr) minmax(180px,1fr) minmax(130px,.7fr) auto;align-items:center;gap:10px;padding:15px 16px;display:grid}.customer-filter-bar{grid-template-columns:minmax(240px,1.4fr) minmax(150px,.8fr) minmax(220px,1.1fr) minmax(190px,auto) minmax(220px,1.1fr)}.customer-filter-bar>.ant-select,.customer-filter-bar>.ant-input-affix-wrapper,.customer-filter-bar>.ant-segmented{width:100%;min-width:0}.filter-bar.compact{grid-template-columns:minmax(180px,260px) minmax(160px,220px) auto;justify-content:start}.table-surface,.detail-surface,.relation-item{background:var(--surface);border:1px solid var(--line);border-radius:6px;overflow:hidden}.table-surface .ant-table-wrapper{width:100%}.detail-surface{padding:20px}.customer-overview{grid-template-columns:76px 1fr;align-items:start;gap:20px;display:grid}.primary-link{color:var(--accent);font-weight:600}.primary-link:hover{color:#0d6047;text-decoration:underline}.row-subtitle{color:var(--muted);margin-top:3px;font-size:11px;display:block}.muted{color:var(--muted)}.success-text{color:#27864a}.error-text{color:#c53b3f}.section-heading{justify-content:space-between;align-items:flex-start;gap:18px;min-height:34px;display:flex}.section-heading.padded{padding:18px 20px 12px}.section-heading h2{margin:0;font-size:17px;line-height:1.35}.section-heading>span{color:var(--muted);font-size:13px}.relation-item{padding:20px}.relation-title{border-bottom:1px solid #edf0ef;justify-content:space-between;align-items:flex-start;margin-bottom:17px;padding-bottom:14px;display:flex}.relation-title h3{margin:0;font-size:16px}.relation-title span{color:var(--muted);margin-top:4px;font-size:12px;display:block}.relation-tags{border-top:1px solid #edf0ef;grid-template-columns:1fr minmax(300px,420px);align-items:start;gap:20px;margin-top:18px;padding-top:16px;display:grid}.relation-operations{border-top:1px solid #edf0ef;margin-top:18px;padding-top:18px}.operation-summary{grid-template-columns:repeat(3,minmax(130px,1fr)) auto;align-items:center;gap:16px;display:grid}.operation-summary>div{flex-direction:column;gap:6px;display:flex}.operation-summary>div>span{color:var(--muted);font-size:12px}.timeline-heading{justify-content:space-between;margin:22px 0 14px;display:flex}.timeline-entry>div{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.timeline-entry time,.timeline-entry small{color:var(--muted);font-size:12px}.timeline-entry p{color:#44514e;white-space:pre-wrap;margin:5px 0}.operation-form{flex-direction:column;gap:16px;padding-top:8px;display:flex}.operation-result-checks{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;display:grid}.import-surface{background:var(--surface);border:1px solid var(--line);border-radius:6px;flex-direction:column;gap:18px;padding:20px;display:flex}.import-actions{justify-content:flex-end;display:flex}.template-toolbar{grid-template-columns:repeat(3,minmax(180px,1fr));align-items:center;gap:12px;display:grid}.template-summary{background:var(--subtle);border:1px solid var(--line);border-radius:6px;grid-template-columns:minmax(180px,1fr) minmax(220px,300px) auto;align-items:center;gap:12px;padding:14px 16px;display:grid}.import-metrics{grid-template-columns:repeat(4,1fr)}.tag-list{flex-wrap:wrap;align-items:center;gap:4px 0;min-height:32px;display:flex}.tag-editor,.tag-editor .ant-select{width:100%}.metrics-grid{background:var(--surface);border:1px solid var(--line);border-radius:6px;grid-template-columns:repeat(4,1fr);display:grid}.metrics-grid .ant-statistic{border-right:1px solid var(--line);padding:18px 20px}.metrics-grid .ant-statistic:last-child{border-right:0}.centered-state{min-height:100vh;color:var(--muted);place-items:center;display:grid}.login-page{background:#eef2f0;grid-template-columns:minmax(320px,.8fr) minmax(480px,1.2fr);min-height:100vh;display:grid}.login-brand{color:#fff;background:#182321;justify-content:center;align-items:center;gap:22px;padding:64px;display:flex}.login-mark{color:#62c7a8;flex:none;font-size:64px}.login-kicker{color:#9fb4ae;font-size:11px;font-weight:700}.login-brand h1{margin:8px 0 4px;font-size:32px;line-height:1.2}.login-brand p{color:#c5d0cd;margin:0;font-size:14px}.login-panel{background:var(--surface);place-items:center;padding:42px;display:grid}.login-form-wrap{width:min(100%,390px)}.login-form-wrap h2{margin:0;font-size:24px}.login-form-wrap>p{color:var(--muted);margin:8px 0 25px}.login-form-wrap .ant-alert{margin-bottom:18px}.batch-form,.batch-preview{flex-direction:column;gap:18px;padding-top:12px;display:flex}.campaign-wizard{flex-direction:column;gap:22px;padding-top:12px;display:flex}.page-header>div{min-width:0}.page-header h1{overflow-wrap:anywhere}.campaign-form-grid,.campaign-target-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.campaign-target-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.campaign-form-grid .ant-form-item{min-width:0;margin-bottom:4px}.campaign-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.campaign-groups{flex-direction:column;gap:12px;margin-top:16px;display:flex}.campaign-group-row{grid-template-columns:60px 180px minmax(0,1fr);align-items:center;gap:12px;display:grid}.campaign-group-row>.ant-select,.campaign-group-row>.ant-input-number{width:100%;min-width:0}.batch-context,.field-stack{flex-direction:column;gap:8px;display:flex}.batch-metrics{border:1px solid var(--line);border-radius:6px;grid-template-columns:repeat(4,1fr);display:grid}.batch-metrics .ant-statistic{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0;padding:14px}.batch-metrics .ant-statistic:nth-child(4n){border-right:0}.batch-metrics .ant-statistic:nth-last-child(-n+3){border-bottom:0}@media (max-width:1400px){.customer-filter-bar{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1000px){.filter-bar{grid-template-columns:1fr 1fr}.filter-bar>:first-child{grid-column:1/-1}.relation-tags{grid-template-columns:1fr}.operation-summary{grid-template-columns:1fr 1fr}.login-page{grid-template-columns:1fr}.login-brand{min-height:220px;padding:42px 28px}}@media (max-width:640px){.campaign-form-grid,.campaign-target-filters,.campaign-group-row{grid-template-columns:minmax(0,1fr)}.page-header{flex-wrap:wrap}.page-header-extra{flex-shrink:1;max-width:100%}.app-content{padding:18px 12px 28px}.app-header{padding:0 12px!important}.operator-name{display:none}.page-header h1{font-size:21px}.filter-bar,.filter-bar.compact{grid-template-columns:1fr}.filter-bar>:first-child{grid-column:auto}.customer-overview{grid-template-columns:1fr}.metrics-grid{grid-template-columns:1fr 1fr}.metrics-grid .ant-statistic:nth-child(2){border-right:0}.metrics-grid .ant-statistic:nth-child(-n+2){border-bottom:1px solid var(--line)}.login-brand{justify-content:flex-start;min-height:190px}.login-mark{font-size:48px}.login-brand h1{font-size:26px}.login-panel{place-items:start center;padding:36px 24px}.batch-metrics{grid-template-columns:1fr 1fr}.template-toolbar,.template-summary,.operation-summary,.operation-result-checks{grid-template-columns:1fr}.batch-metrics .ant-statistic:nth-child(2n){border-right:0}.batch-metrics .ant-statistic:nth-last-child(-n+3){border-bottom:1px solid var(--line)}.batch-metrics .ant-statistic:last-child{border-bottom:0}}.ops-editor-form{gap:16px;display:grid}.ops-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;display:grid}.ops-form-grid .ant-form-item{min-width:0}.ops-upload-zone{background:#f6faf8;border:1px dashed #b8cbc5;border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;padding:16px;display:flex}.ops-upload-zone>span{color:#64736e;font-size:12px}.ops-message-preview{background:#eef1f2;border-radius:12px;width:100%;padding:20px}.ops-preview-caption{color:#66746f;margin-bottom:16px;font-size:12px}.ops-message-stream{flex-direction:column;align-items:flex-start;gap:12px;max-width:430px;display:flex}.ops-text-bubble{white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;border-radius:4px 12px 12px;max-width:100%;padding:12px 16px}.ops-preview-images{flex-wrap:wrap;gap:6px;max-width:100%;display:flex}.ops-preview-images .ant-image-img{object-fit:contain;background:#fff;border-radius:6px;max-height:220px}.ops-video-tile.ant-btn{color:#235548;white-space:normal;background:#e1e8e6;flex-direction:column;justify-content:center;width:240px;max-width:100%;height:128px;display:flex}.ops-video-tile .anticon{font-size:28px}.ops-video-tile small{white-space:nowrap;text-overflow:ellipsis;color:#5c716a;max-width:210px;display:block;overflow:hidden}.ops-file-card,.ops-link-card,.ops-mini-card{color:#253e35;overflow-wrap:anywhere;background:#fff;border:1px solid #e2e7e5;border-radius:8px;flex-direction:column;gap:10px;width:300px;max-width:100%;padding:14px;display:flex}.ops-file-card{flex-direction:row;align-items:center}.ops-file-card>.anticon{color:#378768;font-size:32px}.ops-file-card small,.ops-link-card small,.ops-mini-card small{color:#77837d;margin-top:6px;font-size:12px;display:block}.ops-link-card>div{color:#718078;justify-content:space-between;gap:12px;font-size:13px;display:flex}.ops-moment-preview .ops-message-stream{background:#fff;border-radius:8px;max-width:430px;padding:16px}.ops-moment-preview .ops-text-bubble{padding:0}@media (max-width:680px){.ops-form-grid{grid-template-columns:minmax(0,1fr)}.ops-message-preview{padding:12px}}.ops-advanced-filters{grid-column:1/-1;margin-bottom:20px}
