.aiva-agent-chat {
    --assistant-panel-bg: var(--assistant-panel-shell-bg, var(--shell-menu-bg));
    --assistant-panel-raised-bg: var(--assistant-panel-content-bg, var(--shell-bg-active));
    --assistant-panel-hover-bg: var(--shell-menu-item-hover, var(--settings-control-hover-bg));
    --assistant-panel-border: var(--assistant-border, var(--shell-border));
    --assistant-panel-text: var(--shell-text-primary);
    --assistant-panel-muted: var(--shell-text-secondary);
    --assistant-panel-soft: var(--shell-menu-text, var(--shell-text-tertiary));
    --aiva-code-keyword: #a855f7;
    --aiva-code-type: #2563eb;
    --aiva-code-string: #16803d;
    --aiva-code-comment: #6b7280;
    --aiva-code-number: #b45309;

    display: flex;
    position: relative;
    min-height: 0;
    height: 100%;
    flex-direction: column;
    overflow: hidden;
    background: var(--shell-bg-surface);
    color: var(--assistant-panel-text);
}

[data-app-theme="light"] .aiva-agent-chat,
[data-app-theme="pure-light"] .aiva-agent-chat {
    --assistant-user-message-bg: var(--shell-bg-button);
    --assistant-user-message-shadow: var(--shell-shadow);
}

@media (prefers-color-scheme: light) {
    [data-app-theme="system"] .aiva-agent-chat {
        --assistant-user-message-bg: var(--shell-bg-button);
        --assistant-user-message-shadow: var(--shell-shadow);
    }
}

.aiva-session-breadcrumbs {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    max-width: 100%;
    gap: 3px;
}

.aiva-session-breadcrumbs__item {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    min-width: 0;
    max-width: 100%;
    height: 28px;
    color: var(--page-breadcrumbs-muted-color, var(--shell-text-secondary));
    text-decoration: none;
    border-radius: 6px;
}

.aiva-session-breadcrumbs__item--link {
    transition-property: color, background-color;
    transition-duration: 0.15s;
}

.aiva-session-breadcrumbs__item--action {
    appearance: none;
    margin: 0;
    padding: 0;
    border: 0;
    background: none;
    font: inherit;
    text-align: inherit;
    cursor: inherit;
}

.aiva-session-breadcrumbs__item--action.aiva-session-breadcrumbs__item--link:not(:disabled) {
    cursor: pointer;
}

.aiva-session-breadcrumbs__item--action:disabled {
    opacity: 1;
    cursor: default;
}

.aiva-session-breadcrumbs__item--action:focus-visible {
    outline: 2px solid var(--shell-focus-ring, currentColor);
    outline-offset: 1px;
}

.aiva-session-breadcrumbs__item--link:hover,
.aiva-session-breadcrumbs__item--link:focus-visible {
    color: var(--page-breadcrumbs-current-color, var(--shell-text-primary));
}

.aiva-session-breadcrumbs__item--current {
    color: var(--page-breadcrumbs-current-color, var(--shell-text-primary));
}

.aiva-session-breadcrumbs__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    color: var(--aiva-session-breadcrumb-icon-color, currentColor);
}

.aiva-session-breadcrumbs__text {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.8125rem;
    font-weight: 500;
    line-height: 0.96875rem;
    letter-spacing: 0;
}

.aiva-session-breadcrumbs__separator {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 15px;
    color: var(--page-breadcrumbs-muted-color, var(--shell-text-secondary));
    font-size: 0.8125rem;
    font-weight: 500;
    line-height: 0.96875rem;
    letter-spacing: 0;
}

/* Mobile: keep only the session name crumb in the title trail. */
@media (max-width: 640px) {
    .aiva-session-breadcrumbs__item:not([data-breadcrumb-id="session"]),
    .aiva-session-breadcrumbs__separator {
        display: none;
    }

    /*
     * iOS Safari zooms the page when a focused text control is under 16px.
     * That zoom is what feels like double-scroll / sideways overflow on session.
     */
    .aiva-agent-chat .assistant-composer__editor,
    .aiva-agent-chat .assistant-composer__editor.ProseMirror {
        font-size: 16px;
        line-height: 1.35;
    }

    /*
     * Phone shell: desktop surface is inset with asymmetric margins
     * (left 0 / right 8) that look intentionally "offset" once the sidebar
     * is an overlay. Full-bleed + dynamic viewport height keeps the session
     * frame centered and sized to the visible iOS viewport.
     *
     * When aiva-mobile-viewport.js is active it writes --aiva-vv-height /
     * --aiva-vv-offset-top from VisualViewport so the shell *resizes* above
     * the keyboard instead of the browser scrolling the page.
     */
    .app-shell {
        position: fixed;
        top: var(--aiva-vv-offset-top, 0px);
        left: 0;
        right: 0;
        width: 100%;
        height: var(--aiva-vv-height, 100dvh);
        min-height: var(--aiva-vv-height, 100dvh);
        max-height: var(--aiva-vv-height, 100dvh);
        overflow: hidden;
    }

    .app-shell__main-column {
        width: 100%;
        height: 100%;
        min-height: 0;
        max-height: 100%;
        overflow: hidden;
    }

    .app-shell__surface-wrap {
        min-height: 0;
        flex: 1 1 auto;
        max-height: 100%;
    }

    .app-shell__surface {
        margin: 0;
        border-radius: 0;
        border-left: 0;
        border-right: 0;
        max-height: 100%;
    }

    /* While the keyboard is open, drop home-indicator padding so the
       composer sits flush against the keyboard top. */
    html.aiva-vv-keyboard-open .aiva-agent-chat__composer-wrap {
        padding-bottom: 8px;
    }

    /* Transcript is the only intentional scroller; kill accidental horizontal pan. */
    .aiva-agent-chat__messages {
        overflow-x: hidden;
        overflow-y: auto;
        /* stable gutter reserves a strip that looks like a horizontal offset on iOS. */
        scrollbar-gutter: auto;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
    }

    .aiva-agent-chat,
    .aiva-agent-chat__transcript-host {
        overflow: hidden;
        overscroll-behavior: none;
    }

    .aiva-agent-chat__composer-wrap {
        /* Safe area for home indicator when the keyboard is closed. */
        padding-bottom: max(12px, env(safe-area-inset-bottom, 0px));
        padding-left: max(12px, env(safe-area-inset-left, 0px));
        padding-right: max(12px, env(safe-area-inset-right, 0px));
    }
}

.aiva-agent-chat__messages {
    flex: 1 1 auto;
    width: 100%;
    height: auto;
    min-height: 0;
    margin: 0;
    padding: 20px clamp(12px, 1.7vw, 24px) 22px;
    overflow-x: hidden;
    overflow-y: auto;
    overflow-anchor: none;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
}

.aiva-agent-chat__bottom-sentinel {
    width: 100%;
    height: 1px;
    flex: 0 0 1px;
    overflow-anchor: none;
}

.aiva-agent-chat__transcript-host {
    position: relative;
    display: flex;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
    overflow: hidden;
}

.aiva-agent-chat__transcript-host[data-transcript-restored="false"] .aiva-agent-chat__messages,
.aiva-agent-chat__transcript-host[data-transcript-restored="false"] .aiva-agent-chat__history-actions,
.aiva-agent-chat__transcript-host[data-transcript-restored="false"] .aiva-agent-chat__turn-rail,
.aiva-agent-chat__transcript-host[data-transcript-restored="false"] .aiva-agent-chat__scroll-to-bottom {
    visibility: hidden;
}

.aiva-agent-chat__turn-rail {
    position: absolute;
    z-index: 3;
    top: 24px;
    bottom: 24px;
    left: 0;
    display: none;
    width: 44px;
    align-items: center;
    pointer-events: auto;
}

.aiva-agent-chat__transcript-host[data-aiva-turn-rail-enabled="true"] .aiva-agent-chat__turn-rail {
    display: flex;
}

.aiva-agent-chat__turn-rail-list {
    position: relative;
    width: 44px;
    height: min(var(--aiva-turn-rail-natural-height, 12px), 100%);
}

.aiva-agent-chat__turn-rail-marker {
    position: absolute;
    top: var(--aiva-turn-rail-position, 50%);
    left: 0;
    width: 44px;
    height: 12px;
    margin: 0;
    padding: 0;
    transform: translateY(-50%);
    border: 0;
    outline: none;
    background: transparent;
    color: inherit;
    cursor: pointer;
}

.aiva-agent-chat__turn-rail-marker:focus-visible {
    outline: 1px solid color-mix(in srgb, var(--assistant-panel-text) 72%, transparent);
    outline-offset: 2px;
    border-radius: 3px;
}

.aiva-agent-chat__turn-rail-nub {
    --aiva-turn-rail-scale: var(--aiva-turn-rail-rest-scale, 0.16);
    --aiva-turn-rail-color-weight: 0%;
    --aiva-turn-rail-opacity: 0.64;

    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    width: 25px;
    height: 1.5px;
    transform: translateY(-50%) scaleX(var(--aiva-turn-rail-scale));
    transform-origin: left center;
    border-radius: 999px;
    background: var(--assistant-panel-muted);
    background: color-mix(
        in srgb,
        var(--assistant-panel-text) var(--aiva-turn-rail-color-weight),
        var(--assistant-panel-muted));
    opacity: var(--aiva-turn-rail-opacity);
    pointer-events: none;
    transition:
        transform 180ms cubic-bezier(0.25, 1, 0.4, 1),
        background-color 180ms ease,
        opacity 180ms ease;
}

.aiva-agent-chat__turn-rail-preview {
    box-sizing: border-box;
    position: fixed;
    z-index: 8;
    top: 12px;
    left: 12px;
    display: grid;
    width: fit-content;
    max-width: min(392px, calc(100vw - 24px));
    min-width: 0;
    padding: 0;
    transform: translateX(-10px) scale(0.97);
    transform-origin: left center;
    visibility: hidden;
    overflow: hidden;
    border: 0.5px solid var(--shell-menu-border, var(--shell-border));
    border-radius: 10px;
    background: var(--shell-menu-bg, var(--shell-bg-surface));
    color: var(--shell-menu-text, var(--shell-text-primary));
    box-shadow: var(--shell-menu-shadow, 0 4px 4px -1px lch(0% 0 0 / 0.04), 0 1px 1px 0 lch(0% 0 0 / 0.08));
    opacity: 0;
    pointer-events: none;
    transition:
        opacity 160ms ease,
        transform 200ms cubic-bezier(0.3, 1.2, 0.4, 1),
        top 220ms cubic-bezier(0.25, 1, 0.4, 1),
        visibility 0s linear 200ms;
}

.aiva-agent-chat__turn-rail-preview[data-visible="true"] {
    transform: translateX(0) scale(1);
    visibility: visible;
    opacity: 1;
    transition-delay: 0s;
}

