:root{--nuit-900:#080f1c;--nuit-800:#0e1a2e;--nuit-700:#16263f;--nuit-600:#1f3454;--nuit-500:#2b4468;--orange-700:#c2410c;--orange-600:#d9481b;--orange-500:#f0561d;--orange-400:#f4773f;--orange-100:#fde8de;--cyan-500:#19b5d5;--cyan-100:#dff6fb;--ok:#0e9f6e;--ok-bg:#e6f6ef;--ok-fg:#0b7a55;--warn:#d97706;--warn-bg:#fdf3e3;--warn-fg:#9a5b06;--crit:#d64545;--crit-bg:#fdeceb;--crit-fg:#a92e2e;--info:#2f6fd0;--info-bg:#eaf2ff;--info-fg:#234f97;--bg:#eef2f7;--surface:#ffffff;--surface-2:#f6f8fb;--surface-3:#eef2f7;--ink:#111c2e;--text:#2b3648;--muted:#64748b;--faint:#94a3b8;--line:#e2e8f0;--line-strong:#cbd5e1;--sidebar-bg:var(--nuit-800);--sidebar-fg:#c7d2e3;--sidebar-active:rgba(240, 86, 29, .16);--topbar-bg:#ffffff;--ring:rgba(240, 86, 29, .35);--shadow-1:0 1px 2px rgba(15, 28, 48, .06), 0 1px 3px rgba(15, 28, 48, .04);--shadow-2:0 4px 14px rgba(15, 28, 48, .08);--shadow-3:0 18px 44px rgba(15, 28, 48, .18);--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:28px;--s7:40px;--r-s:8px;--r:12px;--r-l:16px;--sidebar-w:248px;--sidebar-w-min:64px;--topbar-h:56px;--font:system-ui, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, "Cascadia Mono", Consolas, "Roboto Mono", monospace;--t:.16s cubic-bezier(.4, 0, .2, 1);color-scheme:light}:root[data-theme="dark"]{--bg:#0b1322;--surface:#121c2f;--surface-2:#172238;--surface-3:#1c2a44;--ink:#edf2f9;--text:#cfd8e6;--muted:#8e9bb0;--faint:#64748b;--line:#22304a;--line-strong:#2f3f5c;--sidebar-bg:#0a1220;--sidebar-fg:#b6c2d6;--sidebar-active:rgba(240, 86, 29, .22);--topbar-bg:#121c2f;--ok-bg:#12301f;--ok-fg:#5ad4a2;--warn-bg:#3a2a0f;--warn-fg:#f2b45c;--crit-bg:#3d1b1b;--crit-fg:#f38a8a;--info-bg:#172848;--info-fg:#8fb4f2;--orange-100:#3a2416;--cyan-100:#0f2f38;--shadow-1:0 1px 2px rgba(0, 0, 0, .35);--shadow-2:0 4px 14px rgba(0, 0, 0, .35);--shadow-3:0 18px 44px rgba(0, 0, 0, .55);--ring:rgba(244, 119, 63, .45);color-scheme:dark}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3,h4{margin:0;color:var(--ink);line-height:1.25;text-wrap:balance}p{margin:0}svg{display:block}.icon{width:18px;height:18px;flex:none}.icon-sm{width:15px;height:15px;flex:none}.num{font-variant-numeric:tabular-nums}.mono{font-family:var(--mono);font-size:.93em}.muted{color:var(--muted)}.faint{color:var(--faint)}.small{font-size:12.5px}.strong{font-weight:600;color:var(--ink)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}:focus-visible{outline:2px solid var(--orange-500);outline-offset:2px}[hidden]{display:none!important}[x-cloak]{display:none!important}.shell{display:block;padding-left:var(--sidebar-w);min-height:100dvh;transition:padding-left var(--t)}.shell.is-collapsed{padding-left:var(--sidebar-w-min)}.sidebar{background:var(--sidebar-bg);color:var(--sidebar-fg);position:fixed;left:0;top:0;bottom:0;width:var(--sidebar-w);height:100dvh;display:flex;flex-direction:column;overflow:hidden;z-index:40;transition:width var(--t)}.shell.is-collapsed .sidebar{width:var(--sidebar-w-min)}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:14px 14px;height:var(--topbar-h);border-bottom:1px solid rgb(255 255 255 / .06)}.sidebar-brand img{width:32px;height:32px;flex:none}.sidebar-brand .brand-text{display:flex;flex-direction:column;line-height:1.1;white-space:nowrap;overflow:hidden}.sidebar-brand .brand-name{color:#fff;font-weight:700;font-size:15px;letter-spacing:-.01em}.sidebar-brand .brand-sub{font-size:11px;color:var(--faint);letter-spacing:.08em;text-transform:uppercase}.sidebar-nav{flex:1;overflow-y:auto;padding:10px 10px 20px;scrollbar-width:thin}.nav-section{margin-top:14px}.nav-section-title{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:0;padding:6px 10px;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);cursor:pointer;border-radius:6px}.nav-section-title:hover{color:#fff}.nav-section-title .icon-sm{transition:transform var(--t)}.nav-section.is-open .nav-section-title .icon-sm{transform:rotate(180deg)}.nav-section-items{display:none}.nav-section.is-open .nav-section-items{display:block}.nav-item{display:flex;align-items:center;gap:12px;padding:9px 10px;border-radius:8px;color:var(--sidebar-fg);text-decoration:none;font-size:13.5px;white-space:nowrap;transition:background var(--t),color var(--t)}.nav-item:hover{background:rgb(255 255 255 / .06);color:#fff}.nav-item.is-active{background:var(--sidebar-active);color:#fff;box-shadow:inset 3px 0 0 var(--orange-500)}.nav-item.is-soon{opacity:.55}.nav-item .icon{color:currentColor;opacity:.9}.nav-item .nav-badge{margin-left:auto;font-size:10.5px;padding:1px 7px;border-radius:999px;background:rgb(255 255 255 / .1);color:#fff}.sidebar-foot{padding:10px;border-top:1px solid rgb(255 255 255 / .06);font-size:11.5px;color:var(--faint);white-space:nowrap;overflow:hidden}.shell.is-collapsed .brand-text,.shell.is-collapsed .nav-section-title span,.shell.is-collapsed .nav-item span,.shell.is-collapsed .nav-badge,.shell.is-collapsed .sidebar-foot span{display:none}.shell.is-collapsed .nav-item{justify-content:center;padding:10px}.shell.is-collapsed .nav-section-title{justify-content:center}.shell.is-collapsed .nav-section-items{display:block}.sidebar-overlay{display:none}.main{min-width:0;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:30;height:var(--topbar-h);background:var(--topbar-bg);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px;padding:0 var(--s5)}.topbar-left{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.topbar-right{display:flex;align-items:center;gap:4px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;border:0;background:#fff0;color:var(--muted);cursor:pointer;position:relative;transition:background var(--t),color var(--t)}.icon-btn:hover{background:var(--surface-3);color:var(--ink)}.icon-btn .dot{position:absolute;top:7px;right:7px;min-width:8px;height:8px;border-radius:999px;background:var(--orange-500);border:2px solid var(--topbar-bg)}.icon-btn .count{position:absolute;top:3px;right:3px;font-size:10px;font-weight:700;padding:0 5px;min-width:16px;height:16px;line-height:16px;border-radius:999px;background:var(--orange-500);color:#fff;text-align:center}.icon-btn.is-spinning .icon{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.site-switch{display:flex;align-items:center;gap:8px;min-width:0}.site-switch select{appearance:none;background:var(--surface-2);border:1px solid var(--line);border-radius:8px;padding:7px 30px 7px 12px;font-weight:600;color:var(--ink);max-width:260px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}.avatar{width:32px;height:32px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--nuit-600),var(--nuit-800));color:#fff;font-size:12px;font-weight:700;letter-spacing:.02em}.menu{position:relative}.menu-panel{position:absolute;right:0;top:calc(100% + 6px);min-width:240px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-3);padding:6px;z-index:50}.menu-head{padding:8px 10px 10px;border-bottom:1px solid var(--line);margin-bottom:4px}.menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:0;background:none;border-radius:8px;text-align:left;text-decoration:none;color:var(--text);cursor:pointer;font-size:13.5px}.menu-item:hover{background:var(--surface-2);color:var(--ink)}.menu-item.is-danger{color:var(--crit)}.menu-empty{padding:24px 12px;text-align:center;color:var(--muted);font-size:13px}.admin-banner{background:var(--nuit-700);color:#fff;padding:8px var(--s5);display:flex;align-items:center;gap:12px;font-size:13px}.admin-banner .btn{padding:4px 10px}.page-header{background:var(--surface);border-bottom:1px solid var(--line);padding:14px var(--s5) 14px;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.page-header .eyebrow{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--orange-600);font-weight:700}.page-header h1{font-size:20px;font-weight:700;letter-spacing:-.01em;margin-top:2px}.page-header .desc{color:var(--muted);font-size:13px;margin-top:2px}.page-header .actions{display:flex;gap:8px;flex-wrap:wrap}.content{padding:var(--s5);padding-bottom:calc(96px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:var(--s4);max-width:1480px;width:100%;margin:0 auto}.grid{display:grid;gap:var(--s4);grid-template-columns:repeat(12,minmax(0,1fr));align-items:stretch}.col-1{grid-column:span 1}.col-2{grid-column:span 2}.col-3{grid-column:span 3}.col-4{grid-column:span 4}.col-5{grid-column:span 5}.col-6{grid-column:span 6}.col-7{grid-column:span 7}.col-8{grid-column:span 8}.col-9{grid-column:span 9}.col-10{grid-column:span 10}.col-11{grid-column:span 11}.col-12{grid-column:span 12}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.stat-grid>*{grid-column:auto!important}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-1);display:flex;flex-direction:column;min-width:0;overflow:hidden}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px 10px}.card-head h2{font-size:14px;font-weight:700}.card-head .sub{font-size:12px;color:var(--muted);margin-top:1px}.card-body{padding:0 16px 16px;flex:1;min-width:0}.card-body.flush{padding:0}.card-foot{padding:10px 16px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted);display:flex;justify-content:space-between;align-items:center;gap:8px}.card-foot a{color:var(--orange-600);font-weight:600;text-decoration:none}.stat{padding:14px 16px;display:flex;flex-direction:column;gap:6px;justify-content:space-between}.stat-link{cursor:pointer;text-decoration:none;color:inherit;transition:border-color .15s,transform .15s}.stat-link:hover,.stat-link:focus-visible{border-color:var(--orange-500);transform:translateY(-1px)}.mac-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.mac-list .pill{margin-left:6px}.dl{display:grid;grid-template-columns:max-content 1fr;gap:8px 16px;margin:0;font-size:14px}.dl dt{color:var(--muted)}.dl dd{margin:0}.stat-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.stat-label{font-size:12px;color:var(--muted);font-weight:600;letter-spacing:.02em}.stat-icon{width:30px;height:30px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:var(--orange-100);color:var(--orange-600)}.stat-icon.cyan{background:var(--cyan-100);color:#0e8fa8}.stat-icon.ok{background:var(--ok-bg);color:var(--ok-fg)}.stat-icon.info{background:var(--info-bg);color:var(--info-fg)}.stat-value{font-size:24px;font-weight:700;color:var(--ink);letter-spacing:-.02em;line-height:1.1}.stat-value small{font-size:13px;font-weight:600;color:var(--muted);letter-spacing:0;margin-left:4px}.stat-foot{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:6px;min-height:18px}.delta{display:inline-flex;align-items:center;gap:2px;font-weight:700;padding:1px 6px;border-radius:999px;font-size:11.5px;white-space:nowrap;flex:none}.delta.up{background:var(--ok-bg);color:var(--ok-fg)}.delta.down{background:var(--crit-bg);color:var(--crit-fg)}.delta.flat{background:var(--surface-3);color:var(--muted)}.pill{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;padding:2px 9px;border-radius:999px;white-space:nowrap;letter-spacing:.02em}.pill::before{content:"";width:6px;height:6px;border-radius:999px;background:currentColor}.pill.ok{background:var(--ok-bg);color:var(--ok-fg)}.pill.warn{background:var(--warn-bg);color:var(--warn-fg)}.pill.crit{background:var(--crit-bg);color:var(--crit-fg)}.pill.info{background:var(--info-bg);color:var(--info-fg)}.pill.neutral{background:var(--surface-3);color:var(--muted)}.pill.no-dot::before{display:none}.tag{display:inline-block;font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:6px;background:var(--surface-3);color:var(--text)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;border-radius:8px;border:1px solid #fff0;font-weight:600;font-size:13.5px;cursor:pointer;text-decoration:none;transition:background var(--t),border-color var(--t),color var(--t),box-shadow var(--t);white-space:nowrap}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--orange-500);color:#fff}.btn-primary:hover{background:var(--orange-600)}.btn-secondary{background:var(--surface);border-color:var(--line-strong);color:var(--ink)}.btn-secondary:hover{background:var(--surface-2)}.btn-ghost{background:#fff0;color:var(--muted)}.btn-ghost:hover{background:var(--surface-3);color:var(--ink)}.btn-danger{background:var(--crit);color:#fff}.btn-danger:hover{filter:brightness(.92)}.btn-sm{padding:5px 10px;font-size:12.5px;border-radius:7px}.btn-block{width:100%}.btn .spinner{display:none}.btn.is-loading .spinner{display:inline-block}.btn.is-loading .label{opacity:.6}.spinner{width:14px;height:14px;border:2px solid rgb(255 255 255 / .4);border-top-color:#fff;border-radius:999px;animation:spin .7s linear infinite}.btn-secondary .spinner,.btn-ghost .spinner{border-color:var(--line-strong);border-top-color:var(--ink)}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:13px;font-weight:600;color:var(--ink)}.field .hint{font-size:12px;color:var(--muted)}.field .error{font-size:12.5px;color:var(--crit-fg);display:flex;align-items:center;gap:5px}.input,.select,.textarea{width:100%;padding:9px 12px;border-radius:8px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);transition:border-color var(--t),box-shadow var(--t);min-height:40px}.input::placeholder{color:var(--faint)}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--orange-500);box-shadow:0 0 0 3px var(--ring)}.field.has-error .input,.field.has-error .select,.field.has-error .textarea{border-color:var(--crit)}.field.is-valid .input{border-color:var(--ok)}.input-group{position:relative}.input-group .input{padding-right:40px}.input-group .icon-btn{position:absolute;right:2px;top:2px;width:34px;height:34px}.input-affix{display:flex;align-items:stretch}.input-affix .input{border-radius:8px 0 0 8px}.input-affix .affix{display:flex;align-items:center;padding:0 12px;border:1px solid var(--line-strong);border-left:0;border-radius:0 8px 8px 0;background:var(--surface-2);color:var(--muted);font-size:13px;white-space:nowrap}.form-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .span-2{grid-column:span 2}.check{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--text)}.check input{margin-top:3px;accent-color:var(--orange-500)}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:8px}.alert{display:flex;gap:10px;padding:10px 12px;border-radius:8px;font-size:13px;align-items:flex-start}.alert.crit{background:var(--crit-bg);color:var(--crit-fg)}.alert.ok{background:var(--ok-bg);color:var(--ok-fg)}.alert.info{background:var(--info-bg);color:var(--info-fg)}.alert.warn{background:var(--warn-bg);color:var(--warn-fg)}.table-tools{display:flex;align-items:center;gap:8px;padding:0 16px 10px;flex-wrap:wrap}.table-tools .search{position:relative;flex:1;min-width:160px;max-width:320px}.table-tools .search .input{padding-left:34px;min-height:34px;padding-top:6px;padding-bottom:6px}.table-tools .search .icon-sm{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--faint)}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.table{width:100%;border-collapse:collapse;font-size:13px}.table th,.table td{padding:9px 12px;text-align:left;vertical-align:middle;border-top:1px solid var(--line);white-space:nowrap}.table th:first-child,.table td:first-child{padding-left:16px}.table th:last-child,.table td:last-child{padding-right:16px}.table thead th{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:700;background:var(--surface-2);border-top:0;user-select:none}.table thead th.sortable{cursor:pointer}.table thead th.sortable:hover{color:var(--ink)}.table thead th .sort-ind{display:inline-block;width:0;height:0;margin-left:5px;vertical-align:middle;border:4px solid #fff0;opacity:.35;border-top-color:currentColor;transform:translateY(2px)}.table thead th.sorted-asc .sort-ind{opacity:1;border-top-color:#fff0;border-bottom-color:currentColor;transform:translateY(-2px)}.table thead th.sorted-desc .sort-ind{opacity:1}.table tbody tr:hover{background:var(--surface-2)}.table td.num,.table th.num{text-align:right;font-variant-numeric:tabular-nums}.table .cell-main{font-weight:600;color:var(--ink)}.table .cell-sub{font-size:12px;color:var(--muted)}.table tr.is-hidden{display:none}.table-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted);flex-wrap:wrap}.pager{display:flex;align-items:center;gap:4px}.pager .btn{min-width:30px;padding:4px 8px}.page-size{padding:4px 26px 4px 8px;min-height:30px;font-size:12.5px}.col-chooser{position:relative}.col-chooser-panel{position:absolute;right:0;top:calc(100% + 6px);min-width:200px;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-3);padding:8px;z-index:20}.col-chooser-panel label{display:flex;gap:8px;align-items:center;padding:6px 8px;border-radius:6px;font-size:13px;cursor:pointer}.col-chooser-panel label:hover{background:var(--surface-2)}.list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.list-item{display:flex;align-items:center;gap:12px;padding:10px 16px;border-top:1px solid var(--line)}.list-item:first-child{border-top:0}.list-item .body{flex:1;min-width:0}.list-item .title{font-weight:600;color:var(--ink);font-size:13.5px}.list-item .meta{font-size:12px;color:var(--muted)}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px 16px;gap:6px;color:var(--muted)}.empty .icon{width:28px;height:28px;color:var(--faint);margin-bottom:4px}.empty .title{font-weight:600;color:var(--text);font-size:13.5px}.empty .desc{font-size:12.5px;max-width:32ch}.skeleton{position:relative;overflow:hidden;background:var(--surface-3);border-radius:6px;min-height:12px}.skeleton::after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgb(255 255 255 / .45),transparent);animation:shimmer 1.4s infinite}:root[data-theme="dark"] .skeleton::after{background:linear-gradient(90deg,transparent,rgb(255 255 255 / .08),transparent)}@keyframes shimmer{to{transform:translateX(100%)}}.page-loading .content>*{opacity:.5;pointer-events:none}dialog.modal{border:0;padding:0;background:#fff0;max-width:min(560px, calc(100vw - 32px));width:100%;margin:auto}dialog.modal::backdrop{background:rgb(8 15 28 / .55);backdrop-filter:blur(2px)}.modal-box{background:var(--surface);border-radius:var(--r-l);box-shadow:var(--shadow-3);display:flex;flex-direction:column;max-height:calc(100dvh - 32px)}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px 12px;border-bottom:1px solid var(--line)}.modal-head h2{font-size:16px}.modal-body{padding:16px 20px;overflow-y:auto}.modal-foot{padding:12px 20px 16px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:10px}body.modal-open{overflow:hidden}.toasts{position:fixed;top:14px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:1000;max-width:calc(100vw - 32px)}.toast{background:var(--nuit-800);color:#fff;padding:10px 14px;border-radius:10px;box-shadow:var(--shadow-3);font-size:13.5px;display:flex;gap:10px;align-items:center;animation:toast-in .2s ease-out;min-width:240px}.toast.ok{border-left:3px solid var(--ok)}.toast.crit{border-left:3px solid var(--crit)}.toast.warn{border-left:3px solid var(--warn)}@keyframes toast-in{from{transform:translateY(-10px);opacity:0}}.toast{font-size:15px;font-weight:600;padding:13px 18px;min-width:280px}.chart{width:100%;height:auto}.chart .bar{fill:var(--orange-500)}.chart .bar.is-today{fill:var(--orange-700)}.chart .grid-line{stroke:var(--line);stroke-width:1}.chart .axis-text{fill:var(--muted);font-size:11px;font-family:var(--font)}.chart .value-text{fill:var(--ink);font-size:11px;font-weight:600;font-family:var(--font)}.chart .bar-hit:hover+.bar,.bar:hover{fill:var(--orange-400)}.legend{display:flex;gap:14px;font-size:12px;color:var(--muted);align-items:center}.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;background:var(--orange-500);margin-right:5px;vertical-align:-1px}.guest{min-height:100dvh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.guest-side{background:linear-gradient(160deg,var(--nuit-900),var(--nuit-700) 60%,var(--nuit-600));color:#fff;padding:40px;display:flex;flex-direction:column;justify-content:space-between}.guest-side .brand{display:flex;align-items:center;gap:12px}.guest-side .brand img{width:40px;height:40px}.guest-side .brand b{font-size:18px}.guest-side h2{color:#fff;font-size:28px;font-weight:700;letter-spacing:-.02em;max-width:18ch}.guest-side p{color:#b6c2d6;margin-top:12px;max-width:42ch;font-size:14.5px}.guest-side ul{list-style:none;padding:0;margin:22px 0 0;display:flex;flex-direction:column;gap:10px;color:#dbe3ef;font-size:14px}.guest-side li{display:flex;gap:10px;align-items:flex-start}.guest-side li .icon-sm{color:var(--orange-400);margin-top:3px}.guest-side .foot{font-size:12px;color:var(--faint)}.guest-main{display:flex;align-items:center;justify-content:center;padding:32px 20px}.guest-card{width:100%;max-width:420px;display:flex;flex-direction:column;gap:18px}.guest-card h1{font-size:22px;font-weight:700;letter-spacing:-.01em}.guest-card .lead{color:var(--muted);font-size:13.5px;margin-top:4px}.guest-card form{display:flex;flex-direction:column;gap:14px}.guest-links{display:flex;justify-content:space-between;font-size:13px;color:var(--muted);flex-wrap:wrap;gap:8px}.guest-links a{color:var(--orange-600);font-weight:600;text-decoration:none}.guest-top{display:flex;justify-content:flex-end;gap:4px}.kv{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;font-size:13px}.kv dt{color:var(--muted)}.kv dd{margin:0;color:var(--ink);font-weight:500}.row{display:flex;align-items:center;gap:8px}.row.between{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:8px}.progress{height:6px;border-radius:999px;background:var(--surface-3);overflow:hidden}.progress i{display:block;height:100%;background:var(--orange-500);border-radius:999px}.progress.cyan i{background:var(--cyan-500)}.divider{height:1px;background:var(--line)}@media (max-width:1200px){.col-1,.col-2,.col-3{grid-column:span 4}.col-4{grid-column:span 6}.col-5,.col-7,.col-8,.col-9,.col-10,.col-11{grid-column:span 12}}@media (max-width:960px){.shell,.shell.is-collapsed{padding-left:0}.sidebar,.shell.is-collapsed .sidebar{position:fixed;left:0;top:0;width:var(--sidebar-w);transform:translateX(-100%);transition:transform var(--t)}.shell.is-collapsed .brand-text,.shell.is-collapsed .nav-section-title span,.shell.is-collapsed .nav-item span,.shell.is-collapsed .nav-badge,.shell.is-collapsed .sidebar-foot span{display:initial}.shell.is-collapsed .nav-item{justify-content:flex-start;padding:9px 10px}.shell.is-collapsed .nav-section-title{justify-content:space-between}.shell.nav-open .sidebar{transform:translateX(0);box-shadow:var(--shadow-3)}.sidebar-overlay{display:block;position:fixed;inset:0;background:rgb(8 15 28 / .5);z-index:35;opacity:0;pointer-events:none;transition:opacity var(--t)}.shell.nav-open .sidebar-overlay{opacity:1;pointer-events:auto}.guest{grid-template-columns:minmax(0,1fr)}.guest-side{display:none}.topbar{padding:0 12px}.content{padding:12px;padding-bottom:calc(96px + env(safe-area-inset-bottom));gap:12px}.page-header{padding:12px}}@media (max-width:640px){.col-1,.col-2,.col-3,.col-4,.col-6{grid-column:span 12}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-value{font-size:20px}.form-grid{grid-template-columns:minmax(0,1fr)}.form-grid .span-2{grid-column:span 1}.site-switch .icon-sm{display:none}.site-switch select{max-width:150px;padding-left:10px}.topbar-left{gap:4px}.topbar-right{gap:0}.topbar-right .hide-mobile,.hide-mobile{display:none!important}.page-header h1{font-size:18px}.table-tools{padding:0 12px 10px}.table th:first-child,.table td:first-child{padding-left:12px}.table th:last-child,.table td:last-child{padding-right:12px}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@media print{.sidebar,.topbar,.page-header .actions,.table-tools,.table-foot{display:none!important}.shell{grid-template-columns:minmax(0,1fr)}.card{box-shadow:none;break-inside:avoid}}.check-list{display:flex;flex-direction:column;gap:8px;max-height:220px;overflow:auto;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2,var(--surface))}.steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:10px;font-size:13px}.code-block{margin:8px 0 0;padding:10px 12px;border-radius:8px;background:var(--surface-2,var(--surface));border:1px solid var(--border);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;white-space:pre-wrap;word-break:break-all;overflow-x:auto}.model-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.model-card{display:flex;flex-direction:column;gap:4px;padding:14px;border:1px solid var(--border);border-radius:12px;cursor:pointer;background:var(--surface);transition:border-color .15s,box-shadow .15s}.model-card input{position:absolute;opacity:0;pointer-events:none}.model-card .icon{width:22px;height:22px;color:var(--orange-600,#f0561d);margin-bottom:4px}.model-card:hover{border-color:var(--orange-600,#f0561d)}.model-card.is-selected{border-color:var(--orange-600,#f0561d);box-shadow:0 0 0 2px rgb(240 86 29 / .25)}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);flex-wrap:wrap}.tab{padding:8px 12px;font-size:13px;color:var(--muted);text-decoration:none;border-bottom:2px solid #fff0;margin-bottom:-1px}.tab:hover{color:var(--text)}.tab.is-active{color:var(--orange-600,#f0561d);border-bottom-color:var(--orange-600,#f0561d);font-weight:600}.check-list input:disabled+span{opacity:.5}.nav-client-pick{padding:4px 10px 8px}.nav-client-pick .select{width:100%;font-size:12.5px;padding:6px 28px 6px 10px;background-color:rgb(255 255 255 / .06);color:#fff;border-color:rgb(255 255 255 / .14)}.nav-client-pick .select option{color:#10203a}.menu-item.is-unread{background:color-mix(in srgb,var(--accent) 7%,transparent);font-weight:500}.menu-item.is-unread:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.menu-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--line);margin-top:4px;padding:6px 6px 2px}.menu-foot form{margin:0}button.tab{background:none;border:0;border-bottom:2px solid #fff0;cursor:pointer;font:inherit;font-size:13px;color:var(--muted);display:inline-flex;align-items:center;gap:6px}button.tab.is-active{color:var(--orange-600,#f0561d);border-bottom-color:var(--orange-600,#f0561d);font-weight:600}.link-btn{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-decoration:none}.link-btn:hover{text-decoration:underline}html,body{overflow-x:hidden;max-width:100vw}body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}img,video,canvas,svg,iframe{max-width:100%;height:auto}svg.icon,svg.icon-sm{height:1em;width:1em}.card,.content,.main{min-width:0}.card-body{overflow-wrap:break-word}.hint,.alert,.cell-sub{overflow-wrap:break-word}.card-body .mono,.kv .mono,.hint .mono{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}.table-wrap{max-width:100%}.tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x proximity;padding-right:24px}.tab{scroll-snap-align:start}.tabs::-webkit-scrollbar{display:none}.tab{white-space:nowrap;flex:none}.toasts{top:calc(14px + env(safe-area-inset-top))}.sidebar{height:100dvh;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.modal{max-width:calc(100vw - 16px)}.form-actions{flex-wrap:wrap;gap:8px}.row{min-width:0}@media (max-width:960px){.col-4,.col-3{grid-column:span 6}.page-header{flex-wrap:wrap}.page-header .actions{width:100%}.topbar{position:sticky;top:0;z-index:30;padding-top:env(safe-area-inset-top);height:auto;min-height:var(--topbar-h)}}@media (max-width:640px){.grid>[class*="col-"],.grid>.card{grid-column:span 12}.form-grid,.card .form-grid[style*="grid-template-columns"],.card [style*="grid-template-columns"]{grid-template-columns:minmax(0,1fr)!important}.stat-grid,.stat-grid>.stat{grid-column:auto}.input,.select,.textarea,textarea.input,input.input,select.select{font-size:16px;min-height:44px;width:100%;max-width:100%}.nav-client-pick .select,.site-switch select,.table-foot .page-size{font-size:16px}.table-tools .search .input,.wa-list-head .search .input{min-height:40px}.btn,.icon-btn,.nav-item,.tab,.menu-item{min-height:44px}.btn-sm{min-height:40px}.check input[type=checkbox],.check input[type=radio]{width:20px;height:20px}.page-header h1{font-size:18px}.page-header .desc{font-size:12.5px}.card-head{flex-wrap:wrap}.card-head .row{flex-wrap:wrap}.row[style*="justify-content:space-between"]{flex-wrap:wrap}.table-foot{justify-content:center}.menu-panel{position:fixed!important;left:8px!important;right:8px!important;top:calc(var(--topbar-h) + env(safe-area-inset-top))!important;width:auto!important;min-width:0!important;max-width:none!important;max-height:calc(100dvh - var(--topbar-h) - 24px);overflow-y:auto}.modal{margin:0;padding:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:0}.modal-box{width:100vw;height:100dvh;max-height:100dvh;border-radius:0;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.modal-body{flex:1}.form-actions{position:static}.form-actions[style*="sticky"]{bottom:env(safe-area-inset-bottom)!important}.int-chain-step{flex-wrap:wrap}.lp-wrap{padding-left:16px;padding-right:16px}.guest-main{padding:20px 14px calc(20px + env(safe-area-inset-bottom))}.sidebar{width:min(var(--sidebar-w), 86vw)}.content{padding:10px;padding-bottom:calc(96px + env(safe-area-inset-bottom));gap:10px}}@media (max-width:380px){.stat-grid{grid-template-columns:minmax(0,1fr)}.page-header h1{font-size:17px}.btn{padding-left:10px;padding-right:10px}}@supports (height:100dvh){.shell{min-height:100dvh}.modal-box{max-height:calc(100dvh - 32px)}}.table td .cell-val{display:block;min-width:0;max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table td .cell-val.is-expanded{white-space:normal;overflow:visible;max-width:none}.table td .cell-val.is-trunc{cursor:pointer}.table td.num .cell-val{text-align:right}.table-mobile-sort{display:none;gap:8px;align-items:center;padding:0 12px 8px}.table-mobile-sort label{font-size:12px;color:var(--muted);white-space:nowrap}.table-mobile-sort .select{flex:1;min-height:40px}@media (max-width:767px){.table-mobile-sort{display:flex}.table-wrap{overflow:visible}table.table.is-cards,table.table.is-cards>tbody,table.table.is-cards>tbody>tr,table.table.is-cards>tbody>tr>td{display:block;width:100%;box-sizing:border-box}table.table.is-cards>thead{display:none}table.table.is-cards>tbody>tr{border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin:10px 12px;background:var(--surface);width:auto}table.table.is-cards>tbody>tr.is-hidden{display:none}table.table.is-cards>tbody>tr:hover{background:var(--surface)}table.table.is-cards>tbody>tr>td{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:5px 0;border:0;text-align:left;white-space:normal}table.table.is-cards>tbody>tr>td[hidden]{display:none}table.table.is-cards>tbody>tr>td::before{content:attr(data-label);color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em;flex:0 0 38%;padding-top:2px}table.table.is-cards>tbody>tr>td .cell-val{max-width:100%;text-align:right}table.table.is-cards>tbody>tr>td .cell-val .cell-sub{white-space:normal}table.table.is-cards>tbody>tr>td.is-title{display:block;font-weight:700;font-size:15px;color:var(--ink);padding-bottom:6px;border-bottom:1px solid var(--line);margin-bottom:4px}table.table.is-cards>tbody>tr>td.is-title::before{display:none}table.table.is-cards>tbody>tr>td.is-title .cell-val{text-align:left;white-space:normal}table.table.is-cards>tbody>tr>td.is-actions{display:flex;flex-direction:column;gap:6px;padding-top:8px;border-top:1px solid var(--line);margin-top:6px;align-items:stretch}table.table.is-cards>tbody>tr>td.is-actions::before{display:none}table.table.is-cards>tbody>tr>td.is-actions .cell-val{display:flex;flex-direction:column;gap:6px;text-align:left;white-space:normal;overflow:visible}table.table.is-cards>tbody>tr>td.is-actions .btn,table.table.is-cards>tbody>tr>td.is-actions form,table.table.is-cards>tbody>tr>td.is-actions a.btn{width:100%;justify-content:center}table.table.is-cards>tbody>tr>td.is-empty-row{display:block}table.table.is-cards>tbody>tr>td.is-empty-row::before{display:none}table.table.is-cards>tbody>tr>td.num .cell-val{text-align:right}.table-foot{flex-direction:column;align-items:center}}.svc-option{padding:9px 11px;border:1px solid var(--line);border-radius:10px;cursor:pointer;margin:0}.svc-option.svc-sub{margin-left:22px}.svc-option.is-off{opacity:.55;cursor:not-allowed}.svc-needs{color:var(--warn-fg,var(--muted))}@media (max-width:640px){.svc-option.svc-sub{margin-left:12px}}.pill.orange{background:var(--orange-100);color:var(--orange-700)}.eyebrow{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:700}.live-dot{display:inline-flex;align-items:center;gap:6px;color:var(--ok-fg);font-weight:600}.live-dot .dot{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px var(--ok-bg)}.dot-live{width:7px;height:7px;border-radius:50%;background:currentColor;display:inline-block}.btn .count{background:rgb(255 255 255 / .25);padding:0 7px;border-radius:999px;font-size:11.5px}.btn-secondary .count{background:var(--surface-3)}.spark-card{gap:4px}.spark{width:100%;height:48px;display:block;cursor:crosshair}.activity-head{display:flex;align-items:center;gap:12px;padding:12px 16px;flex-wrap:wrap;background:var(--surface-2)}.activity-body{padding:14px 16px;display:flex;flex-direction:column;gap:10px}.chart-wrap{overflow-x:auto}.chart{width:100%;min-width:640px;height:260px;display:block;cursor:crosshair}.chart-grid line{stroke:var(--line)}.chart-axis text{fill:var(--muted);font-size:11px}.chart-cursor{stroke:var(--muted);stroke-dasharray:3 3}.chart-legend{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;font-size:12px;color:var(--ink)}.chart-legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;vertical-align:-1px}.chart-tip{position:fixed;z-index:80;background:var(--nuit-800);color:#fff;font-size:12px;line-height:1.4;padding:6px 10px;border-radius:8px;box-shadow:var(--shadow-3);pointer-events:none;max-width:260px}.ink{color:var(--ink)}.page-cur{background:var(--orange-500);color:#fff;padding:2px 9px;border-radius:6px;font-size:12.5px;font-weight:700}.sessions-filters .pill{padding:6px 12px;font-size:12.5px;text-decoration:none;min-height:32px}@media (max-width:640px){.sessions-filters .pill{min-height:40px;padding:8px 12px}.chart{min-width:560px;height:220px}}.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.plan-card{--plan:var(--orange-500);position:relative;border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:10px;background:var(--surface)}.plan-card.is-current{border:2px solid var(--plan);box-shadow:var(--shadow-2)}.plan-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--plan);color:#fff;font-size:11.5px;font-weight:700;padding:3px 10px;border-radius:999px;white-space:nowrap}.plan-name{font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:var(--plan)}.plan-price{font-size:30px;font-weight:800;letter-spacing:-.02em}.plan-features{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:12.5px;flex:1 1 auto}.plan-features i{font-style:normal;color:var(--ok-fg);font-weight:700;width:14px;display:inline-block}.plan-btn{background:var(--plan);border-color:var(--plan);color:#fff}.plan-btn.is-current{background:var(--surface-3);border-color:var(--surface-3);color:var(--ink)}.bar{height:8px;border-radius:999px;background:var(--surface-3);overflow:hidden}.bar i{display:block;height:100%;border-radius:999px}.device-logo{width:52px;height:52px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;color:#fff;background:var(--nuit-700);flex:none}.device-logo.kind-openwrt{background:var(--nuit-800)}.device-logo .mark{width:22px;height:22px;background:var(--orange-500);border-radius:5px;transform:rotate(45deg) scale(.8)}.gauge{width:100%;max-width:170px;height:auto;display:block;margin:0 auto}.instruments-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:14px;padding:16px}.gauges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:12px}.gauge-box{text-align:center}.instr{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:12px}.instruments.is-stale .instruments-grid{opacity:.55;filter:grayscale(1)}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.set-card{padding:14px 16px!important}.set-card.is-attention{border-color:var(--warn)}.set-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:6px}.switch{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:12.5px;color:var(--muted);margin:0}.switch input{position:absolute;opacity:0;width:0;height:0}.switch .track{width:40px;height:22px;border-radius:999px;background:var(--surface-3);position:relative;transition:background var(--t);flex:none}.switch .track::after{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:left var(--t);box-shadow:0 1px 3px rgb(0 0 0 / .25)}.switch input:checked+.track{background:var(--ok)}.switch input:checked+.track::after{left:21px}.switch input:disabled+.track{opacity:.5}.switch input:focus-visible+.track{outline:2px solid var(--orange-500);outline-offset:2px}.menu{position:relative}.menu>summary{list-style:none;cursor:pointer}.menu>summary::-webkit-details-marker{display:none}.menu-panel{position:absolute;right:0;top:calc(100% + 6px);z-index:30;min-width:230px;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-3);padding:6px;display:flex;flex-direction:column}.menu-item{display:block;width:100%;text-align:left;background:#fff0;border:0;padding:9px 10px;border-radius:7px;font:inherit;font-size:13px;color:var(--ink);cursor:pointer;min-height:40px}.menu-item:hover,.menu-item:focus-visible{background:var(--surface-2)}.menu-item:disabled{opacity:.5;cursor:not-allowed}.menu-sep{height:1px;background:var(--line);margin:4px 0}.bar-inline{width:70px;margin:0 6px;vertical-align:middle;display:inline-block}tr.row-offline td:first-child{box-shadow:inset 4px 0 0 var(--crit)}tr.row-near td:first-child{box-shadow:inset 4px 0 0 var(--warn)}@media (max-width:960px){.instruments-grid{grid-template-columns:minmax(0,1fr)}.settings-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){.gauges{grid-template-columns:repeat(2,minmax(0,1fr))}.menu-panel{right:auto;left:0}}.signup-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.signup-plan{position:relative;display:block;cursor:pointer}.signup-plan input{position:absolute;opacity:0;inset:0}.signup-plan-body{display:flex;flex-direction:column;gap:4px;padding:14px 14px 12px;border:2px solid var(--line);border-radius:12px;background:var(--surface);transition:border-color .15s,box-shadow .15s;height:100%}.signup-plan input:checked+.signup-plan-body{border-color:var(--plan,var(--orange-500));box-shadow:0 0 0 3px color-mix(in srgb,var(--plan,var(--orange-500)) 22%,transparent)}.signup-plan input:focus-visible+.signup-plan-body{outline:2px solid var(--plan,var(--orange-500));outline-offset:2px}.signup-plan .plan-badge{position:absolute;top:-10px;left:12px}.signup-plan-name{font-weight:800;color:var(--plan,var(--text));letter-spacing:.02em;text-transform:uppercase;font-size:13px}.signup-plan-price b{font-size:22px;font-weight:800}.signup-plan .plan-features{margin:6px 0 0}.svc-option.is-included{opacity:.7}@media (max-width:560px){.signup-plans{grid-template-columns:minmax(0,1fr)}}.card:has(details.menu[open]){overflow:visible}.menu-item.is-danger{color:var(--crit)}.menu-item .pill{font-size:10.5px}.gauge-needle{transition:transform .6s cubic-bezier(.4,0,.2,1)}.instruments .stat-value{transition:color .3s}.modal-box,.modal-body{max-width:100%;box-sizing:border-box}.modal-body{overflow-x:hidden}.modal-body .input-affix,.modal-body .select,.modal-body .input{max-width:100%}.adjustments>summary,.renew>summary{list-style:none}.adjustments>summary::-webkit-details-marker,.renew>summary::-webkit-details-marker{display:none}@media (max-width:640px){.modal-body .row>*{min-width:0}.modal-body [style*="width:150px"],.modal-body [style*="width:170px"],.modal-body [style*="width:auto"]{width:100%!important}.modal-body .form-grid{grid-template-columns:minmax(0,1fr)}.modal-body .kv{grid-template-columns:minmax(0,1fr);gap:2px 0}.modal-body .kv dt{margin-top:6px}}@media (max-width:640px){.content input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]),.content select,.content textarea,.modal-body input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]),.modal-body select,.modal-body textarea,.guest-main input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.guest-main select{font-size:16px}input[type=color]{min-width:44px;min-height:44px}}@media (min-width:641px){.select.select-compact{min-height:30px;font-size:12px;padding-top:2px;padding-bottom:2px}}.pkg-card{text-align:left;cursor:pointer;padding:14px 16px;gap:6px;font:inherit;color:inherit;transition:border-color var(--t),transform var(--t),box-shadow var(--t)}.pkg-card:hover,.pkg-card:focus-visible{border-color:var(--orange-500);transform:translateY(-1px);box-shadow:var(--shadow-2,var(--shadow-1));outline:none}.pkg-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.pkg-card-name{font-weight:700;font-size:13.5px;line-height:1.25}.pkg-card-version{font-size:18px;font-weight:700;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pkg-card-version .pill{font-size:10.5px}.pkg-card-models{line-height:1.35;overflow-wrap:anywhere}.pkg-boxes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.pkg-box{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-md,10px)}.pkg-box-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.pkg-box-why{line-height:1.4}.pkg-box form{margin-top:4px}.pkg-card-action{margin-top:auto;padding-top:6px}.pkg-card-action .btn{pointer-events:none}.side-panel{position:fixed;top:0;right:0;height:100dvh;width:min(520px, 100vw);background:var(--surface);border-left:1px solid var(--line);box-shadow:-12px 0 32px rgb(0 0 0 / .18);z-index:70;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .2s ease}.side-panel.is-open{transform:translateX(0)}.side-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line);padding-top:calc(14px + env(safe-area-inset-top))}.side-panel-head h2{font-size:15px;font-weight:700;margin:0}.side-panel-body{padding:16px;overflow-y:auto;flex:1;-webkit-overflow-scrolling:touch;padding-bottom:calc(16px + env(safe-area-inset-bottom))}.side-panel-backdrop{position:fixed;inset:0;background:rgb(10 16 28 / .35);z-index:69}body.side-panel-open{overflow:hidden}.pkg-bulk{position:sticky;bottom:0;display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;padding:10px 16px;border-top:1px solid var(--line);background:var(--surface);box-shadow:0 -6px 16px rgb(0 0 0 / .06)}.pkg-bulk>span{margin-right:auto;font-size:12.5px;color:var(--muted);font-weight:600}.pkg-lock{display:inline-flex;color:var(--muted)}.table-compact th,.table-compact td{padding:6px 8px;font-size:12.5px}.table-compact th:first-child,.table-compact td:first-child{padding-left:0}.table-compact th:last-child,.table-compact td:last-child{padding-right:0}@media (max-width:640px){.side-panel{width:100vw}.pkg-cleanup{flex-direction:column;align-items:stretch!important}.pkg-cleanup .input{width:100%!important}}.grid-table th,.grid-table td{white-space:normal}.grid-table th:not(:first-child),.grid-table td.grid-cell{min-width:170px}.grid-cell{display:table-cell}.grid-cell .grid-qty{display:flex;flex-direction:column;gap:8px;margin-top:10px}.grid-cell .input-affix .input{min-width:0;width:100%}.grid-cell .grid-over{font-size:12px}.grid-cell .grid-over summary{cursor:pointer;padding:2px 0}.grid-cell .grid-over[open]{display:flex;flex-direction:column;gap:8px}.plan-preview-grid{display:grid;gap:var(--s4);grid-template-columns:repeat(auto-fit,minmax(230px,1fr));align-items:stretch}.plan-preview{position:relative;border:1px solid var(--line);border-top:4px solid var(--plan,var(--orange-500));border-radius:var(--r);padding:16px;background:var(--surface);display:flex;flex-direction:column;gap:4px}.plan-preview .plan-name{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--plan,var(--ink))}.plan-preview .plan-price b{font-size:26px;color:var(--ink)}.plan-preview .plan-badge{position:absolute;top:-12px;right:12px;background:var(--plan,var(--orange-500));color:#fff;font-size:11px;font-weight:700;padding:2px 10px;border-radius:999px}.plan-preview .plan-features{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.plan-preview .plan-features i{font-style:normal;color:var(--plan,var(--ok));margin-right:4px}@media (max-width:640px){.grid-table th:not(:first-child),.grid-table td.grid-cell{min-width:190px}}.grid-table .cell-sub{white-space:normal}.grid-cell .input-affix .affix{padding:0 8px;font-size:12px}.grid-cell .input-affix .input{padding-left:8px;padding-right:8px}.grid-table .cell-main{white-space:normal}.content>div[data-live-region]:not(.card):not(.grid):not(.stat-grid){display:flex;flex-direction:column;gap:var(--s4)}.device-card .card-body{padding-top:16px}.wa{--wa-green:#25d366;--wa-dark:#128c7e;--wa-out:#005c4b;--wa-out-ink:#e9fdf4;--wa-in:#202c33;--wa-in-ink:#e9edef;--wa-bg:#0b141a;display:grid;grid-template-columns:340px minmax(0,1fr);grid-template-rows:minmax(0,1fr);height:100%;min-height:0;background:var(--bg);color:var(--ink)}:root[data-theme="light"] .wa{--wa-in:#ffffff;--wa-in-ink:#111b21;--wa-out:#d9fdd3;--wa-out-ink:#111b21;--wa-bg:#efeae2}.wa-list{display:flex;flex-direction:column;border-right:1px solid var(--line);min-height:0;min-width:0}.wa-list-head{display:flex;flex-direction:column;gap:6px;padding:8px;border-bottom:1px solid var(--line);flex:none}.wa-search{display:flex;align-items:center;gap:8px;background:rgb(127 127 127 / .12);border-radius:999px;padding:0 12px;color:var(--muted)}.wa-search input{flex:1;border:0;background:#fff0;color:var(--ink);font:inherit;font-size:16px;min-height:38px;outline:none;min-width:0}.wa-filters{display:flex;gap:6px;align-items:center}.wa-filters .select{flex:1;min-height:36px;font-size:12px;min-width:0}.wa-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:0;background:#fff0;color:var(--muted);cursor:pointer;position:relative;flex:none;text-decoration:none;font-size:18px}.wa-iconbtn:hover{background:rgb(127 127 127 / .15);color:var(--ink)}.wa-items{overflow-y:auto;flex:1 1 auto;min-height:0}.wa-item{display:flex;gap:10px;width:100%;text-align:left;padding:10px 12px;border:0;border-bottom:1px solid var(--line);background:#fff0;color:inherit;cursor:pointer;font:inherit}.wa-item:hover,.wa-item.is-active{background:rgb(127 127 127 / .08)}.wa-item.has-unread b{font-weight:800}.wa-item-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.wa-item-top{display:flex;justify-content:space-between;gap:8px}.wa-item-top b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wa-item-top time,.wa-item-tenant{font-size:11px;color:var(--muted);white-space:nowrap}.wa-item-sub{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:var(--muted)}.wa-item-sub>span:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wa-badge{background:var(--wa-green);color:#062;font-weight:800;font-size:11px;min-width:18px;height:18px;line-height:18px;border-radius:999px;text-align:center;padding:0 5px}.wa-avatar{width:40px;height:40px;border-radius:50%;background:var(--wa-dark);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:800;flex:none}.wa-thread{display:flex;flex-direction:column;min-height:0;min-width:0;position:relative}.wa-empty{margin:auto;color:var(--muted);padding:24px;text-align:center}.wa-head{display:flex;gap:8px;align-items:center;padding:6px 8px;border-bottom:1px solid var(--line);flex:none}.wa-head-main{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.2}.wa-head-main b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}.wa-head-sub{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wa-head-tools{display:flex;gap:0;align-items:center;flex:none}.wa-back{display:none}.wa-mini-badge{position:absolute;top:2px;right:2px;background:#e53935;color:#fff;font-size:9px;font-weight:800;min-width:15px;height:15px;line-height:15px;border-radius:999px;padding:0 4px;text-align:center}.wa-window{font-size:11px;display:inline-flex;align-items:center;gap:5px;color:var(--muted);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wa-window i{width:7px;height:7px;border-radius:50%;background:var(--muted);flex:none}.wa-window.ok{color:var(--ok)}.wa-window.ok i{background:var(--ok)}.wa-window.warn{color:var(--warn)}.wa-window.warn i{background:var(--warn)}.wa-menu{position:relative}.wa-menu-panel{position:absolute;right:0;top:40px;z-index:5;background:var(--bg);border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 30px rgb(0 0 0 / .3);min-width:220px;padding:6px;display:flex;flex-direction:column;gap:4px}.wa-menu-panel>button{text-align:left;border:0;background:#fff0;color:var(--ink);padding:9px 10px;border-radius:8px;cursor:pointer;font:inherit;font-size:13px}.wa-menu-panel>button:hover{background:rgb(127 127 127 / .12)}.wa-menu-panel label{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--muted);padding:4px 10px 6px}.wa-menu-panel .select{min-height:34px;font-size:13px}.wa-banner{position:absolute;top:56px;left:8px;right:8px;z-index:4;background:var(--wa-dark);color:#fff;border:0;border-radius:10px;padding:8px 12px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:2px;box-shadow:0 8px 24px rgb(0 0 0 / .3);animation:wa-slide .25s ease-out;font:inherit}.wa-banner b{font-size:13px}.wa-banner span{font-size:12px;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes wa-slide{from{transform:translateY(-8px);opacity:0}to{transform:none;opacity:1}}.wa-msgs{flex:1 1 auto;min-height:0;overflow-y:auto;padding:12px 10px;display:flex;flex-direction:column;gap:4px;background:var(--wa-bg);background-image:radial-gradient(rgb(255 255 255 / .035) 1px,transparent 1px);background-size:18px 18px}.wa-day{text-align:center;margin:8px 0}.wa-day span{font-size:11px;background:rgb(127 127 127 / .25);padding:3px 10px;border-radius:999px;color:#d1d7db;text-transform:capitalize}:root[data-theme="light"] .wa-day span{background:#fff;color:#54656f;box-shadow:0 1px 1px rgb(0 0 0 / .08)}.wa-msg{max-width:78%;padding:6px 8px 4px 9px;border-radius:10px;background:var(--wa-in);color:var(--wa-in-ink);font-size:14px;line-height:1.4;position:relative;overflow-wrap:anywhere;box-shadow:0 1px 1px rgb(0 0 0 / .12);animation:wa-pop .15s ease-out}.wa-msg.in{align-self:flex-start;border-top-left-radius:2px}.wa-msg.out{align-self:flex-end;background:var(--wa-out);color:var(--wa-out-ink);border-top-right-radius:2px}.wa-msg.is-failed{outline:1px solid var(--crit)}@keyframes wa-pop{from{transform:scale(.97);opacity:.5}to{transform:none;opacity:1}}.wa-text{white-space:pre-wrap;word-break:break-word}.wa-meta{float:right;display:inline-flex;gap:4px;align-items:center;font-size:10.5px;color:rgb(255 255 255 / .6);margin:6px 0 0 10px;white-space:nowrap;line-height:1}.wa-msg::after{content:'';display:block;clear:both}:root[data-theme="light"] .wa-meta{color:rgb(0 0 0 / .45)}.wa-by{font-style:italic}.wa-tick{font-weight:700;letter-spacing:-2px}.wa-tick.read{color:#53bdeb}.wa-tick.fail{color:var(--crit);letter-spacing:0}.wa-err{font-size:11px;color:var(--crit);margin-top:4px}.wa-tpl{font-size:11px;opacity:.7}.wa-img img{max-width:min(260px, 100%);max-height:260px;border-radius:8px;display:block}.wa-video{max-width:min(280px, 100%);border-radius:8px;display:block}.wa-audio{width:min(240px, 100%);display:block}.wa-doc{display:inline-flex;gap:8px;align-items:center;padding:6px 8px;border-radius:8px;background:rgb(127 127 127 / .18);color:inherit;text-decoration:none;max-width:100%}.wa-doc>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wa-doc small{opacity:.7}.wa-media-pending{font-size:12px;opacity:.75}.wa-newmsgs{position:absolute;left:50%;transform:translateX(-50%);bottom:72px;z-index:3;background:var(--wa-dark);color:#fff;border:0;border-radius:999px;padding:6px 12px;font:inherit;font-size:12px;display:inline-flex;align-items:center;gap:6px;cursor:pointer;box-shadow:0 6px 20px rgb(0 0 0 / .3)}.wa-compose{border-top:1px solid var(--line);padding:8px;background:var(--bg);flex:none;padding-bottom:max(8px, env(safe-area-inset-bottom))}.wa-compose-row{display:flex;gap:4px;align-items:flex-end}.wa-compose-row textarea{flex:1;resize:none;min-height:40px;max-height:120px;font:inherit;font-size:16px;line-height:1.35;padding:9px 12px;border:1px solid var(--line);border-radius:20px;background:rgb(127 127 127 / .1);color:var(--ink);outline:none;min-width:0}.wa-compose-row textarea:focus{border-color:var(--wa-green)}.wa-send{width:42px;height:42px;border-radius:50%;border:0;background:var(--wa-green);color:#062;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:none;transition:transform .1s}.wa-send:hover{transform:scale(1.06)}.wa-send:disabled{opacity:.5}.wa-emojis{display:flex;flex-wrap:wrap;gap:2px;margin-top:6px;max-height:110px;overflow-y:auto}.wa-emojis button{border:0;background:#fff0;font-size:20px;cursor:pointer;padding:2px 4px;border-radius:6px}.wa-emojis button:hover{background:rgb(127 127 127 / .12)}.wa-attach-preview{display:flex;gap:10px;align-items:center;padding:6px 0 8px}.wa-attach-preview img{max-height:80px;border-radius:8px}.wa-progress{height:4px;background:var(--line);border-radius:2px;margin-top:6px;overflow:hidden}.wa-progress span{display:block;height:100%;width:0;background:var(--wa-green);transition:width .2s}.wa-locked{display:flex;flex-direction:column;gap:10px}.wa-tpl-form{display:flex;flex-direction:column;gap:6px}.wa-tpl-form [data-wa-tpl-vars]{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:6px}.wa-closed{display:flex;gap:10px;align-items:center;color:var(--muted)}.wa-fab{position:fixed;right:max(16px, env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));z-index:70;width:56px;height:56px;border-radius:50%;border:0;background:#25d366;color:#fff;box-shadow:0 8px 24px rgb(0 0 0 / .28);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform .15s,background .15s;-webkit-tap-highlight-color:#fff0}.wa-fab:hover{transform:scale(1.06)}.wa-fab.is-open{background:#128c7e}.wa-fab.has-unread{animation:wa-pulse 2.4s ease-out infinite}@keyframes wa-pulse{0%{box-shadow:0 8px 24px rgb(0 0 0 / .28),0 0 0 0 rgb(37 211 102 / .45)}60%{box-shadow:0 8px 24px rgb(0 0 0 / .28),0 0 0 14px #fff0}100%{box-shadow:0 8px 24px rgb(0 0 0 / .28),0 0 0 0 #fff0}}.wa-fab-badge{position:absolute;top:-4px;right:-4px;background:#e53935;color:#fff;font-size:11px;font-weight:800;min-width:20px;height:20px;line-height:20px;border-radius:999px;padding:0 5px;text-align:center;border:2px solid var(--bg)}.wa-panel{position:fixed;right:max(16px, env(safe-area-inset-right));bottom:calc(84px + env(safe-area-inset-bottom));z-index:69;width:360px;max-width:calc(100vw - 24px);height:500px;max-height:calc(100dvh - 110px);background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:16px;box-shadow:0 16px 48px rgb(0 0 0 / .35);display:flex;flex-direction:column;overflow:hidden;transform:translateY(12px) scale(.98);opacity:0;transition:transform .18s ease-out,opacity .18s ease-out;transform-origin:bottom right}.wa-panel.is-open{transform:none;opacity:1}.wa-panel-head{display:flex;gap:8px;align-items:center;padding:6px 8px 6px 14px;background:#128c7e;color:#fff;flex:none}.wa-panel-head .muted{color:rgb(255 255 255 / .75);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.wa-panel-head .icon-btn,.wa-panel-head .wa-iconbtn{color:#fff}.wa-panel-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.wa-panel .wa{display:flex;flex-direction:column;flex:1 1 auto;height:auto;min-height:0}.wa-panel .wa .wa-list,.wa-panel .wa .wa-thread{flex:1 1 auto;min-height:0}.wa-panel .wa .wa-list{border-right:0}.wa-panel .wa.is-thread .wa-list,.wa-panel .wa:not(.is-thread) .wa-thread{display:none}.wa-panel .wa-back{display:inline-flex}.wa-panel .wa-msg{max-width:86%}@media (prefers-reduced-motion:reduce){.wa-panel,.wa-msg,.wa-banner{animation:none;transition:none}.wa-fab.has-unread{animation:none}}@media (max-width:760px){.wa-mode-page .wa,.wa-mode-page{grid-template-columns:minmax(0,1fr)}.wa-mode-page .wa-list{border-right:0}.wa-mode-page.is-thread .wa-list,.wa-mode-page:not(.is-thread) .wa-thread{display:none}.wa-mode-page .wa-back{display:inline-flex}.wa-msg{max-width:88%}.wa-panel{right:3vw;left:3vw;width:94vw;max-width:94vw;height:calc(100dvh - 90px - env(safe-area-inset-bottom));max-height:none;bottom:calc(78px + env(safe-area-inset-bottom));border-radius:16px;transform-origin:bottom center}.wa-fab{right:14px;bottom:calc(14px + env(safe-area-inset-bottom))}}.wa-assign{display:flex;gap:8px;align-items:center;padding:6px 10px;background:rgb(240 86 29 / .12);border-bottom:1px solid var(--line);font-size:12px;flex:none}.wa-assign span{font-weight:700;color:var(--orange-700);white-space:nowrap}.wa-assign .select{flex:1;min-height:32px;font-size:12px}@media (max-width:640px){.wa-filters .select,.wa-assign .select,.wa-panel .select,.wa-panel .input,.wa-panel textarea{font-size:16px;min-height:44px}}.wa-also{font-size:11.5px;color:var(--muted);padding:5px 12px;background:var(--surface-2);border-bottom:1px solid var(--line)}.wa-retry{font:inherit;font-size:11px;font-weight:600;color:var(--orange-600);background:none;border:1px solid currentColor;border-radius:6px;padding:1px 7px;margin-left:6px;cursor:pointer}.wa-retry:disabled{opacity:.5;cursor:default}.wa-tpl-var{display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:var(--muted);font-weight:600}.wa-tpl-preview{padding:8px 10px;background:var(--surface-2);border-radius:8px;font-size:12.5px;line-height:1.4;white-space:pre-wrap}.wa-badge-relay{background:var(--muted)}