:root {
    --workspace-border: #e4e7ec;
    --workspace-border-soft: #eaecf0;
    --workspace-surface: #fff;
    --workspace-surface-muted: #f9fafb;
    --workspace-text: #1d2939;
    --workspace-muted: #667085;
    --workspace-faint: #98a2b3;
    --workspace-brand: #465fff;
    --workspace-radius: 1rem;
    --workspace-shadow: 0 1px 2px rgba(16, 24, 40, .05);
}

.workspace-content,
.workspace-filter-section,
.workspace-list-section {
    width: 100%;
    min-width: 0;
    max-width: none;
}
.workspace-content-narrow { width: 100%; max-width: 30rem; }
.workspace-content-medium { width: 100%; max-width: 46rem; }
.workspace-content-wide { width: 100%; max-width: 64rem; }
.workspace-content-header { width: 100%; min-width: 0; }
.workspace-content-body {
    display: flex;
    width: 100%;
    min-width: 0;
    flex-direction: column;
    gap: 1.5rem;
    padding-block: 2rem 3rem;
}
.workspace-content-body > * { min-width: 0; }

.workspace-filter-form {
    display: flex !important;
    width: 100%;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: .75rem;
}
.workspace-filter-form > input:not([type="hidden"]) {
    width: min(100%, 20rem) !important;
    max-width: 20rem;
    flex: 1 1 17rem;
}
.workspace-filter-form > select {
    width: min(100%, 15rem) !important;
    max-width: 15rem;
    flex: 0 1 15rem;
}
.workspace-filter-form > div:not(.workspace-filter-actions) {
    width: min(100%, 18rem);
    max-width: 18rem;
    flex: 1 1 14rem;
}
.workspace-filter-form > .workspace-filter-actions {
    display: flex;
    width: auto;
    max-width: none;
    flex: 0 0 auto;
    align-items: center;
    gap: .5rem;
    margin-left: 0 !important;
}

.workspace-card {
    border: 1px solid var(--workspace-border);
    border-radius: var(--workspace-radius);
    background: var(--workspace-surface);
    box-shadow: var(--workspace-shadow);
}

