:root,
:host {
    --ow-primary: var(--tp-action, var(--tp-primary));
    --ow-primary-rgb: var(--tp-action-rgb, var(--tp-primary-rgb));
    --ow-primary-strong: var(--tp-action-strong, var(--tp-primary-strong));
    --ow-primary-contrast: var(--tp-action-contrast, var(--tp-primary-contrast));
    --ow-ink: var(--tp-ink);
    --ow-muted: var(--tp-muted);
    --ow-surface: var(--tp-surface);
    --ow-surface-soft: var(--tp-surface-soft);
    --ow-canvas: var(--tp-surface-soft);
    --ow-border: var(--tp-border);
    --ow-sidebar: var(--tp-sidebar);
    --ow-sidebar-ink: var(--tp-sidebar-ink);
    --ow-sidebar-muted: var(--tp-sidebar-muted);
    --ow-sidebar-kicker: var(--tp-sidebar-kicker);
    --ow-sidebar-border: var(--tp-sidebar-border);
    --ow-sidebar-divider: var(--tp-sidebar-divider);
    --ow-sidebar-hover: var(--tp-sidebar-hover);
    --ow-sidebar-active-bg: var(--tp-sidebar-active-bg);
    --ow-sidebar-active-ink: var(--tp-sidebar-active-ink);
    --ow-sidebar-badge: var(--tp-sidebar-badge);
    --ow-success: var(--tp-success-ink);
    --ow-success-bg: var(--tp-success-bg);
    --ow-success-border: var(--tp-success-border);
    --ow-warning: var(--tp-warning-ink);
    --ow-warning-bg: var(--tp-warning-bg);
    --ow-warning-border: var(--tp-warning-border);
    --ow-danger: var(--tp-danger-ink);
    --ow-danger-bg: var(--tp-danger-bg);
    --ow-danger-border: var(--tp-danger-border);
    --ow-info: var(--ow-primary);
    --ow-info-bg: var(--tp-gold-bg);
    --ow-shadow: var(--tp-shadow);
    --ow-card-hover-shadow: var(--tp-card-hover-shadow);
    --ow-tab-shadow: var(--tp-tab-shadow);
    --ow-sidebar-width: var(--tp-sidebar-width, 264px);
    --ow-radius: .9rem;
    font-synthesis: none;
}

html.orbit-workflow-v2 { min-width: 320px; background: var(--ow-canvas); color-scheme: light; }
html.orbit-workflow-v2[data-orbit-appearance='dark'] { color-scheme: dark; }
html.orbit-workflow-v2 body {
    display: block !important;
    min-height: 100vh !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--ow-ink) !important;
    background: var(--ow-canvas) !important;
    font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    font-size: 15px;
    line-height: 1.5;
}

