@font-face{font-family:Fira Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/6a3b6ed62ff5bf79-s.0_4ggd32mqg4u.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5977ec4b36520f6d-s.0id0oi93w_x6r.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Fira Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/dee726aa58e45761-s.128cvsmpmdz_j.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Fira Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/7a51e2b9c08a8ebb-s.17p6--7rp0rwb.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/041e25e6ca1e5139-s.130ax8b9.mkyc.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fira Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9106bdef11d9f452-s.0rls80ygff3u..woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/173b4e1ecbfe6c3b-s.p.0uyeu33xj2.w_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fc1417d4a51f10fe-s.0hd9k6gsmtl3h.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/21110e96b1dae9b1-s.17sz~c2-opsdu.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Fira Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0621d06476499bd5-s.02sem0uh.5e1i.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Fira Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/7b6421103319f6f3-s.0uzucq75u9k0-.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/282a7b8681f0cd88-s.0m8j88b95mlmz.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fira Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9e80a34bd088ce0f-s.053ypffl45v-z.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/89c2c771ed51f5b8-s.p.0fsiao4di78_e.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/57ac5cb5a2918c53-s.0ajv8u3r-i-pk.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fe62e8d0a3cf5f1e-s.0-77t804vqgcq.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Fira Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/09f7c292a3ff9832-s.0pjkf81q3j-ap.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Fira Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2e596235ca729a70-s.073y_ry7-4y2s.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/ddedd03f86ec4f2c-s.0_14x0ietvnh3.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fira Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/70a1923cc78dd0cb-s.09z_wx4lj_ww6.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/6d205b44cc8ff5cb-s.p.0obzj7u9mi98y.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans Fallback;src:local(Arial);ascent-override:91.01%;descent-override:25.79%;line-gap-override:0.0%;size-adjust:102.74%}.fira_sans_4baad8a7-module__kAZ5wq__className{font-family:Fira Sans,Fira Sans Fallback;font-style:normal}.fira_sans_4baad8a7-module__kAZ5wq__variable{--font-sans:"Fira Sans", "Fira Sans Fallback"}
@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(../media/88731e1a74492905-s.093kp-ivx0g2f.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(../media/861011d7404b02f6-s.0.xm8qlf5_315.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(../media/3381337b621a9a6a-s.064fjoont5c7t.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5413d6e6d8960ee4-s.05vzz1snb6e.m.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0951afe60dbf5d36-s.04q-sk9kar98f.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(../media/97e7b204180d1274-s.15almw42k3wem.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b8b552e8609c5636-s.p.0vinx1niofu4y.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Code;font-style:normal;font-weight:500;font-display:swap;src:url(../media/88731e1a74492905-s.093kp-ivx0g2f.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Code;font-style:normal;font-weight:500;font-display:swap;src:url(../media/861011d7404b02f6-s.0.xm8qlf5_315.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Fira Code;font-style:normal;font-weight:500;font-display:swap;src:url(../media/3381337b621a9a6a-s.064fjoont5c7t.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Fira Code;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5413d6e6d8960ee4-s.05vzz1snb6e.m.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Fira Code;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0951afe60dbf5d36-s.04q-sk9kar98f.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Fira Code;font-style:normal;font-weight:500;font-display:swap;src:url(../media/97e7b204180d1274-s.15almw42k3wem.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Code;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b8b552e8609c5636-s.p.0vinx1niofu4y.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Code Fallback;src:local(Arial);ascent-override:73.56%;descent-override:23.92%;line-gap-override:0.0%;size-adjust:134.59%}.fira_code_46fb23c9-module__HrX-Fa__className{font-family:Fira Code,Fira Code Fallback;font-style:normal}.fira_code_46fb23c9-module__HrX-Fa__variable{--font-mono:"Fira Code", "Fira Code Fallback"}
:root{--bg:#f6f7f9;--surface:#fff;--surface-muted:#eef1f4;--text:#18212b;--muted:#66717f;--line:#d9dee5;--accent:#146c94;--accent-strong:#0f526f;--green:#177245;--amber:#9b6200;--red:#b42318;--blue:#245ea8;--focus:#0f8b8d;--shadow-1:0 1px 3px #0f172a0d, 0 1px 2px #0f172a0a;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--font-sans:"Fira Sans", "Segoe UI", system-ui, sans-serif;--font-mono:"Fira Code", ui-monospace, SFMono-Regular, Consolas, monospace}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);margin:0;font-size:15px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,select{cursor:pointer}:focus-visible{outline:3px solid color-mix(in srgb, var(--focus) 45%, white);outline-offset:2px}.shell{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#edf3f8;background:#121a23;flex-direction:column;gap:24px;padding:22px 18px;display:flex}.brand{gap:4px;display:grid}.brand strong{letter-spacing:0;font-size:18px}.brand span{color:#9fb0c0;font-size:13px}.nav{gap:6px;display:grid}.nav a{color:#cbd6e2;border-radius:8px;align-items:center;gap:10px;min-height:44px;padding:10px 12px;transition:background .16s,color .16s;display:flex}.nav a:hover,.nav a[data-active=true]{color:#fff;background:#1f2b37}.sidebar-footer{border-top:1px solid #1f2b37;margin-top:auto;padding-top:16px}.logout-btn{color:#cbd6e2;width:100%;min-height:40px;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:8px 12px;transition:background .16s,color .16s,border-color .16s;display:flex}.logout-btn:hover{color:#fff;background:#1f2b37}.logout-btn:disabled{cursor:not-allowed;opacity:.6}.login-shell{background:var(--surface-muted);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--line);background:#fff;border-radius:12px;gap:22px;width:100%;max-width:380px;padding:28px;display:grid;box-shadow:0 8px 24px #0f172a14}.login-brand{text-align:center;gap:4px;display:grid}.login-brand strong{letter-spacing:-.01em;font-size:22px}.login-brand .muted{color:var(--muted);font-size:13px}.login-form{gap:14px;display:grid}.login-submit{justify-content:center;margin-top:4px}.content{min-width:0;padding:28px}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px;display:flex}.page-title{letter-spacing:0;margin:0;font-size:28px;line-height:1.15}.page-subtitle{color:var(--muted);margin:6px 0 0}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.grid{gap:16px;display:grid}.stats{grid-template-columns:repeat(5,minmax(0,1fr))}.panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-1);border-radius:8px}.panel-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.panel-title{margin:0;font-size:15px;font-weight:700}.panel-body,.stat{padding:16px}.stat span{color:var(--muted);font-size:13px;display:block}.stat strong{margin-top:8px;font-size:28px;line-height:1;display:block}.stat small{color:var(--muted);margin-top:8px;display:block}.stat-ok{color:var(--green)}.stat-bad{color:var(--red)}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:760px}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:12px 14px}th{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:700}tr:last-child td{border-bottom:0}.badge{border:1px solid var(--line);border-radius:999px;align-items:center;min-height:26px;padding:3px 9px;font-size:12px;font-weight:700;display:inline-flex}.badge.green{color:var(--green);background:#eaf7ef;border-color:#b8dcc8}.badge.amber{color:var(--amber);background:#fff5df;border-color:#f1d29a;animation:2.2s ease-in-out infinite badge-pulse}.badge.red{color:var(--red);background:#fff0ee;border-color:#efb5ae}.badge.blue{color:var(--blue);background:#edf5ff;border-color:#bfd3ed}.badge.neutral{border-color:var(--line);background:var(--surface-muted);color:#525c69}.button{border:1px solid var(--line);min-height:44px;color:var(--text);background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:9px 12px;font-weight:700;transition:border-color .16s,background .16s,color .16s;display:inline-flex}.button:hover{border-color:var(--accent);color:var(--accent-strong)}.button.primary{border-color:var(--accent);background:var(--accent);color:#fff}.button.primary:hover{border-color:var(--accent-strong);background:var(--accent-strong);color:#fff}.button.danger:hover{border-color:var(--red);color:var(--red)}.button:disabled{cursor:not-allowed;opacity:.6}.connection-name-trigger{color:inherit;font:inherit;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:6px;margin:-4px -6px;padding:4px 6px;transition:border-color .16s,background .16s;display:inline-flex}.connection-name-trigger:hover{border-color:var(--line);background:var(--surface-muted)}.connection-name-pencil{opacity:0;color:var(--muted);transition:opacity .16s}.connection-name-trigger:hover .connection-name-pencil,.connection-name-trigger:focus-visible .connection-name-pencil{opacity:1}.connection-name-edit{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.connection-name-edit .input{min-width:160px;min-height:36px;font:inherit;padding:6px 10px}.connection-name-edit .button{min-height:36px;padding:6px 10px}.connection-name-error{color:var(--red);flex-basis:100%;font-size:12px}.form-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:12px;display:grid}.form-grid-3{grid-template-columns:2fr 2fr auto}.field{gap:6px;display:grid}.field label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:700}.input,.select,.textarea{border:1px solid var(--line);width:100%;min-height:44px;color:var(--text);background:#fff;border-radius:8px;padding:9px 10px;font-size:16px}.textarea{resize:vertical;min-height:100px}.muted{color:var(--muted)}.mono{font-family:var(--font-mono)}.actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.confirm-dialog{width:min(380px,100vw - 32px);color:var(--text);background:0 0;border:0;border-radius:8px;padding:0}.confirm-dialog::backdrop{background:#0f172a8f}.confirm-dialog-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:14px;padding:16px;display:grid;box-shadow:0 24px 70px #0f172a3d}.confirm-dialog-header{align-items:center;gap:10px;display:flex}.confirm-dialog-header strong{flex:1;font-size:15px}.confirm-dialog-icon{color:var(--amber);flex-shrink:0}.confirm-dialog-body{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.confirm-dialog-actions{justify-content:flex-end;gap:8px;display:flex}.form-dialog{width:min(640px,100vw - 32px);max-height:calc(100vh - 32px);color:var(--text);background:0 0;border:0;border-radius:10px;padding:0}.form-dialog::backdrop{background:#0f172a8f}.form-dialog-card{background:var(--surface);border:1px solid var(--line);border-radius:10px;flex-direction:column;max-height:calc(100vh - 32px);display:flex;overflow:hidden;box-shadow:0 24px 70px #0f172a3d}.form-dialog-header{border-bottom:1px solid var(--line);background:var(--surface);align-items:center;gap:10px;padding:14px 16px;display:flex}.form-dialog-header strong{flex:1;font-size:15px}.form-dialog-body{gap:14px;padding:16px;display:grid;overflow-y:auto}.form-dialog-footer{border-top:1px solid var(--line);background:var(--surface);justify-content:flex-end;gap:8px;padding:12px 16px;display:flex}.form-dialog-row-2{grid-template-columns:2fr 1fr;gap:12px;display:grid}.form-section{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;gap:8px;padding:12px;display:grid}.form-section-header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.placeholder-row{flex-wrap:wrap;gap:6px;margin-bottom:6px;display:flex}.placeholder-chip{border:1px solid var(--line);color:var(--accent-strong);background:#fff;border-radius:4px;padding:2px 6px;font-size:12px;display:inline-block}.form-var-row{grid-template-columns:44px 1fr 130px;align-items:center;gap:8px;display:grid}.form-var-label{font-family:var(--font-mono);color:var(--muted);text-align:right;padding-right:6px;font-size:12px}.form-checkbox{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:10px;display:flex}.form-checkbox input[type=checkbox]{cursor:pointer;flex-shrink:0;width:18px;height:18px}@media (max-width:560px){.form-dialog-row-2{grid-template-columns:1fr}.form-var-row{grid-template-columns:1fr;gap:4px}.form-var-label{text-align:left;padding-right:0}}.qr-dialog{width:min(420px,100vw - 32px);color:var(--text);background:0 0;border:0;border-radius:8px;padding:0}.qr-dialog::backdrop{background:#0f172a8f}.qr-dialog-card{border:1px solid var(--line);background:#fff;border-radius:8px;gap:18px;padding:16px;display:grid;box-shadow:0 24px 70px #0f172a3d}.qr-dialog-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.qr-dialog-header div{gap:3px;display:grid}.qr-dialog-header strong{font-size:16px}.qr-dialog-header span{color:var(--muted);font-size:13px}.qr-code{border:1px solid var(--line);background:#fff;border-radius:8px;justify-self:center;place-items:center;width:236px;height:236px;display:grid}.empty{text-align:center;color:var(--muted);padding:32px 16px}.health-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}@media (max-width:980px){.health-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.health-grid{grid-template-columns:1fr}}.status-dot{background:currentColor;border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-right:6px;display:inline-block}.badge.green .status-dot{animation:2.4s ease-in-out infinite status-pulse}@keyframes status-pulse{0%,to{opacity:1}50%{opacity:.45}}.health-details{gap:8px;margin:0;display:grid}.health-details>div{grid-template-columns:100px 1fr;align-items:baseline;gap:12px;font-size:13px;display:grid}.health-details dt{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:700}.health-details dd{color:var(--text);word-break:break-word;margin:0}.env-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0;display:grid}.env-grid>div{gap:6px;display:grid}.env-grid dt{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:700}.env-grid dd{margin:0;font-size:14px}@media (max-width:980px){.env-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.health-details>div{grid-template-columns:1fr;gap:2px}.env-grid{grid-template-columns:1fr}}.pagination{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;display:flex}.pagination-info{color:var(--muted);font-size:13px}.pagination-pages{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.pagination-pages .button{min-height:36px;padding:6px 10px;font-size:13px}.pagination-ellipsis{color:var(--muted);-webkit-user-select:none;user-select:none;padding:0 4px;font-size:13px}.alert{border-radius:8px;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;font-size:14px;font-weight:500;display:flex}.alert.error{color:var(--red);background:#fff0ee;border:1px solid #efb5ae}.alert.success{color:var(--green);background:#eaf7ef;border:1px solid #b8dcc8}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.send-grid{gap:16px;display:grid}.send-actions{justify-content:flex-end;gap:8px;display:flex}.send-actions .button{min-width:200px;font-size:15px}.seg{background:var(--surface-muted);border:1px solid var(--line);border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:4px;display:grid}.seg-button{min-height:40px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-size:14px;font-weight:700;transition:background .16s,color .16s,border-color .16s,box-shadow .16s;display:inline-flex}.seg-button:hover{color:var(--text)}.seg-button.active{background:var(--surface);color:var(--accent-strong);border-color:var(--line);box-shadow:0 1px 2px #0f172a0f}.multi-label-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.chip-row{flex-wrap:wrap;gap:6px;max-height:110px;margin:0 0 8px;padding:0;list-style:none;display:flex;overflow-y:auto}.chip{max-width:220px;color:var(--accent-strong);background:#edf5ff;border:1px solid #bfd3ed;border-radius:999px;align-items:center;gap:4px;padding:4px 4px 4px 10px;font-size:12.5px;font-weight:600;line-height:1.2;display:inline-flex}.chip-name{text-overflow:ellipsis;white-space:nowrap;max-width:170px;overflow:hidden}.chip-remove{width:20px;height:20px;color:var(--accent-strong);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;margin:0;padding:0;transition:background .12s;display:inline-flex}.chip-remove:hover,.chip-remove:focus-visible{background:#146c942e}.option-list{border:1px solid var(--line);background:var(--surface);border-radius:8px;max-height:280px;margin:8px 0 0;padding:4px;list-style:none;display:grid;overflow-y:auto}.option-row{cursor:pointer;border-radius:6px;align-items:center;gap:10px;padding:8px 10px;font-size:14px;transition:background .12s;display:flex}.option-row:hover{background:var(--surface-muted)}.option-row:focus-visible{outline:2px solid color-mix(in srgb, var(--focus) 50%, white);outline-offset:-2px}.option-row.selected{background:#edf5ff}.option-check{border:1.5px solid var(--line);color:#0000;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.option-check.on{background:var(--accent);border-color:var(--accent);color:#fff}.option-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.option-main{flex:1;gap:2px;min-width:0;display:grid}.option-main .option-name{font-weight:500}.option-sub{flex-wrap:wrap;align-items:center;gap:8px;line-height:1.2;display:flex}.option-empty{text-align:center;color:var(--muted);padding:16px 12px;font-size:13px}.multi-actions{justify-content:space-between;gap:8px;margin-top:8px;display:flex}.text-button{color:var(--accent-strong);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 8px;font-size:13px;font-weight:600;transition:background .12s}.text-button:hover:not(:disabled){background:var(--surface-muted)}.text-button:disabled{color:var(--muted);cursor:not-allowed}.format-bar{background:var(--surface-muted);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;align-items:center;gap:4px;padding:6px;display:flex}.icon-btn{width:36px;min-width:36px;height:36px;color:var(--text);background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;transition:background .16s,border-color .16s,color .16s;display:inline-flex}@media (hover:none) and (pointer:coarse){.icon-btn{width:44px;min-width:44px;height:44px}}.icon-btn:hover{border-color:var(--line);color:var(--accent-strong);background:#fff}.format-divider{background:var(--line);width:1px;height:20px;margin:0 6px}.wa-preview{border:1px solid var(--line);background:#e6e2da linear-gradient(135deg,#e6e2da 0%,#ddd6c5 100%);border-radius:8px;justify-content:flex-end;padding:14px 12px;display:flex}.wa-preview-bubble{color:#111b21;word-break:break-word;background:#d9fdd3;border-radius:8px 0 8px 8px;max-width:80%;padding:8px 12px 7px;font-size:14.5px;line-height:1.4;box-shadow:0 1px 1px #0b141a21}.wa-preview-bubble strong{font-weight:700}.wa-preview-bubble em{font-style:italic}.wa-preview-bubble s{text-decoration:line-through}.wa-code-inline{font-family:var(--font-mono);background:#0b141a12;border-radius:3px;padding:1px 5px;font-size:.93em}.wa-code-block{font-family:var(--font-mono);white-space:pre-wrap;background:#0b141a12;border-radius:4px;margin:4px 0;padding:6px 8px;font-size:.93em;display:block}.dropzone{border:1.5px dashed var(--line);background:var(--surface-muted);min-height:140px;color:var(--muted);cursor:pointer;text-align:center;border-radius:10px;place-items:center;gap:6px;padding:24px;transition:border-color .16s,background .16s,color .16s;display:grid}.dropzone:hover,.dropzone-hover{border-color:var(--accent);color:var(--text);background:#f1f6fb}.dropzone strong{color:var(--text)}.media-preview{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:44px 1fr auto;align-items:start;gap:12px;padding:12px;display:grid}.media-preview-icon{background:var(--surface-muted);width:40px;height:40px;color:var(--accent-strong);border-radius:8px;place-items:center;display:grid}.media-preview-info{gap:6px;min-width:0;display:grid}.media-preview-info strong{word-break:break-word;font-size:14px}.media-preview-info small{font-size:12px}.media-thumb{border:1px solid var(--line);object-fit:cover;border-radius:6px;max-width:220px;max-height:160px;margin-top:4px}.switch{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:inline-flex}.switch input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.switch-slider{background:#94a3b8;border-radius:999px;flex-shrink:0;width:38px;height:22px;transition:background .16s;position:relative}.switch-slider:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .16s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0f172a33}.switch input:checked~.switch-slider{background:var(--accent)}.switch input:checked~.switch-slider:after{transform:translate(16px)}.switch input:focus-visible~.switch-slider{outline:3px solid color-mix(in srgb, var(--focus) 45%, white);outline-offset:2px}.switch-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:13px;font-weight:700}@media (max-width:560px){.seg{grid-template-columns:1fr}.send-actions .button{width:100%}.media-preview{grid-template-columns:36px 1fr}.media-preview>button{grid-column:1/-1;justify-self:end}}@keyframes badge-pulse{0%,to{background:#fff5df}50%{background:#fdedc4}}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:.7s linear infinite spin}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (max-width:980px){.shell{grid-template-columns:1fr}.sidebar{z-index:10;padding:14px;position:sticky;top:0}.nav{grid-template-columns:repeat(4,minmax(0,1fr))}.nav a{justify-content:center}.content{padding:18px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid{grid-template-columns:1fr}}@media (max-width:560px){.page-header{display:grid}.stats{grid-template-columns:1fr}.nav a span{display:none}}
