body.v3 .app-main-public {
    flex: 1;
}

body.v3 .alert-public {
    margin: 16px 24px 0;
}

body.v3 .page-eyebrow--flush {
    margin: 0;
}

body.v3 .app-card-title--tight {
    font-size: 13px;
}

body.v3 .app-drawer-loading__label {
    font-size: 13px;
    color: var(--fg-4);
}

body.v3 .app-drawer-loading--error {
    color: var(--danger);
}

body.v3 .app-drawer-loading--error .app-drawer-loading__label {
    color: currentColor;
}

body.v3 .tnum {
    font-variant-numeric: tabular-nums;
}

body.v3 .app-visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* Global layout primitives */
/* ===== Scrollbar stability + align in-flow layout with fixed shell (sidebar uses viewport; body UA margin would inset public header only) ===== */
:root,
html {
    scrollbar-gutter: stable;
    margin: 0;
    padding: 0;
}
@supports not (scrollbar-gutter: stable) {
    html {
        overflow-y: scroll;
    }
}


/* ===== Surfaces ===== */
body.v3 .surface {
    background: var(--bg-2);
    border: 1px solid var(--border);
    border-radius: 14px;
}
body.v3 .surface-elev {
    background: var(--bg-3);
    border: 1px solid var(--border);
    border-radius: 14px;
}


/* ===== Scrollbar ===== */
body.v3 ::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}
body.v3 ::-webkit-scrollbar-track {
    background: var(--bg);
}
body.v3 ::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.15);
    border-radius: 3px;
}
body.v3 ::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 255, 255, 0.25);
}


