*{box-sizing:border-box}:root{--wa-green-dark:#075e54;--wa-green:#128c7e;--wa-bubble-out:#d9fdd3;--wa-bg:#efeae2;--ink:#1f2428;--muted:#667085;--line:#e4e7ec}html,body{height:100%;color:var(--ink);background:#f4f5f7;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans Arabic,Helvetica Neue,Arial,sans-serif}.sim{justify-content:center;align-items:stretch;gap:24px;height:100vh;padding:24px;display:flex}.phone{background:var(--wa-bg);border-radius:18px;flex-direction:column;width:420px;min-width:360px;display:flex;overflow:hidden;box-shadow:0 12px 40px #1018282e}.wa-header{background:var(--wa-green-dark);color:#fff;align-items:center;gap:10px;padding:12px 14px;display:flex}.wa-avatar{background:#fff;border-radius:50%;place-items:center;width:38px;height:38px;font-size:20px;display:grid}.wa-title{flex-direction:column;flex:1;line-height:1.2;display:flex}.wa-title span{opacity:.85;font-size:12px}.ghost{color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:8px;padding:6px 10px;font-size:12px}.ghost:hover{background:#ffffff47}.hadir-switch{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:8px 12px;font-size:12px;transition:background .25s,color .25s;display:flex}.hadir-switch.on{color:#067647;background:#ecfdf3}.hadir-switch.off{color:#b42318;background:#fef3f2}.hadir-switch-label{flex:1;font-weight:600}.switch{cursor:pointer;font:inherit;color:inherit;background:0 0;border:none;align-items:center;gap:7px;font-weight:700;display:inline-flex}.switch:disabled{opacity:.6;cursor:default}.switch-track{background:#d0d5dd;border-radius:999px;width:40px;height:22px;transition:background .25s;position:relative}.hadir-switch.on .switch-track{background:#12b76a}.switch-thumb{background:#fff;border-radius:50%;width:18px;height:18px;transition:left .25s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #10182833}.hadir-switch.on .switch-thumb{left:20px}.switch-state{letter-spacing:.04em;font-size:11px}.wa-chat{background-image:radial-gradient(circle at 1px 1px,#0000000a 1px,#0000 0);background-size:18px 18px;flex-direction:column;flex:1;gap:6px;padding:16px 12px;display:flex;overflow-y:auto}.bubble{white-space:pre-wrap;word-break:break-word;border-radius:10px;max-width:78%;padding:8px 12px;font-size:14.5px;line-height:1.45;box-shadow:0 1px 1px #1018281a}.bubble.customer{background:var(--wa-bubble-out);border-bottom-right-radius:2px;align-self:flex-end}.bubble.agent{background:#fff;border-bottom-left-radius:2px;align-self:flex-start}.bubble.system{color:#6b5b1e;box-shadow:none;text-align:center;background:#fdf2cc;align-self:center;font-size:12.5px}.bubble.system.leak-hint{color:var(--muted);background:#fff;border:1px dashed #d0d5dd}.bubble-meta{color:var(--muted);text-align:right;margin-top:4px;font-size:10.5px;display:block}.bubble.customer .bubble-meta{color:#6a8a63}.no-reply{color:#b42318;font-weight:600}.leak-banner{color:#b42318;text-align:center;background:#fef3f2;border:1px solid #fda29b;border-radius:8px;align-self:center;padding:6px 12px;font-size:12px;font-weight:600}.leak-actions{justify-content:space-between}.leak-load,.leak-turnon{cursor:pointer;border:1px solid var(--line);border-radius:999px;padding:7px 14px;font-size:13px;font-weight:600}.leak-load{color:var(--ink);background:#fff}.leak-turnon{background:var(--wa-green);color:#fff;border-color:var(--wa-green)}.leak-turnon:disabled,.leak-load:disabled{opacity:.5;cursor:default}.bubble.typing{color:var(--muted);letter-spacing:3px;animation:1.2s infinite pulse}@keyframes pulse{50%{opacity:.35}}.samples{border-top:1px solid var(--line);background:#f7f8f6;flex-wrap:wrap;gap:6px;padding:8px 10px;display:flex}.samples button{border:1px solid var(--line);cursor:pointer;color:var(--ink);background:#fff;border-radius:999px;padding:5px 11px;font-size:12px}.samples button:hover:not(:disabled){border-color:var(--wa-green);color:var(--wa-green)}.samples button:disabled{opacity:.5}.wa-input{background:#f0f2f5;gap:8px;padding:10px;display:flex}.wa-input input{background:#fff;border:none;border-radius:999px;outline:none;flex:1;padding:11px 16px;font-size:14.5px}.wa-input button{background:var(--wa-green);color:#fff;cursor:pointer;border:none;border-radius:50%;width:44px;height:44px;font-size:16px}.wa-input button:disabled{opacity:.5;cursor:default}.desk{border:1px solid var(--line);background:#fff;border-radius:18px;flex-direction:column;width:440px;min-width:380px;display:flex;overflow:hidden}.desk>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.desk h2{margin:0;font-size:15px}.badge{color:#3450a3;background:#eef4ff;border-radius:999px;padding:4px 10px;font-size:11px}.tenant-picker{border-bottom:1px solid var(--line);color:var(--muted);align-items:center;gap:8px;padding:10px 16px;font-size:12px;display:flex}.tenant-picker select{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;flex:1;padding:7px 10px;font-size:13px}.status-chip{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:3px 8px;font-size:10.5px}.status-chip.sandbox{color:#b54708;background:#fffaeb;border:1px solid #fec84b}.status-chip.live{color:#067647;background:#ecfdf3;border:1px solid #abefc6}.desk-stats{background:var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.desk-stats div{color:var(--muted);text-align:center;background:#fafbfc;padding:10px 8px;font-size:11px}.desk-stats strong{color:var(--ink);font-size:14px;display:block}.desk-stats strong.warn{color:#b54708}.release{color:#067647;cursor:pointer;background:#ecfdf3;border:1px solid #abefc6;border-radius:8px;margin:10px 16px 0;padding:8px;font-size:13px}.desk-feed{flex-direction:column;flex:1;gap:8px;padding:12px 16px;display:flex;overflow-y:auto}.muted{color:var(--muted);font-size:13px;line-height:1.5}.desk-item{border:1px solid var(--line);border-radius:10px;padding:8px 10px;font-size:12px}.desk-item strong{margin-bottom:4px;font-size:12.5px;display:block}.desk-item pre{white-space:pre-wrap;word-break:break-word;color:#475467;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px}.desk-item.lead{background:#f5faff;border-color:#b2ddff}.desk-item.handover{background:#fffaeb;border-color:#fec84b}.desk-item.owner{background:#f6fef9;border-color:#abefc6}.desk-item.error{background:#fef3f2;border-color:#fda29b}.desk-item.booking{background:#eff8ff;border-color:#b2ddff}.admin-badge{text-decoration:none}code{background:#f2f4f7;border-radius:4px;padding:1px 5px;font-size:.92em}.admin{max-width:960px;margin:0 auto;padding:28px 20px 60px}.admin-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.admin-head h1{margin:0;font-size:22px}.tenant-switch{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.tenant-switch select{border:1px solid var(--line);background:#fff;border-radius:8px;padding:7px 10px;font-size:13px}.admin-section{margin-bottom:32px}.admin-section h2{align-items:center;gap:10px;margin-bottom:12px;font-size:16px;display:flex}.pill{border-radius:999px;padding:3px 9px;font-size:11px;font-weight:600}.pill-warn{color:#b54708;background:#fffaeb;border:1px solid #fec84b}.t-meta{direction:ltr;unicode-bidi:isolate}.t-body{display:block}.t-desk{direction:ltr;unicode-bidi:isolate;flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.t-desk-chip{color:#3538cd;background:#eef4ff;border:1px solid #c7d7fe;border-radius:6px;padding:2px 8px;font-family:ui-monospace,monospace;font-size:11px}.t-desk-usage{color:var(--muted);font-size:11px}.held-card{background:#fffaeb;border:1px solid #fec84b;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:12px 14px;display:flex}.held-card-info{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.held-card-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.reject-reason{border:1px solid var(--line);border-radius:8px;min-height:36px;padding:7px 10px;font-size:13px}.inline-form{align-items:center;gap:8px;display:inline-flex}.table-caption{text-align:left;caption-side:top;padding-bottom:6px;font-size:12px}.day-nav{align-items:center;gap:16px;margin-bottom:10px;display:flex}.slot-grid{flex-direction:column;gap:10px;display:flex}.slot-row{align-items:baseline;gap:12px;display:flex}.slot-service{flex:0 0 220px;font-size:13px;font-weight:600}.slot-chips{flex-wrap:wrap;gap:6px;display:flex}.slot-chip{border:1px solid var(--line);direction:ltr;unicode-bidi:isolate;border-radius:8px;padding:3px 9px;font-size:12px}.slot-open{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.slot-held{color:#b54708;background:#fffaeb;border-color:#fec84b}.slot-confirmed{color:#3538cd;background:#eef4ff;border-color:#c7d7fe}@media (width<=640px){.admin-table thead{display:none}.admin-table,.admin-table tbody{background:0 0;border:0;display:block}.admin-table tr.card-row{border:1px solid var(--line);background:#fff;border-radius:10px;margin-bottom:8px;padding:10px 12px;display:block;position:relative}.admin-table tr.card-row td{border:0;justify-content:space-between;gap:10px;padding:4px 0;display:flex}.admin-table tr.card-row td[data-label]:before{content:attr(data-label);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.row-primary-link:after{content:"";position:absolute;inset:0}.admin-table tr.card-row td.row-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px}.card-row .inline-form,.card-row .btn-confirm,.card-row .btn-cancel{z-index:1;position:relative}.btn-confirm,.btn-cancel,.t-retry,.reject-reason{min-height:44px}.slot-service{flex-basis:120px}}.t-bubble.t-failed{background:#fef3f2;border:1px solid #f04438}.t-fail-note{color:#b42318;align-items:center;gap:10px;margin-top:6px;font-size:12px;display:flex}.t-retry{color:#b42318;cursor:pointer;background:#fff;border:1px solid #f04438;border-radius:8px;padding:4px 12px;font-size:12px;font-weight:600;position:relative}.t-retry:after{content:"";position:absolute;inset:-12px}.t-retry:focus-visible{outline-offset:2px;outline:2px solid #b42318}.reply-error{color:#b42318;margin:0 0 8px;font-size:13px}.needs-you{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.needs-you li{background:#fffaeb;border:1px solid #fec84b;border-radius:10px}.needs-you-link{box-sizing:border-box;min-height:44px;color:inherit;padding:12px 14px;text-decoration:none;display:block}.needs-you-link:focus-visible{outline-offset:2px;outline:2px solid #b54708}.needs-you-row{flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;display:flex}.needs-you-snippet{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:13px;display:block;overflow:hidden}.admin-table{border-collapse:collapse;border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;font-size:13.5px;overflow:hidden}.admin-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border-bottom:1px solid var(--line);background:#fafbfc;padding:9px 12px;font-size:11.5px}.admin-table td{border-bottom:1px solid var(--line);padding:10px 12px}.admin-table tr:last-child td{border-bottom:none}.status{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:3px 9px;font-size:11px}.st-held{color:#b54708;background:#fffaeb}.st-confirmed{color:#067647;background:#ecfdf3}.st-cancelled{color:#b42318;background:#fef3f2}.row-actions{align-items:center;gap:6px;display:flex}.row-actions form{gap:6px;display:flex}.btn-confirm,.btn-cancel{border:1px solid var(--line);cursor:pointer;border-radius:7px;padding:5px 11px;font-size:12.5px}.btn-confirm{background:var(--wa-green);color:#fff;border-color:var(--wa-green)}.btn-cancel{color:#b42318;background:#fff;border-color:#fda29b}.back-link,.admin a{color:var(--wa-green);font-size:13px;text-decoration:none}.transcript{background:var(--wa-bg);border-radius:12px;flex-direction:column;gap:8px;padding:16px;display:flex}.t-row{display:flex}.t-row.t-dir-in{justify-content:flex-start}.t-row.t-dir-out{justify-content:flex-end}.t-row.t-system{justify-content:center}.t-bubble{white-space:pre-wrap;border-radius:10px;max-width:70%;padding:8px 12px;font-size:14px;line-height:1.45}.t-bubble.t-in{border:1px solid var(--line);background:#fff}.t-bubble.t-out{background:var(--wa-bubble-out)}.t-bubble.t-out.t-who-human{background:#d3e9fd}.t-note{color:var(--muted);background:#f0f1f3;border-radius:999px;padding:4px 12px;font-size:11.5px}.t-meta{color:var(--muted);margin-bottom:3px;font-size:10.5px}@media (width<=900px){.sim{flex-direction:column;height:auto}.phone,.desk{width:100%;min-width:0}.phone{height:80vh}}.admin-head-actions{align-items:center;gap:14px;display:flex}.link-btn{color:var(--wa-green);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px}.link-btn:hover{text-decoration:underline}.t-type{text-transform:uppercase;letter-spacing:.04em;color:#b54708;font-weight:600}.admin-convo{flex-direction:column;height:100dvh;padding-bottom:0;display:flex}.admin-convo .transcript{flex:1;overflow-y:auto}.reply-bar{border-top:1px solid var(--line);background:#f4f5f7;padding:12px 0 16px;position:sticky;bottom:0}.reply-form{align-items:flex-end;gap:8px;display:flex}.reply-form textarea{resize:vertical;border:1px solid var(--line);min-height:42px;max-height:160px;font:inherit;border-radius:10px;flex:1;padding:10px 12px;font-size:14px}.reply-form button{background:var(--wa-green);color:#fff;cursor:pointer;border:none;border-radius:10px;height:42px;padding:0 18px;font-size:14px;font-weight:600}.reply-form button:disabled{opacity:.6;cursor:default}.reply-release{margin-top:8px}.reply-hint{margin:8px 0 0;font-size:12px}.login{justify-content:center;align-items:center;min-height:100dvh;padding:24px;display:flex}.login-card{border:1px solid var(--line);background:#fff;border-radius:14px;flex-direction:column;gap:12px;width:100%;max-width:340px;padding:28px 24px;display:flex}.login-card h1{margin:0;font-size:20px}.login-card p{margin:0}.login-card input{border:1px solid var(--line);border-radius:10px;padding:11px 12px;font-size:15px}.login-card button{background:var(--wa-green);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:11px;font-size:15px;font-weight:600}.login-error{color:#b42318;font-size:13px}@media (width<=640px){.admin{padding:18px 14px 40px}.admin-head{flex-direction:column;gap:12px}.admin-table{white-space:nowrap;display:block;overflow-x:auto}.admin-convo{padding-left:12px;padding-right:12px}.t-bubble{max-width:85%}}
