.os-lines.astro-lhymv6ux{width:100%;height:100%;position:absolute;inset:0}.os-line.astro-lhymv6ux{fill:none;stroke:var(--color-highlight);stroke-width:1.2px;stroke-dasharray:1;stroke-dashoffset:1px;opacity:.7;transition:stroke-dashoffset .7s var(--ease-out), opacity .4s ease}.os-line.astro-lhymv6ux.on{stroke-dashoffset:0}.os-tool.astro-lhymv6ux{top:var(--y);left:var(--x);opacity:0;font-size:clamp(8px,1.8cqw,13px);transition:opacity .4s;position:absolute;transform:translate(-50%,-50%)}.os-tool.astro-lhymv6ux.on{opacity:1}.os-tool__chip.astro-lhymv6ux{white-space:nowrap;color:var(--color-on-ink);background:var(--color-ink-raised);border:1px solid var(--color-ink-line-strong);transition:transform .8s var(--ease-io), opacity .6s ease .2s;border-radius:6px;align-items:center;gap:.45em;padding:.5em .75em;display:inline-flex}.os-tool__chip.astro-lhymv6ux .icon{color:var(--color-highlight)}.os-tool__chip.astro-lhymv6ux.on{transform:translate(var(--dx), var(--dy)) scale(.3);opacity:0}.os-hub.astro-lhymv6ux{width:3.2cqw;height:3.2cqw;transition:transform .6s var(--ease-out);place-items:center;display:grid;position:absolute;top:52%;left:50%;transform:translate(-50%,-50%)scale(0)}.os-hub.astro-lhymv6ux.on{transform:translate(-50%,-50%)scale(1)}.os-hub__dot.astro-lhymv6ux{background:var(--color-highlight);width:100%;height:100%;box-shadow:0 0 0 .8cqw color-mix(in srgb, var(--color-highlight) 25%, transparent);border-radius:50%}.os-app.astro-lhymv6ux{width:64%;color:var(--color-on-paper);background:var(--color-paper-card);box-shadow:var(--shadow-window);opacity:0;transition:opacity .4s ease, transform .8s var(--ease-out);border-radius:6px;font-size:clamp(8px,1.8cqw,13px);position:absolute;top:52%;left:50%;overflow:hidden;transform:translate(-50%,-50%)scale(.2)}.os-app.astro-lhymv6ux.on{opacity:1;transform:translate(-50%,-50%)scale(1)}.os-app__bar.astro-lhymv6ux{border-bottom:1px solid var(--color-paper-line);justify-content:space-between;align-items:center;padding:.75em 1em;display:flex}.os-app__name.astro-lhymv6ux{font-weight:600}.os-app__live.astro-lhymv6ux{font-family:var(--font-mono);color:var(--color-on-paper-muted);align-items:center;gap:.4em;font-size:.78em;display:inline-flex}.os-app__live.astro-lhymv6ux:before{content:"";background:var(--color-success);border-radius:50%;width:.5em;height:.5em}.os-roles.astro-lhymv6ux{height:12em;padding-top:2.6em;position:relative}.os-tab.astro-lhymv6ux{top:.6em;left:calc(1em + var(--slot) * 6em);color:var(--color-on-paper-muted);border-radius:999px;padding:.3em .75em;font-size:.9em;transition:background-color .3s,color .3s;position:absolute}.os-role.astro-lhymv6ux.is-current .os-tab.astro-lhymv6ux{color:var(--color-accent-contrast);background:var(--color-accent-on-paper)}.os-pane.astro-lhymv6ux{opacity:0;transition:opacity .15s,transform .2s;position:absolute;top:2.9em;left:1em;right:1em;transform:translateY(6px)}.os-role.astro-lhymv6ux.is-current .os-pane.astro-lhymv6ux{opacity:1;transition:opacity .35s ease .18s, transform .45s var(--ease-out) .18s;transform:none}.os-pane--kpis.astro-lhymv6ux{grid-template-columns:repeat(3,1fr);gap:.6em;display:grid}.os-pane--kpis.astro-lhymv6ux .os-item.astro-lhymv6ux{background:var(--color-paper);border-radius:4px;flex-direction:column-reverse;gap:.2em;padding:.8em;display:flex}.os-pane--kpis.astro-lhymv6ux .os-v.astro-lhymv6ux{letter-spacing:-.03em;font-size:1.8em;line-height:1}.os-pane--kpis.astro-lhymv6ux .os-k.astro-lhymv6ux{color:var(--color-on-paper-muted);font-size:.85em}.os-pane--list.astro-lhymv6ux .os-item.astro-lhymv6ux,.os-pane--checks.astro-lhymv6ux .os-item.astro-lhymv6ux{border-bottom:1px solid var(--color-paper-line);align-items:center;gap:.7em;padding:.75em .2em;display:flex}.os-pane--list.astro-lhymv6ux .os-v.astro-lhymv6ux{background:var(--color-paper-raised);border-radius:999px;margin-left:auto;padding:.15em .55em;font-size:.85em}.os-box.astro-lhymv6ux{border:1.5px solid var(--color-paper-line-strong);border-radius:3px;flex:none;width:1em;height:1em}.os-box--done.astro-lhymv6ux{background:var(--color-accent-on-paper);border-color:var(--color-accent-on-paper);box-shadow:inset 0 0 0 2px var(--color-paper-card)}
