:root{color:#17202a;background:#eef2f6;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--border: #d7dee8;--muted: #64748b;--panel: #ffffff;--primary: #0f766e;--primary-dark: #115e59;--danger: #b42318;--success: #067647}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{border:1px solid var(--border);border-radius:8px;background:#fff;color:#17202a;cursor:pointer;font-weight:700;min-height:42px;padding:0 14px}button:disabled{cursor:not-allowed;opacity:.55}input,select,textarea{border:1px solid var(--border);border-radius:8px;color:#17202a;outline:none;padding:11px 12px;width:100%}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0f766e24}textarea{min-height:142px;resize:vertical}label{display:grid;gap:8px;font-size:.9rem;font-weight:700}.app-shell{min-height:100vh;padding:28px}.workspace{display:grid;gap:18px;margin:0 auto;max-width:1320px}.topbar{align-items:end;display:flex;gap:20px;justify-content:space-between}.eyebrow{color:var(--primary-dark);font-size:.78rem;font-weight:800;letter-spacing:0;margin:0 0 8px;text-transform:uppercase}h1,h2{margin:0}h1{font-size:clamp(2rem,5vw,3.8rem);line-height:1}h2{font-size:1.05rem}.metrics{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(105px,1fr))}.metric{background:#fff;border:1px solid var(--border);border-radius:8px;display:grid;gap:4px;padding:14px}.metric strong{font-size:1.5rem}.metric span,.hint{color:var(--muted);font-size:.85rem}.layout{display:grid;gap:18px;grid-template-columns:minmax(280px,.9fr) minmax(360px,1.1fr)}.panel{background:var(--panel);border:1px solid var(--border);border-radius:8px;display:grid;gap:16px;padding:18px}.panel-heading{align-items:center;display:flex;gap:14px;justify-content:space-between}.file-button{align-items:center;background:#ecfdf3;border:1px solid #a6f4c5;border-radius:8px;color:#067647;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:800;min-height:38px;padding:0 12px}.file-button input{display:none}.primary-button,.send-button{background:var(--primary);border-color:var(--primary);color:#fff}.send-button{min-height:48px}.badge{background:#f8fafc;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:.78rem;font-weight:800;padding:7px 10px}.campaign-panel{align-content:start}.message-box{min-height:210px}.success,.error{border-radius:8px;font-weight:700;margin:0;padding:12px}.success{background:#ecfdf3;color:var(--success)}.error{background:#fef3f2;color:var(--danger)}.customer-toolbar{align-items:start}.filters{display:grid;gap:10px;grid-template-columns:minmax(220px,1fr) 180px;max-width:620px;width:100%}.bulk-actions{display:flex;flex-wrap:wrap;gap:10px}.table-wrap{overflow:auto}table{border-collapse:collapse;min-width:760px;width:100%}th,td{border-bottom:1px solid var(--border);padding:13px 10px;text-align:left;vertical-align:middle}th{color:var(--muted);font-size:.78rem;text-transform:uppercase}td:first-child,th:first-child{width:72px}td input[type=checkbox]{height:18px;width:18px}.status{border-radius:999px;display:inline-flex;font-size:.78rem;font-weight:800;padding:6px 10px;white-space:nowrap}.status-new{background:#eff6ff;color:#175cd3}.status-active{background:#ecfdf3;color:#067647}.status-vip{background:#fffaeb;color:#b54708}.status-inactive{background:#f2f4f7;color:#475467}@media(max-width:900px){.app-shell{padding:18px}.topbar,.panel-heading,.customer-toolbar{align-items:stretch;flex-direction:column}.layout,.filters,.metrics{grid-template-columns:1fr}}
