.sales-followup-overlay { position:fixed; inset:0; z-index:10050; display:flex; align-items:center; justify-content:center; padding:16px; box-sizing:border-box; background:rgb(15 23 42 / 42%); backdrop-filter:blur(4px); }
.sales-followup-overlay.is-contained { position:absolute; z-index:40; border-radius:inherit; }
.sales-followup-modal { width:min(520px,100%); max-height:100%; box-sizing:border-box; overflow:auto; padding:22px; border:1px solid #e5e7eb; border-radius:20px; background:#fff; color:#1d1d1f; box-shadow:0 20px 60px #0003; font:14px/1.5 system-ui,sans-serif; }
.sales-followup-modal header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; }
.sales-followup-modal h2 { margin:0; font-size:18px; font-weight:600; }
.sales-followup-modal button { border:0; border-radius:8px; padding:7px 10px; background:#f2f3f5; color:#333; font:inherit; cursor:pointer; }
.sales-followup-modal [data-followup-close] { display:grid; padding:2px; background:none; }
.sales-followup-modal [data-followup-close] svg { width:22px; height:22px; }
.sales-followup-modal button:disabled { opacity:.5; }
.sales-followup-modal :focus-visible { outline:2px solid #007aff; outline-offset:3px; }
.sales-followup-modal .sales-admin-followup { margin:0 0 16px; padding:0; border:0; background:none; }
.sales-followup-modal .sales-admin-followup-preview { margin:14px 0; padding:14px; border-radius:14px; background:#f5f7fa; white-space:pre-wrap; overflow-wrap:anywhere; font:inherit; }
.sales-followup-modal a { color:#176db6; }
.sales-followup-view-status { font-weight:600; margin:0 0 6px; }
.sales-followup-view-time,.sales-followup-view-reason { font-size:12px; color:#6e6e73; }
.sales-followup-view-status.is-scheduled { color:#b8860b; }
.sales-followup-view-status.is-sent { color:#258451; }
.sales-followup-view-status.is-warning { color:#b44444; }
.sales-followup-view-status.is-pending { color:#176db6; }
.sales-followup-view-status.is-inactive { color:#6e6e73; }
.sales-admin-call-detail-actions button[data-action="play-call-audio"] { color:#1d1d1f; background:transparent; }
.sales-admin-call-detail-actions button[data-action="play-call-audio"] svg { fill:#1d1d1f; }

.sales-followup-tools { display:flex; gap:8px; justify-content:flex-end; }
.sales-followup-tools button { background:transparent; padding:5px; display:inline-flex; }
.sales-followup-tools button[hidden] { display:none; }
.sales-followup-tools svg { width:22px; height:22px; }
.sales-followup-tools [data-followup-rules] svg { fill:currentColor; }
.sales-followup-modal [data-followup-feedback]:empty { display:none; }
.sales-followup-modal [data-followup-rules-form] label { display:block; margin:16px 0; font-size:13px; font-weight:500; }
.sales-followup-modal textarea { display:block; box-sizing:border-box; width:100%; margin-top:6px; padding:10px; border:1px solid #d2d2d7; border-radius:10px; font:inherit; resize:vertical; }
.sales-followup-modal [data-followup-rules-form] { margin-bottom:12px; }
@keyframes sales-followup-spin { to { transform:rotate(360deg); } }
@media (prefers-reduced-motion:no-preference) { [data-followup-regenerate][aria-busy="true"] svg { animation:sales-followup-spin 1s linear infinite; } }

.sales-admin-call-detail-actions .sales-followup-trigger { color:#1d1d1f; background:transparent; }

.sales-followup-modal .sales-admin-followup-header h3 { display:none; }
.sales-followup-modal .sales-admin-followup-tools button { background:transparent; color:#1d1d1f; }

.sales-followup-rules-intro { color: var(--sales-muted); font-size: 13px; line-height: 1.55; margin: 12px 0 18px; }
.sales-followup-rules-tabs { display: flex; gap: 3px; padding: 4px; background: #f2f2f5; border-radius: 11px; }
.sales-followup-rules-tabs button { flex: 1; border: 0; border-radius: 8px; padding: 9px 8px; background: transparent; color: var(--sales-muted); font-size: 12px; font-weight: 500; cursor: pointer; }
.sales-followup-rules-tabs button[aria-selected="true"] { background: #fff; color: var(--sales-ink); box-shadow: 0 1px 4px rgba(0,0,0,.08); }
.sales-followup-modal[data-rules-mode="true"] fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.sales-followup-modal[data-rules-mode="true"] label { display: block; margin: 14px 0 7px; font-size: 12px; font-weight: 500; }
.sales-followup-modal[data-rules-mode="true"] textarea, .sales-followup-modal[data-rules-mode="true"] input { width: 100%; border: 1px solid var(--sales-line); border-radius: 12px; background: #fafafa; padding: 12px 14px; font: inherit; font-size: 13px; line-height: 1.65; color: var(--sales-ink); }
.sales-followup-modal[data-rules-mode="true"] textarea { resize: vertical; min-height: 180px; }
.sales-followup-modal[data-rules-mode="true"] input { max-width: 260px; }
.sales-followup-modal[data-rules-mode="true"] :is(button, input, textarea):focus-visible { outline: 2px solid var(--sales-blue); outline-offset: 3px; }
.sales-followup-modal[data-rules-mode="true"] [hidden] { display: none !important; }
.sales-followup-rules-feedback { margin: 10px 0 0; color: var(--sales-blue); font-size: 12px; }
.sales-followup-rules-feedback:empty { display: none; }
.sales-followup-rules-facts { margin-top: 14px; }
.sales-followup-rules-facts > div { display: grid; grid-template-columns: 130px 1fr; gap: 12px; padding: 11px 0; border-bottom: 1px solid var(--sales-line); font-size: 12px; }
.sales-followup-rules-facts span { color: var(--sales-muted); }
.sales-followup-rules-facts strong { font-weight: 500; }
.sales-followup-rules-bottom { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-top: 18px; }
.sales-followup-rules-bottom p { margin: 0; max-width: 490px; font-size: 11px; color: var(--sales-muted); }

.sales-followup-modal { --sales-ink:#1d1d1f; --sales-muted:#6e6e73; --sales-line:#e5e5ea; --sales-blue:#007aff; }
.sales-followup-modal[data-rules-mode="true"] { width:min(800px,100%); padding:26px; border-radius:24px; }
.sales-followup-modal[data-rules-mode="true"] h2 { font-size:25px; letter-spacing:-.8px; }
.sales-followup-modal [data-followup-kicker] { margin:0 0 5px; color:#6e6e73; font-size:11px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; }
.sales-followup-modal [data-followup-rules-form] label { margin:14px 0 7px; }
.sales-followup-modal [data-followup-rules-form] textarea,
.sales-followup-modal [data-followup-rules-form] input { box-sizing:border-box; margin-top:0; }
.sales-followup-modal .sales-admin-form-note { font-size:11px; color:#6e6e73; margin:6px 0 14px; }
.sales-followup-modal .sales-followup-rules-bottom button { flex:none; padding:10px 18px; background:#007aff; color:white; }
.sales-followup-modal .sales-admin-followup-tools { gap:6px; }
.sales-followup-modal .sales-admin-followup-tools .sales-admin-followup-icon,
.sales-followup-modal .sales-followup-tools button { display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; padding:6px; flex:none; }
.sales-followup-modal .sales-admin-followup-tools .sales-admin-followup-icon svg,
.sales-followup-modal .sales-followup-tools button svg { width:28px; height:28px; flex:none; }
.sales-followup-modal [hidden] { display:none !important; }
@media (max-width:600px) { .sales-followup-modal[data-rules-mode="true"] { padding:20px 16px; } }

.sales-followup-status-row { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:8px; }
.sales-followup-status-row .sales-followup-view-status { margin:0; min-width:0; }
.sales-followup-status-row .sales-followup-tools { flex-shrink:0; gap:2px; }
.sales-followup-modal [data-followup-edit-form] label { display:block; margin:12px 0; }
.sales-followup-modal [data-followup-edit-time] { display:block; margin-top:6px; padding:9px; border:1px solid #d2d2d7; border-radius:9px; font:inherit; max-width:100%; box-sizing:border-box; }
.sales-followup-edit-actions { display:flex; gap:8px; margin-top:16px; }
.sales-followup-modal [data-followup-edit-save] { background:#007aff; color:#fff; }
@media (max-width:400px) { .sales-followup-status-row .sales-followup-tools button { width:34px; padding:3px; } }
