@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&display=swap";:root{--bg: #f6f6f7;--surface: #ffffff;--surface-subtle: #fafbfb;--border: #e1e3e5;--border-strong: #c9cccf;--text: #1f2328;--muted: #616a75;--primary: #008060;--primary-hover: #006e52;--warn: #b54b00;--success: #0f8f5c;--action-soft-bg: #f8ede2;--action-soft-border: #e8c9ab;--action-soft-text: #8f4f24;--action-soft-hover: #f4e2d2;--action-strong-bg: #d58b4d;--action-strong-border: #c97e42;--action-strong-text: #ffffff;--action-strong-hover: #c3783c;--action-neutral-bg: #111111;--action-neutral-border: #1c1c1c;--action-neutral-text: #fff;--action-neutral-hover: #000;--shadow: 0 1px 0 rgba(22, 29, 37, .04), 0 3px 8px rgba(22, 29, 37, .06);--radius: 12px}:root[data-theme=dark]{--bg: #13171c;--surface: #1a1f26;--surface-subtle: #1f252d;--border: #2b323b;--border-strong: #3a434e;--text: #ecf0f5;--muted: #9ba6b2;--primary: #0f9c76;--primary-hover: #0a8765;--warn: #ffb17b;--success: #61d89f;--action-soft-bg: #3d3228;--action-soft-border: #5a4634;--action-soft-text: #ffd9b9;--action-soft-hover: #4b3c2f;--action-strong-bg: #d48d53;--action-strong-border: #d48d53;--action-strong-text: #16191f;--action-strong-hover: #c17d48;--action-neutral-bg: #141414;--action-neutral-border: #2c2c2c;--action-neutral-text: #ffffff;--action-neutral-hover: #191919;--shadow: 0 1px 0 rgba(0, 0, 0, .28), 0 10px 24px rgba(0, 0, 0, .28)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:IBM Plex Sans,Segoe UI,sans-serif;background:var(--bg);color:var(--text);overflow-x:hidden}h1,h2,h3,h4,p{margin:0}.app-shell{width:100%;min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr);gap:18px;padding:16px;overflow-x:clip}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.sidebar{display:grid;align-content:start;gap:18px;padding:16px;position:sticky;top:16px;max-height:calc(100vh - 32px)}.sidebar-eyebrow,.eyebrow{color:var(--muted);font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;font-weight:600}.sidebar-title{margin-top:4px;font-size:1.28rem;font-weight:700}.subtle{margin-top:6px;color:var(--muted);font-size:.9rem}.sidebar-nav{display:grid;gap:6px}.nav-item{border:1px solid transparent;background:transparent;color:var(--text);border-radius:8px;text-align:left;padding:10px 12px;font-size:.92rem;font-weight:600;cursor:pointer}.nav-item:hover{background:var(--surface-subtle);border-color:var(--border)}.nav-item.active{background:#0080601a;border-color:#00806040;color:var(--primary)}.sidebar-footer{margin-top:auto;display:grid;gap:6px;padding-top:8px;border-top:1px solid var(--border)}.sidebar-footer p{color:var(--muted);font-size:.82rem}.sidebar-footer strong{font-size:.9rem}.theme-toggle{margin-top:6px;border:1px solid var(--border);border-radius:8px;background:var(--surface-subtle);color:var(--text);padding:9px 10px;font-weight:600;cursor:pointer}.main-panel{display:grid;align-content:start;gap:12px;min-width:0}.topbar{padding:14px 16px;display:flex;justify-content:space-between;gap:12px;align-items:center}.topbar h2{margin-top:4px;font-size:1.25rem}.topbar-meta{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.error-banner{padding:11px 12px;border-color:#b54b0052;color:var(--warn);font-weight:600;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}.placeholder{padding:20px}.placeholder p{margin-top:8px;color:var(--muted)}.klaviyo-page{display:grid;gap:12px;min-width:0}.summary-grid{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.stat{padding:14px}.stat p{color:var(--muted);font-size:.84rem}.stat strong{display:block;margin-top:5px;font-size:1.5rem;font-weight:700}.toolbar{padding:14px;display:flex;justify-content:space-between;align-items:center;gap:12px}.toolbar h3{font-size:1.02rem}.toolbar p{margin-top:5px;color:var(--muted);font-size:.88rem}.toolbar-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.btn{border:1px solid transparent;background:var(--primary);color:#fff;border-radius:8px;padding:9px 12px;font-size:.88rem;font-weight:600;cursor:pointer;transition:background .12s ease}.btn:hover:not(:disabled){background:var(--primary-hover)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.ghost{background:var(--surface-subtle);border-color:var(--border);color:var(--text)}.btn.ghost:hover:not(:disabled){background:color-mix(in srgb,var(--surface-subtle) 80%,var(--border))}.btn.warn{background:#d46b08}.btn.warn:hover:not(:disabled){background:#b65a06}.btn.tiny{padding:7px 9px;font-size:.79rem}.btn.action-soft{background:var(--action-soft-bg);border-color:var(--action-soft-border);color:var(--action-soft-text)}.btn.action-soft:hover:not(:disabled){background:var(--action-soft-hover)}.btn.action-strong{background:var(--action-strong-bg);border-color:var(--action-strong-border);color:var(--action-strong-text)}.btn.action-strong:hover:not(:disabled){background:var(--action-strong-hover)}.btn.action-neutral{background:var(--action-neutral-bg);border-color:var(--action-neutral-border);color:var(--action-neutral-text)}.btn.action-neutral:hover:not(:disabled){background:var(--action-neutral-hover);border-color:var(--action-neutral-border)}.klaviyo-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:10px;align-items:start}.brand-list,.brand-detail,.performance-panel,.job-list,.terminal-wrap{padding:12px;min-width:0}.brand-list-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.brand-list header p,.brand-detail header p,.job-list header p,.terminal-wrap header p{margin-top:4px;color:var(--muted);font-size:.86rem}.brand-grid{margin-top:10px;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.card-variant-switch{display:flex;gap:5px;flex-wrap:wrap}.variant-btn{border:1px solid var(--border);background:var(--surface-subtle);color:var(--muted);border-radius:999px;min-width:36px;padding:4px 8px;font-size:.75rem;font-weight:700;cursor:pointer}.variant-btn.active{border-color:#0080604d;color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,var(--surface-subtle))}.brand-card{border:1px solid var(--border);border-radius:10px;background:var(--surface-subtle);padding:12px;display:grid;gap:10px;align-content:start;cursor:pointer;min-width:0;min-height:220px;perspective:1000px;transition:border-color .1s ease,box-shadow .1s ease,transform .1s ease}.brand-card.refreshing{display:grid;place-items:center}.brand-card.syncing{overflow:hidden}.brand-refreshing{width:100%;min-height:180px;display:grid;place-items:center;gap:14px}.brand-flip{position:relative;min-height:190px;transform-style:preserve-3d;transition:transform .34s ease}.brand-flip.is-flipped{transform:rotateY(180deg)}.brand-face{width:100%;min-height:190px;display:grid;gap:10px;align-content:start;backface-visibility:hidden;-webkit-backface-visibility:hidden}.brand-face-back{position:absolute;inset:0;transform:rotateY(180deg);border:1px dashed color-mix(in srgb,var(--primary) 34%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--surface-subtle) 90%,var(--primary) 10%);padding:14px;display:grid;place-items:center}.brand-syncing{display:grid;justify-items:center;text-align:center;gap:10px}.brand-sync-title{font-size:.95rem;font-weight:700}.brand-refresh-spinner{width:34px;height:34px;border-radius:999px;border:3px solid color-mix(in srgb,var(--primary) 30%,var(--border));border-top-color:var(--primary);animation:spin .9s linear infinite}.brand-refresh-bar{width:min(180px,70%);height:7px;border-radius:999px;background:color-mix(in srgb,var(--primary) 15%,var(--surface-subtle));border:1px solid color-mix(in srgb,var(--primary) 35%,var(--border));position:relative;overflow:hidden}.brand-refresh-bar:after{content:"";position:absolute;inset:0;width:40%;background:linear-gradient(90deg,transparent 0%,var(--primary) 48%,transparent 100%);animation:scan 1.1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes scan{0%{transform:translate(-120%)}to{transform:translate(260%)}}.brand-card.selected{border-color:var(--primary);box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 35%,transparent)}.brand-card:hover{border-color:color-mix(in srgb,var(--primary) 24%,var(--border))}.brand-head{display:flex;justify-content:space-between;align-items:start;gap:8px}.brand-head h4{font-size:1.06rem;line-height:1.2}.metric{font-size:1.92rem;font-weight:700;line-height:1}.metric-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:stretch}.metric-block{min-width:0;display:grid;gap:4px}.metric-right{justify-items:end;text-align:right}.metric-secondary{color:var(--primary)}.metric-alert{color:#d46b08}.muted{color:var(--muted);font-size:.86rem}.brand-meta{display:flex;gap:7px;flex-wrap:wrap;color:var(--muted);font-size:.8rem}.brand-status-lines{display:grid;gap:4px}.renewal-line,.meta-line{color:var(--muted);font-weight:400;font-size:.84rem;overflow-wrap:anywhere}.renewal-line span,.meta-line span{font-weight:700}.inline-actions{margin-top:auto;display:flex;justify-content:flex-start;align-items:center;gap:8px}.inline-actions .btn.action-strong{margin-left:auto}.brand-card.variant-v1{background:var(--surface-subtle)}.brand-card.variant-v2{background:var(--surface);border-left:4px solid color-mix(in srgb,var(--primary) 30%,var(--border));padding-left:10px}.brand-card.variant-v3{background:var(--surface);border-color:var(--border-strong)}.brand-card.variant-v3 .metric-duo{border:1px solid var(--border);border-radius:8px;padding:10px;background:var(--surface-subtle)}.brand-card.variant-v4{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-subtle) 92%,var(--primary) 8%) 0%,var(--surface-subtle) 100%)}.brand-card.variant-v4 .inline-actions{padding-top:8px;border-top:1px dashed var(--border)}.brand-card.variant-v5{background:var(--surface);box-shadow:var(--shadow)}.brand-card.variant-v5 .brand-head{padding-bottom:6px;border-bottom:1px solid var(--border)}.brand-card.variant-v5 .renewal-line{font-weight:600;color:color-mix(in srgb,var(--muted) 75%,var(--text))}.command-pane{display:grid;gap:10px;min-width:0}.detail-grid{margin-top:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.detail-grid label{display:block;color:var(--muted);font-size:.74rem;margin-bottom:3px}.detail-grid code,.detail-grid span{font-size:.84rem;overflow-wrap:anywhere}.warn-text{margin-top:10px;color:var(--warn);font-weight:600;font-size:.88rem;white-space:pre-wrap;overflow-wrap:anywhere}.detail-actions{margin-top:10px;display:flex;gap:7px;flex-wrap:wrap}.performance-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.performance-header p{margin-top:4px;color:var(--muted);font-size:.86rem}.performance-actions{display:flex;gap:8px;align-items:center}.range-select{border:1px solid var(--border);background:var(--surface-subtle);color:var(--text);border-radius:8px;padding:6px 8px;font-size:.82rem;font-weight:600}.performance-summary{margin-top:10px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.performance-summary article{border:1px solid var(--border);border-radius:8px;background:var(--surface-subtle);padding:8px;display:grid;gap:5px}.performance-summary label{color:var(--muted);font-size:.76rem}.performance-summary strong{font-size:1.04rem}.performance-grid{margin-top:10px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.performance-list{border:1px solid var(--border);border-radius:8px;background:var(--surface-subtle);padding:8px;display:grid;gap:7px;max-height:280px;overflow:auto}.performance-list h4{font-size:.93rem}.performance-row{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid var(--border);padding-bottom:7px}.performance-row:last-child{border-bottom:none;padding-bottom:0}.performance-name{font-size:.86rem;font-weight:600}.job-items{margin-top:10px;display:grid;gap:7px;max-height:230px;overflow:auto}.job-item{border:1px solid var(--border);border-radius:9px;background:var(--surface-subtle);padding:9px;display:flex;justify-content:space-between;align-items:center;gap:8px;cursor:pointer;text-align:left;color:var(--text);min-width:0}.job-item.selected{border-color:var(--primary)}.job-item div{display:grid;gap:4px;min-width:0}.job-item span{color:var(--muted);font-size:.79rem}.pill{border:1px solid var(--border);border-radius:999px;padding:4px 9px;font-size:.73rem;font-weight:600;background:var(--surface-subtle);color:var(--text);white-space:nowrap}.pill.neutral{color:var(--muted)}.pill.ok,.pill.succeeded{color:var(--success);border-color:color-mix(in srgb,var(--success) 40%,var(--border))}.pill.warn,.pill.failed{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 40%,var(--border))}.pill.running,.pill.queued{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 40%,var(--border))}.command-preview{margin-top:10px;display:grid;gap:6px}.command-preview p{color:var(--muted);font-size:.82rem}.command-preview code{display:block;font-family:SFMono-Regular,Menlo,Consolas,monospace;background:var(--surface-subtle);border:1px solid var(--border);border-radius:8px;padding:7px;font-size:.76rem;max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;overflow-x:hidden}.terminal{margin-top:10px;border-radius:8px;border:1px solid var(--border);background:#0f1215;color:#e8ecf1;padding:10px;min-height:210px;max-height:340px;overflow:auto;font-family:SFMono-Regular,Menlo,Consolas,monospace;font-size:.76rem;line-height:1.4;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.modal-backdrop{position:fixed;inset:0;background:#0c111875;display:grid;place-items:center;z-index:60;padding:14px}.confirm-modal{width:min(460px,100%);padding:16px;display:grid;gap:10px}.confirm-modal h3{font-size:1.04rem}.confirm-modal p{color:var(--text);font-size:.94rem}.modal-actions{margin-top:6px;display:flex;gap:8px;justify-content:flex-end}@media(max-width:1240px){.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.klaviyo-layout{grid-template-columns:1fr}}@media(max-width:960px){.app-shell{grid-template-columns:1fr;padding:12px}.sidebar{position:static;max-height:none;gap:12px}.sidebar-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.nav-item{text-align:center}.sidebar-footer{margin-top:0}}@media(max-width:760px){.topbar,.toolbar{flex-direction:column;align-items:flex-start}.toolbar-actions,.topbar-meta{width:100%}.toolbar-actions .btn{flex:1}.summary-grid,.brand-grid,.performance-summary,.performance-grid,.detail-grid,.sidebar-nav{grid-template-columns:1fr}.brand-list-header{flex-direction:column;align-items:flex-start}.metric-duo{grid-template-columns:1fr}.metric-right{justify-items:start;text-align:left}}
