@charset "UTF-8";.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;display:flex;max-width:100%;max-height:100%;z-index:1000}.cdk-overlay-backdrop{position:absolute;inset:0;pointer-events:auto;-webkit-tap-highlight-color:transparent;opacity:0;touch-action:manipulation;z-index:1000;transition:opacity .4s cubic-bezier(.25,.8,.25,1)}@media(prefers-reduced-motion){.cdk-overlay-backdrop{transition-duration:1ms}}.cdk-overlay-backdrop-showing{opacity:1}@media(forced-colors:active){.cdk-overlay-backdrop-showing{opacity:.6}}.cdk-overlay-dark-backdrop{background:#00000052}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing,.cdk-high-contrast-active .cdk-overlay-transparent-backdrop{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;display:flex;flex-direction:column;min-width:1px;min-height:1px;z-index:1000}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-overlay-popover{background:none;border:none;padding:0;outline:0;overflow:visible;position:fixed;pointer-events:none;white-space:normal;color:inherit;text-decoration:none;width:100%;height:100%;inset:0 auto auto 0}.cdk-overlay-popover::backdrop{display:none}.cdk-overlay-popover .cdk-overlay-backdrop{position:fixed;z-index:auto}:root{--bg: #f4f6f9;--panel: #ffffff;--text: #1d2433;--muted: #6b7385;--line: #dfe3ea;--accent: #2563eb;--accent-soft: #e6eefd;--ok: #15803d;--ok-soft: #e3f4e8;--warn: #b45309;--warn-soft: #fdf1e1;--bad: #b91c1c;--bad-soft: #fde8e8;--radius: 8px;color-scheme:light}@media(prefers-color-scheme:dark){:root{--bg: #12151c;--panel: #1b2029;--text: #e4e8f0;--muted: #8d95a7;--line: #2c3340;--accent: #6c9cff;--accent-soft: #1f2c47;--ok: #4ade80;--ok-soft: #173023;--warn: #fbbf24;--warn-soft: #3a2d12;--bad: #f87171;--bad-soft: #3d1b1b;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:var(--bg);color:var(--text);font:14px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}h1,h2,h3{margin:0;font-weight:600}h2{font-size:18px}h3{font-size:16px;margin-bottom:8px}code,.mono{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:13px}.muted{color:var(--muted)}.small{font-size:12px}.right{text-align:right}.nowrap{white-space:nowrap}.num{text-align:right;font-variant-numeric:tabular-nums}.spacer{flex:1}.empty{color:var(--muted);padding:24px;text-align:center;background:var(--panel);border-radius:var(--radius)}button,select,input,textarea{font:inherit;color:inherit;background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:6px 10px}button{cursor:pointer}button:hover:not(:disabled){border-color:var(--accent)}button:disabled,select:disabled{opacity:.45;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.danger{color:var(--bad)}button.danger:hover:not(:disabled){border-color:var(--bad);background:var(--bad-soft)}.dialog button.danger{background:var(--bad);border-color:var(--bad);color:#fff}button.ghost{background:transparent;border-color:transparent;color:var(--muted)}button.small,select.small{padding:2px 8px;font-size:12px}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid var(--accent-soft);border-color:var(--accent)}input[type=search]{min-width:280px}label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}label.inline{flex-direction:row;align-items:center;gap:6px;color:var(--text)}label input,label select,label textarea{color:var(--text)}.inline-edit{width:100%;min-width:120px;padding:3px 6px;border-color:transparent;background:transparent}.inline-edit:hover{border-color:var(--line)}.inline-edit.num{width:72px;min-width:0;text-align:right}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding:10px 20px;background:var(--panel);border-bottom:1px solid var(--line)}.brand{font-weight:700;font-size:16px}.topbar nav{display:flex;gap:4px}.topbar nav a{padding:6px 12px;border-radius:6px;color:var(--text);text-decoration:none}.topbar nav a.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.health{margin-left:auto;display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px}.page{padding:20px;max-width:1500px;margin:0 auto}.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px}.count{color:var(--muted);font-weight:400;font-size:14px}.live{margin-left:auto;font-size:12px}.live:not(.stale){color:var(--ok)}.live.stale{color:var(--bad)}.pill,.badge,.chip,.role{display:inline-block;padding:1px 8px;border-radius:999px;font-size:12px;background:var(--accent-soft);color:var(--accent);white-space:nowrap}.pill.ok,.badge.member-AVAILABLE,.badge.state-CONNECTED{background:var(--ok-soft);color:var(--ok)}.pill.bad,.badge.bad{background:var(--bad-soft);color:var(--bad)}.badge.warn,.badge.member-IN_CALL,.badge.state-RINGING,.badge.state-WAITING{background:var(--warn-soft);color:var(--warn)}.badge.member-PAUSED,.badge.state-ADMITTED,.chip.off{background:var(--line);color:var(--muted)}.badge.rec{background:var(--bad-soft);color:var(--bad)}.role-CUSTOMER{background:#ede9fe;color:#6d28d9}.role-DISPATCHER{background:var(--ok-soft);color:var(--ok)}.role-LISTENER{background:var(--accent-soft);color:var(--accent)}.role-PAGING,.role-DIALING{background:var(--warn-soft);color:var(--warn)}@media(prefers-color-scheme:dark){.role-CUSTOMER{background:#2d2350;color:#c4b5fd}}.stat{color:var(--muted);white-space:nowrap}.stat.hot{color:var(--ok);font-weight:600}.stat.warn{color:var(--warn);font-weight:600}.stat.listening{color:var(--accent);font-weight:600}h4.sub{margin:12px 0 6px;font-size:13px}table.listeners{margin-bottom:8px}.chip.setting{background:var(--accent-soft);color:var(--accent)}.settings{display:flex;flex-wrap:wrap;gap:6px 24px;margin:4px 0 10px}.settings label{flex-direction:row;align-items:center;gap:6px;color:var(--text);cursor:pointer}.settings input[type=checkbox]{width:auto;margin:0}.settings .label-edit input{width:260px}.settings .label-edit input.num{width:70px}.queue-label{color:var(--text);font-weight:400}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin:0 3px 0 6px}.dot.ok{background:var(--ok)}.dot.busy{background:var(--warn)}.dot.paused{background:var(--muted)}.banner{padding:8px 12px;border-radius:6px;margin:0}.banner.error{background:var(--bad-soft);color:var(--bad)}.banner.warn{background:var(--warn-soft);color:var(--warn)}table{width:100%;border-collapse:collapse}th,td{padding:6px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}th{font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}table.grid{background:var(--panel);border-radius:var(--radius);overflow:hidden}table.grid tr.off td{color:var(--muted)}tbody tr:hover{background:color-mix(in srgb,var(--accent-soft) 40%,transparent)}tfoot .add td{border-bottom:none;padding-top:10px}.pager{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:12px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(560px,1fr));gap:14px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:14px}.conf{border-left:4px solid var(--ok)}.conf.parked{border-left-color:var(--warn)}.conf.gone{border-left-color:var(--bad);opacity:.85}.conf header{display:flex;justify-content:space-between;gap:12px}.conf header .right{display:flex;align-items:center;gap:10px}.timer{font:600 18px ui-monospace,Menlo,monospace}.badges{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0;min-height:4px}.actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-start;margin:10px 0}.dialog .actions{justify-content:flex-end;margin-bottom:0}.participants td{font-size:13px}.fold-list{display:flex;flex-direction:column;gap:6px}.fold{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.fold.open{border-color:var(--accent)}.fold-head{width:100%;display:flex;align-items:center;gap:10px;text-align:left;border:none;background:transparent;padding:10px 14px;border-radius:var(--radius)}.chevron{width:12px;color:var(--muted)}.chips{display:flex;gap:4px;flex-wrap:wrap}.fold-body{padding:0 14px 12px 36px}.more{display:block;margin:14px auto}.backdrop{position:fixed;inset:0;z-index:50;background:#00000059;display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px;overflow:auto}.dialog{background:var(--panel);border-radius:12px;padding:20px;width:min(720px,100%);box-shadow:0 20px 50px #00000040}.dialog.small{width:min(440px,100%)}.dialog.wide{width:min(900px,100%)}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px 16px;margin:12px 0}.form-grid .span2{grid-column:1/-1}.form-grid input.ng-invalid.ng-touched{border-color:var(--bad)}.toasts{position:fixed;right:16px;bottom:16px;z-index:60;display:flex;flex-direction:column;gap:8px}.toast{background:var(--ok);color:#fff;padding:10px 14px;border-radius:8px;max-width:420px;cursor:pointer;box-shadow:0 6px 20px #0003}.toast.error{background:var(--bad)}.toast.warn{background:var(--warn)}.login{min-height:100%;display:grid;place-items:center;padding:16px}.login .card{width:min(400px,100%);display:flex;flex-direction:column;gap:14px;padding:28px}.participants select.small{width:76px}.conf{overflow-x:auto}.help{display:inline-block;margin-left:4px;color:var(--accent);cursor:help;font-size:13px;line-height:1;font-weight:400;text-transform:none;letter-spacing:0;-webkit-user-select:none;user-select:none}.help:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:50%}:root{--mat-tooltip-container-color: var(--text);--mat-tooltip-supporting-text-color: var(--panel);--mat-tooltip-container-shape: 6px;--mat-tooltip-supporting-text-font: inherit;--mat-tooltip-supporting-text-size: 13px;--mat-tooltip-supporting-text-line-height: 1.45;--mat-tooltip-supporting-text-tracking: normal;--mat-tooltip-supporting-text-weight: 400}.mat-mdc-tooltip.help-tooltip .mdc-tooltip__surface{max-width:min(460px,100vw - 32px);padding:10px 12px;text-align:left;white-space:pre-line}table.sounds td{vertical-align:top}table.sounds .text-col{width:45%}table.sounds textarea{width:100%;min-height:2.6em;resize:vertical;font:inherit}table.sounds .chip{margin-top:4px}.badge.sound-GENERATED{background:var(--ok-soft);color:var(--ok)}.badge.sound-NOT_GENERATED,.badge.sound-OUTDATED{background:var(--warn-soft);color:var(--warn)}.badge.sound-TEXT_MISSING{background:var(--line);color:var(--muted)}.badge.sip-online{background:var(--ok-soft);color:var(--ok)}.badge.sip-offline{background:var(--bad-soft);color:var(--bad)}.badge.sip-not-loaded{background:var(--warn-soft);color:var(--warn)}.badge.sip-unknown{background:var(--line);color:var(--muted)}.password{font-size:16px;-webkit-user-select:all;user-select:all}.field-error{color:var(--bad);font-size:12px}.recordings-layout{display:grid;grid-template-columns:260px 1fr;gap:16px;align-items:start}.recordings-layout .tree{display:flex;flex-direction:column;gap:2px;max-height:calc(100vh - 160px);overflow-y:auto;background:var(--panel);border-radius:var(--radius);padding:8px;position:sticky;top:8px}.recordings-layout .tree input[type=search]{margin-bottom:6px}.recordings-layout .node{display:flex;align-items:center;gap:6px;width:100%;text-align:left;border:0;background:transparent;padding:4px 6px;border-radius:6px;cursor:pointer;color:var(--text)}.recordings-layout .node:hover{background:var(--accent-soft)}.recordings-layout .node.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.recordings-layout .node.queue{padding-left:26px;font-size:13px}.recordings-layout .node .count{margin-left:auto;color:var(--muted);font-weight:400;font-size:12px}.recordings-layout .chevron{width:12px;color:var(--muted)}.recordings-layout .player-row td{background:var(--accent-soft)}.recordings-layout .player-row audio{width:min(520px,100%);vertical-align:middle;margin-right:12px}tr.playing td{background:var(--accent-soft)}.inline-filter{flex-direction:row;align-items:center;gap:6px;color:var(--text)}@media(max-width:800px){.recordings-layout{grid-template-columns:1fr}.recordings-layout .tree{position:static;max-height:240px}}.conf.folded{padding:6px 14px}.conf-line{all:unset;box-sizing:border-box;width:100%;display:flex;align-items:center;gap:10px;cursor:pointer;padding:2px 0}.conf-line:focus-visible{outline:2px solid var(--accent, #4a7bd0);outline-offset:2px;border-radius:4px}.conf-line .chevron{width:1em;color:var(--muted)}.conf-line .ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:0 1 auto}.conf-line .markers{display:inline-flex;gap:4px;margin-left:auto}.conf-line .small-timer{font-size:15px;min-width:4.5em;text-align:right}.conf:not(.folded) .conf-line{border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:8px}.logs-page{display:flex;flex-direction:column;height:calc(100vh - 130px);min-height:300px}.log-console{position:relative;flex:1;overflow:auto;background:#10141a;color:#d6dde6;border-radius:var(--radius);padding:8px 10px;font:12px/1.45 ui-monospace,Menlo,Consolas,monospace}.log-line{white-space:pre-wrap;word-break:break-word}.log-line .t{color:#7d8794}.log-line .lv{display:inline-block;width:5ch;font-weight:600}.log-line .lg{color:#8fb4d9}.log-line .th{color:#7d8794}.log-line.l-DEBUG,.log-line.l-TRACE{color:#8a929c}.log-line.l-WARN{color:#f0a54a}.log-line.l-ERROR{color:#ff6b6b}.log-line.skipped{color:#f0a54a;font-style:italic;text-align:center}.log-line mark{background:#6b5a14;color:inherit}.log-jump{position:sticky;bottom:6px;float:right}.root-banner{border-radius:0;text-align:center}.health a.stat{text-decoration:none;color:inherit}.health a.stat.active{color:var(--accent);font-weight:600}.rights{display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:2px 12px;margin-top:4px}a.button{display:block;text-align:center;text-decoration:none;border-radius:6px;padding:8px 10px}a.button.primary{background:var(--accent);color:#fff}a.button.primary:hover{filter:brightness(1.08)}.login .root-login{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--line);padding-top:14px}.login .root-login h3{margin:0;font-size:14px}.badge.ok{background:var(--ok-soft);color:var(--ok)}.bad-text{color:var(--bad)}
