:root{--bg:#e9f2f0;--bg2:#d9e8e5;--surface:#fff;--surface-2:#f3f9f8;--glass:#ffffffd6;--ink:#06222a;--ink-2:#1d4047;--muted:#46666b;--line:#bcd3cf;--accent:#0a7a42;--accent-ink:#fff;--accent-soft:#cdeedd;--accent-text:#07643a;--accent-wave:#12a05a;--ice:#2b86c5;--ringline:#0a7a4229;--cyan:#0a7f9c;--cyan-soft:#d8f2f8;--green:#0b7a46;--green-soft:#d3f0df;--amber:#a86300;--amber-soft:#fcefcf;--violet:#6b4fd1;--violet-soft:#e6e0fb;--red:#c0283f;--red-soft:#fde2e7;--pink:#b8326f;--pink-soft:#fbdde9;--sb-bg:#04141a;--sb-ink:#c9e3de;--sb-muted:#86a9a6;--sb-line:#ffffff17;--sb-hover:#ffffff12;--shadow:0 1px 2px #04222a0f, 0 10px 28px #04222a14;--shadow-lg:0 28px 70px #02181e47;--r:22px;--sidebar:258px;--ease:cubic-bezier(.2,.8,.2,1);--dots:#0a645024;--wire:#0a7a424d;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#061519;--bg2:#0e2329;--surface:#0b1d22;--surface-2:#102930;--glass:#0b1d22d6;--ink:#e4f3f0;--ink-2:#bfd9d5;--muted:#8fb2b0;--line:#1b3b43;--accent:#1fc96b;--accent-ink:#03150b;--accent-soft:#0d3a2a;--accent-text:#5bea9a;--accent-wave:#1fc96b;--ice:#8bd3ff;--ringline:#1fc96b21;--cyan:#4cc9e6;--cyan-soft:#0f3340;--green:#43d98a;--green-soft:#0d3a2a;--amber:#f2b13c;--amber-soft:#3a2d12;--violet:#b6a3ff;--violet-soft:#2a2250;--red:#ff7088;--red-soft:#3d1b26;--pink:#ff8fbf;--pink-soft:#43192f;--sb-bg:#030d11;--sb-line:#ffffff12;--shadow:0 1px 2px #0006, 0 10px 30px #00000059;--shadow-lg:0 28px 70px #000000a6;--dots:#1fc96b12;--wire:#1fc96b52;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:ui-rounded,SF Pro Rounded,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.45;overflow-x:clip}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,h4{letter-spacing:-.02em;line-height:1.2}:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:8px}.mono{font-variant-numeric:tabular-nums;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace}.muted{color:var(--muted)}.small{font-size:12px}.bold{font-weight:700}.right{text-align:right}.center{text-align:center}.row{align-items:center;gap:10px;display:flex}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.col{flex-direction:column;gap:10px;display:flex}.grow{flex:1;min-width:0}.show-sm{display:none!important}.clamp1{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.clamp2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.sr{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.app{grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100%;transition:grid-template-columns .4s var(--ease);display:grid;position:relative}.app.collapsed{grid-template-columns:76px minmax(0,1fr)}.sidebar{z-index:5;background:var(--sb-bg);height:100vh;color:var(--sb-ink);flex-direction:column;gap:6px;padding:16px 12px;display:flex;position:sticky;top:0;overflow:hidden}.sidebar:before{content:"";pointer-events:none;background:repeating-linear-gradient(90deg,#0000 0 38px,#ffffff06 38px 39px),repeating-linear-gradient(0deg,#0000 0 38px,#ffffff06 38px 39px);position:absolute;inset:0}.sidebar>*{position:relative}.brand{align-items:center;gap:10px;padding:6px 8px 14px;display:flex}.brand-mark{background:linear-gradient(135deg, var(--accent), #0e8a52);color:#fff;border-radius:12px;flex:none;place-items:center;width:40px;height:40px;display:grid;box-shadow:0 6px 18px #1fc96b66}:root[data-theme=dark] .brand-mark{background:linear-gradient(135deg,#1fc96b,#0e8a52)}.brand-txt{flex-direction:column;min-width:0;display:flex}.brand-txt b{color:#fff;font-size:16px}.brand-txt small{color:var(--sb-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.nav{scrollbar-width:thin;flex-direction:column;flex:1;gap:2px;padding-right:2px;display:flex;position:relative;overflow-y:auto}.nav-pill{pointer-events:none;z-index:0;background:linear-gradient(90deg,#1fc96b80,#1fc96b1f);border-radius:12px;height:40px;position:absolute;top:0;left:0;right:2px}.nav a{z-index:1;min-height:40px;color:var(--sb-ink);border-radius:12px;align-items:center;gap:12px;padding:0 12px;font-weight:600;display:flex;position:relative}.nav a.active{color:#fff}.nav-sec-btn{letter-spacing:.08em;text-transform:uppercase;min-height:36px;color:var(--sb-muted);text-align:left;z-index:1;border-radius:10px;justify-content:space-between;align-items:center;width:100%;margin-top:8px;padding:0 12px;font-size:12px;font-weight:800;display:flex;position:relative}.nav-sec-btn .chev{transition:transform .25s var(--ease)}.nav-sec-btn[aria-expanded=false] .chev{transform:rotate(-90deg)}.nav a[data-shut="1"]{display:none}.nav-tools{z-index:1;gap:6px;padding:2px 4px 6px;display:flex;position:relative}.nav-tools button{color:var(--sb-muted);border-radius:8px;min-height:40px;padding:6px 8px;font-size:12px;font-weight:700}@media (hover:hover){.nav a:hover{background:var(--sb-hover)}.nav a.active:hover{background:0 0}.nav-tools button:hover{background:var(--sb-hover);color:#fff}}.cnt{background:var(--accent);min-width:22px;height:20px;color:var(--accent-ink);border-radius:99px;place-items:center;margin-left:auto;padding:0 7px;font-size:12px;font-weight:800;display:grid}:root:not([data-theme=dark]) .cnt{color:#0a6b3a;background:#fff}.cnt.warn{background:var(--amber);color:#1b1200}.side-foot{border-top:1px solid var(--sb-line);flex-direction:column;gap:4px;padding-top:10px;display:flex}.side-foot .btn{color:var(--sb-ink)}.app.collapsed .sidebar:not(.as-drawer) .lbl,.app.collapsed .sidebar:not(.as-drawer) .brand-txt,.app.collapsed .sidebar:not(.as-drawer) .nav-sec-btn,.app.collapsed .sidebar:not(.as-drawer) .nav-tools,.app.collapsed .sidebar:not(.as-drawer) .hide-collapsed,.app.collapsed .sidebar:not(.as-drawer) .cnt{display:none}.app.collapsed .sidebar:not(.as-drawer) .nav a[data-shut]{display:flex}.app.collapsed .sidebar:not(.as-drawer) .nav a{justify-content:center;padding:0}.main{background-image:radial-gradient(var(--dots) 1px, transparent 1.2px);background-size:22px 22px;min-width:0;padding-bottom:28px;position:relative}.demo-banner{background:var(--accent-soft);color:var(--ink);border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:8px 20px;font-size:12px;display:flex}.demo-banner svg{color:var(--accent-text);flex:none}.topbar{z-index:10;background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:10px 24px;display:flex;position:sticky;top:0}.search{border:1px solid var(--line);background:var(--surface);min-width:0;max-width:460px;min-height:44px;color:var(--muted);border-radius:14px;flex:1;align-items:center;gap:8px;padding:0 14px;display:flex;overflow:hidden}.search input{background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:16px}.kbd{border:1px solid var(--line);background:var(--bg2);color:var(--muted);border-radius:7px;padding:2px 7px;font-family:ui-monospace,monospace;font-size:12px}.icon-btn{width:44px;height:44px;color:var(--ink-2);border-radius:14px;flex:none;place-items:center;display:grid;position:relative}@media (hover:hover){.icon-btn:hover{background:var(--bg2)}}.icon-btn .dot{background:var(--accent);border:2px solid var(--surface);border-radius:50%;width:9px;height:9px;position:absolute;top:9px;right:10px}.avatar{background:linear-gradient(135deg, var(--accent), #0e8a52);width:44px;height:44px;color:var(--accent-ink);border-radius:13px;flex:none;place-items:center;font-weight:800;display:grid}:root:not([data-theme=dark]) .avatar{color:#fff}.menu-btn{display:none}.page{max-width:1480px;margin:0 auto;padding:26px 28px 40px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.page-head h1{align-items:center;gap:12px;font-size:27px;display:flex}.page-head h1 .ph-ic{background:var(--accent-soft);width:44px;height:44px;color:var(--accent-text);border-radius:13px;flex:none;place-items:center;display:grid}.page-head p{color:var(--muted);max-width:64ch;margin-top:4px}.actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);min-width:0;padding:18px;position:relative}.card.tight{padding:12px}.card.pad0{padding:0;overflow:hidden}.card h3{font-size:16px}.card-h{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.card-h h3{align-items:center;gap:8px;display:flex}.card-h h3 svg{color:var(--accent-text)}.g2,.g3,.g4{gap:16px;display:grid}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}.g-main{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:16px;display:grid}.g-main>*,.g2>*,.g3>*,.g4>*{min-width:0}.stack{flex-direction:column;gap:16px;display:flex}.kpi{flex-direction:column;gap:6px;display:flex;overflow:hidden}.kpi .k-ic{background:var(--accent-soft);width:40px;height:40px;color:var(--accent-text);border-radius:12px;place-items:center;display:grid}.kpi .k-v{letter-spacing:-.03em;font-size:30px;font-weight:800;line-height:1.1}.kpi .k-l{color:var(--muted);font-size:13px;font-weight:600}.delta{border-radius:99px;align-items:center;gap:3px;padding:2px 8px;font-size:12px;font-weight:800;display:inline-flex}.delta.up{background:var(--green-soft)}.delta.down{background:var(--red-soft)}.spark{display:block}.btn{border:1px solid var(--line);background:var(--surface);min-height:44px;transition:transform .15s var(--ease), background .2s, box-shadow .2s;white-space:nowrap;border-radius:13px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:700;display:inline-flex}.btn:active{transform:scale(.97)}@media (hover:hover){.btn:hover{background:var(--bg2)}.btn.primary:hover{filter:brightness(1.1);background:var(--accent)}}.btn.primary{background:var(--accent);color:var(--accent-ink);box-shadow:0 8px 20px color-mix(in srgb, var(--accent) 35%, transparent);border-color:#0000}.btn.ghost{background:0 0;border-color:#0000}.btn.danger{color:var(--red)}.btn.block{width:100%;display:flex}.btn.lg{min-height:52px;font-size:15px}.btn.sm{min-height:40px;padding:0 12px;font-size:13px}.btn[disabled]{opacity:.5;cursor:not-allowed}@media (pointer:coarse){.btn.sm{min-height:44px}}.input,select.input,textarea.input{border:1px solid var(--line);background:var(--surface);border-radius:12px;outline:0;width:100%;min-height:44px;padding:10px 14px;font-size:16px;transition:border-color .2s,box-shadow .2s}textarea.input{resize:vertical;min-height:88px;line-height:1.45}textarea.input.mono{font-size:14px}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 24%, transparent)}.input.bad{border-color:var(--red)}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field label,.lab{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:800}.hint{color:var(--muted);font-size:12px}.hint.err{color:var(--red);font-weight:600}input[type=checkbox],input[type=radio]{width:20px;height:20px;accent-color:var(--accent);flex:none}input[type=range]{width:100%;accent-color:var(--accent);min-height:32px}.switch{background:var(--bg2);border:1px solid var(--line);border-radius:99px;flex:none;width:48px;height:28px;transition:background .25s;position:relative}.switch i{background:var(--ink-2);width:20px;height:20px;transition:transform .3s var(--ease), background .2s;border-radius:50%;position:absolute;top:3px;left:3px}.switch.on{background:var(--accent);border-color:#0000}.switch.on i{background:var(--accent-ink);transform:translate(20px)}.switch:after{content:"";position:absolute;inset:-8px -2px}.seg{background:var(--bg2);scrollbar-width:none;border-radius:14px;max-width:100%;padding:4px;display:inline-flex;position:relative;overflow-x:auto}.seg::-webkit-scrollbar{display:none}.seg .thumb{background:var(--surface);width:0;box-shadow:var(--shadow);border-radius:11px;position:absolute;top:4px;bottom:4px;left:0}.seg button{z-index:1;min-height:40px;color:var(--ink-2);white-space:nowrap;border-radius:11px;padding:0 14px;font-weight:700;position:relative}.seg button.on{color:var(--ink)}.tabs{border-bottom:1px solid var(--line);scrollbar-width:none;gap:4px;margin-bottom:18px;display:flex;overflow-x:auto}.tabs button{min-height:44px;color:var(--muted);white-space:nowrap;border-bottom:3px solid #0000;padding:0 16px;font-weight:700}.tabs button.on{color:var(--ink);border-color:var(--accent)}.badge,.chip{background:var(--bg2);color:var(--ink-2);white-space:nowrap;border-radius:99px;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-flex}.chip i.d{background:var(--muted);border-radius:50%;width:8px;height:8px}.chip.green i.d{background:var(--green)}.chip.amber i.d{background:var(--amber)}.chip.red i.d{background:var(--red)}.chip.accent i.d{background:var(--accent)}button.chip{border:1px solid var(--line);min-height:40px;padding:0 14px}button.chip.on{background:var(--accent);color:var(--accent-ink);border-color:#0000}.tag{background:var(--accent-soft);color:var(--accent-text);border-radius:8px;padding:2px 9px;font-size:12px;font-weight:700;display:inline-flex}.bar{background:var(--bg2);border-radius:99px;height:9px;overflow:hidden}.bar i{background:linear-gradient(90deg, var(--accent), #14a85c);border-radius:99px;width:0;height:100%;display:block}.bar.green i{background:var(--green)}.bar.amber i{background:var(--amber)}.bar.red i{background:var(--red)}.legend{color:var(--muted);flex-wrap:wrap;gap:14px;font-size:12px;display:flex}.legend i{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}.av{color:#fff;border-radius:50%;flex:none;place-items:center;font-weight:800;display:inline-grid}.empty{text-align:center;color:var(--ink-2);flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:34px 16px;display:flex}.empty-ic{background:var(--accent-soft);width:60px;height:60px;color:var(--accent-text);border-radius:18px;place-items:center;margin-bottom:6px;display:grid}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th{text-align:left;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);white-space:nowrap;padding:10px 12px;font-size:12px;font-weight:800}td{border-bottom:1px solid var(--line);vertical-align:middle;padding:11px 12px}tbody tr:last-child td{border-bottom:0}th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}th.sortable button{font:inherit;text-transform:inherit;letter-spacing:inherit;color:inherit;align-items:center;gap:4px;min-height:32px;display:inline-flex}@media (hover:hover){tbody tr.click:hover{background:var(--surface-2);cursor:pointer}}.list-row{text-align:left;border-radius:14px;align-items:center;gap:12px;width:100%;min-height:56px;padding:12px;display:flex}@media (hover:hover){.list-row:hover{background:var(--surface-2)}}.filters{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.filters .input{flex:0 200px;width:auto;min-width:140px}.filters .search-f{flex:220px;max-width:360px}.code{color:#d7efe8;white-space:pre;background:#031418;border-radius:14px;max-height:360px;padding:14px;font-family:ui-monospace,Menlo,monospace;font-size:12px;line-height:1.55;overflow:auto}.code.wrapc{white-space:pre-wrap;overflow-wrap:anywhere}.copyline{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;align-items:center;gap:8px;min-width:0;padding:6px 6px 6px 12px;font-family:ui-monospace,monospace;font-size:12px;display:flex}.copyline span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.overlay{z-index:50;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0210149e;place-items:center;padding:16px;animation:.25s both fade;display:grid;position:fixed;inset:0}.modal{background:var(--surface);width:min(520px,100%);max-height:92vh;box-shadow:var(--shadow-lg);animation:pop .4s var(--ease) both;border:1px solid var(--line);border-radius:22px;padding:24px;overflow-y:auto}.modal h3{margin-bottom:4px;font-size:19px}.sheet{background:var(--surface);width:100%;padding:18px 16px calc(96px + env(safe-area-inset-bottom));animation:rise .35s var(--ease) both;border-radius:24px 24px 0 0;grid-template-columns:repeat(3,1fr);gap:8px;max-height:80vh;display:grid;overflow-y:auto}.sheet a{background:var(--bg2);text-align:center;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:76px;padding:4px;font-size:12px;font-weight:700;display:flex}.sheet a.active{background:var(--accent);color:var(--accent-ink)}.toasts{z-index:80;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:20px;right:20px}.toast{background:var(--ink);color:var(--bg);box-shadow:var(--shadow-lg);animation:slidein .45s var(--ease) both;border-radius:14px;align-items:center;gap:10px;max-width:360px;padding:12px 16px;font-weight:600;display:flex}.wipe{z-index:100;pointer-events:none;position:fixed;inset:0}.tour-mask{z-index:90;pointer-events:none;transition:all .45s var(--ease);border-radius:14px;position:fixed;box-shadow:0 0 0 9999px #021014b8}.tour-tip{z-index:91;background:var(--surface);width:min(330px,100vw - 24px);box-shadow:var(--shadow-lg);border:1px solid var(--line);animation:pop .4s var(--ease) both;border-radius:20px;padding:16px;position:fixed}.tour-tip h4{margin-bottom:4px;font-size:15px}.tour-dots{gap:5px;display:flex}.tour-dots i{background:var(--line);border-radius:99px;width:6px;height:6px}.tour-dots i.on{background:var(--accent);width:18px}.drag-ghost{z-index:200;pointer-events:none;background:var(--accent);color:var(--accent-ink);box-shadow:var(--shadow-lg);white-space:nowrap;text-overflow:ellipsis;border-radius:12px;max-width:240px;padding:8px 12px;font-size:13px;font-weight:700;position:fixed;top:0;left:0;overflow:hidden}body.is-dragging{-webkit-user-select:none;user-select:none;cursor:grabbing}.palette-pop{z-index:70;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-lg);width:min(320px,100vw - 24px);max-height:60vh;animation:pop .25s var(--ease) both;border-radius:18px;padding:8px;position:fixed;overflow-y:auto}.bottomnav{left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:61;background:var(--glass);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid var(--line);box-shadow:var(--shadow-lg);border-radius:22px;justify-content:space-around;padding:6px;display:none;position:fixed}.bottomnav a,.bottomnav button{min-width:52px;min-height:48px;color:var(--muted);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:4px 8px;font-size:12px;font-weight:700;display:flex}.bottomnav a.active{color:var(--accent-ink);background:var(--accent)}.scrim{z-index:69;background:#0210149e;animation:.25s both fade;position:fixed;inset:0}.sidebar.as-drawer{z-index:70;width:min(300px,86vw);height:100%;box-shadow:var(--shadow-lg);animation:drawerin .35s var(--ease) both;position:fixed;top:0;bottom:0;left:0}.login{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);min-height:100%;display:grid}.login-hero{color:#fff;background:radial-gradient(900px 600px at 80% 10%,#0b5a3e 0%,#0000 60%),radial-gradient(700px 500px at 0 100%,#0a6b3a 0%,#0000 62%),#031418;flex-direction:column;justify-content:space-between;gap:24px;min-height:100vh;padding:38px 46px;display:flex;position:relative;overflow:hidden}.login-hero h1{max-width:15ch;margin-bottom:14px;font-size:clamp(30px,3.6vw,46px)}.login-hero p{opacity:.92;max-width:46ch;font-size:16px}.login-hero .art{opacity:.8;pointer-events:none;width:100%;height:36%;position:absolute;bottom:0;left:0;right:0}.float{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2;background:#ffffff24;border:1px solid #ffffff47;border-radius:16px;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:700;display:flex;position:absolute}.login-form{background:var(--bg);place-items:center;padding:28px 20px;display:grid}.login-card{flex-direction:column;gap:14px;width:min(430px,100%);display:flex}.login-card h2{font-size:26px}.roles{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.role{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:64px;font-size:12px;font-weight:700;display:flex}.role.on{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 2px var(--accent)}.otp{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.otp input{text-align:center;padding:0}.or{color:var(--muted);align-items:center;gap:12px;font-size:12px;display:flex}.or:before,.or:after{content:"";background:var(--line);flex:1;height:1px}.floaty{animation:6s ease-in-out infinite floaty}.feed-item{border-bottom:1px solid var(--line);animation:msgin .5s var(--ease) both;align-items:flex-start;gap:10px;padding:9px 0;display:flex}.feed-item:last-child{border:0}.feed-ic{background:var(--accent-soft);width:32px;height:32px;color:var(--accent-text);border-radius:10px;flex:none;place-items:center;display:grid}.feed-ic.green{background:var(--green-soft);color:var(--green)}.feed-ic.red{background:var(--red-soft);color:var(--red)}.feed-ic.amber{background:var(--amber-soft);color:var(--amber)}.hero-card{color:#fff;background:radial-gradient(500px 300px at 100% 0,#1fc96b8c,#0000 70%),linear-gradient(135deg,#1fc96b,#04201c);border:0;border-radius:24px;padding:24px;position:relative;overflow:hidden}.hero-card h2{max-width:18ch;font-size:24px}.hero-card p{opacity:.94;max-width:44ch;margin-top:6px}.hero-card .hero-art{opacity:.75;pointer-events:none;width:38%;height:100%;position:absolute;bottom:0;right:0}.hero-card .btn{color:#04201c;background:#fff;border:0;position:relative}.hero-card>:not(.hero-art){z-index:1;position:relative}.attn{background:var(--surface-2);border:1px solid var(--line);text-align:left;border-radius:14px;align-items:center;gap:12px;width:100%;min-width:0;padding:12px;display:flex}.thumb-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.tpl-art{background:var(--surface-2);border:1px solid var(--line);border-radius:14px;height:120px;margin-bottom:12px;padding:8px;position:relative;overflow:hidden}.thumb-wire{stroke-dasharray:20 14;animation:1.2s linear infinite dash;stroke:var(--accent)!important}.perm{grid-template-columns:minmax(150px,1.6fr) repeat(5,minmax(60px,1fr));align-items:center;min-width:520px;display:grid}.perm>*{border-bottom:1px solid var(--line);padding:10px 8px}.perm .hd{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);text-align:center;font-size:12px;font-weight:800}.meter-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:6px 12px;display:grid}.tl{padding-left:30px;position:relative}.tl:before{content:"";background:repeating-linear-gradient(var(--wire) 0 6px, transparent 6px 10px);width:2px;position:absolute;top:6px;bottom:6px;left:11px}.tl-item{padding:4px 0 14px;position:relative}.tl-dot{background:var(--surface);border:2px solid var(--line);width:24px;height:24px;color:var(--muted);border-radius:50%;place-items:center;display:grid;position:absolute;top:4px;left:-30px}.tl-dot.success{border-color:var(--green);color:var(--green)}.tl-dot.failed{border-color:var(--red);color:var(--red)}.tl-dot.waiting,.tl-dot.retried{border-color:var(--amber);color:var(--amber)}.step-btn{text-align:left;border:1px solid #0000;border-radius:12px;width:100%;min-height:44px;padding:8px 10px;display:block}.step-btn.on{background:var(--accent-soft);border-color:var(--accent)}.cell-input{background:0 0;border:1px solid #0000;border-radius:8px;width:100%;min-height:40px;padding:6px 8px;font-size:16px}.cell-input:focus{border-color:var(--accent);background:var(--surface);outline:0}.cronbox{letter-spacing:.04em;text-align:center;font-family:ui-monospace,monospace;font-size:22px}.cron-cell{flex-direction:column;align-items:center;gap:4px;display:flex}.cron-cell small{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:700}.nextrun{background:var(--surface-2);border:1px solid var(--line);animation:msgin .4s var(--ease) both;border-radius:12px;align-items:center;gap:10px;padding:8px 12px;display:flex}.nextrun .n{background:var(--accent-soft);width:24px;height:24px;color:var(--accent-text);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:800;display:grid}.app-tile{flex-direction:column;gap:10px;display:flex}.app-ic{background:var(--accent-soft);width:44px;height:44px;color:var(--accent-text);border-radius:13px;flex:none;place-items:center;display:grid}.diff-ok{color:var(--green)}.diff-bad{color:var(--red)}.sim-badge{background:var(--pink-soft);color:var(--ink);border:1px dashed var(--pink);border-radius:99px;align-items:center;gap:6px;padding:2px 10px;font-size:12px;font-weight:800;display:inline-flex}.sim-badge svg{color:var(--pink)}.map-row{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr) 70px auto;align-items:center;gap:8px;padding:10px;display:grid}.circuit-bg{pointer-events:none;position:absolute;inset:0}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:translateY(16px)scale(.96)}}@keyframes rise{0%{transform:translateY(100%)}}@keyframes slidein{0%{opacity:0;transform:translate(30px)}}@keyframes drawerin{0%{transform:translate(-100%)}}@keyframes msgin{0%{opacity:0;transform:translateY(8px)}}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes dash{to{stroke-dashoffset:-24px}}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:1s linear infinite spin}.check{width:84px;height:84px}.check circle{fill:none;stroke:var(--green);stroke-width:4px;stroke-dasharray:240;stroke-dashoffset:240px;animation:.7s .1s forwards draw}.check path{fill:none;stroke:var(--green);stroke-width:5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:60;stroke-dashoffset:60px;animation:.5s .6s forwards draw}@keyframes draw{to{stroke-dashoffset:0}}@media (width<=1100px){.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g-main{grid-template-columns:minmax(0,1fr)}.login{grid-template-columns:1fr}.login-hero{min-height:0;padding:28px 24px 36px}.login-hero .art,.login-hero .float{display:none}}@media (width>=721px) and (width<=1100px){.app{grid-template-columns:76px minmax(0,1fr)!important}.sidebar:not(.as-drawer) .lbl,.sidebar:not(.as-drawer) .brand-txt,.sidebar:not(.as-drawer) .nav-sec-btn,.sidebar:not(.as-drawer) .nav-tools,.sidebar:not(.as-drawer) .hide-collapsed,.sidebar:not(.as-drawer) .cnt{display:none}.sidebar:not(.as-drawer) .nav a[data-shut]{display:flex}.sidebar:not(.as-drawer) .nav a{justify-content:center;padding:0}.sidebar:not(.as-drawer) .brand{justify-content:center;padding:6px 0 14px}.g3{grid-template-columns:repeat(2,minmax(0,1fr))}.page{padding:22px 20px 36px}.topbar{padding:10px 16px}.map-row{grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr) 60px auto}}@media (width<=720px){.app,.app.collapsed{grid-template-columns:minmax(0,1fr)}.sidebar:not(.as-drawer){display:none}.bottomnav{display:flex}.hide-sm{display:none!important}.show-sm{display:inline-flex!important}.menu-btn{display:grid}.page{padding:16px 14px 120px}.topbar{gap:6px;padding:8px 12px}.search{max-width:none}.demo-banner{padding:8px 14px}.g2,.g3,.g4{grid-template-columns:minmax(0,1fr)}.g4.keep2{grid-template-columns:repeat(2,minmax(0,1fr))}.page-head h1{font-size:22px}.kpi .k-v{font-size:25px}.page-head p:not(.keep){display:none}.toasts{bottom:96px;left:12px;right:12px}.toast{max-width:none}.roles{grid-template-columns:repeat(2,1fr)}.hero-card .hero-art{opacity:.35}.modal{padding:18px}.perm{min-width:460px}.map-row{grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr)}.map-row>:nth-child(n+4){grid-column:1/-1}.filters .input{flex:140px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (pointer:coarse),(width<=1100px){.btn.sm,.seg button,button.chip,.nav-tools button,.demo-banner button{min-height:44px}.pal-btn{min-height:48px}}.nx{width:40px;height:40px;margin-left:auto}@media (pointer:coarse){.nx{width:44px;height:44px}}.panel-btn{display:none}@media (width<=1360px){.panel-btn{display:inline-flex}}@media (prefers-reduced-motion:reduce){.pulse.amb{display:none}}.canvas button.btn:disabled{opacity:.45}.cv-top .btn,.cv-tools .btn{background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.g5{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;display:grid}.g5>*{min-width:0}@media (width<=1100px){.g5{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=720px){.g5{grid-template-columns:repeat(2,minmax(0,1fr))}.g5 .k-v{font-size:22px}}:root[data-still="1"] *,:root[data-still="1"] :before,:root[data-still="1"] :after{transition:none!important;animation:none!important}:root[data-still="1"] .pulse.amb{display:none}.page-head.compact{margin-bottom:10px}@media (width<=720px){.cv-top .panel-btn{display:none}.page-head.compact h1{font-size:20px}}.fcc-tip{pointer-events:none;z-index:3;width:176px;box-shadow:var(--shadow-lg);padding:8px 12px;position:absolute}.fcc-tip .dotk{border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.k-ic.red{background:var(--red-soft);color:var(--red)}.k-ic.amber{background:var(--amber-soft);color:var(--amber)}.k-ic.green{background:var(--green-soft);color:var(--green)}.k-ic.cyan{background:var(--cyan-soft);color:var(--cyan)}.k-ic.violet{background:var(--violet-soft);color:var(--violet)}.card.click{cursor:pointer;width:100%}@media (hover:hover){.card.click:hover{border-color:var(--accent);transform:translateY(-2px)}}.card.click{transition:transform .2s var(--ease), border-color .2s}.barrow{grid-template-columns:minmax(70px,38%) minmax(0,1fr) auto;align-items:center;gap:10px;min-height:32px;display:grid}.barwrap{min-width:0}.dcard{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:16px;min-width:0;padding:12px}.dcard.click{cursor:pointer}.dcard-t{min-width:0;margin-bottom:8px;font-weight:800}.dcard-g{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;display:grid}.dcard-c{overflow-wrap:anywhere;flex-direction:column;gap:1px;min-width:0;display:flex}table.dense td{padding:7px 10px}td .tag,td .chip{vertical-align:middle}.drawer-ov{place-items:stretch end;padding:0}.drawer{background:var(--surface);border-left:1px solid var(--line);width:min(560px,100%);height:100%;animation:slidein .4s var(--ease) both;box-shadow:var(--shadow-lg);flex-direction:column;display:flex}.drawer-h{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:16px 18px;display:flex}.drawer-h h3{font-size:18px}.drawer-b{flex-direction:column;flex:1;gap:16px;min-height:0;padding:18px;display:flex;overflow-y:auto}.dragbar{background:var(--bg2);cursor:ew-resize;outline-offset:3px;border-radius:12px;flex:1;min-width:120px;height:44px;position:relative}.dragbar:before{content:"";background:var(--line);border-radius:99px;height:6px;position:absolute;top:19px;left:0;right:0}.dragbar i{background:var(--accent);border-radius:99px;height:6px;position:absolute;top:19px;left:0}.dragbar b{background:var(--surface);border:4px solid var(--accent);width:22px;height:22px;box-shadow:var(--shadow);border-radius:50%;position:absolute;top:11px}.dragbar.warn i{background:var(--amber)}.dragbar.warn b{border-color:var(--amber)}.k-ic{background:var(--accent-soft);width:40px;height:40px;color:var(--accent-text);border-radius:12px;place-items:center;display:grid}.heat{gap:3px;display:grid}.heat-c{color:#03150b;border-radius:6px;place-items:center;min-height:34px;font-size:12px;font-weight:700;display:grid}.scroll-x{padding-bottom:6px;overflow-x:auto}.scroll-x::-webkit-scrollbar{height:6px}.scroll-x::-webkit-scrollbar-thumb{background:var(--line);border-radius:6px}.paper{color:#06222a;box-shadow:var(--shadow-lg);background:#fff;border:1px solid #bcd3cf;border-radius:10px;max-width:820px;margin:0 auto;padding:34px 38px;font-size:14px}.paper h2{font-size:22px}.paper h3{border-bottom:2px solid #1fc96b;margin:18px 0 6px;padding-bottom:3px;font-size:15px}.paper table th{color:#46666b;border-color:#bcd3cf}.paper td{border-color:#bcd3cf}.paper .muted{color:#46666b}@media (width<=720px){.paper{padding:20px 16px}}.pill-row{flex-wrap:wrap;gap:8px;display:flex}.pill-row .chip{cursor:default}.notice{background:var(--accent-soft);border-radius:14px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:13px;display:flex}.notice svg{color:var(--accent-text);flex:none;margin-top:1px}.notice.warn{background:var(--amber-soft)}.notice.warn svg{color:var(--amber)}.notice.bad{background:var(--red-soft)}.notice.bad svg{color:var(--red)}.chat{flex-direction:column;gap:12px;display:flex}.bubble{max-width:92%;animation:msgin .4s var(--ease) both;border-radius:16px;padding:10px 14px}.bubble.me{background:var(--accent);color:var(--accent-ink);align-self:flex-end}.bubble.ai{background:var(--surface-2);border:1px solid var(--line);align-self:flex-start;width:100%;max-width:100%}.typing i{background:var(--muted);border-radius:50%;width:7px;height:7px;margin-right:4px;animation:1s ease-in-out infinite floaty;display:inline-block}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}.store-tile{text-align:left;flex-direction:column;gap:8px;display:flex}.tile-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;display:grid}.abc{background:var(--bg2);border-radius:8px;place-items:center;width:26px;height:26px;font-size:12px;font-weight:800;display:inline-grid}.abc.A{background:var(--accent);color:var(--accent-ink)}.abc.B{background:var(--accent-soft);color:var(--accent-text)}.abc.X{background:var(--green-soft);color:var(--green)}.abc.Y{background:var(--amber-soft);color:var(--amber)}.abc.Z{background:var(--red-soft);color:var(--red)}.chip.red{background:var(--red-soft)}.chip.amber{background:var(--amber-soft)}.chip.green{background:var(--green-soft)}.chip.accent{background:var(--accent-soft)}.mini-note{color:var(--muted);font-size:12px}.tabs-sc{margin-bottom:14px}.hero-card .btn.ghostw{color:#fff;background:#ffffff29;border:1px solid #ffffff59}.pulse-dot{background:var(--green);width:9px;height:9px;box-shadow:0 0 0 0 var(--green);border-radius:50%;flex:none;animation:1.8s infinite pulseo}@keyframes pulseo{70%{box-shadow:0 0 0 10px #0000}to{box-shadow:0 0 #0000}}.sticky-sum{z-index:6;position:sticky;top:74px}.sel-check{cursor:pointer;align-items:center;gap:8px;min-height:44px;font-weight:600;display:flex}@media print{.sidebar,.topbar,.bottomnav,.demo-banner,.page-head,.no-print,.toasts{display:none!important}.app{display:block!important}.main{background:0 0!important}.page{padding:0!important}.paper{box-shadow:none;border:0;max-width:none}body{overflow:visible}}@media (width<=720px){.drawer-ov{place-items:end stretch}.drawer{width:100%;height:94dvh;animation:rise .4s var(--ease) both;border-left:0;border-radius:22px 22px 0 0}.barrow{grid-template-columns:minmax(70px,34%) minmax(0,1fr) auto}.fcc-tip{width:156px}.page-head p:not(.keep){font-size:13px;display:block}}.po-row,.po-head{border-top:1px solid var(--line);grid-template-columns:minmax(150px,1.3fr) minmax(130px,1fr) minmax(160px,1.6fr) 180px 110px;align-items:center;gap:14px;padding:10px 4px;display:grid}.po-head{border-top:0;padding:0 4px 6px;font-weight:700}.po-row>*,.min0{min-width:0}.po-qty{justify-content:flex-end;align-items:center;gap:4px;display:flex}@media (width<=1100px){.po-row,.po-head{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.po-row .dragbar{order:3;grid-column:1/-1}.po-qty{justify-content:flex-start}.po-head{display:none}}@media (width<=720px){.po-row{border:1px solid var(--line);border-top:1px solid var(--line);border-radius:14px;grid-template-columns:minmax(0,1fr);margin-top:10px;padding:12px}.po-row .dragbar{order:0}}.heat>.small{align-self:center}.btn{border-radius:99px}.btn.primary{background:var(--accent)}.btn.sm{border-radius:99px}.icon-btn,.avatar{border-radius:50%}.brand-mark{border-radius:50%;box-shadow:0 0 0 4px #1fc96b29,0 0 0 9px #1fc96b12;background:linear-gradient(135deg,#12a05a,#0b7a46)!important}.page-head h1 .ph-ic,.k-ic,.empty-ic,.app-ic,.feed-ic,.nico{border-radius:50%}.input,select.input,textarea.input{border-radius:16px}textarea.input{border-radius:18px}.seg,.seg .thumb,.seg button,.chip,.badge,.tag,.search{border-radius:99px}.sidebar:before{background:repeating-radial-gradient(circle at -10% 108%,#1fc96b1a 0 1.5px,#0000 1.5px 46px)}.nav-pill{background:linear-gradient(90deg,#1fc96b57,#1fc96b14);border-radius:99px}.nav a,.nav-sec-btn{border-radius:99px}.cnt{color:#03150b!important;background:#1fc96b!important}.cnt.warn{background:#f2b13c!important}.nav a.active,.nav a:hover{color:#fff}.sidebar .brand-txt small{color:var(--sb-muted)}.main{background-image:none;position:relative;overflow-x:clip}.main:before{content:"";pointer-events:none;background:repeating-radial-gradient(circle, var(--ringline) 0 1.5px, transparent 1.5px 44px);border-radius:50%;width:640px;height:640px;position:absolute;top:-200px;right:-180px;-webkit-mask-image:radial-gradient(circle,#000 0,#0000 70%);mask-image:radial-gradient(circle,#000 0,#0000 70%)}.page{z-index:1;position:relative}.demo-banner{background:var(--accent-soft)}.ring{transform-origin:200px 200px;animation:3.6s ease-out infinite ringpulse}@keyframes ringpulse{0%{opacity:0;transform:scale(.6)}25%{opacity:.9}to{opacity:0;transform:scale(1.12)}}.rings{color:var(--accent-wave)}.wave{width:100%;display:block}.login-hero{background:radial-gradient(900px 640px at 78% 22%,#12a05a73 0%,#0000 62%),radial-gradient(700px 500px at 0 100%,#0b5a3eb3 0%,#0000 62%),#031418}.login-hero .big-rings{color:#5bea9a;opacity:.55;pointer-events:none;width:760px;max-width:120%;position:absolute;top:50%;right:-120px;transform:translateY(-50%)}.login-hero h1{max-width:14ch}.hero-wave{z-index:2;max-width:520px;position:relative}.float{border-radius:99px}.role{border-radius:20px}.kpi .k-v{font-variant-numeric:tabular-nums}.hero-card{color:#fff;background:radial-gradient(500px 300px at 100% 0,#1fc96b66,#0000 70%),linear-gradient(135deg,#0b3d33,#04201c);border-radius:28px}.hero-card .btn{color:#04201c;background:#fff}.hero-card .rings{opacity:.5;color:#5bea9a;width:360px;position:absolute;top:-50px;right:-60px}.ticker{flex-direction:column;gap:2px;max-height:330px;display:flex;overflow:hidden}.tick{border-bottom:1px solid var(--line);animation:msgin .5s var(--ease) both;align-items:center;gap:10px;min-width:0;padding:8px 4px;font-size:13px;display:flex}.tick .tick-t{color:var(--muted);flex:none;width:58px;font-size:12px}.live-dot{background:var(--red);width:9px;height:9px;box-shadow:0 0 0 0 var(--red);border-radius:50%;flex:none;animation:1.6s infinite pulseo;display:inline-block}.pulse-dot{background:var(--accent-wave);box-shadow:0 0 0 0 var(--accent-wave)}.qa-tile{border:1px solid var(--line);background:var(--surface-2);text-align:left;border-radius:20px;align-items:center;gap:12px;width:100%;min-height:64px;padding:14px;display:flex}@media (hover:hover){.qa-tile:hover{border-color:var(--accent)}}.selbox{cursor:pointer;place-items:center;min-width:40px;min-height:40px;display:inline-grid}@media (pointer:coarse){.selbox{min-width:44px;min-height:44px}}.tagx{background:var(--accent-soft);color:var(--accent-text);border-radius:99px;align-items:center;gap:2px;min-height:40px;padding:0 0 0 10px;font-size:12px;font-weight:700;display:inline-flex}.tagx button{border-radius:50%;place-items:center;width:40px;height:40px;display:grid}@media (pointer:coarse){.tagx button{width:44px;height:44px}}.sent-dot{background:var(--muted);border-radius:50%;width:10px;height:10px;margin-right:6px;display:inline-block}.sent-dot.positive{background:var(--green)}.sent-dot.negative{background:var(--red)}.player{border:1px solid var(--line);background:var(--surface-2);border-radius:99px;align-items:center;gap:12px;padding:10px 14px 10px 10px;display:flex}.player-btn{background:var(--accent);width:44px;height:44px;color:var(--accent-ink);border-radius:50%;flex:none;place-items:center;display:grid}.player-track{cursor:pointer;align-items:center;gap:2px;min-width:0;height:44px;display:flex}.player-track i{background:var(--line);border-radius:3px;flex:1;min-width:2px;transition:background .15s}.player-track i.on{background:var(--accent-wave)}.player-t{color:var(--muted);flex:none}.turns{flex-direction:column;gap:10px;display:flex}.turn{max-width:88%;animation:msgin .35s var(--ease) both;flex-direction:column;gap:3px;min-width:0;display:flex}.turn .who{color:var(--muted);letter-spacing:.03em;text-transform:uppercase;font-size:12px;font-weight:800}.turn .tb{background:var(--surface-2);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:18px 18px 18px 6px;padding:10px 14px}.turn.agent .tb{background:var(--accent-soft);border-color:#0000}.turn.caller{align-self:flex-end}.turn.caller .tb{background:var(--bg2);border-radius:18px 18px 6px}.turn.sys{align-self:center;max-width:100%}.turn.sys .tb{border:1px dashed var(--line);color:var(--muted);background:0 0;border-radius:99px;padding:4px 12px;font-size:13px}.turn.human .tb{background:var(--amber-soft)}.turn.hl .tb{outline:2px solid var(--accent)}.turn.whisper .tb{box-shadow:inset 3px 0 0 var(--violet)}mark.pii{background:var(--amber-soft);color:var(--ink);border-bottom:2px solid var(--amber);border-radius:6px;padding:0 3px}mark.red{background:var(--red-soft);border-bottom-color:var(--red)}mark.kw{background:var(--accent-soft);border-bottom:2px solid var(--accent);color:var(--ink);border-radius:4px;padding:0 2px}.live-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,380px),1fr));gap:16px;display:grid}.lcall{flex-direction:column;gap:12px;padding:16px;display:flex}.lcall.human{border-color:var(--amber);box-shadow:0 0 0 2px color-mix(in srgb, var(--amber) 35%, transparent), var(--shadow)}.lcall.neg{border-color:var(--red)}.lcall .lbox{scroll-behavior:smooth;flex-direction:column;gap:6px;height:156px;padding-right:4px;display:flex;overflow-y:auto}.lcall .lbox .turn{max-width:94%}.lcall .lbox .tb{padding:6px 11px;font-size:13px}.meter{background:linear-gradient(90deg, var(--red), var(--amber), var(--green));border-radius:99px;height:10px;position:relative}.meter b{background:var(--surface);border:3px solid var(--ink);width:18px;height:18px;transition:left .6s var(--ease);border-radius:50%;margin-left:-9px;position:absolute;top:-4px}.banner-human{background:var(--amber-soft);color:var(--ink);border-radius:14px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:700;display:flex}.callrow{align-items:center;gap:12px;min-width:0;display:flex}.speakring{background:var(--accent-soft);width:48px;height:48px;color:var(--accent-text);border-radius:50%;flex:none;place-items:center;display:grid;position:relative}.speakring:before,.speakring:after{content:"";border:2px solid var(--accent-wave);opacity:0;border-radius:50%;position:absolute;inset:0}.speakring.on:before{animation:1.8s ease-out infinite spk}.speakring.on:after{animation:1.8s ease-out .6s infinite spk}@keyframes spk{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.7)}}.sim{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.phone{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:30px;flex-direction:column;height:min(74vh,720px);min-height:560px;display:flex;overflow:hidden}.phone-h{color:#fff;background:linear-gradient(135deg,#0b3d33,#04201c);align-items:center;gap:12px;padding:16px;display:flex}.phone-h .small{color:#bfe9d5}.phone-wave{background:#04201c;padding:8px 16px 0}.phone-wave .wave{height:46px}.phone-body{scroll-behavior:smooth;background:var(--surface-2);flex-direction:column;flex:1;gap:10px;min-height:0;padding:14px;display:flex;overflow-y:auto}.phone-foot{border-top:1px solid var(--line);background:var(--surface);flex-direction:column;gap:8px;padding:10px 12px 12px;display:flex}.chips{flex-wrap:wrap;gap:8px;display:flex}.qr-chip{border:1.5px solid var(--accent);min-height:44px;color:var(--accent-text);text-align:left;background:0 0;border-radius:99px;padding:0 16px;font-weight:700}@media (hover:hover){.qr-chip:hover{background:var(--accent-soft)}}.qr-chip.alt{border-color:var(--line);color:var(--ink-2)}.composer{gap:8px;display:flex}.composer .input{border-radius:99px}.sendbtn{background:var(--accent);width:48px;height:48px;color:var(--accent-ink);border-radius:50%;flex:none;place-items:center;display:grid}.sendbtn:disabled{opacity:.45}.slot-row{border:1px dashed var(--line);border-radius:16px;align-items:center;gap:10px;min-width:0;min-height:52px;padding:10px 12px;transition:background .3s,border-color .3s;display:flex}.slot-row.filled{border-style:solid;border-color:var(--accent);background:var(--accent-soft);animation:pop .4s var(--ease) both}.slot-row.asking{border-color:var(--amber);background:var(--amber-soft)}.conf{background:var(--bg2);border-radius:99px;height:8px;overflow:hidden}.conf i{background:var(--accent);height:100%;transition:width .5s var(--ease);border-radius:99px;display:block}.evlog{flex-direction:column;gap:6px;max-height:190px;display:flex;overflow-y:auto}.ev{align-items:flex-start;gap:8px;font-size:13px;display:flex}.ev i{background:var(--muted);border-radius:50%;flex:none;width:8px;height:8px;margin-top:6px}.ev.slot i{background:var(--accent-wave)}.ev.fallback i,.ev.validation i{background:var(--red)}.ev.interrupt i,.ev.switch i{background:var(--amber)}.ev.transfer i{background:var(--violet)}.scenario{border:1px solid var(--line);background:var(--surface);text-align:left;width:100%;min-height:76px;transition:transform .2s var(--ease), border-color .2s;border-radius:22px;align-items:center;gap:12px;padding:14px;display:flex}.scenario:active{transform:scale(.98)}@media (hover:hover){.scenario:hover{border-color:var(--accent);transform:translateY(-2px)}}.scenario.on{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 2px var(--accent)}.flow-shell{grid-template-columns:188px minmax(0,1fr) 310px;gap:14px;height:calc(100vh - 235px);min-height:560px;display:grid}.flow-shell>*{min-width:0;min-height:0}.palette{flex-direction:column;gap:8px;display:flex;overflow-y:auto}.pal-btn{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:99px;align-items:center;gap:10px;min-height:48px;padding:0 12px;font-size:13px;font-weight:700;transition:transform .15s;display:flex}.pal-btn:active{transform:scale(.97)}@media (hover:hover){.pal-btn:hover{border-color:var(--accent)}}.nico{color:#fff;flex:none;place-items:center;width:30px;height:30px;display:grid}.flow-canvas{border-radius:var(--r);border:1px solid var(--line);background-color:var(--surface-2);background-image:radial-gradient(var(--dots) 1.4px, transparent 1.6px);cursor:grab;touch-action:none;background-size:24px 24px;position:relative;overflow:hidden}.flow-canvas.panning{cursor:grabbing}.flow-layer{will-change:transform;width:0;height:0;position:absolute;top:0;left:0}.flow-svg{pointer-events:none;position:absolute;top:0;left:0;overflow:visible}.flow-svg path.edge{fill:none;stroke:var(--muted);stroke-width:2.4px;pointer-events:stroke;cursor:pointer;transition:stroke .2s}.flow-svg path.edge:hover,.flow-svg path.edge.sel{stroke:var(--accent-wave);stroke-width:3.4px}.flow-svg path.edge.live{stroke:var(--accent-wave);stroke-width:4px;stroke-dasharray:8 8;animation:.8s linear infinite dash}.flow-svg path.edge.path{stroke:var(--accent-wave);stroke-width:3.4px}.flow-svg path.hit{fill:none;stroke:#0000;stroke-width:22px;pointer-events:stroke;cursor:pointer}.flow-svg path.ghost{fill:none;stroke:var(--accent-wave);stroke-width:3px;stroke-dasharray:6 6}.fnode{background:var(--surface);border:1.5px solid var(--line);width:230px;box-shadow:var(--shadow);-webkit-user-select:none;user-select:none;border-radius:18px;transition:box-shadow .2s,border-color .2s;position:absolute}.fnode.sel{border-color:var(--accent-wave);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent-wave) 28%, transparent), var(--shadow)}.fnode.live{border-color:var(--accent-wave);box-shadow:0 0 0 5px color-mix(in srgb, var(--accent-wave) 38%, transparent), var(--shadow)}.fnode.done{border-color:var(--green)}.fnode.err{border-color:var(--red)}.fnode-h{cursor:grab;border-bottom:1px solid var(--line);touch-action:none;align-items:center;gap:8px;height:44px;padding:0 6px 0 10px;font-weight:800;display:flex}.fnode-b{height:56px;color:var(--ink-2);-webkit-line-clamp:3;-webkit-box-orient:vertical;padding:8px 12px;font-size:13px;line-height:1.35;display:-webkit-box;overflow:hidden}.fnode-o{height:28px;color:var(--muted);text-align:right;justify-content:flex-end;align-items:center;padding:0 22px 0 12px;font-size:12px;font-weight:700;display:flex;position:relative}.vbadge{z-index:4;border-radius:99px;align-items:center;gap:4px;padding:1px 8px;font-size:12px;font-weight:800;display:inline-flex;position:absolute;top:-10px;right:14px}.vbadge.error{background:var(--red);color:#fff}.vbadge.warn{background:var(--amber);color:#1b1200}.port{background:var(--surface);border:3px solid var(--accent-wave);z-index:3;touch-action:none;cursor:crosshair;border-radius:50%;width:16px;height:16px;position:absolute}.port:after{content:"";border-radius:50%;position:absolute;inset:-14px}.port.out{top:6px;right:-9px}.port.in{border-color:var(--ice);top:14px;left:-9px}.port.armed{background:var(--accent-wave);box-shadow:0 0 0 5px color-mix(in srgb, var(--accent-wave) 30%, transparent)}.port.in.target{background:var(--ice);box-shadow:0 0 0 6px color-mix(in srgb, var(--ice) 35%, transparent)}.port.linked{background:var(--accent-wave)}.flow-panel-btn{display:none}.flow-tools{z-index:5;flex-wrap:wrap;gap:6px;display:flex;position:absolute;bottom:12px;left:12px;right:12px}.flow-hint{z-index:5;max-width:260px;position:absolute;top:12px;right:12px}.flow-tools .btn{background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.flow-tools .btn:disabled{opacity:.4}.edge-x{z-index:6;place-items:center;width:44px;height:44px;margin:-22px 0 0 -22px;display:grid;position:absolute}.edge-x span{background:var(--red);color:#fff;width:30px;height:30px;box-shadow:var(--shadow);border-radius:50%;place-items:center;display:grid}.inspector{overflow-y:auto}.inspector-col{flex-direction:column;min-height:0;padding:0;display:flex;overflow:hidden}.show-panel-x{display:none}.issue{border-radius:12px;align-items:flex-start;gap:8px;padding:8px 10px;font-size:13px;display:flex}.issue.error{background:var(--red-soft)}.issue.warn{background:var(--amber-soft)}.issue svg{flex:none;margin-top:2px}.pathstep{background:var(--surface-2);border:1px solid var(--line);animation:msgin .35s var(--ease) both;border-radius:14px;align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:flex}.pathstep .n{background:var(--accent-soft);width:24px;height:24px;color:var(--accent-text);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:800;display:grid}.keypad{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.keypad button{border:1px solid var(--line);background:var(--surface);border-radius:18px;min-height:48px;font-size:17px;font-weight:800}.keypad button.on{border-color:var(--accent);background:var(--accent-soft)}.cal{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.cal-h{text-align:center;color:var(--muted);padding:4px 0;font-size:12px;font-weight:800}.cal-d{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:16px;flex-direction:column;gap:4px;min-width:0;min-height:78px;padding:6px;display:flex;overflow:hidden}.cal-d.out{opacity:.4}.cal-d.today{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.cal-d.sel{background:var(--accent-soft);border-color:var(--accent)}.cal-d b{font-size:13px}.cal-pill{background:var(--accent-soft);color:var(--accent-text);white-space:nowrap;text-overflow:ellipsis;border-radius:99px;padding:0 6px;font-size:12px;font-weight:700;overflow:hidden}.cal-d.sel .cal-pill{background:var(--surface)}.cal-dots{flex-wrap:wrap;gap:3px;display:none}.cal-dots i{background:var(--accent-wave);border-radius:50%;width:7px;height:7px}@media (width<=720px){.cal-d{min-height:52px;padding:4px}.cal-pill{display:none}.cal-dots{display:flex}}.heatwrap{overflow-x:auto}.heatgrid{gap:3px;min-width:520px;display:grid}.heat-c{border-radius:8px;place-items:center;min-height:32px;font-size:12px;font-weight:700;display:grid}.heat-h{color:var(--muted);text-align:center;align-self:center;font-size:12px;font-weight:800}.heat-h.left{text-align:left}@media (width<=720px){.heatgrid{gap:2px;min-width:0}.heat-c{border-radius:5px;min-height:26px}}.board{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.board.wall .kpi .k-v{font-size:44px}.agent-card{border:1.5px solid var(--line);background:var(--surface);border-radius:22px;flex-direction:column;gap:8px;min-width:0;min-height:130px;padding:14px;transition:border-color .2s,background .2s;display:flex}.agent-card.drop{border-color:var(--accent-wave);background:var(--accent-soft)}.qcall{background:var(--surface-2);border:1px solid var(--line);cursor:grab;touch-action:none;border-radius:16px;align-items:center;gap:10px;min-width:0;padding:8px 10px;display:flex}.qcall.late{border-color:var(--red)}.qcall select{border:1px solid var(--line);background:var(--surface);border-radius:99px;max-width:120px;min-height:40px;padding:0 8px;font-size:14px}.timer{font-variant-numeric:tabular-nums;font-family:ui-monospace,Menlo,monospace;font-weight:800}.timer.late{color:var(--red)}.persona-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;display:grid}.split{grid-template-columns:minmax(0,340px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.list-item{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:18px;align-items:flex-start;gap:10px;width:100%;min-width:0;min-height:56px;padding:12px;display:flex}.list-item.on{border-color:var(--accent);background:var(--accent-soft)}@media (hover:hover){.list-item:hover{border-color:var(--accent)}}.pri{border-radius:99px;padding:2px 10px;font-size:12px;font-weight:800;display:inline-flex}.pri.urgent{background:var(--red);color:#fff}.pri.high{background:var(--amber-soft);color:var(--ink);border:1px solid var(--amber)}.pri.normal,.pri.low{background:var(--bg2);color:var(--ink-2)}.tabs{margin-bottom:16px}.code{color:#d7efe8;background:#031418}.pill-scroll{scrollbar-width:none;gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.pill-scroll::-webkit-scrollbar{display:none}.pill-scroll>*{flex:none}.sched{grid-template-columns:70px minmax(0,1fr);align-items:center;gap:8px 12px;display:grid}.sched .times{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sched input[type=time],.input-time{border:1px solid var(--line);background:var(--surface);border-radius:14px;min-height:44px;padding:0 10px;font-size:16px}.route-box{border:2px solid var(--accent);background:var(--accent-soft);border-radius:22px;align-items:center;gap:14px;padding:16px;display:flex}.route-box.closed{border-color:var(--amber);background:var(--amber-soft)}.steps-list{counter-reset:s;flex-direction:column;gap:8px;display:flex}.steps-list li{counter-increment:s;align-items:flex-start;gap:10px;font-size:14px;list-style:none;display:flex}.steps-list li:before{content:counter(s);background:var(--accent-soft);width:24px;height:24px;color:var(--accent-text);border-radius:50%;flex:none;place-items:center;margin-top:1px;font-size:12px;font-weight:800;display:grid}.score-ring{background:conic-gradient(var(--accent-wave) calc(var(--p) * 1%), var(--bg2) 0);border-radius:50%;flex:none;place-items:center;width:84px;height:84px;font-size:24px;font-weight:800;display:grid;position:relative}.score-ring:before{content:"";background:var(--surface);border-radius:50%;position:absolute;inset:8px}.score-ring span{position:relative}.check-row{background:var(--surface-2);border:1px solid var(--line);border-radius:16px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.check-row.pass svg{color:var(--green)}.check-row.fail svg{color:var(--red)}.check-row svg{flex:none;margin-top:2px}.min0{min-width:0}.typing-dots i{background:var(--muted);border-radius:50%;width:7px;height:7px;margin-right:4px;animation:1s ease-in-out infinite floaty;display:inline-block}.typing-dots i:nth-child(2){animation-delay:.15s}.typing-dots i:nth-child(3){animation-delay:.3s}@media (width<=1100px){.sim,.persona-grid,.split{grid-template-columns:minmax(0,1fr)}.phone{height:auto;min-height:520px}.phone-body{min-height:280px;max-height:52vh}.board{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1360px){.flow-panel-btn{display:inline-flex}.flow-shell{grid-template-columns:170px minmax(0,1fr)}.flow-shell .inspector-col{display:none}.flow-shell.insp-open .inspector-col{z-index:40;width:min(340px,100vw - 32px);box-shadow:var(--shadow-lg);display:flex;position:fixed;top:120px;bottom:16px;right:16px}.show-panel-x{display:grid}}@media (width<=720px){.board{grid-template-columns:minmax(0,1fr)}.login-hero .big-rings{opacity:.35}.live-grid{grid-template-columns:minmax(0,1fr)}.sched{grid-template-columns:56px minmax(0,1fr)}.main:before{opacity:.6}.turn{max-width:94%}.flow-shell{grid-template-columns:minmax(0,1fr);height:auto}.flow-shell .palette{flex-direction:row;padding-bottom:4px;overflow-x:auto}.pal-btn{flex:none}.flow-canvas{height:62vh;min-height:420px}.flow-hint{display:none}.flow-shell.insp-open .inspector-col{z-index:60;left:8px;right:8px;bottom:calc(86px + env(safe-area-inset-bottom));width:auto;max-height:calc(100dvh - 190px);display:flex;position:fixed;top:auto}}@media print{.rings,.main:before{display:none}}td .min0{min-width:168px}td .tag{white-space:nowrap}.list-item{min-height:64px}.list-item .clamp2{line-height:1.35}.lcall .lbox>.turns{margin-top:auto}details{position:relative}details>summary::-webkit-details-marker{display:none}.switch{flex:none;width:56px;height:40px;position:relative;background:0 0!important;border:0!important}.switch:before{content:"";background:var(--bg2);border:1px solid var(--line);border-radius:99px;width:48px;height:28px;transition:background .25s;position:absolute;top:6px;left:4px}.switch.on:before{background:var(--accent);border-color:#0000}.switch:after{display:none}.switch i{z-index:1;top:10px;left:8px}.switch.on i{transform:translate(20px)}th.sortable button,.search input{min-height:40px}@media (pointer:coarse),(width<=1100px){th.sortable button,.search input,.qcall select,.qsel,.qcall .icon-btn,.tagx,.tagx button,.player-track{min-height:44px!important}.qcall .icon-btn,.tagx button{min-width:44px!important}.icon-btn{min-width:44px}}.switch{height:44px}.switch:before{top:8px}.switch i{top:12px}
