/**
 * Application Audit - Premium Analyst Interface
 * Crafted, sophisticated design for finance professionals
 *
 * @package SFFC
 * @since 11.0.0
 */

/* ============================================
   CSS VARIABLES - Refined Professional
   ============================================ */
:root {
    /* Primary - Deep Navy (not harsh) */
    --audit-navy: #1e3a5f;
    --audit-navy-light: #2d4a6f;
    --audit-navy-dark: #152a45;

    /* Accent - Subtle teal (not aggressive blue) */
    --audit-accent: #3d7a8c;
    --audit-accent-light: #5a9bab;

    /* Premium Backgrounds */
    --audit-bg-warm: #FAFAF8;
    --audit-bg-cream: #F7F6F3;
    --audit-bg-white: #FFFFFF;
    --audit-bg-subtle: #F3F2EF;

    /* Status Colors - Muted, professional */
    --audit-error: #B91C1C;
    --audit-error-light: #FEF2F2;
    --audit-error-bg: #FEE2E2;
    --audit-success: #047857;
    --audit-success-light: #ECFDF5;
    --audit-success-bg: #D1FAE5;
    --audit-warning: #B45309;
    --audit-warning-light: #FFFBEB;
    --audit-warning-bg: #FEF3C7;

    /* Text - Refined hierarchy */
    --audit-text-primary: #1e3a5f;
    --audit-text-secondary: #4a5568;
    --audit-text-tertiary: #718096;
    --audit-text-muted: #a0aec0;
    --audit-text-inverse: #FFFFFF;

    /* Borders - Subtle */
    --audit-border: #E8E6E1;
    --audit-border-light: #F0EEEA;
    --audit-border-dark: #D4D1CA;

    /* Design System */
    --audit-radius-sm: 4px;
    --audit-radius-md: 8px;
    --audit-radius-lg: 12px;
    --audit-radius-xl: 16px;
    --audit-radius-full: 9999px;

    /* Shadows - Subtle, elegant */
    --audit-shadow-sm: 0 1px 2px rgba(30, 58, 95, 0.04);
    --audit-shadow-md: 0 4px 12px rgba(30, 58, 95, 0.06);
    --audit-shadow-lg: 0 8px 24px rgba(30, 58, 95, 0.08);
    --audit-shadow-xl: 0 20px 40px rgba(30, 58, 95, 0.12);

    /* Typography */
    --audit-font: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    --audit-font-display: 'RecifeDisplay', 'NotoSerif-TC', 'NotoSerif-SC', Georgia, serif;

    /* Transitions */
    --audit-transition: all 0.2s ease;
    --audit-transition-slow: all 0.3s ease;

    /* Legacy mappings */
    --audit-primary: var(--audit-navy);
    --audit-primary-light: var(--audit-navy-light);
    --audit-primary-dark: var(--audit-navy-dark);
    --audit-secondary: var(--audit-accent);
    --audit-secondary-light: var(--audit-accent-light);
    --audit-bg-slate: var(--audit-bg-warm);
    --audit-bg-light: var(--audit-bg-cream);
    --audit-cream: var(--audit-bg-cream);
    --audit-cream-light: var(--audit-bg-warm);
    --audit-cream-dark: var(--audit-border);
    --audit-gold-gradient: linear-gradient(135deg, var(--audit-accent) 0%, var(--audit-accent-light) 100%);
    --audit-gold-primary: var(--audit-accent);
    --audit-gold-secondary: var(--audit-accent-light);
    --audit-forest: var(--audit-success);
    --audit-forest-light: #10B981;
    --audit-text-dark: var(--audit-text-primary);
    --audit-text-medium: var(--audit-text-secondary);
    --audit-text-light: var(--audit-text-tertiary);
    --audit-shadow-gold: var(--audit-shadow-md);
}

/* ============================================
   BASE WRAPPER - Fullscreen Experience
   ============================================ */
.sffc-audit-wrapper {
    font-family: var(--audit-font);
    font-size: 15px;
    line-height: 1.6;
    color: var(--audit-text-primary);
    background: var(--audit-bg-white);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Fullscreen mode for sequence */
.sffc-audit-wrapper--fullscreen {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 99999;
    overflow-y: auto;
}

/* ============================================
   WELCOME SCREEN - Premium Light Background
   ============================================ */
.audit-welcome {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 24px;
    background: var(--audit-bg-cream);
    color: var(--audit-text-primary);
    text-align: center;
    position: relative;
}

/* Subtle texture overlay */
.audit-welcome::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background:
        radial-gradient(ellipse at 30% 20%, rgba(61, 122, 140, 0.03) 0%, transparent 50%),
        radial-gradient(ellipse at 70% 80%, rgba(30, 58, 95, 0.02) 0%, transparent 50%);
    pointer-events: none;
}

.audit-welcome__header {
    margin-bottom: 40px;
    position: relative;
    z-index: 1;
}

.audit-welcome__badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: var(--audit-bg-white);
    border: 1px solid var(--audit-border);
    border-radius: var(--audit-radius-full);
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--audit-text-secondary);
    box-shadow: var(--audit-shadow-sm);
}

.audit-welcome__badge svg {
    width: 14px;
    height: 14px;
    color: var(--audit-accent);
}

.audit-welcome__content {
    max-width: 680px;
    position: relative;
    z-index: 1;
}

.audit-welcome__title {
    font-family: var(--audit-font-display);
    font-size: 48px;
    font-weight: 400;
    margin: 0 0 20px 0;
    line-height: 1.15;
    letter-spacing: -0.02em;
    color: var(--audit-navy);
}

.audit-welcome__subtitle {
    font-size: 18px;
    color: var(--audit-text-secondary);
    margin: 0 0 48px 0;
    line-height: 1.7;
    max-width: 520px;
    margin-left: auto;
    margin-right: auto;
}

.audit-welcome__job {
    margin-bottom: 56px;
    padding: 28px 36px;
    background: var(--audit-bg-white);
    border: 1px solid var(--audit-border);
    border-radius: var(--audit-radius-lg);
    box-shadow: var(--audit-shadow-md);
}

.audit-welcome__job-title {
    font-family: var(--audit-font-display);
    font-size: 24px;
    font-weight: 500;
    color: var(--audit-navy);
    margin-bottom: 8px;
}