.workspace-card--clip { overflow: hidden; }
.workspace-card--padded-sm { padding: 1rem; }
.workspace-card--padded { padding: 1.25rem; }
.workspace-card--padded-lg { padding: 1.5rem; }
.workspace-card--padded-xl { padding: 1.5rem; }
.workspace-card--elevated { box-shadow: 0 4px 8px -2px rgba(16, 24, 40, .1), 0 2px 4px -2px rgba(16, 24, 40, .06); }
.workspace-card--interactive { transition: border-color .16s ease, box-shadow .16s ease; }
.workspace-card--interactive:hover { border-color: #d0d5dd; }
.workspace-card.shadow-none { box-shadow: none; }
.workspace-card.border-error-200 { border-color: #fecdca; }

.workspace-card-header {
    min-width: 0;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--workspace-border-soft);
}

.workspace-card-header--roomy { padding-block: 1.25rem; border-bottom-color: var(--workspace-border); }
.workspace-card-header--wide { padding-inline: 1.25rem; }
.workspace-card-header--split { display: flex; flex-direction: column; gap: 1rem; }
.workspace-card-header--inline { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.workspace-card-header--top { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.workspace-card-header--wrap { flex-wrap: wrap; gap: .75rem; }
.workspace-card-heading { min-width: 0; }
.workspace-card-title { color: var(--workspace-text); font-size: 1.125rem; font-weight: 600; line-height: 1.75rem; }
.workspace-card-description { margin-top: .25rem; color: var(--workspace-muted); font-size: .875rem; line-height: 1.25rem; }
.workspace-card-body { min-width: 0; padding: 1.25rem; }
.workspace-card-body--wide { padding-inline: 1.5rem; }
.workspace-card-body--roomy { padding: 1.5rem; }
.workspace-card-body--spacious {
    padding: 2rem 1.25rem;
}
.workspace-card-body--chart {
    padding: .75rem 1.25rem 1.25rem;
}
.workspace-card-body > :first-child { margin-top: 0; }
.workspace-card-body > :last-child { margin-bottom: 0; }
.workspace-card-footer { padding: 1.25rem; border-top: 1px solid var(--workspace-border); }

.workspace-filter-bar {
    padding: 1.25rem;
    border-bottom: 1px solid var(--workspace-border);
}

.workspace-table-scroll { width: 100%; overflow-x: auto; }
.workspace-table { min-width: 100%; border-collapse: collapse; }
.workspace-table-head { background: var(--workspace-surface-muted); color: var(--workspace-muted); }
.workspace-table-heading {
    padding: .75rem 1.25rem;
    font-size: .75rem;
    font-weight: 600;
    letter-spacing: .05em;
    text-transform: uppercase;
}
.workspace-table-heading--spaced { letter-spacing: .18em; }
.workspace-table thead + tbody { border-top: 1px solid var(--workspace-border); }
.workspace-table-cell { padding: 1rem 1.25rem; }
.workspace-table tbody tr + tr { border-top: 1px solid var(--workspace-border-soft); }
.workspace-table-row { transition: background-color .14s ease; }
.workspace-table-row:hover { background: rgba(249, 250, 251, .72); }
.workspace-table-empty { padding: 2rem; color: var(--workspace-muted); font-size: .875rem; text-align: center; }
.workspace-table-empty--roomy { padding-block: 3rem; }
.workspace-table-actions { display: flex; justify-content: flex-end; gap: .5rem; }
.workspace-table-action-form { display: inline-flex; }

.workspace-field-label {
    display: block;
    margin-bottom: .5rem;
    color: #344054;
    font-size: .875rem;
    font-weight: 500;
}
.workspace-fieldset-legend { padding-inline: .25rem; }
.workspace-list-disc { padding-left: 1.25rem; list-style-type: disc; }
.workspace-sidebar-header { padding-top: 1.5rem; padding-bottom: 1.25rem; }

.workspace-control {
    border: 1px solid #d0d5dd;
    border-radius: .5rem;
    background: var(--workspace-surface);
    padding: .5rem .75rem;
    color: #1d2939;
    font-size: .875rem;
    box-shadow: var(--workspace-shadow);
    outline: none;
    transition: border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}
.workspace-control::placeholder { color: var(--workspace-faint); }
.workspace-control:focus { border-color: #8098f9; box-shadow: 0 0 0 3px rgba(70, 95, 255, .12); }
.workspace-control:disabled { cursor: not-allowed; background: #f2f4f7; color: var(--workspace-faint); }

.workspace-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    border-radius: .5rem;
    font-size: .875rem;
    font-weight: 500;
    white-space: nowrap;
    box-shadow: var(--workspace-shadow);
    outline: none;
    transition: background-color .16s ease, border-color .16s ease, color .16s ease, opacity .16s ease;
}
.workspace-button--default { height: 2.5rem; padding: .5rem .875rem; }
.workspace-button--compact { height: 2.25rem; padding: .5rem .75rem; }
.workspace-button:focus-visible { box-shadow: 0 0 0 3px rgba(70, 95, 255, .12); }
.workspace-button:disabled { cursor: not-allowed; opacity: .5; }
.workspace-button--primary { border: 1px solid var(--workspace-brand); background: var(--workspace-brand); color: #fff; }
.workspace-button--primary:hover { background: #3641f5; }
.workspace-button--secondary { border: 1px solid #d0d5dd; background: #fff; color: #344054; }
.workspace-button--secondary:hover { background: #f9fafb; }
.workspace-button--danger { border: 1px solid #f04438; background: #f04438; color: #fff; }
.workspace-button--danger:hover { background: #d92d20; }
.workspace-button--warning { border: 1px solid #f79009; background: #f79009; color: #fff; }
.workspace-button--warning:hover { background: #dc6803; }

.workspace-alert { padding: .75rem 1rem; border: 1px solid; border-radius: .75rem; font-size: .875rem; }
.workspace-alert--success { border-color: #abefc6; background: #ecfdf3; color: #067647; }
.workspace-alert--error { border-color: #fecdca; background: #fef3f2; color: #b42318; }
.workspace-alert--warning { border-color: #fedf89; background: #fffaeb; color: #b54708; }
.workspace-alert--info { border-color: #c7d7fe; background: #eef4ff; color: #3538cd; }

.workspace-section-heading { margin-bottom: 1.25rem; }
.workspace-empty-state {
    padding: 3rem 1.5rem;
    border: 1px dashed #d0d5dd;
    border-radius: var(--workspace-radius);
    color: var(--workspace-muted);
    font-size: .875rem;
    text-align: center;
}
.workspace-empty-panel {
    padding: 3rem 1.25rem;
    color: var(--workspace-muted);
    font-size: .875rem;
    text-align: center;
}
.workspace-empty-panel--compact { padding-block: 2rem; }
.workspace-loading-panel {
    padding: 5rem 1.5rem;
    text-align: center;
}

.workspace-access-panel { padding: 2.5rem 1.75rem; }
.workspace-auth-page { padding: 2.5rem 1.25rem; }
.workspace-auth-card { padding: 1.75rem; }
.workspace-auth-form-panel { padding: 1.5rem 1.25rem; }
.workspace-auth-form-content { padding-block: 2.5rem; }
.workspace-auth-brand-panel { padding: 4rem 3rem; }

@media (min-width: 640px) {
    .workspace-card-header--split { flex-direction: row; align-items: center; justify-content: space-between; }
    .workspace-card-header--wide { padding-inline: 1.75rem; }
    .workspace-card-body--spacious { padding-inline: 1.75rem; }
    .workspace-auth-card { padding: 2.25rem; }
    .workspace-auth-form-panel { padding-inline: 2rem; }
}

@media (min-width: 1024px) {
    .workspace-card--padded-xl { padding: 2rem; }
    .workspace-access-panel { padding: 3.5rem 3rem; }
    .workspace-auth-form-panel { padding-inline: 3rem; }
}

@media (min-width: 1280px) {
    .workspace-auth-form-panel { padding-inline: 4rem; }
}

@media (max-width: 639px) {
    .workspace-content-body { padding-block: 1.5rem 2rem; }
    .workspace-filter-form > input:not([type="hidden"]),
    .workspace-filter-form > select,
    .workspace-filter-form > div:not(.workspace-filter-actions) {
        width: 100% !important;
        max-width: none;
        flex-basis: 100%;
    }
}

.dark {
    --workspace-border: #1d2939;
    --workspace-border-soft: #1d2939;
    --workspace-surface: #101828;
    --workspace-surface-muted: rgba(255, 255, 255, .03);
    --workspace-text: rgba(255, 255, 255, .9);
    --workspace-muted: #98a2b3;
    --workspace-faint: #667085;
}
.dark .workspace-card--interactive:hover { border-color: #344054; }
.dark .workspace-card.border-error-200 { border-color: rgba(240, 68, 56, .3); }
.dark .workspace-table-row:hover { background: rgba(255, 255, 255, .02); }
.dark .workspace-field-label { color: #d0d5dd; }
.dark .workspace-control { border-color: #344054; color: rgba(255, 255, 255, .9); }
.dark .workspace-control:disabled { background: rgba(255, 255, 255, .02); }
.dark .workspace-button--secondary { border-color: #344054; background: #1d2939; color: #d0d5dd; }
.dark .workspace-button--secondary:hover { background: #344054; }
.dark .workspace-alert--success { border-color: rgba(18, 183, 106, .35); background: rgba(18, 183, 106, .1); color: #75e0a7; }
.dark .workspace-alert--error { border-color: rgba(240, 68, 56, .35); background: rgba(240, 68, 56, .1); color: #fda29b; }
.dark .workspace-alert--warning { border-color: rgba(247, 144, 9, .35); background: rgba(247, 144, 9, .1); color: #fec84b; }
.dark .workspace-alert--info { border-color: rgba(70, 95, 255, .35); background: rgba(70, 95, 255, .1); color: #9cb9ff; }
.dark .workspace-empty-state { border-color: #344054; }

@media (prefers-reduced-motion: reduce) {
    .workspace-card--interactive,
    .workspace-button,
    .workspace-control,
    .workspace-table-row { transition: none; }
}
/* Shared secondary sidebar for account preparation; no global navigation entry. */
.workspace-content-wide:has(.workspace-preparation-layout > .workspace-preparation:not([hidden])) { max-width: none; margin-inline: 0; }
.workspace-preparation-layout { width: 100%; }
.workspace-preparation-layout:not(:has(> .workspace-preparation:not([hidden]))) { grid-template-columns: minmax(0, 1fr); border: 0; background: transparent; }
.workspace-preparation-layout:not(:has(> .workspace-preparation:not([hidden]))) > .workspace-preparation-content { padding: 0; }
.workspace-preparation-content { min-width: 0; display: flex; flex-direction: column; gap: 24px; }
.workspace-preparation { margin: 0; min-width: 0; }
.workspace-preparation-heading { display: flex; align-items: center; gap: 8px; margin-bottom: 16px; }
.workspace-preparation-icon { display: none; }
.workspace-preparation-heading h2 { margin: 0; font-size: 14px; font-weight: 700; color: var(--workspace-text); }
.workspace-preparation-count { margin-left: auto; flex-shrink: 0; font-size: 12px; color: var(--workspace-muted); }
.workspace-preparation-steps { display: flex; gap: 8px; overflow-x: auto; padding: 0 0 4px; margin: 0; list-style: none; }
.workspace-preparation-steps li { display: flex; align-items: center; gap: 10px; flex-shrink: 0; padding: 10px; border-radius: 10px; color: var(--workspace-muted); font-size: 13px; line-height: 1.5; }
.workspace-preparation-number { display: grid; place-items: center; flex-shrink: 0; width: 26px; height: 26px; border: 1px solid var(--workspace-border); border-radius: 50%; font-size: 12px; font-weight: 600; }
.workspace-preparation-steps .is-current { background: #eef2ff; color: #3641f5; font-weight: 700; }
.workspace-preparation-steps .is-current .workspace-preparation-number { background: #465fff; border-color: #465fff; color: #fff; }
.workspace-preparation-steps .is-complete .workspace-preparation-number { background: #ecfdf3; border-color: #abefc6; color: #027a48; }
.dark .workspace-preparation-steps .is-current { background: #293056; color: #c7d7fe; }
@media (min-width: 768px) {
    .workspace-preparation-steps { flex-direction: column; overflow-x: visible; padding: 0; }
}
