/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-outline-style:solid}}}@layer theme{:root,:host{--spacing:.25rem;--container-md:28rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-normal:400;--font-weight-semibold:600;--tracking-wide:.025em;--radius-md:.375rem;--radius-lg:.5rem}}@layer base;@layer components{*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:Segoe UI,system-ui,-apple-system,Roboto,sans-serif;font-size:15px}code{background:var(--muted-bg);border-radius:4px;padding:1px 5px;font-size:.92em}.shell{min-height:100vh;display:flex}.sidebar{background:var(--brand);width:230px;color:var(--brand-ink);flex-direction:column;flex-shrink:0;gap:18px;padding:18px 14px;display:flex}.brand{letter-spacing:.5px;padding:4px 10px;font-size:24px;font-weight:700}.brand-sub{opacity:.7;font-size:12px;font-weight:400;display:block}.sidebar nav{flex-direction:column;flex:1;gap:2px;display:flex}.nav-section{text-transform:uppercase;letter-spacing:.8px;opacity:.5;-webkit-user-select:none;user-select:none;padding:14px 10px 4px;font-size:11px}.nav-section:first-child{padding-top:2px}.sidebar nav a{color:var(--brand-ink);opacity:.85;border-radius:7px;padding:9px 10px;text-decoration:none}.sidebar nav a:hover{background:var(--brand-hover);opacity:1}.sidebar nav a.active{background:var(--brand-active);opacity:1;font-weight:600}.sidebar-footer{border-top:1px solid var(--brand-line);flex-direction:column;gap:8px;padding-top:12px;display:flex}.user-box{flex-direction:column;padding:0 10px;display:flex}.logout-failed{flex-direction:column;gap:8px;font-size:12px;display:flex}.logout-failed .muted{color:var(--brand-ink-soft);margin:0}.user-email{word-break:break-all;font-size:13px}.user-role{opacity:.7;font-size:12px}.content{flex:1;min-width:0;max-width:1180px;padding:26px 32px 60px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}h1{margin:0;font-size:22px}h2{margin:0 0 10px;font-size:16px}.card{background:var(--panel);border:1px solid var(--line);border-radius:10px;margin-bottom:18px;padding:18px 20px}.actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:4px;margin-bottom:18px;display:flex}.tab{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:8px 14px;font-weight:600}.tab:hover{color:var(--ink);filter:none}.tab-active{color:var(--accent);border-bottom-color:var(--accent)}.lookup-warn{margin:8px 0 0;font-size:13px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(330px,1fr));align-items:start;gap:18px;display:grid}.kv{grid-template-columns:auto 1fr;gap:4px 18px;margin:0;display:grid}.kv dt{color:var(--muted);padding-top:2px;font-size:13px}.kv dd{margin:0;font-weight:500}.muted{color:var(--muted)}.mono{font-variant-numeric:tabular-nums slashed-zero;font-family:Consolas,Cascadia Mono,monospace}table{border-collapse:collapse;background:var(--panel);border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:10px;width:100%;overflow:hidden}.table-scroll{width:100%;overflow-x:auto}.table-scroll table{min-width:1180px}.pon-load{gap:4px;min-width:104px;font-size:12px;font-weight:600;display:grid}.pon-load progress{width:100%;height:9px;accent-color:var(--accent)}.pon-radio-group{border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px 18px;margin:0;padding:10px 12px;display:flex}.pon-radio-group legend{color:var(--muted);padding:0 5px;font-size:13.5px;font-weight:600}.pon-radio-group label{align-items:center;gap:6px;display:inline-flex}.pon-form-grid{gap:12px}.pon-modal-actions{justify-content:flex-end;padding-top:4px}.table-scroll .rogue-board-table{min-width:520px}.pon-ports-table-scroll{scrollbar-gutter:stable;border-radius:8px}.pon-ports-table-scroll:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.table-scroll .pon-ports-table{table-layout:fixed;border-collapse:separate;border-spacing:0;min-width:900px;overflow:visible}.pon-ports-table .pon-col-port{width:6%}.pon-ports-table .pon-col-type,.pon-ports-table .pon-col-admin{width:5%}.pon-ports-table .pon-col-state{width:8%}.pon-ports-table .pon-col-onus{width:6%}.pon-ports-table .pon-col-load{width:8%}.pon-ports-table .pon-col-signal,.pon-ports-table .pon-col-worst{width:7%}.pon-ports-table .pon-col-description{width:9%}.pon-ports-table .pon-col-svlan{width:7%}.pon-ports-table .pon-col-properties{width:12%}.pon-ports-table .pon-col-tx{width:7%}.pon-ports-table .pon-col-actions{width:13%}.pon-ports-table th,.pon-ports-table td{padding:8px 6px;line-height:1.35}.pon-ports-table th{overflow-wrap:normal;word-break:normal}.pon-ports-table td{font-size:13px}.pon-ports-table .pon-load{min-width:0}.pon-port-state .badge{margin-bottom:3px}.pon-port-onus>div,.pon-port-tx{white-space:nowrap}.pon-port-properties{overflow-wrap:anywhere}.pon-port-description{overflow-wrap:break-word}.pon-port-properties{font-size:12.5px}.pon-svlan-editor,.pon-port-actions{gap:6px;min-width:0;display:grid}.pon-svlan-editor input,.pon-svlan-editor button,.pon-port-actions button{width:100%;min-width:0;padding:7px 6px;font-size:12px}.pon-port-actions button{white-space:nowrap}.pon-port-actions-heading,.pon-port-actions-cell{z-index:1;background:var(--panel);box-shadow:-1px 0 0 var(--line);position:sticky;right:0}.pon-port-actions-heading{z-index:2;background:var(--panel-2)}.pon-ports-table tbody tr:hover .pon-port-actions-cell{background:var(--row-hover)}.rogue-board-table input[type=checkbox]{vertical-align:middle;width:24px;height:24px;margin:0}th{text-align:left;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);border-bottom:1px solid var(--line);background:var(--panel-2);padding:10px 12px;font-size:12px}td{border-bottom:1px solid var(--line);vertical-align:middle;padding:10px 12px}tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--row-hover)}.row-link{cursor:pointer}.row-link:focus-visible{outline:2px solid var(--focus-ring-strong);outline-offset:-2px}.onus-table td,.onus-table th{white-space:nowrap;padding:7px 10px}.onus-table .cell-name{text-overflow:ellipsis;min-width:200px;max-width:380px;overflow:hidden}.onus-table .cell-clip{text-overflow:ellipsis;max-width:160px;overflow:hidden}.onus-table .cell-serial,.onus-table .cell-pos{width:1%;font-size:12.5px}.onus-table .cell-olt{font-family:inherit}.onus-table .signal-warn{color:var(--warn);font-weight:600}.onus-table .signal-bad{color:var(--bad);font-weight:600}.toolbar-advanced{margin-bottom:14px;padding:12px 14px}.field-narrow{max-width:92px}.list-count{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.field-inline{align-items:center;gap:6px;display:flex}.field-inline select{width:auto}.badge{white-space:nowrap;border-radius:999px;padding:2px 9px;font-size:12.5px;font-weight:600;display:inline-block}.badge-ok{background:var(--ok-bg);color:var(--ok)}.badge-warn{background:var(--warn-bg);color:var(--warn)}.badge-bad{background:var(--bad-bg);color:var(--bad)}.badge-muted{background:var(--muted-bg);color:var(--muted)}form.stack,.stack{flex-direction:column;gap:12px;display:flex}label.field{flex-direction:column;gap:4px;display:flex}label.field,fieldset.field>legend,.field-label{color:var(--muted);font-size:13.5px;font-weight:600}label.field.field-check{flex-direction:row;align-self:flex-end;align-items:center;gap:6px}label.field.field-check input{width:auto}input,select{font:inherit;border:1px solid var(--line);background:var(--field-bg);color:var(--ink);border-radius:7px;padding:8px 10px}input:focus,select:focus{outline:2px solid var(--focus-ring);border-color:var(--accent)}button{font:inherit;border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink);cursor:pointer;border-radius:7px;padding:8px 16px;font-weight:600}button:hover{filter:brightness(1.08)}button:disabled{opacity:.55;cursor:not-allowed}button.ghost{color:inherit;opacity:.85;background:0 0;border:1px solid}button.valor-editable{font:inherit;font-weight:inherit;color:var(--accent);text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px dashed #0000;border-radius:5px;margin:0 0 0 -5px;padding:1px 5px}button.valor-editable:hover{background:var(--panel-3);border-bottom-color:var(--line-strong);filter:none}button.valor-editable:disabled{cursor:not-allowed}button.valor-editable:disabled:hover{background:0 0;border-bottom-color:#0000}button.valor-editable:focus-visible{outline:2px solid var(--focus-ring-strong);outline-offset:1px}.dato-faltante{color:var(--muted);font-style:italic;font-weight:500}button.boton-chico{padding:4px 10px;font-size:12.5px}button.danger{background:var(--bad);border-color:var(--bad)}button.secondary{background:var(--panel);color:var(--accent)}button.linklike{color:var(--accent);cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-weight:600}button.linklike:hover{filter:none;text-decoration:underline}a.button-link{border:1px solid var(--accent);background:var(--panel);color:var(--accent);cursor:pointer;border-radius:7px;align-items:center;padding:8px 16px;font-weight:600;text-decoration:none;display:inline-flex}a.button-link:hover{text-decoration:underline}.toolbar{flex-wrap:wrap;align-items:end;gap:10px;margin-bottom:14px;display:flex}.error-box{background:var(--bad-bg);color:var(--bad);border:1px solid var(--bad-line);border-radius:8px;margin:10px 0;padding:10px 14px}.success-box{background:var(--ok-bg);color:var(--ok);border:1px solid var(--ok-line);border-radius:8px;margin:10px 0;padding:10px 14px}.backup-banner{background:var(--bad-bg);color:var(--bad);border:1px solid var(--bad-line);border-radius:6px;margin:0 0 14px;padding:4px 12px;font-size:13px;font-weight:600}.warn-box{background:var(--warn-bg);color:var(--warn);border:1px solid var(--warn-line);border-radius:8px;margin:10px 0;padding:10px 14px}.login-screen{background:linear-gradient(160deg,var(--brand) 0%,var(--brand-grad-mid) 60%,var(--brand-grad-end) 100%);place-items:center;min-height:100vh;padding:20px;display:grid}.login-card{background:var(--panel);width:100%;max-width:400px;box-shadow:var(--shadow-login);border-radius:12px;padding:34px 36px}.login-card h1{margin-bottom:2px;font-size:30px}.login-card .muted{margin-top:0}.platform-notice{place-items:center;min-height:100vh;padding:20px;display:grid}.platform-notice .card{max-width:520px}.alarm-cards{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:18px;display:grid}.alarm-card{background:var(--panel);border:1px solid var(--line);cursor:pointer;text-align:left;font:inherit;color:inherit;border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;display:flex}.alarm-card:hover{border-color:var(--line-strong)}.alarm-card-active{outline:2px solid var(--focus-ring-strong);outline-offset:-1px}.alarm-card-value{font-size:26px;font-weight:800;line-height:1.1}.alarm-card-label{color:var(--muted);font-size:12px}.alarm-card-detail{color:var(--muted);margin-top:2px;font-size:11.5px}.signal-health-title{text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin:0 0 8px;font-size:13px}.alarm-card-bad .alarm-card-value{color:var(--bad)}.pon-cat{border-top:1px solid var(--line);margin-top:4px;padding-top:4px}.pon-row{text-align:left;width:100%;padding:4px 6px;display:block}.pon-row:hover{background:var(--muted-bg)}.alarm-card-warn .alarm-card-value{color:var(--warn)}.alarm-card-ok .alarm-card-value{color:var(--ok)}.alarm-card-muted .alarm-card-value{color:var(--muted)}.spinner-row{align-items:center;gap:8px;display:flex}.spinner{border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.8s linear infinite spinner-turn;display:inline-block}@keyframes spinner-turn{to{transform:rotate(360deg)}}.data-stamp{color:var(--muted);white-space:nowrap;margin-left:8px;font-family:Segoe UI,system-ui,-apple-system,Roboto,sans-serif;font-size:13px;font-weight:400}.data-stamp.stale{color:var(--warn);background:var(--warn-bg);white-space:normal;border-radius:4px;padding:2px 8px}.signal-chart{background:var(--surface-chart);border:1px solid var(--line);border-radius:8px;width:100%;height:auto;display:block}.chart-grid{stroke:var(--chart-grid);stroke-width:1px}.chart-tick{fill:var(--muted);font-family:Consolas,Cascadia Mono,monospace;font-size:10px}.chart-axis-label{fill:var(--muted);letter-spacing:.2px;font-size:10px;font-weight:600}.chart-threshold{stroke-width:1.2px;stroke-dasharray:5 4;fill:none}.chart-threshold-warn{stroke:var(--chart-threshold-warn)}.chart-threshold-bad{stroke:var(--chart-threshold-bad)}.chart-zone-warn{fill:var(--chart-threshold-warn);fill-opacity:.12;stroke:none;pointer-events:none}.chart-cut-band{stroke:none;pointer-events:none}.chart-cut-grad{color:var(--chart-threshold-bad)}.chart-cut-line{stroke:var(--chart-threshold-bad);stroke-width:1.2px;pointer-events:none}.chart-line{fill:none;stroke-width:1.8px;stroke-linejoin:round;stroke-linecap:round}.chart-band{stroke:none;pointer-events:none}.chart-line-rx{stroke:var(--chart-signal-rx)}.chart-line-tx{stroke:var(--chart-signal-tx)}.chart-line-oltrx{stroke:var(--chart-signal-oltrx)}.chart-area{stroke:none}.chart-area-rx{fill:var(--chart-signal-rx);opacity:.14}.chart-area-down{fill:var(--chart-down);opacity:.16}.chart-area-up{fill:var(--chart-up);opacity:.13}.chart-dot{stroke:none}.chart-dot-rx{fill:var(--chart-signal-rx)}.chart-dot-tx{fill:var(--chart-signal-tx)}.chart-dot-oltrx{fill:var(--chart-signal-oltrx)}.chart-legend{color:var(--muted);gap:5px;margin:8px 0 0;font-size:12px;display:grid}.chart-legend-row{flex-wrap:wrap;align-items:center;gap:3px 10px;display:flex}.chart-legend-row strong{color:var(--ink);min-width:50px}.chart-legend-note{margin:1px 0 0 24px}.chart-band-key{border:1px solid var(--line);background:var(--muted-bg);color:var(--ink);border-radius:999px;padding:1px 6px;font-size:11px}.chart-swatch{vertical-align:middle;border-radius:2px;width:14px;height:3px;display:inline-block}.chart-swatch-rx{background:var(--chart-signal-rx)}.chart-swatch-tx{background:var(--chart-signal-tx)}.chart-swatch-oltrx{background:var(--chart-signal-oltrx)}.chart-legend-mini{color:var(--ink-2);white-space:nowrap;align-items:center;gap:12px;margin-top:3px;font-size:10.5px;line-height:1.25;display:flex;overflow:hidden}.chart-legend-mini-item{text-overflow:ellipsis;align-items:center;gap:5px;min-width:0;display:inline-flex;overflow:hidden}.chart-legend-mini-item.muted{color:var(--muted);display:block}.chart-band-oltrx{fill:var(--chart-signal-oltrx);fill-opacity:.14}.chart-band-rx{fill:var(--chart-signal-rx);fill-opacity:.16}.chart-band-tx{fill:var(--chart-signal-tx);fill-opacity:.12}.traffic-chart{background:var(--surface-chart);border:1px solid var(--line);border-radius:8px;width:100%;height:auto;display:block}.chart-line-down{stroke:var(--chart-down)}.chart-line-up{stroke:var(--chart-up)}.chart-band-down{fill:var(--chart-down);fill-opacity:.14}.chart-band-up{fill:var(--chart-up);fill-opacity:.13}.chart-dot-down{fill:var(--chart-down)}.chart-dot-up{fill:var(--chart-up)}.chart-swatch-down{background:var(--chart-down)}.chart-swatch-up{background:var(--chart-up)}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.modal-overlay{z-index:2000;background:var(--scrim);place-items:center;padding:clamp(12px,3vw,32px);display:grid;position:fixed;top:0;right:0;bottom:0;left:0}.modal-panel{background:var(--panel);border:1px solid var(--line-strong);width:min(100%,560px);max-height:92dvh;box-shadow:var(--shadow-modal);border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.modal-panel-wide{width:min(100%,820px)}.modal-header{background:var(--panel-2);border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;display:flex}.modal-header h2{color:var(--ink);margin:0;font-size:18px}button.modal-close{border-color:var(--line);background:var(--panel);width:40px;min-width:40px;height:40px;color:var(--ink);flex:none;place-items:center;padding:0;font-size:25px;line-height:1;display:inline-grid}.modal-close:focus-visible,.chart-history-trigger:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.modal-body{overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;padding:18px;overflow-y:auto}.chart-history-trigger{white-space:nowrap}.monitoring-history{--history-accent:var(--chart-down);--history-accent-soft:var(--chart-down-soft)}.monitoring-history-signal{--history-accent:var(--chart-signal-rx);--history-accent-soft:var(--chart-rx-soft)}.monitoring-history-intro{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px;padding:0 2px 14px;display:flex}.monitoring-history-intro p{margin:0}.monitoring-history-intro p.monitoring-history-onu{color:var(--muted);margin-top:5px;font-size:12px}.monitoring-history-intro p.monitoring-history-help{max-width:620px;margin-top:7px;font-size:12px}.monitoring-history-count{border:1px solid var(--line);background:var(--history-accent-soft);color:var(--ink);border-radius:999px;flex:none;align-items:center;gap:7px;padding:5px 9px;font-size:12px;font-weight:700;display:inline-flex}.monitoring-history-count-dot{background:var(--history-accent);border-radius:50%;width:8px;height:8px}.monitoring-history-list{gap:14px;display:grid}.monitoring-history-strip{background:var(--panel-2);border:1px solid var(--line);border-left:4px solid var(--history-accent);border-radius:9px;padding:13px 14px 12px;overflow:hidden}.monitoring-history-strip-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:9px;display:flex}.monitoring-history-strip-head h3{color:var(--ink);margin:0;font-size:15px}.monitoring-history-strip-head span{color:var(--muted);white-space:nowrap;font-family:Consolas,Cascadia Mono,monospace;font-size:11px}.monitoring-history-state:empty{display:none}.monitoring-history-state .spinner-row,.monitoring-history-state .muted{margin:14px 0}.chart-time-viewport{min-width:0}.chart-time-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:7px 12px;margin:0 0 6px;display:flex}.chart-time-range{color:var(--muted);font-size:11px}.chart-time-actions{flex-wrap:wrap;align-items:center;gap:5px;display:inline-flex}button.chart-time-control{border-color:var(--muted);background:var(--panel);width:40px;min-width:40px;height:40px;color:var(--ink);place-items:center;padding:0;font-size:18px;line-height:1;display:inline-grid}button.chart-time-control:hover:not(:disabled){border-color:var(--history-accent,var(--accent));background:var(--history-accent-soft,var(--muted-bg))}button.chart-time-reset{gap:4px;width:auto;min-width:56px;padding:0 8px;font-family:Consolas,Cascadia Mono,monospace;font-size:12px;font-weight:700;display:inline-flex}.chart-time-control:focus-visible,.chart-time-surface:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.chart-time-surface{touch-action:pan-y;-webkit-user-select:none;user-select:none;cursor:zoom-in;border-radius:6px;min-width:0}.chart-time-surface.is-pannable{cursor:grab}.chart-time-surface.is-dragging{cursor:grabbing}.chart-time-empty{border:1px dashed var(--line-strong);background:var(--panel);text-align:center;border-radius:6px;place-items:center;min-height:160px;margin:0;padding:16px;display:grid}.chart-inline-note{margin:7px 0 0;font-size:12px}.monitoring-history-strip .chart-legend{font-size:11px}.monitoring-history-strip .chart-legend-note{margin-left:24px}.monitoring-history-footnote{margin:14px 2px 0;font-size:12px}@media(max-width:680px){.modal-overlay{padding:0}.modal-panel,.modal-panel-wide{border-width:0;border-radius:0;width:100%;height:100dvh;max-height:100dvh}.modal-header,.modal-body{padding-left:12px;padding-right:12px}.monitoring-history-intro{flex-direction:column;align-items:stretch;gap:10px}.monitoring-history-count{align-self:flex-start}.monitoring-history-strip{padding:10px 9px}.monitoring-history-strip-head{flex-direction:column;align-items:flex-start;gap:2px}.monitoring-history-strip .chart-legend-row{column-gap:7px}.chart-time-toolbar{flex-direction:column;align-items:stretch}.chart-time-actions{align-self:flex-start}}@media(pointer:coarse){button.chart-time-control{width:44px;min-width:44px;height:44px}button.chart-time-reset{width:auto;min-width:60px}}.chart-rango-picker{position:relative}.chart-rango-boton{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:.3rem;padding:.1rem .5rem;font-size:.72rem;display:inline-flex}.chart-rango-boton:hover{filter:none}.chart-rango-boton:hover,.chart-rango-boton[aria-expanded=true]{border-color:var(--accent);color:var(--accent)}.chart-rango-boton:focus-visible{outline:2px solid var(--focus-ring-strong);outline-offset:2px}.chart-rango-menu{z-index:30;border:1px solid var(--line-strong);background:var(--panel);min-width:6.5rem;box-shadow:var(--shadow-modal);border-radius:8px;padding:4px;position:absolute;top:calc(100% + 4px);right:0}.chart-rango-item{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;padding:.3rem .55rem;font-size:.78rem;display:block}.chart-rango-item:hover{background:var(--row-hover);filter:none}.chart-rango-item.is-activo{color:var(--accent)}.diag-steps{margin:14px 0 0;padding:0;list-style:none}.diag-step{border-bottom:1px solid var(--line);padding:7px 0}.diag-icon{width:20px;font-weight:800;display:inline-block}.diag-step-ok .diag-icon{color:var(--ok)}.diag-step-failed .diag-icon{color:var(--bad)}.diag-step-skipped{color:var(--muted)}.diag-detail{margin:8px 0 4px 20px}.diag-detail summary{cursor:pointer;color:var(--muted);font-size:13px}.diag-label{color:var(--muted);margin-top:8px;font-size:12px;display:block}.diag-pre{background:var(--panel-3);border:1px solid var(--line);white-space:pre-wrap;word-break:break-all;border-radius:8px;margin:4px 0 0;padding:10px 12px;font-family:Consolas,Cascadia Mono,monospace;font-size:12px}.onu-head{background:var(--panel);border:1px solid var(--line);border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 16px;margin-bottom:18px;padding:14px 18px;display:grid}@media(min-width:1024px){.onu-head{z-index:20;position:sticky;top:0}}.onu-head-id{min-width:0}.onu-head-id h1{letter-spacing:-.01em;overflow-wrap:anywhere;font-size:22px;font-weight:700;line-height:1.2}.onu-head-sub{color:var(--muted);flex-wrap:wrap;gap:4px 8px;margin:4px 0 0;font-size:12.5px;display:flex}.onu-detail .kv dt{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);align-self:stretch;align-items:center;padding-top:0;font-size:11px;display:flex}.onu-detail .kv dd{color:var(--ink);overflow-wrap:break-word;align-self:stretch;min-width:0;font-size:13px;font-weight:600}.onu-detail .kv-ficha>dd{flex-wrap:wrap;align-items:center;gap:2px 6px;min-height:20px;display:flex}.onu-detail .kv-ficha>dd>.editor-en-celda{flex-basis:100%}.onu-detail .kv dd.mono{overflow-wrap:normal}.onu-detail .kv{gap:0}.onu-detail .kv>dt,.onu-detail .kv>dd{border-bottom:1px solid var(--line);padding-block:3px}.onu-detail .kv>dt{padding-right:14px}.onu-detail .kv-ficha>dd{padding-right:0}.onu-detail .signal-ok{color:var(--ok)}.onu-detail .signal-warn{color:var(--warn)}.onu-detail .signal-bad{color:var(--bad)}.onu-head-stamp{text-align:right;justify-content:flex-end;align-items:center;padding-left:18px;display:flex}.tr069-block{border:1px solid var(--line);background:var(--panel-2);border-radius:10px;margin-bottom:18px;padding:4px 14px 14px}.tr069-block>.tr069-block-head{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin-bottom:12px;padding:12px 4px 10px;display:flex}.tr069-block>.tr069-block-head h2{margin:0}.tr069-block>.card{background:0 0;border:none;margin-bottom:22px;padding:0}.tr069-block>.card:last-child{margin-bottom:4px}.tr069-block>.card>h2{color:var(--ink-2);border-left:3px solid var(--accent);padding-left:8px;font-size:14px}.onu-detail .kv-ficha select,.onu-detail .kv-ficha input:not([type=checkbox]){border-radius:5px;padding:1px 6px;font-size:12.5px}:is(.onu-detail>.card,.onu-detail>*>.card){margin-bottom:12px;padding:12px 14px}:is(.onu-detail>.card,.onu-detail>*>.card)>h2,:is(.onu-detail>.card,.onu-detail>*>.card)>.card-head>h2{margin-bottom:6px;font-size:14px}.onu-detail .card-head{justify-content:flex-start;gap:8px;margin-bottom:6px}.onu-detail h3{margin:10px 0 6px;font-size:13px}.onu-detail .chart-legend-note{margin-top:0;font-size:11.5px}.onu-detail .chart-legend{gap:2px;margin-top:6px;font-size:11px}.onu-detail .chart-legend-row{column-gap:8px}.onu-detail .grid-2{gap:12px;margin-bottom:12px}.onu-head{margin-bottom:12px;padding:10px 16px}.onu-head-id h1{font-size:19px}.onu-detail .toolbar{gap:8px 12px;margin-bottom:8px}.onu-detail .toolbar select{padding:3px 6px;font-size:12.5px}.onu-detail label.field,.onu-detail fieldset.field>legend,.onu-detail .field-label{font-size:12px}.ayuda{vertical-align:middle;display:inline-flex;position:relative}button.ayuda-boton{border:1px solid var(--muted);width:16px;min-width:16px;height:16px;color:var(--muted);background:0 0;border-radius:50%;place-items:center;padding:0;font-size:11px;font-style:italic;font-weight:700;line-height:1;display:inline-grid}button.ayuda-boton:hover,button.ayuda-boton[aria-expanded=true]{border-color:var(--accent);color:var(--accent);filter:none;background:0 0}button.ayuda-boton:focus-visible{outline:2px solid var(--focus-ring-strong);outline-offset:2px}.ayuda-pop{z-index:30;background:var(--panel);border:1px solid var(--line-strong);width:max-content;max-width:340px;box-shadow:var(--shadow-modal);color:var(--ink);text-align:left;white-space:normal;border-radius:8px;padding:8px 10px;font-size:12px;font-weight:400;line-height:1.45;position:absolute;top:calc(100% + 6px);left:-8px}.senal-rot{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:11px}button.onu-live-on{background:var(--ok);border-color:var(--ok);color:var(--panel)}.onu-live-trafico{flex-wrap:wrap;align-items:baseline;gap:4px 18px;margin:-6px 0 12px;font-size:12.5px;display:flex}.onu-live-trafico .live-val{font-variant-numeric:tabular-nums slashed-zero;font-family:Consolas,Cascadia Mono,monospace;font-weight:700}.onu-detail .chart-time-toolbar{justify-content:flex-start;gap:6px 10px;margin-bottom:4px}.onu-detail .chart-rango{flex-wrap:wrap;align-items:center;gap:5px;display:inline-flex}.onu-detail .chart-rango button{padding:3px 9px;font-size:12px}.onu-detail button.chart-time-control{width:28px;min-width:28px;height:28px;font-size:14px}.onu-detail button.chart-time-reset{gap:4px;width:auto;min-width:0;padding:0 8px;font-size:12px}.onu-detail .chart-time-actions{order:2}.onu-detail .chart-time-range{order:3;font-size:10.5px}button.boton-configurar{color:var(--accent);background:0 0;border:0;border-bottom:1px dashed #0000;border-radius:5px;margin:6px 0 0 -6px;padding:2px 6px;font-size:13px}button.boton-configurar:hover{background:var(--panel-3);border-bottom-color:var(--line-strong);filter:none}button.boton-configurar:focus-visible{outline:2px solid var(--focus-ring-strong);outline-offset:1px}.onu-detail .tr069-block{margin-bottom:12px;padding:2px 12px 10px}.onu-detail .tr069-block>.tr069-block-head{margin-bottom:10px;padding:10px 4px 8px}.onu-detail .tr069-block>.card{margin-bottom:16px}button.enlace-inline{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}button.enlace-inline:hover{filter:none;text-decoration:none}button.enlace-inline:focus-visible{outline:2px solid var(--focus-ring-strong);outline-offset:2px;border-radius:3px}.onu-detail [id=historial-onu],.onu-detail [id=ficha-abonado],.onu-detail [id^=tr069-]{scroll-margin-top:calc(var(--onu-head-h,190px) + 14px)}.onu-head-icono{background:var(--panel-2);border:1px solid var(--line);width:46px;height:46px;color:var(--muted);border-radius:10px;flex:none;place-items:center;display:grid}.onu-head-icono svg{width:24px;height:24px}.onu-head{grid-template-columns:auto minmax(0,1fr) auto}.onu-tiles{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.onu-tile{background:var(--panel);border:1px solid var(--line);text-align:left;min-width:0;height:200px;font:inherit;color:inherit;border-radius:10px;flex-direction:column;flex:150px;justify-content:center;padding:10px 12px;display:flex}.onu-tile-ancha{flex:3 380px;justify-content:flex-start}.onu-tile-lienzo{flex-direction:column;flex:auto;justify-content:center;min-height:0;display:flex}button.onu-tile-click{cursor:pointer;flex-direction:column;justify-content:center;width:100%;display:flex}button.onu-tile-click:hover{border-color:var(--line-strong);background:var(--panel);filter:none}button.onu-tile-click:focus-visible{outline:2px solid var(--focus-ring-strong);outline-offset:2px}.onu-tile-cabeza .onu-tile-rot{white-space:nowrap}.onu-tile-cabeza .boton-chico{white-space:nowrap;flex:none}.onu-tile-val-apilado{font-variant-numeric:tabular-nums;flex-direction:column;line-height:1.25;display:flex}.onu-tile-rot{letter-spacing:.4px;color:var(--muted);font-size:11px;font-weight:600}.onu-tile-rot-ok{color:var(--ok)}.onu-tile-rot-bad{color:var(--bad)}.onu-tile-val{overflow-wrap:anywhere;font-variant-numeric:tabular-nums slashed-zero;margin-top:3px;font-size:19px;font-weight:600;line-height:1.25}.onu-tile-val-ok{color:var(--ok)}.onu-tile-val-bad{color:var(--bad)}.onu-tile-val-accent{color:var(--accent)}.onu-tile-val-hueco{color:var(--muted);padding-block:3px;font-size:13px;font-style:italic;font-weight:500}.onu-tile-sub{color:var(--muted);font-size:11px;line-height:1.45}.onu-tile-sub-fina{opacity:.92;font-size:10.5px}.onu-tile-alarma{font-weight:600}.tono-ok{color:var(--ok)}.tono-warn{color:var(--warn)}.tono-bad{color:var(--bad)}.onu-tile-cabeza{flex-wrap:nowrap;flex:none;justify-content:space-between;align-items:center;gap:6px 8px;display:flex}.onu-tile-metricas{color:var(--muted);font-variant-numeric:tabular-nums slashed-zero;margin-top:1px;font-size:11px;line-height:1.4}.chip-ahora{font-weight:700}.chart-reset-slot{align-items:center;margin-left:auto;display:inline-flex}.chart-tile-reset{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:.1rem .4rem;font-size:.78rem;display:inline-flex}.chart-tile-reset:hover{border-color:var(--accent);color:var(--accent);filter:none}.chart-tile-reset:focus-visible{outline:2px solid var(--focus-ring-strong);outline-offset:2px}.chart-tile-reset-idle{visibility:hidden}.onu-tile-senal .onu-tile-afford{color:var(--accent);font-size:.68rem}.onu-tile-unidad{color:var(--muted);font-size:.7rem;font-weight:400}.onu-medidor{background:var(--chart-grid);border-radius:3.5px;height:7px;margin:.5rem 0 .35rem;overflow:hidden}.onu-medidor.is-consumido{box-shadow:inset 0 0 0 1px}.onu-medidor-relleno{background:currentColor;border-radius:3.5px;height:100%;display:block}.onu-optica{border:1px solid var(--line);background:var(--panel);border-radius:10px;max-width:30rem;padding:.7rem .85rem}.onu-optica-cabeza{justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.35rem;display:flex}.onu-optica-titulo{color:var(--ink);font-size:.82rem;font-weight:600}.onu-optica-sello{color:var(--ok);font-size:.7rem}.onu-optica-kv{gap:0;margin-bottom:.4rem}.onu-optica-kv>dt,.onu-optica-kv>dd{border-bottom:1px solid var(--chart-grid);padding-block:3px;font-size:.79rem}.onu-optica-kv>dt{padding-right:14px}.sparkline{width:100%;height:44px;display:block}.sparkline polyline{stroke-width:1.5px;vector-effect:non-scaling-stroke;stroke-linejoin:round;stroke-linecap:round}.sparkline-rx{stroke:var(--chart-signal-rx)}.sparkline-down{stroke:var(--chart-down)}.sparkline-up{stroke:var(--chart-up)}.sparkline-live{stroke:var(--ok)}.onu-detail .onu-live-franja{border-color:var(--ok-line)}.live-chart{background:var(--surface-chart);border:1px solid var(--line);border-radius:8px;width:100%;height:auto;display:block}.onu-live-franja .onu-live-trafico{margin:2px 0 0}.onu-detail .onu-equipo{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.onu-equipo-icono{background:var(--panel-2);width:52px;height:52px;color:var(--muted);border-radius:10px;flex:none;place-items:center;display:grid;overflow:hidden}.onu-equipo-icono svg{width:26px;height:26px}.onu-equipo-icono img{object-fit:contain;width:100%;height:100%}.onu-equipo-cuerpo{flex:320px;min-width:0}.onu-equipo-titulo{align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.onu-equipo-chips{flex-wrap:wrap;align-items:center;gap:5px;margin-top:6px;font-size:11px;display:flex}.onu-equipo-etiqueta{color:var(--muted);font-size:11px}.onu-equipo-rot{margin-left:8px}.onu-equipo-ssid{color:var(--ink);font-size:12px}.onu-boca{background:var(--panel-3);border:1px solid var(--line);width:20px;height:20px;color:var(--muted);border-radius:5px;justify-content:center;align-items:center;font-size:10px;display:inline-flex}.onu-boca-con-cable{background:var(--ok-bg);border-color:var(--ok-line);color:var(--ok)}.onu-boca-sin-dato{border-style:dashed}.onu-radio-chip{background:var(--panel-3);color:var(--muted);border:1px solid var(--line);border-radius:10px;padding:2px 9px;font-size:11px}.onu-radio-encendida{background:var(--ok-bg);color:var(--ok);border-color:var(--ok-line)}.onu-equipo-botones{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.onu-equipo-botones button,.onu-equipo-botones a.button-link{border-radius:8px;padding:5px 12px;font-size:12px}.onu-equipo-conectados{flex:0 230px;align-self:flex-start;width:230px}.onu-equipo-conectados p{font-size:12px;line-height:1.45}.onu-equipo-hosts{margin:3px 0 0;padding:0;font-size:12px;line-height:1.5;list-style:none}.onu-detail .onu-ficha-cols .kv-ficha{grid-template-columns:40% minmax(0,1fr)}.onu-detail .onu-ficha-cols .kv-ficha>dt{text-transform:none;letter-spacing:0;text-align:right;justify-content:flex-end;font-size:12.5px}.onu-ficha-cols{grid-template-columns:minmax(0,1fr);gap:0 24px;display:grid}@media(min-width:860px){.onu-ficha-cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.onu-config{flex-wrap:wrap;align-items:stretch;gap:8px;margin-bottom:12px;display:flex}.onu-detail .onu-config>.card{margin-bottom:0}.onu-config-card:first-child{flex:260px}.onu-config-card:nth-child(2){flex:1.25 300px}.onu-avanzado{flex-direction:column;flex:0 170px;gap:7px;display:flex}.onu-avanzado button{text-align:left;border-radius:8px;padding:5px 10px;font-size:12px}.onu-config-head{align-items:center;gap:8px;margin-bottom:8px;display:flex}.chip-estado{background:var(--muted-bg);color:var(--muted);border:1px solid var(--line);white-space:nowrap;border-radius:10px;margin-left:auto;padding:2px 10px;font-size:11px}.chip-estado-ok{background:var(--ok-bg);color:var(--ok);border-color:var(--ok-line)}.onu-config-filas{flex-direction:column;gap:7px;display:flex}.onu-config-fila{justify-content:space-between;align-items:center;gap:8px;min-height:26px;display:flex}.onu-config-rot{color:var(--ink-2);font-size:12.5px}button.chip-config{font:inherit;background:var(--field-bg);border:1px solid var(--line-strong);color:var(--ink);cursor:pointer;text-align:right;border-radius:6px;align-items:center;gap:8px;padding:4px 10px;font-size:12.5px;display:inline-flex}button.chip-config:hover{border-color:var(--accent);background:var(--field-bg);filter:none}button.chip-config:focus-visible{outline:2px solid var(--focus-ring-strong);outline-offset:1px}button.chip-config:disabled{cursor:not-allowed}.chip-caret{color:var(--muted);font-size:10px}.onu-config-nota{color:var(--muted);margin:10px 0 0;font-size:11.5px}.onu-internet,.internet-form{--rot-col:122px;--fila-h:26px;--fila-gap:7px}.onu-internet .onu-config-fila,.internet-form-fila{min-height:var(--fila-h);justify-content:flex-start;align-items:center;gap:8px;display:flex}.onu-internet .onu-config-rot,.internet-form .onu-config-rot{flex:0 0 var(--rot-col);white-space:nowrap}.onu-internet button.chip-config,.internet-form .segmentado,.internet-form-vlan{min-height:var(--fila-h)}.onu-internet button.chip-config{text-align:left}.internet-form{flex-direction:column;display:flex}.internet-form-campos{gap:var(--fila-gap);height:calc(var(--filas) * var(--fila-h) + (var(--filas) - 1) * var(--fila-gap));flex-direction:column;transition:height .22s cubic-bezier(.2,.8,.2,1);display:flex;position:relative;overflow:hidden}.internet-form-campos:before{content:"";left:calc(var(--rot-col) + 4px);background:linear-gradient(180deg,transparent 0%,var(--line) 10%,var(--line) 82%,transparent 100%);width:1px;position:absolute;top:1px;bottom:1px}.internet-form-campos>.internet-form-fila:nth-child(n+2){animation:.26s cubic-bezier(.2,.8,.2,1) both internet-fila-entra}.internet-form-campos>.internet-form-fila:nth-child(4){animation-delay:45ms}.internet-form-campos>.internet-form-fila:nth-child(5){animation-delay:90ms}.internet-form-campos>.internet-form-fila:nth-child(6){animation-delay:.135s}@keyframes internet-fila-entra{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.internet-form-campos>.internet-form-fila:nth-child(n+2){animation:none}.internet-form-campos{transition:none}}.segmentado{background:var(--field-bg);border:1px solid var(--line-strong);border-radius:6px;align-items:stretch;display:inline-flex;overflow:hidden}.segmento{color:var(--ink-2);cursor:pointer;white-space:nowrap;border-left:1px solid var(--line-strong);-webkit-user-select:none;user-select:none;align-items:center;padding:5px 9px;font-size:12px;line-height:1;transition:background-color .16s,color .16s;display:inline-flex;position:relative}.segmento:not(.activo):not(.apagado):hover{background:var(--muted-bg);color:var(--ink)}.segmento:first-child{border-left:0}.segmento input{opacity:0;width:100%;height:100%;cursor:inherit;margin:0;position:absolute;top:0;right:0;bottom:0;left:0}.segmento.activo{background:var(--accent);color:var(--accent-ink)}.segmento.apagado{color:var(--muted);opacity:.55;cursor:not-allowed}.segmento:focus-within{outline:2px solid var(--focus-ring-strong);outline-offset:-2px}.internet-form-vlan{border-radius:6px;max-width:120px;padding:3px 8px;font-size:12.5px}.internet-form-vlan[aria-invalid=true]{border-color:var(--bad);outline-color:var(--bad)}.interruptor{border:1px solid var(--line-strong);background:var(--field-bg);border-radius:9px;align-items:center;width:30px;height:18px;padding:1px;display:inline-flex;position:relative}.interruptor input{opacity:0;width:100%;height:100%;margin:0;position:absolute;top:0;right:0;bottom:0;left:0}.interruptor-bola{background:var(--muted);border-radius:50%;width:12px;height:12px}.interruptor.apagado{opacity:.55;cursor:not-allowed}.internet-form-acciones{border-top:1px solid var(--line);justify-content:flex-end;gap:8px;margin-top:10px;padding-top:10px;display:flex}.internet-form-acciones button{border-radius:8px;padding:5px 12px;font-size:12px}.onu-pie{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;margin-top:20px;padding-top:10px;display:flex}.onu-pie-botones{flex-wrap:wrap;gap:8px;display:flex}.onu-pie-botones button{border-radius:8px;padding:6px 14px;font-size:12px}.onu-pie-motivo{align-self:center;font-size:12px}.onu-pie-botones .error-box{flex-basis:100%;margin:6px 0 0}button.peligro-suave{border:1px solid var(--bad-line);color:var(--bad);background:0 0}button.peligro-suave:hover:not(:disabled){background:var(--bad-bg);filter:none}.caudal-bajada{color:var(--chart-down)}.caudal-subida{color:var(--chart-up)}.chart-sin-historia{border:1px dashed var(--line-strong);text-align:center;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:.3rem;min-height:86px;display:flex}.chart-sin-historia-titulo{color:var(--ink);font-size:.82rem}.chart-sin-historia-sub{color:var(--muted);font-size:.74rem}.onu-tile-accion{align-self:flex-start;margin-top:.55rem}.nav-boton{font:inherit;text-align:left;cursor:pointer;color:var(--brand-ink);opacity:.85;background:0 0;border:none;border-radius:7px;padding:9px 10px}.nav-boton:hover{background:var(--brand-hover);opacity:1}.actividad-filtros{gap:16px;margin-bottom:10px;display:flex}.actividad-filtros label{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:flex}.actividad-scroll{border:1px solid var(--line);border-radius:10px;max-height:min(62vh,640px);overflow-y:auto}.actividad-tabla{border:none;border-radius:0}.actividad-tabla thead th{background:var(--panel);box-shadow:0 1px 0 var(--line);z-index:1;position:sticky;top:0}.actividad-cuando,.actividad-usuario{white-space:nowrap;width:1%}.actividad-cuando{font-variant-numeric:tabular-nums;color:var(--muted)}.actividad-frase{overflow-wrap:anywhere}.actividad-vacio{margin:0;padding:14px}.onus-table .cell-check{width:1%}.onus-table .cell-check input{vertical-align:middle;margin:0}.batch-bar{padding:12px 14px}.batch-bar-count{white-space:nowrap;align-self:center}.table-scroll .tasks-table,.table-scroll .task-items-table{min-width:0}.tasks-table th,.tasks-table td,.task-items-table th,.task-items-table td{white-space:nowrap;padding:7px 8px}.tasks-table{font-size:14px}.tasks-table .cell-clip{text-overflow:ellipsis;max-width:160px;overflow:hidden}.tasks-table .cell-periodo{white-space:normal}.tasks-table .cell-periodo span{white-space:nowrap}.tasks-table .cell-sub{font-size:12.5px}.task-items-table .cell-wrap{white-space:normal;overflow-wrap:anywhere;min-width:140px}}@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.static{position:static}.sticky{position:sticky}.z-1{z-index:1}.z-9{z-index:9}.col-span-2{grid-column:span 2/span 2}.col-span-3{grid-column:span 3/span 3}.col-span-4{grid-column:span 4/span 4}.col-span-full{grid-column:1/-1}.col-start-1{grid-column-start:1}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.row-start-2{grid-row-start:2}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.m-0{margin:0}.m-1{margin:var(--spacing)}.m-2{margin:calc(var(--spacing) * 2)}.m-3{margin:calc(var(--spacing) * 3)}.mx-0{margin-inline:0}.my-2{margin-block:calc(var(--spacing) * 2)}.mt-0{margin-top:0}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-\[2px\]{margin-top:2px}.mr-0{margin-right:0}.mb-0{margin-bottom:0}.mb-0\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:var(--spacing)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-2\.5{margin-bottom:calc(var(--spacing) * 2.5)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-\[6px\]{margin-bottom:6px}.ml-0{margin-left:0}.ml-1{margin-left:var(--spacing)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-\[22px\]{margin-left:22px}.ml-\[26px\]{margin-left:26px}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-1{height:var(--spacing)}.h-3{height:calc(var(--spacing) * 3)}.h-4{height:calc(var(--spacing) * 4)}.h-\[18px\]{height:18px}.max-h-80{max-height:calc(var(--spacing) * 80)}.max-h-90{max-height:calc(var(--spacing) * 90)}.max-h-\[520px\]{max-height:520px}.w-2{width:calc(var(--spacing) * 2)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-16{width:calc(var(--spacing) * 16)}.w-24{width:calc(var(--spacing) * 24)}.w-\[18px\]{width:18px}.w-\[90px\]{width:90px}.w-\[100px\]{width:100px}.w-\[110px\]{width:110px}.w-\[120px\]{width:120px}.w-\[140px\]{width:140px}.w-\[190px\]{width:190px}.w-full{width:100%}.max-w-40{max-width:calc(var(--spacing) * 40)}.max-w-75{max-width:calc(var(--spacing) * 75)}.max-w-\[360px\]{max-width:360px}.max-w-\[480px\]{max-width:480px}.max-w-\[560px\]{max-width:560px}.max-w-\[640px\]{max-width:640px}.max-w-md{max-width:var(--container-md)}.min-w-0{min-width:0}.min-w-55{min-width:calc(var(--spacing) * 55)}.min-w-60{min-width:calc(var(--spacing) * 60)}.min-w-\[220px\]{min-width:220px}.flex-1{flex:1}.flex-2,.flex-\[2\]{flex:2}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-default{cursor:default}.cursor-help{cursor:help}.cursor-pointer{cursor:pointer}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-\[minmax\(0\,1fr\)_380px\]{grid-template-columns:minmax(0,1fr) 380px}.grid-cols-\[minmax\(0\,1fr\)_auto\]{grid-template-columns:minmax(0,1fr) auto}.grid-cols-\[repeat\(auto-fill\,minmax\(150px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-items-start{justify-items:start}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-3\.5{gap:calc(var(--spacing) * 3.5)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-x-2\.5{column-gap:calc(var(--spacing) * 2.5)}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-3\.5{column-gap:calc(var(--spacing) * 3.5)}.gap-y-0\.5{row-gap:calc(var(--spacing) * .5)}.gap-y-1{row-gap:var(--spacing)}.gap-y-2\.5{row-gap:calc(var(--spacing) * 2.5)}.self-center{align-self:center}.self-end{align-self:flex-end}.overflow-auto{overflow:auto}.overflow-x-auto{overflow-x:auto}.rounded{border-radius:.25rem}.rounded-\[4px\]{border-radius:4px}.rounded-\[999px\]{border-radius:999px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.border-\[var\(--brand-line\)\]{border-color:var(--brand-line)}.border-current{border-color:currentColor}.border-line{border-color:var(--line)}.border-ok{border-color:var(--ok)}.border-warn{border-color:var(--warn)}.bg-\[var\(--brand-active\)\]{background-color:var(--brand-active)}.bg-panel-3{background-color:var(--panel-3)}.fill-line-strong{fill:var(--line-strong)}.fill-muted{fill:var(--muted)}.fill-ok{fill:var(--ok)}.object-contain{object-fit:contain}.p-0{padding:0}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.py-0{padding-block:0}.py-1{padding-block:var(--spacing)}.py-px{padding-block:1px}.ps-1{padding-inline-start:var(--spacing)}.pt-1{padding-top:var(--spacing)}.pt-1\.5{padding-top:calc(var(--spacing) * 1.5)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pr-1{padding-right:var(--spacing)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-9{padding-right:calc(var(--spacing) * 9)}.pb-1{padding-bottom:var(--spacing)}.pl-5{padding-left:calc(var(--spacing) * 5)}.text-center{text-align:center}.text-right{text-align:right}.align-middle{vertical-align:middle}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.9em\]{font-size:.9em}.text-\[0\.85em\]{font-size:.85em}.text-\[9px\]{font-size:9px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[16px\]{font-size:16px}.text-\[length\:inherit\]{font-size:inherit}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[color\:var\(--ink-2\)\]{color:var(--ink-2)}.text-bad{color:var(--bad)}.text-ok{color:var(--ok)}.text-warn{color:var(--warn)}.uppercase{text-transform:uppercase}.accent-ink{accent-color:var(--ink)}.opacity-60{opacity:.6}.opacity-75{opacity:.75}.opacity-100{opacity:1}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}@media(hover:hover){.hover\:bg-\[var\(--brand-hover\)\]:hover{background-color:var(--brand-hover)}}.has-\[\:focus-visible\]\:outline-2:has(:focus-visible){outline-style:var(--tw-outline-style);outline-width:2px}.has-\[\:focus-visible\]\:outline-offset-2:has(:focus-visible){outline-offset:2px}.has-\[\:focus-visible\]\:outline-\[var\(--brand-ink\)\]:has(:focus-visible){outline-color:var(--brand-ink)}}:root{color-scheme:light;--bg:#eff3f8;--panel:#fff;--panel-2:#f6f9fc;--panel-3:#eef2f7;--field-bg:#fff;--row-hover:#f6f9fc;--surface-chart:#fdfefe;--muted-bg:#eef1f5;--ink:#14202c;--ink-2:#435668;--muted:#5c6a7c;--line:#d5dfea;--line-strong:#b4c3d4;--brand:#0b3954;--brand-ink:#e7f0f7;--brand-hover:#ffffff14;--brand-active:#ffffff29;--brand-line:#ffffff26;--brand-ink-soft:#ffffffd1;--brand-grad-mid:#14506e;--brand-grad-end:#1273b5;--accent:#0f6ba8;--accent-ink:#fff;--ok:#14733a;--ok-bg:#e3f4e9;--ok-line:#b5dfc3;--warn:#8a5a06;--warn-bg:#fdf2d9;--warn-line:#ecd49a;--bad:#ab212d;--bad-bg:#fbe5e7;--bad-line:#efb9be;--focus-ring:#bcd9ee;--focus-ring-strong:#0f172a;--scrim:#061b2dad;--shadow-modal:0 24px 70px #061b2d57;--shadow-login:0 18px 50px #08233573;--chart-grid:#e8edf3;--chart-signal-rx:#c25f00;--chart-signal-tx:#15803d;--chart-signal-oltrx:#7c3aed;--chart-rx-soft:#fff7ed;--chart-down:#0d7a88;--chart-up:#a32d8c;--chart-down-soft:#ecfeff;--chart-threshold-warn:#d97706;--chart-threshold-bad:#dc2626}:root[data-theme=dark],:root[data-theme=dark] *{color-scheme:dark}:root[data-theme=dark]{--bg:#0c131b;--panel:#131c26;--panel-2:#18232f;--panel-3:#1e2a38;--field-bg:#0d1720;--row-hover:#1b2734;--surface-chart:#101923;--muted-bg:#1c2733;--ink:#e8eff7;--ink-2:#adbecf;--muted:#8397aa;--line:#253341;--line-strong:#3b4d60;--brand:#0b3954;--brand-ink:#e7f0f7;--brand-hover:#ffffff14;--brand-active:#ffffff29;--brand-line:#ffffff26;--brand-ink-soft:#ffffffd1;--brand-grad-mid:#0d2c40;--brand-grad-end:#12496b;--accent:#57a8e8;--accent-ink:#06121c;--ok:#4cc07a;--ok-bg:#10301e;--ok-line:#1e5637;--warn:#e2a83c;--warn-bg:#302408;--warn-line:#5c4512;--bad:#f4757f;--bad-bg:#371219;--bad-line:#632530;--focus-ring:#57a8e8;--focus-ring-strong:#e8eff7;--scrim:#02080ebd;--shadow-modal:0 24px 70px #0000009e;--shadow-login:0 18px 50px #000000a8;--chart-grid:#24313e;--chart-signal-rx:#ff9d42;--chart-signal-tx:#4cc07a;--chart-signal-oltrx:#a78bfa;--chart-rx-soft:#2e1d0b;--chart-down:#3fc9d6;--chart-up:#e879c7;--chart-down-soft:#0d2b30;--chart-threshold-warn:#e2a83c;--chart-threshold-bad:#f4757f}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:#0c131b;--panel:#131c26;--panel-2:#18232f;--panel-3:#1e2a38;--field-bg:#0d1720;--row-hover:#1b2734;--surface-chart:#101923;--muted-bg:#1c2733;--ink:#e8eff7;--ink-2:#adbecf;--muted:#8397aa;--line:#253341;--line-strong:#3b4d60;--brand:#0b3954;--brand-ink:#e7f0f7;--brand-hover:#ffffff14;--brand-active:#ffffff29;--brand-line:#ffffff26;--brand-ink-soft:#ffffffd1;--brand-grad-mid:#0d2c40;--brand-grad-end:#12496b;--accent:#57a8e8;--accent-ink:#06121c;--ok:#4cc07a;--ok-bg:#10301e;--ok-line:#1e5637;--warn:#e2a83c;--warn-bg:#302408;--warn-line:#5c4512;--bad:#f4757f;--bad-bg:#371219;--bad-line:#632530;--focus-ring:#57a8e8;--focus-ring-strong:#e8eff7;--scrim:#02080ebd;--shadow-modal:0 24px 70px #0000009e;--shadow-login:0 18px 50px #000000a8;--chart-grid:#24313e;--chart-signal-rx:#ff9d42;--chart-signal-tx:#4cc07a;--chart-signal-oltrx:#a78bfa;--chart-rx-soft:#2e1d0b;--chart-down:#3fc9d6;--chart-up:#e879c7;--chart-down-soft:#0d2b30;--chart-threshold-warn:#e2a83c;--chart-threshold-bad:#f4757f}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