.aiva-agent-chat__turn-rail-preview-prompt {
    min-width: 0;
    overflow: hidden;
    padding: 10px 12px 9px;
    color: var(--shell-menu-text-strong, var(--shell-menu-text, var(--shell-text-primary)));
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-agent-chat__turn-rail-preview-response {
    min-width: 0;
    padding: 9px 12px 10px;
    border-top: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
    color: var(--shell-menu-text-muted, var(--shell-text-secondary));
    font-size: 0.8125rem;
    font-weight: 450;
    line-height: 1.25rem;
}

.aiva-agent-chat__turn-rail-preview-response-text {
    display: -webkit-box;
    overflow: hidden;
    overflow-wrap: anywhere;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.aiva-agent-chat__turn-rail-preview[data-has-response="false"] .aiva-agent-chat__turn-rail-preview-response {
    display: none;
}

@media (prefers-reduced-motion: reduce) {
    .aiva-agent-chat__turn-rail-nub,
    .aiva-agent-chat__turn-rail-preview {
        transition: none;
    }
}

.aiva-sidebar-hover-card {
    box-sizing: border-box;
    position: fixed;
    z-index: 8;
    top: 12px;
    left: 12px;
    display: grid;
    width: max-content;
    min-width: 180px;
    max-width: min(520px, calc(100vw - 24px));
    padding: 0;
    transform: translateX(-10px) scale(0.97);
    transform-origin: left center;
    visibility: hidden;
    overflow: hidden;
    border: 0.5px solid var(--shell-menu-border, var(--shell-border));
    border-radius: 10px;
    background: var(--shell-menu-bg, var(--shell-bg-surface));
    color: var(--shell-menu-text, var(--shell-text-primary));
    box-shadow: var(--shell-menu-shadow, 0 4px 4px -1px lch(0% 0 0 / 0.04), 0 1px 1px 0 lch(0% 0 0 / 0.08));
    opacity: 0;
    pointer-events: none;
    transition:
        opacity 160ms ease,
        transform 200ms cubic-bezier(0.3, 1.2, 0.4, 1),
        top 220ms cubic-bezier(0.25, 1, 0.4, 1),
        visibility 0s linear 200ms;
}

.aiva-sidebar-hover-card[data-visible="true"] {
    transform: translateX(0) scale(1);
    visibility: visible;
    opacity: 1;
    transition-delay: 0s;
}

.aiva-sidebar-hover-card[data-placement="left"] {
    transform-origin: right center;
}

.aiva-sidebar-hover-card[data-placement="left"]:not([data-visible="true"]) {
    transform: translateX(10px) scale(0.97);
}

.aiva-sidebar-hover-card [hidden] {
    display: none !important;
}

.aiva-sidebar-hover-card__header {
    display: flex;
    min-width: 0;
    max-width: 100%;
    align-items: center;
    gap: 7px;
    padding: 10px 12px;
}

.aiva-sidebar-hover-card__branch-icon {
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    color: var(--shell-menu-hint, var(--shell-text-secondary));
}

.aiva-sidebar-hover-card__branch {
    min-width: 0;
    flex: 1;
    overflow: hidden;
    color: var(--shell-menu-text-strong, var(--shell-menu-text, var(--shell-text-primary)));
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-sidebar-hover-card__counts {
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    gap: 6px;
}

.aiva-sidebar-hover-card__count {
    display: inline-flex;
    align-items: center;
    font-size: 0.8125rem;
    font-weight: 620;
    line-height: 1;
    font-variant-numeric: tabular-nums;
}

.aiva-sidebar-hover-card__count--deleted {
    color: var(--code-review-removed-text, rgb(185, 28, 28));
}

.aiva-sidebar-hover-card__count--added {
    color: var(--code-review-added-text, rgb(22, 163, 74));
}

.aiva-sidebar-hover-card__rolling {
    height: 1em;
    overflow: hidden;
}

.aiva-sidebar-hover-card__rolling-digit {
    position: relative;
    width: 0.62em;
    height: 1em;
    overflow: hidden;
}

.aiva-sidebar-hover-card__rolling-strip {
    position: absolute;
    inset: 0 auto auto 0;
    display: flex;
    flex-direction: column;
    transform: translateY(calc(var(--to, 0) * -1em));
    will-change: transform;
}

.aiva-sidebar-hover-card__rolling-digit--animate .aiva-sidebar-hover-card__rolling-strip {
    animation: aiva-session-cash-register-roll var(--duration, 360ms) cubic-bezier(.16, .98, .28, 1.04) both;
}

.aiva-sidebar-hover-card__rolling-strip span {
    height: 1em;
}

.aiva-sidebar-hover-card__pills {
    display: flex;
    min-width: 0;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    padding: 9px 12px 10px;
    border-top: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-sidebar-hover-card__pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 2px 8px;
    border: 0.5px solid var(--shell-menu-border, var(--shell-border));
    border-radius: 999px;
    background: color-mix(in srgb, var(--shell-menu-border, var(--shell-border)) 18%, transparent);
    color: var(--shell-menu-text, var(--shell-text-primary));
    font-size: 0.75rem;
    font-weight: 540;
    line-height: 1.125rem;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

.aiva-sidebar-hover-card__pill svg {
    color: var(--shell-menu-hint, var(--shell-text-secondary));
}

.aiva-sidebar-hover-card__pill--live {
    border-color: color-mix(in srgb, var(--shell-accent, #5e6ad2) 55%, var(--shell-menu-border, var(--shell-border)));
}

.aiva-sidebar-hover-card__pill--live svg {
    color: var(--shell-accent, #5e6ad2);
    animation: aiva-sidebar-hover-card-pill-pulse 1.6s ease-in-out infinite;
}

.aiva-sidebar-hover-card__right-pills {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-left: auto;
}

.aiva-sidebar-hover-card__right-pills[hidden] {
    display: none;
}

.aiva-sidebar-hover-card__plan-items {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
    margin: 0;
    padding: 8px 6px;
    list-style: none;
    border-top: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-sidebar-hover-card__plan-item {
    display: grid;
    grid-template-columns: 16px minmax(0, 1fr);
    min-height: 24px;
    align-items: center;
    gap: 8px;
    padding: 2px 6px;
    border-radius: 6px;
    color: var(--shell-menu-text, var(--shell-text-primary));
    font-size: 0.8125rem;
    font-weight: 450;
    line-height: 1.125rem;
}

.aiva-sidebar-hover-card__plan-item--done {
    color: var(--shell-menu-hint, var(--shell-text-secondary));
}

.aiva-sidebar-hover-card__plan-item-icon {
    display: inline-flex;
    width: 16px;
    height: 16px;
    align-items: center;
    justify-content: center;
    color: var(--shell-menu-hint, var(--shell-text-secondary));
}

.aiva-sidebar-hover-card__plan-item--done .aiva-sidebar-hover-card__plan-item-icon {
    color: var(--shell-success-text, #4fb56f);
}

.aiva-sidebar-hover-card__plan-item-text {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-sidebar-hover-card__plan-item--more .aiva-sidebar-hover-card__plan-item-text {
    grid-column: 2;
    color: var(--shell-menu-hint, var(--shell-text-secondary));
}

.aiva-sidebar-hover-card__plan-item-spinner {
    box-sizing: border-box;
    width: 12px;
    height: 12px;
    border: 2px solid color-mix(in srgb, currentColor 24%, transparent);
    border-top-color: currentColor;
    border-radius: 9999px;
    animation: aiva-session-plan-spinner 0.72s linear infinite;
}

.aiva-sidebar-hover-card__turn-spinner {
    box-sizing: border-box;
    width: 11px;
    height: 11px;
    flex-shrink: 0;
    border: 2px solid color-mix(in srgb, currentColor 24%, transparent);
    border-top-color: currentColor;
    border-radius: 9999px;
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    animation: aiva-session-plan-spinner 0.72s linear infinite;
}

.aiva-sidebar-hover-card__pill--live .aiva-sidebar-hover-card__turn-spinner {
    color: var(--shell-accent, #5e6ad2);
}

@keyframes aiva-sidebar-hover-card-pill-pulse {
    0%, 100% {
        opacity: 1;
    }

    50% {
        opacity: 0.35;
    }
}

@media (prefers-reduced-motion: reduce) {
    .aiva-sidebar-hover-card {
        transition: none;
    }

    .aiva-sidebar-hover-card__pill--live svg {
        animation: none;
    }

    .aiva-sidebar-hover-card__plan-item-spinner {
        animation: none;
    }

    .aiva-sidebar-hover-card__turn-spinner {
        animation: none;
    }

    .aiva-sidebar-hover-card__rolling-digit--animate .aiva-sidebar-hover-card__rolling-strip {
        animation: none;
    }
}

.aiva-fleet-tab {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: 0;
    margin: -8px -8px -8px;
}

.aiva-fleet-toolbar {
    position: absolute;
    z-index: 2;
    bottom: 12px;
    left: 12px;
    display: flex;
    align-items: center;
    gap: 0;
    padding: 4px;
    border: 0.5px solid var(--shell-border);
    border-radius: 10px;
    background: color-mix(in srgb, var(--shell-menu-bg, var(--shell-bg-surface)) 88%, transparent);
    backdrop-filter: blur(8px);
}

.aiva-fleet-toolbar__filter {
    min-width: 0;
}

.aiva-fleet-toolbar__filter + .aiva-fleet-toolbar__filter {
    margin-left: 2px;
    padding-left: 4px;
    border-left: 0.5px solid var(--shell-menu-divider, var(--shell-border));
}

.aiva-fleet-toolbar .settings-select__trigger {
    margin: 0;
    border-color: transparent;
    background-color: transparent;
}

.aiva-fleet-toolbar .settings-select__trigger:hover:not(:disabled),
.aiva-fleet-toolbar .settings-select__trigger:focus-visible {
    border-color: transparent;
    background-color: color-mix(in srgb, var(--shell-border) 30%, transparent);
}

.aiva-fleet {
    position: relative;
    flex: 1 1 auto;
    min-height: 460px;
    overflow: hidden;
    background-color: var(--shell-bg-surface, transparent);
    background-image: radial-gradient(
        circle,
        color-mix(in srgb, var(--shell-text-secondary, #8b8b8b) 16%, transparent) 1px,
        transparent 1px);
    background-size: 22px 22px;
    cursor: grab;
    touch-action: none;
}

.aiva-fleet--panning {
    cursor: grabbing;
}

.aiva-fleet__world {
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: 0 0;
    will-change: transform;
}

.aiva-fleet__canvas {
    position: relative;
}

.aiva-fleet__edges {
    position: absolute;
    inset: 0;
    overflow: visible;
    pointer-events: none;
}

.aiva-fleet__edge {
    fill: none;
    stroke: var(--shell-border);
    stroke-width: 1.5;
}

.aiva-fleet__node {
    position: absolute;
    width: 475px;
}

.aiva-fleet-card {
    display: block;
    overflow: hidden;
    border: 0.5px solid var(--shell-menu-border, var(--shell-border));
    border-radius: 10px;
    background: var(--shell-menu-bg, var(--shell-bg-surface));
    color: var(--shell-menu-text, var(--shell-text-primary));
    box-shadow: var(--shell-menu-shadow, 0 4px 4px -1px lch(0% 0 0 / 0.04), 0 1px 1px 0 lch(0% 0 0 / 0.08));
    text-decoration: none;
    cursor: pointer;
    transition: border-color 120ms ease;
}

.aiva-fleet-card:hover {
    border-color: var(--shell-accent, #5e6ad2);
}

.aiva-fleet-card--connector {
    border-style: dashed;
    opacity: 0.6;
}

.aiva-fleet-card__title {
    display: block;
    overflow: hidden;
    padding: 10px 12px 0;
    color: var(--shell-menu-text-strong, var(--shell-menu-text, var(--shell-text-primary)));
    font-size: 0.8125rem;
    font-weight: 640;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-fleet-card .aiva-sidebar-hover-card__header {
    padding-top: 4px;
}

.aiva-fleet-card .aiva-sidebar-hover-card__plan-items {
    padding-top: 2px;
}

.aiva-fleet__controls {
    position: absolute;
    z-index: 2;
    right: 12px;
    bottom: 12px;
    display: flex;
    gap: 6px;
}

.aiva-fleet__control {
    display: inline-flex;
    width: 28px;
    height: 28px;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: var(--shell-menu-bg, var(--shell-bg-surface));
    color: var(--shell-text-secondary);
    cursor: pointer;
}

.aiva-fleet__control:hover {
    border-color: var(--shell-accent, #5e6ad2);
    color: var(--shell-text-primary);
}

.aiva-agent-chat__transcript-loading {
    position: absolute;
    inset: 0;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
}

.aiva-agent-chat__transcript-loading-spinner {
    box-sizing: border-box;
    width: 20px;
    height: 20px;
    border: 2px solid color-mix(in srgb, currentColor 24%, transparent);
    border-top-color: currentColor;
    border-radius: 9999px;
    animation: aiva-session-plan-spinner 0.72s linear infinite;
}

.aiva-panel-loading {
    display: flex;
    box-sizing: border-box;
    min-width: 0;
    min-height: 0;
    width: 100%;
    height: 100%;
    flex: 1 1 auto;
    align-items: center;
    justify-content: center;
    align-self: stretch;
    color: var(--shell-text-secondary, currentColor);
}

.aiva-panel-loading--compact {
    height: auto;
    min-height: 4.5rem;
    flex: 0 0 auto;
    padding: 1.5rem 0;
}

.aiva-panel-loading__spinner {
    box-sizing: border-box;
    width: 20px;
    height: 20px;
    border: 2px solid color-mix(in srgb, currentColor 24%, transparent);
    border-top-color: currentColor;
    border-radius: 9999px;
    animation: aiva-session-plan-spinner 0.72s linear infinite;
}

.aiva-panel-loading--compact .aiva-panel-loading__spinner {
    width: 16px;
    height: 16px;
}

.aiva-panel-loading__sidebar-spinner {
    margin-right: 0;
}

@media (prefers-reduced-motion: reduce) {
    .aiva-panel-loading__spinner,
    .aiva-agent-chat__transcript-loading-spinner {
        animation: none;
    }
}

.aiva-agent-chat__history-actions {
    position: absolute;
    z-index: 4;
    top: 10px;
    left: 50%;
    display: none;
    transform: translateX(-50%);
    justify-content: center;
    pointer-events: auto;
}

.aiva-agent-chat__transcript-host[data-transcript-can-scroll="true"][data-transcript-at-top="true"] .aiva-agent-chat__history-actions {
    display: flex;
}

.aiva-agent-chat__scroll-to-bottom {
    position: absolute;
    z-index: 4;
    right: max(22px, calc((100% - 900px) / 2 + 22px));
    bottom: 16px;
    display: none;
    box-shadow: 0 6px 18px color-mix(in srgb, #000 16%, transparent);
}

.aiva-agent-chat__transcript-host[data-transcript-can-scroll="true"][data-transcript-near-bottom="false"] .aiva-agent-chat__scroll-to-bottom {
    display: inline-flex;
}

.aiva-agent-chat__composer-wrap {
    --shell-menu-text-danger: var(--shell-danger-text, #ef4444);
    position: relative;
    z-index: 2;
    padding: 0 16px 16px;
    background: var(--shell-bg-surface);
}

.aiva-agent-chat__input-stack {
    display: flex;
    min-height: 0;
    flex: 0 0 auto;
    flex-direction: column;
}

.aiva-agent-chat__composer-wrap .aiva-agent-chat__composer {
    width: 100%;
    max-width: 900px;
    margin-inline: auto;
}

.aiva-orchestration-page__main {
    min-width: 0;
    min-height: 0;
    gap: 16px;
    overflow: hidden;
}

.aiva-orchestration-page__main > .metric-strip {
    flex: 0 0 auto;
}

.aiva-orchestration-table {
    min-width: 0;
    min-height: 0;
    flex: 1 1 auto;
}

.aiva-orchestration-table.settings-table--fill .settings-table__section {
    flex: 0 0 auto;
}

.aiva-orchestration-filter-trigger {
    display: inline-flex;
    height: 28px;
    align-items: center;
    gap: 6px;
    padding: 0 9px;
    border: 0.5px solid var(--shell-border);
    border-radius: 6px;
    background: var(--shell-bg-surface);
    color: var(--shell-text-secondary);
    font: inherit;
    font-size: 0.75rem;
    white-space: nowrap;
    cursor: pointer;
}

.aiva-orchestration-filter-trigger:hover,
.aiva-orchestration-filter-trigger[data-open="true"] {
    border-color: var(--shell-border-strong);
    background: var(--shell-bg-hover);
    color: var(--shell-text-primary);
}

.aiva-orchestration-filter-trigger:focus-visible {
    outline: 2px solid color-mix(in srgb, var(--shell-accent) 35%, transparent);
    outline-offset: 1px;
}

.aiva-orchestration-table__elapsed {
    color: var(--shell-text-tertiary);
    font-family: var(--shell-font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
    font-size: 0.6875rem;
}

.aiva-orchestration-detail {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 8px;
    padding-bottom: 12px;
}

.aiva-orchestration-detail__summary-panel .detail-sidebar-panel__header {
    align-items: flex-start;
}

.aiva-orchestration-detail__card-heading {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 3px;
    padding: 0 6px;
}

.aiva-orchestration-detail__card-heading h2 {
    margin: 5px 0 0;
    color: var(--shell-text-primary);
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.3;
}

.aiva-orchestration-detail__card-heading p {
    margin: 0;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    line-height: 1.45;
}

.aiva-orchestration-detail__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin-top: 12px;
    padding: 12px 0 0;
    border-top: 0.5px solid var(--shell-border);
}

.aiva-orchestration-detail__context {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.aiva-orchestration-detail__context-heading {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
}

.aiva-orchestration-detail__context-heading strong {
    color: var(--shell-text-primary);
    font-weight: 600;
    font-variant-numeric: tabular-nums;
}

.aiva-orchestration-detail__timeline {
    display: flex;
    flex-direction: column;
}

@media (max-width: 720px) {
    .aiva-orchestration-page__main {
        gap: 12px;
    }

    .aiva-orchestration-filter-trigger span {
        display: none;
    }
}

.aiva-automations-page__main {
    min-width: 0;
    min-height: 0;
    gap: 16px;
    overflow: hidden;
}

.aiva-automations-page__main > .metric-strip {
    flex: 0 0 auto;
}

.aiva-automations-table {
    min-width: 0;
    min-height: 0;
    flex: 1 1 auto;
}

.aiva-automations-table.settings-table--fill .settings-table__section {
    flex: 0 0 auto;
}

.aiva-automations-table .settings-table__empty.empty-state-block--centered {
    align-items: center;
}

.aiva-automations-filter-trigger {
    display: inline-flex;
    height: 28px;
    align-items: center;
    gap: 6px;
    padding: 0 9px;
    border: 0.5px solid var(--shell-border);
    border-radius: 6px;
    background: var(--shell-bg-surface);
    color: var(--shell-text-secondary);
    font: inherit;
    font-size: 0.75rem;
    white-space: nowrap;
    cursor: pointer;
}

.aiva-automations-filter-trigger:hover,
.aiva-automations-filter-trigger[data-open="true"] {
    border-color: var(--shell-border-strong);
    background: var(--shell-bg-hover);
    color: var(--shell-text-primary);
}

.aiva-automations-filter-trigger:focus-visible {
    outline: 2px solid color-mix(in srgb, var(--shell-accent) 35%, transparent);
    outline-offset: 1px;
}

.aiva-automations-table__run-time {
    color: var(--shell-text-tertiary);
    font-size: 0.75rem;
}

.aiva-automation-detail {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 8px;
    padding-bottom: 12px;
}

.aiva-automation-detail__summary-panel .detail-sidebar-panel__header {
    align-items: flex-start;
}

.aiva-automation-detail__card-heading {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 3px;
    padding: 0 6px;
}

.aiva-automation-detail__card-heading h2 {
    margin: 5px 0 0;
    color: var(--shell-text-primary);
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.3;
}

.aiva-automation-detail__card-heading p {
    margin: 0;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    line-height: 1.45;
}

.aiva-automation-detail__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin-top: 12px;
    padding: 12px 0 0;
    border-top: 0.5px solid var(--shell-border);
}

.aiva-automation-detail__prompt,
.aiva-automation-detail__output {
    margin: 0;
    padding: 10px;
    border: 0.5px solid var(--shell-border);
    border-radius: 6px;
    background: var(--shell-bg-hover);
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    line-height: 1.45;
}

.aiva-automation-detail__output {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 8px;
}

.aiva-automation-detail__output > div {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
}

.aiva-automation-detail__output strong {
    color: var(--shell-text-primary);
    font-weight: 600;
}

.aiva-automation-detail__output p {
    margin: 0;
}

.aiva-automation-detail__output a,
.aiva-automation-detail__link {
    color: var(--shell-accent);
    text-decoration: none;
}

.aiva-automation-detail__output a:hover,
.aiva-automation-detail__link:hover {
    text-decoration: underline;
}

.aiva-automation-detail__runs {
    display: flex;
    flex-direction: column;
}

.aiva-automation-detail__duration {
    color: var(--shell-text-tertiary);
    font-family: var(--shell-font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
    font-size: 0.6875rem;
}

@media (max-width: 720px) {
    .aiva-automations-page__main {
        gap: 12px;
    }

    .aiva-automations-filter-trigger span {
        display: none;
    }
}

.aiva-agent-chat__queue {
    display: flex;
    position: relative;
    z-index: 1;
    width: calc(100% - 40px);
    min-width: 0;
    max-width: 880px;
    max-height: min(176px, 28vh);
    margin: 0 auto;
    flex-direction: column;
    overflow-x: hidden;
    overflow-y: auto;
    border: 0.5px solid var(--assistant-composer-border, var(--assistant-panel-border));
    border-bottom: 0;
    border-radius: 7px 7px 0 0;
    background: var(--assistant-composer-bg, var(--assistant-panel-raised-bg));
    color: var(--assistant-panel-muted);
    box-shadow: var(--assistant-user-message-shadow, 0 0 0 0 transparent);
}

.aiva-agent-chat__queue::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.aiva-agent-chat__queue {
    scrollbar-width: none;
}

.aiva-agent-chat__queue-item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    flex: 0 0 auto;
    min-height: 34px;
    min-width: 0;
    align-items: flex-start;
    gap: 10px;
    padding: 8px 10px;
    border-bottom: 0.5px solid var(--assistant-composer-border, var(--assistant-panel-border));
    font-size: 0.8125rem;
    line-height: 1.2;
    cursor: grab;
    transition: opacity 0.12s ease, background-color 0.12s ease;
}

.aiva-agent-chat__queue-item:last-child {
    border-bottom: 0;
}

.aiva-agent-chat__queue-item:hover {
    background: color-mix(in srgb, var(--assistant-panel-hover-bg) 68%, transparent);
}

.aiva-agent-chat__queue-item--dragging {
    opacity: 0.48;
}

.aiva-agent-chat__queue-item[draggable="false"] {
    cursor: default;
}

.aiva-agent-chat__queue-label,
.aiva-agent-chat__queue-actions {
    min-width: 0;
    align-items: center;
}

.aiva-agent-chat__queue-label {
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: flex-start;
    color: var(--assistant-panel-muted);
    font-weight: 500;
    line-height: 1.25rem;
}

.aiva-agent-chat__queue-notice {
    display: block;
    color: var(--assistant-panel-muted);
    font-size: 0.6875rem;
    font-weight: 400;
    line-height: 1rem;
    opacity: 0.82;
}

.aiva-agent-chat__queue-text {
    display: block;
    width: 100%;
    min-width: 0;
    overflow-wrap: anywhere;
    white-space: normal;
}

.aiva-agent-chat__queue-actions {
    display: inline-flex;
    flex: 0 0 auto;
    gap: 5px;
    margin-top: -1px;
}

.aiva-agent-chat__queue-actions button {
    cursor: var(--pointer, pointer);
}

.aiva-agent-chat__queue-icon {
    color: var(--assistant-panel-muted);
    opacity: 0.84;
}

.aiva-agent-chat__queue-icon:hover,
.aiva-agent-chat__queue-icon:focus-visible {
    color: var(--assistant-panel-text);
    opacity: 1;
}

.aiva-agent-chat .aiva-agent-chat__composer {
    --message-composer-min-editor-height: 41.6px;
    width: 100%;
    padding: 8px 6px;
}

.aiva-agent-chat .aiva-agent-chat__composer[data-file-dragging="true"] {
    box-shadow:
        inset 0 0 0 1px var(--shell-accent, #5e6ad2),
        var(--assistant-user-message-shadow, 0 0 0 0 transparent);
}

.aiva-agent-chat .aiva-agent-chat__composer .assistant-composer__editor-row {
    padding: 4px 8px;
}

.aiva-agent-chat .aiva-agent-chat__composer .assistant-composer__action-row {
    margin-top: 9px;
    padding: 0 8px 0 4px;
}

.aiva-agent-chat__composer-controls {
    display: inline-flex;
    min-width: 0;
    align-items: center;
    gap: 2px;
    overflow: visible;
}

.aiva-agent-chat__composer-menu-anchor {
    position: relative;
    display: inline-flex;
    min-width: 0;
}

/* Qui positions and hides only level-1 submenus, so the composer's third level needs these rules until Qui handles arbitrary depth. */
.aiva-agent-chat__composer-menu-anchor .shell-dropdown-menu[data-menu-level="2"] {
    top: auto;
    bottom: -6.5px;
    left: calc(100% + 3px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: none;
}

.aiva-agent-chat__composer-menu-anchor .shell-dropdown-menu[data-menu-level="2"].shell-dropdown-menu--visible,
.aiva-agent-chat__composer-menu-anchor .shell-dropdown-menu__row--has-children:hover > .shell-dropdown-menu[data-menu-level="2"],
.aiva-agent-chat__composer-menu-anchor .shell-dropdown-menu__row--has-children:focus-within > .shell-dropdown-menu[data-menu-level="2"],
.aiva-agent-chat__composer-menu-anchor .shell-dropdown-menu__row--hovered > .shell-dropdown-menu[data-menu-level="2"],
.aiva-agent-chat__composer-menu-anchor .shell-dropdown-menu__item--has-children:hover + .shell-dropdown-menu[data-menu-level="2"],
.aiva-agent-chat__composer-menu-anchor .shell-dropdown-menu__item--has-children:focus + .shell-dropdown-menu[data-menu-level="2"],
.aiva-agent-chat__composer-menu-anchor .shell-dropdown-menu__row--submenu-open > .shell-dropdown-menu[data-menu-level="2"] {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    z-index: 640;
}

.aiva-agent-chat__composer-dropdown,
.aiva-agent-chat__composer-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    height: 24px;
    min-width: 0;
    padding: 0 6px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: var(--assistant-panel-muted);
    font-size: 0.75rem;
    font-weight: 500;
    line-height: normal;
    white-space: nowrap;
    cursor: var(--pointer, pointer);
    transition: background-color 0.12s ease, color 0.12s ease;
}

.aiva-agent-chat__composer-dropdown:hover,
.aiva-agent-chat__composer-dropdown:focus-visible,
.aiva-agent-chat__composer-toggle:hover,
.aiva-agent-chat__composer-toggle:focus-visible {
    background: var(--assistant-panel-hover-bg);
    color: var(--assistant-panel-text);
    outline: none;
}

.aiva-agent-chat__composer-toggle--active {
    color: #fff;
    opacity: 1;
}

.aiva-agent-chat__composer-toggle:disabled:not(.aiva-agent-chat__composer-toggle--active) {
    color: var(--assistant-panel-muted);
    cursor: default;
    opacity: 0.42;
}

.aiva-agent-chat__composer-toggle:disabled:hover,
.aiva-agent-chat__composer-toggle:disabled:focus-visible {
    background: transparent;
}

.aiva-agent-chat__composer-toggle--fast {
    --aiva-composer-fast-accent: #ffd84d;
    position: relative;
    isolation: isolate;
    overflow: visible;
}

[data-app-theme="light"] .aiva-agent-chat__composer-toggle--fast,
[data-app-theme="pure-light"] .aiva-agent-chat__composer-toggle--fast {
    --aiva-composer-fast-accent: #2563eb;
}

@media (prefers-color-scheme: light) {
    [data-app-theme="system"] .aiva-agent-chat__composer-toggle--fast {
        --aiva-composer-fast-accent: #2563eb;
    }
}

.aiva-agent-chat__composer-toggle.aiva-agent-chat__composer-toggle--fast.aiva-agent-chat__composer-toggle--active {
    color: var(--aiva-composer-fast-accent);
}

.aiva-agent-chat__composer-fast-icon {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transform-origin: 50% 54%;
}

.aiva-agent-chat__composer-toggle--fast::before,
.aiva-agent-chat__composer-toggle--fast::after {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 0;
    content: "";
    pointer-events: none;
    opacity: 0;
}

.aiva-agent-chat__composer-toggle--fast::before {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: radial-gradient(
        circle,
        color-mix(in srgb, var(--aiva-composer-fast-accent) 34%, transparent) 0%,
        color-mix(in srgb, var(--aiva-composer-fast-accent) 12%, transparent) 38%,
        transparent 72%);
    transform: translate(-50%, -50%) scale(0.72);
}

.aiva-agent-chat__composer-toggle--fast::after {
    width: 2px;
    height: 2px;
    border-radius: 50%;
    background: var(--aiva-composer-fast-accent);
    box-shadow:
        0 -10px 0 color-mix(in srgb, var(--aiva-composer-fast-accent) 95%, transparent),
        8px -6px 0 color-mix(in srgb, var(--aiva-composer-fast-accent) 82%, transparent),
        10px 3px 0 color-mix(in srgb, var(--aiva-composer-fast-accent) 72%, transparent),
        4px 9px 0 color-mix(in srgb, var(--aiva-composer-fast-accent) 90%, transparent),
        -7px 8px 0 color-mix(in srgb, var(--aiva-composer-fast-accent) 70%, transparent),
        -10px -2px 0 color-mix(in srgb, var(--aiva-composer-fast-accent) 86%, transparent);
}

.aiva-agent-chat__composer-toggle--fast.aiva-agent-chat__composer-toggle--active .aiva-agent-chat__composer-fast-icon {
    animation: aiva-composer-fast-charge 420ms cubic-bezier(0.2, 1.35, 0.35, 1) both;
}

.aiva-agent-chat__composer-toggle--fast.aiva-agent-chat__composer-toggle--active::before {
    animation: aiva-composer-fast-glow 1.8s ease-in-out 320ms infinite;
}

.aiva-agent-chat__composer-toggle--fast.aiva-agent-chat__composer-toggle--active::after {
    animation: aiva-composer-fast-sparks 520ms cubic-bezier(0.16, 0.9, 0.3, 1) both;
}

.aiva-agent-chat__composer-toggle--machine {
    --aiva-composer-fast-accent: #71d7ff;
    --aiva-composer-toggle-accent: #71d7ff;
}

.aiva-agent-chat__composer-toggle--browser {
    --aiva-composer-fast-accent: #71d7ff;
    --aiva-composer-toggle-accent: #71d7ff;
}

.aiva-agent-chat__composer-toggle--computer {
    --aiva-composer-fast-accent: #8ee39a;
    --aiva-composer-toggle-accent: #8ee39a;
}

[data-app-theme="light"] .aiva-agent-chat__composer-toggle--browser,
[data-app-theme="pure-light"] .aiva-agent-chat__composer-toggle--browser {
    --aiva-composer-fast-accent: #176b87;
    --aiva-composer-toggle-accent: #176b87;
}

[data-app-theme="light"] .aiva-agent-chat__composer-toggle--computer,
[data-app-theme="pure-light"] .aiva-agent-chat__composer-toggle--computer {
    --aiva-composer-fast-accent: #237a36;
    --aiva-composer-toggle-accent: #237a36;
}

.aiva-agent-chat__composer-toggle--machine.aiva-agent-chat__composer-toggle--active {
    color: var(--aiva-composer-toggle-accent);
}

.aiva-agent-chat__composer-machine-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transform-origin: center;
}

.aiva-agent-chat__composer-toggle--machine.aiva-agent-chat__composer-toggle--active .aiva-agent-chat__composer-machine-icon {
    animation: aiva-composer-fast-charge 420ms cubic-bezier(0.2, 1.35, 0.35, 1) both;
}

@keyframes aiva-composer-fast-charge {
    0% {
        filter: drop-shadow(0 0 0 transparent);
        transform: scale(0.72) rotate(-10deg);
    }

    42% {
        filter: drop-shadow(0 0 5px color-mix(in srgb, var(--aiva-composer-fast-accent) 95%, transparent));
        transform: scale(1.28) rotate(5deg);
    }

    72% {
        transform: scale(0.94) rotate(-2deg);
    }

    100% {
        filter: drop-shadow(0 0 2px color-mix(in srgb, var(--aiva-composer-fast-accent) 72%, transparent));
        transform: scale(1) rotate(0);
    }
}

@keyframes aiva-composer-fast-sparks {
    0% {
        opacity: 0;
        transform: translate(-50%, -50%) scale(0.2) rotate(-12deg);
    }

    20% {
        opacity: 1;
    }

    72% {
        opacity: 0.88;
    }

    100% {
        opacity: 0;
        transform: translate(-50%, -50%) scale(1.18) rotate(10deg);
    }
}

@keyframes aiva-composer-fast-glow {
    0%, 100% {
        opacity: 0.18;
        transform: translate(-50%, -50%) scale(0.82);
    }

    50% {
        opacity: 0.62;
        transform: translate(-50%, -50%) scale(1.08);
    }
}

@media (prefers-reduced-motion: reduce) {
    .aiva-agent-chat__composer-toggle--fast.aiva-agent-chat__composer-toggle--active .aiva-agent-chat__composer-fast-icon,
    .aiva-agent-chat__composer-toggle--fast.aiva-agent-chat__composer-toggle--active::before,
    .aiva-agent-chat__composer-toggle--fast.aiva-agent-chat__composer-toggle--active::after {
        animation: none;
    }

    .aiva-agent-chat__composer-toggle--fast.aiva-agent-chat__composer-toggle--active::before {
        opacity: 0.34;
        transform: translate(-50%, -50%) scale(0.92);
    }

    .aiva-agent-chat__composer-toggle--machine.aiva-agent-chat__composer-toggle--active .aiva-agent-chat__composer-machine-icon {
        animation: none;
    }
}

.aiva-agent-chat__composer-dropdown--danger {
    color: var(--shell-danger-text, #ef4444);
}

.aiva-agent-chat__composer-dropdown--danger:hover,
.aiva-agent-chat__composer-dropdown--danger:focus-visible {
    background: color-mix(in srgb, var(--shell-danger-text, #ef4444) 12%, transparent);
    color: var(--shell-danger-text, #ef4444);
}

.aiva-agent-chat__composer-dropdown--readonly {
    cursor: default;
}

.aiva-agent-chat__composer-dropdown--readonly:hover {
    background: transparent;
    color: var(--shell-danger-text, #ef4444);
}

.aiva-agent-chat__composer .assistant-composer__send--loading {
    color: var(--shell-danger-text, #ef4444);
}

.aiva-agent-chat__composer .assistant-composer__send--loading:hover,
.aiva-agent-chat__composer .assistant-composer__send--loading:focus-visible {
    background: color-mix(in srgb, var(--shell-danger-text, #ef4444) 12%, transparent);
    color: var(--shell-danger-text, #ef4444);
}

.aiva-transcript-item {
    --aiva-transcript-max-width: 100%;
    display: flex;
    width: 100%;
    min-width: 0;
    margin: 0;
    color: var(--shell-text-primary);
}

.aiva-transcript-item + .aiva-transcript-item {
    margin-top: 10px;
}

.aiva-agent-chat__turn {
    display: flex;
    width: 100%;
    max-width: 900px;
    min-width: 0;
    margin-inline: auto;
    flex: 0 0 auto;
    flex-direction: column;
}

.aiva-agent-chat__turn + .aiva-agent-chat__turn {
    margin-top: 10px;
}

/* A stream item can move from commentary to final without changing turn membership. The leaf
   rerender changes its kind class before the thinking item is structurally removed. */
.aiva-agent-chat__turn:has(> .aiva-transcript-item--final) > .aiva-transcript-item--thinking {
    display: none;
}

.aiva-agent-chat__transcript-host .aiva-agent-chat__turn[data-aiva-turn-latest="true"] {
    min-height: max(0px, calc(var(--aiva-transcript-viewport-height, 100vh) - 44px));
}

.aiva-transcript-item.aiva-transcript-item--turn-start {
    margin-top: 14px;
    padding-top: 14px;
}

.aiva-transcript-item--user,
.aiva-transcript-item--steer {
    align-self: stretch;
    justify-content: flex-end;
    padding-left: 0;
}

.aiva-transcript-item--commentary,
.aiva-transcript-item--reasoning,
.aiva-transcript-item--work-log,
.aiva-transcript-item--final,
.aiva-transcript-item--thinking,
.aiva-transcript-item--approval {
    justify-content: flex-start;
    padding-right: 0;
}

/* Same first-item top rhythm as the summary so the busy line and the turn
   summary occupy the same vertical slot when one replaces the other. */
.aiva-transcript-item--thinking {
    margin-top: 8px;
}

.aiva-transcript-item--summary {
    width: var(--aiva-transcript-max-width);
    max-width: var(--aiva-transcript-max-width);
    margin: 8px 0 16px;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    color: var(--shell-text-secondary);
    /* One step under .aiva-transcript-item__markdown body size; same weight. */
    font-size: 0.8125rem;
    font-weight: 440;
    line-height: 1.3125rem;
}

.aiva-transcript-summary__line {
    display: flex;
    width: 100%;
    min-width: 0;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    flex-wrap: wrap;
}

.aiva-transcript-summary__line::after {
    height: 1px;
    min-width: 16px;
    flex: 1 1 16px;
    background: var(--assistant-markdown-table-border, var(--settings-card-border, var(--assistant-panel-border, var(--shell-border))));
    content: "";
}

.aiva-transcript-item__body {
    width: var(--aiva-transcript-max-width);
    min-width: 0;
}

.aiva-transcript-item__bubble {
    display: inline-flex;
    width: 100%;
    min-width: 0;
    max-width: var(--aiva-transcript-max-width);
    min-height: 36.7969px;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 8px;
    padding: 8px 10px;
    border-radius: 6px;
    background: var(--assistant-user-message-bg, lch(13.841% 0.943 272));
    color: var(--assistant-user-message-text, lch(90.668% 1.375 272));
    box-shadow: var(--assistant-user-message-shadow, none);
    box-sizing: border-box;
}

.aiva-transcript-item__message-shell {
    position: relative;
    display: flex;
    width: 100%;
    max-width: var(--aiva-transcript-max-width);
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
}

.aiva-transcript-item--user .aiva-transcript-item__message-shell,
.aiva-transcript-item--steer .aiva-transcript-item__message-shell {
    width: fit-content;
    max-width: 90%;
    margin-left: auto;
    margin-right: 0;
    align-items: flex-end;
}

.aiva-transcript-item--user .aiva-transcript-item__message-shell--with-attachments,
.aiva-transcript-item--steer .aiva-transcript-item__message-shell--with-attachments {
    width: 90%;
}

.aiva-transcript-item--user .aiva-transcript-item__bubble,
.aiva-transcript-item--steer .aiva-transcript-item__bubble {
    width: auto;
    max-width: 100%;
}

.aiva-transcript-item__message-shell .aiva-transcript-item__bubble,
.aiva-transcript-item__message-shell .aiva-transcript-item__markdown {
    max-width: 100%;
}

.aiva-transcript-item__copy {
    display: inline-flex;
    width: 22px;
    height: 22px;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: currentColor;
    cursor: var(--pointer, pointer);
    opacity: 0.34;
    transition:
        background-color 0.16s ease,
        color 0.16s ease,
        opacity 0.22s ease;
}

.aiva-transcript-item__copy:hover,
.aiva-transcript-item__copy:focus-visible {
    background: var(--assistant-panel-hover-bg, var(--shell-menu-item-hover));
    color: var(--assistant-panel-text, var(--shell-text-primary));
    outline: none;
}

.aiva-transcript-item__copy[data-aiva-copy-state="copied"] {
    color: var(--shell-accent, #5e6ad2);
    opacity: 1;
}

.aiva-transcript-item__meta {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    color: var(--assistant-panel-soft, var(--shell-text-tertiary));
    opacity: 0.48;
    transition: opacity 0.22s ease, color 0.22s ease;
}

.aiva-transcript-item--user .aiva-transcript-item__meta {
    justify-content: flex-end;
}

.aiva-transcript-item__message-shell:hover .aiva-transcript-item__meta,
.aiva-transcript-item__message-shell:focus-within .aiva-transcript-item__meta {
    color: var(--assistant-panel-muted, var(--shell-text-secondary));
    opacity: 1;
}

.aiva-transcript-item__message-shell:hover .aiva-transcript-item__copy,
.aiva-transcript-item__message-shell:focus-within .aiva-transcript-item__copy {
    opacity: 0.9;
}

.aiva-transcript-item__timestamp {
    font-size: 0.6875rem;
    font-weight: 500;
    line-height: 1rem;
}

.aiva-transcript-inline-card {
    display: grid;
    width: var(--aiva-transcript-max-width);
    max-width: var(--aiva-transcript-max-width);
    min-width: 0;
    grid-template-columns: 18px minmax(0, 1fr) auto;
    align-items: start;
    gap: 8px;
    padding: 7px 8px;
    border: 0.5px solid var(--assistant-markdown-table-border, var(--settings-card-border, var(--assistant-panel-border, var(--shell-border))));
    border-left-color: color-mix(in srgb, var(--aiva-transcript-inline-accent, var(--shell-accent, #5e6ad2)) 70%, var(--shell-border));
    border-radius: 7px;
    background: color-mix(in srgb, var(--aiva-transcript-inline-accent, var(--shell-accent, #5e6ad2)) 5%, transparent);
    color: var(--shell-text-primary);
}

.aiva-transcript-inline-card--error {
    --aiva-transcript-inline-accent: var(--color-danger, #eb5757);
}

.aiva-transcript-inline-card--approval {
    --aiva-transcript-inline-accent: var(--shell-accent, #5e6ad2);
}

.aiva-transcript-inline-card--approval-approved {
    --aiva-transcript-inline-accent: #2f8b5b;
}

.aiva-transcript-inline-card--approval-rejected {
    --aiva-transcript-inline-accent: var(--color-danger, #eb5757);
}

.aiva-transcript-inline-card--structured {
    --aiva-transcript-inline-accent: #2f8b5b;
    grid-template-columns: 18px minmax(0, 1fr);
    width: min(560px, var(--aiva-transcript-max-width));
}

.aiva-transcript-inline-card__icon {
    display: inline-flex;
    width: 18px;
    height: 18px;
    align-items: center;
    justify-content: center;
    color: color-mix(in srgb, var(--aiva-transcript-inline-accent, var(--shell-accent, #5e6ad2)) 76%, var(--shell-text-secondary));
}

.aiva-transcript-inline-card__content {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}

.aiva-transcript-inline-card__label,
.aiva-transcript-inline-card__status {
    color: var(--shell-text-secondary);
    font-size: 0.71875rem;
    font-weight: 560;
    line-height: 1rem;
}

.aiva-transcript-inline-card__text {
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    font-weight: 440;
    line-height: 1.25rem;
}

.aiva-transcript-inline-card__text p {
    margin: 0;
}

.aiva-transcript-inline-card__actions {
    display: flex;
    align-items: center;
    gap: 6px;
    padding-left: 8px;
}

.aiva-transcript-signal {
    display: grid;
    width: 100%;
    min-width: 0;
    margin-block: 6px;
    grid-template-columns: minmax(16px, 1fr) auto auto minmax(16px, 1fr);
    align-items: center;
    gap: 8px;
    color: var(--shell-text-secondary);
    font-size: 0.71875rem;
    font-weight: 520;
    line-height: 1rem;
}

.aiva-transcript-signal__line {
    height: 1px;
    min-width: 0;
    background: var(--assistant-markdown-table-border, var(--settings-card-border, var(--assistant-panel-border, var(--shell-border))));
}

.aiva-transcript-signal__icon {
    display: inline-flex;
    width: 16px;
    height: 16px;
    align-items: center;
    justify-content: center;
    color: var(--shell-text-tertiary);
}

.aiva-transcript-signal__text {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-transcript-signal__content {
    display: inline-flex;
    min-width: 0;
    max-width: 100%;
    align-items: center;
    gap: 4px;
    overflow: hidden;
    white-space: nowrap;
}

.aiva-transcript-signal__content > .aiva-transcript-signal__text {
    flex: 0 1 auto;
}

.aiva-transcript-signal__content > .aiva-transcript-thinking__elapsed {
    flex: 0 0 auto;
    white-space: nowrap;
}

.aiva-transcript-item__attachments {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 8px;
}

.aiva-user-attachments {
    width: 100%;
    min-width: 0;
    margin-top: 4px;
}

.aiva-user-attachments__items {
    justify-content: flex-end;
}

.aiva-user-attachments__items .aiva-file-preview__item[data-preview-kind="file"] {
    align-items: flex-end;
}

.aiva-transcript-item__markdown {
    color: var(--shell-text-primary);
    font-size: 0.875rem;
    font-weight: 440;
    line-height: 1.4375rem;
}

.aiva-transcript-item__markdown table {
    width: 100%;
    min-width: 100%;
}

.aiva-transcript-item__markdown > :first-child {
    margin-top: 0;
}

.aiva-transcript-item__markdown > :last-child {
    margin-bottom: 0;
}

.aiva-transcript-item__markdown p,
.aiva-transcript-item__markdown ul,
.aiva-transcript-item__markdown ol {
    margin: 0 0 10px;
}

.aiva-transcript-item__markdown h1,
.aiva-transcript-item__markdown h2,
.aiva-transcript-item__markdown h3,
.aiva-transcript-item__markdown h4,
.aiva-transcript-item__markdown h5,
.aiva-transcript-item__markdown h6 {
    margin: 0 0 10px;
    color: var(--assistant-panel-text, var(--shell-text-primary));
    font-size: 0.9375rem;
    font-weight: 650;
    line-height: 1.375rem;
}

.aiva-transcript-item__markdown ul,
.aiva-transcript-item__markdown ol {
    padding-left: 20px;
}

.aiva-transcript-item__markdown li + li {
    margin-top: 3px;
}

.aiva-transcript-item__markdown code {
    padding: 1px 4px;
    border: 0.5px solid var(--assistant-panel-border, var(--shell-border));
    border-radius: 4px;
    background: var(--assistant-panel-raised-bg, var(--shell-bg-raised));
    color: var(--assistant-panel-text, var(--shell-text-primary));
    font-family: var(--font-mono, "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace);
    font-size: 0.75rem;
}

.aiva-transcript-item__markdown pre {
    max-width: 100%;
    max-height: calc((1.25rem * 10) + 16px);
    margin: 0 0 8px;
    padding: 8px 10px;
    overflow: auto;
    border: 0.5px solid var(--assistant-panel-border, var(--shell-border));
    border-radius: 6px;
    background: var(--assistant-panel-raised-bg, var(--shell-bg-raised));
    scrollbar-color: var(--scrollbar-color, var(--shell-scrollbar-thumb, var(--assistant-panel-border))) transparent;
    scrollbar-width: thin;
}

.aiva-transcript-item__markdown pre code {
    display: block;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--assistant-panel-text, var(--shell-text-primary));
    font-size: 0.75rem;
    line-height: 1.25rem;
    white-space: pre;
}

.aiva-code-block {
    max-width: 100%;
    margin: 0 0 8px;
    overflow: hidden;
    border: 0.5px solid var(--assistant-markdown-table-border, var(--settings-card-border, var(--assistant-panel-border, var(--shell-border))));
    border-radius: 4px;
    background: var(--assistant-markdown-table-bg, var(--settings-card-bg, var(--assistant-panel-raised-bg, var(--shell-bg-raised))));
}

.aiva-code-block__header {
    display: flex;
    min-height: 34px;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 5px 8px;
    border-bottom: 0.5px solid var(--assistant-markdown-table-border, var(--settings-card-border, var(--assistant-panel-border, var(--shell-border))));
    background: var(--assistant-markdown-table-header-bg, var(--settings-icon-tile-bg, var(--assistant-panel-raised-bg, var(--shell-bg-button))));
    color: var(--assistant-panel-text, var(--shell-text-primary));
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.25rem;
}

.aiva-code-block__language {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-code-block__copy {
    display: inline-flex;
    height: 24px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    padding: 0 8px;
    border: 0.5px solid var(--assistant-markdown-table-border, var(--settings-card-border, var(--assistant-panel-border, var(--shell-border))));
    border-radius: 4px;
    background: var(--assistant-markdown-table-bg, var(--settings-card-bg, var(--assistant-panel-bg, var(--shell-bg-surface))));
    color: var(--assistant-panel-muted, var(--shell-text-secondary));
    font-size: 0.75rem;
    font-weight: 560;
    line-height: 1rem;
    cursor: var(--pointer, pointer);
}

.aiva-code-block__copy:hover,
.aiva-code-block__copy:focus-visible {
    background: var(--assistant-panel-hover-bg, var(--shell-menu-item-hover));
    color: var(--assistant-panel-text, var(--shell-text-primary));
    outline: none;
}

.aiva-code-block__copy[data-aiva-copy-state="copied"] {
    color: var(--shell-accent, #5e6ad2);
}

.aiva-transcript-item__markdown .aiva-code-block__pre {
    max-height: calc((1.25rem * 10) + 16px);
    margin: 0;
    padding: 8px 10px;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.aiva-code-token--keyword {
    color: var(--aiva-code-keyword);
    font-weight: 620;
}

.aiva-code-token--type {
    color: var(--aiva-code-type);
}

.aiva-code-token--string {
    color: var(--aiva-code-string);
}

.aiva-code-token--comment {
    color: var(--aiva-code-comment);
    font-style: italic;
}

.aiva-code-token--number {
    color: var(--aiva-code-number);
}

.aiva-transcript-item__markdown blockquote {
    margin: 0 0 8px;
    padding-left: 10px;
    border-left: 2px solid var(--assistant-panel-border, var(--shell-border));
    color: var(--assistant-panel-muted, var(--shell-text-secondary));
}

.aiva-transcript-item__markdown a {
    color: var(--assistant-panel-text, var(--shell-text-primary));
    text-decoration: underline;
    text-decoration-color: var(--assistant-panel-muted, var(--shell-text-secondary));
    text-underline-offset: 2px;
}

.aiva-transcript-item__markdown hr {
    height: 0.5px;
    margin: 14px 0;
    border: 0;
    background: var(--assistant-markdown-table-border, var(--settings-card-border, var(--assistant-panel-border, var(--shell-border))));
}

.aiva-transcript-item__markdown img {
    display: block;
    max-width: min(100%, 320px);
    max-height: 160px;
    margin: 8px 0;
}

.aiva-transcript-item--user .aiva-transcript-item__markdown,
.aiva-transcript-item--steer .aiva-transcript-item__markdown {
    max-width: 100%;
    font-size: 0.8125rem;
    font-weight: 450;
    line-height: 20.8px;
    overflow-wrap: anywhere;
    white-space: normal;
    word-break: normal;
}

.aiva-transcript-item--user .aiva-transcript-item__markdown {
    color: var(--assistant-user-message-text, lch(90.668% 1.375 272));
}

.aiva-transcript-item--user .aiva-transcript-item__markdown p,
.aiva-transcript-item--steer .aiva-transcript-item__markdown p,
.aiva-transcript-item--user .aiva-transcript-item__markdown ul,
.aiva-transcript-item--steer .aiva-transcript-item__markdown ul,
.aiva-transcript-item--user .aiva-transcript-item__markdown ol {
    margin-bottom: 8px;
}

.aiva-transcript-item--user .aiva-transcript-item__markdown > :last-child,
.aiva-transcript-item--steer .aiva-transcript-item__markdown > :last-child {
    margin-bottom: 0;
}

.aiva-transcript-item--user .aiva-transcript-item__markdown ul,
.aiva-transcript-item--steer .aiva-transcript-item__markdown ul,
.aiva-transcript-item--user .aiva-transcript-item__markdown ol {
    padding-left: 18px;
}

.aiva-transcript-item--user .aiva-transcript-item__markdown li,
.aiva-transcript-item--steer .aiva-transcript-item__markdown li {
    margin: 2px 0;
    overflow-wrap: anywhere;
}

.aiva-transcript-item--user .aiva-transcript-item__markdown li > p,
.aiva-transcript-item--steer .aiva-transcript-item__markdown li > p {
    margin: 0;
}

.aiva-transcript-item--user .aiva-transcript-item__markdown a,
.aiva-transcript-item--user .aiva-transcript-item__markdown code {
    color: var(--assistant-user-message-text, lch(90.668% 1.375 272));
}

.aiva-transcript-item--user .aiva-transcript-item__markdown code {
    border-color: color-mix(in srgb, var(--assistant-user-message-text, lch(90.668% 1.375 272)) 22%, transparent);
    background: color-mix(in srgb, var(--assistant-user-message-text, lch(90.668% 1.375 272)) 10%, transparent);
}

[data-app-theme="dark"] .aiva-agent-chat,
[data-app-theme="system"] .aiva-agent-chat,
[data-app-theme="magic-blue"] .aiva-agent-chat,
[data-app-theme="classic-dark"] .aiva-agent-chat,
[data-app-theme="custom"] .aiva-agent-chat {
    --aiva-code-keyword: #c084fc;
    --aiva-code-type: #60a5fa;
    --aiva-code-string: #86efac;
    --aiva-code-comment: #8b949e;
    --aiva-code-number: #fbbf24;
}

.aiva-transcript-item__reasoning {
    max-width: 100%;
    color: var(--shell-text-secondary);
    font-size: 0.8125rem;
    font-style: italic;
    font-weight: 430;
    line-height: 1.3125rem;
}

.aiva-transcript-item--reasoning .aiva-transcript-item__body {
    padding: 0;
    background: transparent;
}

.aiva-transcript-item--reasoning.aiva-transcript-item--active .aiva-transcript-item__reasoning,
.aiva-transcript-item--thinking.aiva-transcript-item--active .aiva-transcript-thinking__text {
    background: linear-gradient(
        110deg,
        var(--shell-text-secondary) 0%,
        var(--shell-text-secondary) 34%,
        color-mix(in srgb, var(--shell-text-secondary) 42%, transparent) 48%,
        var(--shell-text-secondary) 62%,
        var(--shell-text-secondary) 100%);
    background-size: 240% 100%;
    color: transparent;
    background-clip: text;
    -webkit-background-clip: text;
    animation: aiva-reasoning-shimmer 3.8s ease-in-out infinite;
}

/* Stays in sync with .aiva-transcript-item--summary so the busy line and the
   turn summary swap in place at turn end without a visible size change. One
   step under assistant markdown body size; same weight. */
.aiva-transcript-thinking {
    display: inline-flex;
    width: fit-content;
    max-width: 80%;
    align-items: center;
    gap: 8px;
    color: var(--shell-text-secondary);
    font-size: 0.8125rem;
    font-weight: 440;
    line-height: 1.3125rem;
}

.aiva-transcript-thinking__elapsed {
    color: color-mix(in srgb, var(--shell-text-secondary) 74%, transparent);
    font-size: 0.8125rem;
    font-style: normal;
    font-variant-numeric: tabular-nums;
    font-weight: 440;
    line-height: 1.3125rem;
}

.aiva-transcript-item--work-log .aiva-transcript-item__body {
    width: fit-content;
    max-width: var(--aiva-transcript-max-width);
}

.aiva-transcript-work-log {
    display: flex;
    width: max-content;
    max-width: 100%;
    flex-direction: column;
    gap: 2px;
    margin: 1px 0;
    padding: 0;
    overflow: visible;
    color: var(--assistant-panel-muted, var(--shell-text-secondary));
    font-family: inherit;
    font-size: 0.875rem;
    font-weight: 450;
    line-height: 1.4375rem;
    list-style: none;
}

.aiva-transcript-work-log__entry {
    display: flex;
    min-width: 0;
    max-width: 100%;
    align-items: center;
    gap: 7px;
    color: inherit;
    white-space: nowrap;
}

.aiva-transcript-work-log__entry-content {
    display: flex;
    min-width: 0;
    max-width: 100%;
    flex: 1 1 auto;
    align-items: center;
    gap: 7px;
}

.aiva-transcript-work-log__icon {
    display: inline-flex;
    width: 13px;
    min-width: 13px;
    align-items: center;
    justify-content: center;
    color: color-mix(in srgb, var(--assistant-panel-muted, var(--shell-text-secondary)) 86%, transparent);
}

.aiva-transcript-work-log__content {
    display: flex;
    min-width: 0;
    max-width: 100%;
    flex: 1 1 auto;
    align-items: center;
    gap: 7px;
    overflow: hidden;
}

.aiva-transcript-work-log__tool {
    min-width: 0;
    max-width: 100%;
    flex: 0 1 auto;
    overflow: hidden;
    color: var(--assistant-panel-soft, var(--shell-text-primary));
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-transcript-work-log__separator {
    flex: 0 0 auto;
    color: color-mix(in srgb, var(--assistant-panel-muted, var(--shell-text-secondary)) 72%, transparent);
}

.aiva-transcript-work-log__message {
    flex: 1 1 0;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-transcript-work-log__chain-toggle {
    display: inline-flex;
    width: 100%;
    min-width: 0;
    min-height: 24px;
    flex: 1 1 auto;
    align-items: center;
    justify-content: flex-start;
    gap: 7px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 5px;
    background: transparent;
    color: color-mix(in srgb, var(--assistant-panel-muted, var(--shell-text-secondary)) 82%, transparent);
    cursor: pointer;
    font: inherit;
    text-align: left;
    transition: color 120ms ease;
}

.aiva-transcript-work-log__chain-toggle:hover {
    background: transparent;
    color: var(--assistant-panel-text, var(--shell-text-primary));
}

.aiva-transcript-work-log__chain-toggle:hover .aiva-transcript-work-log__tool,
.aiva-transcript-work-log__chain-toggle:hover .aiva-transcript-work-log__message {
    color: var(--assistant-panel-text, var(--shell-text-primary));
}

.aiva-transcript-work-log__chain-toggle:focus-visible {
    outline: 1px solid color-mix(in srgb, var(--shell-accent) 72%, transparent);
    outline-offset: -2px;
}

.aiva-transcript-work-log__chain-action {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.aiva-transcript-work-log__chain-indicator {
    display: inline-flex;
    width: 13px;
    min-width: 13px;
    align-items: center;
    justify-content: center;
    transform: rotate(180deg);
    transform-origin: center;
    transition: transform 180ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

.aiva-transcript-work-log__chain-indicator::before {
    width: 7px;
    height: 7px;
    border-color: currentColor;
    border-style: solid;
    border-width: 0 1.5px 1.5px 0;
    content: "";
    transform: rotate(-45deg);
}

.aiva-transcript-work-log__chain-indicator--expanded {
    transform: rotate(270deg);
}

.aiva-transcript-work-log__entry-content--new .aiva-transcript-work-log__icon,
.aiva-transcript-work-log__entry-content--new .aiva-transcript-work-log__tool {
    animation: aiva-work-entry-rise 260ms ease-out both;
}

.aiva-transcript-work-log__entry-content--new .aiva-transcript-work-log__message {
    display: inline-block;
    max-width: 100%;
    animation: aiva-work-detail-type 900ms steps(34, end) both;
    overflow: hidden;
    vertical-align: bottom;
}

.aiva-transcript-item--final {
    padding-right: 0;
}

.aiva-transcript-item--final .aiva-transcript-item__markdown {
    max-width: var(--aiva-transcript-max-width);
}

.aiva-transcript-item--final .aiva-transcript-item__message-shell {
    width: var(--aiva-transcript-max-width);
    max-width: var(--aiva-transcript-max-width);
}

.aiva-transcript-item--final .aiva-transcript-item__markdown {
    max-width: 100%;
}

.aiva-transcript-item__result-images,
.aiva-transcript-item__result-files,
.aiva-transcript-item__reply-options {
    display: flex;
    width: var(--aiva-transcript-max-width);
    max-width: var(--aiva-transcript-max-width);
    min-width: 0;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}

.aiva-transcript-item__result-images {
    align-items: flex-start;
}

.aiva-transcript-item__result-images .attachment-block {
    width: 160px;
}

.aiva-transcript-item__result-files .attachment-block {
    max-width: 280px;
}

.aiva-transcript-item--file-preview {
    width: var(--aiva-transcript-max-width);
}

.aiva-file-preview__heading {
    margin-bottom: 6px;
    color: var(--shell-text-secondary, #999);
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.aiva-file-preview__items {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.aiva-file-preview__item {
    min-width: 0;
}

.aiva-file-preview__item[data-preview-kind="image"],
.aiva-file-preview__item[data-preview-kind="video"] {
    width: 180px;
    min-width: 148px;
    max-width: 180px;
    flex: 0 1 180px;
}

.aiva-file-preview__item[data-preview-kind="file"] {
    display: flex;
    width: 100%;
    min-width: 0;
    max-width: none;
    flex: 0 0 100%;
    flex-direction: column;
    align-items: flex-start;
}

.aiva-file-preview__item[data-preview-kind="file"] > .attachment-block,
.aiva-file-preview__item[data-preview-kind="file"] > .aiva-file-preview__file-loading,
.aiva-file-preview__item[data-preview-kind="file"] > .aiva-file-preview__placeholder,
.aiva-file-preview__item[data-preview-kind="file"] > .aiva-file-preview__caption {
    width: min(100%, 320px);
}

.aiva-file-preview__media-loading {
    position: relative;
    display: grid;
    width: 100%;
    aspect-ratio: 4 / 3;
    place-items: center;
    overflow: hidden;
    border: 0.5px solid var(--assistant-panel-border, var(--shell-border, #343434));
    border-radius: 6px;
    background:
        linear-gradient(145deg,
            color-mix(in srgb, var(--assistant-panel-raised-bg, var(--shell-bg-raised, #202020)) 92%, white 8%),
            var(--assistant-panel-raised-bg, var(--shell-bg-raised, #202020)));
    color: color-mix(in srgb, var(--assistant-panel-muted, var(--shell-text-secondary, #999)) 68%, transparent);
}

.aiva-file-preview__item[data-preview-kind="image"] > .aiva-file-preview__media-loading,
.aiva-file-preview__item[data-preview-kind="image"] > .aiva-file-preview__placeholder {
    aspect-ratio: 1;
}

.aiva-file-preview__media-loading-sheen {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        105deg,
        transparent 20%,
        color-mix(in srgb, var(--assistant-panel-soft, var(--shell-text-primary, #f5f5f5)) 8%, transparent) 44%,
        transparent 68%);
    transform: translateX(-100%);
    animation: aiva-file-preview-sheen 1.5s ease-in-out infinite;
}

.aiva-file-preview__media-loading-icon {
    position: relative;
    display: inline-flex;
    opacity: 0.72;
}

.aiva-file-preview__ready-image {
    position: relative;
    width: 100%;
    aspect-ratio: 1;
    overflow: hidden;
    border-radius: 6px;
}

.aiva-file-preview__ready-image > .attachment-block {
    height: 100%;
    min-height: 0;
    opacity: 0;
    transition: opacity 140ms ease-out;
}

.aiva-file-preview__ready-image .attachment-block__image-frame {
    height: 100%;
}

.aiva-file-preview__ready-image .attachment-block__image {
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    object-position: center;
}

.aiva-file-preview__media-loading--browser {
    position: absolute;
    inset: 0;
    z-index: 1;
    transition: opacity 140ms ease-out, visibility 140ms linear;
}

.aiva-file-preview__ready-image[data-preview-image-state="loaded"] > .attachment-block {
    opacity: 1;
}

.aiva-file-preview__ready-image[data-preview-image-state="loaded"] > .aiva-file-preview__media-loading--browser,
.aiva-file-preview__ready-video[data-preview-video-state="loaded"] > .aiva-file-preview__media-loading--browser {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
}

.aiva-file-preview__ready-image[data-preview-image-state="failed"] .aiva-file-preview__spinner {
    display: none;
}

.aiva-file-preview__ready-video {
    position: relative;
    min-height: 135px;
}

.aiva-file-preview__video-button {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    padding: 0;
    border: 0.5px solid var(--assistant-panel-border, var(--shell-border, #343434));
    border-radius: 6px;
    background: var(--assistant-panel-raised-bg, var(--shell-bg-raised, #202020));
    color: white;
    cursor: pointer;
    opacity: 0;
    transition: opacity 140ms ease-out, border-color 140ms ease-out, transform 140ms ease-out;
}

.aiva-file-preview__video-button:not(:disabled):hover {
    border-color: color-mix(in srgb, var(--shell-accent, #5e6ad2) 66%, white 6%);
    transform: translateY(-1px);
}

.aiva-file-preview__video-button:disabled {
    cursor: wait;
}

.aiva-file-preview__video-button:focus-visible {
    outline: 2px solid var(--shell-accent, #5e6ad2);
    outline-offset: 2px;
}

.aiva-file-preview__video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.aiva-file-preview__video-play {
    position: absolute;
    inset: 50% auto auto 50%;
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border: 1px solid rgb(255 255 255 / 28%);
    border-radius: 50%;
    background: rgb(8 10 14 / 72%);
    box-shadow: 0 6px 24px rgb(0 0 0 / 34%);
    transform: translate(-50%, -50%);
    backdrop-filter: blur(8px);
}

.aiva-file-preview__ready-video > .aiva-file-preview__media-loading--browser {
    bottom: 22px;
}

.aiva-file-preview__ready-video[data-preview-video-state="loaded"] > .aiva-file-preview__video-button {
    opacity: 1;
}

.aiva-file-preview__ready-video[data-preview-video-state="failed"] > .aiva-file-preview__video-button {
    display: none;
}

.aiva-file-preview__ready-video[data-preview-video-state="failed"] > .aiva-file-preview__media-loading--browser {
    position: relative;
    inset: auto;
}

.aiva-file-preview__ready-video[data-preview-video-state="failed"] .aiva-file-preview__spinner {
    display: none;
}

.aiva-file-preview__visual-name {
    overflow: hidden;
    margin-top: 4px;
    color: var(--shell-text-secondary, #999);
    font-size: 0.75rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-file-preview__file-loading {
    position: relative;
}

.aiva-file-preview__file-loading .attachment-block {
    padding-right: 36px;
}

.aiva-file-preview__spinner {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 14px;
    height: 14px;
    border: 1.5px solid color-mix(in srgb, var(--assistant-panel-muted, var(--shell-text-secondary, #999)) 35%, transparent);
    border-top-color: var(--shell-accent, #5e6ad2);
    border-radius: 50%;
    animation: aiva-session-plan-spinner 0.72s linear infinite;
}

.aiva-file-preview__placeholder {
    display: flex;
    min-height: 48px;
    align-items: center;
    gap: 10px;
    padding: 9px 11px;
    border: 1px solid var(--shell-border, #343434);
    border-radius: 8px;
    background: color-mix(in srgb, var(--shell-panel-bg, #171717) 84%, transparent);
}

.aiva-file-preview__name {
    overflow: hidden;
    color: var(--shell-text-primary, #f5f5f5);
    font-size: 0.8125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-file-preview__status,
.aiva-file-preview__caption {
    color: var(--shell-text-secondary, #999);
    font-size: 0.75rem;
}

.aiva-file-preview__item[data-preview-status="failed"] .aiva-file-preview__status {
    color: var(--shell-danger, #ef6b73);
}

.aiva-file-preview__caption {
    margin-top: 4px;
}

@keyframes aiva-file-preview-sheen {
    to {
        transform: translateX(100%);
    }
}

@media (prefers-reduced-motion: reduce) {
    .aiva-file-preview__media-loading-sheen,
    .aiva-file-preview__spinner {
        animation: none;
    }

    .aiva-file-preview__ready-image > .attachment-block,
    .aiva-file-preview__video-button,
    .aiva-file-preview__media-loading--browser {
        transition: none;
    }
}

.aiva-transcript-item__reply-options {
    gap: 6px;
    justify-content: flex-start;
    align-items: flex-start;
    align-self: flex-start;
}

.aiva-transcript-item__reply-options .aiva-transcript-item__reply-option {
    height: 28px;
    width: auto;
    flex: 0 0 auto;
    padding: 0 8px;
    border-color: transparent;
    background: color-mix(in srgb, var(--assistant-panel-hover-bg, var(--shell-menu-item-hover, #2a2a2a)) 42%, transparent);
    color: color-mix(in srgb, var(--shell-text-primary, #fff) 78%, var(--shell-text-secondary, #999) 22%);
    font-size: 0.8125rem;
    font-weight: 450;
    white-space: nowrap;
}

.aiva-transcript-item__reply-options .aiva-transcript-item__reply-option:hover,
.aiva-transcript-item__reply-options .aiva-transcript-item__reply-option:focus-visible {
    border-color: transparent;
    background: color-mix(in srgb, var(--shell-text-primary, #fff) 11%, var(--settings-control-hover-bg, var(--shell-menu-item-hover, #2a2a2a)) 89%);
    color: var(--shell-text-primary, var(--shell-menu-text-strong, #fff));
}

.aiva-transcript-item__reply-options .aiva-transcript-item__reply-option:active {
    transform: translateY(0.5px);
}

.aiva-transcript-summary__worked {
    color: var(--shell-text-secondary);
}

.aiva-transcript-summary__item {
    display: inline-flex;
    min-width: 0;
    flex: 0 0 auto;
    align-items: center;
    gap: 3px;
    color: var(--shell-text-secondary);
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.aiva-transcript-summary__item::before {
    display: block;
    width: 3px;
    height: 3px;
    flex: 0 0 auto;
    margin: 0 6px;
    border-radius: 9999px;
    background: currentColor;
    content: "";
    opacity: 0.7;
}

.aiva-transcript-summary__item:first-of-type::before {
    display: none;
}

.aiva-transcript-summary__item--edited {
    color: var(--assistant-work-edited-color, #e3b341);
}

.aiva-transcript-summary__item--added {
    color: var(--assistant-work-added-color, #4fd18e);
}

.aiva-transcript-summary__item--removed {
    color: var(--assistant-work-removed-color, #ff7074);
}

.aiva-transcript-summary__count {
    color: currentColor;
    font-weight: 650;
}

.aiva-transcript-item--summary .aiva-transcript-item__reply-options {
    width: var(--aiva-transcript-max-width);
    max-width: min(100%, var(--aiva-transcript-max-width));
    justify-content: flex-start;
    margin-top: 12px;
    margin-right: 0;
    margin-left: 0;
}

@media (width <= 980px) {
    .aiva-transcript-item {
        --aiva-transcript-max-width: 100%;
    }

    .aiva-transcript-item--user,
    .aiva-transcript-item--steer {
        padding-left: 0;
    }

    .aiva-transcript-item--commentary,
    .aiva-transcript-item--reasoning,
    .aiva-transcript-item--work-log,
    .aiva-transcript-item--final,
    .aiva-transcript-item--thinking {
        padding-right: 0;
    }
}

@keyframes aiva-reasoning-shimmer {
    0% {
        background-position: 130% 0;
    }

    100% {
        background-position: -130% 0;
    }
}

@keyframes aiva-work-count-pop {
    0% {
        opacity: 0.5;
        transform: translateY(5px) scale(0.92);
    }

    45% {
        opacity: 1;
        transform: translateY(-2px) scale(1.08);
    }

    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes aiva-work-entry-rise {
    from {
        opacity: 0;
        transform: translateY(3px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes aiva-work-detail-type {
    from {
        clip-path: inset(0 100% 0 0);
    }

    to {
        clip-path: inset(0 0 0 0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .aiva-transcript-item--reasoning.aiva-transcript-item--active .aiva-transcript-item__reasoning,
    .aiva-transcript-item--thinking.aiva-transcript-item--active .aiva-transcript-thinking__text,
    .aiva-transcript-item--work-log-live .assistant-work-log__count,
    .aiva-transcript-item--work-log-live .assistant-work-log__entry:last-child .assistant-work-log__entry-icon,
    .aiva-transcript-item--work-log-live .assistant-work-log__entry:last-child .assistant-work-log__entry-title,
    .aiva-transcript-item--work-log-live .assistant-work-log__entry:last-child .assistant-work-log__entry-detail,
    .aiva-transcript-work-log__entry-content--new .aiva-transcript-work-log__icon,
    .aiva-transcript-work-log__entry-content--new .aiva-transcript-work-log__tool,
    .aiva-transcript-work-log__entry-content--new .aiva-transcript-work-log__message {
        animation: none;
    }

    .aiva-transcript-work-log__chain-toggle,
    .aiva-transcript-work-log__chain-indicator {
        transition: none;
    }
}

.settings-agent-usage-tooltip {
    display: flex;
    width: 100%;
    min-width: 0;
}

.settings-agent-usage-display {
    display: flex;
    width: 100%;
    min-width: 0;
    flex-direction: column;
    gap: 7px;
}

.settings-agent-usage-display__details {
    overflow: hidden;
    color: var(--shell-text-secondary);
    font-size: 0.6875rem;
    line-height: 0.875rem;
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.settings-agent-usage-display .progress-bar {
    flex: 1 1 auto;
    min-width: 0;
}

.settings-agent-usage-account-header {
    display: flex;
    min-height: 44px;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 16px;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    line-height: 1rem;
    list-style: none;
}

.settings-agent-usage-account-header strong {
    color: var(--shell-text-primary);
    font-weight: 560;
}

.settings-agent-usage-account-header + .field-row::before {
    content: "";
    position: absolute;
    top: -0.5px;
    right: 16px;
    left: 16px;
    height: 0.5px;
    background: var(--settings-row-divider, lch(14.15% 1.83 272));
}

.settings-codex-web-toggle,
.settings-agent-default-toggle {
    display: flex;
    width: 100%;
    justify-content: flex-end;
}

.settings-codex-web-toggle .ui-form__toggle,
.settings-agent-default-toggle .ui-form__toggle {
    width: auto;
}

.settings-instance-api-key-secret {
    display: grid;
    width: 100%;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
}

.settings-instance-api-key-secret > * {
    min-width: 0;
}

.settings-toggle-control {
    display: flex;
    width: 100%;
    justify-content: flex-end;
}

.settings-toggle-control .ui-form__toggle {
    width: auto;
}

.settings-sidequest-environment-status {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 560;
    line-height: 1rem;
}

.settings-sidequest-environment-status::before {
    width: 7px;
    height: 7px;
    border-radius: 999px;
    background: currentColor;
    content: "";
}

.settings-sidequest-environment-status--creating {
    color: #d97706;
}

.settings-sidequest-environment-status--running {
    color: #26b36a;
}

.settings-sidequest-field-error {
    padding-top: 4px;
    color: var(--shell-danger-text, #ef4444);
    font-size: 0.75rem;
    line-height: 1rem;
}

.settings-skill-library-error {
    margin: 0 0 12px;
    color: var(--qui-color-danger-text, lch(65% 58 32));
    font-size: 0.8125rem;
    line-height: 1.25rem;
}

.settings-skill-library-row .ui-form__toggle {
    width: auto;
}

.settings-skill-library-row--installed {
    --settings-row-icon-tile-bg: color-mix(in srgb, var(--shell-accent, lch(55% 66 286)) 24%, transparent);
    --settings-row-icon-tile-color: var(--shell-accent, lch(62% 68 286));
}

.settings-skill-library-details {
    display: grid;
    gap: 16px;
}

.settings-skill-library-details__header {
    display: flex;
    align-items: center;
    gap: 12px;
}

.settings-skill-library-details__header strong,
.settings-skill-library-details__header span {
    display: block;
}

.settings-skill-library-details__header strong {
    color: var(--shell-text-primary);
    font-size: 0.9375rem;
    line-height: 1.25rem;
}

.settings-skill-library-details__header span {
    margin-top: 2px;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    line-height: 1rem;
}

.settings-skill-library-details__description {
    margin: 0;
    color: var(--shell-text-secondary);
    font-size: 0.875rem;
    line-height: 1.35rem;
}

.settings-skill-library-details__meta {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin: 0;
}

.settings-skill-library-details__meta div {
    min-width: 0;
}

.settings-skill-library-details__meta dt {
    color: var(--shell-text-tertiary, var(--shell-text-secondary));
    font-size: 0.71875rem;
    line-height: 1rem;
}

.settings-skill-library-details__meta dd {
    margin: 2px 0 0;
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    line-height: 1.125rem;
}

.settings-copy-button {
    display: inline-flex;
    min-width: 32px;
    height: 32px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 0 10px;
    border: 0.5px solid var(--shell-border);
    border-radius: 6px;
    background: var(--shell-bg-surface);
    color: var(--shell-text-secondary);
    cursor: var(--pointer, pointer);
    font: inherit;
    font-size: 0.8125rem;
    font-weight: 520;
    line-height: 1rem;
    transition:
        background-color 0.16s ease,
        border-color 0.16s ease,
        color 0.16s ease;
}

.settings-copy-button:hover,
.settings-copy-button:focus-visible {
    border-color: var(--shell-border-strong, var(--shell-border));
    background: var(--shell-bg-active);
    color: var(--shell-text-primary);
    outline: none;
}

.settings-copy-button:disabled {
    cursor: default;
    opacity: 0.45;
}

.settings-copy-button[data-aiva-copy-state="copied"] {
    border-color: color-mix(in srgb, var(--toast-success-color, #26a269) 45%, var(--shell-border));
    color: var(--toast-success-color, #26a269);
}

.settings-copy-button[data-aiva-copy-state="failed"] {
    border-color: color-mix(in srgb, #b42318 45%, var(--shell-border));
    color: #b42318;
}

.settings-agent-login-copy-button {
    flex: 0 0 auto;
    width: 32px;
    padding: 0;
}

.settings-instance-wizard__actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 16px;
}

.settings-instance-wizard__acknowledgement {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--settings-value-color, #111827);
    font-size: 0.875rem;
    white-space: nowrap;
}

.settings-agent-login-step {
    display: flex;
    min-width: 0;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 14px;
}

.settings-agent-login-callout,
.settings-agent-login-success {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    gap: 12px;
    padding: 12px;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: var(--shell-bg-surface);
}

.settings-agent-login-callout__icon,
.settings-agent-login-success__icon {
    display: inline-grid;
    width: 32px;
    height: 32px;
    flex: 0 0 auto;
    place-items: center;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: var(--shell-bg-active);
    color: var(--shell-accent);
}

.settings-agent-login-success__icon {
    color: var(--shell-success-text, #26b36a);
}

.settings-agent-login-callout strong,
.settings-agent-login-success strong {
    display: block;
    margin: 0 0 3px;
    color: var(--shell-text-primary);
    font-size: 0.875rem;
    font-weight: 560;
    line-height: 1.25rem;
}

.settings-agent-login-callout p,
.settings-agent-login-success span,
.settings-agent-login-notes p {
    margin: 0;
    color: var(--shell-text-secondary);
    font-size: 0.8125rem;
    font-weight: 450;
    line-height: 1.25rem;
}

.settings-agent-login-notes {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 8px;
}

.settings-agent-login-loading {
    display: flex;
    min-height: 180px;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: var(--shell-accent);
}

.settings-agent-login-loading > div {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 3px;
}

.settings-agent-login-loading strong {
    color: var(--shell-text-primary);
    font-size: 0.875rem;
    font-weight: 560;
    line-height: 1.25rem;
}

.settings-agent-login-loading span {
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
}

.settings-agent-login-code {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 16px;
}

.settings-agent-login-code > .button {
    align-self: flex-start;
}

.settings-agent-login-device-code {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: var(--shell-bg-surface);
}

.settings-agent-login-device-code > div {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 4px;
}

.settings-agent-login-device-code span {
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 520;
    line-height: 1rem;
}

.settings-agent-login-device-code strong {
    color: var(--shell-text-primary);
    font-family: var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
    font-size: 1rem;
    font-weight: 560;
    letter-spacing: 0.02em;
    line-height: 1.25rem;
}

.settings-agent-login-summary {
    margin-top: 0;
}

.settings-agent-login-actions {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}

.settings-project-provider-selected {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 11px;
    padding: 11px 12px;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: color-mix(in srgb, var(--shell-bg-active) 74%, transparent);
}

.settings-project-provider-selected > div {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
}

.settings-project-provider-selected > div > span {
    color: var(--shell-text-secondary);
    font-size: 0.6875rem;
    font-weight: 500;
    line-height: 0.9375rem;
}

.settings-project-provider-selected strong {
    color: var(--shell-text-primary);
    font-size: 0.875rem;
    font-weight: 560;
    line-height: 1.25rem;
}

.settings-claude-login-step {
    display: flex;
    min-width: 0;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 14px;
}

.settings-claude-login-callout,
.settings-claude-login-success {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    gap: 12px;
    padding: 12px;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: var(--shell-bg-surface);
}

.settings-claude-login-callout__icon,
.settings-claude-login-success__icon {
    display: inline-grid;
    width: 32px;
    height: 32px;
    flex: 0 0 auto;
    place-items: center;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: var(--shell-bg-active);
    color: var(--shell-accent);
}

.settings-claude-login-success__icon {
    color: var(--shell-success-text, #26b36a);
}

.settings-claude-login-callout strong,
.settings-claude-login-success strong {
    display: block;
    margin: 0 0 3px;
    color: var(--shell-text-primary);
    font-size: 0.875rem;
    font-weight: 560;
    line-height: 1.25rem;
}

.settings-claude-login-callout p,
.settings-claude-login-success span,
.settings-claude-login-notes p {
    margin: 0;
    color: var(--shell-text-secondary);
    font-size: 0.8125rem;
    font-weight: 450;
    line-height: 1.25rem;
}

.settings-claude-login-notes {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 8px;
}

.settings-claude-login-loading {
    display: flex;
    min-height: 180px;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: var(--shell-accent);
}

.settings-claude-login-loading > div {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 3px;
}

.settings-claude-login-loading strong {
    color: var(--shell-text-primary);
    font-size: 0.875rem;
    font-weight: 560;
    line-height: 1.25rem;
}

.settings-claude-login-loading span {
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
}

.settings-claude-login-code {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 16px;
}

.settings-claude-login-code > .button {
    align-self: flex-start;
}

.settings-claude-login-summary {
    margin-top: 0;
}

.aiva-session-context-rollback__turns-input {
    width: 5rem;
    min-height: 2rem;
    border: 1px solid var(--qui-color-border, var(--shell-border));
    border-radius: 6px;
    background: var(--qui-color-surface, var(--shell-bg-input, var(--shell-bg-surface)));
    color: var(--qui-color-text, var(--shell-text-primary));
    font: inherit;
    padding: 0.25rem 0.5rem;
}

.aiva-agent-chat-workspace {
    height: 100%;
    min-height: 0;
}

.aiva-session-file-editor {
    --code-surface-height: 100%;
    height: 100%;
    min-height: 0;
    border: 0;
    border-radius: 0;
}

.aiva-session-file-editor-host {
    position: relative;
    height: 100%;
    min-height: 0;
}

.aiva-session-file-preview {
    display: flex;
    min-width: 0;
    min-height: 0;
    height: 100%;
    flex-direction: column;
    background: var(--code-bg);
}

.aiva-session-file-preview__header {
    display: flex;
    min-height: 32px;
    align-items: center;
    padding: 6px 10px;
    border-bottom: 1px solid var(--code-border);
}

.aiva-session-file-preview__body {
    display: flex;
    min-width: 0;
    min-height: 0;
    flex: 1 1 auto;
    align-items: center;
    justify-content: center;
    overflow: auto;
    padding: 16px;
}

.aiva-session-file-preview__image {
    display: block;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.aiva-session-browser-tabs {
    display: flex;
    min-width: 0;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 2px;
    overflow: auto;
    scrollbar-width: none;
}

.aiva-session-browser-tabs::-webkit-scrollbar {
    display: none;
}

.aiva-session-browser-tab {
    display: grid;
    width: 100%;
    min-height: 32px;
    grid-template-columns: 20px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    padding: 5px 7px;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: var(--shell-text-secondary);
    cursor: var(--pointer, pointer);
    font: inherit;
    text-align: left;
}

.aiva-session-browser-tab:hover,
.aiva-session-browser-tab:focus-visible {
    background: var(--shell-bg-hover);
    color: var(--shell-text-primary);
    outline: none;
}

.aiva-session-browser-tab--active,
.aiva-session-browser-tab--active:hover,
.aiva-session-browser-tab--active:focus-visible {
    background: var(--shell-bg-active);
    color: var(--shell-text-primary);
}

.aiva-session-browser-tab__favicon {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    background: var(--aiva-session-browser-tab-color);
    color: #fff;
    font-weight: 650;
    line-height: 1;
}

.aiva-session-browser-tab__favicon {
    width: 18px;
    height: 18px;
    border-radius: 5px;
    font-size: 0.625rem;
}

.aiva-session-browser-tab__copy {
    display: flex;
    min-width: 0;
}

.aiva-session-browser-tab__title {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-browser-tab__title {
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    font-weight: 520;
    line-height: 1.125rem;
}

.aiva-session-browser-toolbar {
    display: flex;
    min-width: 0;
    width: 100%;
    align-items: center;
    gap: 6px;
}

.aiva-session-browser-address {
    display: flex;
    min-width: 0;
    height: 28px;
    flex: 1 1 auto;
    align-items: center;
    gap: 7px;
    padding: 0 10px;
    border: 0.5px solid var(--shell-border);
    border-radius: 7px;
    background: var(--shell-bg-input, var(--shell-bg-surface));
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    line-height: 1rem;
}

.aiva-session-browser-address__input {
    min-width: 0;
    flex: 1 1 auto;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--shell-text-primary);
    font: inherit;
    line-height: inherit;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-browser-address__input::selection {
    background: color-mix(in srgb, var(--shell-accent, #5e6ad2) 24%, transparent);
}

.aiva-session-browser-surface {
    display: flex;
    min-width: 0;
    min-height: 0;
    height: 100%;
    align-items: stretch;
    justify-content: center;
    overflow: hidden;
    width: 100%;
    background:
        radial-gradient(circle at 24% 18%, color-mix(in srgb, var(--shell-accent, #5e6ad2) 22%, transparent), transparent 28%),
        radial-gradient(circle at 80% 16%, color-mix(in srgb, var(--shell-success-text, #26b36a) 14%, transparent), transparent 24%),
        linear-gradient(135deg, color-mix(in srgb, var(--shell-bg-hover) 68%, transparent), var(--shell-bg-canvas, var(--shell-bg-surface)) 46%, color-mix(in srgb, var(--shell-bg-active) 76%, transparent));
}

.aiva-session-browser-screenshot {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.aiva-session-files-panel .split-view--inset-inline .split-view__pane--left .split-view__body {
    padding: 8px;
}

.aiva-session-changes-panel .split-view--inset-inline .split-view__pane--left .split-view__body {
    padding: 8px;
}

.aiva-session-browser-panel .split-view--inset-inline .split-view__pane--left .split-view__body {
    padding: 8px;
}

.aiva-session-changes-panel .split-view--inset-inline .split-view__pane--right .split-view__body {
    padding-inline: 0;
}

.aiva-session-browser-panel .split-view--inset-inline .split-view__pane--right .split-view__body {
    padding: 0;
}

.aiva-session-file-editor .code-editor__header {
    min-height: 32px;
    padding: 6px 10px;
    border-radius: 0;
}

.aiva-session-change-panel,
.aiva-session-file-tree-panel {
    display: flex;
    min-width: 0;
    min-height: 0;
    height: 100%;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 8px;
}

.aiva-session-change-search,
.aiva-session-file-search {
    flex: 0 0 auto;
    margin: 0;
}

.aiva-session-change-list {
    display: flex;
    min-width: 0;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 10px;
    overflow: auto;
    padding: 4px 0 8px;
    scrollbar-width: none;
}

.aiva-session-change-panel > .file-tree,
.aiva-session-file-tree-panel > .file-tree {
    min-height: 0;
    flex: 1 1 auto;
    overflow: auto;
}

.aiva-session-change-panel__footer,
.aiva-session-file-tree-panel__footer {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: flex-start;
    gap: 6px;
    margin-inline: -8px;
    padding: 8px 8px 0;
    border-top: 0.5px solid var(--shell-border);
}

.aiva-session-change-panel__commit-select {
    flex: 0 0 auto;
    margin-inline: -1px;
}

.aiva-session-change-commit-select .settings-select__trigger {
    height: 28px;
    margin: 0;
    background-color: var(--shell-bg-surface);
}

.aiva-session-change-commit-select .settings-select__trigger-label {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-change-panel__commit-error {
    padding: 3px 2px 0;
    color: var(--shell-danger-text, #ef4444);
    font-size: 0.6875rem;
    font-weight: 450;
    line-height: 1rem;
}

.aiva-session-change-panel__footer-spacer {
    flex: 1 1 auto;
}

.aiva-session-change-list::-webkit-scrollbar {
    display: none;
}

.aiva-session-change-group {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 3px;
}

.aiva-session-change-group__header {
    display: flex;
    min-height: 24px;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 0 8px;
    color: var(--shell-text-secondary);
    font-size: 0.6875rem;
    font-weight: 650;
    letter-spacing: 0;
    line-height: 1rem;
    text-transform: uppercase;
}

.aiva-session-change-file {
    display: grid;
    min-width: 0;
    grid-template-columns: 22px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    min-height: 42px;
    padding: 4px 8px;
    border-radius: 7px;
    color: var(--shell-text-primary);
}

.aiva-session-change-file:hover,
.aiva-session-change-file:focus-within {
    background: var(--shell-bg-hover);
}

.aiva-session-change-file--selected {
    background: var(--shell-bg-active);
}

.aiva-session-change-file--excluded {
    color: var(--shell-text-secondary);
}

.aiva-session-change-file__checkbox {
    width: 14px;
    height: 14px;
    margin: 0;
    accent-color: var(--shell-accent, #5e6ad2);
    cursor: var(--pointer, pointer);
}

.aiva-session-change-file__main {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    cursor: var(--pointer, pointer);
    font: inherit;
    text-align: left;
}

.aiva-session-change-file__name,
.aiva-session-change-file__path {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-change-file__name {
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
}

.aiva-session-change-file__path {
    color: var(--shell-text-secondary);
    font-size: 0.6875rem;
    font-weight: 450;
    line-height: 0.9375rem;
}

.aiva-session-change-count {
    display: inline-flex;
    align-items: center;
    gap: 1px;
    height: 28px;
    padding: 0 3px;
    font-size: 0.8125rem;
    font-weight: 620;
    line-height: 1;
    font-variant-numeric: tabular-nums;
}

.aiva-session-change-count--deleted {
    color: var(--code-review-removed-text, rgb(185, 28, 28));
}

.aiva-session-change-count--added {
    color: var(--code-review-added-text, rgb(22, 163, 74));
}

.aiva-session-rolling-number {
    display: inline-flex;
    height: 1em;
    overflow: hidden;
    line-height: 1;
    vertical-align: -0.08em;
    font-variant-numeric: tabular-nums;
}

.aiva-session-rolling-number__digit {
    position: relative;
    width: 0.62em;
    height: 1em;
    overflow: hidden;
}

.aiva-session-rolling-number__strip {
    position: absolute;
    inset: 0 auto auto 0;
    display: flex;
    flex-direction: column;
    transform: translateY(calc(var(--to, 0) * -1em));
    will-change: transform;
}

.aiva-session-rolling-number__digit--animate .aiva-session-rolling-number__strip {
    animation: aiva-session-cash-register-roll var(--duration, 360ms) cubic-bezier(.16, .98, .28, 1.04) both;
}

.aiva-session-rolling-number__strip span {
    height: 1em;
}

@keyframes aiva-session-cash-register-roll {
    from {
        transform: translateY(calc(var(--from, 0) * -1em));
    }

    to {
        transform: translateY(calc(var(--to, 0) * -1em));
    }
}

.aiva-session-split-workspace,
.aiva-session-changes-workspace {
    display: flex;
    min-width: 0;
    min-height: 0;
    height: 100%;
    flex: 1 1 auto;
    flex-direction: column;
}

.aiva-session-split-workspace > .split-tab-panel,
.aiva-session-changes-workspace__body {
    min-height: 0;
    flex: 1 1 auto;
}

.aiva-session-operation-banner {
    display: flex;
    min-width: 0;
    flex: 0 0 auto;
    align-items: center;
    gap: 8px;
    min-height: 36px;
    box-sizing: border-box;
    padding: 7px 8px;
    border-bottom: 0.5px solid var(--single-column-page-divider, var(--shell-border));
    background: color-mix(in srgb, var(--shell-accent) 9%, var(--shell-bg-surface));
    color: var(--shell-text-primary);
}

.aiva-session-operation-banner__icon {
    display: inline-grid;
    width: 20px;
    height: 20px;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 6px;
    color: var(--shell-accent);
}

.aiva-session-operation-banner__copy {
    display: flex;
    min-width: 0;
    flex: 1 1 auto;
    align-items: center;
    gap: 8px;
}

.aiva-session-operation-banner__copy strong {
    flex: 0 0 auto;
    color: var(--shell-text-primary);
    font-size: 0.75rem;
    font-weight: 560;
    line-height: 1rem;
}

.aiva-session-operation-banner__copy span {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-operation-banner__actions {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 6px;
    margin-left: auto;
}

.aiva-session-change-detail {
    display: flex;
    min-width: 0;
    min-height: 0;
    height: 100%;
    flex: 1 1 auto;
    flex-direction: column;
}

.aiva-session-change-diff,
.aiva-session-change-conflict-editor {
    --code-surface-height: 100%;
    flex: 1 1 auto;
    height: 100%;
    min-height: 0;
    border: 0;
    border-radius: 0;
}

.aiva-session-change-diff .code-diff-viewer__header,
.aiva-session-change-conflict-editor .code-conflict-editor__header {
    border-radius: 0;
}

.aiva-session-change-detail__toolbar {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    min-height: 40px;
    box-sizing: border-box;
    padding: 6px 8px;
    border-top: 0.5px solid var(--single-column-page-divider, var(--shell-border));
    background: var(--shell-bg-surface);
}

.aiva-session-change-detail__state {
    display: inline-flex;
    min-width: 0;
    flex: 0 1 auto;
    align-items: center;
    gap: 6px;
    color: color-mix(in srgb, #f59e0b 78%, var(--shell-text-primary));
    font-size: 0.75rem;
    font-weight: 560;
    line-height: 1rem;
}

.aiva-session-change-detail__state .qui-icon {
    flex: 0 0 auto;
}

.aiva-session-change-detail__state span:last-child {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-change-detail__actions {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 6px;
}

.aiva-session-change-review {
    height: 100%;
    min-height: 0;
    padding: 8px;
    box-sizing: border-box;
}

.aiva-session-change-review .code-review-viewer__stack {
    padding-bottom: 10px;
}

.aiva-session-change-review .code-review-viewer__file-meta .ui-icon-button {
    display: none;
}

.aiva-session-commit-step {
    display: flex;
    min-width: 0;
    min-height: 0;
    flex-direction: column;
    gap: 14px;
}

.aiva-session-commit-wizard {
    box-sizing: border-box;
    height: min(680px, calc(100vh - 168px));
    min-height: min(680px, calc(100vh - 168px));
}

.aiva-session-commit-wizard .wizard-frame {
    height: 100%;
    min-height: 0;
    max-height: none;
}

.aiva-session-commit-wizard .wizard-frame__body,
.aiva-session-commit-wizard .wizard-frame__content,
.aiva-session-commit-wizard .wizard-frame__step-body,
.aiva-session-commit-wizard .aiva-session-commit-step,
.aiva-session-commit-wizard .aiva-session-commit-field,
.aiva-session-commit-wizard .aiva-session-commit-message-field {
    min-height: 0;
}

.aiva-session-commit-wizard .wizard-frame__step-body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
}

.aiva-session-commit-wizard .wizard-frame__content {
    overflow: hidden;
}

.aiva-session-commit-wizard .wizard-frame__active-step-heading {
    display: none;
}

.aiva-session-commit-wizard .aiva-session-commit-step--changes,
.aiva-session-commit-wizard .aiva-session-commit-step--target-branch,
.aiva-session-commit-wizard .aiva-session-commit-step--message {
    height: 100%;
    flex: 1 1 auto;
}

.aiva-session-commit-step__toolbar {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.aiva-session-commit-step__toolbar {
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1rem;
}

.aiva-session-commit-step__toolbar-actions {
    display: flex;
    align-items: center;
    gap: 6px;
}

.aiva-session-commit-change-list {
    display: flex;
    min-width: 0;
    min-height: 0;
    max-height: none;
    flex: 1 1 auto;
    flex-direction: column;
    overflow: auto;
    gap: 0;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: var(--shell-bg-surface);
}

.aiva-session-commit-change-group + .aiva-session-commit-change-group {
    border-top: 0.5px solid var(--shell-border);
}

.aiva-session-commit-change-group__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-height: 30px;
    padding: 7px 12px;
    background: var(--shell-bg-active);
    color: var(--shell-text-secondary);
    font-size: 0.6875rem;
    font-weight: 650;
    line-height: 0.9375rem;
    text-transform: uppercase;
}

.aiva-session-commit-change-group__items {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.aiva-session-commit-change {
    display: grid;
    min-width: 0;
    grid-template-columns: 18px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    cursor: var(--pointer, pointer);
}

.aiva-session-commit-change--read-only {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    cursor: default;
}

.aiva-session-commit-change + .aiva-session-commit-change {
    border-top: 0.5px solid var(--shell-border);
}

.aiva-session-commit-change:hover,
.aiva-session-commit-change:focus-within {
    background: var(--shell-bg-hover);
}

.aiva-session-commit-change--read-only:hover {
    background: transparent;
}

.aiva-session-commit-change input {
    width: 14px;
    height: 14px;
    margin: 0;
    accent-color: var(--shell-accent, #5e6ad2);
    cursor: var(--pointer, pointer);
}

.aiva-session-commit-change__body,
.aiva-session-commit-change__line {
    display: flex;
    min-width: 0;
    gap: 8px;
}

.aiva-session-commit-change__body {
    flex-direction: column;
    gap: 2px;
}

.aiva-session-commit-change__line {
    align-items: center;
    justify-content: space-between;
}

.aiva-session-commit-change__line strong,
.aiva-session-commit-change__path {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-commit-change__line strong {
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
}

.aiva-session-commit-change__line span {
    flex: 0 0 auto;
    color: var(--shell-text-secondary);
    font-size: 0.6875rem;
    font-weight: 600;
    line-height: 0.9375rem;
    text-transform: uppercase;
}

.aiva-session-commit-change__path,
.aiva-session-commit-field label {
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1rem;
}

.aiva-session-commit-field {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 6px;
}

.aiva-session-commit-field--changes-message {
    flex: 0 0 auto;
    margin-bottom: 4px;
}

.aiva-session-commit-field--message {
    flex: 1 1 auto;
    min-height: 0;
}

.aiva-session-commit-message-field {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
}

.aiva-session-commit-message-field > .ui-form__control-shell {
    flex: 1 1 auto;
}

.aiva-session-commit-field--message .ui-form__control-shell,
.aiva-session-commit-field--message .ui-form__textarea {
    flex: 1 1 auto;
    min-height: 0;
}

.aiva-session-commit-field--message .ui-form__control-shell {
    display: flex;
}

.aiva-session-commit-field--message .ui-form__textarea {
    height: 100%;
    resize: none;
}

.aiva-session-commit-field__robot {
    margin-right: -4px;
}

.aiva-session-squash-step {
    gap: 10px;
}

.aiva-session-squash-commit-list {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
    overflow: auto;
}

.aiva-session-squash-commit--unavailable {
    opacity: 0.42;
}

.aiva-session-squash-commit--unavailable.panel-list-item--interactive {
    cursor: default;
}

.aiva-session-squash-validation {
    display: flex;
    min-width: 0;
    max-height: min(560px, calc(100vh - 220px));
    flex-direction: column;
    gap: 12px;
    overflow: auto;
    scrollbar-width: none;
}

.aiva-session-squash-validation::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.aiva-session-squash-validation__section {
    min-width: 0;
    overflow: hidden;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: var(--shell-bg-surface);
}

.aiva-session-squash-validation__section-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 8px 10px;
    border-bottom: 0.5px solid var(--shell-border);
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 560;
    line-height: 1rem;
}

.aiva-session-squash-validation__section-heading strong {
    display: inline-flex;
    min-width: 18px;
    height: 18px;
    align-items: center;
    justify-content: center;
    padding: 0 6px;
    border-radius: 999px;
    background: var(--shell-bg-hover);
    color: var(--shell-text-secondary);
    font-size: 0.6875rem;
    font-weight: 560;
    line-height: 1;
}

.aiva-session-squash-validation__rows {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.aiva-session-squash-validation__row {
    display: grid;
    min-height: 36px;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    padding: 7px 10px;
    border-top: 0.5px solid color-mix(in srgb, var(--shell-border) 72%, transparent);
}

.aiva-session-squash-validation__row:first-child {
    border-top: 0;
}

.aiva-session-squash-validation__row span {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    font-weight: 520;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-squash-validation__row code {
    color: var(--shell-text-secondary);
    font-family: var(--shell-font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
    font-size: 0.75rem;
    line-height: 1rem;
    white-space: nowrap;
}

.aiva-session-commit-edit-shell {
    overflow: hidden;
}

.aiva-session-commit-edit-form {
    box-sizing: border-box;
    height: 100%;
    min-height: 0;
    padding: 0;
    gap: 0;
}

.aiva-session-commit-edit-form .settings-modal-form__header {
    flex: 0 0 auto;
    padding: 22px 24px 18px;
    border-bottom: 0.5px solid var(--shell-menu-divider);
}

.aiva-session-commit-edit-form .settings-modal-form__fields {
    display: flex;
    flex: 1 1 auto;
    min-height: 0;
    padding: 20px 24px;
    overflow: hidden;
}

.aiva-session-commit-edit-form .aiva-session-commit-step {
    flex: 1 1 auto;
    min-height: 0;
}

.aiva-session-commit-edit-form .aiva-session-commit-field,
.aiva-session-commit-edit-form .aiva-session-commit-message-field {
    min-height: 0;
}

.aiva-session-commit-edit-form .settings-modal-form__error {
    flex: 0 0 auto;
    padding: 0 24px 12px;
}

.aiva-session-commit-edit-form .settings-modal-form__footer {
    flex: 0 0 auto;
    justify-content: flex-end;
    gap: 8px;
    padding: 16px 20px;
    border-top: 0.5px solid var(--shell-menu-divider);
}

.aiva-session-rebase-summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.aiva-session-rebase-summary > div {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 3px;
    padding: 11px 12px;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: var(--shell-bg-surface);
}

.aiva-session-rebase-summary span {
    color: var(--shell-text-secondary);
    font-size: 0.6875rem;
    font-weight: 600;
    line-height: 0.9375rem;
    text-transform: uppercase;
}

.aiva-session-rebase-summary strong {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-git-preview {
    display: flex;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 8px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: none;
}

.aiva-session-git-preview::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.aiva-inbox-detail__summary.aiva-session-git-preview__metrics {
    width: 100%;
    max-width: none;
    margin: 0;
}

.aiva-inbox-detail__summary.aiva-session-git-preview__metrics div {
    padding: 9px 11px 10px;
}

.aiva-session-git-preview__commit-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
}

.aiva-session-git-preview__list {
    display: flex;
    min-width: 0;
    flex-direction: column;
    overflow: hidden;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: var(--shell-bg-surface);
}

.aiva-session-git-preview__list-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 8px 10px;
    border-bottom: 0.5px solid var(--shell-border);
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 520;
    line-height: 1rem;
}

.aiva-session-git-preview__list-heading strong {
    color: var(--shell-text-primary);
    font-size: inherit;
    font-weight: 560;
}

.aiva-session-git-preview__commit {
    gap: 5px;
    padding: 10px 11px;
}

.aiva-session-git-preview__commit-main {
    display: grid;
    min-width: 0;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 8px;
}

.aiva-session-git-preview__commit-main code {
    color: var(--shell-text-secondary);
    font-family: var(--font-mono, "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace);
    font-size: 0.6875rem;
    font-weight: 560;
    line-height: 0.9375rem;
}

.aiva-session-git-preview__commit-main strong {
    overflow: hidden;
    color: var(--shell-text-primary);
    font-size: 0.75rem;
    font-weight: 520;
    line-height: 1rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-git-preview__commit-meta {
    overflow: hidden;
    color: var(--shell-text-secondary);
    font-size: 0.6875rem;
    font-weight: 450;
    line-height: 0.9375rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-git-preview__conflicts {
    flex: 0 0 auto;
}

.aiva-session-git-preview__conflicts li em {
    margin-left: auto;
    color: var(--shell-text-secondary);
    font-size: 0.6875rem;
    font-style: normal;
    font-weight: 520;
    line-height: 0.9375rem;
}

.aiva-session-git-completion {
    display: flex;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.aiva-session-git-completion__success {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    text-align: center;
}

.aiva-session-git-completion__success .aiva-project-merge-summary__status {
    width: 48px;
    height: 48px;
}

.aiva-session-git-completion__success strong {
    color: var(--shell-text-primary);
    font-size: 0.9375rem;
    font-weight: 560;
    line-height: 1.3125rem;
}

.aiva-project-merge-check {
    display: flex;
    min-height: 220px;
    align-items: center;
    justify-content: center;
    gap: 12px;
    text-align: left;
}

.aiva-project-merge-check__icon {
    display: grid;
    width: 36px;
    height: 36px;
    flex: 0 0 auto;
    place-items: center;
    border: 0.5px solid var(--shell-border);
    border-radius: 999px;
    background: var(--shell-bg-active);
    color: var(--shell-accent);
}

.aiva-project-merge-check__copy {
    display: flex;
    max-width: 320px;
    flex-direction: column;
    gap: 3px;
}

.aiva-project-merge-check__copy strong,
.aiva-project-merge-summary__header strong {
    color: var(--shell-text-primary);
    font-size: 0.875rem;
    font-weight: 540;
    line-height: 1.25rem;
}

.aiva-project-merge-check__copy span,
.aiva-project-merge-summary__header span {
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
}

.aiva-project-merge-summary {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.aiva-project-merge-summary__header {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.aiva-project-merge-summary__header > div {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 3px;
}

.aiva-project-merge-summary__status {
    --aiva-project-merge-summary-status-color: var(--shell-text-secondary);
    display: grid;
    width: 30px;
    height: 30px;
    flex: 0 0 auto;
    place-items: center;
    border: 0.5px solid color-mix(in srgb, var(--aiva-project-merge-summary-status-color) 46%, var(--shell-border));
    border-radius: 8px;
    background: color-mix(in srgb, var(--aiva-project-merge-summary-status-color) 18%, var(--shell-bg-active));
    color: var(--aiva-project-merge-summary-status-color);
}

.aiva-project-merge-summary__status--success {
    --aiva-project-merge-summary-status-color: #26b36a;
}

.aiva-project-merge-summary__status--warning {
    --aiva-project-merge-summary-status-color: #f5a524;
}

.aiva-project-merge-summary__metrics {
    margin: 0;
}

.aiva-project-merge-conflicts {
    overflow: hidden;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: var(--shell-bg-surface);
}

.aiva-project-merge-conflicts__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 8px 10px;
    border-bottom: 0.5px solid var(--shell-border);
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 520;
    line-height: 1rem;
}

.aiva-project-merge-conflicts__heading strong {
    color: var(--shell-text-primary);
    font-size: inherit;
    font-weight: 560;
}

.aiva-project-merge-conflicts ul {
    display: flex;
    margin: 0;
    padding: 4px;
    flex-direction: column;
    list-style: none;
}

.aiva-project-merge-conflicts li {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 7px;
    padding: 6px;
    border-radius: 6px;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
}

.aiva-project-merge-conflicts li span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-pr-branch-list {
    min-width: 0;
    min-height: 0;
    flex: 1 1 auto;
    overflow: auto;
    padding-right: 4px;
    scrollbar-width: thin;
    scrollbar-color: color-mix(in srgb, var(--shell-text-secondary) 26%, transparent) transparent;
}

.aiva-branch-picker-placeholder {
    height: 64px;
}

.aiva-branch-picker-row {
    height: 64px;
    overflow: hidden;
    padding-bottom: 6px;
}

.aiva-branch-picker-error {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: var(--shell-danger, #dc2626);
    font-size: 0.75rem;
}

.aiva-branch-picker-error span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-branch-picker-empty {
    display: flex;
    min-height: 96px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 10px;
}

[role="option"][aria-disabled="true"] {
    cursor: not-allowed;
    opacity: 0.5;
}

.aiva-session-pr-branch-list::-webkit-scrollbar {
    width: 8px;
}

.aiva-session-pr-branch-list::-webkit-scrollbar-track {
    background: transparent;
}

.aiva-session-pr-branch-list::-webkit-scrollbar-thumb {
    border: 2px solid transparent;
    border-radius: 9999px;
    background: color-mix(in srgb, var(--shell-text-secondary) 26%, transparent);
    background-clip: padding-box;
}

.aiva-session-file-editor .code-editor__title-stack {
    width: 100%;
}

.aiva-session-file-tree-panel .file-tree {
    min-height: 0;
    overflow: auto;
}

.aiva-session-file-editor__path {
    overflow: hidden;
    color: var(--code-muted);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-inbox-detail {
    display: flex;
    min-height: 100%;
    flex-direction: column;
    padding: 34px clamp(24px, 5vw, 72px) 48px;
    color: var(--shell-text-primary);
}

.aiva-inbox-detail__hero {
    max-width: 760px;
}

.aiva-inbox-detail__hero-main {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    gap: 12px;
}

.aiva-inbox-detail__hero-icon {
    flex: 0 0 auto;
    margin-top: 2px;
}

.aiva-inbox-detail__hero-copy {
    min-width: 0;
}

.aiva-inbox-detail__eyebrow {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
}

.aiva-inbox-detail__eyebrow span + span::before {
    content: "";
    display: inline-block;
    width: 3px;
    height: 3px;
    margin-right: 8px;
    border-radius: 50%;
    background: currentColor;
    vertical-align: middle;
}

.aiva-inbox-detail__hero h1 {
    margin: 0;
    color: var(--shell-text-primary);
    font-size: 1.75rem;
    font-weight: 560;
    letter-spacing: 0;
    line-height: 36px;
}

.aiva-inbox-detail__body {
    max-width: 680px;
    margin: 16px 0 0;
    color: var(--shell-text-secondary);
    font-size: 0.875rem;
    font-weight: 450;
    line-height: 1.375rem;
}

.aiva-inbox-rich-content {
    min-width: 0;
    overflow-wrap: anywhere;
}

.aiva-inbox-rich-content--plain {
    white-space: pre-wrap;
}

.aiva-inbox-detail__actions {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 22px;
}

.aiva-inbox-detail__summary {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
    max-width: 820px;
    margin-top: 34px;
    border: 0.5px solid var(--shell-border);
    border-radius: 10px;
    background: color-mix(in srgb, var(--shell-bg-active) 74%, transparent);
}

.aiva-inbox-detail__summary div {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 5px;
    padding: 13px 15px 14px;
}

.aiva-inbox-detail__summary div + div {
    border-left: 0.5px solid var(--shell-border);
}

.aiva-inbox-detail__summary span {
    color: var(--shell-text-secondary);
    font-size: 0.6875rem;
    font-weight: 500;
    line-height: 0.9375rem;
}

.aiva-inbox-detail__summary strong {
    overflow: hidden;
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    font-weight: 520;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-inbox-thread {
    max-width: 760px;
    margin-top: 34px;
}

.aiva-project-detail-section {
    width: min(100%, 820px);
    margin-top: 24px;
}

.aiva-project-pr-tabs {
    display: flex;
    width: min(100%, 820px);
    align-items: center;
    margin-top: 12px;
}

.aiva-project-pr-actions {
    display: flex;
    align-items: center;
    gap: 4px;
}

.aiva-project-pr-action-anchor {
    display: inline-flex;
}

.aiva-project-pr-mergeability {
    display: grid;
    width: min(100%, 820px);
    min-height: 36px;
    box-sizing: border-box;
    grid-template-columns: 18px auto minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    padding: 8px 11px;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: color-mix(in srgb, var(--shell-bg-active) 72%, transparent);
    color: var(--shell-text-secondary);
    margin-top: 12px;
    font-size: 0.75rem;
    line-height: 1rem;
}

.aiva-project-pr-mergeability__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.aiva-project-pr-mergeability strong {
    color: var(--shell-text-primary);
    font-size: inherit;
    font-weight: 600;
    white-space: nowrap;
}

.aiva-project-pr-mergeability--conflict {
    border-color: color-mix(in srgb, var(--status-danger, #c44f4f) 44%, var(--shell-border));
    background: color-mix(in srgb, var(--status-danger, #c44f4f) 9%, var(--shell-bg-active));
}

.aiva-project-pr-mergeability--conflict .aiva-project-pr-mergeability__icon {
    color: var(--status-danger, #c44f4f);
}

.aiva-project-pr-review {
    width: 100%;
    margin-top: 18px;
}

.aiva-project-pr-review__viewer {
    width: 100%;
}

.aiva-project-pr-stat {
    font-family: var(--font-mono, "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace);
    font-weight: 620;
}

.aiva-project-pr-stat--added {
    color: var(--status-success, #2f8b5b);
}

.aiva-project-pr-stat--deleted {
    color: var(--status-danger, #c44f4f);
}

.aiva-project-list-panel {
    display: flex;
    min-width: 0;
    min-height: 0;
    height: 100%;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 8px;
}

.aiva-project-list-split-panel .split-view--inset-inline .split-view__pane--left .split-view__body,
.aiva-project-list-split-panel .split-view--inset-inline .split-view__pane--right .split-view__body {
    display: flex;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
}

.aiva-project-list-split-panel .split-view--inset-inline .split-view__pane--left .split-view__body {
    padding: 8px;
}

.aiva-project-list-panel__search {
    flex: 0 0 auto;
    margin: 0;
}

.aiva-project-list-panel__body {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
    overflow: auto;
    scrollbar-width: none;
}

.aiva-project-list-panel__body::-webkit-scrollbar {
    display: none;
}

.aiva-project-list-panel__body .panel-list {
    display: flex;
    min-height: 100%;
    flex: 1 1 auto;
    flex-direction: column;
}

.aiva-project-list-panel__body .aiva-panel-empty--fill,
.aiva-project-list-split-panel .split-view__body > .aiva-panel-empty--fill {
    min-height: 100%;
}

/* Virtualize empty content can sit outside normal flow; pin fill empties to the list body. */
.aiva-project-list-panel__body:has(.aiva-panel-empty--fill) {
    overflow: hidden;
}

.aiva-project-list-panel__body .aiva-panel-empty--fill {
    position: absolute;
    inset: 0;
    z-index: 1;
    width: 100%;
    height: auto;
    min-height: 0;
    flex: none;
}

.aiva-project-list-panel__body .panel-list-item__chrome {
    margin-inline: 0;
}

.aiva-inbox-list-panel {
    display: flex;
    min-width: 0;
    min-height: 0;
    height: 100%;
    flex: 1 1 auto;
    flex-direction: column;
}

.aiva-inbox-list-panel__body {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: 0;
    height: 100%;
    flex: 1 1 auto;
    flex-direction: column;
    overflow: auto;
    scrollbar-width: none;
}

.aiva-inbox-list-panel__footer {
    position: relative;
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 4px;
    min-height: 48px;
    padding: 8px 10px;
}

.aiva-inbox-list-panel__footer::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 0.5px;
    background: var(--shell-border);
}

.aiva-inbox-list-panel__body::-webkit-scrollbar {
    display: none;
}

.aiva-inbox-list-panel__body .panel-list {
    display: flex;
    min-height: 100%;
    flex: 1 1 auto;
    flex-direction: column;
}

.aiva-inbox-list-panel__body:has(.aiva-panel-empty--fill) {
    overflow: hidden;
}

.aiva-inbox-list-panel__body .aiva-panel-empty--fill {
    position: absolute;
    inset: 0;
    z-index: 1;
    width: 100%;
    height: auto;
    min-height: 0;
    flex: none;
}

.aiva-project-list-panel__footer {
    position: relative;
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: flex-start;
    gap: 6px;
    padding: 8px 0 0;
}

.aiva-project-list-panel__footer::before {
    content: "";
    position: absolute;
    top: 0;
    right: -8px;
    left: -8px;
    height: 0.5px;
    background: var(--shell-border);
}

.aiva-project-list-panel__footer-spacer {
    flex: 1 1 auto;
}

.aiva-project-list-panel__footer-message {
    min-width: 0;
    overflow: hidden;
    color: var(--text-muted);
    font-size: 12px;
    line-height: 1.4;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-project-list-filter-anchor {
    position: relative;
    display: inline-flex;
    flex: 0 0 auto;
}

.aiva-project-overview {
    width: 100%;
}

.aiva-project-chart-grid {
    width: 100%;
}

.aiva-project-token-chart-card {
    width: 100%;
}

.aiva-project-token-bar-chart {
    min-height: 260px;
}

.aiva-project-git-panel {
    --detail-tab-panel-gutter: 0;
    --detail-tab-panel-top-gutter: 0;
    gap: 0;
    overflow: hidden;
}

.aiva-project-git {
    display: flex;
    width: 100%;
    height: 100%;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
}

.aiva-project-git-graph {
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: none;
    flex: 1 1 auto;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.aiva-project-git-graph .git-commit-graph__header {
    border-bottom: 0;
    background: transparent;
}

.aiva-project-markdown {
    padding: 0;
    color: var(--assistant-panel-text, var(--shell-text-primary));
}

.aiva-project-commit-list {
    display: flex;
    width: min(100%, 820px);
    flex-direction: column;
    overflow: hidden;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: var(--shell-bg-surface);
}

.aiva-project-commit {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 8px;
    padding: 13px 15px 14px;
}

.aiva-project-commit + .aiva-project-commit {
    border-top: 0.5px solid var(--shell-border);
}

.aiva-project-commit__header {
    display: flex;
    min-width: 0;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1rem;
}

.aiva-project-commit__header span + span::before {
    display: inline-block;
    width: 3px;
    height: 3px;
    margin: 0 8px 2px 0;
    border-radius: 9999px;
    background: currentColor;
    content: "";
    opacity: 0.6;
    vertical-align: middle;
}

.aiva-project-commit__sha {
    color: var(--shell-text-primary);
    font-family: var(--font-mono, "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace);
    font-weight: 620;
}

.aiva-project-commit--selectable {
    width: 100%;
    margin: 0;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: left;
    cursor: pointer;
    transition: background 120ms ease;
}

.aiva-project-commit--selectable:hover {
    background: var(--shell-bg-hover);
}

.aiva-project-commit--selectable:focus-visible {
    outline: 2px solid var(--shell-focus-ring, var(--shell-accent, #8b5cf6));
    outline-offset: -2px;
}

.aiva-project-create-modal .field-row__trailing {
    min-width: 0;
}

.aiva-project-create-modal .ui-form__rich-text {
    width: 100%;
}

.aiva-project-process {
    display: flex;
    width: min(100%, 820px);
    flex-direction: column;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    overflow: hidden;
    background: var(--shell-bg-surface);
}

.aiva-project-process__stage {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr) auto;
    align-items: start;
    gap: 10px;
    padding: 12px 14px;
}

.aiva-project-process__stage-group + .aiva-project-process__stage-group {
    border-top: 0.5px solid var(--shell-border);
}

.aiva-project-process__node {
    display: inline-flex;
    width: 24px;
    height: 24px;
    align-items: center;
    justify-content: center;
    border: 0.5px solid var(--shell-border);
    border-radius: 50%;
    background: var(--shell-bg-active);
    color: var(--shell-text-secondary);
}

.aiva-project-process__stage--completed .aiva-project-process__node,
.aiva-project-process__stage--succeeded .aiva-project-process__node {
    border-color: color-mix(in srgb, #2f8f5b 35%, var(--shell-border));
    background: color-mix(in srgb, #2f8f5b 12%, var(--shell-bg-active));
    color: #2f8f5b;
}

.aiva-project-process__stage--running .aiva-project-process__node {
    border-color: color-mix(in srgb, #5e6ad2 35%, var(--shell-border));
    background: color-mix(in srgb, #5e6ad2 12%, var(--shell-bg-active));
    color: #5e6ad2;
}

.aiva-project-process__stage--failed .aiva-project-process__node,
.aiva-project-process__stage--cancelled .aiva-project-process__node {
    border-color: color-mix(in srgb, #eb5757 35%, var(--shell-border));
    background: color-mix(in srgb, #eb5757 12%, var(--shell-bg-active));
    color: #eb5757;
}

.aiva-project-process__stage--partially-succeeded .aiva-project-process__node {
    border-color: color-mix(in srgb, #f2994a 35%, var(--shell-border));
    background: color-mix(in srgb, #f2994a 12%, var(--shell-bg-active));
    color: #f2994a;
}

.aiva-project-process__content {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 3px;
}

.aiva-project-process__content strong {
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
}

.aiva-project-process__content span,
.aiva-project-process__duration {
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
}

.aiva-project-process__duration {
    white-space: nowrap;
}

.aiva-project-process__steps {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 0 14px 10px 52px;
}

.aiva-project-process__step {
    display: grid;
    grid-template-columns: 20px minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    min-height: 24px;
}

.aiva-project-process__step-node {
    width: 18px;
    height: 18px;
}

.aiva-project-process__step-name {
    overflow: hidden;
    color: var(--shell-text-primary);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-plan-trigger {
    display: inline-flex;
}

.aiva-session-goal-trigger {
    display: inline-flex;
}

.aiva-session-terminal-trigger {
    display: inline-flex;
}

.aiva-session-limits-trigger {
    display: inline-flex;
}

.aiva-session-limits-button {
    position: relative;
    overflow: visible;
}

.aiva-session-limits-button .ui-button__badge--dot {
    top: -3px;
    right: -3px;
    border-color: var(--shell-bg-surface);
}

.aiva-session-limits-button--warning .ui-button__badge--dot {
    background: var(--shell-warning-text, #d97706);
}

.aiva-session-limits-button--danger .ui-button__badge--dot {
    background: var(--shell-danger-text, #ef4444);
}

.aiva-session-widget-popover[popover] {
    transition:
        display 200ms allow-discrete,
        overlay 200ms allow-discrete;
}

.aiva-session-widget-popover .ui-popover__surface {
    padding: 0;
    transform: translateY(-8px) scale(0.97);
    transform-origin: var(--ui-popover-origin, 50% 0);
    border-color: var(--shell-menu-border, var(--shell-border));
    background: var(--shell-menu-bg, var(--shell-bg-surface));
    color: var(--shell-menu-text, var(--shell-text-primary));
    box-shadow: var(--shell-menu-shadow, 0 4px 4px -1px lch(0% 0 0 / 0.04), 0 1px 1px 0 lch(0% 0 0 / 0.08));
    opacity: 0;
    animation: none;
    transition:
        opacity 120ms ease,
        transform 160ms cubic-bezier(0.4, 0, 1, 1);
}

.aiva-session-widget-popover:popover-open .ui-popover__surface {
    transform: translateY(0) scale(1);
    opacity: 1;
    transition:
        opacity 160ms ease,
        transform 200ms cubic-bezier(0.3, 1.2, 0.4, 1);
}

@starting-style {
    .aiva-session-widget-popover:popover-open .ui-popover__surface {
        transform: translateY(-8px) scale(0.97);
        opacity: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .aiva-session-widget-popover[popover],
    .aiva-session-widget-popover .ui-popover__surface,
    .aiva-session-widget-popover:popover-open .ui-popover__surface {
        transition: none;
    }
}

.aiva-session-limits-popover .ui-popover__surface {
    width: 316px;
    max-width: min(316px, calc(100vw - 24px));
}

.aiva-session-limits-preview {
    display: flex;
    min-width: 0;
    flex-direction: column;
    color: var(--shell-menu-text, var(--shell-text-primary));
}

.aiva-session-limits-preview__header {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px 9px;
    border-bottom: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-limits-preview__header-text {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}

.aiva-session-limits-preview__header strong {
    color: var(--shell-menu-text-strong, var(--shell-menu-text, var(--shell-text-primary)));
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
}

.aiva-session-limits-preview__header > span,
.aiva-session-limits-preview__subtitle {
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
}

.aiva-session-limits-preview__subtitle {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-workspace-limits {
    display: flex;
    width: 100%;
    min-width: 0;
    flex-direction: column;
    gap: 16px;
}

.aiva-workspace-limits__grid {
    width: 100%;
}

.aiva-workspace-limits__card {
    min-width: 0;
    overflow: hidden;
    border: 0.5px solid var(--shell-border);
    border-radius: 10px;
    background: var(--shell-bg-surface);
}

.aiva-workspace-limits__panel.aiva-session-limits-preview {
    color: var(--shell-text-primary);
}

.aiva-workspace-limits__panel .aiva-session-limits-preview__header {
    border-bottom-color: var(--shell-border);
}

.aiva-workspace-limits__panel .aiva-session-limits-preview__items {
    max-height: none;
}

.aiva-workspace-limits__panel .aiva-session-limits-preview__item + .aiva-session-limits-preview__item,
.aiva-workspace-limits__panel .aiva-session-limits-preview__item + .aiva-session-limits-preview__group-label {
    border-top-color: var(--shell-border);
}

.aiva-session-limits-preview__state {
    padding: 14px 12px;
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.75rem;
    line-height: 1rem;
}

.aiva-session-limits-preview__items {
    display: flex;
    max-height: 280px;
    min-width: 0;
    flex-direction: column;
    margin: 0;
    padding: 0;
    overflow: auto;
    list-style: none;
    scrollbar-width: thin;
}

.aiva-session-limits-preview__item {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 7px;
    padding: 10px 12px 11px;
}

.aiva-session-limits-preview__group-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 8px 12px 4px;
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.6875rem;
    font-weight: 560;
    line-height: 0.875rem;
    list-style: none;
}

.aiva-session-limits-preview__item + .aiva-session-limits-preview__group-label {
    padding-top: 9px;
    border-top: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-limits-preview__item + .aiva-session-limits-preview__item {
    border-top: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-limits-preview__meta {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    font-size: 0.75rem;
    line-height: 1rem;
}

.aiva-session-limits-preview__label {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-menu-text, var(--shell-text-primary));
    font-variant-numeric: tabular-nums;
    font-weight: 520;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-limits-preview__meta > span:last-child {
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-weight: 450;
    white-space: nowrap;
}

.aiva-session-limits-preview__meta--stacked {
    grid-template-columns: minmax(0, 1fr);
    gap: 2px;
}

.aiva-session-limits-preview__meta--stacked .aiva-session-limits-preview__label,
.aiva-session-limits-preview__meta--stacked > span:last-child {
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
}

.aiva-session-limits-preview__item .progress-bar {
    width: 100%;
    min-width: 0;
}

.aiva-session-limits-preview__footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
    padding: 7px 8px;
    border-top: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-sidequest-trigger {
    display: inline-flex;
}

.aiva-session-plan-button {
    position: relative;
}

.aiva-session-goal-button {
    min-width: 84px;
    justify-content: center;
    font-variant-numeric: tabular-nums;
}

.aiva-session-terminal-button {
    position: relative;
    overflow: visible;
}

.aiva-session-sidequest-button {
    position: relative;
    overflow: visible;
}

.aiva-session-terminal-button .ui-button__badge--dot,
.aiva-session-sidequest-button .ui-button__badge--dot {
    top: -3px;
    right: -3px;
    border-color: var(--shell-bg-surface);
}

.aiva-session-sidequest-button--live .ui-button__badge--dot {
    background: var(--shell-success-text, #26b36a);
}

.aiva-session-sidequest-button--creating .ui-button__badge--dot {
    background: var(--shell-warning-text, #d97706);
}

.aiva-session-review-button-frame {
    position: relative;
    display: inline-flex;
    overflow: visible;
}

.aiva-session-review-button__badge {
    top: -3px;
    right: -3px;
    border-color: var(--shell-bg-surface);
}

.aiva-session-review-button-frame--high .aiva-session-review-button__badge {
    background: #f04438;
}

.aiva-session-review-button-frame--medium .aiva-session-review-button__badge {
    background: #f5b544;
}

.aiva-session-review-button-frame--low .aiva-session-review-button__badge {
    background: var(--shell-success-text, #26b36a);
}

.aiva-session-plan-button--active {
    overflow: visible;
}

.aiva-session-plan-button--active .ui-button__badge--dot {
    top: -3px;
    right: -3px;
    border-color: var(--shell-bg-surface);
    background: var(--shell-success-text, #26b36a);
    animation: aiva-session-plan-dot 1.8s ease-in-out infinite;
}

.aiva-session-plan-popover .ui-popover__surface {
    width: max-content;
    min-width: min(284px, calc(100vw - 24px));
    max-width: min(568px, calc(100vw - 24px));
}

.aiva-session-goal-popover .ui-popover__surface {
    width: 314px;
    max-width: min(314px, calc(100vw - 24px));
}

.aiva-session-terminal-popover .ui-popover__surface {
    width: 316px;
    max-width: min(316px, calc(100vw - 24px));
}

.aiva-session-sidequest-popover .ui-popover__surface {
    width: 336px;
    max-width: min(336px, calc(100vw - 24px));
}

.aiva-session-plan-preview {
    display: flex;
    min-width: 0;
    flex-direction: column;
    color: var(--shell-menu-text, var(--shell-text-primary));
}

.aiva-session-terminal-preview {
    display: flex;
    min-width: 0;
    flex-direction: column;
    color: var(--shell-menu-text, var(--shell-text-primary));
}

.aiva-session-sidequest-preview {
    display: flex;
    min-width: 0;
    flex-direction: column;
    color: var(--shell-menu-text, var(--shell-text-primary));
}

.aiva-session-goal-preview {
    display: flex;
    min-width: 0;
    flex-direction: column;
    color: var(--shell-menu-text, var(--shell-text-primary));
}

.aiva-session-plan-preview__header {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px 9px;
    border-bottom: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-terminal-preview__header {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px 9px;
    border-bottom: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-sidequest-preview__header {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px 9px;
    border-bottom: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-goal-preview__header {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px 9px;
    border-bottom: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-plan-preview__header > strong:first-child,
.aiva-session-sidequest-preview__header > strong:first-child {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-menu-text-strong, var(--shell-menu-text, var(--shell-text-primary)));
    font-family: inherit;
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-terminal-preview__header strong {
    color: var(--shell-menu-text-strong, var(--shell-menu-text, var(--shell-text-primary)));
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
}

.aiva-session-sidequest-preview__header strong {
    color: var(--shell-menu-text-strong, var(--shell-menu-text, var(--shell-text-primary)));
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
}

.aiva-session-goal-preview__header strong {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-menu-text-strong, var(--shell-menu-text, var(--shell-text-primary)));
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-plan-preview__header > span:last-child,
.aiva-session-sidequest-preview__header > span:last-child {
    flex: 0 0 auto;
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-family: inherit;
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
    white-space: nowrap;
}

.aiva-session-terminal-preview__header span {
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
    white-space: nowrap;
}

.aiva-session-sidequest-preview__header span {
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
    white-space: nowrap;
}

.aiva-session-goal-preview__header span {
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-family: ui-monospace, "SFMono-Regular", "SF Mono", Menlo, Consolas, monospace;
    font-size: 0.75rem;
    font-weight: 520;
    line-height: 1rem;
    white-space: nowrap;
}

.aiva-session-plan-preview__items {
    display: flex;
    max-height: 218px;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
    margin: 0;
    padding: 6px;
    overflow: auto;
    list-style: none;
    scrollbar-width: none;
}

.aiva-session-terminal-preview__items {
    display: flex;
    max-height: 224px;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
    margin: 0;
    padding: 6px;
    overflow: auto;
    list-style: none;
    scrollbar-width: none;
}

.aiva-session-sidequest-preview__items {
    display: flex;
    max-height: 224px;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
    margin: 0;
    padding: 6px;
    overflow: auto;
    list-style: none;
    scrollbar-width: none;
}

.aiva-session-plan-preview__items::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.aiva-session-terminal-preview__items::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.aiva-session-sidequest-preview__items::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.aiva-session-plan-preview__item {
    display: grid;
    grid-template-columns: 16px minmax(0, 1fr);
    min-height: 28px;
    align-items: center;
    gap: 8px;
    padding: 4px 6px;
    border-radius: 6px;
    color: var(--shell-menu-text, var(--shell-text-primary));
    font-size: 0.8125rem;
    font-weight: 450;
    line-height: 1.125rem;
}

.aiva-session-plan-preview__item--completed {
    color: var(--shell-menu-hint, var(--shell-text-secondary));
}

.aiva-session-plan-preview__item-leading {
    display: inline-flex;
    width: 16px;
    height: 18px;
    align-items: center;
    justify-content: center;
    color: var(--shell-menu-hint, var(--shell-text-secondary));
}

.aiva-session-plan-preview__item-icon {
    display: inline-flex;
    color: currentColor;
}

.aiva-session-plan-preview__item-spinner {
    box-sizing: border-box;
    width: 12px;
    height: 12px;
    border: 2px solid color-mix(in srgb, currentColor 24%, transparent);
    border-top-color: currentColor;
    border-radius: 9999px;
    animation: aiva-session-plan-spinner 0.72s linear infinite;
}

.aiva-session-plan-preview__item--completed .aiva-session-plan-preview__item-leading {
    color: var(--shell-success-text, #4fb56f);
}

.aiva-session-plan-preview__item-title {
    display: -webkit-box;
    min-width: 0;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow-wrap: anywhere;
    text-overflow: ellipsis;
    white-space: normal;
}

.aiva-session-terminal-preview__item-shell {
    min-width: 0;
}

.aiva-session-terminal-preview__item {
    width: 100%;
    border: 0;
    display: grid;
    min-height: 42px;
    grid-template-columns: 10px minmax(0, 1fr) auto;
    align-items: center;
    gap: 9px;
    padding: 5px 6px;
    border-radius: 6px;
    background: transparent;
    color: var(--shell-menu-text, var(--shell-text-primary));
    cursor: pointer;
    font: inherit;
    text-align: left;
}

.aiva-session-sidequest-preview__item {
    display: grid;
    min-height: 42px;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 4px;
    padding: 2px;
    border-radius: 6px;
    color: var(--shell-menu-text, var(--shell-text-primary));
}

.aiva-session-sidequest-preview__details {
    display: grid;
    min-width: 0;
    min-height: 38px;
    grid-template-columns: 10px minmax(0, 1fr);
    align-items: center;
    gap: 9px;
    padding: 3px 4px;
    border: 0;
    border-radius: 5px;
    background: transparent;
    color: inherit;
    cursor: pointer;
    font: inherit;
    text-align: left;
}

.aiva-session-linked-issues__item {
    width: 100%;
    border: 0;
    display: grid;
    min-height: 42px;
    grid-template-columns: 16px minmax(0, 1fr) 16px;
    align-items: center;
    gap: 8px;
    padding: 5px 6px;
    border-radius: 6px;
    background: transparent;
    color: var(--shell-menu-text, var(--shell-text-primary));
    cursor: pointer;
    font: inherit;
    text-align: left;
}

.aiva-session-linked-issues__item:hover,
.aiva-session-linked-issues__item:focus-visible {
    background: var(--shell-menu-item-hover-bg, var(--shell-bg-hover));
}

.aiva-session-linked-issues__item:focus-visible {
    outline: 1px solid var(--shell-focus-ring, var(--shell-accent, #5e6ad2));
    outline-offset: 1px;
}

.aiva-session-linked-issues__item:disabled {
    cursor: default;
    opacity: 0.58;
}

.aiva-session-linked-issues__icon,
.aiva-session-linked-issues__open {
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.75rem;
    text-align: center;
}

.aiva-session-terminal-preview__item:hover,
.aiva-session-terminal-preview__item:focus-visible,
.aiva-session-sidequest-preview__details:hover,
.aiva-session-sidequest-preview__details:focus-visible {
    background: var(--shell-menu-item-hover-bg, var(--shell-bg-hover));
}

.aiva-session-terminal-preview__item:focus-visible,
.aiva-session-sidequest-preview__details:focus-visible {
    outline: 1px solid var(--shell-focus-ring, var(--shell-accent, #5e6ad2));
    outline-offset: 1px;
}

.aiva-session-terminal-preview__status {
    width: 7px;
    height: 7px;
    border-radius: 999px;
    background: var(--shell-menu-hint, var(--shell-text-secondary));
    opacity: 0.74;
}

.aiva-session-terminal-preview__status--running {
    background: var(--shell-success-text, #26b36a);
    opacity: 1;
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--shell-success-text, #26b36a) 18%, transparent);
}

.aiva-session-terminal-preview__status--failed {
    background: var(--shell-danger-text, #dc2626);
    opacity: 1;
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--shell-danger-text, #dc2626) 16%, transparent);
}

.aiva-session-terminal-preview__status--exited {
    background: var(--shell-menu-hint, var(--shell-text-secondary));
    opacity: 0.6;
}

.aiva-session-sidequest-preview__status {
    width: 7px;
    height: 7px;
    border-radius: 999px;
    background: var(--aiva-session-sidequest-preview-status-color, var(--shell-menu-hint, var(--shell-text-secondary)));
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--aiva-session-sidequest-preview-status-color, var(--shell-menu-hint, var(--shell-text-secondary))) 18%, transparent);
}

.aiva-session-terminal-preview__copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
}

.aiva-session-sidequest-preview__copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
}

.aiva-session-sidequest-preview__actions {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.aiva-session-terminal-preview__title,
.aiva-session-terminal-preview__meta,
.aiva-session-sidequest-preview__title,
.aiva-session-sidequest-preview__meta {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-terminal-preview__title {
    color: var(--shell-menu-text, var(--shell-text-primary));
    font-size: 0.8125rem;
    font-weight: 520;
    line-height: 1.125rem;
}

.aiva-session-sidequest-preview__title {
    color: var(--shell-menu-text, var(--shell-text-primary));
    font-size: 0.8125rem;
    font-weight: 520;
    line-height: 1.125rem;
}

.aiva-session-terminal-preview__meta {
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
}

.aiva-session-sidequest-preview__meta {
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
}

.aiva-session-terminal-preview__footer {
    display: flex;
    justify-content: flex-end;
    padding: 7px 8px;
    border-top: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-sidequest-preview__footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    padding: 7px 8px;
    border-top: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-sidequest-modal {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 12px;
}

.aiva-session-sidequest-modal__hero {
    display: grid;
    min-width: 0;
    grid-template-columns: 10px minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    padding: 14px;
    border: 0.5px solid color-mix(in srgb, var(--aiva-session-sidequest-modal-status-color, var(--shell-border)) 38%, var(--shell-border));
    border-radius: 10px;
    background:
        linear-gradient(120deg,
            color-mix(in srgb, var(--aiva-session-sidequest-modal-status-color, var(--shell-bg-surface)) 7%, var(--shell-bg-surface)) 0%,
            var(--shell-bg-surface) 64%);
}

.aiva-session-sidequest-modal__status {
    width: 9px;
    height: 9px;
    border-radius: 999px;
    background: var(--aiva-session-sidequest-modal-status-color, var(--shell-text-secondary));
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--aiva-session-sidequest-modal-status-color, var(--shell-text-secondary)) 18%, transparent);
}

.aiva-session-sidequest-modal__hero-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}

.aiva-session-sidequest-modal__hero-copy strong {
    color: var(--shell-text-primary);
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.25rem;
}

.aiva-session-sidequest-modal__hero-copy span {
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
}

.aiva-session-sidequest-modal__overview {
    display: grid;
    min-width: 0;
    gap: 12px;
}

.aiva-session-sidequest-modal__error-card h3 {
    margin: 0;
    color: var(--shell-text-primary);
    font-size: 0.75rem;
    font-weight: 620;
    letter-spacing: 0.01em;
    line-height: 1rem;
}

.aiva-session-sidequest-modal__facts {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(0, 2fr) minmax(120px, 1fr) minmax(120px, 1fr);
    margin: 0;
    overflow: hidden;
    border: 0.5px solid var(--shell-border);
    border-radius: 9px;
    background: var(--shell-bg-surface);
}

.aiva-session-sidequest-modal__facts--three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.aiva-session-sidequest-modal__fact {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 4px;
    padding: 11px 12px;
    border-left: 0.5px solid var(--shell-border);
}

.aiva-session-sidequest-modal__fact:first-child {
    border-left: 0;
}

.aiva-session-sidequest-modal__fact dt {
    color: var(--shell-text-secondary);
    font-size: 0.6875rem;
    font-weight: 520;
    line-height: 0.875rem;
    text-transform: uppercase;
}

.aiva-session-sidequest-modal__fact dd {
    min-width: 0;
    margin: 0;
    overflow: hidden;
    color: var(--shell-text-primary);
    font-family: ui-monospace, "SFMono-Regular", "SF Mono", Menlo, Consolas, monospace;
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-sidequest-modal__endpoints {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
    margin: 0;
    padding: 5px;
    border: 0.5px solid var(--shell-border);
    border-radius: 9px;
    background: var(--shell-bg-surface);
    list-style: none;
}

.aiva-session-sidequest-modal__endpoints li {
    display: grid;
    min-width: 0;
    grid-template-columns: 28px minmax(0, 1fr) 28px;
    align-items: center;
    gap: 8px;
    padding: 6px;
    border-radius: 6px;
}

.aiva-session-sidequest-modal__endpoints li:hover {
    background: var(--shell-bg-hover);
}

.aiva-session-sidequest-modal__endpoint-icon,
.aiva-session-sidequest-modal__endpoint-open {
    display: inline-flex;
    width: 28px;
    height: 28px;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    color: var(--shell-text-secondary);
}

.aiva-session-sidequest-modal__endpoint-icon {
    background: color-mix(in srgb, var(--shell-border) 54%, transparent);
}

.aiva-session-sidequest-modal__endpoint-open:hover,
.aiva-session-sidequest-modal__endpoint-open:focus-visible {
    background: var(--shell-bg-hover);
    color: var(--shell-text-primary);
}

.aiva-session-sidequest-modal__endpoint-open:focus-visible {
    outline: 1px solid var(--shell-focus-ring, var(--shell-accent, #5e6ad2));
    outline-offset: 1px;
}

.aiva-session-sidequest-modal__endpoint-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
}

.aiva-session-sidequest-modal__endpoint-copy strong {
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
}

.aiva-session-sidequest-modal__endpoint-copy span {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-text-secondary);
    font-family: ui-monospace, "SFMono-Regular", "SF Mono", Menlo, Consolas, monospace;
    font-size: 0.71875rem;
    line-height: 1rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-sidequest-modal__empty {
    margin: 0;
    padding: 14px;
    border: 0.5px dashed var(--shell-border);
    border-radius: 9px;
    color: var(--shell-text-secondary);
    font-size: 0.8125rem;
    line-height: 1.25rem;
    text-align: center;
}

.aiva-session-sidequest-modal__error-card {
    display: grid;
    min-width: 0;
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 8px;
    padding: 11px 12px;
    border: 0.5px solid color-mix(in srgb, var(--shell-danger-text, #dc2626) 32%, var(--shell-border));
    border-radius: 9px;
    background: color-mix(in srgb, var(--shell-danger-text, #dc2626) 6%, var(--shell-bg-surface));
    color: var(--shell-danger-text, #dc2626);
}

.aiva-session-sidequest-modal__error-card div {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 3px;
}

.aiva-session-sidequest-modal__error-card h3 {
    color: inherit;
}

.aiva-session-sidequest-modal__error-card p {
    margin: 0;
    overflow-wrap: anywhere;
    color: var(--shell-text-primary);
    font-size: 0.75rem;
    line-height: 1.125rem;
}

.aiva-session-sidequest-modal__success-card {
    display: grid;
    min-width: 0;
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 8px;
    padding: 11px 12px;
    border: 0.5px solid color-mix(in srgb, #26b36a 36%, var(--shell-border));
    border-radius: 9px;
    background: color-mix(in srgb, #26b36a 7%, var(--shell-bg-surface));
    color: #26b36a;
}

.aiva-session-sidequest-modal__success-card p {
    margin: 0;
    color: var(--shell-text-primary);
    font-size: 0.75rem;
    line-height: 1.125rem;
}

.aiva-session-sidequest-modal__extend-control {
    display: flex;
    min-width: 220px;
    margin-right: auto;
    align-items: center;
    gap: 9px;
}

.aiva-session-sidequest-modal__extend-control > span {
    flex: 0 0 auto;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 560;
    line-height: 1rem;
}

.aiva-session-sidequest-modal__extend-input {
    width: 150px;
}

.aiva-session-sidequest-modal__destroy-prompt {
    margin-right: auto;
    color: var(--shell-danger-text, #dc2626);
    font-size: 0.75rem;
    font-weight: 560;
    line-height: 1rem;
}

.aiva-session-sidequest-modal-shell .tabbed-modal__content:has(.aiva-session-sidequest-logs) {
    overflow: hidden;
}

.aiva-session-sidequest-modal-shell .tabbed-modal__panel:has(.aiva-session-sidequest-logs) {
    box-sizing: border-box;
    min-height: 0;
    height: 100%;
    overflow: hidden;
}

.aiva-session-sidequest-logs {
    display: flex;
    min-width: 0;
    min-height: 0;
    height: 100%;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 10px;
}

.aiva-session-sidequest-logs__toolbar {
    display: flex;
    min-width: 0;
    flex: 0 0 auto;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.aiva-session-sidequest-logs__search {
    min-width: 220px;
    flex: 1 1 280px;
}

.aiva-session-sidequest-logs__service {
    min-width: 150px;
    flex: 0 1 180px;
}

.aiva-session-sidequest-logs__window,
.aiva-session-sidequest-logs__tail {
    min-width: 140px;
    flex: 0 1 158px;
}

.aiva-session-sidequest-logs__meta {
    display: flex;
    min-width: 0;
    min-height: 18px;
    flex: 0 0 auto;
    align-items: center;
    gap: 8px;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
}

.aiva-session-sidequest-logs__meta > span:first-child {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-sidequest-logs__truncated {
    flex: 0 0 auto;
    padding: 1px 6px;
    border: 0.5px solid color-mix(in srgb, var(--shell-warning-text, #b7791f) 34%, var(--shell-border));
    border-radius: 999px;
    background: color-mix(in srgb, var(--shell-warning-text, #b7791f) 7%, transparent);
    color: var(--shell-warning-text, #b7791f);
    font-size: 0.6875rem;
    font-weight: 560;
    line-height: 0.9375rem;
}

.aiva-session-sidequest-logs__body {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: 300px;
    flex: 1 1 auto;
}

.aiva-session-sidequest-logs__surface {
    min-width: 0;
    min-height: 300px;
    height: 100%;
    flex: 1 1 auto;
    overflow: hidden;
    border: 0.5px solid var(--shell-border);
    border-radius: 9px;
    background: color-mix(in srgb, var(--shell-bg-surface) 92%, #000);
}

.aiva-session-sidequest-logs__state {
    display: flex;
    min-width: 0;
    min-height: 220px;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 20px;
    border: 0.5px dashed var(--shell-border);
    border-radius: 9px;
    color: var(--shell-text-secondary);
    font-size: 0.8125rem;
    line-height: 1.25rem;
    text-align: center;
}

.aiva-session-sidequest-logs__state--error {
    border-color: color-mix(in srgb, var(--shell-danger-text, #dc2626) 30%, var(--shell-border));
    background: color-mix(in srgb, var(--shell-danger-text, #dc2626) 4%, transparent);
    color: var(--shell-danger-text, #dc2626);
}

.aiva-session-sidequest-logs__refreshing {
    position: absolute;
    z-index: 2;
    top: 8px;
    right: 8px;
    padding: 3px 7px;
    border: 0.5px solid var(--shell-border);
    border-radius: 6px;
    background: color-mix(in srgb, var(--shell-bg-elevated, var(--shell-bg-surface)) 92%, transparent);
    box-shadow: 0 3px 10px color-mix(in srgb, #000 12%, transparent);
    color: var(--shell-text-secondary);
    font-size: 0.6875rem;
    font-weight: 520;
    line-height: 1rem;
}

@media (max-width: 640px) {

    .aiva-session-sidequest-modal__hero {
        grid-template-columns: 10px minmax(0, 1fr);
    }

    .aiva-session-sidequest-modal__hero .ui-button {
        grid-column: 1 / -1;
        justify-content: center;
    }

    .aiva-session-sidequest-modal__facts,
    .aiva-session-sidequest-modal__facts--three {
        grid-template-columns: minmax(0, 1fr);
    }

    .aiva-session-sidequest-modal__fact {
        border-top: 0.5px solid var(--shell-border);
        border-left: 0;
    }

    .aiva-session-sidequest-modal__fact:first-child {
        border-top: 0;
    }

    .aiva-session-sidequest-modal__extend-control {
        width: 100%;
        min-width: 0;
        flex-basis: 100%;
    }

    .aiva-session-sidequest-logs__search,
    .aiva-session-sidequest-logs__service,
    .aiva-session-sidequest-logs__window,
    .aiva-session-sidequest-logs__tail,
    .aiva-session-sidequest-logs__toolbar .ui-button {
        width: 100%;
        max-width: none;
        flex-basis: 100%;
    }
}

.aiva-session-terminal-panel .split-view--inset-inline .split-view__pane--left .split-view__body,
.aiva-session-terminal-panel .split-view--inset-inline .split-view__pane--right .split-view__body {
    display: flex;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
}

.aiva-session-terminal-panel .split-view--inset-inline .split-view__pane--left .split-view__body {
    padding: 8px;
}

.aiva-session-terminal-panel .split-view--inset-inline .split-view__pane--right .split-view__body {
    position: relative;
    padding: 0;
}

/* Pin empty/loading hosts to the right pane so they center in the full height. */
.aiva-session-terminal-panel .split-view--inset-inline .split-view__pane--right .split-view__body:has(> .aiva-panel-empty--fill),
.aiva-session-terminal-panel .split-view--inset-inline .split-view__pane--right .split-view__body:has(> .aiva-panel-loading) {
    overflow: hidden;
}

.aiva-session-terminal-panel .split-view__body > .aiva-panel-empty--fill,
.aiva-session-terminal-panel .split-view__body > .aiva-panel-loading {
    position: absolute;
    inset: 0;
    z-index: 1;
    width: 100%;
    height: auto;
    min-height: 0;
    flex: none;
}

.aiva-session-terminal-instances {
    display: flex;
    min-width: 0;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 2px;
    overflow: auto;
    scrollbar-width: none;
}

.aiva-session-terminal-instances::-webkit-scrollbar {
    display: none;
}

.aiva-session-terminal-instance {
    display: grid;
    width: 100%;
    min-height: 32px;
    grid-template-columns: minmax(0, 1fr);
    align-items: center;
    gap: 9px;
    padding: 5px 7px;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: var(--shell-text-secondary);
    cursor: var(--pointer, pointer);
    font: inherit;
    text-align: left;
}

.aiva-session-terminal-instance:hover,
.aiva-session-terminal-instance:focus-visible {
    background: var(--shell-bg-hover);
    color: var(--shell-text-primary);
    outline: none;
}

.aiva-session-terminal-instance--active,
.aiva-session-terminal-instance--active:hover,
.aiva-session-terminal-instance--active:focus-visible {
    background: var(--shell-bg-active);
    color: var(--shell-text-primary);
}

.aiva-session-terminal-instance__title {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    font-weight: 520;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-xterm {
    --aiva-xterm-padding-inline: 12px;
    --aiva-xterm-padding-block: 10px;
    min-width: 0;
    min-height: 0;
    height: 100%;
    flex: 1 1 auto;
    overflow: hidden;
    padding: var(--aiva-xterm-padding-block) var(--aiva-xterm-padding-inline);
    background: var(--shell-bg-canvas, var(--shell-bg-surface));
    color: var(--shell-text-primary);
}

.aiva-xterm--hidden {
    display: none;
}

.aiva-xterm .terminal {
    height: 100%;
    min-height: 0;
}

.aiva-xterm .xterm {
    height: 100%;
    min-height: 0;
    padding: 0;
}

.aiva-xterm .xterm-viewport {
    background: transparent !important;
    scrollbar-color: color-mix(in srgb, var(--shell-text-secondary) 28%, transparent) transparent;
}

.aiva-xterm .xterm-screen {
    min-width: 100%;
}

.aiva-session-terminal-output-modal {
    height: 100%;
}

.aiva-session-terminal-output-modal .settings-modal-form__fields {
    min-height: 0;
    flex: 1 1 auto;
}

.aiva-session-terminal-output {
    display: flex;
    min-width: 0;
    min-height: 0;
    height: 100%;
    flex-direction: column;
    gap: 8px;
}

.aiva-session-terminal-output__meta {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    gap: 6px;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
}

.aiva-session-terminal-output__status {
    width: 7px;
    height: 7px;
    border-radius: 999px;
    background: var(--shell-text-secondary);
    opacity: 0.74;
}

.aiva-session-terminal-output__status--active {
    background: var(--shell-success-text, #26b36a);
    opacity: 1;
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--shell-success-text, #26b36a) 18%, transparent);
}

.aiva-session-terminal-output__notice {
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
}

.aiva-session-terminal-output__error {
    color: var(--shell-danger-text, #dc2626);
    font-size: 0.8125rem;
    font-weight: 450;
    line-height: 1.125rem;
}

.aiva-session-terminal-output__surface {
    min-height: 0;
    overflow: hidden;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
}

.aiva-session-goal-preview__body {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 8px;
    padding: 9px 12px 10px;
}

.aiva-session-goal-preview__metrics {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 8px;
}

.aiva-session-goal-preview__metric {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 5px;
}

.aiva-session-goal-preview__meta {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
}

.aiva-session-goal-preview__meta span,
.aiva-session-goal-preview__prompt span {
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.71875rem;
    font-weight: 520;
    line-height: 0.9375rem;
}

.aiva-session-goal-preview__meta strong {
    max-width: 100%;
    overflow: hidden;
    color: var(--shell-menu-text-strong, var(--shell-menu-text, var(--shell-text-primary)));
    font-family: ui-monospace, "SFMono-Regular", "SF Mono", Menlo, Consolas, monospace;
    font-size: 0.71875rem;
    font-weight: 560;
    line-height: 1rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-goal-preview__budget-bar {
    position: relative;
    height: 4px;
    overflow: hidden;
    border-radius: 999px;
    background: color-mix(in srgb, var(--shell-menu-border, var(--shell-border)) 62%, transparent);
}

.aiva-session-goal-preview__budget-bar span {
    position: absolute;
    inset: 0 auto 0 0;
    border-radius: inherit;
    background: var(--shell-accent, #5e6ad2);
}

.aiva-session-goal-preview__prompt {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 5px;
}

.aiva-session-goal-preview__prompt p,
.aiva-session-goal-preview__note {
    margin: 0;
    color: var(--shell-menu-text, var(--shell-text-primary));
    font-size: 0.8125rem;
    font-weight: 450;
    line-height: 1.1875rem;
}

.aiva-session-goal-preview__note {
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.75rem;
    line-height: 1.0625rem;
}

.aiva-session-goal-preview__footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    padding: 7px 8px;
    border-top: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-goal-preview__footer-group {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}

@keyframes aiva-session-plan-dot {
    0%,
    100% {
        opacity: 0.55;
        transform: scale(0.9);
    }

    50% {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes aiva-session-plan-spinner {
    to {
        transform: rotate(1turn);
    }
}

@media (prefers-reduced-motion: reduce) {
    .aiva-session-plan-button--active .ui-button__badge--dot,
    .aiva-session-plan-preview__item-spinner {
        animation: none;
    }
}

.aiva-session-goal-edit-modal {
    display: flex;
    min-width: 0;
    flex-direction: column;
    color: var(--shell-text-primary);
}

.aiva-session-goal-edit-modal__header {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 17px 20px 13px;
    border-bottom: 0.5px solid var(--shell-border);
}

.aiva-session-goal-edit-modal__header h2 {
    margin: 0;
    color: var(--shell-text-primary);
    font-size: 0.9375rem;
    font-weight: 560;
    line-height: 1.25rem;
}

.aiva-session-goal-edit-modal__header p {
    max-width: 430px;
    margin: 0;
    color: var(--shell-text-secondary);
    font-size: 0.8125rem;
    font-weight: 450;
    line-height: 1.1875rem;
}

.aiva-session-goal-edit-modal__body {
    padding: 16px 20px 18px;
}

.aiva-session-goal-edit-form {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 13px;
}

.aiva-session-goal-edit-field {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 7px;
}

.aiva-session-goal-edit-field__label {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: var(--shell-text-primary);
    font-size: 0.75rem;
    font-weight: 560;
    line-height: 1rem;
}

.aiva-session-goal-edit-field__label span:last-child {
    color: var(--shell-text-secondary);
    font-weight: 450;
}

.aiva-session-goal-edit-budget-row {
    display: grid;
    min-width: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.aiva-session-goal-edit-modal__footer {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 12px 20px;
    border-top: 0.5px solid var(--shell-border);
}

@media (max-width: 560px) {
    .aiva-session-goal-edit-budget-row {
        grid-template-columns: minmax(0, 1fr);
    }
}

.aiva-session-sub-sessions-trigger,
.aiva-session-turns-trigger,
.aiva-session-context-trigger,
.aiva-session-chat-trigger,
.aiva-session-commit-trigger,
.aiva-session-stash-trigger,
.aiva-session-pr-trigger {
    display: inline-flex;
}

.aiva-session-sub-sessions-button-frame {
    position: relative;
    display: inline-flex;
    overflow: visible;
}

.aiva-session-sub-sessions-button__badge {
    top: -3px;
    right: -3px;
    border-color: var(--shell-bg-surface);
}

.aiva-session-sub-sessions-button-frame--all-idle .aiva-session-sub-sessions-button__badge {
    background: #2f8f5b;
}

.aiva-session-pr-button {
    position: relative;
    overflow: visible;
}

.aiva-session-pr-button .ui-button__badge--dot {
    top: -3px;
    right: -3px;
    border-color: var(--shell-bg-surface);
}

.aiva-session-pr-button--has-unmerged .ui-button__badge--dot {
    background: #2f8f5b;
}

.aiva-session-pr-button--all-merged .ui-button__badge--dot {
    background: #8b5cf6;
}

.aiva-session-turns-popover .ui-popover__surface {
    width: 236px;
    max-width: min(236px, calc(100vw - 24px));
}

.aiva-session-context-popover .ui-popover__surface {
    width: 316px;
    max-width: min(316px, calc(100vw - 24px));
}

.aiva-session-chat-popover .ui-popover__surface {
    width: 292px;
    max-width: min(292px, calc(100vw - 24px));
}

.aiva-session-commit-popover .ui-popover__surface {
    width: 392px;
    max-width: min(392px, calc(100vw - 24px));
}

.aiva-session-stash-popover .ui-popover__surface {
    width: 372px;
    max-width: min(372px, calc(100vw - 24px));
}

.aiva-session-pr-popover .ui-popover__surface {
    width: 392px;
    max-width: min(392px, calc(100vw - 24px));
}

.aiva-session-sub-sessions-popover .ui-popover__surface {
    width: 480px;
    max-width: min(480px, calc(100vw - 24px));
}

.aiva-session-turns-preview {
    display: flex;
    min-width: 0;
    flex-direction: column;
    color: var(--shell-menu-text, var(--shell-text-primary));
}

.aiva-session-sub-sessions-preview {
    display: flex;
    min-width: 0;
    flex-direction: column;
    color: var(--shell-menu-text, var(--shell-text-primary));
}

.aiva-session-sub-sessions-preview__header {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px 9px;
    border-bottom: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-sub-sessions-preview__header strong {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-menu-text-strong, var(--shell-menu-text, var(--shell-text-primary)));
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-sub-sessions-preview__header span {
    flex: 0 0 auto;
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
    white-space: nowrap;
}

.aiva-session-sub-sessions-preview__items {
    margin: 0;
    padding: 4px 6px;
    list-style: none;
}

.aiva-session-sub-sessions-preview__item {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 4px;
    min-height: 42px;
    border-radius: 6px;
}

.aiva-session-sub-sessions-preview__item:hover {
    background: var(--shell-menu-item-hover-bg, var(--shell-bg-hover));
}

.aiva-session-sub-sessions-preview__link {
    display: grid;
    min-width: 0;
    grid-template-columns: 16px minmax(0, 1fr);
    align-items: center;
    gap: 7px;
    align-self: stretch;
    padding: 6px 4px 6px 6px;
    color: inherit;
    text-decoration: none;
}

.aiva-session-sub-sessions-preview__link:focus-visible {
    border-radius: 5px;
    outline: 2px solid var(--shell-focus-ring, var(--shell-accent));
    outline-offset: -1px;
}

.aiva-session-sub-sessions-preview__runtime {
    display: inline-grid;
    width: 16px;
    height: 16px;
    place-items: center;
}

.aiva-session-sub-sessions-preview__actions {
    display: inline-flex;
    min-width: 24px;
    align-items: center;
    justify-content: flex-end;
}

.aiva-session-sub-sessions-preview__indicator.shell-tree-node__status {
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
    margin-right: 0;
}

.aiva-session-sub-sessions-preview__copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
}

.aiva-session-sub-sessions-preview__copy strong {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-menu-text, var(--shell-text-primary));
    font-size: 0.75rem;
    font-weight: 520;
    line-height: 1rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-sub-sessions-preview__copy span {
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.6875rem;
    font-weight: 450;
    line-height: 0.875rem;
}

.aiva-session-media-roll-trigger {
    display: inline-flex;
}

.aiva-session-media-roll-popover .ui-popover__surface {
    width: 348px;
    max-width: min(348px, calc(100vw - 24px));
}

.aiva-session-media-roll-preview {
    display: flex;
    min-width: 0;
    flex-direction: column;
    color: var(--shell-menu-text, var(--shell-text-primary));
}

.aiva-session-media-roll-preview__header {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px 9px;
    border-bottom: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-media-roll-preview__header strong {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-menu-text-strong, var(--shell-menu-text, var(--shell-text-primary)));
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-media-roll-preview__header span {
    flex: 0 0 auto;
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
    white-space: nowrap;
}

.aiva-session-media-roll-preview__grid {
    display: grid;
    max-height: 292px;
    min-width: 0;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
    padding: 8px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
}

.aiva-session-media-roll-preview__cell {
    min-width: 0;
}

.aiva-session-media-roll-preview__tile {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    overflow: hidden;
    aspect-ratio: 1;
    border: 0.5px solid var(--shell-menu-border, var(--shell-border));
    border-radius: 6px;
    background: var(--shell-bg-muted, var(--shell-bg-subtle));
    color: inherit;
    cursor: pointer;
}

.aiva-session-media-roll-preview__tile:hover {
    border-color: var(--shell-border-strong, var(--shell-text-tertiary));
    box-shadow: inset 0 0 0 1px lch(50% 0 0 / 0.08);
}

.aiva-session-media-roll-preview__tile:focus-visible {
    outline: 2px solid var(--shell-focus-ring, var(--shell-accent));
    outline-offset: 1px;
}

.aiva-session-media-roll-preview__tile img,
.aiva-session-media-roll-preview__tile video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.aiva-session-media-roll-preview__play {
    position: absolute;
    inset: 50% auto auto 50%;
    display: inline-flex;
    width: 28px;
    height: 28px;
    align-items: center;
    justify-content: center;
    border: 1px solid lch(100% 0 0 / 0.32);
    border-radius: 999px;
    background: lch(12% 0 0 / 0.66);
    color: white;
    box-shadow: 0 2px 8px lch(0% 0 0 / 0.22);
    pointer-events: none;
    transform: translate(-50%, -50%);
}

.aiva-session-context-preview {
    display: flex;
    min-width: 0;
    flex-direction: column;
    color: var(--shell-menu-text, var(--shell-text-primary));
}

.aiva-session-chat-preview {
    display: flex;
    min-width: 0;
    flex-direction: column;
    color: var(--shell-menu-text, var(--shell-text-primary));
}

.aiva-session-commit-preview {
    display: flex;
    min-width: 0;
    flex-direction: column;
    color: var(--shell-menu-text, var(--shell-text-primary));
}

.aiva-session-stash-preview {
    display: flex;
    min-width: 0;
    flex-direction: column;
    color: var(--shell-menu-text, var(--shell-text-primary));
}

.aiva-session-pr-preview {
    display: flex;
    min-width: 0;
    flex-direction: column;
    color: var(--shell-menu-text, var(--shell-text-primary));
}

.aiva-session-pr-details-modal {
    height: min(820px, calc(100vh - 96px));
    max-height: calc(100vh - 96px);
    overflow: hidden;
}

.aiva-session-pr-details-modal .settings-modal-form__fields {
    min-height: 0;
    flex: 1 1 auto;
    overflow-y: auto;
    overscroll-behavior: contain;
}

.aiva-session-pr-details {
    min-height: 0;
    padding: 4px 2px 18px;
}

.aiva-session-pr-details-modal__error {
    padding: 24px 4px;
    color: var(--shell-danger-text, #dc2626);
    font-size: 0.875rem;
    line-height: 1.375rem;
}

.aiva-session-turns-preview__header {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px 9px;
    border-bottom: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-context-preview__header {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px 9px;
    border-bottom: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-chat-preview__header {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px 9px;
    border-bottom: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-commit-preview__header {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px 9px;
    border-bottom: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-stash-preview__header {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px 9px;
    border-bottom: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-pr-preview__header {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px 9px;
    border-bottom: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-turns-preview__header > strong:first-child {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-menu-text-strong, var(--shell-menu-text, var(--shell-text-primary)));
    font-family: inherit;
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-context-preview__header > strong:first-child {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-menu-text-strong, var(--shell-menu-text, var(--shell-text-primary)));
    font-family: inherit;
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-chat-preview__header > strong:first-child {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-menu-text-strong, var(--shell-menu-text, var(--shell-text-primary)));
    font-family: inherit;
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-commit-preview__header > strong:first-child {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-menu-text-strong, var(--shell-menu-text, var(--shell-text-primary)));
    font-family: inherit;
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-stash-preview__header > strong:first-child {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-menu-text-strong, var(--shell-menu-text, var(--shell-text-primary)));
    font-family: inherit;
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-pr-preview__header strong {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-menu-text-strong, var(--shell-menu-text, var(--shell-text-primary)));
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-turns-preview__header > span:last-child {
    flex: 0 0 auto;
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-family: inherit;
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
    white-space: nowrap;
}

.aiva-session-context-preview__header > span:last-child {
    flex: 0 0 auto;
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-family: inherit;
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
    white-space: nowrap;
}

.aiva-session-chat-preview__header > span:last-child {
    flex: 0 0 auto;
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-family: inherit;
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
    white-space: nowrap;
}

.aiva-session-stash-preview__header > span:last-child {
    flex: 0 0 auto;
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-family: inherit;
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
    white-space: nowrap;
}

.aiva-session-pr-preview__header span {
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
    white-space: nowrap;
}

.aiva-session-turns-preview__stats {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
    margin: 0;
    padding: 8px;
}

.aiva-session-turns-preview__stats div {
    display: flex;
    min-height: 28px;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 4px 6px;
    border-radius: 6px;
}

.aiva-session-turns-preview__stats div:hover {
    background: var(--shell-menu-item-hover-bg, var(--shell-bg-hover));
}

.aiva-session-turns-preview__stats dt,
.aiva-session-turns-preview__stats dd {
    margin: 0;
    font-size: 0.75rem;
    line-height: 1rem;
    white-space: nowrap;
}

.aiva-session-turns-preview__stats dt {
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-weight: 450;
}

.aiva-session-turns-preview__stats dd {
    color: var(--shell-menu-text, var(--shell-text-primary));
    font-weight: 540;
}

.aiva-session-chat-preview__state,
.aiva-session-chat-preview__threads {
    display: flex;
    max-height: 168px;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
    margin: 0;
    padding: 6px;
    overflow: auto;
    list-style: none;
    scrollbar-width: none;
}

.aiva-session-chat-preview__threads::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.aiva-session-chat-preview__thread {
    position: relative;
    display: grid;
    min-height: 42px;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 9px;
    padding: 5px 6px;
    border-radius: 6px;
    color: var(--shell-menu-text, var(--shell-text-primary));
}

.aiva-session-chat-preview__thread:hover {
    background: var(--shell-menu-item-hover-bg, var(--shell-bg-hover));
}

.aiva-session-chat-preview__thread-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
}

.aiva-session-chat-preview__thread-title,
.aiva-session-chat-preview__thread-meta,
.aiva-session-chat-preview__thread-unread {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-chat-preview__thread-title {
    color: var(--shell-menu-text, var(--shell-text-primary));
    font-size: 0.8125rem;
    font-weight: 520;
    line-height: 1.125rem;
}

.aiva-session-chat-preview__thread-meta {
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
}

.aiva-session-chat-preview__thread-unread {
    display: inline-flex;
    width: 7px;
    height: 7px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: var(--shell-danger-text, #ef4444);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--shell-danger-text, #ef4444) 16%, transparent);
}

.aiva-session-context-preview__progress {
    position: relative;
    height: 4px;
    margin: 10px 12px 9px;
    overflow: hidden;
    border-radius: 999px;
    background: color-mix(in srgb, var(--shell-menu-border, var(--shell-border)) 62%, transparent);
}

.aiva-session-context-preview__progress span {
    position: absolute;
    inset: 0 auto 0 0;
    border-radius: inherit;
    background: var(--shell-accent, #5e6ad2);
}

.aiva-session-context-preview__snapshots {
    display: flex;
    max-height: 162px;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
    margin: 0;
    padding: 0 6px 6px;
    overflow: auto;
    list-style: none;
    scrollbar-width: none;
}

.aiva-session-context-preview__snapshots::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.aiva-session-context-preview__snapshot {
    display: grid;
    min-height: 42px;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 9px;
    padding: 5px 6px;
    border-radius: 6px;
    color: var(--shell-menu-text, var(--shell-text-primary));
    text-decoration: none;
}

.aiva-session-context-preview__snapshot:hover {
    background: var(--shell-menu-item-hover-bg, var(--shell-bg-hover));
}

.aiva-session-context-preview__snapshot-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
}

.aiva-session-context-preview__snapshot-title,
.aiva-session-context-preview__snapshot-meta,
.aiva-session-context-preview__snapshot-size {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-context-preview__snapshot-title {
    color: var(--shell-menu-text, var(--shell-text-primary));
    font-size: 0.8125rem;
    font-weight: 520;
    line-height: 1.125rem;
}

.aiva-session-context-preview__snapshot-meta,
.aiva-session-context-preview__snapshot-size {
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
}

.aiva-session-context-preview__snapshot-size {
    font-family: ui-monospace, "SFMono-Regular", "SF Mono", Menlo, Consolas, monospace;
    font-weight: 520;
}

.aiva-session-context-preview__footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    padding: 7px 8px;
    border-top: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-context-preview__footer-group {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}

.aiva-session-commit-preview__groups {
    display: flex;
    max-height: 244px;
    min-width: 0;
    flex-direction: column;
    overflow: auto;
    scrollbar-width: none;
}

.aiva-session-stash-preview__items {
    display: flex;
    max-height: 244px;
    min-width: 0;
    flex-direction: column;
    padding: 4px;
    overflow: auto;
    scrollbar-width: none;
}

.aiva-session-commit-preview__groups::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.aiva-session-stash-preview__items::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.aiva-session-commit-preview__group {
    min-width: 0;
}

.aiva-session-commit-preview__group + .aiva-session-commit-preview__group {
    border-top: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-commit-preview__group-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 7px 12px 5px;
    border-bottom: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.6875rem;
    font-weight: 560;
    line-height: 0.875rem;
    text-transform: uppercase;
}

.aiva-session-commit-preview__group-header strong {
    display: inline-flex;
    min-width: 18px;
    height: 18px;
    align-items: center;
    justify-content: center;
    padding: 0 6px;
    border-radius: 999px;
    background: var(--shell-menu-item-hover-bg, var(--shell-bg-hover));
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.6875rem;
    font-weight: 560;
    line-height: 1;
}

.aiva-session-commit-preview__items {
    max-height: 180px;
    overflow: auto;
    scrollbar-width: none;
}

.aiva-session-commit-preview__items::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.aiva-widget-empty {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px 24px;
}

.aiva-panel-empty {
    display: flex;
    box-sizing: border-box;
    min-width: 0;
    min-height: 0;
    width: 100%;
    align-items: center;
    justify-content: center;
    padding: 32px 24px;
}

.aiva-panel-empty--fill {
    height: 100%;
    min-height: 100%;
    flex: 1 1 auto;
    align-self: stretch;
}

.aiva-widget-empty__icon {
    color: var(--shell-text-secondary, var(--shell-menu-hint));
}

.aiva-session-commit-preview__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    padding: 8px;
    border-top: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-stash-preview__footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
    padding: 8px;
    border-top: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-code-review-trigger__button {
    gap: 6px;
}

.aiva-session-code-review-trigger__button--running {
    border-color: color-mix(in srgb, var(--shell-accent, #5e6ad2) 45%, var(--shell-border));
}

.aiva-session-code-review-trigger__count {
    min-width: 18px;
    padding: 0 5px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--shell-text-primary) 8%, transparent);
    color: var(--shell-text-secondary);
    font-size: 11px;
    font-variant-numeric: tabular-nums;
    line-height: 18px;
    text-align: center;
}

.aiva-session-code-review-preview {
    width: min(380px, calc(100vw - 32px));
    color: var(--shell-text-primary);
}

.aiva-session-code-review-preview__header {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px 9px;
    border-bottom: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-code-review-preview__header strong {
    color: var(--shell-menu-text-strong, var(--shell-menu-text, var(--shell-text-primary)));
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
}

.aiva-session-code-review-preview__header span {
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.6875rem;
    font-variant-numeric: tabular-nums;
}

.aiva-session-code-review-preview__status,
.aiva-session-code-review-preview__notice {
    margin: 0;
    padding: 12px;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    line-height: 1.45;
}

.aiva-session-code-review-preview__notice {
    color: var(--shell-danger-text, #ef4444);
}

.aiva-session-code-review-preview__items {
    display: flex;
    max-height: 320px;
    min-width: 0;
    flex-direction: column;
    margin: 0;
    padding: 0;
    overflow: auto;
    list-style: none;
    scrollbar-width: none;
}

.aiva-session-code-review-preview__items::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.aiva-session-code-review-preview__footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
    padding: 8px;
    border-top: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-code-review-preview__availability {
    flex: 1 1 auto;
    min-width: 0;
    padding-left: 4px;
    color: var(--shell-muted-text, var(--shell-text-muted, #9ca3af));
    font-size: 11.5px;
    line-height: 1.35;
    text-align: left;
}

.aiva-session-code-review-row {
    display: flex;
    align-items: stretch;
    min-width: 0;
}

.aiva-session-code-review-row + .aiva-session-code-review-row {
    border-top: 0.5px solid color-mix(in srgb, var(--shell-menu-divider, var(--shell-border)) 72%, transparent);
}

.aiva-session-code-review-row__main {
    display: grid;
    flex: 1 1 auto;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    min-width: 0;
    padding: 9px 12px;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: left;
}

.aiva-session-code-review-row__main:not(:disabled) {
    cursor: pointer;
}

.aiva-session-code-review-row__main:not(:disabled):hover {
    background: var(--shell-menu-item-hover, var(--shell-bg-active));
}

.aiva-session-code-review-row__dot {
    display: grid;
    width: 16px;
    height: 16px;
    place-items: center;
    color: var(--shell-text-secondary);
}

.aiva-session-code-review-row__dot::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: currentColor;
}

.aiva-session-code-review-row__dot--running {
    color: #7785ed;
}

.aiva-session-code-review-row__dot--running::before {
    display: none;
}

.aiva-session-code-review-row__dot--completed {
    color: #48a878;
}

.aiva-session-code-review-row__dot--failed {
    color: var(--shell-danger-text, #e8646b);
}

.aiva-session-code-review-row__dot--cancelled {
    color: var(--shell-text-tertiary, var(--shell-text-secondary));
}

.aiva-session-code-review-row__copy {
    display: grid;
    min-width: 0;
    gap: 3px;
}

.aiva-session-code-review-row__title {
    display: flex;
    min-width: 0;
    align-items: baseline;
    gap: 6px;
}

.aiva-session-code-review-row__title strong {
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    font-weight: 550;
}

.aiva-session-code-review-row__title small,
.aiva-session-code-review-row__meta {
    overflow: hidden;
    color: var(--shell-text-secondary);
    font-size: 0.6875rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-code-review-row__spinner {
    box-sizing: border-box;
    width: 14px;
    height: 14px;
    flex-shrink: 0;
    border: 2px solid color-mix(in srgb, currentColor 24%, transparent);
    border-top-color: currentColor;
    border-radius: 9999px;
    color: var(--shell-accent, #5e6ad2);
    animation: aiva-session-plan-spinner 0.72s linear infinite;
}

.aiva-session-code-review-row__track {
    display: block;
    overflow: hidden;
    height: 5px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--shell-text-primary) 8%, transparent);
}

.aiva-session-code-review-row__track > span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #7785ed;
    transition: width 180ms ease;
}

.aiva-session-code-review-row__status {
    color: var(--shell-text-secondary);
    font-size: 0.625rem;
    font-weight: 560;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    white-space: nowrap;
}

.aiva-session-code-review-row__status--running {
    color: #8e99ee;
}

.aiva-session-code-review-row__status--ok {
    color: #67bd91;
}

.aiva-session-code-review-row__status--attention {
    color: #dfb56e;
}

.aiva-session-code-review-row__status--failed {
    color: var(--shell-danger-text, #ef9a9f);
}

.aiva-session-code-review-row__status--muted {
    color: var(--shell-text-tertiary, var(--shell-text-secondary));
}

.aiva-session-code-review-row__cancel {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    width: 30px;
    border: 0;
    background: transparent;
    color: var(--shell-text-secondary);
    cursor: pointer;
}

.aiva-session-code-review-row__cancel:hover:not(:disabled) {
    color: var(--shell-danger-text, #e8646b);
}

.aiva-session-code-review-row__cancel:disabled {
    opacity: 0.5;
    cursor: default;
}

.aiva-session-code-review-start-modal {
    display: grid;
    gap: 14px;
    padding: 18px 20px 16px;
}

.aiva-session-code-review-start-modal__header h2 {
    margin: 0 0 4px;
    color: var(--shell-text-primary);
    font-size: 0.9375rem;
    font-weight: 600;
}

.aiva-session-code-review-start-modal__header p {
    margin: 0;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    line-height: 1.45;
}

.aiva-session-code-review-start-modal__body {
    display: grid;
    gap: 8px;
}

.aiva-session-code-review-start-modal__label {
    color: var(--shell-text-secondary);
    font-size: 0.6875rem;
    font-weight: 500;
}

.aiva-session-code-review-start-modal__meta {
    margin: 0;
    color: var(--shell-text-secondary);
    font-size: 0.6875rem;
}

.aiva-session-code-review-start-modal__notice {
    margin: 0;
    padding: 9px 10px;
    border: 0.5px solid var(--shell-menu-divider, var(--shell-border));
    border-radius: 7px;
    background: color-mix(in srgb, var(--shell-text-primary) 3%, transparent);
    color: var(--shell-text-secondary);
    font-size: 0.6875rem;
    line-height: 1.45;
}

.aiva-session-code-review-start-modal__footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
}

.aiva-session-commit-preview__footer-group {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.aiva-session-widget-groups {
    display: flex;
    max-height: 312px;
    min-width: 0;
    flex-direction: column;
    overflow: auto;
    scrollbar-width: none;
}

.aiva-session-widget-groups::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.aiva-session-widget-group {
    min-width: 0;
}

.aiva-session-widget-group + .aiva-session-widget-group {
    border-top: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}

.aiva-session-widget-group__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 7px 12px 5px;
    border-bottom: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.6875rem;
    font-weight: 560;
    line-height: 0.875rem;
    text-transform: uppercase;
}

.aiva-session-widget-group__header strong {
    display: inline-flex;
    min-width: 18px;
    height: 18px;
    align-items: center;
    justify-content: center;
    padding: 0 6px;
    border-radius: 999px;
    background: var(--shell-menu-item-hover-bg, var(--shell-bg-hover));
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.6875rem;
    font-weight: 560;
    line-height: 1;
}

.aiva-session-widget-group__items {
    max-height: none;
    min-width: 0;
    overflow: visible;
}

.aiva-session-pr-preview__empty {
    padding: 18px 12px;
    color: var(--shell-menu-hint, var(--shell-text-secondary));
    font-size: 0.75rem;
    line-height: 1rem;
}

.aiva-session-pr-preview__error {
    padding: 8px 12px;
    color: var(--toast-error-color, #c01c28);
    font-size: 0.75rem;
    line-height: 1rem;
    overflow-wrap: anywhere;
}

.aiva-session-pr-preview__footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
    padding: 8px;
    border-top: 0.5px solid var(--shell-menu-divider, var(--shell-menu-border, var(--shell-border)));
}






.aiva-session-auto-pr-step,
.aiva-session-auto-pr-preview {
    display: flex;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 12px;
}

.aiva-session-auto-pr-preview {
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: none;
}

.aiva-session-auto-pr-preview::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.aiva-session-auto-pr-preview .aiva-session-git-preview__list {
    min-height: 0;
    flex: 1 1 auto;
    overflow-y: auto;
    scrollbar-width: none;
}

.aiva-session-auto-pr-preview .aiva-session-git-preview__list::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.aiva-session-auto-pr-jobs {
    display: flex;
    min-width: 0;
    flex-direction: column;
    overflow: hidden;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: var(--shell-bg-surface);
}

.aiva-session-auto-pr-job {
    display: grid;
    min-width: 0;
    grid-template-columns: 30px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    padding: 10px 11px;
    border-bottom: 0.5px solid var(--shell-border);
}

.aiva-session-auto-pr-job:last-child {
    border-bottom: 0;
}

.aiva-session-auto-pr-job__icon {
    display: grid;
    width: 26px;
    height: 26px;
    place-items: center;
    border: 0.5px solid var(--shell-border);
    border-radius: 999px;
    background: var(--shell-bg-active);
    color: var(--shell-text-tertiary);
}

.aiva-session-auto-pr-job--running .aiva-session-auto-pr-job__icon {
    color: var(--shell-accent);
}

.aiva-session-auto-pr-job--complete .aiva-session-auto-pr-job__icon {
    border-color: color-mix(in srgb, #26b36a 48%, var(--shell-border));
    background: color-mix(in srgb, #26b36a 14%, var(--shell-bg-active));
    color: #26b36a;
}

.aiva-session-auto-pr-job--failed .aiva-session-auto-pr-job__icon {
    border-color: color-mix(in srgb, #b42318 48%, var(--shell-border));
    background: color-mix(in srgb, #b42318 14%, var(--shell-bg-active));
    color: var(--toast-error-color, #c01c28);
}

.aiva-session-auto-pr-job__copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}

.aiva-session-auto-pr-job__copy strong {
    overflow: hidden;
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    font-weight: 540;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-auto-pr-job__copy span {
    overflow: hidden;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-auto-pr-error {
    color: var(--toast-error-color, #c01c28);
    font-size: 0.75rem;
    line-height: 1rem;
    overflow-wrap: anywhere;
}

.aiva-inbox-detail__summary.aiva-session-auto-pr-preview__metrics {
    width: 100%;
    max-width: none;
    margin: 0;
}

.aiva-session-auto-pr-preview__content {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 10px;
    padding: 12px;
}

.aiva-session-auto-pr-preview__content h4 {
    margin: 0;
    color: var(--shell-text-primary);
    font-size: 0.875rem;
    font-weight: 560;
    line-height: 1.25rem;
}

.aiva-session-auto-pr-preview__content pre {
    margin: 0;
    overflow: auto;
    color: var(--shell-text-secondary);
    font-family: inherit;
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1.125rem;
    white-space: pre-wrap;
}

.aiva-session-auto-pr-merge .aiva-session-git-completion__success span:not(.aiva-project-merge-summary__status) {
    color: var(--shell-text-secondary);
    font-size: 0.8125rem;
    font-weight: 450;
    line-height: 1.125rem;
}

.aiva-session-auto-pr-merge__failure {
    align-items: center;
}

.aiva-session-auto-pr-merge__actions {
    display: flex;
    align-items: center;
    justify-content: center;
}

.aiva-session-turns-modal-shell {
    --app-modal-current-min-height: calc(100vh - 96px);
}

.aiva-session-turns-modal-shell .split-modal {
    height: calc(100vh - 96px);
    min-height: calc(100vh - 96px);
}

.aiva-session-turns-modal-shell .split-view__pane:first-child .split-view__body {
    overflow: hidden;
}

.aiva-session-turns-modal-shell .split-view__pane:last-child .aiva-session-turn-detail::after {
    content: "";
    display: block;
    flex: 0 0 32px;
}

.aiva-session-modal-footer-actions {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.aiva-session-turn-list {
    display: flex;
    min-height: 0;
    height: 100%;
    flex-direction: column;
}

.aiva-session-turn-list__fixed {
    flex: 0 0 auto;
}

.aiva-session-turn-list__scroll {
    min-height: 0;
    flex: 1 1 auto;
    overflow: auto;
}

.aiva-session-turn-detail .aiva-inbox-detail__hero h1 + .aiva-inbox-detail__eyebrow {
    margin-top: 10px;
    margin-bottom: 0;
}

.aiva-session-turn-detail__hero {
    display: flex;
    max-width: 820px;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}

.aiva-session-turn-detail__title-block {
    min-width: 0;
}

.aiva-session-turn-detail__header-actions {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 6px;
    padding-top: 2px;
}

.aiva-session-turn-list__summary {
    display: inline-flex;
    min-width: 0;
    max-width: 100%;
    align-items: center;
    gap: 6px;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
    white-space: nowrap;
}

.aiva-session-turn-list__date,
.aiva-session-turn-list__duration {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-turn-list__stats {
    display: inline-flex;
    min-width: 0;
    align-items: center;
    gap: 5px;
}

.aiva-session-turn-list__stat {
    min-width: 0;
    white-space: nowrap;
}

.aiva-session-turn-list__stat--added {
    color: var(--shell-success-text, #4fb56f);
}

.aiva-session-turn-list__stat--edited {
    color: var(--shell-accent, #5e9eff);
}

.aiva-session-turn-list__stat--deleted {
    color: var(--shell-danger-text, #f97373);
}

.aiva-session-turn-rollback-badge {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    max-width: 100%;
    border: 0.5px solid color-mix(in srgb, var(--shell-warning-text, #d99a2b) 54%, transparent);
    border-radius: 4px;
    padding: 1px 5px;
    color: var(--shell-warning-text, #d99a2b);
    font-size: 0.6875rem;
    font-weight: 560;
    line-height: 0.875rem;
    white-space: nowrap;
}

.aiva-session-turn-detail__section-title {
    margin: 0 0 10px;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 560;
    letter-spacing: 0;
    line-height: 1rem;
}

.aiva-session-turn-detail__worktree-path {
    display: flex;
    width: min(100%, 820px);
    min-width: 0;
    align-items: flex-start;
    gap: 8px;
    padding: 10px 12px;
    border: 0.5px solid var(--shell-border);
    border-radius: 10px;
    background: color-mix(in srgb, var(--shell-bg-active) 74%, transparent);
}

.aiva-session-turn-detail__worktree-path code {
    min-width: 0;
    flex: 1 1 auto;
    color: var(--shell-text-primary);
    font-family: var(--shell-font-mono, monospace);
    font-size: 0.75rem;
    line-height: 1.125rem;
    overflow-wrap: anywhere;
    white-space: normal;
}

.aiva-session-turn-detail__worktree-copy {
    flex: 0 0 auto;
    opacity: 0.72;
}

.aiva-session-turn-diff-list {
    margin-top: 0;
}

.aiva-session-turn-diff-status {
    display: inline-flex;
    align-items: center;
    height: 20px;
    padding: 0 7px;
    border: 0.5px solid color-mix(in srgb, currentColor 28%, transparent);
    border-radius: 9999px;
    font-size: 0.6875rem;
    font-weight: 540;
    line-height: 1;
}

.aiva-session-turn-diff-status--reverted {
    color: #d99a2b;
}

.aiva-session-review-related-change {
    display: flex;
    width: min(100%, 820px);
    min-width: 0;
    flex-direction: column;
    gap: 5px;
    padding: 13px 15px 14px;
    border: 0.5px solid var(--shell-border);
    border-radius: 10px;
    background: color-mix(in srgb, var(--shell-bg-active) 74%, transparent);
}

.aiva-session-review-related-change span {
    overflow: hidden;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-review-related-change strong {
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    font-weight: 520;
    line-height: 1.125rem;
}

.aiva-session-chat-detail {
    display: flex;
    min-height: 100%;
    height: 100%;
    flex-direction: column;
    color: var(--shell-text-primary);
}

.aiva-session-chat-detail__header {
    flex: 0 0 auto;
    padding: 34px clamp(24px, 5vw, 72px) 18px;
}

.aiva-session-chat-detail__messages {
    min-height: 0;
    flex: 1 1 auto;
    padding-inline: clamp(24px, 5vw, 72px);
}

.aiva-session-chat-detail__composer-wrap {
    flex: 0 0 auto;
    padding: 10px clamp(24px, 5vw, 72px) 18px;
}

.aiva-session-turn-rollup-list {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 0.5px solid var(--shell-border);
    border-radius: 10px;
    background: color-mix(in srgb, var(--shell-bg-active) 74%, transparent);
}

.aiva-session-turn-rollup-list__item {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 10px;
    min-height: 40px;
    padding: 0 12px;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
}

.aiva-session-turn-rollup-list__item + .aiva-session-turn-rollup-list__item {
    border-top: 0.5px solid var(--shell-border);
}

.aiva-session-turn-rollup-list__item strong {
    overflow: hidden;
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    font-weight: 520;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-session-turn-rollup-list__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.aiva-session-turn-rollup-list__status {
    display: inline-flex;
    min-width: 0;
    align-items: center;
    gap: 6px;
}

.aiva-section-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}

.aiva-section-heading h2 {
    margin: 0;
    color: var(--shell-text-primary);
    font-size: 0.875rem;
    font-weight: 560;
    line-height: 1.25rem;
}

.aiva-timeline {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
}

.aiva-timeline li {
    position: relative;
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 10px;
    min-height: 38px;
    color: var(--shell-text-secondary);
    font-size: 0.8125rem;
    line-height: 1.25rem;
}

.aiva-timeline li::before {
    content: "";
    position: absolute;
    top: 18px;
    bottom: -2px;
    left: 4px;
    width: 0.5px;
    background: var(--shell-border);
}

.aiva-timeline li:last-child::before {
    display: none;
}

.aiva-timeline__node {
    width: 9px;
    height: 9px;
    margin-top: 6px;
    border: 0.5px solid var(--shell-border);
    border-radius: 50%;
    background: var(--shell-bg-surface);
}

.aiva-timeline__entry {
    min-width: 0;
    margin: 0 0 18px;
}

.aiva-timeline__content {
    color: var(--shell-text-secondary);
}

.aiva-timeline__timestamp {
    display: block;
    margin-top: 5px;
    color: var(--shell-text-tertiary);
    font-size: 0.6875rem;
    line-height: 0.9375rem;
}

.aiva-create-session-modal,
.aiva-add-workspace-modal {
    overflow: hidden;
}

.app-modal-root .selection-dropdown__panel {
    z-index: 720;
}

.aiva-create-session-modal .wizard-frame,
.aiva-add-workspace-modal .wizard-frame {
    width: 100%;
    height: min(720px, calc(100vh - 128px));
    max-height: min(720px, calc(100vh - 128px));
    min-height: min(560px, calc(100vh - 128px));
}

.aiva-create-session-modal .wizard-frame__content,
.aiva-add-workspace-modal .wizard-frame__content {
    overflow: hidden;
}

.aiva-create-session-modal .wizard-frame__step-body,
.aiva-add-workspace-modal .wizard-frame__step-body {
    display: flex;
    min-height: 0;
    flex: 1 1 auto;
    overflow: hidden;
}

.aiva-create-session-step {
    display: flex;
    min-width: 0;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 14px;
}

.aiva-create-session-list {
    min-width: 0;
    min-height: 0;
    flex: 1 1 auto;
    overflow: auto;
    padding-right: 4px;
    scrollbar-width: thin;
    scrollbar-color: color-mix(in srgb, var(--shell-text-secondary) 26%, transparent) transparent;
}

.aiva-wizard-option-card-list {
    width: 100%;
    padding-right: 0;
}

.aiva-wizard-option-card {
    width: 100%;
    --panel-list-item-plate-margin-inline: 0;
    text-align: left;
}

.aiva-wizard-option-card .panel-list-item__body,
.aiva-wizard-option-card .panel-list-item__title-row,
.aiva-wizard-option-card .panel-list-item__subtitle-row {
    width: 100%;
    text-align: left;
}

.aiva-settings-code-review-role-card .panel-list-item__subtitle {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    white-space: normal;
}

/* Reviewer labels ("codex · gpt-5.4-mini · medium") are far longer than the metric
   values the shared summary strip is sized for, so stack the entries as full-width
   rows and let the values wrap instead of truncating the reviewer the user is
   confirming. */
.aiva-settings-code-review-summary {
    grid-template-columns: 1fr;
}

.aiva-settings-code-review-summary div + div {
    border-top: 0.5px solid var(--shell-border);
    border-left: 0;
}

.aiva-settings-code-review-summary strong {
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
}

.aiva-create-session-list::-webkit-scrollbar {
    width: 8px;
}

.aiva-create-session-list::-webkit-scrollbar-track {
    background: transparent;
}

.aiva-create-session-list::-webkit-scrollbar-thumb {
    border: 2px solid transparent;
    border-radius: 9999px;
    background: color-mix(in srgb, var(--shell-text-secondary) 26%, transparent);
    background-clip: padding-box;
}

.aiva-create-session-repository-row {
    min-height: 64px;
}

.aiva-create-session-option-icon {
    display: inline-flex;
    width: 28px;
    height: 28px;
    align-items: center;
    justify-content: center;
    border: 0.5px solid color-mix(in srgb, var(--aiva-create-session-option-color, var(--shell-accent, #5e6ad2)) 35%, var(--shell-border));
    border-radius: 7px;
    background: color-mix(in srgb, var(--aiva-create-session-option-color, var(--shell-accent, #5e6ad2)) 12%, var(--shell-bg-active));
    color: var(--aiva-create-session-option-color, var(--shell-text-secondary));
}

.aiva-create-session-option-icon--default-branch {
    --aiva-create-session-option-color: var(--shell-success-text, #26b36a);
}

.aiva-create-session-option-check {
    display: inline-flex;
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--shell-accent, #5e6ad2);
    color: white;
}

.aiva-create-session-step--configure {
    gap: 18px;
    overflow: hidden;
}

.aiva-transcript-signal__link {
  color: inherit;
  text-decoration: none;
}

.aiva-transcript-signal__link:hover {
  text-decoration: underline;
}

/* Repo file references in transcript markdown read as code, not as web links. */
a[data-aiva-link-kind="file-candidate"] {
  font-family: var(--shell-font-mono, ui-monospace, "SFMono-Regular", "Cascadia Mono", monospace);
  font-size: 0.94em;
  text-decoration-style: dotted;
  text-underline-offset: 2px;
  cursor: pointer;
}

/* Relative paths that can never resolve render as muted text; the title explains on hover. */
a.aiva-transcript-inert-link {
  color: var(--shell-text-secondary, inherit);
  text-decoration: none;
  cursor: help;
}

.aiva-context-fork-option--disabled {
  opacity: 0.45;
  pointer-events: none;
}

.aiva-context-fork-configure {
    overflow: hidden;
    padding-right: 0;
}

.aiva-create-session-prompt-field,
.aiva-context-fork-prompt-field {
    min-height: 0;
    flex: 1 1 auto;
}

.aiva-create-session-prompt-field .ui-form__control-shell,
.aiva-context-fork-prompt-field .ui-form__control-shell {
    display: flex;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
}

.aiva-create-session-prompt-field .ui-form__textarea,
.aiva-context-fork-prompt-field .ui-form__textarea {
    height: 100%;
    min-height: 0;
    flex: 1 1 auto;
    resize: none;
}

.aiva-create-session-prompt-composer {
    display: flex;
    min-height: 0;
    flex: 1 1 auto;
}

.aiva-create-session-prompt-composer .assistant-composer {
    display: flex;
    width: 100%;
    min-height: 72px;
    flex: 1 1 auto;
    flex-direction: column;
    box-sizing: border-box;
    margin: 0;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: var(--shell-bg-surface);
    box-shadow: none;
}

.aiva-create-session-prompt-composer .assistant-composer:focus-within {
    border-color: var(--settings-input-focus-border, var(--settings-input-border, var(--settings-control-border)));
}

.aiva-create-session-prompt-composer .assistant-composer[data-file-dragging="true"] {
    border-color: var(--shell-accent, #5e6ad2);
    background: color-mix(in srgb, var(--shell-accent, #5e6ad2) 6%, var(--shell-bg-surface));
}

.aiva-create-session-prompt-composer .assistant-composer__editor-row {
    min-height: 0;
    flex: 1 1 auto;
}

.aiva-create-session-prompt-composer .assistant-composer__editor {
    min-height: var(--message-composer-min-editor-height, 20.796875px);
    max-height: none;
    resize: none;
}

.aiva-create-session-prompt-composer .message-composer__footer {
    margin-top: 4px;
}

.aiva-create-session-prompt-composer__character-count {
    padding: 0 6px;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    line-height: 1rem;
    text-align: right;
}

.aiva-create-session-hint,
.aiva-create-session-empty {
    margin: 0;
    color: var(--shell-text-secondary);
    font-size: 0.8125rem;
    line-height: 1.25rem;
}

.aiva-create-session-empty {
    padding: 18px 4px;
    text-align: center;
}

.aiva-create-session-repository-error {
    margin: 0;
    color: var(--shell-danger, #dc2626);
    font-size: 0.8125rem;
    line-height: 1.25rem;
}

.aiva-create-session-branch-check {
    margin: 0;
    color: var(--shell-text-secondary);
    font-size: 0.8125rem;
    line-height: 1.25rem;
}

.aiva-create-session-branch-check--error {
    color: #b42318;
}

.aiva-create-session-submission-error {
    margin: 0;
    padding: 10px 12px;
    border: 1px solid color-mix(in srgb, #b42318 35%, transparent);
    border-radius: 8px;
    background: color-mix(in srgb, #b42318 8%, transparent);
    color: #b42318;
    font-size: 0.8125rem;
    line-height: 1.25rem;
}

.aiva-create-session-toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
}

.aiva-create-session-toolbar--repository {
    grid-template-columns: minmax(0, 1fr) auto auto;
}

.aiva-create-session-native-select {
    width: 100%;
    min-height: 36px;
    padding: 0 32px 0 10px;
    border: 1px solid var(--shell-border);
    border-radius: 7px;
    color: var(--shell-text-primary);
    background: var(--shell-bg-surface);
    font: inherit;
}

.aiva-create-session-native-select:focus-visible {
    outline: 2px solid var(--shell-accent, #5e6ad2);
    outline-offset: 1px;
}

.aiva-create-session-field__hint {
    margin: 0;
    color: var(--shell-text-secondary);
    font-size: 0.8125rem;
    line-height: 1.25rem;
}

.aiva-create-session-branch-mode {
    flex: 0 0 auto;
}

.aiva-create-session-field {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 8px;
}

.aiva-context-fork-worktree-option {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 16px;
    padding: 12px;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: var(--shell-bg-surface);
}

.aiva-context-fork-worktree-option__copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 3px;
}

.aiva-context-fork-worktree-option__copy span:first-child {
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
}

.aiva-context-fork-worktree-option__copy span:last-child {
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
}

.aiva-create-session-field-row {
    display: grid;
    min-width: 0;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 12px;
}

.aiva-create-session-toggle {
    display: flex;
    min-height: 36px;
    align-items: center;
}

.aiva-create-session-toggle .ui-form__toggle {
    width: auto;
}

.aiva-create-session-search {
    flex: 0 0 auto;
    box-sizing: border-box;
    height: 36px;
}

.aiva-create-session-field__label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    color: var(--shell-text-primary);
    font-size: 0.75rem;
    font-weight: 560;
    line-height: 1rem;
}

.aiva-create-session-dropdown {
    display: inline-flex;
    width: 100%;
    min-width: 0;
    height: 36px;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 0 10px;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: var(--shell-bg-surface);
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    font-weight: 520;
    line-height: 1rem;
}

.aiva-create-session-field .selection-dropdown,
.aiva-create-session-field .selection-dropdown__anchor {
    width: 100%;
    min-width: 0;
}

.aiva-create-session-dropdown:hover,
.aiva-create-session-dropdown:focus-visible {
    border-color: color-mix(in srgb, var(--shell-accent, #5e6ad2) 38%, var(--shell-border));
    background: var(--shell-bg-active);
    outline: none;
}

.aiva-create-session-dropdown span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (max-width: 720px) {
    .settings-instance-api-key-secret {
        grid-template-columns: minmax(0, 1fr);
    }

    .aiva-create-session-field-row {
        grid-template-columns: minmax(0, 1fr);
    }

    .aiva-inbox-detail {
        padding: 24px 18px 34px;
    }

    .aiva-inbox-detail__summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .aiva-inbox-detail__summary div:nth-child(3) {
        border-top: 0.5px solid var(--shell-border);
        border-left: 0;
    }

    .aiva-inbox-detail__summary div:nth-child(4) {
        border-top: 0.5px solid var(--shell-border);
    }

    .aiva-project-pr-mergeability {
        grid-template-columns: 18px minmax(0, 1fr);
    }

    .aiva-project-pr-mergeability > span:last-child {
        grid-column: 2;
    }

}
.aiva-session-settings-inline-control {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    width: 100%;
}

@media (max-width: 640px) {
    .aiva-session-settings-inline-control {
        grid-template-columns: minmax(0, 1fr);
    }

}

.aiva-add-workspace-step {
    gap: 16px;
    overflow: auto;
    padding-right: 4px;
    scrollbar-width: thin;
    scrollbar-color: color-mix(in srgb, var(--shell-text-secondary) 26%, transparent) transparent;
}

.aiva-add-workspace-invite-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 140px auto;
    align-items: center;
    gap: 8px;
}

.aiva-add-workspace-summary {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 12px;
}

.aiva-add-workspace-summary__workspace {
    display: flex;
    align-items: center;
    gap: 10px;
}

.aiva-add-workspace-summary__avatar {
    display: inline-flex;
    width: 32px;
    height: 32px;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: color-mix(in srgb, var(--shell-accent, #5e6ad2) 18%, transparent);
    color: var(--shell-text-primary);
    font-size: 0.75rem;
    font-weight: 620;
}

.aiva-add-workspace-summary__identity {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}

.aiva-add-workspace-summary__slug {
    color: var(--shell-text-secondary);
    font-size: 0.8125rem;
    line-height: 1.25rem;
}

.aiva-add-workspace-summary__invites {
    display: flex;
    margin: 0;
    padding: 0;
    flex-direction: column;
    gap: 6px;
    list-style: none;
}

.aiva-add-workspace-summary__invite {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--shell-text-secondary);
    font-size: 0.8125rem;
    line-height: 1.25rem;
}

.aiva-add-workspace-summary__invite--sent {
    color: var(--shell-text-primary);
}

.aiva-add-workspace-summary__invite--failed {
    color: #b42318;
}

/* ============================================================
   Aiva Code — auth + legal surface
   Overrides the packaged Qui `.auth-*` styles (app.css loads
   after qui-components.css). Everything here is scoped to
   .auth-shell / .legal-shell so it cannot leak app-wide.
   ============================================================ */
.auth-shell,
.legal-shell {
    --acode-bg-canvas: #0b0c0d;
    --acode-bg-surface: #161719;
    --acode-bg-input: #1a1b1d;
    --acode-bg-hover: #202123;
    --acode-border: #2a2c2f;
    --acode-border-strong: #3a3d41;
    --acode-text-primary: #f4f7f5;
    --acode-text-secondary: #9aa0a6;
    --acode-text-muted: #6b7076;
    --acode-accent: #5e6ad2;
    --acode-accent-hover: #4f5bc8;
    --acode-accent-soft: rgba(94, 106, 210, 0.24);
    --acode-danger: #ef4444;
    --acode-brand-green: #6fcf75;
}

body:has(.auth-shell),
body:has(.legal-shell) {
    background:
        radial-gradient(1200px 600px at 50% -10%, rgba(94, 106, 210, 0.14), transparent 60%),
        radial-gradient(900px 500px at 85% 110%, rgba(111, 207, 117, 0.08), transparent 55%),
        var(--acode-bg-canvas);
}

/* ---- Shell: flex + safe centering (centers when it fits,
   top-anchors + scrolls when the panel is taller than the viewport) ---- */
.auth-shell {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: safe center;
    min-height: 100vh;
    padding: 40px 20px;
    overflow: auto;
    background:
        radial-gradient(1200px 600px at 50% -10%, rgba(94, 106, 210, 0.14), transparent 60%),
        radial-gradient(900px 500px at 85% 110%, rgba(111, 207, 117, 0.08), transparent 55%),
        var(--acode-bg-canvas);
}

/* ---- Panel: 400px card ---- */
.auth-shell .auth-panel {
    width: min(400px, calc(100vw - 40px));
    margin: 0 auto;
    gap: 20px;
    padding: 32px;
    background: var(--acode-bg-surface);
    border: 1px solid var(--acode-border);
    border-radius: 12px;
    box-shadow:
        0 1px 0 0 rgba(255, 255, 255, 0.03) inset,
        0 24px 60px rgba(0, 0, 0, 0.45);
    text-align: center;
}

.auth-shell .auth-logo {
    width: auto;
    height: auto;
    margin: 0;
    align-self: center;
}
.auth-shell .auth-logo img {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    object-fit: cover;
}
.auth-shell .auth-logo img.auth-logo__image {
    display: block;
    width: min(100%, 260px);
    height: auto;
    border-radius: 0;
    object-fit: contain;
}
/* Green brand chip — scoped to the auth logo so the admin-shell
   workspace chip is unaffected. */
.auth-shell .auth-logo .shell-workspace-button__mark {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: var(--acode-brand-green);
    color: #0b0c0d;
    font-size: 22px;
    font-weight: 760;
    line-height: 1;
    letter-spacing: -0.02em;
    box-shadow: 0 6px 18px rgba(111, 207, 117, 0.28);
}

.auth-shell .auth-panel__copy {
    gap: 6px;
}
.auth-shell .auth-panel__copy h1 {
    font-size: 20px;
    font-weight: 650;
    letter-spacing: -0.01em;
    line-height: 1.3;
}
.auth-shell .auth-panel__description {
    max-width: none;
    margin: 0;
    font-size: 14px;
    line-height: 1.5;
    color: var(--acode-text-secondary);
}
.auth-shell .auth-panel__description strong {
    color: var(--acode-text-primary);
    font-weight: 620;
}

/* ---- Forms + inputs ---- */
.auth-shell .auth-form {
    gap: 6px;
    margin-top: 0;
    text-align: left;
}
.auth-shell .auth-label {
    display: block;
    font-size: 13px;
    font-weight: 560;
    color: var(--acode-text-secondary);
    margin-top: 10px;
}
.auth-shell .auth-form > .auth-label:first-child {
    margin-top: 0;
}
.auth-shell .auth-input {
    min-height: 40px;
    height: auto;
    padding: 9px 12px;
    border: 1px solid var(--acode-border-strong);
    border-radius: 6px;
    background: var(--acode-bg-input);
    color: var(--acode-text-primary);
    transition: border-color 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
}
.auth-shell .auth-input::placeholder { color: var(--acode-text-muted); }
.auth-shell .auth-input:hover {
    border-color: color-mix(in srgb, var(--acode-accent) 40%, var(--acode-border-strong));
}
.auth-shell .auth-input:focus {
    border-color: var(--acode-accent);
    box-shadow: 0 0 0 3px rgba(94, 106, 210, 0.18);
    background: color-mix(in srgb, var(--acode-bg-input) 88%, var(--acode-accent) 12%);
}

/* ---- Buttons (rounded, not pill) ---- */
.auth-shell .auth-button {
    position: relative;
    min-height: 44px;
    height: auto;
    margin-top: 18px;
    border: 1px solid var(--acode-border-strong);
    border-radius: 8px;
    background: var(--acode-bg-hover);
    color: var(--acode-text-primary);
    font-size: 15px;
    font-weight: 620;
    line-height: 1;
    gap: 8px;
    transition: background-color 0.16s ease, border-color 0.16s ease, transform 0.06s ease;
}
.auth-shell .auth-button:active { transform: translateY(0.5px); }
.auth-shell .auth-button:not(.auth-button--primary):hover,
.auth-shell .auth-button:not(.auth-button--primary):focus-visible {
    background: color-mix(in srgb, var(--acode-bg-hover) 80%, #fff 6%);
    border-color: var(--acode-border-strong);
    color: var(--acode-text-primary);
}
.auth-shell .auth-button--primary {
    color: #fff;
    background: var(--acode-accent);
    border-color: var(--acode-accent-soft);
}
.auth-shell .auth-button--primary:hover,
.auth-shell .auth-button--primary:focus-visible {
    background: var(--acode-accent-hover);
    color: #fff;
}
.auth-shell .auth-button--primary:focus-visible {
    outline: 2px solid rgba(94, 106, 210, 0.5);
    outline-offset: 2px;
}

/* ---- Busy spinner ---- */
.auth-shell .auth-button__label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    line-height: 1;
}
.auth-shell .auth-spinner {
    box-sizing: border-box;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.4);
    border-top-color: #fff;
    animation: acode-auth-spin 0.7s linear infinite;
}
.auth-shell .auth-button.is-busy {
    cursor: default;
    background: var(--acode-accent-hover);
    pointer-events: none;
}
.auth-shell .auth-button:not(.is-busy) .auth-spinner { display: none; }
/* Busy: hide the label and absolutely-center the spinner in the button, so it
   never depends on the button's flex / line-height context (which was dropping
   it into the bottom-left corner). */
.auth-shell .auth-button.is-busy .auth-button__text { visibility: hidden; }
.auth-shell .auth-button.is-busy .auth-spinner {
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -8px 0 0 -8px;
}
@keyframes acode-auth-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
    .auth-shell .auth-spinner { animation-duration: 1.6s; }
}

/* ---- Error / status banner ---- */
.auth-shell .auth-form__error {
    margin: 0;
    padding: 10px 12px;
    font-size: 13px;
    line-height: 1.45;
    text-align: left;
    color: #ffb4ac;
    background: rgba(239, 68, 68, 0.12);
    border: 1px solid color-mix(in srgb, var(--acode-danger) 40%, transparent);
    border-radius: 6px;
}
.auth-shell .auth-form__error--status {
    color: var(--acode-text-secondary);
    background: color-mix(in srgb, var(--acode-bg-hover) 70%, transparent);
    border-color: var(--acode-border);
}

/* ---- Divider ("or") ---- */
.auth-shell .auth-divider {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    color: var(--acode-text-muted);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}
.auth-shell .auth-divider::before,
.auth-shell .auth-divider::after {
    content: "";
    flex: 1;
    height: 1px;
    background: var(--acode-border);
}

/* ---- Footer + under-panel legal line ---- */
.auth-shell .auth-panel__footer {
    font-size: 13px;
    color: var(--acode-text-secondary);
}
.auth-shell .auth-panel__footer a {
    color: var(--acode-accent);
    text-decoration: none;
    font-weight: 560;
}
.auth-shell .auth-panel__footer a:hover { text-decoration: underline; }
.auth-shell .auth-panel__footer .auth-panel__footer-form { display: inline; }
.auth-shell .auth-panel__footer .auth-link-button {
    background: none;
    border: none;
    padding: 0;
    font: inherit;
    cursor: pointer;
    color: var(--acode-accent);
    font-weight: 560;
}
.auth-shell .auth-panel__footer .auth-link-button:hover { text-decoration: underline; }

.auth-shell > .auth-legal {
    width: min(400px, calc(100vw - 40px));
    margin: 18px auto 0;
    text-align: center;
    font-size: 12px;
    line-height: 1.5;
    color: var(--acode-text-muted);
}
.auth-shell > .auth-legal a { color: var(--acode-text-secondary); }

/* ============================================================
   Legal pages (Terms / Privacy) — reading shell
   ============================================================ */
.legal-shell {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    color: var(--acode-text-primary);
    font-family: var(--font-regular, "Inter", system-ui, sans-serif);
}
.legal-topbar {
    width: 100%;
    border-bottom: 1px solid var(--acode-border);
    background: color-mix(in srgb, var(--acode-bg-surface) 70%, transparent);
    backdrop-filter: blur(6px);
}
.legal-topbar__inner {
    width: min(100%, 820px);
    margin: 0 auto;
    padding: 14px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.brand-wordmark {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    color: var(--acode-text-primary);
    font-weight: 620;
    font-size: 15px;
    letter-spacing: -0.01em;
}
.brand-wordmark .shell-workspace-button__mark {
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    border-radius: 8px;
    background: var(--acode-brand-green);
    color: #0b0c0d;
    font-size: 15px;
    font-weight: 760;
    box-shadow: 0 4px 12px rgba(111, 207, 117, 0.24);
}
.legal-back {
    font-size: 13px;
    font-weight: 560;
    color: var(--acode-text-secondary);
    text-decoration: none;
}
.legal-back:hover { color: var(--acode-text-primary); }
.legal-page {
    width: min(100%, 760px);
    margin: 0 auto;
    padding: 56px 24px 96px;
}
.legal-eyebrow {
    margin: 0 0 10px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--acode-brand-green);
}
.legal-page h1 {
    margin: 0 0 8px;
    font-size: 30px;
    font-weight: 680;
    letter-spacing: -0.02em;
}
.legal-updated {
    margin: 0 0 32px;
    font-size: 13px;
    color: var(--acode-text-muted);
}
.legal-body {
    font-size: 15px;
    line-height: 1.7;
    color: var(--acode-text-secondary);
}
.legal-placeholder {
    margin-top: 8px;
    padding: 28px;
    text-align: center;
    color: var(--acode-text-muted);
    border: 1px dashed var(--acode-border-strong);
    border-radius: 8px;
    background: color-mix(in srgb, var(--acode-bg-surface) 50%, transparent);
}
.shell-tree-node__row--offline-instance .shell-tree-node__label {
    color: var(--shell-danger-text, #ef4444);
}

.aiva-workspace-sidebar-node-row__status {
    pointer-events: none;
}

.aiva-home-summary {
    display: flex;
    width: 100%;
    min-width: 0;
    flex-direction: column;
    gap: 16px;
}

.aiva-home-summary__chart-grid,
.aiva-home-summary__list-grid {
    width: 100%;
}

.aiva-home-summary__chart-card,
.aiva-home-summary__heatmap-card,
.aiva-home-summary__list-card {
    width: 100%;
}

.aiva-home-summary__bar-chart {
    min-height: 236px;
}

.aiva-home-summary__bar-chart--compact {
    min-height: 210px;
}

.aiva-home-summary__list {
    display: flex;
    min-width: 0;
    max-height: 404px;
    flex-direction: column;
    gap: 1px;
    margin: 0;
    padding: 6px;
    overflow: auto;
    list-style: none;
    scrollbar-width: none;
}

.aiva-home-summary__list::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.aiva-home-summary__list li {
    display: grid;
    min-height: 38px;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    padding: 6px 8px;
    border-radius: 6px;
}

.aiva-home-summary__list li:hover {
    background: var(--shell-bg-hover);
}

.aiva-home-summary__list span {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
}

.aiva-home-summary__list strong,
.aiva-home-summary__list small,
.aiva-home-summary__list em {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-home-summary__list strong {
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    font-weight: 540;
    line-height: 1.125rem;
}

.aiva-home-summary__list small {
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
}

.aiva-home-summary__list em {
    color: var(--shell-text-secondary);
    font-family: ui-monospace, "SFMono-Regular", "SF Mono", Menlo, Consolas, monospace;
    font-size: 0.71875rem;
    font-style: normal;
    font-weight: 520;
    line-height: 1rem;
}

.aiva-runtime-stats__message {
    margin: 0;
    color: var(--shell-text-secondary);
    font-size: 0.8125rem;
    line-height: 1.25rem;
}

/* Browsers overview board */
.aiva-browsers-board-groups {
    display: flex;
    width: 100%;
    flex-direction: column;
    gap: 24px;
}

.aiva-browsers-board-group {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 12px;
}

.aiva-browsers-board-group__header {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 8px;
}

.aiva-browsers-board-group__label {
    overflow: hidden;
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    font-weight: 560;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-browsers-board-group__count {
    flex: 0 0 auto;
    padding: 0 7px;
    border-radius: 999px;
    border: 0.5px solid var(--shell-border);
    color: var(--shell-text-secondary);
    font-size: 0.6875rem;
    font-weight: 540;
    line-height: 1.125rem;
}

.aiva-browsers-board-group__rule {
    flex: 1 1 auto;
    height: 0.5px;
    background: var(--shell-border);
}

.aiva-browsers-board {
    display: grid;
    width: 100%;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 16px;
    align-content: start;
}

.aiva-browsers-board__tile {
    display: flex;
    min-width: 0;
    flex-direction: column;
    padding: 0;
    border: 0.5px solid var(--shell-border);
    border-radius: 10px;
    background: var(--shell-bg-surface, transparent);
    cursor: pointer;
    overflow: hidden;
    text-align: left;
    transition: border-color 120ms ease, box-shadow 120ms ease;
}

.aiva-browsers-board__tile:hover,
.aiva-browsers-board__tile:focus-visible {
    border-color: color-mix(in srgb, var(--shell-text-secondary, #8b8b8b) 44%, transparent);
    box-shadow: 0 4px 16px color-mix(in srgb, #000 12%, transparent);
}

.aiva-browsers-board__preview {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    background: color-mix(in srgb, var(--shell-text-secondary, #8b8b8b) 8%, transparent);
    overflow: hidden;
}

.aiva-browsers-board__screenshot {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
}

.aiva-browsers-board__placeholder {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    color: var(--shell-text-secondary);
}

.aiva-browsers-board__badge {
    position: absolute;
    top: 8px;
    right: 8px;
    padding: 2px 7px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--shell-menu-bg, var(--shell-bg-surface)) 82%, transparent);
    backdrop-filter: blur(6px);
    border: 0.5px solid var(--shell-border);
    color: var(--shell-text-primary);
    font-size: 0.6875rem;
    font-weight: 560;
    line-height: 1rem;
}

.aiva-browsers-board__meta {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
    padding: 9px 11px 10px;
    border-top: 0.5px solid var(--shell-border);
}

.aiva-browsers-board__title-row {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 7px;
    color: var(--shell-text-secondary);
}

.aiva-browsers-board__favicon {
    width: 13px;
    height: 13px;
    flex: 0 0 auto;
    border-radius: 3px;
}

.aiva-browsers-board__title {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    font-weight: 540;
    line-height: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-browsers-board__subtitle {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 5px;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    font-weight: 450;
    line-height: 1rem;
}

.aiva-browsers-board__subtitle span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Browser tile preview modal */
.aiva-browser-tile-modal-shell {
    overflow: hidden;
}

.aiva-browser-tile-modal {
    display: flex;
    max-height: calc(100vh - var(--app-modal-top-inset, 96px) - var(--app-modal-bottom-inset, 72px));
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
}

.aiva-browser-tile-modal__header {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 14px 18px;
    border-bottom: 0.5px solid var(--shell-border);
}

.aiva-browser-tile-modal__heading {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 10px;
    color: var(--shell-text-secondary);
}

.aiva-browser-tile-modal__favicon {
    width: 15px;
    height: 15px;
    flex: 0 0 auto;
    border-radius: 3px;
}

.aiva-browser-tile-modal__titles {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
}

.aiva-browser-tile-modal__titles h2 {
    margin: 0;
    overflow: hidden;
    color: var(--shell-text-primary);
    font-size: 0.875rem;
    font-weight: 560;
    line-height: 1.25rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-browser-tile-modal__titles p {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 5px;
    margin: 0;
    color: var(--shell-text-secondary);
    font-size: 0.75rem;
    line-height: 1rem;
}

.aiva-browser-tile-modal__closed {
    color: var(--shell-text-danger, #d4544f);
}

.aiva-browser-tile-modal__toolbar {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    padding: 10px 18px;
    border-bottom: 0.5px solid var(--shell-border);
}

.aiva-browser-tile-modal__body {
    display: flex;
    min-height: 320px;
    flex: 1 1 auto;
    align-items: stretch;
    justify-content: center;
    background: color-mix(in srgb, var(--shell-text-secondary, #8b8b8b) 6%, transparent);
    overflow: auto;
}

.aiva-browser-tile-modal__screenshot {
    display: block;
    width: 100%;
    height: auto;
    align-self: flex-start;
}

.aiva-browser-tile-modal__footer {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 18px;
    border-top: 0.5px solid var(--shell-border);
}

/* Workspace reviews page */
.aiva-reviews-page__main {
    min-width: 0;
    min-height: 0;
    gap: 16px;
    overflow: hidden;
}

.aiva-reviews-page__main > .metric-strip {
    flex: 0 0 auto;
}

.aiva-reviews-table {
    min-width: 0;
    min-height: 0;
    flex: 1 1 auto;
}

.aiva-reviews-table.settings-table--fill .settings-table__section {
    flex: 0 0 auto;
}

.aiva-reviews-filter-trigger {
    display: inline-flex;
    height: 28px;
    align-items: center;
    gap: 6px;
    padding: 0 9px;
    border: 0.5px solid var(--shell-border);
    border-radius: 6px;
    background: var(--shell-bg-surface);
    color: var(--shell-text-secondary);
    font: inherit;
    font-size: 0.75rem;
    white-space: nowrap;
    cursor: pointer;
}

.aiva-reviews-filter-trigger:hover,
.aiva-reviews-filter-trigger[data-open="true"] {
    border-color: var(--shell-border-strong);
    background: var(--shell-bg-hover);
    color: var(--shell-text-primary);
}

.aiva-reviews-filter-trigger:focus-visible {
    outline: 2px solid color-mix(in srgb, var(--shell-accent) 35%, transparent);
    outline-offset: 1px;
}

.aiva-reviews-table__elapsed {
    color: var(--shell-text-tertiary);
    font-family: var(--shell-font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
    font-size: 0.6875rem;
}

.aiva-reviews-table__passes {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.aiva-reviews-table__passes-bar {
    display: inline-block;
    width: 44px;
    height: 4px;
    border-radius: 9999px;
    background: var(--shell-bg-active);
    overflow: hidden;
}

.aiva-reviews-table__passes-fill {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--shell-accent, #5e6ad2);
}

.aiva-reviews-table__passes-count {
    color: var(--shell-text-tertiary);
    font-family: var(--shell-font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
    font-size: 0.6875rem;
}

.aiva-reviews-table__findings {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    min-width: 0;
}

.aiva-reviews-table__finding-chip {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: var(--shell-text-secondary);
    font-size: 0.71875rem;
    white-space: nowrap;
}

.aiva-reviews-table__finding-dot {
    width: 7px;
    height: 7px;
    border-radius: 9999px;
    background: var(--shell-text-tertiary);
}

.aiva-reviews-table__finding-chip--critical .aiva-reviews-table__finding-dot {
    background: #b42318;
}

.aiva-reviews-table__finding-chip--high .aiva-reviews-table__finding-dot {
    background: #d64545;
}

.aiva-reviews-table__finding-chip--medium .aiva-reviews-table__finding-dot {
    background: #d29922;
}

.aiva-reviews-table__finding-chip--low .aiva-reviews-table__finding-dot {
    background: #8a8f98;
}

.aiva-reviews-table__findings-empty {
    color: var(--shell-text-tertiary);
    font-size: 0.71875rem;
}

/* Overview SideQuest board */
.aiva-overview-sidequest {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
}

.aiva-overview-sidequest > .metric-strip {
    flex: 0 0 auto;
}

.aiva-overview-sidequest__table {
    min-width: 0;
}

/* Review detail modal */
.aiva-review-detail-modal-shell {
    --app-modal-current-min-height: calc(100vh - 96px);
}

.aiva-review-detail-modal-shell .split-modal {
    height: calc(100vh - 96px);
    min-height: calc(100vh - 96px);
}

.aiva-review-nav {
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: 100%;
}

.aiva-review-nav__fixed {
    flex: 0 0 auto;
    padding: 4px 6px 0;
    border-bottom: 0.5px solid var(--shell-border);
}

.aiva-review-nav__scroll {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    padding: 4px 6px 12px;
}

.aiva-review-report {
    display: flex;
    flex-direction: column;
    gap: 22px;
    padding: 22px 24px 30px;
}

.aiva-review-report__section {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.aiva-review-report__section h3 {
    margin: 0;
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
    font-weight: 600;
}

.aiva-review-report__section-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
}

.aiva-review-report__count {
    color: var(--shell-text-tertiary);
    font-size: 0.71875rem;
    font-variant-numeric: tabular-nums;
}

.aiva-review-report__badges {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}

.aiva-review-report__summary {
    margin: 0;
    color: var(--shell-text-secondary);
    font-size: 0.875rem;
    line-height: 1.55;
}

.aiva-review-report__markdown p {
    margin: 0 0 8px;
}

.aiva-review-report__markdown p:last-child {
    margin-bottom: 0;
}

.aiva-review-report__markdown code {
    padding: 1px 5px;
    border-radius: 4px;
    background: var(--shell-bg-active);
    font-family: var(--shell-font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
    font-size: 0.78125rem;
}

.aiva-review-report__empty {
    margin: 0;
    color: var(--shell-text-tertiary);
    font-size: 0.8125rem;
}

.aiva-review-report__finding-rows {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.aiva-review-report__finding-row {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 10px 12px;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: var(--shell-bg-surface);
    color: var(--shell-text-primary);
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.aiva-review-report__finding-row:hover {
    border-color: var(--shell-border-strong);
    background: var(--shell-bg-hover);
}

.aiva-review-report__finding-row-title {
    flex: 1 1 auto;
    min-width: 0;
    font-size: 0.8125rem;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aiva-review-report__finding-row-ref {
    flex: 0 0 auto;
    color: var(--shell-text-tertiary);
    font-family: var(--shell-font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
    font-size: 0.6875rem;
}

.aiva-review-report__finding-row :where(.shell-icon, svg) {
    color: var(--shell-text-tertiary);
}

.aiva-review-report__meta {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 20px;
    margin: 0;
    padding: 14px 16px;
    border: 0.5px solid var(--shell-border);
    border-radius: 8px;
    background: var(--shell-bg-hover);
}

.aiva-review-report__meta dt {
    margin: 0 0 2px;
    color: var(--shell-text-tertiary);
    font-size: 0.6875rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.aiva-review-report__meta dd {
    margin: 0;
    color: var(--shell-text-primary);
    font-size: 0.8125rem;
}

.aiva-review-report__reviewers {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.aiva-review-report__reviewer {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 4px;
    font-size: 0.78125rem;
}

.aiva-review-report__reviewer-dot {
    width: 8px;
    height: 8px;
    border-radius: 9999px;
}

.aiva-review-report__reviewer-name {
    color: var(--shell-text-primary);
}

.aiva-review-report__reviewer-status {
    margin-left: auto;
    color: var(--shell-text-tertiary);
    font-size: 0.6875rem;
}

.aiva-review-report__limitations {
    margin: 0;
    padding-left: 18px;
    color: var(--shell-text-secondary);
    font-size: 0.8125rem;
    line-height: 1.5;
}

.aiva-review-stages {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.aiva-review-stages__item {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--shell-text-tertiary);
    font-size: 0.75rem;
}

.aiva-review-stages__dot {
    width: 7px;
    height: 7px;
    border-radius: 9999px;
    background: var(--shell-bg-active);
}

.aiva-review-stages__item--done {
    color: var(--shell-text-secondary);
}

.aiva-review-stages__item--done .aiva-review-stages__dot {
    background: #2f8f5b;
}

.aiva-review-stages__item--active {
    color: var(--shell-text-primary);
    font-weight: 600;
}

.aiva-review-stages__item--active .aiva-review-stages__dot {
    background: var(--shell-accent, #5e6ad2);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--shell-accent) 22%, transparent);
}

.aiva-review-finding {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.aiva-review-finding__title {
    margin: 0;
    color: var(--shell-text-primary);
    font-size: 1.0625rem;
    font-weight: 600;
    line-height: 1.35;
}

.aiva-review-finding__meta dd {
    display: flex;
    align-items: center;
    min-height: 20px;
}

.aiva-review-finding__impact {
    margin: 0;
    color: var(--shell-text-secondary);
    font-size: 0.875rem;
    line-height: 1.55;
}

.aiva-review-finding__suggestion {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 12px 14px;
    border: 0.5px solid var(--shell-border);
    border-left: 2px solid var(--shell-accent, #5e6ad2);
    border-radius: 8px;
    background: var(--shell-bg-hover);
}

.aiva-review-finding__suggestion-label {
    color: var(--shell-accent, #5e6ad2);
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.aiva-review-finding__suggestion .aiva-review-report__markdown {
    color: var(--shell-text-secondary);
    font-size: 0.84375rem;
    line-height: 1.5;
}

.aiva-review-finding__block {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.aiva-review-finding__block h4 {
    margin: 0;
    color: var(--shell-text-tertiary);
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.aiva-review-finding__snippets {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.aiva-review-finding__ref {
    align-self: flex-start;
    padding: 3px 8px;
    border-radius: 5px;
    background: var(--shell-bg-active);
    color: var(--shell-text-secondary);
    font-family: var(--shell-font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
    font-size: 0.71875rem;
}

@media (max-width: 720px) {
    .aiva-reviews-page__main {
        gap: 12px;
    }

    .aiva-reviews-filter-trigger span {
        display: none;
    }

    .aiva-review-report__meta {
        grid-template-columns: minmax(0, 1fr);
    }
}

.ui-form__body--field-section > .settings-editor-footer {
    width: auto;
    margin: 32px 16px 20px;
}

/* Assistant dock: larger default panel than the Qui baseline, anchored bottom-right,
   and height containment so the full session chat workspace fills the panel body. */
.aiva-assistant-dock .assistant-panel:not(.assistant-panel--maximized) {
    left: auto;
    top: auto;
    right: 32px;
    bottom: 37px;
    width: min(560px, calc(100vw - var(--shell-sidebar-width, 264px) - 64px));
    height: min(720px, calc(100vh - 90px));
}

.aiva-assistant-dock__body {
    display: flex;
    flex-direction: column;
}

.aiva-assistant-dock__body .fill-region,
.aiva-assistant-dock__body .aiva-agent-chat-workspace {
    flex: 1 1 auto;
    min-height: 0;
    height: 100%;
}

/* History popover close affordances: the Qui baseline ships neither a light-dismiss
   backdrop nor an explicit close button, so the dock supplies both. The backdrop sits
   just below the popover (z-index 740) inside the dock's stacking context. */
.assistant-history-popover-backdrop {
    position: fixed;
    inset: 0;
    z-index: 739;
    background: transparent;
    border: 0;
    cursor: default;
}

.assistant-history-popover__search {
    gap: 6px;
}

.assistant-history-popover .assistant-history-popover__input {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
}

.assistant-history-popover__close {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 9999px;
    color: var(--assistant-panel-muted);
    transition: background-color 0.15s ease, color 0.15s ease;
}

.assistant-history-popover__close:hover,
.assistant-history-popover__close:focus-visible {
    background: var(--assistant-panel-hover-bg);
    color: var(--assistant-panel-text);
}
