:root{--bg:#071d1b;--panel:#0c2a27;--panel2:#102f2c;--line:#24443f;--text:#eefcf8;--muted:#9fc1b9;--green:#25d366;--green2:#17b957;--red:#ff6b6b;--yellow:#fbbf24;--blue:#60a5fa;--shadow:0 18px 55px rgba(0,0,0,.22)}
*{box-sizing:border-box}html,body{margin:0;background:linear-gradient(135deg,#061917,#0a2622 55%,#0d1d2b);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100%}button,input,select,textarea{font:inherit}.boot{min-height:100vh;display:grid;place-items:center;color:var(--muted);font-weight:800}.hidden{display:none!important}
.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(460px,100%);background:rgba(12,42,39,.95);border:1px solid var(--line);border-radius:24px;padding:30px;box-shadow:var(--shadow)}.brand-lockup{display:flex;gap:14px;align-items:center}.brand-lockup img{width:50px;height:50px;object-fit:contain;border-radius:12px;background:#fff;padding:5px}.brand-lockup h1{font-size:23px;margin:0}.brand-lockup p{margin:4px 0 0;color:var(--muted);font-weight:700}.login-card h2{margin:30px 0 8px}.login-card>p{color:var(--muted);line-height:1.5}.field{display:flex;flex-direction:column;gap:7px;margin:14px 0}.field span{font-size:13px;color:#c6e4dc;font-weight:800}.field input,.field select,.field textarea,.search{width:100%;border:1px solid var(--line);background:#f7fffc;color:#0a2925;border-radius:12px;padding:12px 13px;outline:none}.field textarea{min-height:88px;resize:vertical}.btn{border:0;border-radius:12px;padding:11px 15px;background:#173c37;color:var(--text);font-weight:900;cursor:pointer}.btn:hover{filter:brightness(1.08)}.btn.primary{background:var(--green);color:#052319}.btn.danger{background:#552526;color:#ffdede}.btn.ghost{background:transparent;border:1px solid var(--line)}.btn.full{width:100%}.btn:disabled{opacity:.45;cursor:not-allowed}.notice{padding:12px 14px;border-radius:12px;background:#263b24;border:1px solid #53682c;color:#f6f6d7;line-height:1.45}.error{padding:11px 13px;border-radius:11px;background:#4c1f22;color:#ffd8db;margin-top:12px}.muted{color:var(--muted)}
.shell{min-height:100vh;display:grid;grid-template-columns:250px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;padding:22px 15px;border-right:1px solid var(--line);background:rgba(5,25,23,.93);backdrop-filter:blur(12px)}.sidebar .brand-lockup{padding:0 8px 22px;border-bottom:1px solid var(--line)}.sidebar .brand-lockup img{width:42px;height:42px}.sidebar .brand-lockup h1{font-size:18px}.nav{display:grid;gap:7px;margin-top:22px}.nav button{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:0;padding:12px 13px;border-radius:12px;background:transparent;color:#cde8e0;font-weight:900;cursor:pointer}.nav button.active,.nav button:hover{background:#123c36;color:#fff}.nav .dot{width:9px;height:9px;border-radius:50%;background:#54716b}.nav button.active .dot{background:var(--green);box-shadow:0 0 0 4px rgba(37,211,102,.12)}.sidebar-foot{position:absolute;left:15px;right:15px;bottom:18px}.connection-mini{padding:11px 12px;border-radius:12px;background:#0b302b;border:1px solid var(--line);font-size:12px;color:var(--muted)}.connection-mini b{display:block;color:#fff;margin-bottom:3px}.main{min-width:0}.topbar{height:74px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 28px;border-bottom:1px solid var(--line);background:rgba(8,30,27,.76);backdrop-filter:blur(10px);position:sticky;top:0;z-index:10}.topbar h2{font-size:20px;margin:0}.topbar-right{display:flex;gap:9px;align-items:center}.status-pill{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:#173c37;color:#cde8e0;font-size:12px;font-weight:900}.status-pill i{width:8px;height:8px;border-radius:50%;background:#788f89}.status-pill.ok i{background:var(--green)}.content{padding:26px;max-width:1500px;margin:0 auto}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px}.page-head h1{margin:0;font-size:28px}.page-head p{margin:7px 0 0;color:var(--muted);font-weight:700}.actions{display:flex;gap:8px;flex-wrap:wrap}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric{background:linear-gradient(145deg,#0b302b,#102f2c);border:1px solid var(--line);border-radius:18px;padding:18px;min-height:112px}.metric span{display:block;color:var(--muted);font-size:13px;font-weight:800}.metric strong{display:block;font-size:32px;margin-top:10px}.metric small{display:block;color:#b4d4cc;margin-top:5px}.grid2{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;margin-top:16px}.card{background:linear-gradient(145deg,rgba(12,42,39,.96),rgba(13,38,35,.96));border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 12px 36px rgba(0,0,0,.10)}.card h3{margin:0 0 14px}.event-list{display:grid;gap:10px}.event{padding:11px 0;border-bottom:1px solid rgba(255,255,255,.06)}.event:last-child{border:0}.event b{display:block}.event span{display:block;color:var(--muted);font-size:12px;margin-top:3px}.guardrail-list{display:grid;gap:10px}.guardrail{display:flex;gap:10px;align-items:flex-start}.guardrail i{width:10px;height:10px;margin-top:5px;border-radius:50%;background:var(--green)}.guardrail span{color:#d5eee7;line-height:1.45}
.inbox{display:grid;grid-template-columns:340px minmax(0,1fr);min-height:calc(100vh - 126px);border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#092824}.inbox-list{border-right:1px solid var(--line);background:#0a2a26}.inbox-search{padding:13px;border-bottom:1px solid var(--line)}.conversation-list{max-height:calc(100vh - 204px);overflow:auto}.conv{padding:13px 14px;border-bottom:1px solid rgba(255,255,255,.055);cursor:pointer}.conv:hover,.conv.active{background:#123c36}.conv-top{display:flex;justify-content:space-between;gap:12px}.conv b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conv time{color:#8fb8ae;font-size:11px;white-space:nowrap}.conv p{margin:5px 0 0;color:#a7c9c0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.conv-badges{display:flex;gap:6px;margin-top:8px}.badge{display:inline-flex;padding:4px 7px;border-radius:999px;background:#183d38;font-size:10px;font-weight:900;color:#cde8e0}.badge.open{background:#16472c;color:#c8fbd7}.badge.closed{background:#4b3418;color:#ffe5aa}.badge.unread{background:var(--green);color:#052319}.chat{display:grid;grid-template-rows:auto 1fr auto;min-width:0;background:radial-gradient(circle at 10% 10%,rgba(37,211,102,.05),transparent 32%),#081f1d}.chat-head{padding:14px 18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;align-items:center}.chat-head b{display:block}.chat-head span{display:block;color:var(--muted);font-size:12px;margin-top:3px}.messages{padding:22px;overflow:auto;max-height:calc(100vh - 266px);display:flex;flex-direction:column;gap:8px}.bubble{max-width:min(76%,680px);padding:10px 12px;border-radius:14px;background:#173b36;align-self:flex-start;box-shadow:0 5px 12px rgba(0,0,0,.12)}.bubble.outbound{align-self:flex-end;background:#075e54}.bubble p{margin:0;white-space:pre-wrap;line-height:1.42}.bubble footer{margin-top:5px;font-size:10px;color:#a7c9c0;text-align:right}.composer{padding:12px;border-top:1px solid var(--line);display:flex;gap:8px;background:#0a2a26}.composer textarea{flex:1;min-height:44px;max-height:130px;resize:none;border:1px solid var(--line);border-radius:13px;background:#f7fffc;color:#0a2925;padding:11px 12px;outline:none}.composer-note{padding:9px 12px;color:#ffe1a8;background:#3e3018;border-top:1px solid #5f4b25;font-size:12px}.empty-state{height:100%;min-height:380px;display:grid;place-items:center;color:var(--muted);text-align:center;padding:40px}.empty-state b{display:block;color:#dff6ef;margin-bottom:6px}
.toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 220px auto;gap:10px;margin-bottom:14px}.table-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#0a2926}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:860px}.table th,.table td{padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.06);text-align:left}.table th{font-size:11px;color:#9fc1b9;text-transform:uppercase;letter-spacing:.06em;background:#0d332e}.table td{font-size:13px}.tag{display:inline-flex;padding:4px 7px;margin:2px;border-radius:999px;background:#16443d;color:#d8f9f0;font-size:10px;font-weight:900}.yes{color:#8df2ad;font-weight:900}.no{color:#ffb2b2;font-weight:900}.row-actions{display:flex;gap:6px}.small{padding:7px 9px;font-size:11px}.campaigns{display:grid;gap:12px}.campaign{display:grid;grid-template-columns:minmax(220px,1fr) repeat(4,100px) auto;gap:12px;align-items:center;padding:15px 17px;border:1px solid var(--line);border-radius:16px;background:#0b2d29}.campaign b{display:block}.campaign small{display:block;color:var(--muted);margin-top:4px}.campaign-stat span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase}.campaign-stat strong{display:block;font-size:19px;margin-top:2px}.progress{height:7px;background:#173c37;border-radius:99px;overflow:hidden;margin-top:8px}.progress i{display:block;height:100%;background:var(--green)}
.connection-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.connect-status{display:flex;align-items:center;gap:14px}.connect-icon{width:58px;height:58px;border-radius:18px;background:#173c37;display:grid;place-items:center;font-size:26px}.connect-status.connected .connect-icon{background:#155d34}.kv{display:grid;grid-template-columns:180px 1fr;gap:8px 14px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.06)}.kv:last-child{border:0}.kv b{color:#9fc1b9;font-size:12px}.kv span{font-weight:800;word-break:break-all}.step-list{display:grid;gap:12px}.step{display:flex;gap:12px}.step i{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#17423c;font-style:normal;font-weight:900}.step b{display:block}.step span{display:block;color:var(--muted);font-size:12px;margin-top:3px;line-height:1.4}.connect-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.codebox{padding:11px 12px;border-radius:10px;background:#061b19;border:1px solid var(--line);font:12px ui-monospace,SFMono-Regular,Menlo,monospace;color:#bce9dc;word-break:break-all}
.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.62);display:grid;place-items:center;padding:20px;z-index:50}.modal{width:min(650px,100%);max-height:90vh;overflow:auto;background:#0b2b27;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:17px 19px;border-bottom:1px solid var(--line)}.modal-head h3{margin:0}.modal-body{padding:19px}.modal-foot{padding:15px 19px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px}.x{border:0;background:transparent;color:#cde8e0;font-size:24px;cursor:pointer}.checkline{display:flex;gap:9px;align-items:flex-start;margin:11px 0}.checkline input{margin-top:3px}.checkline span{line-height:1.4}.split{display:grid;grid-template-columns:1fr 1fr;gap:10px}.toast{position:fixed;right:20px;bottom:20px;max-width:380px;padding:12px 15px;border-radius:12px;background:#e8fff3;color:#0d3c2b;font-weight:850;box-shadow:var(--shadow);z-index:80}.toast.bad{background:#ffe7e7;color:#6b1a1a}
.mobile-nav{display:none}
@media(max-width:1050px){.metric-grid{grid-template-columns:repeat(2,1fr)}.grid2,.connection-hero{grid-template-columns:1fr}.campaign{grid-template-columns:minmax(220px,1fr) repeat(2,90px);}.campaign .campaign-stat:nth-of-type(n+3){display:none}.campaign .btn{grid-column:1/-1}.toolbar{grid-template-columns:1fr 180px}.toolbar .btn{grid-column:1/-1}.inbox{grid-template-columns:300px minmax(0,1fr)}}
@media(max-width:760px){.shell{display:block}.sidebar{display:none}.topbar{height:62px;padding:0 14px}.topbar h2{font-size:17px}.topbar .btn.ghost{display:none}.content{padding:14px 12px 86px}.page-head{align-items:flex-start;flex-direction:column}.page-head h1{font-size:23px}.metric-grid{grid-template-columns:repeat(2,1fr);gap:9px}.metric{padding:14px;min-height:96px}.metric strong{font-size:26px}.grid2{grid-template-columns:1fr}.mobile-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:40;background:#08231f;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.mobile-nav button{border:0;background:transparent;color:#9fc1b9;padding:10px 2px 9px;font-size:10px;font-weight:900}.mobile-nav button.active{color:#76f0a1;background:#0e312c}.inbox{display:block;min-height:calc(100vh - 170px)}.inbox-list{border:0}.conversation-list{max-height:none}.chat{position:fixed;inset:62px 0 58px 0;z-index:30}.chat.mobile-hidden{display:none}.inbox-list.mobile-hidden{display:none}.messages{max-height:none;overflow:auto}.bubble{max-width:86%}.toolbar{grid-template-columns:1fr}.toolbar>*{grid-column:auto!important}.table-wrap{display:none}.contact-cards{display:grid!important;gap:10px}.campaign{grid-template-columns:1fr 1fr}.campaign>div:first-child{grid-column:1/-1}.connection-hero{grid-template-columns:1fr}.kv{grid-template-columns:1fr}.split{grid-template-columns:1fr}.login-card{padding:22px}.modal-backdrop{padding:10px;place-items:end center}.modal{max-height:94vh;border-radius:18px 18px 0 0}.topbar-right .status-pill{display:none}}
.contact-cards{display:none}.contact-card{padding:14px;border:1px solid var(--line);border-radius:15px;background:#0b2d29}.contact-card header{display:flex;justify-content:space-between;gap:10px}.contact-card header b{display:block}.contact-card header span{display:block;color:var(--muted);font-size:12px;margin-top:3px}.contact-card footer{display:flex;gap:8px;margin-top:11px}.contact-card footer .btn{flex:1}
