@layer shell{.vios-cluster-host{display:contents}.vios-cluster{z-index:var(--vios-layer-chrome);grid-template-areas:". .up""tool row main";grid-template-columns:auto auto var(--vios-chat-size);place-items:end;gap:var(--vios-cluster-gap);pointer-events:none;transition:inset-inline-end var(--vitaris-spring-panel-dur) var(--vitaris-spring-panel);display:grid;position:fixed;inset-block-start:var(--vios-cluster-anchor-top);inset-block-end:var(--vios-cluster-anchor-bottom);inset-inline-end:calc(max(var(--vios-edge), env(safe-area-inset-right)) + var(--vios-open-dock-width))}.vios-shell[data-resizing] .vios-cluster{transition:none}.vios-cluster-row{align-items:center;gap:var(--vios-cluster-gap);grid-area:row;padding-block-end:calc((var(--vios-chat-size) - var(--vios-orb-size)) / 2);display:flex}.vios-cluster-tool{block-size:var(--vios-chat-size);pointer-events:none;transition:translate var(--vitaris-spring-control-dur) var(--vitaris-spring-control);grid-area:tool;align-items:center;display:grid}.vios-cluster:not([data-open]) .vios-cluster-tool{translate:calc(var(--vios-cluster-count) * (var(--vios-orb-size) + var(--vios-cluster-gap))) 0;transition-duration:var(--vitaris-duration-exit);transition-timing-function:var(--vitaris-ease-exit)}.vios-cluster-up{grid-area:up}.vios-cluster-orb{inline-size:var(--vios-orb-size);block-size:var(--vios-orb-size);border-radius:var(--vitaris-radius-full);color:var(--vitaris-ink);cursor:pointer;pointer-events:auto;--vios-glass-radius:var(--vitaris-radius-full);--vios-icon-local:var(--vios-icon-lg);scale:calc(1 + var(--vios-press) * var(--vitaris-press-grow));transition:scale var(--vitaris-spring-control-dur) var(--vitaris-spring-control), translate var(--vitaris-spring-control-dur) var(--vitaris-spring-control), box-shadow var(--vitaris-duration-fast) var(--vitaris-ease), --vios-press var(--vitaris-spring-control-dur) var(--vitaris-spring-control), --vios-glass-lift var(--vitaris-spring-control-dur) var(--vitaris-spring-control);background:0 0;border:0;place-items:center;padding:0;display:grid;position:relative}.vios-cluster-orb:hover{--vios-glass-lift:var(--vitaris-glass-lift)}.vios-cluster-orb:active{--vios-press:1;transition-duration:var(--vitaris-spring-interactive-dur);transition-timing-function:var(--vitaris-spring-interactive)}.vios-cluster-main,.vios-chat-trigger{inline-size:var(--vios-chat-size);block-size:var(--vios-chat-size)}.vios-cluster-main{--vios-icon-local:var(--vitaris-space-6);grid-area:main}.vios-cluster-main>svg{transition:rotate var(--vitaris-spring-control-dur) var(--vitaris-spring-control)}.vios-cluster[data-open] .vios-cluster-main>svg{rotate:-90deg}.vios-cluster-orb:focus-visible{outline-offset:var(--vitaris-focus-offset)}.vios-cluster-row>.vios-cluster-orb{--vios-i:1}.vios-cluster-row>.vios-cluster-orb:nth-last-of-type(2){--vios-i:2}.vios-cluster-row>.vios-cluster-orb:nth-last-of-type(3){--vios-i:3}.vios-cluster-row>.vios-cluster-orb:nth-last-of-type(4){--vios-i:4}.vios-cluster:not([data-open]) .vios-cluster-row>.vios-cluster-orb{scale:0;translate:calc(var(--vios-i) * (var(--vios-orb-size) + var(--vios-cluster-gap))) 0;transition:scale var(--vitaris-duration-exit) var(--vitaris-ease-exit), translate var(--vitaris-duration-exit) var(--vitaris-ease-exit)}.vios-cluster[data-open] .vios-cluster-row>.vios-cluster-orb{transition-delay:calc(var(--vios-i) * var(--vitaris-stagger))}.vios-cluster:not([data-open]):not([data-mobile]) .vios-cluster-up>.vios-cluster-orb{scale:0;translate:0 calc(var(--vios-chat-size) + var(--vios-cluster-gap));transition:scale var(--vitaris-duration-exit) var(--vitaris-ease-exit), translate var(--vitaris-duration-exit) var(--vitaris-ease-exit)}.vios-cluster-orb[data-active]{box-shadow:0 0 0 var(--vitaris-focus-width) var(--vitaris-accent), var(--vitaris-orb-shadow)}.vios-cluster[data-dragging] .vios-cluster-orb[data-shell-drop]{scale:var(--vitaris-drag-lift)}.vios-cluster-orb:is([data-drop-over],[data-agenda-over]){z-index:1;scale:calc(var(--vitaris-drag-lift) * var(--vitaris-drag-lift) * var(--vitaris-drag-lift));box-shadow:0 0 0 var(--vitaris-focus-width) var(--vitaris-hue-violet), var(--vitaris-orb-shadow)}.vios-cluster-hint{padding:var(--vitaris-space-1) var(--vitaris-space-2);border-radius:var(--vitaris-radius-full);background:var(--vitaris-raised);box-shadow:var(--vitaris-shadow-sm);color:var(--vitaris-ink);font-size:var(--vitaris-text-xs);font-weight:var(--vitaris-weight-medium);white-space:nowrap;pointer-events:none;position:absolute;inset-block-end:calc(100% + var(--vitaris-space-2));inset-inline-end:0}.vios-chat-trigger .vios-cluster-hint{inset-block:50% auto;inset-inline-end:calc(100% + var(--vitaris-space-2));translate:0 -50%}.vios-cluster-orb:is([data-drop-over],[data-agenda-over]) .vios-cluster-hint{background:var(--vitaris-hue-violet);color:var(--vitaris-ink-inverse)}.vios-cluster-toolbox{anchor-name:--vios-toolbox-anchor}.vios-cluster-badge{min-inline-size:var(--vios-badge-size);block-size:var(--vios-badge-size);padding-inline:var(--vitaris-space-1);border-radius:var(--vitaris-radius-full);background:var(--vitaris-accent-fill);color:var(--vitaris-accent-on);font-size:var(--vitaris-text-xs);font-weight:var(--vitaris-weight-strong);line-height:var(--vios-badge-size);text-align:center;font-variant-numeric:tabular-nums;position:absolute;inset-block-start:calc(-1 * var(--vitaris-space-1));inset-inline-end:calc(-1 * var(--vitaris-space-1))}.vios-cluster-agent{place-items:center;display:grid}.vios-cluster-ring{inset:calc(-1 * var(--vitaris-space-1));border:var(--vitaris-spinner-stroke) solid transparent;border-block-start-color:var(--vitaris-hue-violet);border-inline-end-color:var(--vitaris-hue-violet);border-radius:var(--vitaris-radius-full);pointer-events:none;animation:vitaris-spin var(--vitaris-duration-spin) var(--vitaris-ease-constant) infinite;position:absolute}.vios-chat-alert:after{content:"";inline-size:var(--vios-alert-dot);block-size:var(--vios-alert-dot);border-radius:var(--vitaris-radius-full);background:var(--vitaris-hue-violet);box-shadow:0 0 0 var(--vitaris-focus-width) var(--vitaris-ground);position:absolute;inset-block-start:var(--vitaris-space-1);inset-inline-end:var(--vitaris-space-1)}.vios-shell[data-mobile-surface] .vios-cluster{visibility:hidden}.vios-shell:has([data-tool-fullscreen]) .vios-cluster{visibility:hidden}@media (prefers-reduced-motion:reduce){.vios-cluster-ring{animation:none}}.vios-compact-access{z-index:35;position:fixed;inset-block-start:max(var(--vitaris-space-2), env(safe-area-inset-top));inset-inline-end:var(--vios-edge)}.vios-compact-access>button{min-inline-size:var(--vitaris-responsive-control-size);min-block-size:var(--vitaris-responsive-control-size)}.vios-shell[data-layout=mobile] .vios-cluster-host{display:none}}
@layer a11y{:where(input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=button],[type=submit],[type=reset],[type=image],[type=color]),textarea,[contenteditable=true],[contenteditable=plaintext-only]):focus{box-shadow:none;caret-color:var(--vitaris-accent);border-color:#0000;outline:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-property:opacity,color,background-color,border-color,fill,stroke!important;transition-duration:var(--vitaris-duration-fast)!important;animation:none!important}:focus-visible,:focus-visible:before,:focus-visible:after{transition:none!important}}}
@layer tokens,base,material,primitives,components,shell,a11y;