.audit-welcome__job-company {
    font-size: 15px;
    color: var(--audit-text-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.audit-welcome__job-dot {
    width: 4px;
    height: 4px;
    background: var(--audit-border-dark);
    border-radius: 50%;
}

.audit-welcome__features {
    display: flex;
    gap: 48px;
    margin-bottom: 56px;
    flex-wrap: wrap;
    justify-content: center;
}

.audit-welcome__feature {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    text-align: left;
}

.audit-welcome__feature-icon {
    width: 48px;
    height: 48px;
    background: var(--audit-bg-white);
    border: 1px solid var(--audit-border);
    border-radius: var(--audit-radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.audit-welcome__feature-icon svg {
    width: 22px;
    height: 22px;
    color: var(--audit-accent);
}

.audit-welcome__feature-text {
    padding-top: 4px;
}

.audit-welcome__feature-text strong {
    display: block;
    font-size: 15px;
    font-weight: 600;
    color: var(--audit-navy);
    margin-bottom: 4px;
}

.audit-welcome__feature-text span {
    font-size: 13px;
    color: var(--audit-text-tertiary);
    line-height: 1.4;
}

.audit-welcome__footer {
    position: relative;
    z-index: 1;
}

.audit-btn--start {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 18px 44px;
    background: var(--audit-navy);
    color: var(--audit-text-inverse);
    font-size: 15px;
    font-weight: 600;
    border: none;
    border-radius: var(--audit-radius-md);
    cursor: pointer;
    transition: var(--audit-transition);
    box-shadow: var(--audit-shadow-lg);
}

.audit-btn--start:hover {
    background: var(--audit-navy-light);
    transform: translateY(-1px);
    box-shadow: var(--audit-shadow-xl);
}

.audit-btn--start svg {
    width: 18px;
    height: 18px;
}

.audit-welcome__time {
    margin-top: 24px;
    font-size: 14px;
    color: var(--audit-text-tertiary);
}

.audit-welcome__time-icon {
    font-weight: 600;
    color: var(--audit-text-secondary);
}

.audit-welcome__disclaimer {
    margin-top: 28px;
    font-size: 13px;
    color: var(--audit-text-muted);
    max-width: 440px;
    line-height: 1.5;
}

/* ============================================
   LOADING STATE - Fullscreen Professional
   ============================================ */
.audit-loading {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 24px;
    background: var(--audit-bg-slate);
    text-align: center;
}

.audit-loading__icon {
    position: relative;
    width: 80px;
    height: 80px;
    margin-bottom: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.audit-loading__icon svg {
    color: var(--audit-primary);
    width: 32px;
    height: 32px;
    z-index: 1;
}

.audit-loading__icon--error svg {
    color: var(--audit-error);
}

.audit-loading__ring {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 3px solid var(--audit-border);
    border-top-color: var(--audit-primary);
    border-radius: 50%;
    animation: audit-spin 1s linear infinite;
}

.audit-loading--error {
    background: var(--audit-bg-white);
}

.audit-loading--error .audit-loading__ring {
    border-top-color: var(--audit-error);
}

@keyframes audit-spin {
    to { transform: rotate(360deg); }
}

.audit-loading__text {
    font-size: 20px;
    font-weight: 600;
    color: var(--audit-text-primary);
    margin-bottom: 8px;
}

.audit-loading__subtext {
    font-size: 15px;
    color: var(--audit-text-tertiary);
}

.audit-loading__steps {
    display: flex;
    gap: 16px;
    margin-top: 40px;
    flex-wrap: wrap;
    justify-content: center;
}

.audit-loading__step {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: var(--audit-text-muted);
    padding: 10px 18px;
    background: var(--audit-bg-white);
    border-radius: var(--audit-radius-md);
    border: 1px solid var(--audit-border);
    transition: var(--audit-transition);
}

.audit-loading__step--active {
    color: var(--audit-primary);
    border-color: var(--audit-primary);
    background: var(--audit-bg-white);
    box-shadow: var(--audit-shadow-sm);
}

/* ============================================
   QUESTION SEQUENCE - Premium Light Experience
   ============================================ */
.audit-sequence {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background: var(--audit-bg-cream);
}

/* Sequence Header - Minimal Top Bar */
.audit-sequence__header {
    position: sticky;
    top: 0;
    z-index: 100;
    padding: 24px 40px;
    background: var(--audit-bg-white);
    border-bottom: 1px solid var(--audit-border);
}

/* Progress Info Row */
.audit-sequence__progress-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
}

.audit-sequence__step {
    font-size: 13px;
    font-weight: 600;
    color: var(--audit-navy);
    letter-spacing: 0.02em;
}

.audit-sequence__category {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    font-weight: 500;
    color: var(--audit-text-secondary);
}

.audit-sequence__category svg {
    width: 16px;
    height: 16px;
    color: var(--audit-accent);
}

/* Progress Bar - Refined */
.audit-sequence__progress-bar {
    height: 3px;
    background: var(--audit-border);
    border-radius: var(--audit-radius-full);
    overflow: hidden;
}

.audit-sequence__progress-fill {
    height: 100%;
    background: var(--audit-accent);
    border-radius: var(--audit-radius-full);
    transition: width 0.4s ease;
}

/* Sequence Body - Centered Content */
.audit-sequence__body {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 80px 24px;
}

/* Question Badge */
.audit-question__badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 600;
    color: var(--audit-warning);
    background: var(--audit-warning-bg);
    padding: 8px 16px;
    border-radius: var(--audit-radius-full);
    margin-bottom: 24px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.audit-question__badge svg {
    width: 12px;
    height: 12px;
}

/* Sequence Footer - Clean Bottom */
.audit-sequence__footer {
    position: sticky;
    bottom: 0;
    padding: 24px 40px;
    background: var(--audit-bg-white);
    border-top: 1px solid var(--audit-border);
}

.audit-question {
    max-width: 600px;
    width: 100%;
    text-align: center;
}

.audit-question__text {
    font-family: var(--audit-font-display);
    font-size: 32px;
    font-weight: 400;
    color: var(--audit-navy);
    margin-bottom: 16px;
    line-height: 1.3;
}

.audit-question__context {
    font-size: 16px;
    color: var(--audit-text-secondary);
    margin-bottom: 48px;
    line-height: 1.6;
}

/* Options List - Refined Cards */
.audit-options {
    display: flex;
    flex-direction: column;
    gap: 14px;
    width: 100%;
}

.audit-option {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 22px 28px;
    background: var(--audit-bg-white);
    border: 1px solid var(--audit-border);
    border-radius: var(--audit-radius-lg);
    cursor: pointer;
    transition: var(--audit-transition);
    text-align: left;
    box-shadow: var(--audit-shadow-sm);
}

.audit-option:hover {
    border-color: var(--audit-border-dark);
    box-shadow: var(--audit-shadow-md);
    transform: translateY(-1px);
}

.audit-option--selected {
    border-color: var(--audit-accent);
    background: var(--audit-bg-white);
    box-shadow: 0 0 0 3px rgba(61, 122, 140, 0.12);
}

/* Option Indicator */
.audit-option__indicator {
    width: 22px;
    height: 22px;
    border: 2px solid var(--audit-border-dark);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: var(--audit-transition);
}

.audit-option:hover .audit-option__indicator {
    border-color: var(--audit-accent);
}

.audit-option--selected .audit-option__indicator {
    border-color: var(--audit-accent);
    background: var(--audit-accent);
}

.audit-option__check {
    opacity: 0;
    transform: scale(0);
    transition: var(--audit-transition);
    color: white;
}

.audit-option__check svg {
    width: 12px;
    height: 12px;
}

.audit-option--selected .audit-option__check {
    opacity: 1;
    transform: scale(1);
}

.audit-option__content {
    flex: 1;
}

.audit-option__label {
    font-size: 15px;
    color: var(--audit-text-primary);
    line-height: 1.5;
}

/* Sequence Navigation */
.audit-sequence__nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* Base Button Styles */
.audit-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 28px;
    border-radius: var(--audit-radius-md);
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: var(--audit-transition);
    border: none;
}

.audit-btn--primary {
    background: var(--audit-primary);
    color: white;
}

.audit-btn--primary:hover:not(:disabled) {
    background: var(--audit-primary-light);
}

.audit-btn--primary:disabled {
    background: var(--audit-border);
    color: var(--audit-text-muted);
    cursor: not-allowed;
}

.audit-btn--secondary {
    background: var(--audit-bg-white);
    color: var(--audit-text-secondary);
    border: 1px solid var(--audit-border);
}

.audit-btn--secondary:hover {
    background: var(--audit-bg-slate);
    border-color: var(--audit-border-dark);
}

/* Button variants - JS Structure */
.audit-btn--back {
    background: var(--audit-bg-white);
    color: var(--audit-text-secondary);
    border: 1px solid var(--audit-border);
    padding: 14px 24px;
}

.audit-btn--back:hover {
    background: var(--audit-bg-slate);
    border-color: var(--audit-border-dark);
}

.audit-btn--next {
    background: var(--audit-primary);
    color: white;
}

.audit-btn--next:hover:not(:disabled) {
    background: var(--audit-primary-light);
}

.audit-btn--disabled,
.audit-btn--next:disabled {
    background: var(--audit-border);
    color: var(--audit-text-muted);
    cursor: not-allowed;
}

.audit-btn svg {
    width: 18px;
    height: 18px;
}

/* ============================================
   REPORT DASHBOARD - Analyst-Crafted Design
   ============================================ */
.audit-report {
    min-height: 100vh;
    background: var(--audit-bg-cream);
}

/* Report Header - Score Hero */
.audit-report__header {
    background: var(--audit-bg-white);
    padding: 56px 32px;
    border-bottom: 1px solid var(--audit-border);
}

.audit-report__header-inner {
    max-width: 960px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 56px;
}

/* Score Circle - Refined */
.audit-score-circle {
    position: relative;
    width: 180px;
    height: 180px;
    flex-shrink: 0;
}

.audit-score-circle__ring {
    width: 100%;
    height: 100%;
    transform: rotate(-90deg);
}

.audit-score-circle__bg {
    fill: none;
    stroke: var(--audit-border);
    stroke-width: 8;
}

.audit-score-circle__progress {
    fill: none;
    stroke-width: 8;
    stroke-linecap: round;
    transition: stroke-dashoffset 1.5s ease;
}

.audit-score-circle__inner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
}

.audit-score-circle__value {
    font-family: var(--audit-font-display);
    font-size: 56px;
    font-weight: 400;
    line-height: 1;
    color: var(--audit-navy);
}

.audit-score-circle__label {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--audit-text-tertiary);
    margin-top: 8px;
}

/* Grade Info */
.audit-report__grade {
    flex: 1;
}

.audit-report__grade-badge {
    display: inline-block;
    padding: 10px 20px;
    border-radius: var(--audit-radius-md);
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 16px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.audit-report__grade-label {
    font-family: var(--audit-font-display);
    font-size: 28px;
    font-weight: 400;
    color: var(--audit-navy);
    margin-bottom: 12px;
}

.audit-report__message {
    font-size: 16px;
    color: var(--audit-text-secondary);
    max-width: 420px;
    line-height: 1.7;
}

/* Job Info in Header */
.audit-report__job {
    text-align: right;
    padding-left: 40px;
    border-left: 1px solid var(--audit-border);
}

.audit-report__job-title {
    font-family: var(--audit-font-display);
    font-size: 20px;
    font-weight: 500;
    color: var(--audit-navy);
    margin-bottom: 6px;
}

.audit-report__job-company {
    font-size: 14px;
    color: var(--audit-text-tertiary);
}

/* Issue Counters */
.audit-counts {
    display: flex;
    gap: 1px;
    background: var(--audit-border);
    border-bottom: 1px solid var(--audit-border);
}

.audit-count {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 24px;
    background: var(--audit-bg-white);
}

.audit-count__icon {
    width: 44px;
    height: 44px;
    border-radius: var(--audit-radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}

.audit-count--critical .audit-count__icon {
    background: var(--audit-error-bg);
    color: var(--audit-error);
}

.audit-count--warning .audit-count__icon {
    background: var(--audit-warning-bg);
    color: var(--audit-warning);
}

.audit-count--passed .audit-count__icon {
    background: var(--audit-success-bg);
    color: var(--audit-success);
}

.audit-count__info {
    text-align: left;
}

.audit-count__num {
    font-size: 28px;
    font-weight: 700;
    color: var(--audit-text-primary);
    line-height: 1;
}

.audit-count__label {
    font-size: 13px;
    color: var(--audit-text-tertiary);
    margin-top: 4px;
}

/* Report Body */
.audit-report__body {
    max-width: 1000px;
    margin: 0 auto;
    padding: 32px;
    display: grid;
    gap: 24px;
}

/* Panel Cards - Clean Style */
.audit-panel {
    background: var(--audit-bg-white);
    border-radius: var(--audit-radius-lg);
    border: 1px solid var(--audit-border);
    overflow: hidden;
}

.audit-panel__header {
    padding: 20px 24px;
    border-bottom: 1px solid var(--audit-border);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.audit-panel__title {
    font-size: 15px;
    font-weight: 600;
    color: var(--audit-text-primary);
    display: flex;
    align-items: center;
    gap: 10px;
}

.audit-panel__title svg {
    width: 20px;
    height: 20px;
    color: var(--audit-primary);
}

.audit-panel__badge {
    font-size: 12px;
    font-weight: 600;
    padding: 6px 14px;
    border-radius: var(--audit-radius-full);
    background: var(--audit-bg-slate);
    color: var(--audit-text-secondary);
}

.audit-panel__body {
    padding: 0;
}

/* Issue List */
.audit-issues {
    list-style: none;
    padding: 0;
    margin: 0;
}

.audit-issue {
    display: flex;
    gap: 16px;
    padding: 20px 24px;
    border-bottom: 1px solid var(--audit-border-light);
    transition: var(--audit-transition);
}

.audit-issue:last-child {
    border-bottom: none;
}

.audit-issue:hover {
    background: var(--audit-bg-slate);
}

.audit-issue__indicator {
    width: 4px;
    border-radius: var(--audit-radius-full);
    flex-shrink: 0;
}

.audit-issue--critical .audit-issue__indicator {
    background: var(--audit-error);
}

.audit-issue--warning .audit-issue__indicator {
    background: var(--audit-warning);
}

.audit-issue--notice .audit-issue__indicator {
    background: var(--audit-secondary);
}

.audit-issue__content {
    flex: 1;
    min-width: 0;
}

.audit-issue__header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 6px;
}

.audit-issue__category {
    font-size: 11px;
    font-weight: 600;
    color: var(--audit-text-tertiary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.audit-issue__severity {
    font-size: 10px;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: var(--audit-radius-sm);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.audit-issue--critical .audit-issue__severity {
    background: var(--audit-error-bg);
    color: var(--audit-error);
}

.audit-issue--warning .audit-issue__severity {
    background: var(--audit-warning-bg);
    color: var(--audit-warning);
}

.audit-issue__title {
    font-size: 15px;
    font-weight: 600;
    color: var(--audit-text-primary);
    margin-bottom: 4px;
}

.audit-issue__message {
    font-size: 14px;
    color: var(--audit-text-secondary);
    line-height: 1.6;
}

/* Hidden Issues Teaser */
.audit-hidden-teaser {
    position: relative;
    padding: 28px 24px;
    text-align: center;
    background: linear-gradient(180deg, transparent 0%, var(--audit-cream-light) 100%);
}

.audit-hidden-teaser__text {
    font-size: 15px;
    font-weight: 600;
    color: var(--audit-navy);
    margin-bottom: 4px;
}

.audit-hidden-teaser__subtext {
    font-size: 13px;
    color: var(--audit-gold-primary);
    font-weight: 500;
}

/* Category Score Bars */
.audit-categories {
    padding: 24px;
}

.audit-category {
    margin-bottom: 20px;
}

.audit-category:last-child {
    margin-bottom: 0;
}

.audit-category__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.audit-category__name {
    font-size: 14px;
    font-weight: 500;
    color: var(--audit-text-medium);
}

.audit-category__score {
    font-size: 14px;
    font-weight: 700;
    color: var(--audit-navy);
}

.audit-category__bar {
    height: 10px;
    background: var(--audit-cream-dark);
    border-radius: var(--audit-radius-full);
    overflow: hidden;
}

.audit-category__fill {
    height: 100%;
    border-radius: var(--audit-radius-full);
    transition: width 1s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Passed Items */
.audit-passed {
    padding: 0;
}

.audit-passed-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 18px 24px;
    border-bottom: 1px solid var(--audit-border-light);
}

.audit-passed-item:last-child {
    border-bottom: none;
}

.audit-passed-item__icon {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--audit-success-light);
    color: var(--audit-success);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.audit-passed-item__icon svg {
    width: 16px;
    height: 16px;
}

.audit-passed-item__text {
    flex: 1;
    font-size: 14px;
    color: var(--audit-text-medium);
}

.audit-passed-item__score {
    font-size: 14px;
    font-weight: 700;
    color: var(--audit-success);
}

/* Recommendations */
.audit-recommendations {
    padding: 0;
}

.audit-recommendation {
    display: flex;
    gap: 20px;
    padding: 20px 24px;
    border-bottom: 1px solid var(--audit-border-light);
    transition: var(--audit-transition);
}

.audit-recommendation:last-child {
    border-bottom: none;
}

.audit-recommendation:hover {
    background: var(--audit-cream-light);
}

.audit-recommendation__icon {
    width: 52px;
    height: 52px;
    border-radius: var(--audit-radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.audit-recommendation__icon svg {
    width: 24px;
    height: 24px;
}

.audit-recommendation--critical .audit-recommendation__icon {
    background: var(--audit-error-light);
    color: var(--audit-error);
}

.audit-recommendation--warning .audit-recommendation__icon {
    background: var(--audit-warning-light);
    color: var(--audit-warning);
}

.audit-recommendation--positive .audit-recommendation__icon {
    background: var(--audit-success-light);
    color: var(--audit-success);
}

.audit-recommendation--action .audit-recommendation__icon {
    background: linear-gradient(135deg, rgba(176, 141, 87, 0.15) 0%, rgba(203, 153, 126, 0.15) 100%);
    color: var(--audit-gold-primary);
}

.audit-recommendation__content {
    flex: 1;
}

.audit-recommendation__title {
    font-size: 15px;
    font-weight: 600;
    color: var(--audit-navy);
    margin-bottom: 6px;
}

.audit-recommendation__desc {
    font-size: 14px;
    color: var(--audit-text-medium);
    margin-bottom: 6px;
    line-height: 1.6;
}

.audit-recommendation__action {
    font-size: 13px;
    color: var(--audit-gold-primary);
    font-weight: 600;
}

/* ============================================
   SMART APPLY CTA - Professional Conversion
   ============================================ */
.audit-cta {
    background: var(--audit-primary);
    border-radius: var(--audit-radius-lg);
    padding: 40px;
    color: white;
    max-width: 1000px;
    margin: 0 auto 32px;
}

.audit-cta__content {
    max-width: 600px;
}

.audit-cta__urgency {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 700;
    padding: 8px 16px;
    border-radius: var(--audit-radius-md);
    margin-bottom: 20px;
    background: rgba(220, 38, 38, 0.2);
    color: #FCA5A5;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.audit-cta__urgency svg {
    width: 16px;
    height: 16px;
}

.audit-cta__headline {
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 8px;
    line-height: 1.3;
}

.audit-cta__subheadline {
    font-size: 15px;
    opacity: 0.85;
    margin-bottom: 28px;
    line-height: 1.6;
}

.audit-cta__benefits {
    list-style: none;
    padding: 0;
    margin: 0 0 32px 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
}

.audit-cta__benefit {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
}

.audit-cta__benefit svg {
    width: 18px;
    height: 18px;
    color: var(--audit-secondary-light);
    flex-shrink: 0;
}

.audit-cta__actions {
    display: flex;
    gap: 16px;
}

.audit-cta__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 16px 32px;
    border-radius: var(--audit-radius-md);
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: var(--audit-transition);
    border: none;
}

.audit-cta__btn--primary {
    background: var(--audit-bg-white);
    color: var(--audit-primary);
}

.audit-cta__btn--primary:hover {
    background: var(--audit-bg-slate);
}

.audit-cta__btn--secondary {
    background: rgba(255, 255, 255, 0.1);
    color: white;
    border: 1px solid rgba(255, 255, 255, 0.25);
}

.audit-cta__btn--secondary:hover {
    background: rgba(255, 255, 255, 0.15);
    border-color: rgba(255, 255, 255, 0.4);
}

/* ============================================
   TRIGGER BUTTON - Professional Style
   ============================================ */
.sffc-audit-trigger {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 24px;
    border-radius: var(--audit-radius-md);
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: var(--audit-transition);
    border: none;
    font-family: var(--audit-font);
}

.sffc-audit-trigger--primary {
    background: var(--audit-primary);
    color: white;
}

.sffc-audit-trigger--primary:hover {
    background: var(--audit-primary-light);
}

.sffc-audit-trigger--secondary {
    background: var(--audit-bg-white);
    color: var(--audit-primary);
    border: 2px solid var(--audit-primary);
}

.sffc-audit-trigger--secondary:hover {
    background: var(--audit-bg-slate);
}

.sffc-audit-trigger svg {
    width: 18px;
    height: 18px;
}

/* ============================================
   MODAL OVERLAY - Fullscreen Presentation
   ============================================ */
.audit-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(15, 23, 42, 0.9);
    backdrop-filter: blur(4px);
    z-index: 100000;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.audit-modal-overlay--visible {
    opacity: 1;
    visibility: visible;
}

/* Modal is now fullscreen */
.audit-modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--audit-bg-white);
    overflow-y: auto;
    transform: translateY(20px);
    opacity: 0;
    transition: all 0.3s ease;
}

.audit-modal-overlay--visible .audit-modal {
    transform: translateY(0);
    opacity: 1;
}

.audit-modal__close {
    position: fixed;
    top: 20px;
    right: 20px;
    width: 48px;
    height: 48px;
    border-radius: var(--audit-radius-md);
    background: var(--audit-bg-white);
    border: 1px solid var(--audit-border);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: var(--audit-transition);
    z-index: 101;
    box-shadow: var(--audit-shadow-md);
}

.audit-modal__close:hover {
    background: var(--audit-bg-slate);
    border-color: var(--audit-border-dark);
}

.audit-modal__close svg {
    width: 24px;
    height: 24px;
    color: var(--audit-text-secondary);
}

/* ============================================
   RESPONSIVE DESIGN
   ============================================ */
@media (max-width: 768px) {
    .sffc-audit-wrapper {
        border-radius: var(--audit-radius-lg);
    }

    .audit-welcome {
        padding: 48px 24px;
    }

    .audit-welcome__title {
        font-size: 26px;
    }

    .audit-welcome__features {
        flex-direction: column;
        gap: 16px;
    }

    .audit-sequence__header {
        padding: 20px 24px;
    }

    .audit-sequence__content {
        padding: 36px 24px;
    }

    .audit-sequence__nav {
        padding: 20px 24px;
        flex-direction: column;
        gap: 16px;
    }

    .audit-sequence__nav-hint {
        order: 2;
    }

    .audit-question__text {
        font-size: 22px;
    }

    .audit-option {
        padding: 16px 20px;
    }

    .audit-report__header {
        padding: 28px 24px;
    }

    .audit-report__header-inner {
        flex-direction: column;
        text-align: center;
        gap: 24px;
    }

    .audit-score-circle {
        width: 140px;
        height: 140px;
    }

    .audit-score-circle__value {
        font-size: 40px;
    }

    .audit-report__job {
        text-align: center;
    }

    .audit-counts {
        flex-direction: column;
        padding: 20px 24px;
        gap: 12px;
    }

    .audit-report__body {
        padding: 20px 24px;
    }

    .audit-cta {
        margin: 0 24px 24px;
        padding: 28px;
    }

    .audit-cta__benefits {
        grid-template-columns: 1fr;
    }

    .audit-cta__actions {
        flex-direction: column;
    }

    .audit-cta__btn {
        width: 100%;
    }

    .audit-cta__headline {
        font-size: 24px;
    }

    .audit-panel__header {
        padding: 16px 20px;
    }

    .audit-issue {
        padding: 16px 20px;
    }

    .audit-recommendation {
        padding: 16px 20px;
    }
}

@media (max-width: 480px) {
    .audit-welcome__title {
        font-size: 22px;
    }

    .audit-welcome__subtitle {
        font-size: 14px;
    }

    .audit-question__text {
        font-size: 20px;
    }

    .audit-option__key {
        display: none;
    }

    .audit-sequence__nav-hint {
        display: none;
    }
}

/* ============================================
   ANIMATIONS
   ============================================ */
@keyframes auditFadeIn {
    from {
        opacity: 0;
        transform: translateY(12px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes auditSlideIn {
    from {
        opacity: 0;
        transform: translateX(-12px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes auditPulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.02);
    }
}

.audit-fade-in {
    animation: auditFadeIn 0.5s ease forwards;
}

/* Staggered animations */
.audit-issue:nth-child(1) { animation-delay: 0.1s; }
.audit-issue:nth-child(2) { animation-delay: 0.15s; }
.audit-issue:nth-child(3) { animation-delay: 0.2s; }
.audit-issue:nth-child(4) { animation-delay: 0.25s; }
.audit-issue:nth-child(5) { animation-delay: 0.3s; }

.audit-category:nth-child(1) .audit-category__fill { transition-delay: 0.15s; }
.audit-category:nth-child(2) .audit-category__fill { transition-delay: 0.25s; }
.audit-category:nth-child(3) .audit-category__fill { transition-delay: 0.35s; }
.audit-category:nth-child(4) .audit-category__fill { transition-delay: 0.45s; }

/* Premium hover effects */
.audit-option:hover {
    animation: auditPulse 0.3s ease;
}

/* Gold text utility */
.audit-gold-text {
    background: var(--audit-gold-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Score color utilities */
.audit-score--excellent { color: var(--audit-success); }
.audit-score--good { color: var(--audit-forest-light); }
.audit-score--fair { color: var(--audit-warning); }
.audit-score--poor { color: var(--audit-error); }

.audit-fill--excellent { background: linear-gradient(90deg, var(--audit-success) 0%, var(--audit-forest-light) 100%); }
.audit-fill--good { background: linear-gradient(90deg, var(--audit-forest-light) 0%, var(--audit-gold-primary) 100%); }
.audit-fill--fair { background: linear-gradient(90deg, var(--audit-warning) 0%, #F59E0B 100%); }
.audit-fill--poor { background: linear-gradient(90deg, var(--audit-error) 0%, #EF4444 100%); }

/* ============================================
   REPORT - JS Structure (Analyst-Crafted Design)
   ============================================ */
.audit-report__hero {
    background: var(--audit-bg-white);
    padding: 56px 40px;
    color: var(--audit-text-primary);
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid var(--audit-border);
}

.audit-report__hero::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 40%;
    height: 100%;
    background: radial-gradient(ellipse at 100% 50%, rgba(61, 122, 140, 0.04) 0%, transparent 70%);
    pointer-events: none;
}

.audit-report__hero-content {
    display: flex;
    align-items: center;
    gap: 40px;
    position: relative;
    z-index: 1;
}

.audit-report__score-section {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

.audit-report__score-circle {
    position: relative;
    width: 140px;
    height: 140px;
}

.audit-report__score-ring {
    width: 100%;
    height: 100%;
    transform: rotate(-90deg);
}

.audit-report__score-bg {
    fill: none;
    stroke: var(--audit-border);
    stroke-width: 10;
}

.audit-report__score-progress {
    fill: none;
    stroke-width: 10;
    stroke-linecap: round;
    transition: stroke-dashoffset 1.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.audit-report__score-inner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
}

.audit-report__score-value {
    font-family: var(--audit-font-display);
    font-size: 48px;
    font-weight: 400;
    line-height: 1;
    color: var(--audit-navy);
}

.audit-report__score-label {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--audit-text-tertiary);
    margin-top: 8px;
    font-weight: 600;
}

.audit-report__grade-badge {
    padding: 8px 16px;
    border-radius: var(--audit-radius-full);
    font-size: 18px;
    font-weight: 700;
}

.audit-report__grade-label {
    font-size: 14px;
    font-weight: 600;
}

.audit-report__summary {
    flex: 1;
}

.audit-report__title {
    font-family: var(--audit-font-display);
    font-size: 24px;
    font-weight: 600;
    margin: 0 0 6px 0;
}

.audit-report__company {
    font-size: 14px;
    opacity: 0.7;
    margin: 0 0 16px 0;
}

.audit-report__message {
    font-size: 16px;
    margin: 0;
    opacity: 0.9;
    line-height: 1.5;
}

/* Stats Bar */
.audit-report__stats {
    display: flex;
    background: var(--audit-bg-white);
    border-bottom: 1px solid var(--audit-border);
}

.audit-report__stat {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20px;
    border-right: 1px solid var(--audit-border);
}

.audit-report__stat:last-child {
    border-right: none;
}

.audit-report__stat-value {
    font-family: var(--audit-font-display);
    font-size: 28px;
    font-weight: 700;
    line-height: 1;
}

.audit-report__stat-label {
    font-size: 12px;
    color: var(--audit-text-light);
    margin-top: 4px;
}

.audit-report__stat--critical .audit-report__stat-value {
    color: var(--audit-error);
}

.audit-report__stat--warning .audit-report__stat-value {
    color: var(--audit-warning);
}

.audit-report__stat--passed .audit-report__stat-value {
    color: var(--audit-success);
}

/* Cards */
.audit-card {
    background: var(--audit-bg-white);
    border-radius: var(--audit-radius-lg);
    border: 1px solid var(--audit-border);
    overflow: hidden;
    margin-bottom: 20px;
}

.audit-card__header {
    padding: 20px 24px;
    border-bottom: 1px solid var(--audit-border);
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: var(--audit-cream-light);
}

.audit-card__title {
    font-size: 15px;
    font-weight: 600;
    color: var(--audit-navy);
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
}

.audit-card__title svg {
    width: 20px;
    height: 20px;
    color: var(--audit-gold-primary);
}

.audit-card__badge {
    font-size: 12px;
    font-weight: 600;
    padding: 6px 14px;
    border-radius: var(--audit-radius-full);
    background: var(--audit-cream);
    color: var(--audit-text-medium);
}

.audit-card__body {
    padding: 20px 24px;
}

.audit-card__body--list {
    padding: 0;
}

.audit-card__body--strengths {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

/* Bars */
.audit-bar {
    margin-bottom: 20px;
}

.audit-bar:last-child {
    margin-bottom: 0;
}

.audit-bar__header {
    display: flex;
    justify-content: space-between;
    margin-bottom: 8px;
}

.audit-bar__name {
    font-size: 14px;
    color: var(--audit-text-medium);
}

.audit-bar__value {
    font-size: 14px;
    font-weight: 700;
    color: var(--audit-navy);
}

.audit-bar__track {
    height: 8px;
    background: var(--audit-cream-dark);
    border-radius: var(--audit-radius-full);
    overflow: hidden;
}

.audit-bar__fill {
    height: 100%;
    border-radius: var(--audit-radius-full);
    transition: width 1s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Issue - JS Structure */
.audit-issue__name {
    font-size: 14px;
    font-weight: 600;
    color: var(--audit-navy);
}

/* Strengths */
.audit-strength {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: var(--audit-success-light);
    border-radius: var(--audit-radius-full);
}

.audit-strength__icon {
    color: var(--audit-success);
}

.audit-strength__icon svg {
    width: 16px;
    height: 16px;
}

.audit-strength__text {
    font-size: 13px;
    color: var(--audit-success);
    font-weight: 500;
}

/* CTA - JS Structure */
.audit-report__cta {
    padding: 24px;
}

.audit-cta__alert {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: rgba(211, 47, 47, 0.15);
    color: #FFCDD2;
    border-radius: var(--audit-radius-full);
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 16px;
}

.audit-cta__alert svg {
    width: 16px;
    height: 16px;
}

.audit-cta__title {
    font-family: var(--audit-font-display);
    font-size: 26px;
    font-weight: 700;
    margin: 0 0 8px 0;
}

.audit-cta__subtitle {
    font-size: 15px;
    opacity: 0.85;
    margin: 0 0 24px 0;
}

.audit-btn--cta {
    background: var(--audit-gold-gradient);
    color: white;
    padding: 16px 32px;
    border-radius: var(--audit-radius-full);
    font-size: 16px;
    font-weight: 600;
    border: none;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    transition: var(--audit-transition);
    box-shadow: var(--audit-shadow-gold);
}

.audit-btn--cta:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 24px rgba(176, 141, 87, 0.35);
}

.audit-btn--cta svg {
    width: 18px;
    height: 18px;
}

/* Modal - JS Structure */
.audit-modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 100000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    opacity: 0;
    visibility: hidden;
    transition: all 0.35s ease;
}

.audit-modal--visible {
    opacity: 1;
    visibility: visible;
}

.audit-modal__backdrop {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(19, 45, 81, 0.8);
    backdrop-filter: blur(8px);
}

.audit-modal__container {
    position: relative;
    max-width: 920px;
    width: 100%;
    max-height: 90vh;
    overflow-y: auto;
    border-radius: var(--audit-radius-xl);
    box-shadow: var(--audit-shadow-xl);
    transform: translateY(24px) scale(0.97);
    transition: transform 0.35s ease;
}

.audit-modal--visible .audit-modal__container {
    transform: translateY(0) scale(1);
}

.audit-modal__close {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--audit-bg-white);
    border: 1px solid var(--audit-border);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: var(--audit-transition);
    z-index: 10;
}

.audit-modal__close:hover {
    background: var(--audit-cream-light);
    border-color: var(--audit-gold-primary);
}

.audit-modal__close svg {
    width: 22px;
    height: 22px;
    color: var(--audit-text-medium);
}

/* ============================================
   COMPREHENSIVE MCKINSEY REPORT STYLES
   ============================================ */

/* Navy Hero Header */
.audit-report__hero--navy {
    background: linear-gradient(135deg, #1e3a5f 0%, #2d4a6f 100%);
    padding: 48px 40px;
    color: white;
    position: relative;
}

.audit-report__hero--navy::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
    background: radial-gradient(ellipse at 100% 50%, rgba(61, 122, 140, 0.15) 0%, transparent 70%);
    pointer-events: none;
}

.audit-report__hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: var(--audit-radius-full);
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 24px;
    color: rgba(255, 255, 255, 0.9);
}

.audit-report__hero-badge svg {
    width: 14px;
    height: 14px;
    opacity: 0.8;
}

.audit-report__hero--navy .audit-report__hero-content {
    position: relative;
    z-index: 1;
}

.audit-report__hero--navy .audit-report__score-bg {
    stroke: rgba(255, 255, 255, 0.15);
}

.audit-report__hero--navy .audit-report__score-value {
    color: white;
}

.audit-report__hero--navy .audit-report__score-label {
    color: rgba(255, 255, 255, 0.7);
}

.audit-report__hero--navy .audit-report__title {
    font-family: var(--audit-font-display);
    font-size: 28px;
    font-weight: 400;
    margin: 0 0 8px 0;
    color: white;
}

.audit-report__hero--navy .audit-report__company {
    color: rgba(255, 255, 255, 0.7);
    font-size: 15px;
    margin: 0 0 16px 0;
}

.audit-report__hero--navy .audit-report__message {
    color: rgba(255, 255, 255, 0.85);
    font-size: 15px;
    line-height: 1.6;
    margin: 0;
}

.audit-report__grade-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    margin-top: 16px;
}

.audit-report__hero--navy .audit-report__grade-label {
    color: rgba(255, 255, 255, 0.9);
    font-size: 14px;
    font-weight: 600;
}

/* Two Column Layout */
.audit-report--comprehensive .audit-report__body {
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 24px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 32px;
}

.audit-report__main {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.audit-report__sidebar {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* Sidebar Cards */
.audit-sidebar-card {
    background: var(--audit-bg-white);
    border-radius: var(--audit-radius-lg);
    border: 1px solid var(--audit-border);
    overflow: hidden;
}

.audit-sidebar-card__header {
    padding: 16px 20px;
    border-bottom: 1px solid var(--audit-border);
    background: var(--audit-bg-subtle);
}

.audit-sidebar-card__title {
    font-size: 14px;
    font-weight: 600;
    color: var(--audit-navy);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.audit-sidebar-card__title svg {
    width: 18px;
    height: 18px;
    color: var(--audit-accent);
}

.audit-sidebar-card__body {
    padding: 16px 20px;
}

.audit-sidebar-card__insight {
    font-size: 13px;
    color: var(--audit-text-secondary);
    margin: 12px 0 0 0;
    padding-top: 12px;
    border-top: 1px solid var(--audit-border-light);
    line-height: 1.5;
}

.audit-sidebar-card__link {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 600;
    color: var(--audit-accent);
    text-decoration: none;
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid var(--audit-border-light);
}

.audit-sidebar-card__link:hover {
    color: var(--audit-accent-light);
}

.audit-sidebar-card__link svg {
    width: 14px;
    height: 14px;
}

/* Timing Section */
.audit-timing__urgency {
    text-align: center;
    padding: 16px;
    background: var(--audit-bg-subtle);
    border-radius: var(--audit-radius-md);
    margin-bottom: 12px;
}

.audit-timing__urgency--high {
    background: var(--audit-error-light);
}

.audit-timing__urgency--moderate {
    background: var(--audit-warning-light);
}

.audit-timing__urgency--low {
    background: var(--audit-bg-subtle);
}

.audit-timing__days {
    font-family: var(--audit-font-display);
    font-size: 36px;
    font-weight: 400;
    color: var(--audit-navy);
    display: block;
}

.audit-timing__urgency--high .audit-timing__days {
    color: var(--audit-error);
}

.audit-timing__label {
    font-size: 12px;
    color: var(--audit-text-tertiary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.audit-timing__message {
    font-size: 13px;
    color: var(--audit-text-secondary);
    margin: 0 0 16px 0;
    line-height: 1.5;
}

.audit-timing__best h5 {
    font-size: 12px;
    font-weight: 600;
    color: var(--audit-text-tertiary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 0 0 8px 0;
}

.audit-timing__slot {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 0;
    border-bottom: 1px solid var(--audit-border-light);
    font-size: 13px;
}

.audit-timing__slot:last-child {
    border-bottom: none;
}

.audit-timing__effectiveness {
    font-weight: 700;
    color: var(--audit-success);
}

.audit-timing__season {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--audit-border);
}

.audit-timing__season-label {
    font-size: 12px;
    color: var(--audit-text-tertiary);
}

.audit-timing__season-value {
    display: inline-block;
    padding: 4px 10px;
    border-radius: var(--audit-radius-sm);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    margin-left: 8px;
}

.audit-timing__season-value--high {
    background: var(--audit-success-bg);
    color: var(--audit-success);
}

.audit-timing__season-value--moderate {
    background: var(--audit-warning-bg);
    color: var(--audit-warning);
}

.audit-timing__season-value--low {
    background: var(--audit-bg-subtle);
    color: var(--audit-text-tertiary);
}

.audit-timing__season-note {
    font-size: 12px;
    color: var(--audit-text-secondary);
    margin: 8px 0 0 0;
}

/* Location Section */
.audit-locations {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.audit-location {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    background: var(--audit-bg-subtle);
    border-radius: var(--audit-radius-md);
    transition: var(--audit-transition);
}

.audit-location--current {
    background: var(--audit-accent);
    color: white;
}

.audit-location--current .audit-location__meta,
.audit-location--current .audit-location__city {
    color: white;
}

.audit-location__rank {
    width: 24px;
    height: 24px;
    background: var(--audit-navy);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 700;
    flex-shrink: 0;
}

.audit-location--current .audit-location__rank {
    background: white;
    color: var(--audit-accent);
}

.audit-location__info {
    flex: 1;
    min-width: 0;
}

.audit-location__city {
    font-size: 14px;
    font-weight: 600;
    color: var(--audit-navy);
    display: block;
}

.audit-location__meta {
    font-size: 11px;
    color: var(--audit-text-tertiary);
}

.audit-location__score {
    width: 40px;
    height: 4px;
    background: var(--audit-border);
    border-radius: var(--audit-radius-full);
    overflow: hidden;
}

.audit-location--current .audit-location__score {
    background: rgba(255, 255, 255, 0.3);
}

.audit-location__bar {
    height: 100%;
    background: var(--audit-success);
    border-radius: var(--audit-radius-full);
}

.audit-location--current .audit-location__bar {
    background: white;
}

/* Networking Section */
.audit-contacts {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 16px;
}

.audit-contact {
    padding: 12px;
    background: var(--audit-bg-subtle);
    border-radius: var(--audit-radius-md);
}

.audit-contact__role {
    font-size: 14px;
    font-weight: 600;
    color: var(--audit-navy);
    display: block;
    margin-bottom: 4px;
}

.audit-contact__why {
    font-size: 12px;
    color: var(--audit-text-secondary);
}

.audit-templates {
    display: flex;
    gap: 8px;
}

.audit-template-btn {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 10px 12px;
    background: var(--audit-bg-white);
    border: 1px solid var(--audit-border);
    border-radius: var(--audit-radius-md);
    font-size: 12px;
    font-weight: 600;
    color: var(--audit-navy);
    cursor: pointer;
    transition: var(--audit-transition);
}

.audit-template-btn:hover {
    border-color: var(--audit-accent);
    color: var(--audit-accent);
}

.audit-template-btn svg {
    width: 16px;
    height: 16px;
}

/* Companies Section */
.audit-companies {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.audit-company {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid var(--audit-border-light);
}

.audit-company:last-child {
    border-bottom: none;
}

.audit-company__info {
    flex: 1;
}

.audit-company__name {
    font-size: 14px;
    font-weight: 600;
    color: var(--audit-navy);
    display: block;
}

.audit-company__type {
    font-size: 11px;
    color: var(--audit-text-tertiary);
}

.audit-company__score {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 700;
    color: var(--audit-text-secondary);
}

.audit-company__bar {
    width: 40px;
    height: 4px;
    background: var(--audit-success);
    border-radius: var(--audit-radius-full);
}

/* Similar Roles Section */
.audit-roles {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.audit-role {
    display: block;
    padding: 12px;
    background: var(--audit-bg-subtle);
    border-radius: var(--audit-radius-md);
    text-decoration: none;
    transition: var(--audit-transition);
}

.audit-role:hover {
    background: var(--audit-border-light);
}

.audit-role__title {
    font-size: 14px;
    font-weight: 600;
    color: var(--audit-navy);
    display: block;
    margin-bottom: 4px;
}

.audit-role__company {
    font-size: 12px;
    color: var(--audit-text-secondary);
}

/* Keywords Section */
.audit-keywords__group {
    margin-bottom: 16px;
}

.audit-keywords__group:last-child {
    margin-bottom: 0;
}

.audit-keywords__label {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--audit-text-tertiary);
    margin: 0 0 10px 0;
}

.audit-keywords__label--critical {
    color: var(--audit-error);
}

.audit-keywords__list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.audit-keyword {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    background: var(--audit-bg-subtle);
    border: 1px solid var(--audit-border);
    border-radius: var(--audit-radius-full);
    font-size: 13px;
    color: var(--audit-text-primary);
}

.audit-keyword--critical {
    background: var(--audit-error-light);
    border-color: var(--audit-error);
    color: var(--audit-error);
}

.audit-keyword__flag {
    font-size: 9px;
    font-weight: 700;
    padding: 2px 4px;
    background: var(--audit-error);
    color: white;
    border-radius: 3px;
}

.audit-tip {
    padding: 12px 16px;
    background: var(--audit-bg-subtle);
    border-radius: var(--audit-radius-md);
    border-left: 3px solid var(--audit-accent);
    font-size: 13px;
    color: var(--audit-text-secondary);
    margin-top: 16px;
}

.audit-tip strong {
    color: var(--audit-navy);
}

.audit-tip--small {
    font-size: 12px;
    padding: 10px 12px;
}

/* Cover Letter Preview */
.audit-preview {
    position: relative;
    background: var(--audit-bg-subtle);
    border-radius: var(--audit-radius-md);
    padding: 20px;
    margin-bottom: 16px;
    max-height: 200px;
    overflow: hidden;
}

.audit-preview__text {
    font-family: var(--audit-font);
    font-size: 13px;
    line-height: 1.7;
    color: var(--audit-text-secondary);
    white-space: pre-wrap;
    margin: 0;
}

.audit-preview__fade {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 60px;
    background: linear-gradient(transparent, var(--audit-bg-subtle));
}

.audit-preview__sections {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}

.audit-preview__section {
    font-size: 11px;
    font-weight: 600;
    padding: 4px 10px;
    background: var(--audit-navy);
    color: white;
    border-radius: var(--audit-radius-sm);
}

/* CV Template Section */
.audit-cv-sections {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 16px;
}

.audit-cv-section {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 14px;
    background: var(--audit-bg-subtle);
    border-radius: var(--audit-radius-md);
}

.audit-cv-section--priority {
    background: var(--audit-accent);
    color: white;
}

.audit-cv-section__name {
    font-size: 13px;
    font-weight: 600;
}

.audit-cv-section__lines {
    font-size: 12px;
    opacity: 0.7;
}

.audit-cv-actions {
    display: flex;
    align-items: center;
    gap: 16px;
}

.audit-cv-formats {
    display: flex;
    gap: 6px;
}

.audit-cv-format {
    font-size: 10px;
    font-weight: 700;
    padding: 4px 8px;
    background: var(--audit-bg-subtle);
    border-radius: var(--audit-radius-sm);
    color: var(--audit-text-tertiary);
}

/* Generate Button */
.audit-btn--generate {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px;
    background: var(--audit-navy);
    color: white;
    border: none;
    border-radius: var(--audit-radius-md);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: var(--audit-transition);
}

.audit-btn--generate:hover {
    background: var(--audit-navy-light);
}

.audit-btn--generate:disabled {
    background: var(--audit-border);
    cursor: not-allowed;
}

.audit-btn__spinner {
    width: 16px;
    height: 16px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: audit-spin 0.8s linear infinite;
}

/* Outline Button */
.audit-btn--outline {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 14px 24px;
    background: transparent;
    color: var(--audit-navy);
    border: 2px solid var(--audit-border);
    border-radius: var(--audit-radius-md);
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: var(--audit-transition);
}

.audit-btn--outline:hover {
    border-color: var(--audit-navy);
    background: var(--audit-bg-subtle);
}

/* Final CTA */
.audit-report__footer {
    padding: 0 32px 32px;
    max-width: 1200px;
    margin: 0 auto;
}

.audit-cta--final {
    background: linear-gradient(135deg, #1e3a5f 0%, #2d4a6f 100%);
    border-radius: var(--audit-radius-lg);
    padding: 40px;
    text-align: center;
    color: white;
}

.audit-cta--final .audit-cta__title {
    font-family: var(--audit-font-display);
    font-size: 28px;
    font-weight: 400;
    margin: 0 0 12px 0;
}

.audit-cta--final .audit-cta__subtitle {
    font-size: 16px;
    opacity: 0.85;
    margin: 0 0 24px 0;
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
}

.audit-cta--final .audit-cta__actions {
    display: flex;
    justify-content: center;
    gap: 16px;
}

.audit-cta--final .audit-btn--cta {
    background: white;
    color: var(--audit-navy);
}

.audit-cta--final .audit-btn--outline {
    background: transparent;
    color: white;
    border-color: rgba(255, 255, 255, 0.3);
}

.audit-cta--final .audit-btn--outline:hover {
    border-color: white;
    background: rgba(255, 255, 255, 0.1);
}

/* Content Modal */
.audit-content-modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 100001;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.audit-content-modal--visible {
    opacity: 1;
    visibility: visible;
}

.audit-content-modal__backdrop {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(30, 58, 95, 0.8);
    backdrop-filter: blur(8px);
}

.audit-content-modal__container {
    position: relative;
    width: 100%;
    max-width: 700px;
    max-height: 80vh;
    background: var(--audit-bg-white);
    border-radius: var(--audit-radius-lg);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transform: translateY(20px);
    transition: transform 0.3s ease;
}

.audit-content-modal--visible .audit-content-modal__container {
    transform: translateY(0);
}

.audit-content-modal__header {
    padding: 20px 24px;
    border-bottom: 1px solid var(--audit-border);
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: var(--audit-bg-subtle);
}

.audit-content-modal__header h3 {
    font-family: var(--audit-font-display);
    font-size: 20px;
    font-weight: 400;
    color: var(--audit-navy);
    margin: 0;
}

.audit-content-modal__close {
    width: 36px;
    height: 36px;
    border-radius: var(--audit-radius-md);
    background: var(--audit-bg-white);
    border: 1px solid var(--audit-border);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: var(--audit-transition);
}

.audit-content-modal__close:hover {
    background: var(--audit-border-light);
}

.audit-content-modal__close svg {
    width: 20px;
    height: 20px;
    color: var(--audit-text-secondary);
}

.audit-content-modal__body {
    flex: 1;
    overflow-y: auto;
    padding: 24px;
}

.audit-content-modal__text {
    font-family: var(--audit-font);
    font-size: 14px;
    line-height: 1.8;
    color: var(--audit-text-primary);
    white-space: pre-wrap;
    margin: 0;
    background: var(--audit-bg-subtle);
    padding: 20px;
    border-radius: var(--audit-radius-md);
}

.audit-content-modal__note {
    font-size: 13px;
    color: var(--audit-text-secondary);
    background: var(--audit-warning-light);
    padding: 12px 16px;
    border-radius: var(--audit-radius-md);
    margin-top: 16px;
}

.audit-content-modal__tips {
    margin-top: 20px;
}

.audit-content-modal__tips h4 {
    font-size: 14px;
    font-weight: 600;
    color: var(--audit-navy);
    margin: 0 0 8px 0;
}

.audit-content-modal__tips ul {
    margin: 0;
    padding-left: 20px;
}

.audit-content-modal__tips li {
    font-size: 13px;
    color: var(--audit-text-secondary);
    margin-bottom: 6px;
}

.audit-content-modal__footer {
    padding: 16px 24px;
    border-top: 1px solid var(--audit-border);
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    background: var(--audit-bg-subtle);
}

/* CV Modal */
.audit-cv-modal {
    display: grid;
    gap: 24px;
}

.audit-cv-modal__preview {
    background: var(--audit-bg-white);
    border: 1px solid var(--audit-border);
    border-radius: var(--audit-radius-md);
    padding: 24px;
}

.audit-cv-modal__section {
    margin-bottom: 20px;
}

.audit-cv-modal__section:last-child {
    margin-bottom: 0;
}

.audit-cv-modal__section h4 {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--audit-navy);
    margin: 0 0 8px 0;
    padding-bottom: 6px;
    border-bottom: 2px solid var(--audit-navy);
}

.audit-cv-modal__section p {
    font-size: 13px;
    color: var(--audit-text-secondary);
    margin: 0;
    line-height: 1.6;
}

.audit-cv-modal__section ul {
    margin: 0;
    padding-left: 16px;
}

.audit-cv-modal__section li {
    font-size: 13px;
    color: var(--audit-text-secondary);
    margin-bottom: 4px;
}

.audit-cv-modal__notes {
    background: var(--audit-bg-subtle);
    border-radius: var(--audit-radius-md);
    padding: 16px;
}

.audit-cv-modal__notes h4 {
    font-size: 13px;
    font-weight: 600;
    color: var(--audit-navy);
    margin: 0 0 8px 0;
}

.audit-cv-modal__notes ul {
    margin: 0;
    padding-left: 16px;
}

.audit-cv-modal__notes li {
    font-size: 12px;
    color: var(--audit-text-secondary);
    margin-bottom: 4px;
}

/* ============================================
   PROFESSIONAL REPORT - Ahrefs/SEO Tool Style
   ============================================ */

/* Professional Report Container */
.audit-report--professional {
    background: var(--audit-bg-cream);
    min-height: 100vh;
}

/* Report Header */
.audit-header {
    background: var(--audit-bg-white);
    padding: 24px 32px 0;
    border-bottom: 1px solid var(--audit-border);
}

.audit-header__top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 20px;
}

.audit-header__title h1 {
    font-family: var(--audit-font-display);
    font-size: 24px;
    font-weight: 500;
    color: var(--audit-navy);
    margin: 0 0 4px 0;
}

.audit-header__title p {
    font-size: 14px;
    color: var(--audit-text-secondary);
    margin: 0;
}

.audit-header__meta {
    text-align: right;
}

.audit-header__date {
    display: block;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--audit-text-muted);
}

.audit-header__time {
    font-size: 13px;
    font-weight: 500;
    color: var(--audit-text-secondary);
}

.audit-header__divider {
    height: 1px;
    background: var(--audit-border);
    margin: 0 -32px;
}

/* Key Metrics Row - 3 Charts */
.audit-metrics {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    background: var(--audit-border);
    border-bottom: 1px solid var(--audit-border);
}

.audit-metric {
    background: var(--audit-bg-white);
    padding: 32px 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.audit-metric__chart {
    margin-bottom: 16px;
    width: 100px;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.audit-metric__value {
    font-family: var(--audit-font-display);
    font-size: 36px;
    font-weight: 500;
    color: var(--audit-navy);
    line-height: 1;
}

.audit-metric__value--danger {
    color: var(--audit-error);
}

.audit-metric__label {
    font-size: 14px;
    font-weight: 600;
    color: var(--audit-text-primary);
    margin-top: 8px;
}

.audit-metric__sublabel {
    font-size: 12px;
    color: var(--audit-text-tertiary);
    margin-top: 4px;
}

/* Gauge Chart */
.audit-gauge {
    width: 100%;
    height: 100%;
}

.audit-gauge__bg {
    fill: none;
    stroke: var(--audit-border);
    stroke-width: 8;
}

.audit-gauge__fill {
    fill: none;
    stroke-width: 8;
    stroke-linecap: round;
    transition: stroke-dashoffset 1.2s ease-out;
}

/* Critical Bars Chart */
.audit-critical-bars {
    display: flex;
    gap: 6px;
    align-items: flex-end;
    height: 60px;
}

.audit-critical-bar {
    width: 16px;
    height: 100%;
    background: var(--audit-border);
    border-radius: 4px;
    transition: background 0.3s ease;
}

.audit-critical-bar--active {
    background: var(--audit-error);
}

/* Mini Bar Chart */
.audit-mini-bars {
    display: flex;
    gap: 8px;
    align-items: flex-end;
    height: 60px;
}

.audit-mini-bar {
    flex: 1;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.audit-mini-bar__fill {
    width: 100%;
    max-width: 20px;
    border-radius: 3px 3px 0 0;
    transition: height 0.8s ease-out;
}

/* Sections */
.audit-section {
    background: var(--audit-bg-white);
    border-radius: var(--audit-radius-lg);
    border: 1px solid var(--audit-border);
    margin: 24px 32px;
    overflow: hidden;
}

.audit-section--critical {
    border-color: var(--audit-error);
    border-width: 2px;
}

.audit-section--success {
    border-color: var(--audit-success);
}

.audit-section--premium {
    position: relative;
}

.audit-section__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 24px;
    border-bottom: 1px solid var(--audit-border);
    background: var(--audit-bg-subtle);
}

.audit-section__title {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-weight: 600;
    color: var(--audit-navy);
    margin: 0;
}

.audit-section__title svg {
    width: 20px;
    height: 20px;
    color: var(--audit-accent);
}

.audit-section--critical .audit-section__title svg {
    color: var(--audit-error);
}

.audit-section__subtitle {
    font-size: 13px;
    color: var(--audit-text-tertiary);
}

.audit-section__badge {
    font-size: 12px;
    font-weight: 600;
    padding: 6px 12px;
    border-radius: var(--audit-radius-full);
    background: var(--audit-bg-subtle);
    color: var(--audit-text-secondary);
}

.audit-section__badge--danger {
    background: var(--audit-error-bg);
    color: var(--audit-error);
}

.audit-section__badge--success {
    background: var(--audit-success-bg);
    color: var(--audit-success);
}

.audit-section__body {
    padding: 24px;
}

.audit-section__cta {
    padding: 20px 24px;
    border-top: 1px solid var(--audit-border-light);
    background: var(--audit-bg-subtle);
    text-align: center;
}

/* Issues Bar Chart */
.audit-issues-chart {
    margin-bottom: 24px;
}

.audit-issues-bars {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.audit-issue-bar {
    display: grid;
    grid-template-columns: 120px 1fr 50px;
    gap: 16px;
    align-items: center;
}

.audit-issue-bar__label {
    font-size: 13px;
    font-weight: 500;
    color: var(--audit-text-secondary);
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

.audit-issue-bar__track {
    height: 12px;
    background: var(--audit-border-light);
    border-radius: var(--audit-radius-full);
    overflow: hidden;
    display: flex;
    position: relative;
}

.audit-issue-bar__fill {
    height: 100%;
    border-radius: var(--audit-radius-full);
    transition: width 0.8s ease-out;
}

.audit-issue-bar__fill--critical {
    background: linear-gradient(90deg, var(--audit-error) 0%, #f87171 100%);
}

.audit-issue-bar__fill--warning {
    background: linear-gradient(90deg, var(--audit-warning) 0%, #fbbf24 100%);
}

.audit-issue-bar__gap {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    background: repeating-linear-gradient(
        90deg,
        var(--audit-error-bg),
        var(--audit-error-bg) 4px,
        transparent 4px,
        transparent 8px
    );
    opacity: 0.6;
}

.audit-issue-bar__value {
    font-size: 13px;
    font-weight: 700;
    color: var(--audit-text-primary);
    text-align: right;
}

/* Issues List */
.audit-issues-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.audit-critical-issue {
    display: flex;
    gap: 16px;
    padding: 16px;
    background: var(--audit-error-light);
    border-radius: var(--audit-radius-md);
    border: 1px solid rgba(185, 28, 28, 0.15);
}

.audit-critical-issue__icon {
    color: var(--audit-error);
    flex-shrink: 0;
}

.audit-critical-issue__content {
    flex: 1;
}

.audit-critical-issue__content strong {
    display: block;
    font-size: 14px;
    color: var(--audit-error);
    margin-bottom: 4px;
}

.audit-critical-issue__content p {
    font-size: 13px;
    color: var(--audit-text-secondary);
    margin: 0;
    line-height: 1.5;
}

.audit-critical-issue__action {
    flex-shrink: 0;
}

/* Horizontal Bar Chart */
.audit-hbar-chart {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.audit-hbar {
    display: grid;
    grid-template-columns: 120px 1fr;
    gap: 16px;
    align-items: center;
}

.audit-hbar__label {
    font-size: 14px;
    font-weight: 500;
    color: var(--audit-text-secondary);
}

.audit-hbar__container {
    display: flex;
    align-items: center;
    gap: 12px;
}

.audit-hbar__track {
    flex: 1;
    height: 20px;
    background: var(--audit-bg-subtle);
    border-radius: var(--audit-radius-md);
    overflow: visible;
    position: relative;
}

.audit-hbar__fill {
    height: 100%;
    border-radius: var(--audit-radius-md);
    transition: width 1s ease-out;
}

.audit-hbar__benchmark {
    position: absolute;
    top: -4px;
    width: 2px;
    height: 28px;
    background: var(--audit-navy);
    border-radius: 1px;
}

.audit-hbar__benchmark::after {
    content: '';
    position: absolute;
    top: -3px;
    left: -3px;
    width: 8px;
    height: 8px;
    background: var(--audit-navy);
    border-radius: 50%;
}

.audit-hbar__value {
    font-size: 14px;
    font-weight: 700;
    color: var(--audit-navy);
    min-width: 40px;
    text-align: right;
}

.audit-hbar-legend {
    margin-top: 8px;
    padding-top: 12px;
    border-top: 1px solid var(--audit-border-light);
}

.audit-hbar-legend__item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    color: var(--audit-text-tertiary);
}

.audit-hbar-legend__line {
    width: 16px;
    height: 2px;
    background: var(--audit-navy);
}

/* Two Column Layout */
.audit-columns {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    padding: 0 32px;
}

.audit-column .audit-section {
    margin: 0;
    height: 100%;
}

/* Warning Issues */
.audit-warning-issue {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 0;
    border-bottom: 1px solid var(--audit-border-light);
}

.audit-warning-issue:last-child {
    border-bottom: none;
}

.audit-warning-issue__indicator {
    width: 4px;
    height: 32px;
    background: var(--audit-warning);
    border-radius: var(--audit-radius-full);
}

.audit-warning-issue__content {
    flex: 1;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.audit-warning-issue__title {
    font-size: 14px;
    font-weight: 500;
    color: var(--audit-text-primary);
}

.audit-warning-issue__score {
    font-size: 13px;
    font-weight: 700;
    color: var(--audit-warning);
}

.audit-more {
    padding: 12px 0;
    text-align: center;
    font-size: 13px;
    color: var(--audit-accent);
    font-weight: 600;
}

/* Strength Items */
.audit-strength-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 0;
    border-bottom: 1px solid var(--audit-border-light);
}

.audit-strength-item:last-child {
    border-bottom: none;
}

.audit-strength-item__icon {
    color: var(--audit-success);
    flex-shrink: 0;
}

.audit-strength-item__text {
    font-size: 14px;
    color: var(--audit-text-primary);
}

/* Premium Section - Blurred */
.audit-section__body--blurred {
    position: relative;
    overflow: hidden;
}

.audit-premium-preview {
    filter: blur(6px);
    opacity: 0.6;
    pointer-events: none;
}

.audit-premium-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(180deg, transparent 0%, rgba(255,255,255,0.95) 40%);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
}

.audit-premium-overlay__content {
    text-align: center;
    max-width: 400px;
}

.audit-premium-overlay__content h3 {
    font-family: var(--audit-font-display);
    font-size: 20px;
    font-weight: 500;
    color: var(--audit-navy);
    margin: 0 0 8px 0;
}

.audit-premium-overlay__content p {
    font-size: 14px;
    color: var(--audit-text-secondary);
    margin: 0 0 20px 0;
}

.audit-premium-badge {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 6px 12px;
    background: linear-gradient(135deg, #b08d57 0%, #d4af37 100%);
    color: white;
    border-radius: var(--audit-radius-full);
}

/* Premium Preview Charts */
.audit-premium-charts {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    padding: 20px;
}

.audit-premium-chart {
    background: var(--audit-bg-subtle);
    border-radius: var(--audit-radius-md);
    padding: 16px;
}

.audit-premium-chart__title {
    font-size: 12px;
    font-weight: 600;
    color: var(--audit-text-secondary);
    margin-bottom: 12px;
}

.audit-line-chart {
    width: 100%;
    height: 60px;
}

.audit-premium-bars-fake {
    display: flex;
    gap: 8px;
    align-items: flex-end;
    height: 60px;
}

.audit-premium-bars-fake > div {
    flex: 1;
    background: var(--audit-border);
    border-radius: 3px 3px 0 0;
}

.audit-premium-time-fake {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 60px;
    font-weight: 600;
    color: var(--audit-text-muted);
}

.audit-premium-time-fake span:first-child {
    font-size: 16px;
}

.audit-premium-time-fake span:last-child {
    font-size: 12px;
}

/* Report Footer */
.audit-footer {
    background: var(--audit-bg-white);
    border-top: 1px solid var(--audit-border);
    padding: 32px;
    margin-top: 24px;
}

.audit-footer__stats {
    display: flex;
    justify-content: center;
    gap: 48px;
    margin-bottom: 32px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--audit-border-light);
}

.audit-footer__stat {
    text-align: center;
}

.audit-footer__stat-value {
    display: block;
    font-family: var(--audit-font-display);
    font-size: 28px;
    font-weight: 500;
    color: var(--audit-navy);
}

.audit-footer__stat-label {
    font-size: 12px;
    color: var(--audit-text-tertiary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.audit-footer__actions {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}

.audit-footer__disclaimer {
    font-size: 12px;
    color: var(--audit-text-muted);
    text-align: center;
    margin: 16px 0 0 0;
}

/* Button Variants */
.audit-btn--fix {
    background: var(--audit-error);
    color: white;
    border: none;
    padding: 14px 28px;
    border-radius: var(--audit-radius-md);
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    transition: var(--audit-transition);
}

.audit-btn--fix:hover {
    background: #a91b1b;
    transform: translateY(-1px);
}

.audit-btn--fix svg {
    width: 18px;
    height: 18px;
}

.audit-btn--small {
    padding: 8px 16px;
    font-size: 12px;
    font-weight: 600;
    background: var(--audit-bg-white);
    border: 1px solid var(--audit-border);
    border-radius: var(--audit-radius-md);
    color: var(--audit-navy);
    cursor: pointer;
    transition: var(--audit-transition);
}

.audit-btn--small:hover {
    border-color: var(--audit-navy);
    background: var(--audit-bg-subtle);
}

.audit-btn--unlock {
    background: linear-gradient(135deg, var(--audit-accent) 0%, #5a9bab 100%);
    color: white;
    border: none;
    padding: 14px 28px;
    border-radius: var(--audit-radius-md);
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    transition: var(--audit-transition);
    box-shadow: var(--audit-shadow-md);
}

.audit-btn--unlock:hover {
    transform: translateY(-2px);
    box-shadow: var(--audit-shadow-lg);
}

.audit-btn--unlock svg {
    width: 18px;
    height: 18px;
}

.audit-btn--large {
    padding: 18px 36px;
    font-size: 16px;
}

.audit-btn--ghost {
    background: transparent;
    color: var(--audit-text-secondary);
    border: none;
    padding: 12px 24px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: var(--audit-transition);
}

.audit-btn--ghost:hover {
    color: var(--audit-navy);
}

/* ============================================
   WARNING MODAL - Apply Without Optimization
   ============================================ */
.audit-warning-modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 100002;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.audit-warning-modal--visible {
    opacity: 1;
    visibility: visible;
}

.audit-warning-modal__backdrop {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(30, 58, 95, 0.85);
    backdrop-filter: blur(8px);
}

.audit-warning-modal__container {
    position: relative;
    width: 100%;
    max-width: 480px;
    background: var(--audit-bg-white);
    border-radius: var(--audit-radius-xl);
    overflow: hidden;
    transform: translateY(20px) scale(0.95);
    transition: transform 0.3s ease;
    box-shadow: var(--audit-shadow-xl);
}

.audit-warning-modal--visible .audit-warning-modal__container {
    transform: translateY(0) scale(1);
}

.audit-warning-modal__header {
    padding: 32px 32px 24px;
    text-align: center;
    background: linear-gradient(180deg, var(--audit-error-light) 0%, var(--audit-bg-white) 100%);
}

.audit-warning-modal__icon {
    width: 64px;
    height: 64px;
    margin: 0 auto 16px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.audit-warning-modal__icon--danger {
    background: var(--audit-error);
    color: white;
}

.audit-warning-modal__icon--danger svg {
    width: 32px;
    height: 32px;
}

.audit-warning-modal__icon--warning {
    background: var(--audit-warning);
    color: white;
}

.audit-warning-modal__icon--warning svg {
    width: 32px;
    height: 32px;
}

.audit-warning-modal__header h3 {
    font-family: var(--audit-font-display);
    font-size: 22px;
    font-weight: 500;
    color: var(--audit-navy);
    margin: 0;
}

.audit-warning-modal__body {
    padding: 0 32px 24px;
}

.audit-warning-modal__stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-bottom: 24px;
    padding: 20px;
    background: var(--audit-bg-subtle);
    border-radius: var(--audit-radius-lg);
}

.audit-warning-modal__stat {
    text-align: center;
}

.audit-warning-modal__stat-value {
    display: block;
    font-family: var(--audit-font-display);
    font-size: 28px;
    font-weight: 500;
    color: var(--audit-navy);
    line-height: 1;
}

.audit-warning-modal__stat-value--danger {
    color: var(--audit-error);
}

.audit-warning-modal__stat-label {
    font-size: 11px;
    color: var(--audit-text-tertiary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: 4px;
}

.audit-warning-modal__issues {
    margin-bottom: 24px;
    padding: 16px;
    background: var(--audit-error-light);
    border-radius: var(--audit-radius-md);
    border-left: 4px solid var(--audit-error);
}

.audit-warning-modal__issues-title {
    font-size: 13px;
    font-weight: 600;
    color: var(--audit-error);
    margin: 0 0 8px 0;
}

.audit-warning-modal__issues ul {
    margin: 0;
    padding-left: 20px;
}

.audit-warning-modal__issues li {
    font-size: 13px;
    color: var(--audit-text-secondary);
    margin-bottom: 4px;
}

.audit-warning-modal__comparison {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.audit-warning-modal__comparison-item {
    padding: 12px 16px;
    background: var(--audit-bg-subtle);
    border-radius: var(--audit-radius-md);
}

.audit-warning-modal__comparison-item--highlight {
    background: var(--audit-success-light);
    border: 1px solid var(--audit-success);
}

.audit-warning-modal__comparison-label {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: var(--audit-text-secondary);
    margin-bottom: 8px;
}

.audit-warning-modal__comparison-item--highlight .audit-warning-modal__comparison-label {
    color: var(--audit-success);
}

.audit-warning-modal__comparison-bar {
    height: 8px;
    background: var(--audit-border);
    border-radius: var(--audit-radius-full);
    overflow: hidden;
    margin-bottom: 6px;
}

.audit-warning-modal__comparison-fill {
    height: 100%;
    border-radius: var(--audit-radius-full);
    transition: width 0.6s ease;
}

.audit-warning-modal__comparison-fill--low {
    background: var(--audit-error);
}

.audit-warning-modal__comparison-fill--high {
    background: var(--audit-success);
}

.audit-warning-modal__comparison-value {
    font-size: 13px;
    font-weight: 600;
    color: var(--audit-text-primary);
}

.audit-warning-modal__footer {
    padding: 24px 32px 32px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    border-top: 1px solid var(--audit-border-light);
}

/* ============================================
   PIE/DONUT CHART
   ============================================ */
.audit-donut {
    display: block;
}

.audit-donut__bg {
    fill: none;
    stroke: var(--audit-border-light);
    stroke-width: 12;
}

.audit-donut__segment {
    fill: none;
    stroke-width: 12;
    transition: stroke-dasharray 0.8s ease;
}

.audit-pie-container {
    display: flex;
    align-items: center;
    gap: 24px;
}

.audit-pie-chart {
    position: relative;
    flex-shrink: 0;
}

.audit-pie-center {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
}

.audit-pie-center__value {
    display: block;
    font-family: var(--audit-font-display);
    font-size: 32px;
    font-weight: 500;
    color: var(--audit-navy);
    line-height: 1;
}

.audit-pie-center__label {
    font-size: 11px;
    color: var(--audit-text-tertiary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.audit-pie-legend {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.audit-pie-legend__item {
    display: flex;
    align-items: center;
    gap: 10px;
}

.audit-pie-legend__color {
    width: 12px;
    height: 12px;
    border-radius: 3px;
    flex-shrink: 0;
}

.audit-pie-legend__label {
    flex: 1;
    font-size: 13px;
    color: var(--audit-text-secondary);
}

.audit-pie-legend__value {
    font-size: 14px;
    font-weight: 700;
    color: var(--audit-navy);
}

.audit-issues-overview {
    display: flex;
    gap: 24px;
    align-items: flex-start;
}

.audit-issues-list-compact {
    flex: 1;
    min-width: 0;
}

/* ============================================
   COMPETITIVE INTELLIGENCE PREVIEW
   ============================================ */
.audit-intel-teaser {
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--audit-border-light);
}

.audit-intel-preview__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.audit-intel-preview__card {
    padding: 16px;
    background: var(--audit-bg-subtle);
    border-radius: var(--audit-radius-md);
    border: 1px solid var(--audit-border-light);
}

.audit-intel-preview__icon {
    color: var(--audit-accent);
    margin-bottom: 12px;
}

.audit-intel-preview__icon svg {
    width: 24px;
    height: 24px;
}

.audit-intel-preview__data {
    margin-bottom: 8px;
}

.audit-intel-preview__value {
    display: block;
    font-family: var(--audit-font-display);
    font-size: 20px;
    font-weight: 500;
    color: var(--audit-navy);
    line-height: 1.2;
}

.audit-intel-preview__label {
    font-size: 11px;
    color: var(--audit-text-tertiary);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.audit-intel-preview__trend {
    font-size: 11px;
    font-weight: 600;
    color: var(--audit-text-muted);
}

.audit-intel-preview__trend--up {
    color: var(--audit-success);
}

.audit-intel-preview__more {
    margin-top: 16px;
    text-align: center;
}

.audit-intel-preview__more p {
    font-size: 13px;
    color: var(--audit-text-tertiary);
    margin: 0;
    font-style: italic;
}

/* Premium Locked Section */
.audit-premium-locked {
    position: relative;
    border-radius: var(--audit-radius-lg);
    overflow: hidden;
}

.audit-premium-locked__preview {
    filter: blur(8px);
    opacity: 0.5;
    pointer-events: none;
    padding: 20px;
}

.audit-premium-locked__overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(180deg, rgba(255,255,255,0.7) 0%, rgba(255,255,255,0.95) 50%);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px;
}

.audit-premium-locked__content {
    text-align: center;
    max-width: 400px;
}

.audit-premium-locked__icon {
    width: 56px;
    height: 56px;
    margin: 0 auto 16px;
    background: linear-gradient(135deg, var(--audit-accent) 0%, #5a9bab 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
}

.audit-premium-locked__icon svg {
    width: 28px;
    height: 28px;
}

.audit-premium-locked__content h3 {
    font-family: var(--audit-font-display);
    font-size: 20px;
    font-weight: 500;
    color: var(--audit-navy);
    margin: 0 0 16px 0;
}

.audit-premium-locked__features {
    list-style: none;
    padding: 0;
    margin: 0 0 24px 0;
    text-align: left;
}

.audit-premium-locked__features li {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 13px;
    color: var(--audit-text-secondary);
    padding: 8px 0;
    border-bottom: 1px solid var(--audit-border-light);
}

.audit-premium-locked__features li:last-child {
    border-bottom: none;
}

.audit-premium-locked__features li svg {
    width: 16px;
    height: 16px;
    color: var(--audit-success);
    flex-shrink: 0;
}

/* ============================================
   LOCKED CARDS (Non-blurred Premium)
   ============================================ */
.audit-section__intro {
    font-size: 14px;
    color: var(--audit-text-secondary);
    margin: 0 0 24px 0;
}

.audit-locked-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-bottom: 24px;
}

.audit-locked-card {
    padding: 20px;
    background: var(--audit-bg-subtle);
    border-radius: var(--audit-radius-lg);
    border: 1px solid var(--audit-border-light);
    transition: var(--audit-transition);
}

.audit-locked-card:hover {
    border-color: var(--audit-accent);
    background: var(--audit-bg-white);
}

.audit-locked-card__icon {
    color: var(--audit-accent);
    margin-bottom: 12px;
}

.audit-locked-card__icon svg {
    width: 24px;
    height: 24px;
}

.audit-locked-card__content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
}

.audit-locked-card__label {
    font-size: 14px;
    font-weight: 600;
    color: var(--audit-navy);
}

.audit-locked-card__value--hidden {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: linear-gradient(135deg, var(--audit-accent) 0%, #5a9bab 100%);
    border-radius: 50%;
    color: white;
}

.audit-locked-card__lock svg {
    width: 14px;
    height: 14px;
}

.audit-locked-card__desc {
    font-size: 12px;
    color: var(--audit-text-tertiary);
    margin: 0;
    line-height: 1.4;
}

/* Section CTA Variants */
.audit-section__cta--subtle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: var(--audit-bg-cream);
}

.audit-section__cta-text {
    font-size: 13px;
    color: var(--audit-text-secondary);
    margin: 0;
}

.audit-section__cta--centered {
    text-align: center;
    background: transparent;
    border-top: none;
    padding-top: 0;
}

/* ============================================
   FOOTER ACTION CARDS (Equal Weight)
   ============================================ */
.audit-footer__summary {
    text-align: center;
    margin-bottom: 24px;
}

.audit-footer__summary-text {
    font-size: 16px;
    color: var(--audit-text-secondary);
    margin: 0;
}

.audit-footer__actions--equal {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    flex-direction: row;
}

.audit-footer__action-card {
    padding: 24px;
    background: var(--audit-bg-subtle);
    border-radius: var(--audit-radius-lg);
    border: 1px solid var(--audit-border);
    text-align: center;
}

.audit-footer__action-card h4 {
    font-family: var(--audit-font-display);
    font-size: 18px;
    font-weight: 500;
    color: var(--audit-navy);
    margin: 0 0 8px 0;
}

.audit-footer__action-card p {
    font-size: 13px;
    color: var(--audit-text-tertiary);
    margin: 0 0 16px 0;
    min-height: 36px;
}

.audit-footer__action-card--featured {
    position: relative;
    background: var(--audit-bg-white);
    border-color: var(--audit-accent);
    border-width: 2px;
    box-shadow: var(--audit-shadow-md);
}

.audit-footer__action-badge {
    position: absolute;
    top: -10px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 4px 12px;
    background: var(--audit-accent);
    color: white;
    border-radius: var(--audit-radius-full);
}

/* Button secondary style */
.audit-btn--secondary {
    background: var(--audit-bg-white);
    color: var(--audit-navy);
    border: 1px solid var(--audit-border);
    padding: 14px 28px;
    border-radius: var(--audit-radius-md);
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    transition: var(--audit-transition);
}

.audit-btn--secondary:hover {
    border-color: var(--audit-navy);
    background: var(--audit-bg-subtle);
}

.audit-btn--secondary svg {
    width: 18px;
    height: 18px;
}

/* ============================================
   APPLICATION TOOLKIT V2 - High Converting
   ============================================ */
.audit-section--toolkit {
    background: var(--audit-bg-white);
    border: 2px solid var(--audit-accent);
    box-shadow: var(--audit-shadow-lg);
}

.audit-toolkit-v2 {
    padding: 0;
}

/* Header */
.audit-toolkit-v2__header {
    text-align: center;
    padding: 32px 32px 24px;
    background: linear-gradient(180deg, #f0fdf4 0%, var(--audit-bg-white) 100%);
    border-bottom: 1px solid var(--audit-border-light);
}

.audit-toolkit-v2__badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: var(--audit-success);
    color: white;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: var(--audit-radius-full);
    margin-bottom: 16px;
}

.audit-toolkit-v2__badge svg {
    width: 16px;
    height: 16px;
}

.audit-toolkit-v2__title {
    font-family: var(--audit-font-display);
    font-size: 28px;
    font-weight: 500;
    color: var(--audit-navy);
    margin: 0 0 8px 0;
}

.audit-toolkit-v2__subtitle {
    font-size: 15px;
    color: var(--audit-text-secondary);
    margin: 0;
}

.audit-toolkit-v2__subtitle strong {
    color: var(--audit-navy);
}

/* Before/After Comparison */
.audit-toolkit-v2__comparison {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 24px;
    padding: 32px;
    background: var(--audit-bg-subtle);
    align-items: center;
}

.audit-toolkit-v2__compare-card {
    padding: 24px;
    border-radius: var(--audit-radius-lg);
    background: var(--audit-bg-white);
}

.audit-toolkit-v2__compare-card--before {
    border: 2px solid var(--audit-border);
}

.audit-toolkit-v2__compare-card--after {
    border: 2px solid var(--audit-success);
    box-shadow: 0 4px 20px rgba(5, 150, 105, 0.15);
}

.audit-toolkit-v2__compare-label {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    font-weight: 600;
    color: var(--audit-text-secondary);
    margin-bottom: 16px;
}

.audit-toolkit-v2__compare-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
}

.audit-toolkit-v2__compare-dot--red {
    background: var(--audit-error);
}

.audit-toolkit-v2__compare-dot--green {
    background: var(--audit-success);
}

.audit-toolkit-v2__compare-score {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--audit-border-light);
}

.audit-toolkit-v2__score-circle {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--audit-font-display);
    font-size: 22px;
    font-weight: 600;
}

.audit-toolkit-v2__score-circle--low {
    background: var(--audit-error-light);
    color: var(--audit-error);
    border: 3px solid var(--audit-error);
}

.audit-toolkit-v2__score-circle--high {
    background: var(--audit-success-light);
    color: var(--audit-success);
    border: 3px solid var(--audit-success);
}

.audit-toolkit-v2__score-label {
    font-size: 14px;
    font-weight: 500;
    color: var(--audit-text-secondary);
}

.audit-toolkit-v2__compare-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.audit-toolkit-v2__compare-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 13px;
}

.audit-toolkit-v2__compare-item svg {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
}

.audit-toolkit-v2__compare-item--negative {
    color: var(--audit-text-tertiary);
}

.audit-toolkit-v2__compare-item--negative svg {
    color: var(--audit-error);
}

.audit-toolkit-v2__compare-item--positive {
    color: var(--audit-text-primary);
}

.audit-toolkit-v2__compare-item--positive svg {
    color: var(--audit-success);
}

.audit-toolkit-v2__compare-arrow {
    width: 48px;
    height: 48px;
    background: var(--audit-accent);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
}

.audit-toolkit-v2__compare-arrow svg {
    width: 24px;
    height: 24px;
}

/* What's Included */
.audit-toolkit-v2__included {
    padding: 32px;
}

.audit-toolkit-v2__section-title {
    font-family: var(--audit-font-display);
    font-size: 18px;
    font-weight: 500;
    color: var(--audit-navy);
    margin: 0 0 24px 0;
    text-align: center;
}

.audit-toolkit-v2__items {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.audit-toolkit-v2__item {
    background: var(--audit-bg-subtle);
    border-radius: var(--audit-radius-lg);
    overflow: hidden;
    border: 1px solid var(--audit-border-light);
    transition: var(--audit-transition);
}

.audit-toolkit-v2__item:hover {
    border-color: var(--audit-accent);
    box-shadow: var(--audit-shadow-md);
}

.audit-toolkit-v2__item-preview {
    padding: 20px;
    background: var(--audit-bg-white);
    min-height: 140px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Document Preview */
.audit-toolkit-v2__doc {
    width: 100%;
    max-width: 160px;
    background: white;
    border: 1px solid var(--audit-border);
    border-radius: var(--audit-radius-sm);
    padding: 12px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}

.audit-toolkit-v2__doc-header {
    height: 6px;
    background: var(--audit-navy);
    border-radius: 2px;
    margin-bottom: 10px;
}

.audit-toolkit-v2__doc-line {
    height: 4px;
    background: var(--audit-border);
    border-radius: 2px;
    margin-bottom: 6px;
}

.audit-toolkit-v2__doc-line--title {
    width: 60%;
    height: 6px;
    background: var(--audit-navy-light);
    margin-bottom: 10px;
}

.audit-toolkit-v2__doc-line--short {
    width: 70%;
}

.audit-toolkit-v2__doc-highlight {
    background: #fef3c7;
    border-left: 3px solid var(--audit-gold-primary);
    padding: 6px 8px;
    margin: 8px 0;
    border-radius: 0 4px 4px 0;
}

.audit-toolkit-v2__doc-highlight span {
    font-size: 8px;
    font-weight: 600;
    color: var(--audit-navy);
}

/* CV Preview */
.audit-toolkit-v2__cv {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.audit-toolkit-v2__cv-section {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.audit-toolkit-v2__cv-label {
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    color: var(--audit-text-tertiary);
}

.audit-toolkit-v2__cv-keywords {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.audit-toolkit-v2__keyword {
    font-size: 10px;
    font-weight: 500;
    padding: 4px 8px;
    border-radius: var(--audit-radius-sm);
}

.audit-toolkit-v2__keyword--add {
    background: #dcfce7;
    color: #166534;
}

.audit-toolkit-v2__keyword--highlight {
    background: #fef3c7;
    color: #92400e;
}

/* Message Preview */
.audit-toolkit-v2__message {
    width: 100%;
    background: white;
    border: 1px solid var(--audit-border);
    border-radius: var(--audit-radius-md);
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}

.audit-toolkit-v2__message-header {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    background: #0077b5;
    color: white;
}

.audit-toolkit-v2__message-avatar {
    width: 24px;
    height: 24px;
    background: rgba(255,255,255,0.2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.audit-toolkit-v2__message-avatar svg {
    width: 16px;
    height: 16px;
}

.audit-toolkit-v2__message-to {
    font-size: 11px;
    font-weight: 500;
}

.audit-toolkit-v2__message-body {
    padding: 12px;
}

.audit-toolkit-v2__message-text {
    font-size: 11px;
    color: var(--audit-text-secondary);
    line-height: 1.4;
}

/* Item Info */
.audit-toolkit-v2__item-info {
    padding: 16px;
}

.audit-toolkit-v2__item-info h4 {
    font-size: 14px;
    font-weight: 600;
    color: var(--audit-navy);
    margin: 0 0 6px 0;
}

.audit-toolkit-v2__item-info p {
    font-size: 12px;
    color: var(--audit-text-tertiary);
    margin: 0 0 12px 0;
    line-height: 1.4;
}

.audit-toolkit-v2__item-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.audit-toolkit-v2__item-tags span {
    font-size: 10px;
    font-weight: 500;
    padding: 4px 8px;
    background: var(--audit-bg-white);
    border: 1px solid var(--audit-border-light);
    border-radius: var(--audit-radius-sm);
    color: var(--audit-text-secondary);
}

/* CTA Section */
.audit-toolkit-v2__cta-section {
    padding: 32px;
    background: linear-gradient(180deg, var(--audit-bg-white) 0%, #f0fdf4 100%);
    border-top: 1px solid var(--audit-border-light);
    text-align: center;
}

.audit-toolkit-v2__social-proof {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 24px;
}

.audit-toolkit-v2__avatars {
    display: flex;
}

.audit-toolkit-v2__avatar {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 600;
    color: white;
    border: 2px solid white;
    margin-left: -8px;
}

.audit-toolkit-v2__avatar:first-child {
    margin-left: 0;
}

.audit-toolkit-v2__avatar--more {
    background: var(--audit-navy);
    font-size: 10px;
}

.audit-toolkit-v2__social-proof p {
    font-size: 14px;
    color: var(--audit-text-secondary);
    margin: 0;
}

.audit-toolkit-v2__cta {
    display: inline-flex;
    align-items: center;
    gap: 16px;
    padding: 20px 40px;
    background: linear-gradient(135deg, var(--audit-success) 0%, #059669 100%);
    color: white;
    border: none;
    border-radius: var(--audit-radius-lg);
    font-size: 16px;
    cursor: pointer;
    transition: var(--audit-transition);
    box-shadow: 0 4px 14px rgba(5, 150, 105, 0.4);
}

.audit-toolkit-v2__cta:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(5, 150, 105, 0.5);
}

.audit-toolkit-v2__cta-icon svg {
    width: 24px;
    height: 24px;
}

.audit-toolkit-v2__cta-text {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.audit-toolkit-v2__cta-text strong {
    font-weight: 600;
}

.audit-toolkit-v2__cta-text small {
    font-size: 12px;
    opacity: 0.9;
}

.audit-toolkit-v2__cta-arrow {
    font-size: 24px;
    font-weight: 300;
}

.audit-toolkit-v2__guarantee {
    margin: 20px 0 0 0;
    font-size: 13px;
    color: var(--audit-text-tertiary);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    flex-wrap: wrap;
}

.audit-toolkit-v2__guarantee svg {
    width: 14px;
    height: 14px;
    color: var(--audit-success);
}

/* ============================================
   FOOTER VALUE PROPS & STACKED ACTIONS
   ============================================ */
.audit-footer__value-props {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-bottom: 32px;
    padding-bottom: 32px;
    border-bottom: 1px solid var(--audit-border-light);
}

.audit-footer__value-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.audit-footer__value-icon {
    width: 40px;
    height: 40px;
    background: var(--audit-bg-subtle);
    border-radius: var(--audit-radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--audit-accent);
    flex-shrink: 0;
}

.audit-footer__value-icon svg {
    width: 20px;
    height: 20px;
}

.audit-footer__value-content {
    display: flex;
    flex-direction: column;
}

.audit-footer__value-content strong {
    font-size: 14px;
    font-weight: 600;
    color: var(--audit-navy);
    margin-bottom: 2px;
}

.audit-footer__value-content span {
    font-size: 13px;
    color: var(--audit-text-tertiary);
}

.audit-footer__actions--stacked {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}

.audit-footer__or {
    font-size: 13px;
    color: var(--audit-text-muted);
    margin: 0;
}

.audit-btn--xl {
    padding: 20px 48px;
    font-size: 17px;
}

.audit-btn--text {
    background: transparent;
    border: none;
    color: var(--audit-text-secondary);
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    padding: 8px 16px;
    transition: var(--audit-transition);
}

.audit-btn--text:hover {
    color: var(--audit-navy);
}

/* Report responsive */
@media (max-width: 1024px) {
    .audit-toolkit-v2__comparison {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .audit-toolkit-v2__compare-arrow {
        transform: rotate(90deg);
        margin: 0 auto;
    }

    .audit-toolkit-v2__items {
        grid-template-columns: 1fr;
    }

    .audit-footer__value-props {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .audit-report--comprehensive .audit-report__body {
        grid-template-columns: 1fr;
    }

    .audit-report__sidebar {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }

    .audit-columns {
        grid-template-columns: 1fr;
    }

    .audit-section {
        margin: 16px 20px;
    }

    .audit-columns {
        padding: 0 20px;
    }
}

@media (max-width: 768px) {
    .audit-metrics {
        grid-template-columns: 1fr;
    }

    .audit-metric {
        padding: 24px 20px;
        flex-direction: row;
        justify-content: space-between;
        text-align: left;
    }

    .audit-metric__chart {
        width: 60px;
        height: 60px;
        margin-bottom: 0;
        margin-right: 16px;
        order: -1;
    }

    .audit-metric__value {
        font-size: 28px;
    }

    .audit-hbar {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .audit-hbar__container {
        width: 100%;
    }

    .audit-issue-bar {
        grid-template-columns: 1fr 40px;
    }

    .audit-issue-bar__label {
        grid-column: 1 / -1;
    }

    .audit-premium-charts {
        grid-template-columns: 1fr;
    }

    .audit-footer__stats {
        flex-direction: column;
        gap: 16px;
    }

    .audit-issues-overview {
        flex-direction: column;
    }

    .audit-pie-container {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .audit-pie-legend {
        flex-direction: row;
        justify-content: center;
        gap: 16px;
    }

    .audit-intel-preview__grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .audit-locked-grid {
        grid-template-columns: 1fr;
    }

    .audit-section__cta--subtle {
        flex-direction: column;
        gap: 12px;
        text-align: center;
    }

    .audit-warning-modal__stats {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .audit-report__hero-content {
        flex-direction: column;
        text-align: center;
    }

    .audit-report__stats {
        flex-direction: column;
    }

    .audit-report__stat {
        border-right: none;
        border-bottom: 1px solid var(--audit-border);
    }

    .audit-report__stat:last-child {
        border-bottom: none;
    }

    .audit-report--comprehensive .audit-report__body {
        padding: 20px;
    }

    .audit-report__sidebar {
        grid-template-columns: 1fr;
    }

    .audit-report__footer {
        padding: 0 20px 20px;
    }

    .audit-cta--final {
        padding: 28px 20px;
    }

    .audit-cta--final .audit-cta__actions {
        flex-direction: column;
    }

    .audit-content-modal__container {
        max-height: 90vh;
    }

    .audit-templates {
        flex-direction: column;
    }
}

/* ============================================
   CONVERSATIONAL SENNA STYLE
   Matches the premium sequence design
   ============================================ */

.audit-conversational {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background: var(--audit-bg-cream);
}

/* Header bar - matches sequence header */
.audit-conversational__header {
    position: sticky;
    top: 0;
    z-index: 100;
    padding: 20px 40px;
    background: var(--audit-bg-white);
    border-bottom: 1px solid var(--audit-border);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.audit-conversational__logo {
    font-size: 13px;
    font-weight: 600;
    color: var(--audit-navy);
    letter-spacing: 0.02em;
    display: flex;
    align-items: center;
    gap: 8px;
}

.audit-conversational__logo svg {
    width: 16px;
    height: 16px;
    color: var(--audit-accent);
}

.audit-conversational__progress {
    display: flex;
    align-items: center;
    gap: 12px;
}

.audit-conversational__progress-bar {
    width: 100px;
    height: 3px;
    background: var(--audit-border);
    border-radius: var(--audit-radius-full);
    overflow: hidden;
}

.audit-conversational__progress-fill {
    height: 100%;
    background: var(--audit-accent);
    border-radius: var(--audit-radius-full);
    transition: width 0.4s ease;
}

.audit-conversational__progress-text {
    font-size: 12px;
    color: var(--audit-text-tertiary);
    font-weight: 500;
}

/* Main content area */
.audit-conversational__body {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 60px 40px;
}

.audit-conversational__container {
    max-width: 560px;
    width: 100%;
    text-align: center;
}

/* Senna Avatar */
.audit-senna-avatar {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid var(--audit-bg-white);
    box-shadow: var(--audit-shadow-lg);
    margin: 0 auto 20px;
    display: block;
}

/* Senna Message */
.audit-senna-message {
    margin-bottom: 20px;
}

.audit-senna-name {
    font-size: 12px;
    font-weight: 600;
    color: var(--audit-accent);
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 8px;
}

.audit-senna-intro {
    font-family: var(--audit-font-display);
    font-size: 20px;
    line-height: 1.5;
    color: var(--audit-navy);
    font-weight: 400;
    min-height: 50px;
}

.audit-senna-question {
    font-family: var(--audit-font-display);
    font-size: 26px;
    line-height: 1.4;
    color: var(--audit-navy);
    font-weight: 400;
    min-height: 40px;
    margin-top: 12px;
}

/* Typing Cursor */
.audit-typing-cursor {
    display: inline-block;
    animation: audit-blink 1s infinite;
    margin-left: 2px;
    color: var(--audit-accent);
    font-weight: 300;
}

@keyframes audit-blink {
    0%, 50% { opacity: 1; }
    51%, 100% { opacity: 0; }
}

/* Job Card */
.audit-job-card {
    display: flex;
    align-items: center;
    gap: 16px;
    background: var(--audit-bg-white);
    border-radius: var(--audit-radius-lg);
    padding: 20px 24px;
    margin: 28px auto;
    max-width: 400px;
    box-shadow: var(--audit-shadow-md);
    border: 1px solid var(--audit-border);
    text-align: left;
}

.audit-job-card__icon {
    width: 44px;
    height: 44px;
    background: var(--audit-accent);
    border-radius: var(--audit-radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    flex-shrink: 0;
}

.audit-job-card__icon svg {
    width: 22px;
    height: 22px;
}

.audit-job-card__title {
    font-size: 15px;
    font-weight: 600;
    color: var(--audit-navy);
}

.audit-job-card__meta {
    font-size: 13px;
    color: var(--audit-text-secondary);
    margin-top: 4px;
}

.audit-job-card__dot {
    margin: 0 6px;
    opacity: 0.5;
}

/* Visual Cards */
.audit-visual-cards {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    justify-content: center;
    margin: 32px auto;
    max-width: 480px;
}

.audit-visual-cards--grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    max-width: 420px;
}

.audit-visual-cards--grid .audit-visual-card {
    flex: none;
    width: auto;
}

.audit-visual-card {
    background: var(--audit-bg-white);
    border-radius: var(--audit-radius-lg);
    padding: 24px 20px;
    cursor: pointer;
    transition: var(--audit-transition);
    box-shadow: var(--audit-shadow-sm);
    border: 1px solid var(--audit-border);
    flex: 1;
    min-width: 140px;
    max-width: 210px;
}

.audit-visual-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--audit-shadow-lg);
    border-color: var(--audit-accent);
}

.audit-visual-card--selected {
    border-color: var(--audit-accent);
    background: var(--audit-bg-warm);
    box-shadow: var(--audit-shadow-md);
}

.audit-visual-card__icon {
    width: 36px;
    height: 36px;
    margin: 0 auto 12px;
    color: var(--audit-accent);
}

.audit-visual-card__icon svg {
    width: 100%;
    height: 100%;
}

.audit-visual-card__title {
    font-size: 14px;
    font-weight: 600;
    color: var(--audit-navy);
    margin-bottom: 4px;
}

.audit-visual-card__desc {
    font-size: 12px;
    color: var(--audit-text-tertiary);
    line-height: 1.4;
}

/* Relocation Progress */
.audit-relocation-progress {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 28px;
    justify-content: center;
}

.audit-relocation-progress__bar {
    width: 100px;
    height: 3px;
    background: var(--audit-border);
    border-radius: var(--audit-radius-full);
    overflow: hidden;
}

.audit-relocation-progress__fill {
    height: 100%;
    background: var(--audit-accent);
    border-radius: var(--audit-radius-full);
    transition: width 0.4s ease;
}

.audit-relocation-progress__text {
    font-size: 12px;
    color: var(--audit-text-tertiary);
    font-weight: 500;
}

/* Footer - matches sequence footer */
.audit-conversational__footer {
    position: sticky;
    bottom: 0;
    padding: 20px 40px;
    background: var(--audit-bg-white);
    border-top: 1px solid var(--audit-border);
    display: flex;
    justify-content: center;
}

/* Back Button */
.audit-back-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: transparent;
    border: 1px solid var(--audit-border);
    border-radius: var(--audit-radius-md);
    color: var(--audit-text-secondary);
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: var(--audit-transition);
}

.audit-back-btn:hover {
    background: var(--audit-bg-subtle);
    border-color: var(--audit-border-dark);
    color: var(--audit-navy);
}

.audit-back-btn svg {
    width: 16px;
    height: 16px;
}

/* Mobile Responsive */
@media (max-width: 600px) {
    .audit-conversational__header {
        padding: 16px 20px;
    }

    .audit-conversational__body {
        padding: 40px 20px;
    }

    .audit-senna-avatar {
        width: 60px;
        height: 60px;
    }

    .audit-senna-intro {
        font-size: 17px;
    }

    .audit-senna-question {
        font-size: 22px;
    }

    .audit-visual-cards {
        flex-direction: column;
        align-items: stretch;
    }

    .audit-visual-cards--grid {
        grid-template-columns: 1fr 1fr;
    }

    .audit-visual-card {
        max-width: none;
        padding: 20px 16px;
    }

    .audit-job-card {
        padding: 16px;
    }

    .audit-job-card__icon {
        width: 40px;
        height: 40px;
    }

    .audit-conversational__footer {
        padding: 16px 20px;
    }
}

/* Start Button - Primary CTA */
.audit-start-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 16px 32px;
    background: var(--audit-accent);
    color: white;
    border: none;
    border-radius: var(--audit-radius-md);
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: var(--audit-transition);
    margin-top: 32px;
    box-shadow: var(--audit-shadow-md);
}

.audit-start-btn:hover {
    background: var(--audit-accent-light);
    transform: translateY(-1px);
    box-shadow: var(--audit-shadow-lg);
}

.audit-start-btn svg {
    width: 18px;
    height: 18px;
}

/* Option-style cards (for role questions) */
.audit-visual-card--option {
    padding: 16px 20px;
    min-width: 110px;
}

.audit-visual-card--option .audit-visual-card__title {
    font-size: 13px;
    margin-bottom: 0;
}

/* 3-column grid for many options */
.audit-visual-cards--grid-3 {
    grid-template-columns: repeat(3, 1fr);
    max-width: 480px;
}

@media (max-width: 600px) {
    .audit-visual-cards--grid-3 {
        grid-template-columns: 1fr 1fr;
    }
}

/* ============================================
   MORE OPPORTUNITIES SECTION
   ============================================ */
.audit-section--opportunities {
    margin: 32px 0;
}

.audit-opportunities {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 24px 28px;
    background: linear-gradient(135deg, var(--audit-accent) 0%, var(--audit-accent-light) 100%);
    border-radius: var(--audit-radius-lg);
    color: white;
}

.audit-opportunities__icon {
    width: 48px;
    height: 48px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: var(--audit-radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.audit-opportunities__icon svg {
    width: 24px;
    height: 24px;
}

.audit-opportunities__content {
    flex: 1;
}

.audit-opportunities__title {
    font-size: 18px;
    font-weight: 600;
    margin: 0 0 4px 0;
}

.audit-opportunities__subtitle {
    font-size: 14px;
    opacity: 0.9;
    margin: 0;
}

.audit-opportunities__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px;
    background: white;
    color: var(--audit-accent);
    border-radius: var(--audit-radius-md);
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: var(--audit-transition);
    white-space: nowrap;
}

.audit-opportunities__btn:hover {
    background: var(--audit-bg-cream);
    transform: translateY(-1px);
}

.audit-opportunities__btn svg {
    width: 16px;
    height: 16px;
}

@media (max-width: 768px) {
    .audit-opportunities {
        flex-direction: column;
        text-align: center;
        gap: 16px;
    }

    .audit-opportunities__btn {
        width: 100%;
        justify-content: center;
    }
}

/* ============================================
   LOCATION INTELLIGENCE SECTION
   ============================================ */
.audit-section--location-intel {
    margin: 32px 0;
    background: var(--audit-bg-warm);
    border-radius: var(--audit-radius-lg);
    padding: 28px;
    border: 1px solid var(--audit-border);
}

.audit-section--location-intel .audit-section__header {
    margin-bottom: 24px;
}

.audit-section--location-intel .audit-section__title {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 18px;
    font-weight: 600;
    color: var(--audit-navy);
    margin: 0;
}

.audit-section--location-intel .audit-section__title svg {
    width: 20px;
    height: 20px;
    color: var(--audit-accent);
}

.audit-section--location-intel .audit-section__subtitle {
    font-size: 14px;
    color: var(--audit-text-secondary);
    margin-left: 30px;
}

.audit-location-intel {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-bottom: 24px;
}

.audit-location-intel__card {
    background: var(--audit-bg-white);
    border-radius: var(--audit-radius-md);
    padding: 20px;
    border: 1px solid var(--audit-border);
    text-align: center;
}

.audit-location-intel__icon {
    width: 36px;
    height: 36px;
    margin: 0 auto 12px;
    color: var(--audit-accent);
}

.audit-location-intel__icon svg {
    width: 100%;
    height: 100%;
}

.audit-location-intel__label {
    font-size: 12px;
    color: var(--audit-text-tertiary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
}

.audit-location-intel__value {
    font-size: 18px;
    font-weight: 600;
    color: var(--audit-navy);
    margin-bottom: 4px;
}

.audit-location-intel__note {
    font-size: 12px;
    color: var(--audit-text-secondary);
    line-height: 1.4;
}

.audit-location-intel__cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 20px 24px;
    background: var(--audit-bg-white);
    border-radius: var(--audit-radius-md);
    border: 1px solid var(--audit-border);
}

.audit-location-intel__cta p {
    margin: 0;
    font-size: 14px;
    color: var(--audit-text-secondary);
    flex: 1;
}

.audit-location-intel__cta .audit-btn {
    white-space: nowrap;
}

@media (max-width: 900px) {
    .audit-location-intel {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .audit-section--location-intel {
        padding: 20px;
    }

    .audit-location-intel {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }

    .audit-location-intel__card {
        padding: 16px;
    }

    .audit-location-intel__value {
        font-size: 16px;
    }

    .audit-location-intel__cta {
        flex-direction: column;
        text-align: center;
        gap: 16px;
    }

    .audit-location-intel__cta .audit-btn {
        width: 100%;
        justify-content: center;
    }
}

/* ============================================
   JOB BREAKDOWN CARD - New Report Style
   ============================================ */
.audit-report--job-breakdown {
    max-width: 900px;
    margin: 0 auto;
    padding: 0;
}

/* Job Header */
.audit-job-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 24px;
    padding: 32px;
    background: var(--audit-bg-white);
    border-bottom: 1px solid var(--audit-border);
}

.audit-job-header__main {
    display: flex;
    gap: 20px;
    align-items: flex-start;
}

.audit-job-header__company-logo {
    width: 56px;
    height: 56px;
    background: var(--audit-navy);
    color: white;
    border-radius: var(--audit-radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 700;
    flex-shrink: 0;
}

.audit-job-header__info {
    flex: 1;
}

.audit-job-header__title {
    font-family: var(--audit-font-display);
    font-size: 24px;
    font-weight: 500;
    color: var(--audit-navy);
    margin: 0 0 8px 0;
    line-height: 1.3;
}

.audit-job-header__meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
    font-size: 14px;
    color: var(--audit-text-secondary);
}

.audit-job-header__company {
    font-weight: 500;
}

.audit-job-header__dot {
    color: var(--audit-border-dark);
    margin: 0 4px;
}

.audit-job-header__location,
.audit-job-header__salary {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.audit-job-header__location svg,
.audit-job-header__salary svg {
    width: 14px;
    height: 14px;
    color: var(--audit-text-tertiary);
}

.audit-job-header__actions {
    display: flex;
    gap: 12px;
    flex-shrink: 0;
}

/* Key Stats Row */
.audit-job-stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1px;
    background: var(--audit-border);
    border-bottom: 1px solid var(--audit-border);
}

.audit-job-stat {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 20px 24px;
    background: var(--audit-bg-white);
}

.audit-job-stat__icon {
    width: 40px;
    height: 40px;
    background: var(--audit-bg-cream);
    border-radius: var(--audit-radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--audit-accent);
    flex-shrink: 0;
}

.audit-job-stat__icon svg {
    width: 20px;
    height: 20px;
}

.audit-job-stat__value {
    font-size: 18px;
    font-weight: 600;
    color: var(--audit-navy);
}

.audit-job-stat__label {
    font-size: 12px;
    color: var(--audit-text-tertiary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Role Overview */
.audit-role-overview__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

.audit-role-overview__item {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.audit-role-overview__label {
    font-size: 12px;
    color: var(--audit-text-tertiary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.audit-role-overview__value {
    font-size: 15px;
    font-weight: 500;
    color: var(--audit-navy);
}

/* Requirements Breakdown */
.audit-requirements {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.audit-requirements__category {
    background: var(--audit-bg-white);
    border-radius: var(--audit-radius-md);
    border: 1px solid var(--audit-border);
    overflow: hidden;
}

.audit-requirements__category-header {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 16px 20px;
    background: var(--audit-bg-cream);
    border-bottom: 1px solid var(--audit-border);
}

.audit-requirements__category-icon {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.audit-requirements__category-icon svg {
    width: 18px;
    height: 18px;
}

.audit-requirements__category--must .audit-requirements__category-icon {
    color: var(--audit-error);
}

.audit-requirements__category--important .audit-requirements__category-icon {
    color: var(--audit-warning);
}

.audit-requirements__category--nice .audit-requirements__category-icon {
    color: var(--audit-success);
}

.audit-requirements__category-title {
    font-size: 14px;
    font-weight: 600;
    color: var(--audit-navy);
    flex: 1;
}

.audit-requirements__category-count {
    font-size: 12px;
    font-weight: 600;
    color: var(--audit-text-tertiary);
    background: var(--audit-bg-white);
    padding: 2px 8px;
    border-radius: var(--audit-radius-full);
}

.audit-requirements__list {
    list-style: none;
    margin: 0;
    padding: 16px 20px;
}

.audit-requirements__item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 8px 0;
    border-bottom: 1px solid var(--audit-border-light);
}

.audit-requirements__item:last-child {
    border-bottom: none;
}

.audit-requirements__bullet {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    margin-top: 6px;
    flex-shrink: 0;
}

.audit-requirements__item--critical .audit-requirements__bullet {
    background: var(--audit-error);
}

.audit-requirements__item--warning .audit-requirements__bullet {
    background: var(--audit-warning);
}

.audit-requirements__item--nice .audit-requirements__bullet {
    background: var(--audit-success);
}

.audit-requirements__text {
    font-size: 14px;
    color: var(--audit-text-primary);
    line-height: 1.4;
}

.audit-requirements__empty {
    font-size: 13px;
    color: var(--audit-text-tertiary);
    font-style: italic;
    padding: 8px 0;
}

.audit-requirements__more {
    font-size: 13px;
    color: var(--audit-accent);
    font-weight: 500;
    padding: 8px 0;
}

/* Skills Breakdown */
.audit-skills-breakdown {
    padding: 8px 0;
}

.audit-skill-bar {
    margin-bottom: 24px;
}

.audit-skill-bar:last-child {
    margin-bottom: 0;
}

.audit-skill-bar__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
}

.audit-skill-bar__name {
    font-size: 14px;
    font-weight: 600;
    color: var(--audit-navy);
}

.audit-skill-bar__count {
    font-size: 12px;
    color: var(--audit-text-tertiary);
}

.audit-skill-bar__track {
    height: 8px;
    background: var(--audit-border);
    border-radius: var(--audit-radius-full);
    overflow: hidden;
    margin-bottom: 10px;
}

.audit-skill-bar__fill {
    height: 100%;
    border-radius: var(--audit-radius-full);
    transition: width 0.4s ease;
}

.audit-skill-bar__skills {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.audit-skill-tag {
    display: inline-block;
    padding: 4px 10px;
    background: var(--audit-bg-cream);
    border-radius: var(--audit-radius-full);
    font-size: 12px;
    color: var(--audit-text-secondary);
}

.audit-skill-tag--more {
    background: var(--audit-accent);
    color: white;
}

/* Compensation Section */
.audit-compensation {
    display: flex;
    gap: 32px;
    align-items: flex-start;
}

.audit-compensation__main {
    flex: 1;
}

.audit-compensation__salary {
    margin-bottom: 16px;
}

.audit-compensation__label {
    display: block;
    font-size: 12px;
    color: var(--audit-text-tertiary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 4px;
}

.audit-compensation__value {
    font-size: 32px;
    font-weight: 600;
    color: var(--audit-navy);
    line-height: 1.2;
}

.audit-compensation__range {
    display: block;
    font-size: 14px;
    color: var(--audit-text-secondary);
    margin-top: 4px;
}

.audit-compensation__breakdown {
    display: flex;
    gap: 24px;
    padding: 20px;
    background: var(--audit-bg-cream);
    border-radius: var(--audit-radius-md);
}

.audit-compensation__item {
    text-align: center;
}

.audit-compensation__item-label {
    display: block;
    font-size: 12px;
    color: var(--audit-text-tertiary);
    margin-bottom: 4px;
}

.audit-compensation__item-value {
    font-size: 16px;
    font-weight: 600;
    color: var(--audit-navy);
}

.audit-compensation__note {
    font-size: 13px;
    color: var(--audit-text-tertiary);
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--audit-border);
}

/* Salary Range Chart */
.audit-salary-chart {
    margin-top: 12px;
}

.audit-salary-chart__bar {
    position: relative;
    height: 8px;
    background: linear-gradient(90deg, var(--audit-border) 0%, var(--audit-accent) 50%, var(--audit-success) 100%);
    border-radius: var(--audit-radius-full);
    margin-bottom: 8px;
}

.audit-salary-chart__marker {
    position: absolute;
    top: -4px;
    transform: translateX(-50%);
}

.audit-salary-chart__marker-line {
    display: block;
    width: 2px;
    height: 16px;
    background: var(--audit-navy);
    margin: 0 auto;
}

.audit-salary-chart__marker-label {
    display: block;
    font-size: 10px;
    color: var(--audit-text-tertiary);
    text-align: center;
    margin-top: 4px;
}

.audit-salary-chart__labels {
    display: flex;
    justify-content: space-between;
    font-size: 11px;
    color: var(--audit-text-tertiary);
}

/* Toolkit CTA */
.audit-toolkit-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 24px 28px;
    background: linear-gradient(135deg, var(--audit-navy) 0%, var(--audit-navy-light) 100%);
    border-radius: var(--audit-radius-lg);
    color: white;
}

.audit-toolkit-cta__content {
    display: flex;
    align-items: center;
    gap: 16px;
}

.audit-toolkit-cta__icon {
    width: 48px;
    height: 48px;
    background: rgba(255, 255, 255, 0.15);
    border-radius: var(--audit-radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.audit-toolkit-cta__icon svg {
    width: 24px;
    height: 24px;
}

.audit-toolkit-cta__text h3 {
    font-size: 18px;
    font-weight: 600;
    margin: 0 0 4px 0;
}

.audit-toolkit-cta__text p {
    font-size: 14px;
    opacity: 0.9;
    margin: 0;
}

.audit-toolkit-cta .audit-btn--primary {
    background: white;
    color: var(--audit-navy);
}

.audit-toolkit-cta .audit-btn--primary:hover {
    background: var(--audit-bg-cream);
}

/* Job Footer */
.audit-job-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 24px 32px;
    background: var(--audit-bg-white);
    border-top: 1px solid var(--audit-border);
}

.audit-job-footer__left {
    display: flex;
    gap: 16px;
}

/* Responsive */
@media (max-width: 900px) {
    .audit-job-header {
        flex-direction: column;
        gap: 20px;
    }

    .audit-job-header__actions {
        width: 100%;
    }

    .audit-job-header__actions .audit-btn {
        flex: 1;
    }

    .audit-job-stats {
        grid-template-columns: repeat(2, 1fr);
    }

    .audit-role-overview__grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .audit-requirements {
        grid-template-columns: 1fr;
    }

    .audit-compensation {
        flex-direction: column;
    }

    .audit-compensation__breakdown {
        width: 100%;
        justify-content: space-around;
    }
}

@media (max-width: 600px) {
    .audit-job-header {
        padding: 24px 20px;
    }

    .audit-job-header__main {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }

    .audit-job-header__title {
        font-size: 20px;
    }

    .audit-job-stats {
        grid-template-columns: 1fr 1fr;
    }

    .audit-job-stat {
        padding: 16px;
    }

    .audit-role-overview__grid {
        grid-template-columns: 1fr 1fr;
        gap: 16px;
    }

    .audit-toolkit-cta {
        flex-direction: column;
        text-align: center;
    }

    .audit-toolkit-cta__content {
        flex-direction: column;
    }

    .audit-toolkit-cta .audit-btn {
        width: 100%;
    }

    .audit-job-footer {
        flex-direction: column;
        gap: 16px;
        padding: 20px;
    }

    .audit-job-footer__left {
        order: 2;
    }

    .audit-job-footer__right {
        width: 100%;
    }

    .audit-job-footer__right .audit-btn {
        width: 100%;
    }
}

/* ===== ENHANCED SUMMARY SECTIONS ===== */

/* Interview Battlecard */
.audit-battlecard {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
}

.audit-battlecard__stage {
    background: #f8fafc;
    border-radius: 12px;
    padding: 20px;
    border-left: 4px solid var(--audit-primary);
}

.audit-battlecard__stage-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

.audit-battlecard__stage-number {
    width: 28px;
    height: 28px;
    background: var(--audit-primary);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 600;
    flex-shrink: 0;
}

.audit-battlecard__stage-name {
    font-size: 16px;
    font-weight: 600;
    color: #1e293b;
    margin: 0;
}

.audit-battlecard__stage-focus {
    font-size: 14px;
    color: #64748b;
    margin: 0 0 12px 0;
}

.audit-battlecard__tips {
    margin: 0;
    padding: 0;
    list-style: none;
}

.audit-battlecard__tips li {
    position: relative;
    padding-left: 20px;
    font-size: 13px;
    color: #475569;
    margin-bottom: 6px;
}

.audit-battlecard__tips li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 7px;
    width: 6px;
    height: 6px;
    background: var(--audit-primary);
    border-radius: 50%;
}

.audit-battlecard__questions {
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid #e2e8f0;
}

.audit-battlecard__questions h4 {
    font-size: 15px;
    font-weight: 600;
    color: #1e293b;
    margin: 0 0 12px 0;
}

.audit-battlecard__questions ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.audit-battlecard__questions li {
    position: relative;
    padding: 10px 16px 10px 36px;
    background: #f8fafc;
    border-radius: 8px;
    margin-bottom: 8px;
    font-size: 14px;
    color: #475569;
}

.audit-battlecard__questions li::before {
    content: '?';
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    background: var(--audit-primary);
    color: white;
    border-radius: 50%;
    font-size: 12px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Application Checklist */
.audit-checklist {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.audit-checklist__item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 14px 18px;
    background: #f8fafc;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.2s ease;
    border: 2px solid transparent;
}

.audit-checklist__item:hover {
    background: #f1f5f9;
    border-color: var(--audit-primary);
}

.audit-checklist__item input[type="checkbox"] {
    display: none;
}

.audit-checklist__checkbox {
    width: 22px;
    height: 22px;
    border: 2px solid #cbd5e1;
    border-radius: 6px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.audit-checklist__item input:checked + .audit-checklist__checkbox {
    background: var(--audit-success);
    border-color: var(--audit-success);
}

.audit-checklist__item input:checked + .audit-checklist__checkbox::after {
    content: '✓';
    color: white;
    font-size: 14px;
    font-weight: 700;
}

.audit-checklist__item input:checked ~ .audit-checklist__text {
    text-decoration: line-through;
    color: #94a3b8;
}

.audit-checklist__text {
    font-size: 14px;
    color: #475569;
    line-height: 1.5;
    flex: 1;
}

.audit-checklist__priority {
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 3px 8px;
    background: #fef3c7;
    color: #d97706;
    border-radius: 12px;
    flex-shrink: 0;
}

.audit-checklist__item--high {
    border-left: 3px solid #f59e0b;
}

.audit-checklist__progress {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid #e2e8f0;
}

.audit-checklist__progress-bar {
    flex: 1;
    height: 8px;
    background: #e2e8f0;
    border-radius: 4px;
    overflow: hidden;
}

.audit-checklist__progress-fill {
    height: 100%;
    background: linear-gradient(90deg, var(--audit-success), #10b981);
    border-radius: 4px;
    transition: width 0.3s ease;
}

.audit-checklist__progress-text {
    font-size: 13px;
    color: #64748b;
    flex-shrink: 0;
}

/* Questions to Ask */
.audit-questions-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.audit-questions-list__item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 14px 18px;
    background: #f8fafc;
    border-radius: 10px;
    margin-bottom: 10px;
    transition: all 0.2s ease;
}

.audit-questions-list__item:hover {
    background: #f1f5f9;
}

.audit-questions-list__icon {
    width: 24px;
    height: 24px;
    background: var(--audit-primary);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 700;
    flex-shrink: 0;
}

.audit-questions-list__text {
    flex: 1;
    font-size: 14px;
    color: #475569;
    line-height: 1.5;
}

.audit-questions-list__copy {
    background: none;
    border: none;
    padding: 6px;
    cursor: pointer;
    color: #94a3b8;
    border-radius: 6px;
    transition: all 0.2s ease;
    flex-shrink: 0;
}

.audit-questions-list__copy:hover {
    background: #e2e8f0;
    color: var(--audit-primary);
}

.audit-questions-list__copy svg {
    width: 16px;
    height: 16px;
}

/* Stand Out Factors */
.audit-stand-out {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.audit-stand-out__item {
    display: flex;
    gap: 16px;
    padding: 18px 20px;
    background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
    border-radius: 12px;
    border-left: 4px solid var(--audit-accent);
}

.audit-stand-out__number {
    width: 32px;
    height: 32px;
    background: var(--audit-accent);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 700;
    flex-shrink: 0;
}

.audit-stand-out__content h4 {
    font-size: 15px;
    font-weight: 600;
    color: #1e293b;
    margin: 0 0 6px 0;
}

.audit-stand-out__content p {
    font-size: 14px;
    color: #64748b;
    margin: 0;
    line-height: 1.5;
}

/* Career Trajectory */
.audit-trajectory {
    position: relative;
    padding-left: 32px;
}

.audit-trajectory::before {
    content: '';
    position: absolute;
    left: 11px;
    top: 24px;
    bottom: 24px;
    width: 2px;
    background: linear-gradient(180deg, var(--audit-primary) 0%, #cbd5e1 100%);
}

.audit-trajectory__step {
    position: relative;
    padding: 16px 20px;
    margin-bottom: 16px;
    background: #f8fafc;
    border-radius: 12px;
}

.audit-trajectory__step--current {
    background: linear-gradient(135deg, var(--audit-primary-light, #ecfdf5) 0%, #f0fdf4 100%);
    border: 2px solid var(--audit-primary);
}

.audit-trajectory__marker {
    position: absolute;
    left: -27px;
    top: 20px;
    width: 14px;
    height: 14px;
    background: white;
    border: 3px solid #cbd5e1;
    border-radius: 50%;
}

.audit-trajectory__step--current .audit-trajectory__marker {
    background: var(--audit-primary);
    border-color: var(--audit-primary);
    box-shadow: 0 0 0 4px rgba(30, 58, 46, 0.2);
}

.audit-trajectory__content h4 {
    font-size: 15px;
    font-weight: 600;
    color: #1e293b;
    margin: 0 0 4px 0;
}

.audit-trajectory__timeline {
    display: inline-block;
    font-size: 12px;
    color: #64748b;
    background: #e2e8f0;
    padding: 2px 8px;
    border-radius: 12px;
    margin-bottom: 8px;
}

.audit-trajectory__content p {
    font-size: 13px;
    color: #64748b;
    margin: 0;
    line-height: 1.5;
}

/* Responsive for enhanced sections */
@media (max-width: 768px) {
    .audit-battlecard {
        grid-template-columns: 1fr;
    }

    .audit-stand-out__item {
        flex-direction: column;
        gap: 12px;
    }

    .audit-trajectory {
        padding-left: 24px;
    }

    .audit-trajectory__marker {
        left: -19px;
        width: 10px;
        height: 10px;
    }
}
