:root {
    --swiss-bg: #f7f9fc;
    --swiss-surface: #ffffff;
    --swiss-ink: #0e1a2f;
    --swiss-muted: #5a6476;
    --swiss-border: #d7deea;
    --swiss-accent: #123a78;
    --swiss-accent-strong: #0d2d5e;
    --swiss-ok: #106a47;
    --swiss-warn: #8a5a06;
    --swiss-danger: #8b1d1d;
}

body {
    background: var(--swiss-bg);
    color: var(--swiss-ink);
}

.legal-stepper,
.dashboard-panel,
.ali-widget {
    background: var(--swiss-surface);
    border: 1px solid var(--swiss-border);
    border-radius: 16px;
    box-shadow: 0 14px 40px rgba(14, 26, 47, 0.06);
}

.legal-stepper {
    padding: 20px;
}

.legal-stepper-progress {
    display: flex;
    gap: 8px;
    margin-bottom: 16px;
}

.legal-stepper-progress span {
    flex: 1;
    height: 4px;
    background: #e4e9f2;
    border-radius: 999px;
}

.legal-stepper-progress span.is-active {
    background: var(--swiss-accent);
}

.legal-step-actions {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-top: 20px;
}

.legal-stepper [data-step][hidden] {
    display: none !important;
}

.dashboard-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 14px;
}

.dashboard-panel {
    padding: 18px;
}

.dashboard-status {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.9rem;
    color: var(--swiss-muted);
}

.dashboard-status::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--swiss-ok);
}

.ali-widget {
    padding: 16px;
    margin-top: 24px;
}

.ali-widget-title {
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 8px;
}

.ali-widget-note {
    margin: 0;
    color: var(--swiss-muted);
    font-size: 0.95rem;
}

@media (prefers-color-scheme: dark) {
    :root {
        --swiss-bg: #0a101c;
        --swiss-surface: #101a2a;
        --swiss-ink: #edf1fa;
        --swiss-muted: #a9b3c4;
        --swiss-border: #223148;
        --swiss-accent: #5e8ce0;
        --swiss-accent-strong: #82a4e8;
    }
}