.orbit-skip-link { position: fixed; top: -60px; left: 1rem; z-index: 3000; padding: .65rem .9rem; border-radius: 8px; color: var(--ow-primary-contrast); background: var(--ow-primary); font-weight: 750; text-decoration: none; }
.orbit-skip-link:focus { top: 1rem; }
.orbit-workflow-app { min-height: 100vh; }
.orbit-workflow-sidebar { position: fixed; inset: 0 auto 0 0; z-index: 1050; display: flex; width: var(--ow-sidebar-width); box-sizing: border-box; flex-direction: column; overflow-y: auto; padding: 1.35rem 1rem 1rem; border-right: 1px solid var(--ow-sidebar-border); color: var(--ow-sidebar-ink); background: var(--ow-sidebar); }
.orbit-workflow-brand { display: flex; align-items: center; gap: .75rem; padding: .2rem .7rem 2rem; color: var(--ow-sidebar-ink); text-decoration: none; }
.orbit-workflow-brand-mark { position: relative; display: grid; width: 36px; height: 36px; flex: 0 0 auto; place-items: center; border-radius: 10px; background: linear-gradient(145deg, #f0cf68, #ac7414); box-shadow: 0 6px 16px rgba(156,103,15,.2); }
.orbit-workflow-brand-mark::before, .orbit-workflow-brand-mark::after { content: ''; position: absolute; width: 18px; height: 9px; border: 1.5px solid #fff; border-radius: 50%; transform: rotate(42deg); }
.orbit-workflow-brand-mark::after { transform: rotate(-42deg); }
html[data-orbit-theme^='classic-'] .orbit-workflow-brand-mark { background: linear-gradient(145deg, #8d80ff, #5a48ed); box-shadow: 0 7px 22px rgba(109,93,252,.35); }
html[data-orbit-theme^='professional-'] .orbit-workflow-brand-mark { background: linear-gradient(145deg, var(--tp-primary), var(--tp-primary-strong)); box-shadow: 0 6px 16px rgba(var(--tp-primary-rgb),.2); }
html[data-orbit-theme^='neutral-'] .orbit-workflow-brand-mark { border: 1px solid var(--ow-border); background: var(--ow-surface-soft); box-shadow: none; }
html[data-orbit-theme^='neutral-'] .orbit-workflow-brand-mark::before,
html[data-orbit-theme^='neutral-'] .orbit-workflow-brand-mark::after { border-color: var(--ow-primary); }
.orbit-workflow-brand strong, .orbit-workflow-brand small { display: block; line-height: 1.15; }
.orbit-workflow-brand strong { font-size: 1rem; letter-spacing: -.02em; }
.orbit-workflow-brand small { margin-top: .25rem; color: var(--ow-sidebar-muted); font-size: .7rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.orbit-workflow-portal-chip { display: flex; align-items: center; gap: .65rem; margin: 0 .15rem 1.25rem; padding: .7rem; border: 1px solid var(--ow-sidebar-border); border-radius: 10px; background: var(--ow-sidebar-hover); }
.orbit-workflow-portal-chip > span:first-child { display: grid; width: 28px; height: 28px; flex: 0 0 auto; place-items: center; border-radius: 8px; color: var(--ow-primary); background: var(--ow-sidebar-badge); font-size: .7rem; font-weight: 800; }
.orbit-workflow-portal-chip small, .orbit-workflow-portal-chip strong { display: block; line-height: 1.2; }
.orbit-workflow-portal-chip small { color: var(--ow-sidebar-muted); font-size: .57rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.orbit-workflow-portal-chip strong { margin-top: .15rem; font-size: .73rem; }
.orbit-workflow-nav { display: flex; flex-direction: column; }
.orbit-workflow-nav-kicker { display: block; padding: 0 .8rem .55rem; color: var(--ow-sidebar-kicker); font-size: .7rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.orbit-workflow-utility-kicker { margin-top: 1.4rem; }
.orbit-workflow-nav-link { display: flex; width: 100%; min-height: 0; box-sizing: border-box; align-items: center; gap: .8rem; margin: .12rem 0; padding: .72rem .8rem; border: 0; border-radius: .72rem; color: var(--ow-sidebar-muted); background: transparent; font: inherit; font-size: .9rem; font-weight: 560; text-align: left; text-decoration: none; cursor: pointer; transition: color .18s ease, background-color .18s ease, transform .18s ease; }
.orbit-workflow-nav-link:hover { color: var(--ow-sidebar-active-ink); background: var(--ow-sidebar-hover); transform: translateX(2px); }
.orbit-workflow-nav-link.active { color: var(--ow-sidebar-active-ink); background: var(--ow-sidebar-active-bg); box-shadow: inset 3px 0 var(--ow-primary); }
html[data-orbit-theme^='classic-'] .orbit-workflow-nav-link.active { background: linear-gradient(90deg, rgba(var(--ow-primary-rgb), .35), rgba(var(--ow-primary-rgb), .1)); box-shadow: inset 3px 0 #afa4ff; }
html[data-orbit-theme='classic-light'] .orbit-workflow-nav-link.active { background: var(--ow-sidebar-active-bg); box-shadow: inset 3px 0 var(--ow-primary); }
.orbit-workflow-nav-icon { display: grid; width: 1.1rem; flex: 0 0 auto; place-items: center; font-size: 1rem; text-align: center; }
.orbit-workflow-subnav-chevron { width: auto; margin-left: auto; font-size: .8rem; line-height: 1; }
.orbit-workflow-menu-stage { position: relative; min-width: 0; }
.orbit-workflow-menu-stage.is-transitioning { overflow: hidden; }
.orbit-workflow-menu-panel { min-width: 0; }
.orbit-workflow-menu-outgoing { position: absolute; inset: 0; z-index: 1; width: 100%; pointer-events: none; }
.orbit-workflow-menu-incoming { position: relative; z-index: 2; }
.orbit-workflow-transition-forward .orbit-workflow-menu-outgoing { animation: orbit-menu-exit-left .3s cubic-bezier(.2, .72, .2, 1) both; }
.orbit-workflow-transition-forward .orbit-workflow-menu-incoming { animation: orbit-menu-enter-right .3s cubic-bezier(.2, .72, .2, 1) both; }
.orbit-workflow-transition-back .orbit-workflow-menu-outgoing { animation: orbit-menu-exit-right .3s cubic-bezier(.2, .72, .2, 1) both; }
.orbit-workflow-transition-back .orbit-workflow-menu-incoming { animation: orbit-menu-enter-left .3s cubic-bezier(.2, .72, .2, 1) both; }
@keyframes orbit-menu-exit-left { from { opacity: 1; transform: translateX(0); } to { opacity: .15; transform: translateX(-100%); } }
@keyframes orbit-menu-enter-right { from { opacity: .15; transform: translateX(100%); } to { opacity: 1; transform: translateX(0); } }
@keyframes orbit-menu-exit-right { from { opacity: 1; transform: translateX(0); } to { opacity: .15; transform: translateX(100%); } }
@keyframes orbit-menu-enter-left { from { opacity: .15; transform: translateX(-100%); } to { opacity: 1; transform: translateX(0); } }
.orbit-workflow-subnav-shell { min-width: 0; }
.orbit-workflow-subnav-toolbar { display: grid; grid-template-columns: 1fr 1fr; gap: .4rem; margin-bottom: .85rem; padding: 0 .15rem .85rem; border-bottom: 1px solid var(--ow-sidebar-divider); }
.orbit-workflow-subnav-action { display: flex; min-height: 34px; box-sizing: border-box; align-items: center; justify-content: center; gap: .42rem; padding: .42rem .55rem; border: 1px solid var(--ow-sidebar-border); border-radius: .6rem; color: var(--ow-sidebar-muted); background: var(--ow-sidebar); font: inherit; font-size: .72rem; font-weight: 650; line-height: 1; text-decoration: none; cursor: pointer; transition: color .15s ease, border-color .15s ease, background-color .15s ease; }
.orbit-workflow-subnav-action:hover { border-color: var(--ow-sidebar-divider); color: var(--ow-sidebar-active-ink); background: var(--ow-sidebar-hover); }
.orbit-workflow-subnav-heading { display: flex; align-items: center; gap: .7rem; margin-bottom: .55rem; padding: .4rem .65rem; }
.orbit-workflow-subnav-heading-icon { display: grid; width: 30px; height: 30px; flex: 0 0 auto; place-items: center; border: 1px solid var(--ow-sidebar-border); border-radius: .55rem; color: var(--ow-primary); background: var(--ow-sidebar); font-size: .82rem; }
.orbit-workflow-subnav-heading small, .orbit-workflow-subnav-heading strong { display: block; line-height: 1.2; }
.orbit-workflow-subnav-heading small { margin-bottom: .18rem; color: var(--ow-sidebar-kicker); font-size: .62rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.orbit-workflow-subnav-heading strong { color: var(--ow-sidebar-ink); font-size: .82rem; }
.orbit-workflow-subnav .orbit-workflow-nav-link { font-size: .8rem; }
.orbit-workflow-switch { display: flex; align-items: center; gap: .55rem; margin-top: auto; padding: .7rem; border: 1px solid var(--ow-sidebar-border); border-radius: 9px; color: var(--ow-sidebar-muted); font-size: .66rem; font-weight: 700; text-decoration: none; }
.orbit-workflow-switch:hover { border-color: var(--ow-primary); color: var(--ow-primary); background: var(--ow-sidebar-hover); }
.orbit-workflow-main { min-width: 0; min-height: 100vh; margin-left: var(--ow-sidebar-width); }
.orbit-workflow-topbar { position: sticky; top: 0; z-index: 1020; display: flex; align-items: center; justify-content: space-between; min-height: 72px; box-sizing: border-box; padding: .8rem clamp(1rem, 3vw, 2.5rem); border-bottom: 1px solid var(--ow-border); color: var(--ow-ink); background: color-mix(in srgb, var(--ow-surface) 96%, transparent); box-shadow: none; backdrop-filter: blur(14px); }
.orbit-workflow-breadcrumbs { display: flex; align-items: center; gap: .48rem; min-width: 0; color: var(--ow-muted); font-size: .7rem; }
.orbit-workflow-breadcrumbs a { color: inherit; text-decoration: none; }
.orbit-workflow-breadcrumbs a:hover { color: var(--ow-primary); }
.orbit-workflow-breadcrumbs strong { overflow: hidden; color: var(--ow-ink); text-overflow: ellipsis; white-space: nowrap; }
.orbit-workflow-topbar-actions { display: flex; align-items: center; gap: .65rem; }
.orbit-workflow-identity { display: flex; align-items: center; gap: .45rem; max-width: min(28vw, 360px); color: var(--ow-muted); font-size: .65rem; font-weight: 650; }
.orbit-workflow-signed-in-user { position: static !important; display: block; max-width: 320px; overflow: hidden; color: var(--ow-muted) !important; font-size: .65rem !important; text-overflow: ellipsis; white-space: nowrap; }
.orbit-workflow-status-dot { width: 7px; height: 7px; flex: 0 0 auto; border-radius: 50%; background: #37bd82; box-shadow: 0 0 0 4px rgba(55,189,130,.11); }
.orbit-workflow-legacy-link { padding: .42rem .62rem; border: 1px solid var(--ow-border); border-radius: 8px; color: var(--ow-muted); background: var(--ow-surface-soft); font-size: .64rem; font-weight: 700; text-decoration: none; white-space: nowrap; }
.orbit-workflow-legacy-link:hover { border-color: rgba(var(--ow-primary-rgb),.36); color: var(--ow-primary); }
.orbit-workflow-icon-button { display: grid; width: 34px; height: 34px; padding: 0; place-items: center; border: 0; border-radius: 10px; color: var(--ow-muted); background: transparent; font: inherit; cursor: pointer; }
.orbit-workflow-icon-button:hover { color: var(--ow-primary); background: var(--ow-surface-soft); }
.orbit-workflow-menu-button { display: none; }
.orbit-workflow-backdrop { display: none; }
.orbit-workflow-content { width: min(1500px, 100%); min-height: calc(100vh - 72px); box-sizing: border-box; margin: 0 auto; padding: 2rem clamp(1rem, 3vw, 2.5rem) 1.5rem; outline: none; }
.orbit-workflow-content > .portal-header { display: none !important; }

/* Shared page structure */
.orbit-workflow-content > .container,
.orbit-workflow-content > main.container,
.orbit-workflow-content > .wrap,
.orbit-workflow-content > .card {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
    margin: 0 !important;
}
.orbit-workflow-content > .container:not(.grid-container),
.orbit-workflow-content > main.container,
.orbit-workflow-content > .wrap,
.orbit-workflow-content > .card:not(a) {
    padding: clamp(1rem, 2vw, 1.4rem) !important;
    border: 1px solid var(--ow-border) !important;
    border-radius: var(--ow-radius) !important;
    color: var(--ow-ink) !important;
    background: var(--ow-surface) !important;
    box-shadow: var(--ow-shadow) !important;
}
.orbit-workflow-content > .grid-container,
.orbit-workflow-content > .container:has(> a.card) {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)) !important;
    gap: 1rem !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
.orbit-workflow-content.orbit-page-auth > .card,
.orbit-workflow-content.orbit-page-auth > .container {
    max-width: 720px !important;
    margin: 2rem auto !important;
}
.orbit-workflow-content.orbit-page-auth[data-orbit-page='login'] > .card {
    width: min(100%, 560px) !important;
    max-width: 560px !important;
    margin: clamp(.75rem, 5vh, 3.5rem) auto !important;
    padding: clamp(1.4rem, 4vw, 2.4rem) !important;
    overflow: hidden;
    text-align: center !important;
}
.orbit-workflow-content[data-orbit-page='login'] > .card > h1 {
    margin: 0 0 .65rem !important;
    color: var(--ow-ink) !important;
    font-size: clamp(1.35rem, 3vw, 1.75rem) !important;
    line-height: 1.2;
}
.orbit-workflow-content[data-orbit-page='login'] #login-intro {
    margin: 0 0 1.25rem;
    color: var(--ow-muted) !important;
}
.orbit-workflow-content[data-orbit-page='login'] #turnstile-container {
    width: 100%;
    min-height: 65px;
    margin: 1.25rem 0;
    overflow: hidden;
}
.orbit-workflow-content[data-orbit-page='login'] :is(.cf-turnstile, .cf-turnstile iframe) {
    max-width: 100% !important;
}
.orbit-workflow-content[data-orbit-page='login'] .provider-list {
    width: 100%;
    margin: 1.25rem 0 0;
    padding: 0;
}
.orbit-workflow-content[data-orbit-page='login'] .provider-item {
    display: grid;
    width: min(100%, 340px);
    gap: .75rem;
    margin: 0 auto;
}
.orbit-workflow-content[data-orbit-page='login'] .provider-item br { display: none; }
.orbit-workflow-content[data-orbit-page='login'] .provider-link {
    width: 100% !important;
    min-height: 44px;
    justify-content: center;
    padding: .7rem 1rem;
    font-size: .78rem;
}
.orbit-workflow-content[data-orbit-page='login'] .session-choice-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
}
.orbit-workflow-content[data-orbit-page='login'] :is(#session-choice-note, #redirect-message) {
    color: var(--ow-muted) !important;
}
.orbit-workflow-content[data-orbit-page='login'] #session-choice-warning {
    color: var(--ow-danger) !important;
}
.orbit-workflow-content .grid-container > .card,
.orbit-workflow-content > .container > a.card {
    position: relative;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    min-height: 155px;
    box-sizing: border-box;
    padding: 1.15rem !important;
    border: 1px solid var(--ow-border) !important;
    border-radius: var(--ow-radius) !important;
    color: var(--ow-ink) !important;
    background: var(--ow-surface) !important;
    box-shadow: var(--ow-shadow) !important;
    text-align: left !important;
}
.orbit-workflow-content .grid-container > .card::after,
.orbit-workflow-content > .container > a.card::after { content: '→'; position: absolute; right: 1rem; bottom: .85rem; color: var(--ow-muted); font-size: .9rem; transition: transform .15s ease, color .15s ease; }
.orbit-workflow-content .grid-container > .card:hover,
.orbit-workflow-content > .container > a.card:hover { border-color: color-mix(in srgb, var(--ow-primary) 34%, var(--ow-border)) !important; box-shadow: var(--ow-card-hover-shadow) !important; transform: translateY(-2px) !important; }
.orbit-workflow-content .grid-container > .card:hover::after,
.orbit-workflow-content > .container > a.card:hover::after { color: var(--ow-primary); transform: translateX(3px); }
.orbit-workflow-content .card h2 { margin: 0 0 .45rem !important; color: var(--ow-ink) !important; font-size: .92rem !important; font-weight: 740; letter-spacing: -.015em; }
.orbit-workflow-content .card p { color: var(--ow-muted) !important; font-size: .73rem !important; line-height: 1.55; }
.orbit-workflow-content h1, .orbit-workflow-content h2, .orbit-workflow-content h3, .orbit-workflow-content h4 { color: var(--ow-ink); letter-spacing: -.025em; }
.orbit-workflow-content h1 { font-size: clamp(1.45rem, 3vw, 2rem); }
.orbit-workflow-content h2 { font-size: clamp(1.15rem, 2vw, 1.45rem); }
.orbit-workflow-content h3 { font-size: 1rem; }
.orbit-workflow-content p, .orbit-workflow-content .small, .orbit-workflow-content .hint { color: var(--ow-muted); }
.orbit-workflow-content a { color: var(--ow-primary); }
.orbit-workflow-content .page-heading, .orbit-workflow-content .page-header, .orbit-workflow-content .maintenance-heading, .orbit-workflow-content .session-debug-heading { margin-bottom: 1.25rem; padding-bottom: 1rem; border-bottom: 1px solid var(--ow-border); }
.orbit-workflow-content .page-heading h1, .orbit-workflow-content .page-heading h2, .orbit-workflow-content .page-header h1, .orbit-workflow-content .maintenance-heading h2 { margin-top: 0; }
.orbit-workflow-content .layout { gap: 1rem !important; }
.orbit-workflow-content > .container,
.orbit-workflow-content :is(.layout, .panel, .page-heading, .page-header, .toolbar, .actions, .tabs, .table-wrap) {
    min-width: 0 !important;
    max-width: 100% !important;
}
.orbit-workflow-content > .catalog-container { grid-template-columns: minmax(0, 1fr) !important; }
.orbit-workflow-content > .catalog-container > *,
.orbit-workflow-content :is(#productsPanel, #plansPanel, #promotionsPanel, #billingPanel, #directInvoicesPanel) { min-width: 0 !important; }
.orbit-workflow-content .panel, .orbit-workflow-content section.panel, .orbit-workflow-content article.panel, .orbit-workflow-content .info-box, .orbit-workflow-content .editor-section, .orbit-workflow-content .direct-sale-step {
    box-sizing: border-box;
    border: 1px solid var(--ow-border) !important;
    border-radius: 10px !important;
    color: var(--ow-ink) !important;
    background: var(--ow-surface-soft) !important;
    box-shadow: none !important;
}
.orbit-workflow-content .panel { padding: 1rem !important; }

/* Normalize legacy workflow palettes so every reused screen follows the
   selected Orbit tokens instead of keeping light-only inline colors. */
.orbit-workflow-content :is(.card, .logging-panel, .summary-card, .invoice-document, .audit-log-page .card) {
    border-color: var(--ow-border) !important;
    color: var(--ow-ink) !important;
    background: var(--ow-surface) !important;
}
.orbit-workflow-content :is(.invoice-meta, .invoice-note, .recovery-log, .refund-credit-grid > div, .fact, .facts > div, .filters-card, .filter-card) {
    border-color: var(--ow-border) !important;
    color: var(--ow-ink) !important;
    background: var(--ow-surface-soft) !important;
}
.orbit-workflow-content :is(.secret-panel, #resultBox, .output-box) {
    border-color: var(--ow-border) !important;
    color: var(--ow-ink) !important;
    background: var(--ow-surface-soft) !important;
}
.orbit-workflow-content :is(.page-header, .page-heading, .summary-card, .fact, .facts > div, .invoice-meta) :is(p, span, small, dt),
.orbit-workflow-content :is(.small, .field-help, .field-meta, .audit-section-description, .audit-status, .records-description, .refund-availability, .recovery-copy, .panel-copy, .legend-label, .empty-cell, .result-summary) {
    color: var(--ow-muted) !important;
}
.orbit-workflow-content :is(.summary-card, .fact, .facts > div, .invoice-meta) :is(strong, dd),
.orbit-workflow-content :is(.audit-log-page .card, .logging-panel) :is(h1, h2, h3, h4, label) {
    color: var(--ow-ink) !important;
}
.orbit-workflow-content dt,
.orbit-workflow-content :is(.invoice-number span, .chart-value small, .license-count) { color: var(--ow-muted) !important; }
.orbit-workflow-content dd,
.orbit-workflow-content .invoice-number strong { color: var(--ow-ink) !important; }
.orbit-workflow-content :is(.back-link, .primary-button, .secondary-button, .danger-button) {
    border-color: var(--ow-border) !important;
    background: var(--ow-surface) !important;
}
.orbit-workflow-content .back-link { color: var(--ow-primary) !important; }
.orbit-workflow-content :is(.avatar, .company-avatar) {
    border: 1px solid var(--ow-border) !important;
    color: var(--ow-primary) !important;
    background: var(--ow-surface-soft) !important;
}
.orbit-workflow-content :is(#quota-percent, .chart-value strong, .chart-value span) { color: var(--ow-primary) !important; }
.orbit-workflow-content .signin-link { color: var(--ow-danger) !important; }
.orbit-workflow-content details > summary { color: var(--ow-primary) !important; }
.orbit-workflow-content .maintenance-job-panel { min-width: 0 !important; }
.orbit-workflow-content .maintenance-job-panel > * { min-width: 0; }

/* Forms and actions */
.orbit-workflow-content label, :host label { color: var(--ow-ink); font-size: .72rem; font-weight: 680; }
.orbit-workflow-content :is(input:not([type='checkbox']):not([type='radio']), select, textarea),
:host :is(input:not([type='checkbox']):not([type='radio']), select, textarea) {
    min-height: 40px;
    box-sizing: border-box;
    padding: .58rem .7rem !important;
    border: 1px solid var(--ow-border) !important;
    border-radius: 8px !important;
    color: var(--ow-ink) !important;
    background: var(--ow-surface) !important;
    font: inherit;
    font-size: .76rem !important;
}
.orbit-workflow-content textarea, :host textarea { min-height: 96px; resize: vertical; }
.orbit-workflow-content :is(input, select, textarea):focus, :host :is(input, select, textarea):focus { border-color: var(--ow-primary) !important; outline: none; box-shadow: 0 0 0 3px rgba(var(--ow-primary-rgb),.1) !important; }
.orbit-workflow-content :is(input, select, textarea):disabled, :host :is(input, select, textarea):disabled { color: var(--ow-muted) !important; background: var(--ow-canvas) !important; opacity: .74; }
.orbit-workflow-content input[type='checkbox'], .orbit-workflow-content input[type='radio'], :host input[type='checkbox'], :host input[type='radio'] { accent-color: var(--ow-primary); }
.orbit-workflow-content button,
.orbit-workflow-content .btn-primary,
.orbit-workflow-content .btn-secondary,
.orbit-workflow-content .btn-success,
.orbit-workflow-content .btn-warning,
.orbit-workflow-content .btn-danger,
.orbit-workflow-content .provider-link,
.orbit-workflow-content .validate-btn,
.orbit-workflow-content .logout-btn,
.orbit-workflow-content .primary-button,
.orbit-workflow-content .secondary-button,
.orbit-workflow-content .danger-button,
:host button,
:host .btn-primary,
:host .btn-secondary,
:host .btn-success,
:host .btn-warning,
:host .btn-danger {
    min-height: 36px;
    width: auto;
    box-sizing: border-box;
    padding: .48rem .75rem;
    border: 1px solid transparent;
    border-radius: 8px;
    color: var(--ow-primary-contrast);
    background: var(--ow-primary);
    box-shadow: none;
    font: inherit;
    font-size: .7rem;
    font-weight: 720;
    line-height: 1.2;
    text-decoration: none;
    cursor: pointer;
}
.orbit-workflow-content button:hover, .orbit-workflow-content .btn-primary:hover, .orbit-workflow-content .provider-link:hover, :host button:hover { background: var(--ow-primary-strong); }
html[data-orbit-theme^='neutral-'] .orbit-workflow-content :is(button, .btn-primary, .provider-link, .validate-btn),
:host-context(html[data-orbit-theme^='neutral-']) :is(button, .btn-primary, .provider-link, .validate-btn) { border-color: var(--ow-primary); color: var(--ow-primary); background: var(--ow-surface); }
html[data-orbit-theme^='neutral-'] .orbit-workflow-content :is(button, .btn-primary, .provider-link, .validate-btn):hover,
:host-context(html[data-orbit-theme^='neutral-']) :is(button, .btn-primary, .provider-link, .validate-btn):hover { border-color: var(--ow-primary-strong); color: var(--ow-primary-strong); background: var(--ow-surface-soft); }
.orbit-workflow-content :is(.btn-secondary, button.secondary, a.secondary, .secondary-link, .secondary-button, .copy-btn), :host :is(.btn-secondary, button.secondary, a.secondary, .secondary-link, .secondary-button, .copy-btn) { border-color: var(--ow-border) !important; color: var(--ow-ink) !important; background: var(--ow-surface) !important; }
.orbit-workflow-content :is(.btn-secondary, button.secondary, a.secondary, .secondary-link, .copy-btn):hover, :host :is(.btn-secondary, button.secondary, a.secondary, .secondary-link, .copy-btn):hover { border-color: rgba(var(--ow-primary-rgb),.35); color: var(--ow-primary); background: var(--ow-surface-soft); }
.orbit-workflow-content :is(.btn-danger, .danger-button, .logout-btn), :host .btn-danger { color: var(--ow-danger) !important; background: var(--ow-danger-bg) !important; border-color: var(--ow-danger-border) !important; }
.orbit-workflow-content :is(.btn-success, .validate-btn), :host .btn-success { color: var(--ow-success); background: var(--ow-success-bg); border-color: var(--ow-success-border); }
.orbit-workflow-content .btn-warning, :host .btn-warning { color: var(--ow-warning); background: var(--ow-warning-bg); border-color: var(--ow-warning-border); }
.orbit-workflow-content button:disabled, :host button:disabled { cursor: not-allowed; opacity: .5; }
.orbit-workflow-content .actions, .orbit-workflow-content .row, :host .actions { flex-wrap: wrap; }

/* Tables, tabs, statuses and code */
.orbit-workflow-content .table-wrap, .orbit-workflow-content .table-scroll, :host .table-wrap, :host .table-scroll { overflow: auto; border: 1px solid var(--ow-border) !important; border-radius: 9px !important; background: var(--ow-surface); }
.orbit-workflow-content table, :host table { width: 100%; margin: 0 !important; border-collapse: separate !important; border-spacing: 0; color: var(--ow-ink); background: var(--ow-surface); font-size: .7rem; }
.orbit-workflow-content :is(thead, tbody, tr), :host :is(thead, tbody, tr) { color: var(--ow-ink) !important; background: transparent !important; }
.orbit-workflow-content th, .orbit-workflow-content td, :host th, :host td { padding: .68rem .75rem !important; border: 0 !important; border-bottom: 1px solid var(--ow-border) !important; color: inherit; background: transparent !important; text-align: left; }
.orbit-workflow-content th, :host th { color: var(--ow-muted) !important; background: var(--ow-surface-soft) !important; font-size: .61rem; font-weight: 790; letter-spacing: .05em; text-transform: uppercase; white-space: nowrap; }
.orbit-workflow-content tbody tr:hover td, :host tbody tr:hover td { background: var(--ow-surface-soft) !important; }
.orbit-workflow-content tbody tr:last-child td, :host tbody tr:last-child td { border-bottom: 0 !important; }
.orbit-workflow-content .tabs, .orbit-workflow-content .job-tabs, :host .tabs { gap: .3rem !important; padding: .25rem !important; border: 1px solid var(--ow-border) !important; border-radius: 10px !important; background: var(--ow-surface-soft) !important; }
.orbit-workflow-content :is(.tab, .tab-button, .job-tab), :host :is(.tab, .tab-button) { border-color: transparent; color: var(--ow-muted); background: transparent; white-space: nowrap; }
.orbit-workflow-content :is(.tab, .tab-button, .job-tab)[aria-selected='true'], :host :is(.tab, .tab-button)[aria-selected='true'] { color: var(--ow-primary); background: var(--ow-surface); box-shadow: var(--ow-tab-shadow); }
.orbit-workflow-content :is(.tab, .tab-button, .job-tab):not([aria-selected='true']):hover,
:host :is(.tab, .tab-button):not([aria-selected='true']):hover {
    border-color: transparent !important;
    color: var(--ow-primary) !important;
    background: var(--ow-surface) !important;
    box-shadow: inset 0 0 0 1px var(--ow-border) !important;
}
.orbit-workflow-content :is(.tab, .tab-button, .job-tab)[aria-selected='true']:hover,
:host :is(.tab, .tab-button)[aria-selected='true']:hover {
    border-color: transparent !important;
    color: var(--ow-primary) !important;
    background: var(--ow-surface) !important;
    box-shadow: var(--ow-tab-shadow) !important;
}
.orbit-workflow-content :is(.tab, .tab-button, .job-tab):focus-visible,
:host :is(.tab, .tab-button):focus-visible {
    outline: 3px solid rgba(var(--ow-primary-rgb), .18) !important;
    outline-offset: 2px !important;
}
.orbit-workflow-content :is(.status, .status-message, .session-status, .audit-status), :host :is(.status, .status-message) { color: var(--ow-muted) !important; }
.orbit-workflow-content :is(.status, .status-message, .session-status).success, :host :is(.status, .status-message).success { border-color: var(--ow-success-border) !important; color: var(--ow-success) !important; background: var(--ow-success-bg) !important; }
.orbit-workflow-content :is(.status, .status-message, .session-status).error, :host :is(.status, .status-message).error { border-color: var(--ow-danger-border) !important; color: var(--ow-danger) !important; background: var(--ow-danger-bg) !important; }
.orbit-workflow-content .status-error { border-color: var(--ow-danger-border) !important; color: var(--ow-danger) !important; background: var(--ow-danger-bg) !important; }
.orbit-workflow-content :is(.status, .status-message).warning, :host :is(.status, .status-message).warning { color: var(--ow-warning) !important; }
.orbit-workflow-content :is(.status-pass, .summary-box.pass) { border-color: var(--ow-success-border) !important; color: var(--ow-success) !important; background: var(--ow-success-bg) !important; }
.orbit-workflow-content :is(.status-fail, .summary-box.fail, .error, .field-error) { border-color: var(--ow-danger-border) !important; color: var(--ow-danger) !important; background-color: var(--ow-danger-bg) !important; }
.orbit-workflow-content :is(.status-warn, .summary-box.warn) { border-color: var(--ow-warning-border) !important; color: var(--ow-warning) !important; background: var(--ow-warning-bg) !important; }
.orbit-workflow-content :is(.notice, .tech-note, .direct-sale-note), :host :is(.notice, .tech-note, .direct-sale-note) { border-color: var(--ow-warning) !important; color: var(--ow-warning) !important; background: var(--ow-warning-bg) !important; }
.orbit-workflow-content .danger-note { border-color: var(--ow-danger-border) !important; color: var(--ow-danger) !important; background: var(--ow-danger-bg) !important; }
.orbit-workflow-content :is(pre, code, .mono, .session-editor), :host :is(pre, code, .mono) { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace !important; }
.orbit-workflow-content pre, :host pre { padding: .75rem !important; border: 1px solid var(--ow-border) !important; border-radius: 8px !important; color: var(--ow-ink) !important; background: var(--ow-canvas) !important; }
.orbit-workflow-content code, :host code { color: var(--ow-primary); }
.orbit-workflow-content .badge, :host .badge { border: 1px solid var(--ow-border); color: var(--ow-muted); background: var(--ow-surface-soft); }

/* Native and custom dialogs */
.orbit-workflow-content dialog, :host dialog { border: 1px solid var(--ow-border) !important; border-radius: 12px !important; color: var(--ow-ink) !important; background: var(--ow-surface) !important; box-shadow: 0 24px 70px rgba(0,0,0,.28) !important; }
.orbit-workflow-content dialog::backdrop, :host dialog::backdrop { background: rgba(12,13,10,.65) !important; backdrop-filter: blur(2px); }
.orbit-workflow-content :is(.dialog-header, .dialog-heading), :host :is(.dialog-header, .dialog-heading) { border-color: var(--ow-border) !important; background: var(--ow-surface-soft) !important; }
.orbit-workflow-content :is(.modal-content, .catalog-dialog, .promotion-dialog), :host :is(.modal-content, .catalog-dialog, .promotion-dialog) { border: 1px solid var(--ow-border) !important; color: var(--ow-ink) !important; background: var(--ow-surface) !important; }

.orbit-workflow-content footer, .orbit-workflow-content > footer { display: flex; align-items: center; justify-content: space-between; box-sizing: border-box; width: 100%; margin-top: 2rem; padding: 1rem 0 0 !important; border-top: 1px solid var(--ow-border); color: var(--ow-muted) !important; font-size: .64rem; }
.orbit-workflow-content .profile-pic { border: 3px solid var(--ow-surface); box-shadow: 0 0 0 1px var(--ow-border); }
.orbit-workflow-content iframe { border-color: var(--ow-border) !important; background: var(--ow-surface) !important; }

/* Fragment pages are mounted inside a v2 shadow-root host. */
html.orbit-workflow-fragment body { min-height: 0 !important; background: transparent !important; }
html.orbit-workflow-fragment .portal-header, html.orbit-workflow-fragment body > footer { display: none !important; }
html.orbit-workflow-fragment :is(.container, main.container) { width: 100% !important; max-width: none !important; box-sizing: border-box !important; margin: 0 !important; }

@media (max-width: 980px) {
    .orbit-workflow-sidebar { transform: translateX(-102%); transition: transform .2s ease; }
    .orbit-workflow-main { margin-left: 0; }
    .orbit-workflow-menu-button { display: grid; }
    .orbit-workflow-app.navigation-open .orbit-workflow-sidebar { transform: translateX(0); }
    .orbit-workflow-backdrop { position: fixed; inset: 0; z-index: 1040; border: 0; background: rgba(10,11,9,.55); }
    .orbit-workflow-app.navigation-open .orbit-workflow-backdrop { display: block; }
    .orbit-workflow-content { padding-top: 1.1rem; }
}

@media (max-width: 720px) {
    .orbit-workflow-topbar { min-height: 62px; padding-inline: .8rem; }
    .orbit-workflow-breadcrumbs a, .orbit-workflow-breadcrumbs > span { display: none; }
    .orbit-workflow-identity { display: none; }
    .orbit-workflow-legacy-link { padding-inline: .5rem; }
    .orbit-workflow-content { padding-inline: .75rem; }
    .orbit-workflow-content > .container:not(.grid-container), .orbit-workflow-content > main.container, .orbit-workflow-content > .wrap, .orbit-workflow-content > .card:not(a) { padding: .85rem !important; }
    .orbit-workflow-content > .grid-container, .orbit-workflow-content > .container:has(> a.card) { grid-template-columns: 1fr !important; }
    .orbit-workflow-content .page-heading, .orbit-workflow-content .page-header, .orbit-workflow-content .maintenance-heading { display: block !important; }
    .orbit-workflow-content .tabs, .orbit-workflow-content .job-tabs { overflow-x: auto; flex-wrap: nowrap !important; }
    .orbit-workflow-content footer { align-items: flex-start; flex-direction: column; gap: .35rem; }
    .orbit-workflow-content.orbit-page-auth[data-orbit-page='login'] > .card {
        margin: .5rem auto !important;
        padding: 1.1rem !important;
    }
    .orbit-workflow-content[data-orbit-page='login'] .session-choice-actions { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
