@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:local(Manrope),local(Manrope Variable),local(Manrope-Regular)}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:local(JetBrains Mono),local(JetBrainsMono-Regular),local(JetBrains Mono Variable)}:root{--bg:#f5f6f8;--surface:#fff;--surface-2:#f0f2f5;--surface-3:#e4e7ec;--overlay:#0e111652;--border:#e1e4e9;--border-strong:#7d8590;--ink:#12161b;--ink-2:#424a54;--ink-3:#636b75;--primary:#005b52;--primary-hover:#00463f;--primary-soft:#e3f0ed;--primary-ink:#005b52;--on-primary:#fff;--teal:#005b52;--lime:#9fc031;--lime-ink:#4a6400;--gridgain:#2366b8;--gridgain-hover:#1b5398;--gridgain-soft:#e3edfa;--on-gridgain:#fff;--gridgain-navy:#001830;--success:#0d7352;--success-soft:#e1f4ec;--warning:#a35c00;--warning-soft:#fdf0da;--danger:#b5302a;--danger-soft:#fbe5e3;--info:#1a63b3;--info-soft:#e3eefa;--viz-solar:#b87800;--viz-battery:#6e56cf;--viz-grid:#3f7cb8;--viz-load:#cf5236;--viz-export:#138a7a;--viz-price:#4a6400;--viz-forecast:#636b75;--viz-grid-line:#eceef1;--focus:#005b52;--shadow-sm:0 1px 2px #0f1d1b0f;--shadow-md:0 6px 20px -6px #0f1d1b29;--shadow-lg:0 24px 64px -16px #0f1d1b47;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-12:48px;--radius-xs:4px;--radius-sm:7px;--radius-md:11px;--radius-lg:16px;--radius-pill:999px;--dur-fast:.12s;--dur-base:.2s;--dur-slow:.32s;--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--z-sticky:10;--z-nav:20;--z-overlay:40;--z-palette:50;--z-toast:80;--font-sans:"Manrope", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0e1013;--surface:#16191d;--surface-2:#1c2025;--surface-3:#252a30;--overlay:#0000008f;--border:#2a2f36;--border-strong:#67707b;--ink:#e9ecef;--ink-2:#b4bbc3;--ink-3:#8d959f;--primary:#a9cc3a;--primary-hover:#bcdc55;--primary-soft:#1d2a14;--primary-ink:#bcdc55;--on-primary:#0b1405;--teal:#3fb3a2;--lime:#a9cc3a;--lime-ink:#c2e05e;--gridgain:#7fb2f0;--gridgain-hover:#a3c8f5;--gridgain-soft:#0e1f36;--on-gridgain:#04101f;--gridgain-navy:#001830;--success:#3dd39a;--success-soft:#0f2a20;--warning:#f5b44a;--warning-soft:#2e2210;--danger:#ff7a6e;--danger-soft:#331614;--info:#6cb2ff;--info-soft:#0f2235;--viz-solar:#f7b731;--viz-battery:#a08cff;--viz-grid:#6fa8e0;--viz-load:#ff8a6b;--viz-export:#45c2ae;--viz-price:#c2e05e;--viz-forecast:#8d959f;--viz-grid-line:#21252b;--focus:#a9cc3a;--shadow-sm:0 1px 2px #0006;--shadow-md:0 8px 24px -8px #0009;--shadow-lg:0 24px 64px -12px #000000bf;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark],[data-theme=dark]{--bg:#0e1013;--surface:#16191d;--surface-2:#1c2025;--surface-3:#252a30;--overlay:#0000008f;--border:#2a2f36;--border-strong:#67707b;--ink:#e9ecef;--ink-2:#b4bbc3;--ink-3:#8d959f;--primary:#a9cc3a;--primary-hover:#bcdc55;--primary-soft:#1d2a14;--primary-ink:#bcdc55;--on-primary:#0b1405;--teal:#3fb3a2;--lime:#a9cc3a;--lime-ink:#c2e05e;--gridgain:#7fb2f0;--gridgain-hover:#a3c8f5;--gridgain-soft:#0e1f36;--on-gridgain:#04101f;--gridgain-navy:#001830;--success:#3dd39a;--success-soft:#0f2a20;--warning:#f5b44a;--warning-soft:#2e2210;--danger:#ff7a6e;--danger-soft:#331614;--info:#6cb2ff;--info-soft:#0f2235;--viz-solar:#f7b731;--viz-battery:#a08cff;--viz-grid:#6fa8e0;--viz-load:#ff8a6b;--viz-export:#45c2ae;--viz-price:#c2e05e;--viz-forecast:#8d959f;--viz-grid-line:#21252b;--focus:#a9cc3a;--shadow-sm:0 1px 2px #0006;--shadow-md:0 8px 24px -8px #0009;--shadow-lg:0 24px 64px -12px #000000bf;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light],[data-theme=light]{--bg:#f5f6f8;--surface:#fff;--surface-2:#f0f2f5;--surface-3:#e4e7ec;--overlay:#0e111652;--border:#e1e4e9;--border-strong:#7d8590;--ink:#12161b;--ink-2:#424a54;--ink-3:#636b75;--primary:#005b52;--primary-hover:#00463f;--primary-soft:#e3f0ed;--primary-ink:#005b52;--on-primary:#fff;--teal:#005b52;--lime:#9fc031;--lime-ink:#4a6400;--gridgain:#2366b8;--gridgain-hover:#1b5398;--gridgain-soft:#e3edfa;--on-gridgain:#fff;--gridgain-navy:#001830;--success:#0d7352;--success-soft:#e1f4ec;--warning:#a35c00;--warning-soft:#fdf0da;--danger:#b5302a;--danger-soft:#fbe5e3;--info:#1a63b3;--info-soft:#e3eefa;--viz-solar:#b87800;--viz-battery:#6e56cf;--viz-grid:#3f7cb8;--viz-load:#cf5236;--viz-export:#138a7a;--viz-price:#4a6400;--viz-forecast:#636b75;--viz-grid-line:#eceef1;--focus:#005b52;--shadow-sm:0 1px 2px #0f1d1b0f;--shadow-md:0 6px 20px -6px #0f1d1b29;--shadow-lg:0 24px 64px -16px #0f1d1b47;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-workspace=gridgain],[data-workspace=gridgain]{--primary:var(--gridgain);--primary-hover:var(--gridgain-hover);--primary-soft:var(--gridgain-soft);--primary-ink:var(--gridgain);--on-primary:var(--on-gridgain);--focus:var(--gridgain)}.ohm,.ohm *,.ohm :after,.ohm :before{box-sizing:border-box}.ohm{font-family:var(--font-sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;font-feature-settings:"cv11","ss01";font-size:14px;font-weight:450;line-height:21px}.ohm :where(h1,h2,h3,h4,p){margin:0}.ohm :where(h1,h2,h3){text-wrap:balance}.ohm :where(button,input,select,textarea){font:inherit;color:inherit}.ohm :where(a){color:var(--primary-ink);text-decoration:none}.ohm :where(a:hover){text-underline-offset:3px;text-decoration:underline}.ohm :focus-visible{outline:2px solid var(--focus);outline-offset:2px}.ohm .ohm-palette-input input:focus-visible,.ohm .ohm-search input:focus-visible{outline:none}.ohm .kpi,.ohm .num,.ohm table,.ohm-stat .value{font-variant-numeric:tabular-nums}.ohm .mono{font-family:var(--font-mono);letter-spacing:-.01em;font-size:13px;font-weight:500;line-height:18px}.ohm .muted{color:var(--ink-3)}.ohm .soft{color:var(--ink-2)}.ohm .eyebrow{letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);font-size:11px;font-weight:700;line-height:14px}.ohm-icon{stroke-width:1.75px;vertical-align:middle;flex:none;width:18px;height:18px;display:inline-block}.ohm-icon.sm{width:15px;height:15px}.ohm-icon.lg{width:22px;height:22px}.ohm-btn{--_bg:var(--surface);--_fg:var(--ink);--_bd:var(--border);justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);background:var(--_bg);height:36px;color:var(--_fg);border:1px solid var(--_bd);white-space:nowrap;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out);padding:0 14px;font-size:13.5px;font-weight:650;display:inline-flex}.ohm-btn:hover{background:var(--surface-2)}.ohm-btn:active{transform:scale(.97)}.ohm-btn.primary{--_bg:var(--primary);--_fg:var(--on-primary);--_bd:transparent}.ohm-btn.primary:hover{background:var(--primary-hover);box-shadow:0 6px 18px -8px var(--primary)}.ohm-btn.ghost{--_bg:transparent;--_bd:transparent;color:var(--ink-2)}.ohm-btn.ghost:hover{background:var(--surface-2);color:var(--ink)}.ohm-btn.danger{--_fg:var(--danger)}.ohm-btn.danger:hover{background:var(--danger-soft);border-color:var(--danger)}.ohm-btn.sm{height:30px;padding:0 10px;font-size:12.5px}.ohm-btn[disabled],.ohm-icon-btn:disabled,.ohm-icon-btn[disabled]{opacity:.45;pointer-events:none}.ohm-icon-btn{border-radius:var(--radius-sm);width:34px;height:34px;color:var(--ink-2);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);background:0 0;border:1px solid #0000;place-items:center;display:inline-grid}.ohm-icon-btn:hover{background:var(--surface-2);color:var(--ink)}.ohm-icon-btn:active{transform:scale(.92)}.ohm-icon-btn.outlined{border-color:var(--border);background:var(--surface)}.ohm-icon-btn[aria-pressed=true]{background:var(--primary-soft);color:var(--primary-ink)}.ohm-toggle input:disabled+.track{opacity:.45}.ohm-toggle:has(input:disabled){cursor:not-allowed}.ohm-field{gap:6px;display:grid}.ohm-field>label{color:var(--ink-2);font-size:12px;font-weight:600;line-height:16px}.ohm-input{border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border-strong);width:100%;height:36px;color:var(--ink);transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out);padding:0 12px}.ohm-input::placeholder{color:var(--ink-3)}.ohm-input:hover{border-color:var(--ink-3)}.ohm-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.ohm-input[aria-invalid=true]{border-color:var(--danger)}.ohm-input[aria-invalid=true]:focus{box-shadow:0 0 0 3px var(--danger-soft)}.ohm-input:disabled{background:var(--surface-2);color:var(--ink-3);border-color:var(--border);cursor:not-allowed}.ohm-field .error{color:var(--danger);font-size:12px}.ohm-field .help{color:var(--ink-3);font-size:12px}.ohm-search{align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);height:36px;color:var(--ink-3);cursor:text;min-width:0;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out);padding:0 6px 0 11px;display:flex}.ohm-search:hover{border-color:var(--border-strong);background:var(--surface)}.ohm-search:focus-within{border-color:var(--primary);background:var(--surface);box-shadow:0 0 0 3px var(--primary-soft)}.ohm-search input{min-width:0;color:var(--ink);background:0 0;border:0;outline:none;flex:1}.ohm-search span.ph{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.ohm-kbd{border-radius:var(--radius-xs);border:1px solid var(--border);background:var(--surface);min-width:20px;color:var(--ink-3);font-family:var(--font-mono);border-bottom-width:2px;justify-content:center;gap:2px;padding:1px 6px;font-size:11px;line-height:16px}.ohm-kbd,.ohm-toggle{align-items:center;font-weight:600;display:inline-flex}.ohm-toggle{gap:var(--space-2);cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--ink-2);font-size:13px}.ohm-toggle input{opacity:0;pointer-events:none;position:absolute}.ohm-toggle .track{border-radius:var(--radius-pill);background:var(--surface-3);border:1px solid var(--border-strong);width:34px;height:20px;transition:background var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out);position:relative}.ohm-toggle .track:after{content:"";background:var(--ink-2);width:14px;height:14px;transition:transform var(--dur-base) var(--ease-spring),background var(--dur-base) var(--ease-out);border-radius:50%;position:absolute;top:2px;left:2px}.ohm-toggle input:checked+.track{background:var(--primary);border-color:var(--primary)}.ohm-toggle input:checked+.track:after{background:var(--on-primary);transform:translate(14px)}.ohm-toggle input:focus-visible+.track{outline:2px solid var(--focus);outline-offset:2px}.ohm-pill{--_c:var(--ink-2);--_b:var(--surface-2);border-radius:var(--radius-pill);background:var(--_b);height:22px;color:var(--_c);white-space:nowrap;align-items:center;gap:6px;padding:0 9px 0 8px;font-size:12px;font-weight:650;line-height:1;display:inline-flex}.ohm-pill:before{content:"";background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.ohm-pill.no-dot:before{display:none}.ohm-pill.success{--_c:var(--success);--_b:var(--success-soft)}.ohm-pill.warning{--_c:var(--warning);--_b:var(--warning-soft)}.ohm-pill.danger{--_c:var(--danger);--_b:var(--danger-soft)}.ohm-pill.info{--_c:var(--info);--_b:var(--info-soft)}.ohm-glyph,.ohm-glyph.customer,.ohm-pill.brand{--_c:var(--primary-ink);--_b:var(--primary-soft)}.ohm-pill.live:before{animation:ohm-pulse 1.8s var(--ease-out) infinite;box-shadow:0 0}.ohm-chip{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);height:30px;color:var(--ink-2);cursor:pointer;transition:all var(--dur-base) var(--ease-out);align-items:center;gap:6px;padding:0 12px;font-size:12.5px;font-weight:600;display:inline-flex}.ohm-chip:hover{border-color:var(--border-strong);color:var(--ink)}.ohm-chip[aria-pressed=true]{background:var(--primary-soft);color:var(--primary-ink);border-color:#0000}.ohm-chip .count{font-family:var(--font-mono);color:var(--ink-3);font-size:11px}.ohm-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);min-width:0}a.ohm-card.interactive,a.ohm-card.interactive:hover{color:inherit;text-decoration:none}.ohm-card.interactive{cursor:pointer;transition:transform var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out)}.ohm-card.interactive:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-2px)}.ohm-card-head{align-items:center;gap:8px var(--space-3);padding:14px var(--space-5) 0;flex-wrap:wrap;min-height:48px;display:flex}.ohm-card-head .row,.ohm-tree-row,.ohm-tree-row .row{flex-wrap:wrap}.ohm-card-head h3{font-size:15px;font-weight:700;line-height:20px}.ohm-card-head .spacer{flex:1}.ohm-card-body{padding:var(--space-4) var(--space-5) var(--space-5)}.ohm-glyph{width:32px;height:32px;color:var(--_c);background:var(--_b);border-radius:9px;flex:none;place-items:center;display:inline-grid}.ohm-glyph .ohm-icon{width:17px;height:17px}.ohm-glyph.lg{border-radius:14px;width:52px;height:52px}.ohm-glyph.lg .ohm-icon{width:26px;height:26px}.ohm-glyph.sm{border-radius:7px;width:24px;height:24px}.ohm-glyph.sm .ohm-icon{width:14px;height:14px}.ohm-glyph.ean{--_c:var(--viz-grid);--_b:var(--info-soft)}.ohm-glyph.box{--_c:var(--viz-battery);--_b:var(--surface-2)}.ohm-glyph.contract{--_c:var(--gridgain);--_b:var(--gridgain-soft)}.ohm-glyph.invoice{--_c:var(--warning);--_b:var(--warning-soft)}.ohm-glyph.strategy{--_c:var(--lime-ink);--_b:var(--surface-2)}.ohm-glyph.page{--_c:var(--ink-2);--_b:var(--surface-2)}.ohm-stat{padding:var(--space-4) var(--space-5);gap:6px;display:grid;position:relative;overflow:hidden}.ohm-stat .top{align-items:center;gap:var(--space-2);color:var(--ink-2);font-size:12.5px;font-weight:600;display:flex}.ohm-stat .top .ohm-icon{color:var(--_accent,var(--primary-ink))}.ohm-stat .value{letter-spacing:-.02em;font-size:28px;font-weight:700;line-height:32px}.ohm-stat .value small{color:var(--ink-3);letter-spacing:0;margin-left:3px;font-size:14px;font-weight:600}.ohm-stat .delta{align-items:center;gap:3px;font-size:12px;font-weight:650;display:inline-flex}.ohm-stat .delta.up{color:var(--success)}.ohm-stat .delta.down{color:var(--danger)}.ohm-stat svg.spark{opacity:.9;width:46%;height:46px;position:absolute;bottom:0;right:0}.ohm-meter{border-radius:var(--radius-pill);background:var(--surface-3);height:6px;overflow:hidden}.ohm-meter>i{border-radius:inherit;background:var(--_c,var(--primary));height:100%;width:var(--v,0);transition:width var(--dur-slow) var(--ease-out);display:block}.ohm-tabs{box-shadow:inset 0 -1px 0 var(--border);scrollbar-width:none;gap:2px;display:flex;position:relative;overflow:auto hidden}.ohm-tabs button{cursor:pointer;height:42px;color:var(--ink-2);white-space:nowrap;border-radius:var(--radius-sm) var(--radius-sm) 0 0;transition:color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out);background:0 0;border:0;align-items:center;gap:7px;padding:0 12px;font-size:13.5px;font-weight:650;display:inline-flex}.ohm-tabs button:hover{color:var(--ink);background:var(--surface-2)}.ohm-tabs button[aria-selected=true]{color:var(--primary-ink)}.ohm-tabs button .count{font-family:var(--font-mono);border-radius:var(--radius-pill);background:var(--surface-2);color:var(--ink-3);padding:0 6px;font-size:11px}.ohm-tabs .ink{background:var(--primary);width:0;height:2px;transition:transform var(--dur-base) var(--ease-out),width var(--dur-base) var(--ease-out);border-radius:2px;position:absolute;bottom:0;left:0}.ohm-seg{scrollbar-width:none;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);gap:2px;max-width:100%;padding:3px;display:inline-flex;overflow-x:auto}.ohm-seg button{white-space:nowrap;height:28px;color:var(--ink-2);cursor:pointer;transition:background var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out);background:0 0;border:0;border-radius:5px;flex:none;align-items:center;gap:6px;padding:0 10px;font-size:12.5px;font-weight:650;display:inline-flex}.ohm-seg button:hover{color:var(--ink)}.ohm-seg button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm),0 0 0 1px var(--border)}.ohm-table-wrap{overflow-x:auto;container-type:inline-size}.ohm-table{border-collapse:separate;border-spacing:0;width:100%;font-size:13px}.ohm-table th{text-align:left;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);padding:10px var(--space-3);white-space:nowrap;background:var(--surface);z-index:1;font-size:11px;font-weight:700;line-height:14px;position:sticky;top:0}.ohm-table td,.ohm-table th,.ohm-table.ohm-stacked tbody tr{border-bottom:1px solid var(--border)}.ohm-table td{padding:11px var(--space-3);color:var(--ink-2);vertical-align:middle}.ohm-table td.key{color:var(--ink);font-weight:600}.ohm-table td.r,.ohm-table th.r{text-align:right}.ohm-table tbody tr,.ohm-tree-row{transition:background var(--dur-fast) var(--ease-out)}.ohm-table tbody tr:hover,.ohm-tree-row:hover{background:var(--surface-2)}.ohm-table tbody tr[data-href]{cursor:pointer}.ohm-table tbody tr:last-child td,.ohm-table.ohm-stacked tbody tr:last-child{border-bottom:0}.ohm-table.ohm-stacked,.ohm-table.ohm-stacked tbody{display:block}.ohm-table.ohm-stacked thead{display:none}.ohm-table.ohm-stacked tbody tr{padding:12px var(--space-4);gap:6px;display:grid}.ohm-table.ohm-stacked td{text-align:right;border:0;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:0;display:flex}.ohm-table.ohm-stacked td:before{content:attr(data-label);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);text-align:left;flex:none;font-size:11px;font-weight:700}.ohm-table.ohm-stacked td.key,.ohm-table.ohm-stacked td[data-label=""]{text-align:left;justify-content:flex-start}.ohm-table.ohm-stacked td.key{font-size:14px}.ohm-table.ohm-stacked td.key:before,.ohm-table.ohm-stacked td[data-label=""]:before{content:none}.ohm-table.ohm-stacked td.ohm-st-empty{display:none}@container (width>=640px){.ohm-table.ohm-stacked tbody{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.ohm-table.ohm-stacked tbody tr{border-right:1px solid var(--border)}}.ohm-tree{gap:2px;display:grid}.ohm-tree-row{align-items:center;gap:8px var(--space-3);border-radius:var(--radius-sm);min-width:0;padding:9px 10px;display:flex;position:relative}.ohm-tree-row .grow{flex:1;min-width:160px}.ohm-tree-row .t{color:var(--ink);font-weight:650}.ohm-tree-row .s,.ohm-tree-row .t{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ohm-tree-row .s{color:var(--ink-3);font-size:12.5px}.ohm-tree-children{border-left:1px dashed var(--border-strong);gap:2px;margin-left:25px;padding-left:14px;display:grid}.ohm-timeline{gap:0;display:grid}.ohm-tl-item{gap:var(--space-3);padding-bottom:var(--space-4);grid-template-columns:28px 1fr;display:grid;position:relative}.ohm-tl-item:before{content:"";background:var(--border);width:1px;position:absolute;top:28px;bottom:0;left:13.5px}.ohm-tl-item:last-child:before{display:none}.ohm-tl-item .dot{background:var(--surface-2);width:28px;height:28px;color:var(--ink-2);border-radius:50%;place-items:center;display:grid}.ohm-tl-item .dot .ohm-icon{width:14px;height:14px}.ohm-tl-item .what{color:var(--ink);font-size:13px;font-weight:600}.ohm-tl-item .when{color:var(--ink-3);font-size:12px}.ohm-banner{gap:var(--space-3);border-radius:var(--radius-md);background:var(--_b,var(--info-soft));color:var(--_c,var(--info));align-items:flex-start;padding:12px 14px;font-size:13px;display:flex}.ohm-banner .body{color:var(--ink);overflow-wrap:anywhere;min-width:0}.ohm-banner.warning{--_b:var(--warning-soft);--_c:var(--warning)}.ohm-banner.danger{--_b:var(--danger-soft);--_c:var(--danger)}.ohm-banner.success{--_b:var(--success-soft);--_c:var(--success)}.ohm-skel{border-radius:var(--radius-xs);background:linear-gradient(90deg,var(--surface-2) 0,var(--surface-3) 50%,var(--surface-2) 100%);background-size:200% 100%;min-height:12px;animation:1.3s linear infinite ohm-shimmer}.ohm-empty{text-align:center;justify-items:center;gap:var(--space-2);padding:var(--space-12) var(--space-6);color:var(--ink-2);display:grid}.ohm-empty .ohm-glyph{margin-bottom:var(--space-2)}.ohm-empty h4{color:var(--ink);margin:0;font-size:15px;font-weight:700}.ohm-palette-scrim{z-index:var(--z-palette);background:var(--overlay);padding:calc(max(10vh,16px)) max(16px,env(safe-area-inset-right,0px)) 16px max(16px,env(safe-area-inset-left,0px));animation:ohm-fade var(--dur-base) var(--ease-out) both;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);place-items:start center;display:grid;position:fixed;inset:0}.ohm-palette{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:min(680px,100%);max-height:calc(min(620px,76vh));box-shadow:var(--shadow-lg);animation:ohm-pop var(--dur-slow) var(--ease-out) both;flex-direction:column;display:flex;overflow:hidden}.ohm-palette-input{align-items:center;gap:var(--space-3);padding:0 var(--space-4);border-bottom:1px solid var(--border);height:56px;color:var(--ink-3);flex:none;display:flex}.ohm-palette-input input{min-width:0;color:var(--ink);background:0 0;border:0;outline:none;flex:1;font-size:16px}.ohm-palette-scopes{padding:10px var(--space-4);border-bottom:1px solid var(--border);scrollbar-width:none;scroll-padding-inline:var(--space-4);flex:none;align-items:center;gap:6px;display:flex;overflow:auto hidden;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 32px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 32px),#0000)}.ohm-palette-scopes::-webkit-scrollbar{display:none}.ohm-palette-scopes .ohm-chip{flex:none;height:26px;padding:0 10px;font-size:12px}.ohm-palette-list{flex:1;padding:6px;overflow-y:auto}.ohm-palette-group{padding:10px 10px 4px}.ohm-palette-item{align-items:center;gap:var(--space-3);border-radius:var(--radius-sm);cursor:pointer;min-width:0;padding:8px 10px;display:flex}.ohm-palette-item .grow{flex:1;min-width:0}.ohm-palette-item .t{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.ohm-palette-item .t mark{color:var(--primary-ink);text-underline-offset:3px;background:0 0;text-decoration:underline;text-decoration-thickness:2px}.ohm-palette-item .s{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.ohm-palette-item .go{opacity:0;color:var(--ink-3);transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);transform:translate(-4px)}.ohm-palette-item[aria-selected=true]{background:var(--surface-2)}.ohm-palette-item[aria-selected=true] .go{opacity:1;transform:none}.ohm-palette-foot{gap:var(--space-4);padding:9px var(--space-4);border-top:1px solid var(--border);color:var(--ink-3);flex-wrap:wrap;align-items:center;font-size:12px;display:flex}.ohm-palette-foot span{align-items:center;gap:6px;display:inline-flex}.ohm-toasts{z-index:var(--z-toast);right:max(16px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));gap:var(--space-2);width:calc(min(380px,100vw - 32px));display:grid;position:fixed}.ohm-toast{gap:var(--space-3);border-radius:var(--radius-md);background:var(--ink);color:var(--surface);box-shadow:var(--shadow-lg);animation:ohm-toast-in var(--dur-slow) var(--ease-out) both;align-items:center;padding:12px 14px;font-size:13px;font-weight:600;display:flex}.ohm-toast .ohm-icon{color:inherit;opacity:.85}.ohm-toast.leaving{animation:ohm-toast-out var(--dur-base) var(--ease-in) both}.nerd-only:not([data-nerd=on] *),[data-nerd=on] .calm-only{display:none!important}.ohm-code{font-family:var(--font-mono);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-3);color:var(--ink-2);white-space:pre;max-height:280px;font-size:12px;line-height:18px;overflow:auto}.ohm-code .k{color:var(--primary-ink)}.ohm-code .s{color:var(--viz-export)}.ohm-code .n{color:var(--viz-solar)}.ohm-reveal>*{animation:ohm-rise var(--dur-slow) var(--ease-out) both}.ohm-reveal>:nth-child(2){animation-delay:40ms}.ohm-reveal>:nth-child(3){animation-delay:80ms}.ohm-reveal>:nth-child(4){animation-delay:.12s}.ohm-reveal>:nth-child(5){animation-delay:.16s}.ohm-reveal>:nth-child(6){animation-delay:.2s}.ohm-reveal>:nth-child(n+7){animation-delay:.24s}.ohm-draw path.line{stroke-dasharray:1;stroke-dashoffset:1px;animation:ohm-draw .9s var(--ease-out) forwards}@keyframes ohm-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes ohm-fade{0%{opacity:0}to{opacity:1}}@keyframes ohm-pop{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:none}}@keyframes ohm-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes ohm-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes ohm-pulse{0%{box-shadow:0 0}70%{box-shadow:0 0 0 6px #0000}to{box-shadow:0 0 #0000}}@keyframes ohm-toast-in{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:none}}@keyframes ohm-toast-out{to{opacity:0;transform:translateY(8px)scale(.98)}}@keyframes ohm-draw{to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.ohm,.ohm *,.ohm :after,.ohm :before{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.ohm-draw path.line{stroke-dashoffset:0}}body,html{height:100%}body{color:var(--ink);font-family:var(--font-sans);margin:0;overflow-x:hidden}body,body:before{background:var(--bg)}body:before{content:"";height:env(safe-area-inset-top,0);z-index:30;pointer-events:none;position:fixed;inset:0 0 auto}#__nuxt{min-height:100%}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.ohm :where(button){-webkit-tap-highlight-color:transparent}.app{min-height:100dvh;transition:grid-template-columns var(--dur-slow) var(--ease-out);grid-template-columns:248px minmax(0,1fr);display:grid}.app.collapsed{grid-template-columns:68px minmax(0,1fr)}.skip-link{z-index:calc(1 + var(--z-toast));border-radius:var(--radius-sm);background:var(--ink);transition:transform var(--dur-fast) var(--ease-out);padding:8px 12px;font-weight:700;position:fixed;top:12px;left:12px;transform:translateY(-160%);color:var(--surface)!important}.skip-link:focus{transform:none}.side{height:100dvh;padding:14px 10px 12px max(10px,env(safe-area-inset-left,0px));background:var(--surface);border-right:1px solid var(--border);z-index:var(--z-nav);flex-direction:column;gap:4px;display:flex;position:sticky;top:0;overflow:hidden}.side-brand{align-items:center;gap:10px;min-height:44px;padding:4px 6px 10px;display:flex}.side-brand img{width:auto;height:26px;display:block}.side-brand img.mark{height:22px}.side-brand .logo-light{display:block}.side-brand .logo-dark,:root[data-theme=dark] .side-brand .logo-light{display:none}:root[data-theme=dark] .side-brand .logo-dark{display:block}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .side-brand .logo-light{display:none}:root:not([data-theme=light]) .side-brand .logo-dark{display:block}}.side-brand .gg-word{letter-spacing:.14em;color:var(--ink);white-space:nowrap;font-size:15px;font-weight:800;line-height:18px}.side-brand .gg-word span{letter-spacing:.24em;color:var(--primary-ink);font-size:9px;font-weight:700;line-height:12px;display:block}.side-brand .gg-mark{background:var(--gridgain-navy);color:#fff;letter-spacing:.04em;border-radius:9px;place-items:center;width:30px;height:30px;font-size:12px;font-weight:800;display:inline-grid}.ws-wrap{position:relative}.ws-switch{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);cursor:pointer;text-align:left;width:100%;color:var(--ink);transition:border-color var(--dur-fast) var(--ease-out);align-items:center;gap:10px;padding:8px;display:flex}.ws-switch:hover{border-color:var(--border-strong)}.ws-switch>.ohm-glyph{--_b:var(--primary);--_c:var(--on-primary)}.ws-switch .txt{min-width:0;overflow:hidden}.ws-switch .t{white-space:nowrap;font-size:13px;font-weight:700;line-height:16px}.ws-switch .s{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.ws-switch .chev{color:var(--ink-3);margin-left:auto}.ws-menu{z-index:5;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);animation:ohm-pop var(--dur-base) var(--ease-out) both;min-width:220px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0}.ws-menu button{border-radius:var(--radius-sm);cursor:pointer;text-align:left;width:100%;color:var(--ink);background:0 0;border:0;align-items:center;gap:10px;padding:8px;display:flex}.ws-menu button:focus-visible,.ws-menu button:hover,.ws-menu button[aria-checked=true]{background:var(--surface-2)}.ws-menu .t{font-size:13px;font-weight:650}.ws-menu .s{color:var(--ink-3);font-size:12px}.nav{scrollbar-width:thin;flex:1;margin:8px -4px 0;padding:0 4px;overflow-y:auto}.nav-sec{margin-top:14px}.nav-sec:first-child{margin-top:4px}.nav-sec>.eyebrow{white-space:nowrap;align-items:center;gap:6px;padding:0 10px 6px;display:flex}.nav-sec>.eyebrow .ws-dot{background:var(--_wc,var(--ink-3));border-radius:50%;width:6px;height:6px}.nav-sec>.eyebrow .ws-dot.smpl{--_wc:var(--lime)}.nav-sec>.eyebrow .ws-dot.gridgain{--_wc:var(--gridgain)}.nav-item{border-radius:var(--radius-sm);height:36px;color:var(--ink-2);cursor:pointer;white-space:nowrap;text-align:left;width:100%;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);background:0 0;border:0;align-items:center;gap:11px;padding:0 10px;font-size:13.5px;font-weight:600;display:flex;position:relative;text-decoration:none!important}.nav-item:hover{background:var(--surface-2);color:var(--ink)}.nav-item[aria-current=page]{background:var(--primary-soft);color:var(--primary-ink)}.nav-item[aria-current=page]:before{content:"";background:var(--primary);width:3px;animation:ohm-fade var(--dur-base) var(--ease-out);border-radius:0 3px 3px 0;position:absolute;top:8px;bottom:8px;left:-10px}.nav-item .lbl{text-overflow:ellipsis;overflow:hidden}.nav-item .badge{border-radius:var(--radius-pill);background:var(--danger);min-width:20px;height:18px;color:var(--surface);font-variant-numeric:tabular-nums;place-items:center;margin-left:auto;padding:0 6px;font-size:11px;font-weight:700;display:grid}.side-foot{border-top:1px solid var(--border);gap:2px;padding-top:8px;display:grid;position:relative}.me{border-radius:var(--radius-sm);text-align:left;cursor:pointer;width:100%;color:var(--ink);background:0 0;border:0;align-items:center;gap:10px;padding:6px 8px;display:flex}.me:hover,.me[aria-expanded=true]{background:var(--surface-2)}.me .txt{min-width:0;overflow:hidden}.me .n{font-size:13px;font-weight:650;line-height:17px}.me .n,.me .r{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.me .r{color:var(--ink-3);font-size:12px;line-height:16px}.avatar{background:var(--primary-soft);width:30px;height:30px;color:var(--primary-ink);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:700;display:grid}.collapsed .me .txt,.collapsed .nav-item .badge,.collapsed .nav-item .lbl,.collapsed .nav-sec>.eyebrow,.collapsed .side-brand .wide,.collapsed .ws-switch .chev,.collapsed .ws-switch .txt,.nav-scrim{display:none}.collapsed .nav-item{justify-content:center;padding:0}.collapsed .ws-switch{justify-content:center;padding:6px}.collapsed .me{justify-content:center;padding:6px 0}.collapsed .nav-sec{border-top:1px solid var(--border);margin-top:10px;padding-top:10px}.collapsed .nav-sec:first-child{border-top:0;padding-top:0}.collapsed .ws-menu{right:auto}.main{flex-direction:column;min-width:0;display:flex}.topbar{top:env(safe-area-inset-top,0);z-index:var(--z-sticky);height:60px;padding:0 max(24px,env(safe-area-inset-right,0px)) 0 20px;background:color-mix(in srgb,var(--bg) 82%,transparent);-webkit-backdrop-filter:saturate(1.4)blur(10px);border-bottom:1px solid var(--border);gap:12px;position:sticky}.crumbs,.topbar,.topbar .tools{align-items:center;display:flex}.crumbs{min-width:0;color:var(--ink-3);white-space:nowrap;gap:6px;font-size:13px;overflow:hidden}.crumbs a{color:var(--ink-2);font-weight:600}.crumbs b{color:var(--ink);text-overflow:ellipsis;font-weight:650;overflow:hidden}.crumbs .sep{color:var(--ink-3);flex:none}.topbar .ohm-search{width:calc(min(440px,38vw));font:inherit;text-align:left;margin-left:auto;font-size:13.5px}.topbar .tools{gap:4px}.lang-btn{width:auto;font-family:var(--font-mono);letter-spacing:.04em;border-color:var(--border);padding:0 9px;font-size:11.5px;font-weight:700}.tool-badge-wrap{position:relative}.tool-badge{border-radius:var(--radius-pill);background:var(--primary);min-width:16px;height:16px;color:var(--on-primary);font:700 10px/1 var(--font-mono);box-shadow:0 0 0 2px var(--bg);pointer-events:none;place-items:center;padding:0 4px;display:grid;position:absolute;top:2px;right:1px}.tool-badge.over{background:var(--danger);color:#fff}.tool-badge.bump{animation:td-bump .36s var(--ease-spring)}@keyframes td-bump{40%{transform:scale(1.35)}}.nerd-toggle{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);height:34px;color:var(--ink-2);cursor:pointer;transition:all var(--dur-base) var(--ease-out);white-space:nowrap;align-items:center;gap:8px;padding:0 10px 0 9px;font-size:12.5px;font-weight:700;display:inline-flex}.nerd-toggle:hover{border-color:var(--border-strong);color:var(--ink)}.nerd-toggle .sw{background:var(--surface-3);width:26px;height:15px;transition:background var(--dur-base) var(--ease-out);border-radius:999px;flex:none;position:relative}.nerd-toggle .sw:after{content:"";background:var(--ink-3);width:11px;height:11px;transition:transform var(--dur-base) var(--ease-spring),background var(--dur-base);border-radius:50%;position:absolute;top:2px;left:2px}.nerd-toggle[aria-pressed=true]{background:var(--ink);color:var(--surface);border-color:#0000}.nerd-toggle[aria-pressed=true] .sw{background:var(--lime)}.nerd-toggle[aria-pressed=true] .sw:after{background:var(--ink);transform:translate(11px)}.app-page{--gutter:calc(clamp(16px, 2vw, 48px));padding:28px max(var(--gutter),env(safe-area-inset-right,0px)) 64px var(--gutter);gap:var(--space-6);max-width:var(--page-max,3200px);flex:1;grid-template-columns:minmax(0,1fr);align-content:start;width:100%;margin:0 auto;display:grid;container:page/inline-size}.app-page:focus{outline:none}.page-head{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.page-head h1{letter-spacing:-.01em;font-size:22px;font-weight:700;line-height:28px}.page-head p{color:var(--ink-3);margin-top:2px}:where(.app-page p){max-inline-size:80ch}.kv dd,.page-head .head-txt,.row,.stack{min-width:0}.page-head .actions{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.grid{gap:var(--space-5);grid-template-columns:minmax(0,1fr);display:grid}.g-4{grid-template-columns:repeat(4,minmax(0,1fr))}.g-3{grid-template-columns:repeat(3,minmax(0,1fr))}.g-2{grid-template-columns:repeat(2,minmax(0,1fr))}.g-main{grid-template-columns:minmax(0,1.75fr) minmax(300px,1fr)}.g-cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr))}.row{align-items:center;gap:10px;display:flex}.row.wrap{flex-wrap:wrap}.spacer{flex:1}.stack{grid-template-columns:minmax(0,1fr);gap:12px}.kv,.stack{display:grid}.kv{grid-template-columns:140px minmax(0,1fr);gap:8px 16px;margin:0;font-size:13px}.kv dt{color:var(--ink-3)}.kv dd{color:var(--ink);overflow-wrap:anywhere;margin:0;font-weight:550}.divider{background:var(--border);height:1px}.link{color:var(--primary-ink);cursor:pointer;font-weight:650;font:inherit;background:0 0;border:0;padding:0}.link:hover{text-underline-offset:3px;text-decoration:underline}.copy{color:var(--ink-3);cursor:pointer;border-radius:var(--radius-xs);vertical-align:middle;background:0 0;border:0;place-items:center;padding:2px;display:inline-grid}.copy:hover{color:var(--ink);background:var(--surface-2)}.copy.done{color:var(--success);animation:copy-pop .32s var(--ease-spring)}@keyframes copy-pop{0%{transform:scale(.6)}to{transform:none}}.sample-note{gap:6px;font-size:12px}.demo-tag,.sample-note{color:var(--ink-3);align-items:center;display:inline-flex}.demo-tag{border:1px dashed var(--border-strong);letter-spacing:.02em;vertical-align:middle;white-space:nowrap;cursor:help;height:18px;font-size:10.5px;font-weight:650;font-family:var(--font-sans);background:0 0;border-radius:999px;flex:none;padding:0 6px;line-height:1}:is(*+.demo-tag,*+.o-tip-anchor:has(>.demo-tag)){margin-left:6px}.hero{gap:18px;padding:22px 24px;display:grid}.hero-top{flex-wrap:wrap;align-items:flex-start;gap:18px;display:flex}.hero h1{letter-spacing:-.02em;font-size:30px;font-weight:750;line-height:36px}.hero .meta{color:var(--ink-2);flex-wrap:wrap;gap:6px 18px;margin-top:6px;font-size:13px;display:flex}.hero .meta span{align-items:center;gap:6px;display:inline-flex}.hero .meta .ohm-icon{width:15px;height:15px;color:var(--ink-3)}.hero .actions{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.hero-stats{border-top:1px solid var(--border);grid-template-columns:repeat(5,minmax(0,1fr));margin:0 -24px -22px;display:grid}.hero-stats>div{border-right:1px solid var(--border);gap:2px;min-width:0;padding:14px 24px;display:grid}.hero-stats>div:last-child{border-right:0}.hero-stats .v{font-variant-numeric:tabular-nums;letter-spacing:-.01em;align-items:baseline;gap:6px;font-size:20px;font-weight:750;display:flex}.hero-stats .l,.hero-stats .v small{color:var(--ink-3);font-size:12px;font-weight:600}.hero-stats .l{align-items:center;gap:6px;display:flex}.flow{width:100%;height:auto;display:block}.flow .node{fill:var(--surface);stroke:var(--border);stroke-width:1px}.flow .lbl{fill:var(--ink-3);font:600 11px var(--font-sans)}.flow .val{fill:var(--ink);font:750 14px var(--font-sans);font-variant-numeric:tabular-nums}.flow .edge{fill:none;stroke:var(--surface-3);stroke-width:3px}.flow .pulse{fill:none;stroke-width:3px;stroke-linecap:round;stroke-dasharray:2 14;animation:1.1s linear infinite flow-dash}.flow .pulse.rev{animation-direction:reverse}@keyframes flow-dash{to{stroke-dashoffset:-16px}}.chart{position:relative}.chart svg{width:100%;height:auto;display:block;overflow:visible}.chart .ax{fill:var(--ink-3);font:500 10.5px var(--font-mono)}.chart .gl{stroke:var(--viz-grid-line);stroke-width:1px}.chart .xh{stroke:var(--ink-3);stroke-width:1px;stroke-dasharray:3 3;opacity:0;transition:opacity var(--dur-fast)}.chart.hov .xh{opacity:1}.chart .tip{pointer-events:none;border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);min-width:170px;box-shadow:var(--shadow-md);opacity:0;transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);z-index:3;padding:9px 11px;font-size:12px;position:absolute;transform:translateY(4px)}.chart.hov .tip{opacity:1;transform:none}.chart .tip .r{align-items:center;gap:8px;display:flex}.chart .tip .r b{font-variant-numeric:tabular-nums;margin-left:auto}.chart .tip i.sw{border-radius:2px;width:10px;height:3px;display:inline-block}.legend{color:var(--ink-2);flex-wrap:wrap;gap:14px;font-size:12px;font-weight:600;display:flex}.legend button,.legend span{cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity var(--dur-fast);align-items:center;gap:6px;display:inline-flex}.legend .off{opacity:.35}.legend i{border-radius:2px;width:14px;height:3px;display:inline-block}.legend i.dash{height:2px;background:repeating-linear-gradient(90deg,currentColor 0 4px,#0000 0 7px)!important}.drawer-scrim{background:var(--overlay);z-index:var(--z-overlay);animation:ohm-fade var(--dur-base) var(--ease-out) both;position:fixed;inset:0}.drawer{z-index:calc(1 + var(--z-overlay));background:var(--surface);border-left:1px solid var(--border);width:calc(min(620px,100vw));box-shadow:var(--shadow-lg);animation:drawer-in var(--dur-slow) var(--ease-out) both;padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0);padding-right:env(safe-area-inset-right,0);outline:none;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0}.drawer.wide{width:calc(min(880px,100vw))}.drawer-head{border-bottom:1px solid var(--border);align-items:center;gap:14px;padding:18px 20px;display:flex}.drawer-head .ttl{flex:1;min-width:0}.drawer-head h2{overflow-wrap:anywhere;font-size:18px;font-weight:750;line-height:24px}.drawer-body{overscroll-behavior:contain;flex:1;align-content:start;gap:18px;padding:20px;display:grid;overflow-y:auto}.drawer-foot{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px;padding:14px 20px;display:flex}.drawer-loading{gap:14px;padding:20px;display:grid}@keyframes drawer-in{0%{opacity:0;transform:translate(32px)}to{opacity:1;transform:none}}@keyframes drawer-out{to{opacity:0;transform:translate(32px)}}.drawer-enter-active{animation:drawer-in var(--dur-slow) var(--ease-out) both}.drawer-leave-active{animation:drawer-out var(--dur-base) var(--ease-in) both}.scrim-enter-active{animation:ohm-fade var(--dur-base) var(--ease-out) both}.scrim-leave-active{transition:opacity .18s var(--ease-in)}.scrim-leave-to{opacity:0}@media (width>=2200px){:root{--drawer-docked:calc(clamp(620px, 26vw, 860px));--drawer-docked-wide:calc(clamp(880px, 34vw, 1100px))}.drawer-scrim.dockable{pointer-events:none;background:0 0}.drawer.dockable{width:var(--drawer-docked);box-shadow:var(--shadow-md)}.drawer.dockable.wide{width:var(--drawer-docked-wide)}.drawer.dockable.swapped{animation:ohm-fade var(--dur-base) var(--ease-out) both}.app{transition:padding-right var(--dur-slow) var(--ease-out),grid-template-columns var(--dur-slow) var(--ease-out)}body.drawer-docked .app{padding-right:var(--drawer-docked)}body.drawer-docked .nerd-dock{right:var(--drawer-docked)}body.drawer-docked-wide .app{padding-right:var(--drawer-docked-wide)}body.drawer-docked-wide .nerd-dock{right:var(--drawer-docked-wide)}}.dialog-scrim{background:var(--overlay);z-index:calc(-1 + var(--z-palette) + 2 * var(--o-layer,0));animation:ohm-fade var(--dur-base) var(--ease-out) both;position:fixed;inset:0}.dialog{z-index:calc(var(--z-palette) + 2 * var(--o-layer,0));background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:calc(min(440px,100vw - 32px));max-height:calc(100dvh - 22vh - 24px);box-shadow:var(--shadow-lg);animation:confirm-in var(--dur-slow) var(--ease-out) both;outline:none;padding:20px;position:fixed;top:22vh;left:50%;overflow:auto;transform:translate(-50%)}.dialog.wide{width:calc(min(640px,100vw - 32px));max-height:calc(100dvh - 12vh - 24px);top:12vh}.dialog.xl{width:calc(min(1240px,100vw - 32px));max-height:calc(100dvh - 32px);top:16px}.dialog h3{font-size:16px;font-weight:750;line-height:22px}.dialog .dialog-body{color:var(--ink-2);margin-top:4px;font-size:13.5px}.dialog .dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:18px;display:flex}@keyframes confirm-in{0%{opacity:0;transform:translate(-50%,-8px)scale(.98)}to{opacity:1;transform:translate(-50%)}}.o-menu{z-index:calc(1 + var(--z-palette) + 2 * var(--o-layer,0));background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);min-width:200px;max-width:calc(min(320px,100vw - 16px));max-height:calc(min(420px,100dvh - 16px));box-shadow:var(--shadow-md);animation:ohm-pop var(--dur-base) var(--ease-out) both;padding:5px;position:fixed;overflow:auto}.o-menu [role=menuitem],.o-menu [role=menuitemcheckbox],.o-menu [role=menuitemradio]{border-radius:var(--radius-xs);width:100%;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:7px 9px;font-size:13px;font-weight:600;text-decoration:none;display:flex}.o-menu [role^=menuitem]:focus-visible,.o-menu [role^=menuitem]:hover{background:var(--surface-2);outline:none}.o-menu [role^=menuitem][aria-checked=true]{color:var(--primary-ink)}.o-menu [role^=menuitem][aria-disabled=true]{opacity:.45;pointer-events:none}.o-menu [role^=menuitem].danger{color:var(--danger)}.o-menu [role^=menuitem] .ohm-icon{width:15px;height:15px;color:var(--ink-3)}.o-menu [role^=menuitem] .d{color:var(--ink-3);margin-left:auto;font-size:11.5px;font-weight:550}.o-menu .sep{background:var(--border);height:1px;margin:5px 4px}.o-menu .grp{padding:8px 9px 4px}.o-tooltip{z-index:calc(1 + var(--z-toast));border-radius:var(--radius-sm);background:var(--ink);max-width:calc(min(300px,100vw - 16px));color:var(--surface);box-shadow:var(--shadow-md);pointer-events:none;animation:ohm-fade var(--dur-fast) var(--ease-out) both;padding:7px 10px;font-size:12px;font-weight:600;line-height:17px;position:fixed}.ohm-toast>span{flex:1;min-width:0}.ohm-toast .act{border-radius:var(--radius-pill);color:inherit;font:750 12px var(--font-sans);cursor:pointer;background:0 0;border:1px solid;flex:none;margin-left:auto;padding:3px 10px}.ohm-toast .act:hover{background:color-mix(in srgb,currentColor 16%,transparent)}.ohm-toast.danger{background:var(--danger);color:#fff}.ohm-toast.info,.ohm-toast.warning{box-shadow:inset 4px 0 0 var(--tone-edge),var(--shadow-lg);padding-left:18px}.ohm-toast.info{--tone-edge:var(--info)}.ohm-toast.warning{--tone-edge:var(--warning)}.steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.step{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);cursor:pointer;text-align:left;color:var(--ink);transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);gap:4px;padding:14px 16px;display:grid;position:relative}.step:hover{border-color:var(--border-strong)}.step[aria-current=step]{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.step .n{color:var(--ink-3);align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.step .n .ck{background:var(--surface-3);width:20px;height:20px;color:var(--ink-2);border-radius:50%;place-items:center;font-size:11px;display:grid}.step.done .n .ck{background:var(--success);color:var(--surface)}.step.warn .n .ck{background:var(--warning);color:var(--surface)}.step .t{color:var(--ink);font-weight:700}.step .s{color:var(--ink-3);font-size:12px}.heat{grid-template-columns:250px repeat(30,minmax(10px,1fr));align-items:center;gap:3px;font-size:12px;display:grid}.heat .c{background:var(--success);opacity:.85;height:18px;transition:transform var(--dur-fast) var(--ease-out);border-radius:3px}.heat .c:hover{transform:scale(1.35)}.heat .c.p{background:var(--warning)}.heat .c.m{background:var(--danger)}.heat .c.f{background:var(--surface-3);opacity:1}.heat .name{white-space:nowrap;text-overflow:ellipsis;color:var(--ink-2);font-weight:600;overflow:hidden}.strat{gap:12px;padding:18px 20px;display:grid}.prec,.strat .uses{flex-wrap:wrap;gap:6px;display:flex}.prec{font-size:12.5px}.merge-item,.prec,.prec .lvl{align-items:center}.prec .lvl{border-radius:var(--radius-pill);background:var(--surface-2);height:28px;color:var(--ink-2);gap:6px;padding:0 10px;font-weight:650;display:inline-flex}.prec .lvl.win{background:var(--primary-soft);color:var(--primary-ink)}.prec .lvl.skip{opacity:.5;text-decoration:line-through}.merge-list{gap:8px;display:grid}.merge-item{border-radius:var(--radius-sm);background:var(--surface-2);gap:12px;padding:10px 12px;font-size:13px;display:flex}.merge-item .old{font-family:var(--font-mono);color:var(--ink-3);font-size:12px}.split{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.split,.split-3{gap:var(--space-5);align-items:start;display:grid}.split-3{grid-template-columns:240px minmax(0,1fr) 320px}.panel-list{gap:2px;padding:8px;display:grid}.panel-list a,.panel-list button{border-radius:var(--radius-sm);width:100%;color:var(--ink-2);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:9px 10px;font-size:13px;font-weight:600;text-decoration:none;display:flex}.panel-list a:hover,.panel-list button:hover{background:var(--surface-2);color:var(--ink)}.panel-list [aria-current=page],.panel-list [aria-current=true]{background:var(--primary-soft);color:var(--primary-ink)}.canvas-bg{background:var(--surface-2);background-image:radial-gradient(var(--border) 1px,transparent 1px);border-radius:var(--radius-md);background-size:16px 16px}.map-view{gap:var(--space-5);grid-template-columns:minmax(0,1fr) clamp(300px,28%,760px);height:calc(max(480px,100dvh - 230px));display:grid}.map-view.solo{grid-template-columns:minmax(0,1fr)}.map-view>.ohm-card,.map-view>.ohm-card>.ohm-card-body{flex-direction:column;min-height:0;display:flex}.map-view>.ohm-card>.ohm-card-body{flex:auto}.map-view .map-fill{flex:1;min-height:0}.map-view .map-list{padding:8px;overflow:auto;container-type:inline-size}.map-list-grid{gap:2px;display:grid}@container (width>=560px){.map-list-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:4px}}.map-row{align-items:center;gap:4px var(--space-3);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease-out);grid-template-columns:auto minmax(0,1fr) auto;padding:10px;display:grid}.map-row:focus-visible,.map-row:hover{background:var(--surface-2)}.map-row .t{color:var(--ink);font-weight:650}.map-row .s,.map-row .t{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.map-row .s{color:var(--ink-3);font-size:12.5px}.map-row .ohm-pill{justify-self:start;margin-top:4px}.map-row .locate{opacity:.55}.map-row .locate:focus-visible,.map-row:hover .locate{opacity:1}.ohm-field{align-content:start}.ohm-table td .mono,.ohm-table td.mono,.ohm-table td.nowrap,.ohm-table td.num{white-space:nowrap}.ohm-table td .ohm-btn+.ohm-btn,.ohm-table td .ohm-btn+.ohm-icon-btn,.ohm-table td .ohm-icon-btn+.ohm-btn,.ohm-table td .ohm-icon-btn+.ohm-icon-btn{margin-left:4px}.ohm-table th .sort{all:unset;cursor:pointer;border-radius:var(--radius-xs);align-items:center;gap:4px;display:inline-flex}.ohm-table th .sort:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.ohm-table th .sort .ohm-icon{opacity:.35;width:12px;height:12px;transition:opacity var(--dur-fast),transform var(--dur-fast)}.ohm-table th[aria-sort=ascending] .sort .ohm-icon,.ohm-table th[aria-sort=descending] .sort .ohm-icon{opacity:1;color:var(--primary-ink)}.ohm-table th[aria-sort=descending] .sort .ohm-icon{transform:rotate(180deg)}.ohm-table th.r .sort{flex-direction:row-reverse}.ohm-table tbody tr.clickable{cursor:pointer}.ohm-table tbody tr.clickable:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.ohm-table td.empty-cell{padding:0}.ohm-table-wrap.scroll-y{overflow-y:auto}.mv{align-items:center;gap:8px;min-width:0;display:flex}.mv .ohm-meter{flex:1;min-width:40px}.mv b{text-align:right;min-width:34px;color:var(--ink-2);font-variant-numeric:tabular-nums;flex:none;font-size:12px;font-weight:650}.setup-card .setup-bar{height:4px;margin:12px var(--space-5) 0;background:var(--surface-3);border-radius:99px;overflow:hidden}.setup-card .setup-bar i{border-radius:inherit;background:var(--primary);height:100%;transition:width var(--dur-slow) var(--ease-out);display:block}.setup-list{padding:8px var(--space-3) var(--space-3);display:grid}.setup-step{border-radius:var(--radius-sm);grid-template-columns:24px auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.setup-step+.setup-step{border-top:1px solid var(--border)}.setup-step .t{color:var(--ink);font-weight:650}.setup-step .s{color:var(--ink-3);margin-top:2px;font-size:12.5px}.setup-step .setup-act{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.setup-n{width:24px;height:24px;font:700 12px/1 var(--font-sans);color:var(--ink-3);border:1.5px solid var(--border-strong);border-radius:50%;place-items:center;display:grid}.setup-step.done .setup-n{background:var(--success);border-color:var(--success);color:#fff}.mq-topics,.setup-step.done .t{color:var(--ink-2)}.mq-empty,.setup-done{align-items:center}.setup-done .ohm-btn{margin-left:auto}.mq{gap:var(--space-4);min-width:0;display:grid}.mq-dot{background:var(--_c,var(--ink-3));border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.mq-dot.info{--_c:var(--info)}.mq-dot.success{--_c:var(--success)}.mq-dot.warning{--_c:var(--warning)}.mq-dot.brand{--_c:var(--primary)}.mq-chips .ohm-chip{gap:6px}.mq-chips .ohm-chip[aria-pressed=false] .mq-dot{opacity:.35}.mq-topics{font-size:12.5px}.mq-topics summary{cursor:pointer;color:var(--ink-3)}.mq-topics .row{gap:8px;min-width:0;margin-top:6px}.mq-topics code{font-family:var(--font-mono);overflow-wrap:anywhere;min-width:0;font-size:11.5px}.mq-list{border:1px solid var(--border);border-radius:var(--radius-md,10px);overscroll-behavior:contain;max-height:420px;overflow-y:auto}.mq-empty{justify-content:center;gap:8px;padding:32px 12px;font-size:13px;display:flex}.mq-row+.mq-row{border-top:1px solid var(--border)}.mq-row{animation:mq-in .26s var(--ease-out) both}@keyframes mq-in{0%{background:color-mix(in srgb,var(--primary) 12%,transparent)}to{background:0 0}}.mq-head{all:unset;box-sizing:border-box;cursor:pointer;grid-template-columns:auto auto auto minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;padding:8px 12px;font-size:12.5px;display:grid}.mq-head:hover{background:var(--surface-2)}.mq-head:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.mq-head>.ohm-icon:last-child{color:var(--ink-3);transition:transform var(--dur-base) var(--ease-out)}.mq-row.open .mq-head>.ohm-icon:last-child{transform:rotate(180deg)}.mq-ch{align-items:center;gap:4px;font-weight:650;display:inline-flex}.mq-ch,.mq-sum{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mq-sum{min-width:0;color:var(--ink-2)}.mq-conf{gap:2px;height:18px;margin-left:4px;font-size:11px}.mq-raw{padding:0 12px 12px}.mq-raw .ohm-code{max-height:260px;margin:0;font-size:11.5px;overflow:auto}.mq-hist{max-height:380px}.mq-hist .mq-head{grid-template-columns:auto minmax(0,8em) auto minmax(0,1fr) auto}.mq-asset{text-overflow:ellipsis;min-width:0;overflow:hidden}.mq-asset,.mq-cmd{white-space:nowrap}@media (width<=560px){.mq-head,.mq-hist .mq-head{grid-template-columns:auto auto minmax(0,1fr) auto}.mq-head .mq-sum{white-space:normal;grid-area:2/1/auto/-1}.mq-head>.ohm-icon:last-child{grid-area:1/-2;justify-self:end}}.cg{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.cg i{border-radius:2px;flex:none;width:9px;height:9px}.cg-list{flex-wrap:wrap;gap:4px 14px;display:flex}.sim-chip{white-space:nowrap;height:22px;color:var(--_c,var(--ink-3));background:var(--_b,var(--surface-2));border-radius:999px;flex:none;align-items:center;gap:4px;padding:0 8px;font-size:11.5px;font-weight:650;display:inline-flex}.sim-chip.success{--_c:var(--success);--_b:var(--success-soft)}.sim-chip.warning{--_c:var(--warning);--_b:var(--warning-soft)}.sim-chip.danger{--_c:var(--danger);--_b:var(--danger-soft)}.sim-chip.info{--_c:var(--info);--_b:var(--info-soft)}.sim-chip.none{font-weight:500}.drawer-head .sim-chip{margin-left:6px}.sim-card{gap:10px;padding:14px;display:grid}.sim-kv{margin:0}[data-nerd=on] .main{padding-bottom:var(--nerd-dock-h,40px)}.nerd-dock{z-index:calc(5 + var(--z-sticky));background:var(--surface);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom,0);animation:dock-in var(--dur-slow) var(--ease-out) both;transition:left var(--dur-slow) var(--ease-out),right var(--dur-slow) var(--ease-out);flex-direction:column;display:flex;position:fixed;bottom:0;left:248px;right:0;box-shadow:0 -8px 24px -12px #00000040}.app.collapsed .nerd-dock{left:68px}@keyframes dock-in{0%{transform:translateY(100%)}to{transform:none}}.nerd-handle{width:100%;height:40px;color:var(--ink);cursor:pointer;white-space:nowrap;background:0 0;border:0;align-items:center;gap:10px;padding:0 16px;font-size:12.5px;display:flex;overflow:hidden}.nerd-handle .mono{font-family:var(--font-mono);text-overflow:ellipsis;min-width:0;font-size:11.5px;overflow:hidden}.nerd-tabs{border-top:1px solid var(--border);scrollbar-width:none;align-items:center;gap:2px;padding:0 12px;display:flex;overflow-x:auto}.nerd-tabs button[role=tab]{height:34px;color:var(--ink-3);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:0 10px;font-size:12.5px;font-weight:650}.nerd-tabs button[role=tab][aria-selected=true]{color:var(--ink);border-bottom-color:var(--lime)}.nerd-tabs .count{font-family:var(--font-mono);color:var(--ink-3);margin-left:4px;font-size:10.5px}.nerd-body{border-top:1px solid var(--border);height:246px;padding:10px 16px 14px;overflow:auto}.nerd-recs{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:12px;display:grid}.nerd-recs .ohm-code{max-height:200px}.nerd-keys{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;font-size:13px;display:grid}.nerd-api{font-family:var(--font-mono);font-size:12px}.nerd-api td{padding:7px var(--space-3)}.nerd-api .bar{background:var(--surface-3);border-radius:3px;min-width:60px;height:6px;position:relative}.nerd-api .bar i{background:var(--primary);border-radius:3px;position:absolute;top:0;bottom:0}.nerd-api .ok{color:var(--success)}.nerd-api .bad{color:var(--danger)}.nerd-api .path{text-overflow:ellipsis;white-space:nowrap;max-width:46ch;overflow:hidden}.ohm-palette-item .ohm-pill{flex:none}.ohm-palette-list .ohm-empty{padding:var(--space-8) var(--space-6)}.ohm-palette-foot .grow{margin-left:auto}.ohm-palette-loading{color:var(--ink-3);align-items:center;gap:8px;padding:6px 10px;font-size:12px;display:flex}.td-pop{z-index:calc(2 + var(--z-overlay));background:var(--surface);width:400px;max-width:calc(100vw - 24px);max-height:calc(min(70vh,680px));color:var(--ink);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);transform-origin:100% 0;animation:td-open var(--dur-base) var(--ease-out) both;flex-direction:column;display:flex;position:fixed;overflow:hidden}@keyframes td-open{0%{opacity:0;transform:translateY(-6px)scale(.97)}to{opacity:1;transform:none}}.td-pop-leave-active{animation:td-close .14s var(--ease-in) both}@keyframes td-close{to{opacity:0;transform:translateY(-4px)scale(.98)}}.td-head{align-items:center;gap:8px;padding:12px 10px 8px 16px;display:flex}.td-head h2{letter-spacing:-.01em;margin:0;font-size:15px;font-weight:750}.td-head .td-n{font:600 11.5px var(--font-mono);color:var(--ink-3)}.td-head .sp{flex:1}.td-head .ohm-icon-btn{width:30px;height:30px}.td-add{padding:0 12px 10px}.td-field{border-radius:var(--radius-md);background:var(--surface-2);border:1px solid var(--border);height:42px;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out);position:relative}.td-field:hover{border-color:var(--border-strong)}.td-field:focus-within{background:var(--surface);border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.td-field>.ohm-icon{width:16px;height:16px;color:var(--ink-3);transition:color var(--dur-fast),transform var(--dur-base) var(--ease-spring);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.td-field.smart>.ohm-icon{color:var(--primary-ink);transform:translateY(-50%)rotate(90deg)}.td-in,.td-mirror{font:500 14px/40px var(--font-sans);letter-spacing:normal;white-space:pre;border:0;margin:0;padding:0;position:absolute;inset:0 40px 0 36px}.td-in{width:calc(100% - 76px);color:var(--ink);z-index:1;background:0 0;outline:none}.ohm .td-edit:focus-visible,.ohm .td-in:focus-visible,.ohm .td-row:focus-visible{outline:none}.td-in::placeholder{color:var(--ink-3);font-weight:450}.td-mirror{color:#0000;pointer-events:none;-webkit-user-select:none;user-select:none;overflow:hidden}.td-mirror mark{color:#0000;background:var(--_h);box-shadow:0 0 0 2px var(--_h);border-radius:4px}.td-field .ohm-kbd{opacity:0;transition:opacity var(--dur-fast);position:absolute;top:50%;right:10px;transform:translateY(-50%)}.td-field.has-text .ohm-kbd{opacity:1}.k-customer{--_h:var(--primary-soft);--_c:var(--primary-ink)}.k-ean{--_h:var(--info-soft);--_c:var(--viz-grid)}.k-box{--_h:color-mix(in srgb, var(--viz-battery) 16%, transparent);--_c:var(--viz-battery)}.k-contract{--_h:var(--gridgain-soft);--_c:var(--gridgain)}.k-invoice{--_h:var(--warning-soft);--_c:var(--warning)}.k-date{--_h:color-mix(in srgb, var(--lime) 26%, transparent);--_c:var(--lime-ink)}.k-prio{--_h:var(--danger-soft);--_c:var(--danger)}.k-assignee{--_h:var(--surface-3);--_c:var(--ink-2)}.k-miss{--_h:transparent;--_c:var(--ink-3)}.td-det{flex-wrap:wrap;gap:6px;min-height:0;padding-top:8px;display:flex}.td-det:empty{display:none}.td-chip{border-radius:var(--radius-pill);background:var(--_h);max-width:100%;height:24px;color:var(--_c);font:650 12px/1 var(--font-sans);white-space:nowrap;animation:td-chip var(--dur-base) var(--ease-spring) both;border:0;align-items:center;gap:5px;padding:0 4px 0 8px;display:inline-flex}.td-chip .ohm-icon{flex:none;width:13px;height:13px}.td-chip .l{text-overflow:ellipsis;max-width:210px;overflow:hidden}.td-chip .s{opacity:.75;font-weight:550}.td-chip button{width:18px;height:18px;color:inherit;cursor:pointer;opacity:.6;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.td-chip button:focus-visible,.td-chip button:hover{opacity:1;background:color-mix(in srgb,currentColor 14%,transparent)}.td-chip button .ohm-icon{width:11px;height:11px}.td-chip.k-miss{border:1px dashed var(--border-strong);padding-right:8px}.td-chip.sug{border:1px dashed color-mix(in srgb,var(--_c) 55%,transparent);cursor:pointer;background:0 0;padding:0 9px 0 7px;font-weight:600}.td-chip.sug:focus-visible,.td-chip.sug:hover{background:var(--_h)}.td-chip.off{opacity:.45;text-decoration:line-through}@keyframes td-chip{0%{opacity:0;transform:scale(.85)}}.td-hint{color:var(--ink-3);align-items:flex-start;gap:8px;padding-top:8px;font-size:12px;line-height:17px;display:flex}.td-hint .ohm-icon{width:14px;height:14px;color:var(--primary-ink);flex:none;margin-top:1px}.td-hint b{color:var(--ink-2);font-weight:650}.td-amb{color:var(--warning);align-items:center;gap:6px;padding-top:6px;font-size:11.5px;display:flex}.td-amb .ohm-icon{flex:none;width:13px;height:13px}.td-filters{border-top:1px solid var(--border);border-bottom:1px solid var(--border);scrollbar-width:none;flex:none;gap:6px;padding:8px 12px;display:flex;overflow-x:auto}.td-filters .ohm-chip{flex:none;height:26px;padding:0 10px;font-size:12px}.td-filters .ohm-chip[disabled]{opacity:.45;cursor:default}.td-list{overscroll-behavior:contain;flex:auto;min-height:60px;padding:4px 6px 10px;position:relative;overflow:auto}.td-grp{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);align-items:center;gap:6px;padding:12px 10px 4px;font-size:11px;font-weight:750;display:flex}.td-grp .n{font:600 11px var(--font-mono);letter-spacing:0}.td-grp.over{color:var(--danger)}button.td-grp{cursor:pointer;text-align:left;border-radius:var(--radius-sm);background:0 0;border:0;width:100%}button.td-grp:hover{color:var(--ink-2)}button.td-grp .ohm-icon{width:13px;height:13px;transition:transform var(--dur-base) var(--ease-out)}button.td-grp[aria-expanded=true] .ohm-icon{transform:rotate(90deg)}.td-row{border-radius:var(--radius-sm);transition:background var(--dur-fast) var(--ease-out),opacity .26s var(--ease-out),transform .26s var(--ease-out);outline:none;grid-template-columns:28px minmax(0,1fr) auto;align-items:start;gap:0 6px;padding:8px 6px;display:grid;position:relative}.td-row:hover{background:var(--surface-2)}.td-row:focus-visible{box-shadow:inset 0 0 0 2px var(--focus)}.td-row.prio:before{content:"";background:var(--danger);border-radius:3px;width:3px;position:absolute;top:10px;bottom:10px;left:0}.td-row.fresh{animation:ohm-rise var(--dur-slow) var(--ease-out) both}.td-row.gone{opacity:0;transform:translate(10px)}.td-check{border:1.5px solid var(--border-strong);background:var(--surface);cursor:pointer;width:20px;height:20px;transition:background var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out);border-radius:50%;place-items:center;margin:0 0 0 2px;padding:0;display:grid}.td-check:hover{border-color:var(--success);background:var(--success-soft)}.td-check:active{transform:scale(.88)}.td-row.prio .td-check{border-color:var(--danger)}.td-check svg{width:12px;height:12px}.td-check path{fill:none;stroke:#fff;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:20;stroke-dashoffset:20px;transition:stroke-dashoffset .24s var(--ease-out) 60ms}.td-check[aria-checked=true]{background:var(--success);border-color:var(--success);animation:td-pop .32s var(--ease-spring)}.td-check[aria-checked=true] path{stroke-dashoffset:0}.td-check:hover path{stroke:var(--success);stroke-dashoffset:0}.td-check[aria-checked=true]:hover path{stroke:#fff}@keyframes td-pop{50%{transform:scale(1.18)}}.td-main{min-width:0}.td-title{color:var(--ink);overflow-wrap:anywhere;transition:color .24s var(--ease-out),background-size .3s var(--ease-out);background:linear-gradient(currentColor,currentColor) 0 55%/0 1.5px no-repeat;font-size:13.5px;font-weight:600;line-height:20px}.td-row.checking .td-title,.td-row.done .td-title{color:var(--ink-3);background-size:100% 1.5px}.td-row.done .td-meta{opacity:.7}.td-meta{flex-wrap:wrap;align-items:center;gap:4px;margin-top:4px;display:flex}.td-meta:empty{display:none}.td-due,.td-pri,.td-who{border-radius:var(--radius-pill);white-space:nowrap;background:var(--surface-2);height:20px;color:var(--ink-2);align-items:center;gap:4px;padding:0 7px;font-size:11.5px;font-weight:650;display:inline-flex}.td-row:hover .td-due,.td-row:hover .td-who{background:var(--surface-3)}.td-due .ohm-icon,.td-pri .ohm-icon,.td-who .ohm-icon{width:12px;height:12px}.td-due.over{background:var(--danger-soft);color:var(--danger)}.td-due.today{background:color-mix(in srgb,var(--lime) 26%,transparent);color:var(--lime-ink)}.td-pri{background:var(--danger-soft);color:var(--danger);padding:0 6px}.td-link{border-radius:var(--radius-pill);cursor:pointer;background:var(--_h);max-width:100%;height:20px;color:var(--_c);font:650 11.5px/1 var(--font-sans);white-space:nowrap;transition:filter var(--dur-fast),transform var(--dur-fast);border:0;align-items:center;gap:4px;padding:0 7px 0 6px;display:inline-flex}.td-link .ohm-icon{flex:none;width:12px;height:12px}.td-link span{text-overflow:ellipsis;max-width:170px;overflow:hidden}.td-link:hover{filter:saturate(1.4)brightness(.97)}.td-link:active{transform:scale(.95)}.td-acts{opacity:0;transition:opacity var(--dur-fast);gap:0;display:flex}.td-row.menu-open .td-acts,.td-row:focus-within .td-acts,.td-row:hover .td-acts{opacity:1}.td-acts button{border-radius:var(--radius-xs);width:28px;height:28px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.td-acts button:hover{background:var(--surface-3);color:var(--ink)}.td-acts button.del:hover{background:var(--danger-soft);color:var(--danger)}.td-acts .ohm-icon{width:15px;height:15px}@media (hover:none){.td-acts{opacity:1}}.td-edit{border-radius:var(--radius-sm);border:1px solid var(--primary);width:100%;height:30px;box-shadow:0 0 0 3px var(--primary-soft);color:var(--ink);font:600 13.5px var(--font-sans);outline:none;padding:0 8px}.td-edit,.td-menu{background:var(--surface)}.td-menu{z-index:3;border:1px solid var(--border);border-radius:var(--radius-md);min-width:200px;box-shadow:var(--shadow-md);animation:ohm-pop var(--dur-base) var(--ease-out) both;padding:5px;position:absolute}.td-menu button{border-radius:var(--radius-xs);width:100%;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:7px 9px;font-size:13px;font-weight:600;display:flex}.td-menu button:focus-visible,.td-menu button:hover{background:var(--surface-2);outline:none}.td-menu button .d{color:var(--ink-3);margin-left:auto;font-size:11.5px;font-weight:550}.td-menu .ohm-icon{width:15px;height:15px;color:var(--ink-3)}.td-menu input{border-radius:var(--radius-xs);border:1px solid var(--border);background:var(--surface-2);width:100%;height:32px;color:var(--ink);font:500 13px var(--font-sans);margin-top:4px;padding:0 8px}.td-empty{text-align:center;color:var(--ink-2);justify-items:center;gap:6px;padding:26px 18px 18px;font-size:12.5px;line-height:18px;display:grid}.td-empty h4{color:var(--ink);margin:0;font-size:14px;font-weight:750}.td-empty .ohm-glyph{margin-bottom:4px}.td-ex{gap:6px;width:100%;margin-top:8px;display:grid}.td-ex button{text-align:left;border-radius:var(--radius-sm);border:1px dashed var(--border-strong);background:var(--surface);color:var(--ink-2);font:550 12.5px var(--font-sans);cursor:pointer;transition:border-color var(--dur-fast),background var(--dur-fast),color var(--dur-fast);align-items:center;gap:8px;padding:8px 10px;display:flex}.td-ex button:focus-visible,.td-ex button:hover{border-style:solid;border-color:var(--primary);background:var(--primary-soft);color:var(--ink);outline:none}.td-ex .ohm-icon{width:14px;height:14px;color:var(--primary-ink);flex:none}.td-foot{border-top:1px solid var(--border);color:var(--ink-3);flex-wrap:wrap;flex:none;align-items:center;gap:6px 10px;padding:8px 14px;font-size:11.5px;display:flex}.td-foot .sp{flex:1}.td-foot .keys{align-items:center;gap:4px;display:inline-flex}.td-foot .keys .ohm-kbd{min-width:16px;padding:0 4px;font-size:10px;line-height:14px}.td-foot .demo-tag{margin:0}.td-foot pre{width:100%;max-height:calc(min(120px,22vh));margin:4px 0 0;font-size:11px;overflow:auto}.err-page{background:var(--bg);place-items:center;min-height:100dvh;padding:24px 16px;display:grid}.err-card{justify-items:start;gap:14px;width:min(520px,100%);padding:32px 28px;display:grid}.err-card .code{font-family:var(--font-mono);color:var(--ink-3);letter-spacing:.06em;font-size:13px;font-weight:700}.err-card h1{letter-spacing:-.01em;font-size:24px;font-weight:750;line-height:30px}.err-card p{color:var(--ink-2)}.err-card .actions{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}@container page (width>=1800px){.g-main{grid-template-columns:minmax(0,2.2fr) minmax(380px,1fr)}.split-3{grid-template-columns:280px minmax(0,1fr) 400px}}@container page (width>=2600px){.g-main{grid-template-columns:minmax(0,2.6fr) minmax(440px,1fr)}.split-3{grid-template-columns:320px minmax(0,1fr) 460px}}@container page (width<=1100px){.split-3{grid-template-columns:200px minmax(0,1fr)}.split-3>:last-child{grid-column:1/-1}}@container page (width<=900px){.g-4{grid-template-columns:repeat(2,minmax(0,1fr))}.g-main{grid-template-columns:minmax(0,1fr)}.g-3{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-stats,.steps{grid-template-columns:repeat(3,minmax(0,1fr))}}@container page (width<=760px){.map-view{grid-template-columns:minmax(0,1fr);height:auto}.map-view>.ohm-card:not(.map-list){height:62dvh}.map-view .map-list{max-height:520px}}@container page (width<=640px){.g-2,.g-3,.g-4,.split,.split-3{grid-template-columns:minmax(0,1fr)}.hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.kv,.steps{grid-template-columns:minmax(0,1fr)}.kv{gap:2px 0}.kv dd{margin-bottom:8px}.heat{grid-template-columns:110px repeat(30,minmax(4px,1fr));gap:2px}.page-head .actions{width:100%;margin-left:0}.setup-step{grid-template-columns:24px minmax(0,1fr)}.setup-step .ohm-glyph{display:none}.setup-step .setup-act{grid-column:2;justify-content:flex-start}}.only-mobile{display:none}@media (width<=820px){.app,.app.collapsed{grid-template-columns:minmax(0,1fr)}.side{width:264px;transition:transform var(--dur-slow) var(--ease-out),visibility 0s linear var(--dur-slow);box-shadow:var(--shadow-lg);z-index:calc(3 + var(--z-overlay));visibility:hidden;position:fixed;top:0;left:0;transform:translate(-100%)}.app.nav-open .side{visibility:visible;transition:transform var(--dur-slow) var(--ease-out);transform:none}.app.nav-open .nav-scrim{z-index:calc(2 + var(--z-overlay));background:var(--overlay);animation:ohm-fade var(--dur-base) var(--ease-out) both;display:block;position:fixed;inset:0}.collapsed .side .me .txt,.collapsed .side .nav-item .lbl,.collapsed .side .nav-sec>.eyebrow,.collapsed .side .side-brand .wide,.collapsed .side .ws-switch .chev,.collapsed .side .ws-switch .txt{display:revert}.collapsed .side .nav-item{justify-content:flex-start;padding:0 10px}.collapsed .side .ws-switch{justify-content:flex-start;padding:8px}.collapsed .side .me{justify-content:flex-start;padding:6px 8px}.crumbs,.side .collapse-btn,.topbar .ohm-search .ohm-kbd,.topbar .ohm-search .ph{display:none}.topbar{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));gap:8px}.topbar .ohm-search{flex:1;width:auto}.app-page{padding:20px max(16px,env(safe-area-inset-right,0px)) 48px max(16px,env(safe-area-inset-left,0px))}.only-mobile{display:inline-grid}.only-desktop{display:none!important}.nerd-toggle .lbl{display:none}.app.collapsed .nerd-dock,.nerd-dock{left:0}}@media (width<=600px){.td-pop{border-radius:0 0 var(--radius-lg) var(--radius-lg);width:auto;max-width:none;max-height:calc(100dvh - 24px - var(--_top,60px));transform-origin:top;border-left:0;border-right:0;left:0!important;right:0!important}.ohm-palette-input input,.td-in,.td-mirror{font-size:16px}.td-foot .keys{display:none}.td-chip .l{max-width:150px}}@media (width<=420px){.topbar .tools{gap:0}.topbar .tools .ohm-icon-btn{width:32px}}@media (prefers-reduced-motion:reduce){.drawer,.drawer-enter-active,.drawer-leave-active,.mq-row,.nerd-dock,.td-check[aria-checked=true],.td-chip,.td-pop,.td-row.fresh,.tool-badge.bump{animation:none!important}.app,.side,.td-check,.td-check path,.td-field>.ohm-icon,.td-row,.td-title{transition:none!important}}.o-glyph-img[data-v-5d9e08b3]{border:1px solid var(--border);background:#fff;overflow:hidden}.o-glyph-img img[data-v-5d9e08b3]{-o-object-fit:contain;object-fit:contain;width:78%;height:78%}.ohm-btn.busy[data-v-74fc74bf]{cursor:progress}.spin[data-v-74fc74bf]{animation:.9s linear infinite o-spin-74fc74bf}@keyframes o-spin-74fc74bf{to{transform:rotate(1turn)}}a.ohm-btn[data-v-74fc74bf]{text-decoration:none}a.ohm-btn.primary[data-v-74fc74bf]{color:var(--on-primary)}a.ohm-btn[data-v-74fc74bf]:not(.primary){color:var(--_fg)}
