/* =========================================================
   EDUBROS QUIZ FRONTEND — PREMIUM CSS
   Exactly matches the shared HTML reference design system.
   Scoped under .edubros-quiz-root to avoid WordPress theme conflicts.
   Uses the same CSS variable names as the HTML (--primary-blue etc).
   Dark mode via .edubros-quiz-root[data-theme="dark"].
   ========================================================= */

/* ----------------------------------------------------------
   ROOT + RESET (scoped)
   ---------------------------------------------------------- */
.edubros-quiz-root,
.edubros-quiz-root *,
.edubros-quiz-root *::before,
.edubros-quiz-root *::after {
    box-sizing: border-box;
    -webkit-tap-highlight-color: transparent;
    margin: 0;
    padding: 0;
}

.edubros-quiz-root {
    /* Light theme palette — exact from HTML reference */
    --primary-blue: #2563eb;
    --primary-blue-hover: #1d4ed8;
    --primary-blue-light: #dbeafe;
    --light-blue-bg: #eff6ff;
    --primary-blue-muted: rgba(37, 99, 235, 0.14);

    --success-green: #10b981;
    --success-green-hover: #059669;
    --success-green-bg: #ecfdf5;
    --success-green-text: #065f46;

    --error-red: #ef4444;
    --error-red-hover: #dc2626;
    --error-red-bg: #fef2f2;
    --error-red-text: #991b1b;

    --warning-orange: #f59e0b;
    --warning-orange-hover: #d97706;
    --warning-orange-bg: #fffbeb;
    --warning-orange-text: #92400e;

    --text-dark: #0f172a;
    --text-medium: #475569;
    --text-light: #94a3b8;

    --border-color: #e2e8f0;
    --border-color-hover: #cbd5e1;

    --background-body: #f8fafc;
    --background-white: #ffffff;
    --surface-muted: #f1f5f9;
    --input-bg: #ffffff;

    --overlay-bg: rgba(15, 23, 42, 0.6);
    --card-shadow: 0 10px 30px -10px rgba(15, 23, 42, 0.08), 0 4px 6px -2px rgba(15, 23, 42, 0.04);
    --focus-ring: 0 0 0 3px rgba(37, 99, 235, 0.25);

    --transition-fast: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    --transition-normal: 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    --transition-slow: 0.5s cubic-bezier(0.4, 0, 0.2, 1);

    /* Configurable sizing defaults (overridable by injected <style> vars) */
    --container-max-width: 820px;
    --card-padding-desktop: 3rem;
    --card-padding-mobile: 1.75rem 1.25rem;
    --card-border-radius: 1.5rem;
    --card-min-height: 600px;
    --logo-max-width: 150px;
    --quiz-title-size: 1.6rem;
    --dash-heading-size: 1.8rem;
    --question-size: 1.3rem;
    --btn-height: 3.2rem;
    --btn-full-height: 3.5rem;
    --btn-radius: 0.75rem;
    --utility-btn-height: 2.5rem;
    --edubros-font-family: 'Plus Jakarta Sans';
    --edubros-base-font-size: 16px;
    --edubros-question-font-size: var(--question-size);
    --edubros-question-font-weight: 700;
    --edubros-card-border-thickness: 1px;
    --edubros-button-font-size: 0.95rem;
    --edubros-button-font-weight: 700;
    --edubros-option-font-size: 1rem;
    --edubros-option-font-weight: 600;
    --edubros-option-padding: 1.15rem 1.5rem;
    --edubros-option-radius: 1rem;
    --edubros-option-border-width: 1.5px;
    --edubros-option-gap: 0.85rem;
    --edubros-option-hover-translate: 6px;
    --edubros-option-letter-size: 2.25rem;
    --edubros-option-letter-radius: 0.6rem;
    --edubros-explanation-font-size: 1rem;
    --edubros-explanation-line-height: 1.75;
    --edubros-explanation-top-margin: 2.5rem;
    --edubros-explanation-header-padding: 1.25rem 1.5rem;
    --edubros-explanation-header-font-size: 1.1rem;
    --edubros-explanation-content-padding: 1.75rem;
    --edubros-mobile-option-padding: 0.9rem 1.1rem;
    --edubros-mobile-font-scale: 1;
    --edubros-mobile-explanation-size: 0.95rem;
    --edubros-svg-hover-glow: drop-shadow(0 0 8px var(--primary-blue-light));

    width: 100%;
    max-width: 100%;
    overflow-x: clip;
    font-family: var(--edubros-font-family), 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: var(--edubros-base-font-size);
    line-height: 1.6;
    color: var(--text-dark);
    background-color: var(--background-body);
    transition: background-color var(--transition-normal), color var(--transition-normal);
}

/* Dark theme — exact from HTML reference */
.edubros-quiz-root[data-theme="dark"] {
    --primary-blue: #3b82f6;
    --primary-blue-hover: #60a5fa;
    --primary-blue-light: #1e3a8a;
    --light-blue-bg: #172554;
    --primary-blue-muted: rgba(59, 130, 246, 0.18);

    --success-green: #34d399;
    --success-green-hover: #10b981;
    --success-green-bg: #064e3b;
    --success-green-text: #a7f3d0;

    --error-red: #f87171;
    --error-red-hover: #ef4444;
    --error-red-bg: #7f1d1d;
    --error-red-text: #fecaca;

    --warning-orange: #fbbf24;
    --warning-orange-hover: #f59e0b;
    --warning-orange-bg: #78350f;
    --warning-orange-text: #fde68a;

    --text-dark: #f8fafc;
    --text-medium: #cbd5e1;
    --text-light: #64748b;

    --border-color: #334155;
    --border-color-hover: #475569;

    --background-body: #020617;
    --background-white: #0f172a;
    --surface-muted: #1e293b;
    --input-bg: #0f172a;

    --overlay-bg: rgba(2, 6, 23, 0.85);
    --card-shadow: 0 16px 45px -18px rgba(0, 0, 0, 0.8);
    --focus-ring: 0 0 0 3px rgba(59, 130, 246, 0.4);
}

/* SVG styling */
.edubros-quiz-root svg {
    flex-shrink: 0;
    transition: all var(--transition-fast);
}
.edubros-quiz-root .two-tone-svg .svg-fill { fill: var(--primary-blue-light); opacity: 0.8; transition: fill var(--transition-fast); }
.edubros-quiz-root .two-tone-svg .svg-stroke { stroke: var(--primary-blue); stroke-width: 2px; fill: none; }
.edubros-quiz-root[data-theme="dark"] .two-tone-svg .svg-fill { fill: var(--primary-blue); opacity: 0.2; }
.edubros-quiz-root[data-theme="dark"] .two-tone-svg .svg-stroke { stroke: var(--primary-blue-hover); }
.edubros-quiz-root button:hover svg:not(.svg-no-scale),
.edubros-quiz-root .dash-card:hover svg {
    filter: var(--edubros-svg-hover-glow);
    transform: scale(1.12);
}
.edubros-quiz-root .btn-variant-success:hover svg { filter: drop-shadow(0 0 8px var(--success-green-bg)); }
.edubros-quiz-root .btn-variant-danger:hover svg { filter: drop-shadow(0 0 8px var(--error-red-bg)); }

/* Loading + error placeholders */
.edubros-quiz-loading {
    text-align: center;
    padding: 3rem 1rem;
    color: var(--text-light);
    font-weight: 600;
}
.edubros-error-msg {
    padding: 1.5rem;
    text-align: center;
    color: var(--error-red-text);
    background: var(--error-red-bg);
    border-radius: 0.75rem;
    border: 1.5px solid var(--error-red-hover);
}

/* ----------------------------------------------------------
   LAYOUT CONTAINERS
   ---------------------------------------------------------- */
.edubros-quiz-root .quiz-body-wrapper {
    display: flex;
    justify-content: center;
    padding: 3rem 1.25rem;
    min-height: 100vh;
    align-items: flex-start;
    background: var(--background-body);
}

.edubros-quiz-root #quiz-container {
    width: 100%;
    max-width: var(--container-max-width);
    margin: 0 auto;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

.edubros-quiz-root .quiz-wrapper {
    background: var(--background-white);
    border-radius: var(--card-border-radius);
    padding: var(--card-padding-desktop);
    box-shadow: var(--card-shadow);
    position: relative;
    min-height: var(--card-min-height);
    transition: all var(--transition-normal);
    border: var(--edubros-card-border-thickness) solid var(--border-color);
    display: flex;
    flex-direction: column;
}

/* ----------------------------------------------------------
   HEADER
   ---------------------------------------------------------- */
.edubros-quiz-root .quiz-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-bottom: 2.5rem;
    position: relative;
    gap: 1rem;
    text-align: center;
}

.edubros-quiz-root .header-top-bar {
    position: absolute;
    top: -10px;
    right: 0;
    display: flex;
    gap: 12px;
    align-items: center;
    z-index: 10;
}

.edubros-quiz-root .edubros-sync-status {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    max-width: 360px;
    padding: 7px 12px;
    border: 1px solid #f59e0b;
    border-radius: 999px;
    background: #fffbeb;
    color: #92400e;
    font-size: 0.76rem;
    font-weight: 800;
    line-height: 1.25;
    text-align: left;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
}
.edubros-quiz-root .edubros-sync-status[hidden] { display: none !important; }
.edubros-quiz-root .edubros-sync-status.is-syncing { border-color: #60a5fa; background: #eff6ff; color: #1d4ed8; }
.edubros-quiz-root .edubros-sync-status.is-synced { border-color: #34d399; background: #ecfdf5; color: #047857; }
.edubros-quiz-root[data-theme="dark"] .edubros-sync-status.is-offline { background: #422006; color: #fde68a; }
.edubros-quiz-root[data-theme="dark"] .edubros-sync-status.is-syncing { background: #172554; color: #bfdbfe; }
.edubros-quiz-root[data-theme="dark"] .edubros-sync-status.is-synced { background: #052e16; color: #a7f3d0; }

.edubros-quiz-root .theme-toggle-btn {
    background: var(--surface-muted);
    border: 1.5px solid var(--border-color);
    color: var(--text-dark);
    width: 42px;
    height: 42px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all var(--transition-fast);
    font-family: inherit;
    outline: none;
}
.edubros-quiz-root .theme-toggle-btn:hover {
    background: var(--border-color);
    transform: rotate(15deg);
}
.edubros-quiz-root .theme-toggle-btn .icon-sun { display: block; }
.edubros-quiz-root .theme-toggle-btn .icon-moon { display: none; }
.edubros-quiz-root[data-theme="dark"] .theme-toggle-btn .icon-sun { display: none; }
.edubros-quiz-root[data-theme="dark"] .theme-toggle-btn .icon-moon { display: block; }

.edubros-quiz-root .btn-save-exit {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--surface-muted);
    color: var(--text-dark);
    border: 1.5px solid var(--border-color);
    border-radius: 8px;
    height: 42px;
    padding: 0 16px;
    font-size: 0.9rem;
    font-weight: 700;
    cursor: pointer;
    transition: all var(--transition-fast);
    font-family: inherit;
    outline: none;
}
.edubros-quiz-root .btn-save-exit:hover {
    background: var(--border-color);
    transform: translateY(-1px);
}

.edubros-quiz-root .quiz-logo {
    max-width: var(--logo-max-width);
    height: auto;
    object-fit: contain;
    transition: transform var(--transition-normal);
}
.edubros-quiz-root .quiz-logo:hover { transform: scale(1.05); }

.edubros-quiz-root .quiz-header h1,
.edubros-quiz-root .quiz-header .quiz-title {
    font-size: var(--quiz-title-size);
    font-weight: 800;
    color: var(--text-dark);
    letter-spacing: -0.02em;
    margin: 0;
}

/* ----------------------------------------------------------
   PREMIUM BUTTONS
   ---------------------------------------------------------- */
.edubros-quiz-root button { font-family: inherit; outline: none; }

.edubros-quiz-root .btn-premium-action,
.edubros-quiz-root .edubros-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: var(--btn-height);
    padding: 0 1.5rem;
    border-radius: var(--btn-radius);
    font-size: var(--edubros-button-font-size);
    font-weight: var(--edubros-button-font-weight);
    border: none;
    cursor: pointer;
    background: var(--primary-blue);
    color: #ffffff;
    transition: all var(--transition-fast);
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.2);
    position: relative;
    overflow: hidden;
    text-decoration: none;
    line-height: 1.4;
}
.edubros-quiz-root .btn-premium-action:hover:not(:disabled),
.edubros-quiz-root .edubros-btn:hover:not(:disabled) {
    background: var(--primary-blue-hover);
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(37, 99, 235, 0.3);
}
.edubros-quiz-root .btn-premium-action:active:not(:disabled),
.edubros-quiz-root .edubros-btn:active:not(:disabled) { transform: translateY(1px); }
.edubros-quiz-root .btn-premium-action:disabled,
.edubros-quiz-root .edubros-btn:disabled { opacity: 0.5; cursor: not-allowed; transform: none; box-shadow: none; }

.edubros-quiz-root .btn-content-layer {
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    transition: opacity 0.2s;
}
.edubros-quiz-root .loading-slider-track {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 0%;
    background: rgba(255, 255, 255, 0.25);
    z-index: 1;
    transition: width 0.15s linear;
}
.edubros-quiz-root .btn-premium-action.is-animating-processing .btn-content-layer {
    opacity: 0.6;
    transform: scale(0.97);
}

.edubros-quiz-root .btn-premium-full,
.edubros-quiz-root .edubros-btn-full {
    width: 100%;
    height: var(--btn-full-height);
    font-size: 1.05rem;
    margin-top: 0.5rem;
}

.edubros-quiz-root .btn-variant-neutral {
    background: var(--background-white);
    border: 1.5px solid var(--border-color);
    color: var(--text-dark);
    box-shadow: 0 2px 4px rgba(0,0,0,0.02);
}
.edubros-quiz-root .btn-variant-neutral:hover:not(:disabled) {
    background: var(--surface-muted);
    border-color: var(--border-color-hover);
}
.edubros-quiz-root .btn-variant-success {
    background: var(--success-green);
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.25);
}
.edubros-quiz-root .btn-variant-success:hover:not(:disabled) { background: var(--success-green-hover); }
.edubros-quiz-root .btn-variant-danger {
    background: var(--error-red);
    box-shadow: 0 4px 12px rgba(239, 68, 68, 0.25);
}
.edubros-quiz-root .btn-variant-danger:hover:not(:disabled) { background: var(--error-red-hover); }
.edubros-quiz-root .btn-variant-warning {
    background: var(--warning-orange);
    color: #ffffff;
    box-shadow: 0 4px 12px rgba(245, 158, 11, 0.25);
}
.edubros-quiz-root .btn-variant-warning:hover:not(:disabled) { background: var(--warning-orange-hover); }

/* Backwards-compatible aliases for the existing JS class names */
.edubros-quiz-root .edubros-btn-success { background: var(--success-green); box-shadow: 0 4px 12px rgba(16, 185, 129, 0.25); }
.edubros-quiz-root .edubros-btn-success:hover:not(:disabled) { background: var(--success-green-hover); }
.edubros-quiz-root .edubros-btn-danger { background: var(--error-red); box-shadow: 0 4px 12px rgba(239, 68, 68, 0.25); }
.edubros-quiz-root .edubros-btn-danger:hover:not(:disabled) { background: var(--error-red-hover); }
.edubros-quiz-root .edubros-btn-warning { background: var(--warning-orange); color: #fff; box-shadow: 0 4px 12px rgba(245, 158, 11, 0.25); }
.edubros-quiz-root .edubros-btn-warning:hover:not(:disabled) { background: var(--warning-orange-hover); }
.edubros-quiz-root .edubros-btn-neutral { background: var(--background-white); border: 1.5px solid var(--border-color); color: var(--text-dark); box-shadow: 0 2px 4px rgba(0,0,0,0.02); }
.edubros-quiz-root .edubros-btn-neutral:hover:not(:disabled) { background: var(--surface-muted); border-color: var(--border-color-hover); }

/* ----------------------------------------------------------
   INPUTS, SELECTS, TEXTAREAS
   ---------------------------------------------------------- */
.edubros-quiz-root .quiz-input,
.edubros-quiz-root .quiz-select,
.edubros-quiz-root .quiz-textarea,
.edubros-quiz-root .edubros-input,
.edubros-quiz-root .edubros-select,
.edubros-quiz-root .edubros-textarea {
    width: 100%;
    border: 1.5px solid var(--border-color);
    border-radius: 0.6rem;
    background: var(--input-bg);
    color: var(--text-dark);
    font-family: inherit;
    font-weight: 500;
    padding: 0.85rem 1rem;
    outline: none;
    transition: all var(--transition-fast);
    font-size: 0.95rem;
}
.edubros-quiz-root .quiz-input:focus,
.edubros-quiz-root .quiz-select:focus,
.edubros-quiz-root .quiz-textarea:focus,
.edubros-quiz-root .edubros-input:focus,
.edubros-quiz-root .edubros-select:focus,
.edubros-quiz-root .edubros-textarea:focus {
    border-color: var(--primary-blue);
    box-shadow: var(--focus-ring);
}

/* ----------------------------------------------------------
   TOGGLES (iOS-style)
   ---------------------------------------------------------- */
.edubros-quiz-root .toggle-group,
.edubros-quiz-root .edubros-toggle-group {
    display: flex;
    gap: 1.25rem;
    align-items: center;
    flex-wrap: wrap;
}
.edubros-quiz-root .toggle-wrapper,
.edubros-quiz-root .edubros-toggle-wrapper {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.95rem;
    font-weight: 600;
    cursor: pointer;
    color: var(--text-dark);
    transition: color var(--transition-normal);
}
.edubros-quiz-root .toggle-btn,
.edubros-quiz-root .edubros-toggle,
.edubros-quiz-root .edubros-toggle-btn {
    appearance: none;
    -webkit-appearance: none;
    width: 3rem;
    height: 1.6rem;
    background-color: var(--border-color);
    border-radius: 999px;
    position: relative;
    cursor: pointer;
    transition: background-color var(--transition-normal);
    outline: none;
    margin: 0;
    flex-shrink: 0;
}
.edubros-quiz-root[data-theme="dark"] .toggle-btn,
.edubros-quiz-root[data-theme="dark"] .edubros-toggle,
.edubros-quiz-root[data-theme="dark"] .edubros-toggle-btn { background-color: #475569; }
.edubros-quiz-root .toggle-btn::before,
.edubros-quiz-root .edubros-toggle::before,
.edubros-quiz-root .edubros-toggle-btn::before {
    content: '';
    position: absolute;
    width: 1.35rem;
    height: 1.35rem;
    border-radius: 50%;
    background-color: #ffffff;
    top: 2px;
    left: 2px;
    transition: transform var(--transition-normal);
    box-shadow: 0 2px 4px rgba(0,0,0,0.15);
}
.edubros-quiz-root .toggle-btn:checked,
.edubros-quiz-root .edubros-toggle:checked,
.edubros-quiz-root .edubros-toggle-btn:checked { background-color: var(--primary-blue); }
.edubros-quiz-root .toggle-btn:checked::before,
.edubros-quiz-root .edubros-toggle:checked::before,
.edubros-quiz-root .edubros-toggle-btn:checked::before { transform: translateX(1.4rem); }

/* ----------------------------------------------------------
   DASHBOARD
   ---------------------------------------------------------- */
.edubros-quiz-root #dashboard-view,
.edubros-quiz-root .edubros-dashboard {
    animation: fadeIn var(--transition-normal) forwards;
}
.edubros-quiz-root #dashboard-view h2,
.edubros-quiz-root .edubros-dashboard h2 {
    font-size: var(--dash-heading-size);
    font-weight: 800;
    margin: 0 0 0.4rem 0;
    color: var(--text-dark);
    letter-spacing: -0.01em;
}
.edubros-quiz-root .dash-subtitle,
.edubros-quiz-root .edubros-dashboard-subtitle {
    color: var(--text-medium);
    font-size: 1rem;
    margin: 0 0 1.5rem 0;
    font-weight: 500;
}

.edubros-quiz-root .stats-panel,
.edubros-quiz-root .edubros-stats-panel {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    border: 1.5px solid var(--border-color);
    border-radius: 1.25rem;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
    background: var(--background-white);
    transition: all var(--transition-normal);
    box-shadow: 0 4px 6px rgba(0,0,0,0.02);
}
.edubros-quiz-root .stat-item,
.edubros-quiz-root .edubros-stat-item {
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.edubros-quiz-root .stat-item:not(:last-child),
.edubros-quiz-root .edubros-stat-item:not(:last-child) {
    border-right: 1.5px solid var(--border-color);
}
.edubros-quiz-root .stat-value,
.edubros-quiz-root .edubros-stat-value {
    font-size: 2.2rem;
    font-weight: 800;
    color: var(--primary-blue);
    line-height: 1.1;
}
.edubros-quiz-root .stat-label,
.edubros-quiz-root .edubros-stat-label {
    font-size: 0.75rem;
    color: var(--text-light);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-top: 0.4rem;
}

.edubros-quiz-root .dash-card,
.edubros-quiz-root .edubros-dash-card {
    border: 1.5px solid var(--border-color);
    border-radius: 1.25rem;
    padding: 1.5rem;
    margin-bottom: 1rem;
    background: var(--background-white);
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    transition: border-color var(--transition-normal), box-shadow var(--transition-normal), transform var(--transition-fast);
}
.edubros-quiz-root .dash-card:hover,
.edubros-quiz-root .edubros-dash-card:hover {
    border-color: var(--primary-blue-hover);
    box-shadow: 0 4px 15px var(--primary-blue-muted);
    transform: translateY(-1px);
}
.edubros-quiz-root .dash-card-row,
.edubros-quiz-root .edubros-dash-card-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    gap: 1rem;
    flex-wrap: wrap;
}
.edubros-quiz-root .edubros-mode-card p {
    margin: 0;
    color: var(--text-medium);
    font-size: .9rem;
    line-height: 1.55;
}
.edubros-quiz-root .edubros-revision-sheet {
    display: grid;
    gap: 1rem;
}
.edubros-quiz-root .edubros-revision-hero {
    padding: 1rem;
    border: 1px solid var(--primary-blue-muted);
    border-radius: 1rem;
    background: var(--light-blue-bg);
}
.edubros-quiz-root .edubros-revision-hero strong {
    display: block;
    color: var(--text-dark);
    font-size: 1.05rem;
}
.edubros-quiz-root .edubros-revision-hero span {
    color: var(--text-medium);
    font-size: .9rem;
}
.edubros-quiz-root .edubros-revision-block,
.edubros-quiz-root .edubros-revision-topic {
    padding: 1rem;
    border: 1px solid var(--border-color);
    border-radius: 1rem;
    background: var(--background-white);
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.05);
}
.edubros-quiz-root .edubros-revision-block h4,
.edubros-quiz-root .edubros-revision-topic h4 {
    margin: 0 0 .7rem;
    color: var(--text-dark);
    font-size: .98rem;
}
.edubros-quiz-root .edubros-revision-topic h4 span {
    color: var(--text-light);
    font-size: .78rem;
    font-weight: 700;
}
.edubros-quiz-root .edubros-revision-block ul {
    margin: 0;
    padding-left: 1.1rem;
    display: grid;
    gap: .45rem;
    color: var(--text-medium);
    line-height: 1.55;
}
.edubros-quiz-root .edubros-revision-block li::marker {
    color: var(--primary-blue);
}
.edubros-quiz-root .edubros-revision-topics {
    display: grid;
    gap: 1rem;
}
@media (min-width: 780px) {
    .edubros-quiz-root .edubros-revision-sheet {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: start;
    }
    .edubros-quiz-root .edubros-revision-hero,
    .edubros-quiz-root .edubros-revision-topics {
        grid-column: 1 / -1;
    }
}
.edubros-quiz-root.edubros-a11y-high-contrast {
    --primary-blue: #0039a6;
    --text-dark: #020617;
    --text-medium: #0f172a;
    --border-color: #0f172a;
    --background-white: #ffffff;
    --light-blue-bg: #e0f2fe;
}
.edubros-quiz-root.edubros-a11y-high-contrast .edubros-option,
.edubros-quiz-root.edubros-a11y-high-contrast .edubros-btn,
.edubros-quiz-root.edubros-a11y-high-contrast .edubros-dash-card {
    border-width: 2px !important;
}
.edubros-quiz-root.edubros-a11y-dyslexia-font {
    font-family: Verdana, Tahoma, Arial, sans-serif;
    letter-spacing: .01em;
    word-spacing: .08em;
}
.edubros-quiz-root.edubros-a11y-reduced-motion *,
.edubros-quiz-root.edubros-a11y-reduced-motion *::before,
.edubros-quiz-root.edubros-a11y-reduced-motion *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .001ms !important;
}
.edubros-quiz-root .dash-label,
.edubros-quiz-root .edubros-dash-label {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-dark);
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.edubros-quiz-root .search-results,
.edubros-quiz-root .edubros-search-results {
    display: none;
    margin-top: 0.75rem;
    max-height: 250px;
    overflow-y: auto;
    border-top: 1.5px solid var(--border-color);
    padding-top: 1rem;
}
.edubros-quiz-root .search-result-item,
.edubros-quiz-root .edubros-search-result-item {
    width: 100%;
    text-align: left;
    border: 1.5px solid var(--border-color);
    background: var(--surface-muted);
    color: var(--text-dark);
    border-radius: 0.75rem;
    padding: 1rem;
    margin-bottom: 0.5rem;
    cursor: pointer;
    font-weight: 600;
    font-size: 0.95rem;
    transition: all var(--transition-fast);
    font-family: inherit;
}
.edubros-quiz-root .search-result-item:hover,
.edubros-quiz-root .edubros-search-result-item:hover {
    border-color: var(--primary-blue);
    transform: translateX(6px);
    background: var(--background-white);
    box-shadow: 0 4px 10px rgba(0,0,0,0.05);
}

/* ----------------------------------------------------------
   QUIZ VIEW — INFO BAR + UTILITY BUTTONS
   ---------------------------------------------------------- */
.edubros-quiz-root #quiz-layout-wrapper,
.edubros-quiz-root .edubros-quiz-view {
    animation: fadeIn var(--transition-normal) forwards;
}
.edubros-quiz-root .info-bar,
.edubros-quiz-root .edubros-info-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
    padding-bottom: 1.5rem;
    border-bottom: 1.5px solid var(--border-color);
    margin-bottom: 2rem;
}
.edubros-quiz-root .progress-tracker,
.edubros-quiz-root .edubros-progress-tracker {
    display: flex;
    align-items: center;
    font-size: 1.1rem;
    font-weight: 800;
    color: var(--text-medium);
    gap: 1rem;
    flex-wrap: wrap;
}

.edubros-quiz-root .timer-badge,
.edubros-quiz-root .edubros-timer-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background-color: var(--error-red-bg);
    color: var(--error-red-text);
    padding: 0.5rem 1rem;
    border-radius: 999px;
    font-size: 0.9rem;
    font-weight: 700;
    border: 1.5px solid rgba(239, 68, 68, 0.3);
}
.edubros-quiz-root .timer-badge.warning { animation: pulseRed 1.5s infinite; }

.edubros-quiz-root .utility-btn,
.edubros-quiz-root .edubros-utility-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    height: var(--utility-btn-height);
    padding: 0 0.85rem;
    font-size: 0.9rem;
    font-weight: 700;
    border-radius: 0.6rem;
    border: 1.5px solid var(--border-color);
    background: var(--background-white);
    color: var(--text-medium);
    cursor: pointer;
    transition: all var(--transition-fast);
    font-family: inherit;
    outline: none;
}
.edubros-quiz-root .utility-btn:hover,
.edubros-quiz-root .edubros-utility-btn:hover {
    background: var(--surface-muted);
    color: var(--text-dark);
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.05);
}
.edubros-quiz-root .utility-btn:active,
.edubros-quiz-root .edubros-utility-btn:active { transform: translateY(1px); }
.edubros-quiz-root .utility-btn.edubros-flagged,
.edubros-quiz-root .edubros-utility-btn.edubros-flagged {
    color: var(--warning-orange-hover);
    border-color: var(--warning-orange-hover);
    background: var(--warning-orange-bg);
}

.edubros-quiz-root .zoom-controls,
.edubros-quiz-root .edubros-zoom-controls {
    display: flex;
    gap: 0.4rem;
}
.edubros-quiz-root .zoom-controls .utility-btn,
.edubros-quiz-root .zoom-controls .edubros-utility-btn,
.edubros-quiz-root .edubros-zoom-controls .utility-btn,
.edubros-quiz-root .edubros-zoom-controls .edubros-utility-btn {
    padding: 0 0.6rem;
}

.edubros-quiz-root .voice-btn.listening,
.edubros-quiz-root .edubros-voice-btn.listening {
    background: var(--error-red-bg);
    color: var(--error-red-hover);
    border-color: rgba(239,68,68,0.5);
    animation: pulseRed 1.5s infinite;
}
.edubros-quiz-root .edubros-fullscreen-btn.active,
.edubros-quiz-root .edubros-fullscreen-btn.active:hover {
    background: var(--primary-blue-muted);
    border-color: var(--primary-blue);
    color: var(--primary-blue);
    box-shadow: 0 8px 18px rgba(37, 99, 235, 0.18);
}
.edubros-quiz-root.edubros-fullscreen-active,
.edubros-quiz-root:fullscreen,
.edubros-quiz-root:-webkit-full-screen {
    width: 100vw;
    min-height: 100vh;
    overflow: auto;
    background: var(--background-light);
}
.edubros-quiz-root.edubros-fullscreen-active .quiz-body-wrapper,
.edubros-quiz-root:fullscreen .quiz-body-wrapper,
.edubros-quiz-root:-webkit-full-screen .quiz-body-wrapper {
    min-height: 100vh;
    display: flex;
    align-items: center;
}
@keyframes pulseRed {
    0% { box-shadow: 0 0 0 0 rgba(239,68,68,0.5); }
    70% { box-shadow: 0 0 0 8px rgba(239,68,68,0); }
    100% { box-shadow: 0 0 0 0 rgba(239,68,68,0); }
}

/* Mobile toolbar */
.edubros-quiz-root .edubros-mobile-toolbar-toggle {
    display: none;
    margin-bottom: 0.75rem;
}
.edubros-quiz-root .edubros-mobile-toolbar {
    display: none;
    flex-direction: column;
    gap: 0.75rem;
    margin-bottom: 1rem;
    padding: 0.75rem;
    border: 1.5px solid var(--border-color);
    border-radius: 0.75rem;
    background: var(--surface-muted);
}
.edubros-quiz-root .edubros-mobile-toolbar.active { display: flex; }
.edubros-quiz-root .edubros-mobile-toolbar-row {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    align-items: center;
}

/* ----------------------------------------------------------
   QUESTIONS & OPTIONS
   ---------------------------------------------------------- */
.edubros-quiz-root .question-area,
.edubros-quiz-root .edubros-question-area {
    animation: slideUpFade 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
.edubros-quiz-root .question-area h2,
.edubros-quiz-root .edubros-question-text {
    font-size: var(--edubros-question-font-size);
    font-weight: var(--edubros-question-font-weight);
    line-height: 1.6;
    margin-bottom: 1.75rem;
    color: var(--text-dark);
    transition: color var(--transition-normal);
}

.edubros-quiz-root .question-media {
    margin-bottom: 1.5rem;
}
.edubros-quiz-root .question-media img,
.edubros-quiz-root .question-media video {
    max-width: 100%;
    height: auto;
    border-radius: 0.75rem;
    border: 1.5px solid var(--border-color);
}
.edubros-quiz-root .question-media audio { width: 100%; }

.edubros-quiz-root .options-list,
.edubros-quiz-root .edubros-options-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: var(--edubros-option-gap);
}
.edubros-quiz-root .option,
.edubros-quiz-root .edubros-option {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 1rem;
    padding: var(--edubros-option-padding);
    border: var(--edubros-option-border-width) solid var(--border-color);
    border-radius: var(--edubros-option-radius);
    cursor: pointer;
    transition: all var(--transition-fast);
    font-weight: var(--edubros-option-font-weight);
    font-size: var(--edubros-option-font-size);
    background-color: var(--background-white);
    color: var(--text-dark);
    line-height: 1.5;
    font-family: inherit;
    text-align: left;
    width: 100%;
    outline: none;
}
.edubros-quiz-root .option:not(.disabled):not(.locked):hover,
.edubros-quiz-root .edubros-option:not(.disabled):not(.locked):hover {
    border-color: var(--primary-blue);
    background-color: var(--light-blue-bg);
    transform: translateX(var(--edubros-option-hover-translate));
    box-shadow: 0 4px 12px var(--primary-blue-muted);
}
.edubros-quiz-root .option.disabled,
.edubros-quiz-root .option.locked,
.edubros-quiz-root .edubros-option.disabled,
.edubros-quiz-root .edubros-option.locked {
    cursor: default;
    pointer-events: none;
}
.edubros-quiz-root .option.selected,
.edubros-quiz-root .edubros-option.selected {
    border-color: var(--primary-blue);
    background-color: var(--light-blue-bg);
    color: var(--primary-blue-hover);
    font-weight: 700;
}
.edubros-quiz-root .option.selected.incorrect,
.edubros-quiz-root .edubros-option.selected.incorrect {
    border-color: var(--error-red-hover);
    background-color: var(--error-red-bg);
    color: var(--error-red-text);
}
.edubros-quiz-root .option.correct,
.edubros-quiz-root .edubros-option.correct {
    border-color: var(--success-green-hover);
    background-color: var(--success-green-bg);
    color: var(--success-green-text);
    box-shadow: 0 4px 15px rgba(16, 185, 129, 0.15);
}

.edubros-quiz-root .option-main,
.edubros-quiz-root .edubros-option-main {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex: 1;
}
.edubros-quiz-root .option-letter,
.edubros-quiz-root .edubros-option-letter {
    width: var(--edubros-option-letter-size);
    height: var(--edubros-option-letter-size);
    border-radius: var(--edubros-option-letter-radius);
    border: 1.5px solid var(--border-color);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 var(--edubros-option-letter-size);
    font-weight: 800;
    font-size: 0.95rem;
    color: var(--text-medium);
    background: var(--surface-muted);
    transition: all var(--transition-normal);
}
.edubros-quiz-root .option.correct .option-letter,
.edubros-quiz-root .edubros-option.correct .edubros-option-letter {
    background: var(--success-green-hover);
    border-color: var(--success-green-hover);
    color: white;
}
.edubros-quiz-root .option.selected.incorrect .option-letter,
.edubros-quiz-root .edubros-option.selected.incorrect .edubros-option-letter {
    background: var(--error-red-hover);
    border-color: var(--error-red-hover);
    color: white;
}
.edubros-quiz-root .option.selected .option-letter,
.edubros-quiz-root .edubros-option.selected .edubros-option-letter {
    border-color: var(--primary-blue);
    background: var(--primary-blue);
    color: white;
}

.edubros-quiz-root .opt-feedback-icon,
.edubros-quiz-root .edubros-option-feedback {
    margin-left: auto;
    display: flex;
    align-items: center;
    animation: scaleUp 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.edubros-quiz-root .mock-warning {
    display: none;
    margin-bottom: 1.5rem;
    padding: 1.25rem;
    border-radius: 0.75rem;
    background: var(--warning-orange-bg);
    color: var(--warning-orange-text);
    font-weight: 700;
    font-size: 0.95rem;
    border: 1.5px solid rgba(245, 158, 11, 0.4);
}

/* ----------------------------------------------------------
   FOCUS TOOLS
   ---------------------------------------------------------- */
.edubros-quiz-root .quick-tools,
.edubros-quiz-root .edubros-quick-tools {
    display: flex;
    gap: 1rem;
    margin-top: var(--edubros-explanation-top-margin);
    flex-wrap: wrap;
}

.edubros-quiz-root .focus-tools-wrapper,
.edubros-quiz-root .edubros-focus-tools {
    display: none;
    margin-top: 2rem;
    padding-top: 2rem;
    border-top: 1.5px solid var(--border-color);
    animation: fadeIn var(--transition-normal);
}
.edubros-quiz-root .focus-tools-wrapper.active,
.edubros-quiz-root .edubros-focus-tools.active { display: block; }

.edubros-quiz-root .focus-tools-header,
.edubros-quiz-root .edubros-focus-tools-header {
    font-size: 0.9rem;
    font-weight: 800;
    color: var(--text-medium);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 1.25rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.edubros-quiz-root .focus-grid,
.edubros-quiz-root .edubros-focus-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.25rem;
    margin-bottom: 1.25rem;
}
.edubros-quiz-root .focus-card,
.edubros-quiz-root .edubros-focus-card {
    background: var(--surface-muted);
    border: 1.5px solid var(--border-color);
    border-radius: 1rem;
    padding: 1.25rem;
    transition: border-color var(--transition-normal), box-shadow var(--transition-normal);
}
.edubros-quiz-root .focus-card:focus-within,
.edubros-quiz-root .edubros-focus-card:focus-within {
    border-color: var(--primary-blue);
    box-shadow: 0 0 0 4px var(--primary-blue-muted);
    background: var(--background-white);
}
.edubros-quiz-root .focus-card label,
.edubros-quiz-root .edubros-focus-card label {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    font-size: 0.95rem;
    font-weight: 800;
    color: var(--text-dark);
    margin-bottom: 0.75rem;
}
.edubros-quiz-root .focus-card .quiz-textarea,
.edubros-quiz-root .focus-card .edubros-textarea,
.edubros-quiz-root .edubros-focus-card .quiz-textarea,
.edubros-quiz-root .edubros-focus-card .edubros-textarea {
    border: none;
    padding: 0;
    background: transparent;
    min-height: 90px;
    resize: vertical;
    box-shadow: none;
    font-size: 0.95rem;
    font-weight: 500;
}

.edubros-quiz-root .voice-instruction-box {
    width: 100%;
    text-align: center;
    padding: 1rem;
    border-radius: 0.75rem;
    border: 1.5px dashed var(--border-color-hover);
    background: var(--surface-muted);
    color: var(--text-medium);
    font-size: 0.9rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.6rem;
}

/* ----------------------------------------------------------
   NAVIGATION FOOTER
   ---------------------------------------------------------- */
.edubros-quiz-root .navigation-footer,
.edubros-quiz-root .edubros-navigation-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 2.5rem;
    padding-top: 2rem;
    border-top: 1.5px solid var(--border-color);
    flex-wrap: wrap;
    gap: 1rem;
}
.edubros-quiz-root .go-to-container,
.edubros-quiz-root .edubros-go-to-container {
    display: flex;
    align-items: center;
    border: 1.5px solid var(--border-color);
    border-radius: 0.75rem;
    background: var(--input-bg);
    padding: 2px;
    height: var(--btn-height);
    transition: border-color var(--transition-normal), box-shadow var(--transition-normal);
}
.edubros-quiz-root .go-to-container:focus-within,
.edubros-quiz-root .edubros-go-to-container:focus-within {
    border-color: var(--primary-blue);
    box-shadow: var(--focus-ring);
}
.edubros-quiz-root .go-to-container input,
.edubros-quiz-root .edubros-goto-input {
    width: 3.5rem;
    height: 100%;
    border: none;
    outline: none;
    text-align: center;
    font-weight: 800;
    background: transparent;
    color: var(--text-dark);
    font-size: 1rem;
    font-family: inherit;
}
.edubros-quiz-root .go-to-container button,
.edubros-quiz-root #go-to-btn,
.edubros-quiz-root .edubros-goto-btn {
    height: 100%;
    padding: 0 1rem;
    background: var(--surface-muted);
    color: var(--text-dark);
    border-radius: 0.5rem;
    border: none;
    cursor: pointer;
    font-weight: 800;
    transition: background var(--transition-fast);
    font-family: inherit;
    outline: none;
}
.edubros-quiz-root .go-to-container button:hover,
.edubros-quiz-root #go-to-btn:hover,
.edubros-quiz-root .edubros-goto-btn:hover { background: var(--border-color); }

/* ----------------------------------------------------------
   PREMIUM EXPLANATION
   ---------------------------------------------------------- */
.edubros-quiz-root .explanation-box,
.edubros-quiz-root .edubros-explanation-box {
    display: none;
    margin-top: 2.5rem;
    animation: slideUpFade var(--transition-normal) forwards;
}
.edubros-quiz-root .explanation-box.active,
.edubros-quiz-root .edubros-explanation-box.active { display: block; }

.edubros-quiz-root .expl-premium-header,
.edubros-quiz-root .edubros-expl-premium-header {
    background: linear-gradient(90deg, #0f172a, #1e293b);
    color: white;
    padding: var(--edubros-explanation-header-padding);
    font-size: var(--edubros-explanation-header-font-size);
    font-weight: 800;
    border-radius: 1rem 1rem 0 0;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    letter-spacing: 0.02em;
}
.edubros-quiz-root .edubros-explanation-actions {
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    margin-left: auto;
}
.edubros-quiz-root .edubros-explanation-speech {
    width: 1.75rem;
    height: 1.75rem;
    min-width: 1.75rem;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 0.42rem;
    background: rgba(255, 255, 255, 0.1);
    color: currentColor;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}
.edubros-quiz-root .edubros-explanation-speech:hover,
.edubros-quiz-root .edubros-explanation-speech:focus-visible {
    background: rgba(255, 255, 255, 0.22);
    outline: 2px solid rgba(255, 255, 255, 0.75);
    outline-offset: 1px;
}
.edubros-quiz-root[data-theme="dark"] .expl-premium-header,
.edubros-quiz-root[data-theme="dark"] .edubros-expl-premium-header {
    background: linear-gradient(90deg, #000000, #1e293b);
}

.edubros-quiz-root .explanation-content,
.edubros-quiz-root .edubros-explanation-content {
    background-color: var(--background-white);
    border: 1.5px solid var(--border-color);
    border-top: none;
    border-radius: 0 0 1rem 1rem;
    padding: var(--edubros-explanation-content-padding);
    line-height: var(--edubros-explanation-line-height);
    color: var(--text-dark);
    font-size: var(--edubros-explanation-font-size);
    box-shadow: 0 4px 20px rgba(0,0,0,0.03);
}
.edubros-quiz-root .explanation-content p,
.edubros-quiz-root .edubros-explanation-content p {
    margin-top: 0;
    margin-bottom: 1.25rem;
}

.edubros-quiz-root .expl-list,
.edubros-quiz-root .edubros-expl-list {
    margin: 0 0 1.5rem 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
}
.edubros-quiz-root .expl-list li,
.edubros-quiz-root .edubros-expl-list li {
    background: var(--surface-muted);
    border: 1.5px solid var(--border-color);
    padding: 1.15rem 1.5rem;
    border-radius: 0.75rem;
    border-left: 5px solid var(--primary-blue);
    font-size: 0.95rem;
    transition: background var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);
}
.edubros-quiz-root .expl-list li:hover,
.edubros-quiz-root .edubros-expl-list li:hover {
    background: var(--background-white);
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
    transform: translateX(2px);
}
.edubros-quiz-root .expl-list-title,
.edubros-quiz-root .edubros-expl-list-title {
    color: var(--primary-blue);
    font-weight: 800;
    display: inline-block;
    margin-bottom: 0.35rem;
    font-size: 1.05rem;
}

.edubros-quiz-root .exam-hook-wrapper,
.edubros-quiz-root .edubros-exam-hook,
.edubros-quiz-root .edubros-exam-hook-wrapper {
    margin-top: 2rem;
    background: linear-gradient(to right, var(--warning-orange-bg), #fefce8);
    border: 1.5px solid #fde047;
    border-left: 6px solid var(--warning-orange);
    border-radius: 0.75rem;
    padding: 1.5rem;
    box-shadow: 0 4px 15px rgba(245, 158, 11, 0.08);
}
.edubros-quiz-root[data-theme="dark"] .exam-hook-wrapper,
.edubros-quiz-root[data-theme="dark"] .edubros-exam-hook,
.edubros-quiz-root[data-theme="dark"] .edubros-exam-hook-wrapper {
    background: #422006;
    border-color: #78350f;
    border-left-color: #d97706;
}
.edubros-quiz-root .exam-hook-header,
.edubros-quiz-root .edubros-exam-hook-header {
    color: #b45309;
    font-size: 1.1rem;
    font-weight: 800;
    margin-bottom: 0.75rem;
    display: flex;
    align-items: center;
    gap: 0.6rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}
.edubros-quiz-root[data-theme="dark"] .exam-hook-header,
.edubros-quiz-root[data-theme="dark"] .edubros-exam-hook-header { color: #fde047; }
.edubros-quiz-root .exam-hook-wrapper p,
.edubros-quiz-root .edubros-exam-hook p,
.edubros-quiz-root .edubros-exam-hook-wrapper p {
    font-size: 1rem;
    margin: 0;
    color: #78350f;
    font-weight: 600;
    line-height: 1.6;
}
.edubros-quiz-root[data-theme="dark"] .exam-hook-wrapper p,
.edubros-quiz-root[data-theme="dark"] .edubros-exam-hook p,
.edubros-quiz-root[data-theme="dark"] .edubros-exam-hook-wrapper p { color: #fefce8; }

.edubros-quiz-root .text-highlight {
    background: var(--warning-orange-bg);
    padding: 2px 8px;
    border-radius: 4px;
    font-weight: 800;
    color: #92400e;
    border-bottom: 2px solid #ca8a04;
}
.edubros-quiz-root[data-theme="dark"] .text-highlight {
    background: #78350f;
    color: #fde047;
    border-bottom-color: #d97706;
}

.edubros-quiz-root .edubros-notes-link-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 1rem;
    padding: 0.6rem 1rem;
    background: var(--primary-blue);
    color: #fff;
    border-radius: 0.6rem;
    text-decoration: none;
    font-weight: 700;
    font-size: 0.9rem;
    transition: all var(--transition-fast);
}
.edubros-quiz-root .edubros-notes-link-btn:hover {
    background: var(--primary-blue-hover);
    transform: translateY(-1px);
}

/* ----------------------------------------------------------
   MODALS (Map + Revision Sheet)
   ---------------------------------------------------------- */
.edubros-quiz-root .sidebar-modal,
.edubros-quiz-root .edubros-modal {
    display: none;
    position: fixed;
    inset: 0;
    background-color: var(--overlay-bg);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    z-index: 1000;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
}
.edubros-quiz-root .sidebar-modal.active,
.edubros-quiz-root .edubros-modal.active { display: flex; }

.edubros-quiz-root .sidebar-modal-content,
.edubros-quiz-root .edubros-modal-content {
    background: var(--background-white);
    width: 100%;
    max-width: 550px;
    border-radius: 1.25rem;
    padding: 2rem;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.35);
    animation: scaleUp var(--transition-normal);
    max-height: 90vh;
    overflow-y: auto;
    border: 1.5px solid var(--border-color);
}
.edubros-quiz-root .sidebar-modal-content.wide-drawer,
.edubros-quiz-root .sidebar-modal-content.wide,
.edubros-quiz-root .edubros-modal-content.wide { max-width: 850px; }

.edubros-quiz-root .sidebar-modal-header,
.edubros-quiz-root .edubros-modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.5rem;
}
.edubros-quiz-root .sidebar-modal-header h3,
.edubros-quiz-root .edubros-modal-header h3 {
    font-size: 1.35rem;
    font-weight: 800;
    margin: 0;
    color: var(--text-dark);
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

.edubros-quiz-root .close-btn,
.edubros-quiz-root .edubros-close-btn {
    background: var(--surface-muted);
    border: none;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--text-medium);
    transition: all var(--transition-fast);
    font-family: inherit;
}
.edubros-quiz-root .close-btn:hover,
.edubros-quiz-root .edubros-close-btn:hover {
    color: var(--error-red);
    background: var(--error-red-bg);
    transform: rotate(90deg) scale(1.1);
}

/* Question Map grid */
.edubros-quiz-root .questions-grid,
.edubros-quiz-root .edubros-questions-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(3.2rem, 1fr));
    gap: 0.6rem;
}
.edubros-quiz-root .grid-item,
.edubros-quiz-root .edubros-grid-item {
    height: 3.2rem;
    border-radius: 0.6rem;
    border: 1.5px solid var(--border-color);
    background: var(--surface-muted);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 1rem;
    cursor: pointer;
    color: var(--text-medium);
    position: relative;
    transition: all var(--transition-fast);
    font-family: inherit;
}
.edubros-quiz-root .grid-item:hover,
.edubros-quiz-root .edubros-grid-item:hover {
    border-color: var(--text-light);
    color: var(--text-dark);
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.05);
}
.edubros-quiz-root .grid-item.current,
.edubros-quiz-root .edubros-grid-item.current {
    border-color: var(--primary-blue);
    color: var(--primary-blue);
    background: var(--light-blue-bg);
    box-shadow: var(--focus-ring);
}
.edubros-quiz-root .grid-item.answered,
.edubros-quiz-root .edubros-grid-item.answered {
    background: var(--border-color);
    color: var(--text-dark);
}
.edubros-quiz-root .grid-item.flagged,
.edubros-quiz-root .edubros-grid-item.flagged {
    border-color: var(--warning-orange-hover);
    background: var(--warning-orange-bg);
    color: var(--warning-orange-text);
}
.edubros-quiz-root .edubros-map-modal-content { max-width: 760px; }
.edubros-quiz-root .edubros-map-stats {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
    gap: 8px;
    margin-bottom: 14px;
}
.edubros-quiz-root .edubros-map-stats span {
    border: 1px solid var(--border-color);
    background: var(--surface-muted);
    border-radius: 8px;
    padding: 8px 10px;
    font-size: 0.82rem;
    color: var(--text-medium);
}
.edubros-quiz-root .edubros-map-stats strong { display: block; color: var(--text-dark); font-size: 1rem; }
.edubros-quiz-root .edubros-map-toolbar {
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 14px;
}
.edubros-quiz-root .edubros-map-filters { display: flex; flex-wrap: wrap; gap: 6px; }
.edubros-quiz-root .edubros-map-filter {
    border: 1px solid var(--border-color);
    background: var(--surface-muted);
    color: var(--text-medium);
    border-radius: 999px;
    padding: 7px 11px;
    font-weight: 800;
    cursor: pointer;
}
.edubros-quiz-root .edubros-map-filter.active {
    border-color: var(--primary-blue);
    background: var(--light-blue-bg);
    color: var(--primary-blue);
}
.edubros-quiz-root .edubros-map-search {
    min-width: 180px;
    border: 1.5px solid var(--border-color);
    border-radius: 8px;
    padding: 9px 11px;
}
.edubros-quiz-root .edubros-grid-item.correct,
.edubros-quiz-root .edubros-mini-map-item.correct { border-color: var(--success-green); background: var(--success-green-bg); color: var(--success-green-text); }
.edubros-quiz-root .edubros-grid-item.incorrect,
.edubros-quiz-root .edubros-mini-map-item.incorrect { border-color: var(--error-red); background: var(--error-red-bg); color: var(--error-red-text); }
.edubros-quiz-root .edubros-grid-item.skipped,
.edubros-quiz-root .edubros-mini-map-item.skipped { border-style: dashed; }
.edubros-quiz-root .edubros-grid-item.has-explanation::after,
.edubros-quiz-root .edubros-mini-map-item.has-explanation::after {
    content: "";
    position: absolute;
    bottom: 5px;
    width: 5px;
    height: 5px;
    border-radius: 999px;
    background: currentColor;
}
.edubros-quiz-root .edubros-grid-item i,
.edubros-quiz-root .edubros-mini-map-item i {
    position: absolute;
    top: 3px;
    right: 5px;
    font-style: normal;
    font-size: 0.72rem;
}
.edubros-quiz-root .edubros-mini-map {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(24px, 1fr));
    gap: 5px;
    margin-bottom: 12px;
}
.edubros-quiz-root .edubros-mini-map-item {
    min-width: 24px;
    height: 24px;
    border-radius: 6px;
    border: 1px solid var(--border-color);
    background: var(--surface-muted);
    color: var(--text-medium);
    font-size: 0.7rem;
    font-weight: 900;
    cursor: pointer;
    position: relative;
}
.edubros-quiz-root .edubros-mini-map-item.current {
    outline: 2px solid var(--primary-blue);
    outline-offset: 1px;
}
.edubros-quiz-root .edubros-shortcut-help {
    color: var(--text-light);
    font-size: 0.82rem;
    font-weight: 800;
    align-self: center;
}
.edubros-quiz-root .edubros-review-map {
    border: 1.5px solid var(--border-color);
    border-radius: 8px;
    padding: 14px;
    margin: 18px 0;
    text-align: left;
}
.edubros-quiz-root .edubros-review-map-head {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
    color: var(--text-medium);
}
.edubros-quiz-root .edubros-review-map-head strong { color: var(--text-dark); }
.edubros-quiz-root .edubros-review-item-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-bottom: 10px;
}
.edubros-quiz-root .edubros-review-item-meta span,
.edubros-quiz-root .edubros-review-answer-line {
    background: var(--surface-muted);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    padding: 7px 10px;
    color: var(--text-medium);
    font-size: 0.9rem;
}
.edubros-quiz-root .edubros-review-answer-line { margin-bottom: 8px; }
.edubros-quiz-root .edubros-map-empty {
    grid-column: 1 / -1;
    color: var(--text-medium);
    padding: 12px;
    text-align: center;
}
.edubros-quiz-root .grid-flag-svg {
    position: absolute;
    top: 4px;
    right: 4px;
    color: var(--warning-orange-hover);
    width: 14px;
    height: 14px;
}

/* Revision Sheet grid */
.edubros-quiz-root .formula-grid,
.edubros-quiz-root .edubros-formula-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 15px;
}
.edubros-quiz-root .formula-card,
.edubros-quiz-root .edubros-formula-card {
    background: var(--surface-muted);
    border: 1.5px solid var(--border-color);
    border-radius: 12px;
    padding: 18px;
    line-height: 1.6;
    color: var(--text-medium);
    font-weight: 600;
    font-size: 0.95rem;
    transition: transform var(--transition-fast), border-color var(--transition-fast);
}
.edubros-quiz-root .formula-card:hover,
.edubros-quiz-root .edubros-formula-card:hover {
    transform: translateY(-2px);
    border-color: var(--primary-blue-muted);
}
.edubros-quiz-root .formula-card strong,
.edubros-quiz-root .edubros-formula-card strong {
    color: var(--primary-blue);
    display: block;
    margin-bottom: 6px;
    font-weight: 800;
    font-size: 1.05rem;
}

/* ----------------------------------------------------------
   SUMMARY SCREEN
   ---------------------------------------------------------- */
.edubros-quiz-root .summary-screen,
.edubros-quiz-root .edubros-summary {
    display: none;
    text-align: center;
    width: 100%;
    animation: fadeIn var(--transition-normal) forwards;
}
.edubros-quiz-root .summary-screen.active,
.edubros-quiz-root .edubros-summary.active { display: block; }

.edubros-quiz-root .summary-card,
.edubros-quiz-root .edubros-summary-card {
    background: var(--surface-muted);
    border: 1.5px solid var(--border-color);
    border-radius: 1.25rem;
    padding: 2.5rem;
    margin-bottom: 1.75rem;
    box-shadow: inset 0 2px 6px rgba(0,0,0,0.02);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.edubros-quiz-root .score-ring,
.edubros-quiz-root .edubros-score-ring {
    width: 160px;
    height: 160px;
    border-radius: 50%;
    background: var(--border-color);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin-bottom: 1.5rem;
    box-shadow: 0 4px 15px rgba(0,0,0,0.08);
    transition: background 1s ease-out;
}
.edubros-quiz-root .score-ring::before,
.edubros-quiz-root .edubros-score-ring::before {
    content: '';
    position: absolute;
    width: 124px;
    height: 124px;
    background: var(--surface-muted);
    border-radius: 50%;
}
.edubros-quiz-root .score-number,
.edubros-quiz-root .edubros-score-number {
    position: relative;
    z-index: 1;
    font-size: 2.8rem;
    font-weight: 800;
    color: var(--text-dark);
    letter-spacing: -0.02em;
}

.edubros-quiz-root .result-stats-badges,
.edubros-quiz-root .edubros-result-badges {
    display: flex;
    gap: 1rem;
    justify-content: center;
    margin-top: 1.5rem;
    flex-wrap: wrap;
}
.edubros-quiz-root .badge-result,
.edubros-quiz-root .edubros-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    border-radius: 0.6rem;
    font-size: 0.95rem;
    font-weight: 800;
}
.edubros-quiz-root .badge-correct,
.edubros-quiz-root .edubros-badge-correct {
    background-color: var(--success-green-bg);
    color: var(--success-green-text);
    border: 1.5px solid rgba(16, 185, 129, 0.25);
}
.edubros-quiz-root .badge-incorrect,
.edubros-quiz-root .edubros-badge-incorrect {
    background-color: var(--error-red-bg);
    color: var(--error-red-text);
    border: 1.5px solid rgba(239, 68, 68, 0.25);
}
.edubros-quiz-root .edubros-badge-skipped {
    background-color: var(--surface-muted);
    color: var(--text-medium);
    border: 1.5px solid var(--border-color);
}

.edubros-quiz-root .edubros-result-meta {
    display: flex;
    gap: 1.5rem;
    justify-content: center;
    margin-top: 1.5rem;
    flex-wrap: wrap;
}
.edubros-quiz-root .edubros-meta-item {
    text-align: center;
    font-size: 0.85rem;
    color: var(--text-medium);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}
.edubros-quiz-root .edubros-meta-item strong {
    display: block;
    font-size: 1.4rem;
    color: var(--text-dark);
    text-transform: none;
    letter-spacing: 0;
    margin-top: 0.25rem;
}
.edubros-quiz-root .edubros-percentile-text {
    color: var(--text-medium);
    font-size: 0.95rem;
    margin-top: 1rem;
    font-weight: 600;
}

.edubros-quiz-root .edubros-result-actions {
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
}

/* Guest identity form modal */
.edubros-quiz-root .edubros-form-row {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    margin-bottom: 1rem;
}
.edubros-quiz-root .edubros-form-row label {
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--text-dark);
}

/* ----------------------------------------------------------
   SECURITY OVERLAY + WATERMARK + WARNING BANNER
   ---------------------------------------------------------- */
.edubros-quiz-root .edubros-warning-banner {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1100;
    padding: 0.75rem 1.25rem;
    background: var(--error-red);
    color: #fff;
    font-weight: 700;
    text-align: center;
    font-size: 0.9rem;
    animation: slideDownFade var(--transition-fast);
}
.edubros-quiz-root .edubros-warning-banner.active { display: block; }

.edubros-quiz-root .edubros-quiz-description,
.edubros-quiz-root .edubros-quiz-instructions {
    margin: 0.75rem 0;
    color: var(--text-medium);
    line-height: 1.65;
}
.edubros-quiz-root .edubros-quiz-instructions {
    padding: 0.9rem 1rem;
    border: 1px solid var(--border-color);
    border-radius: 0.75rem;
    background: var(--background-soft);
}
.edubros-quiz-root .edubros-quiz-instructions > strong {
    display: block;
    margin-bottom: 0.35rem;
    color: var(--text-dark);
}

/* Content-free, pre-mounted lifecycle privacy layer for secured active attempts. */
.edubros-quiz-root > .edubros-privacy-screen {
    display: none;
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100vh;
    width: 100dvw;
    height: 100dvh;
    margin: 0;
    padding: 0;
    background: #000;
    z-index: 2147483647;
    pointer-events: all;
    touch-action: none;
}
.edubros-quiz-root.edubros-quiz-concealed > .edubros-privacy-screen:not([hidden]) {
    display: block !important;
}

@media (pointer: coarse), (hover: none), (max-width: 1366px) {
    .edubros-quiz-root.edubros-mobile-capture-deterrence[data-security-active="1"] .quiz-wrapper {
        -webkit-touch-callout: none;
        -webkit-user-select: none;
        user-select: none;
    }
    .edubros-quiz-root.edubros-mobile-capture-deterrence .edubros-watermark-repeated {
        grid-template-columns: repeat(auto-fill, minmax(155px, 1fr));
        grid-auto-rows: 96px;
    }
    .edubros-quiz-root.edubros-mobile-capture-deterrence[data-responsive-watermark-density="dense"] .edubros-watermark-repeated {
        grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
        grid-auto-rows: 78px;
    }
    .edubros-quiz-root.edubros-mobile-capture-deterrence[data-responsive-watermark-density="maximum"] .edubros-watermark-repeated {
        grid-template-columns: repeat(auto-fill, minmax(105px, 1fr));
        grid-auto-rows: 64px;
    }
    .edubros-quiz-root.edubros-mobile-capture-deterrence .edubros-watermark-cell {
        overflow: hidden;
        padding: 0 5px;
        font-size: 0.7rem;
        text-overflow: ellipsis;
    }
}

@media (max-width: 820px) {
    .edubros-quiz-root.edubros-mobile-capture-deterrence .edubros-watermark-repeated {
        grid-template-columns: repeat(auto-fill, minmax(118px, 1fr));
        grid-auto-rows: 72px;
    }
    .edubros-quiz-root.edubros-mobile-capture-deterrence[data-responsive-watermark-density="maximum"] .edubros-watermark-repeated {
        grid-template-columns: repeat(auto-fill, minmax(88px, 1fr));
        grid-auto-rows: 56px;
    }
}

@media print {
    .edubros-quiz-root[data-security-active="1"] .quiz-wrapper {
        display: none !important;
    }
    .edubros-quiz-root[data-security-active="1"]::before {
        display: block;
        padding: 2rem;
        color: #111827;
        content: "Printing is disabled for this protected quiz page.";
        font: 700 18px/1.5 sans-serif;
    }
}

.edubros-quiz-root .edubros-security-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(2, 6, 23, 0.96);
    backdrop-filter: blur(18px) brightness(0.35);
    -webkit-backdrop-filter: blur(18px) brightness(0.35);
    z-index: 2147483000;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
}
.edubros-quiz-root .edubros-security-overlay:not([hidden]) { display: flex; }
.edubros-quiz-root .edubros-security-overlay[hidden] { display: none; }

.edubros-quiz-root .edubros-security-card {
    background: var(--background-white);
    border-radius: 1.25rem;
    padding: 2.5rem;
    max-width: 460px;
    width: 100%;
    text-align: center;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
    border: 1.5px solid var(--border-color);
}
.edubros-quiz-root .edubros-security-overlay.edubros-security-locked .edubros-security-card {
    border-color: var(--error-red-hover);
}
.edubros-quiz-root .edubros-security-icon {
    color: var(--error-red);
    margin-bottom: 1rem;
    display: flex;
    justify-content: center;
}
.edubros-quiz-root .edubros-security-title {
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--text-dark);
    margin: 0 0 0.75rem;
}
.edubros-quiz-root .edubros-security-message {
    color: var(--text-medium);
    font-size: 1rem;
    margin: 0 0 0.75rem;
    line-height: 1.5;
}
.edubros-quiz-root .edubros-security-count {
    color: var(--warning-orange-text);
    font-weight: 700;
    font-size: 0.9rem;
    margin: 0 0 1.5rem;
}
.edubros-quiz-root .edubros-security-continue-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: var(--btn-height);
    padding: 0 1.5rem;
    border-radius: var(--btn-radius);
    font-size: 0.95rem;
    font-weight: 700;
    border: none;
    cursor: pointer;
    background: var(--primary-blue);
    color: #fff;
    transition: all var(--transition-fast);
    font-family: inherit;
}
.edubros-quiz-root .edubros-security-continue-btn:hover {
    background: var(--primary-blue-hover);
    transform: translateY(-2px);
}

/* Watermark */
.edubros-quiz-root .edubros-watermark {
    position: absolute;
    pointer-events: none;
    z-index: 5;
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--text-medium);
    opacity: 0.25;
    white-space: nowrap;
    transform: rotate(-25deg);
    user-select: none;
}
.edubros-quiz-root .edubros-watermark-repeated {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 5;
    overflow: hidden;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    grid-auto-rows: 120px;
}
.edubros-quiz-root .edubros-watermark-repeated .edubros-watermark-cell {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--text-medium);
    opacity: 0.18;
    white-space: nowrap;
    transform: rotate(-25deg);
    user-select: none;
}

/* Blackout overlay for security events */
.edubros-quiz-root.security-blackout .quiz-wrapper {
    filter: blur(24px) brightness(0) contrast(0.25) !important;
    opacity: 0.02 !important;
    transition: filter 0.05s linear, opacity 0.05s linear;
    pointer-events: none !important;
    user-select: none !important;
}
.edubros-quiz-root.security-blackout .edubros-watermark,
.edubros-quiz-root.security-blackout .edubros-watermark-repeated {
    opacity: 0 !important;
}
.edubros-quiz-root.security-blackout > .edubros-security-overlay {
    filter: none !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    user-select: auto !important;
}
.edubros-quiz-root.security-blackout > .edubros-security-overlay .edubros-security-card,
.edubros-quiz-root.security-blackout > .edubros-security-overlay .edubros-security-continue-btn {
    filter: none !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}

/* ----------------------------------------------------------
   ANIMATIONS
   ---------------------------------------------------------- */
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes scaleUp {
    from { opacity: 0; transform: scale(0.95); }
    to { opacity: 1; transform: scale(1); }
}
@keyframes slideUpFade {
    from { opacity: 0; transform: translateY(25px); }
    to { opacity: 1; transform: translateY(0); }
}
@keyframes slideDownFade {
    from { opacity: 0; transform: translateY(-25px); }
    to { opacity: 1; transform: translateY(0); }
}

.edubros-quiz-root .view-animate { animation: fadeIn var(--transition-normal) forwards; }
.edubros-quiz-root .q-animate,
.edubros-quiz-root .edubros-q-animate { animation: slideUpFade 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards; }

/* ----------------------------------------------------------
   RESPONSIVE — Mobile breakpoint (exact from HTML reference)
   ---------------------------------------------------------- */
@media (max-width: 768px) {
    .edubros-quiz-root .edubros-map-toolbar { align-items: stretch; flex-direction: column; }
    .edubros-quiz-root .edubros-map-search { min-width: 0; width: 100%; }
    .edubros-quiz-root .edubros-mini-map { grid-template-columns: repeat(auto-fill, minmax(20px, 1fr)); }
    .edubros-quiz-root .quiz-body-wrapper {
        padding: 1.5rem 0.75rem;
    }
    .edubros-quiz-root .quiz-wrapper {
        padding: var(--card-padding-mobile);
        border-radius: 1.25rem;
        min-height: auto;
    }
    .edubros-quiz-root .header-top-bar {
        position: relative;
        width: 100%;
        justify-content: flex-end;
        margin-bottom: 10px;
        top: 0;
    }
    .edubros-quiz-root .stats-panel,
    .edubros-quiz-root .edubros-stats-panel {
        grid-template-columns: 1fr;
        gap: 1.25rem;
        padding: 1.25rem;
    }
    .edubros-quiz-root .stat-item:not(:last-child),
    .edubros-quiz-root .edubros-stat-item:not(:last-child) {
        border-right: none;
        border-bottom: 1.5px solid var(--border-color);
        padding-bottom: 1rem;
    }
    .edubros-quiz-root .dash-card-row,
    .edubros-quiz-root .edubros-dash-card-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }
    .edubros-quiz-root .toggle-wrapper,
    .edubros-quiz-root .edubros-toggle-wrapper {
        width: 100%;
        justify-content: space-between;
    }
    .edubros-quiz-root .info-bar,
    .edubros-quiz-root .edubros-info-bar {
        flex-direction: column;
        align-items: flex-start;
        gap: 1.25rem;
    }
    .edubros-quiz-root .toggle-group,
    .edubros-quiz-root .edubros-toggle-group {
        width: 100%;
        justify-content: space-between;
        border-top: 1.5px solid var(--border-color);
        padding-top: 1.25rem;
    }
    .edubros-quiz-root .focus-grid,
    .edubros-quiz-root .edubros-focus-grid {
        grid-template-columns: 1fr;
    }
    .edubros-quiz-root .navigation-footer,
    .edubros-quiz-root .edubros-navigation-footer {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0.85rem;
    }
    .edubros-quiz-root #prev-btn,
    .edubros-quiz-root #next-btn,
    .edubros-quiz-root #toggle-map-btn,
    .edubros-quiz-root #edubros-prev-btn,
    .edubros-quiz-root #edubros-next-btn,
    .edubros-quiz-root #edubros-map-btn { width: 100%; }
    .edubros-quiz-root .go-to-container,
    .edubros-quiz-root .edubros-go-to-container {
        grid-column: span 2;
        justify-content: center;
        width: 100%;
    }
    .edubros-quiz-root #finish-btn,
    .edubros-quiz-root #edubros-submit-btn {
        grid-column: span 2;
        width: 100%;
    }
    .edubros-quiz-root .explanation-content,
    .edubros-quiz-root .edubros-explanation-content {
        padding: var(--edubros-explanation-content-padding);
        font-size: var(--edubros-mobile-explanation-size);
    }
    .edubros-quiz-root .expl-list li,
    .edubros-quiz-root .edubros-expl-list li { padding: 1rem 1.25rem; }
    .edubros-quiz-root .exam-hook-wrapper,
    .edubros-quiz-root .edubros-exam-hook,
    .edubros-quiz-root .edubros-exam-hook-wrapper { padding: 1.25rem; }
    .edubros-quiz-root .edubros-mobile-toolbar-toggle { display: inline-flex; }
    .edubros-quiz-root .edubros-result-actions { flex-direction: column; }
    .edubros-quiz-root .edubros-result-actions .edubros-btn,
    .edubros-quiz-root .edubros-result-actions .btn-premium-action { width: 100%; }
    .edubros-quiz-root .edubros-result-meta { flex-direction: column; gap: 0.75rem; }
}

/* Secure submission experience. Scoped to one quiz root. */
.edubros-quiz-root .edubros-submission-loader[hidden] { display: none !important; }
.edubros-quiz-root .edubros-submission-loader {
    position: absolute;
    inset: 0;
    z-index: 10020;
    display: grid;
    place-items: center;
    padding: 1.25rem;
    background: rgba(15, 23, 42, 0.82);
    backdrop-filter: blur(8px);
}
.edubros-quiz-root .edubros-submission-loader-card {
    width: min(92%, 430px);
    padding: 2rem 1.5rem;
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 1.2rem;
    background: #fff;
    color: #0f172a;
    text-align: center;
    box-shadow: 0 24px 70px rgba(0,0,0,.3);
}
.edubros-quiz-root .edubros-submission-loader-card h2 { margin: .85rem 0 .4rem; font-size: 1.35rem; }
.edubros-quiz-root .edubros-submission-loader-card p { margin: 0; color: #475569; line-height: 1.55; }
.edubros-quiz-root .edubros-submission-spinner { display: flex; justify-content: center; gap: .45rem; }
.edubros-quiz-root .edubros-submission-spinner span {
    width: .72rem;
    height: .72rem;
    border-radius: 999px;
    background: var(--primary-blue, #2563eb);
    animation: edubrosSubmissionBounce 1s infinite ease-in-out;
}
.edubros-quiz-root .edubros-submission-spinner span:nth-child(2) { animation-delay: .14s; }
.edubros-quiz-root .edubros-submission-spinner span:nth-child(3) { animation-delay: .28s; }
.edubros-quiz-root .edubros-submission-progress { height: 5px; margin-top: 1.25rem; overflow: hidden; border-radius: 99px; background: #e2e8f0; }
.edubros-quiz-root .edubros-submission-progress span { display: block; width: 45%; height: 100%; border-radius: inherit; background: linear-gradient(90deg,#2563eb,#06b6d4); animation: edubrosSubmissionSlide 1.2s infinite ease-in-out; }
.edubros-quiz-root .edubros-submission-loader.is-complete .edubros-submission-spinner span { animation: none; background: #10b981; }
.edubros-quiz-root .edubros-submission-loader.is-complete .edubros-submission-progress span { width: 100%; animation: none; background: #10b981; }
@keyframes edubrosSubmissionBounce { 0%,80%,100%{ transform:scale(.65); opacity:.45; } 40%{ transform:scale(1); opacity:1; } }
@keyframes edubrosSubmissionSlide { 0%{ transform:translateX(-120%); } 100%{ transform:translateX(260%); } }

.edubros-quiz-root .edubros-real-exam-access-card { border-color: rgba(185,28,28,.28); background: rgba(254,242,242,.72); }
.edubros-quiz-root .edubros-real-exam-window { margin: .65rem 0; color: #7f1d1d; font-size: .88rem; font-weight: 700; }
.edubros-quiz-root .edubros-real-exam-access-label { display: grid; gap: .4rem; margin-top: .8rem; color: #334155; font-weight: 700; }
.edubros-quiz-root .edubros-real-exam-rules-check { display: flex; align-items: flex-start; gap: .65rem; margin-top: .9rem; color: #334155; line-height: 1.45; cursor: pointer; }
.edubros-quiz-root .edubros-real-exam-rules-check input { width: 1.1rem; height: 1.1rem; margin-top: .15rem; flex: 0 0 auto; }

@media (prefers-reduced-motion: reduce) {
    .edubros-quiz-root .edubros-submission-spinner span,
    .edubros-quiz-root .edubros-submission-progress span { animation-duration: 2.5s; }
}

/* Very small screens — extra tightening */
@media (max-width: 480px) {
    .edubros-quiz-root .quiz-wrapper { padding: 1.25rem 1rem; }
    .edubros-quiz-root .option,
    .edubros-quiz-root .edubros-option {
        padding: var(--edubros-mobile-option-padding);
        font-size: calc(var(--edubros-option-font-size) * var(--edubros-mobile-font-scale));
    }
    .edubros-quiz-root .summary-card,
    .edubros-quiz-root .edubros-summary-card { padding: 1.5rem; }
}

/* Scrollbar styling for premium feel */
.edubros-quiz-root ::-webkit-scrollbar { width: 8px; height: 8px; }
.edubros-quiz-root ::-webkit-scrollbar-track { background: var(--surface-muted); border-radius: 4px; }
.edubros-quiz-root ::-webkit-scrollbar-thumb { background: var(--border-color-hover); border-radius: 4px; }
.edubros-quiz-root ::-webkit-scrollbar-thumb:hover { background: var(--text-light); }

/* =========================================================
   PREMIUM BUTTON POLISH — v5.0
   Gradient backgrounds, premium shadows, smooth lift,
   shimmer effect on primary buttons.
   ========================================================= */

/* Premium primary button — gradient + glow + shimmer */
.edubros-quiz-root .btn-premium-action:not(.btn-variant-neutral):not(.btn-variant-success):not(.btn-variant-danger):not(.btn-variant-warning),
.edubros-quiz-root .edubros-btn:not(.edubros-btn-neutral):not(.edubros-btn-success):not(.edubros-btn-danger):not(.edubros-btn-warning):not(.secondary) {
    background: linear-gradient(135deg, var(--primary-blue) 0%, var(--primary-blue-hover) 100%);
    box-shadow:
        0 4px 12px rgba(37, 99, 235, 0.25),
        0 2px 4px rgba(37, 99, 235, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.15);
}
.edubros-quiz-root .btn-premium-action:not(.btn-variant-neutral):not(.btn-variant-success):not(.btn-variant-danger):not(.btn-variant-warning):hover:not(:disabled),
.edubros-quiz-root .edubros-btn:not(.edubros-btn-neutral):not(.edubros-btn-success):not(.edubros-btn-danger):not(.edubros-btn-warning):not(.secondary):hover:not(:disabled) {
    background: linear-gradient(135deg, var(--primary-blue-hover) 0%, var(--primary-blue) 100%);
    box-shadow:
        0 8px 20px rgba(37, 99, 235, 0.35),
        0 4px 8px rgba(37, 99, 235, 0.20),
        inset 0 1px 0 rgba(255, 255, 255, 0.20);
}

/* Premium success button */
.edubros-quiz-root .btn-variant-success,
.edubros-quiz-root .edubros-btn-success {
    background: linear-gradient(135deg, var(--success-green) 0%, var(--success-green-hover) 100%);
    box-shadow:
        0 4px 12px rgba(16, 185, 129, 0.30),
        0 2px 4px rgba(16, 185, 129, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.15);
}
.edubros-quiz-root .btn-variant-success:hover:not(:disabled),
.edubros-quiz-root .edubros-btn-success:hover:not(:disabled) {
    background: linear-gradient(135deg, var(--success-green-hover) 0%, var(--success-green) 100%);
    box-shadow: 0 8px 20px rgba(16, 185, 129, 0.40), inset 0 1px 0 rgba(255, 255, 255, 0.20);
}

/* Premium danger button */
.edubros-quiz-root .btn-variant-danger,
.edubros-quiz-root .edubros-btn-danger {
    background: linear-gradient(135deg, var(--error-red) 0%, var(--error-red-hover) 100%);
    box-shadow:
        0 4px 12px rgba(239, 68, 68, 0.30),
        0 2px 4px rgba(239, 68, 68, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.15);
}
.edubros-quiz-root .btn-variant-danger:hover:not(:disabled),
.edubros-quiz-root .edubros-btn-danger:hover:not(:disabled) {
    background: linear-gradient(135deg, var(--error-red-hover) 0%, var(--error-red) 100%);
    box-shadow: 0 8px 20px rgba(239, 68, 68, 0.40), inset 0 1px 0 rgba(255, 255, 255, 0.20);
}

/* Premium warning button */
.edubros-quiz-root .btn-variant-warning,
.edubros-quiz-root .edubros-btn-warning {
    background: linear-gradient(135deg, var(--warning-orange) 0%, var(--warning-orange-hover) 100%);
    box-shadow:
        0 4px 12px rgba(245, 158, 11, 0.30),
        0 2px 4px rgba(245, 158, 11, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.15);
}
.edubros-quiz-root .btn-variant-warning:hover:not(:disabled),
.edubros-quiz-root .edubros-btn-warning:hover:not(:disabled) {
    background: linear-gradient(135deg, var(--warning-orange-hover) 0%, var(--warning-orange) 100%);
    box-shadow: 0 8px 20px rgba(245, 158, 11, 0.40), inset 0 1px 0 rgba(255, 255, 255, 0.20);
}

/* Premium neutral button — glass style */
.edubros-quiz-root .btn-variant-neutral,
.edubros-quiz-root .edubros-btn-neutral {
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06), inset 0 1px 0 rgba(255, 255, 255, 0.5);
}
.edubros-quiz-root[data-theme="dark"] .btn-variant-neutral,
.edubros-quiz-root[data-theme="dark"] .edubros-btn-neutral {
    background: rgba(30, 41, 59, 0.8);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

/* Shimmer effect on primary buttons (subtle moving highlight) */
.edubros-quiz-root .btn-premium-action:not(.btn-variant-neutral):not(.btn-variant-success):not(.btn-variant-danger):not(.btn-variant-warning)::before,
.edubros-quiz-root .edubros-btn:not(.edubros-btn-neutral):not(.edubros-btn-success):not(.edubros-btn-danger):not(.edubros-btn-warning):not(.secondary)::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.15), transparent);
    transition: left 0.6s ease;
    z-index: 1;
    pointer-events: none;
}
.edubros-quiz-root .btn-premium-action:not(.btn-variant-neutral):not(.btn-variant-success):not(.btn-variant-danger):not(.btn-variant-warning):hover::before,
.edubros-quiz-root .edubros-btn:not(.edubros-btn-neutral):not(.edubros-btn-success):not(.edubros-btn-danger):not(.edubros-btn-warning):not(.secondary):hover::before {
    left: 100%;
}

/* Premium theme toggle — polished glass circle with smooth rotation */
.edubros-quiz-root .theme-toggle-btn,
.edubros-quiz-root .edubros-theme-toggle-btn {
    background: linear-gradient(135deg, var(--surface-muted), var(--background-white));
    border: 1.5px solid var(--border-color);
    color: var(--text-dark);
    width: 46px;
    height: 46px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow:
        0 2px 8px rgba(15, 23, 42, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.5);
    position: relative;
    overflow: hidden;
}
.edubros-quiz-root .theme-toggle-btn:hover,
.edubros-quiz-root .edubros-theme-toggle-btn:hover {
    background: linear-gradient(135deg, var(--primary-blue-light), var(--surface-muted));
    border-color: var(--primary-blue);
    transform: rotate(20deg) scale(1.05);
    box-shadow:
        0 6px 16px rgba(37, 99, 235, 0.20),
        inset 0 1px 0 rgba(255, 255, 255, 0.5);
}
.edubros-quiz-root .theme-toggle-btn:active,
.edubros-quiz-root .edubros-theme-toggle-btn:active {
    transform: rotate(20deg) scale(0.95);
}

/* Sun/Moon icon visibility — works with both class naming conventions */
.edubros-quiz-root .theme-toggle-btn .icon-sun,
.edubros-quiz-root .theme-toggle-btn .edubros-icon-sun,
.edubros-quiz-root .edubros-theme-toggle-btn .icon-sun,
.edubros-quiz-root .edubros-theme-toggle-btn .edubros-icon-sun { display: block; }
.edubros-quiz-root .theme-toggle-btn .icon-moon,
.edubros-quiz-root .theme-toggle-btn .edubros-icon-moon,
.edubros-quiz-root .edubros-theme-toggle-btn .icon-moon,
.edubros-quiz-root .edubros-theme-toggle-btn .edubros-icon-moon { display: none; }
.edubros-quiz-root[data-theme="dark"] .theme-toggle-btn .icon-sun,
.edubros-quiz-root[data-theme="dark"] .theme-toggle-btn .edubros-icon-sun,
.edubros-quiz-root[data-theme="dark"] .edubros-theme-toggle-btn .icon-sun,
.edubros-quiz-root[data-theme="dark"] .edubros-theme-toggle-btn .edubros-icon-sun { display: none; }
.edubros-quiz-root[data-theme="dark"] .theme-toggle-btn .icon-moon,
.edubros-quiz-root[data-theme="dark"] .theme-toggle-btn .edubros-icon-moon,
.edubros-quiz-root[data-theme="dark"] .edubros-theme-toggle-btn .icon-moon,
.edubros-quiz-root[data-theme="dark"] .edubros-theme-toggle-btn .edubros-icon-moon { display: block; }

/* Premium Save & Exit button */
.edubros-quiz-root .btn-save-exit,
.edubros-quiz-root .edubros-save-exit-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 42px;
    min-height: 42px;
    padding: 0 16px;
    background: var(--surface-muted);
    color: var(--text-dark);
    border: 1.5px solid var(--border-color);
    border-radius: 999px;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.08);
    min-width: max-content;
    white-space: nowrap;
    font-family: inherit;
    font-size: 0.9rem;
    font-weight: 800;
    line-height: 1;
    text-decoration: none !important;
    cursor: pointer;
    transition: background var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);
}
.edubros-quiz-root .btn-save-exit svg,
.edubros-quiz-root .edubros-save-exit-btn svg {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    transform: none !important;
    filter: none !important;
}
.edubros-quiz-root .btn-save-exit span,
.edubros-quiz-root .edubros-save-exit-btn span {
    display: inline-flex;
    align-items: center;
}
.edubros-quiz-root .btn-save-exit:hover,
.edubros-quiz-root .edubros-save-exit-btn:hover {
    color: var(--text-dark);
    background: var(--background-white);
    border-color: var(--primary-blue);
    box-shadow: 0 10px 24px rgba(37, 99, 235, 0.16);
    transform: translateY(-1px);
    text-decoration: none !important;
}
.edubros-quiz-root .btn-save-exit:focus-visible,
.edubros-quiz-root .edubros-save-exit-btn:focus-visible {
    outline: none;
    box-shadow: var(--focus-ring);
}

/* Premium utility buttons — subtle glass */
.edubros-quiz-root .utility-btn,
.edubros-quiz-root .edubros-utility-btn {
    background: linear-gradient(135deg, var(--background-white), var(--surface-muted));
    border: 1.5px solid var(--border-color);
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.04), inset 0 1px 0 rgba(255, 255, 255, 0.5);
}
.edubros-quiz-root .utility-btn:hover,
.edubros-quiz-root .edubros-utility-btn:hover {
    background: linear-gradient(135deg, var(--surface-muted), var(--background-white));
    border-color: var(--primary-blue);
    box-shadow: 0 6px 14px rgba(37, 99, 235, 0.12);
}
.edubros-quiz-root[data-theme="dark"] .utility-btn,
.edubros-quiz-root[data-theme="dark"] .edubros-utility-btn {
    background: linear-gradient(135deg, var(--background-white), var(--surface-muted));
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.05);
}
.edubros-quiz-root .edubros-utility-btn.edubros-flagged,
.edubros-quiz-root .edubros-utility-btn.edubros-flagged:hover {
    color: var(--warning-orange-hover);
    border-color: var(--warning-orange-hover);
    background: var(--warning-orange-bg);
    box-shadow: 0 8px 18px rgba(245, 158, 11, 0.18);
}

/* Premium option hover — enhanced glow */
.edubros-quiz-root .option:not(.disabled):not(.locked):hover,
.edubros-quiz-root .edubros-option:not(.disabled):not(.locked):hover {
    box-shadow:
        0 8px 20px var(--primary-blue-muted),
        0 2px 8px rgba(37, 99, 235, 0.10);
}

/* Premium stat value — gradient text */
.edubros-quiz-root .stat-value,
.edubros-quiz-root .edubros-stat-value {
    background: linear-gradient(135deg, var(--primary-blue), var(--primary-blue-hover));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Premium dash-card hover — enhanced */
.edubros-quiz-root .dash-card:hover,
.edubros-quiz-root .edubros-dash-card:hover {
    box-shadow:
        0 8px 24px var(--primary-blue-muted),
        0 2px 8px rgba(37, 99, 235, 0.08);
}

/* Premium score ring — glow */
.edubros-quiz-root .score-ring,
.edubros-quiz-root .edubros-score-ring {
    box-shadow:
        0 8px 24px rgba(0, 0, 0, 0.10),
        0 0 0 1px rgba(255, 255, 255, 0.5);
}

/* Premium explanation header — enhanced gradient */
.edubros-quiz-root .expl-premium-header,
.edubros-quiz-root .edubros-expl-premium-header {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #334155 100%);
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.15);
}

/* Premium modal — enhanced shadow */
.edubros-quiz-root .sidebar-modal-content,
.edubros-quiz-root .edubros-modal-content {
    box-shadow:
        0 25px 50px -12px rgba(0, 0, 0, 0.35),
        0 0 0 1px rgba(255, 255, 255, 0.05);
}

/* Premium close button — smoother */
.edubros-quiz-root .close-btn,
.edubros-quiz-root .edubros-close-btn {
    background: linear-gradient(135deg, var(--surface-muted), var(--background-white));
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.06), inset 0 1px 0 rgba(255, 255, 255, 0.5);
}
.edubros-quiz-root .close-btn:hover,
.edubros-quiz-root .edubros-close-btn:hover {
    box-shadow: 0 4px 12px rgba(239, 68, 68, 0.20);
}

/* Premium quiz wrapper — enhanced card shadow */
.edubros-quiz-root .quiz-wrapper {
    box-shadow:
        0 10px 40px -10px rgba(15, 23, 42, 0.10),
        0 4px 12px -2px rgba(15, 23, 42, 0.05),
        inset 0 1px 0 rgba(255, 255, 255, 0.5);
}
.edubros-quiz-root[data-theme="dark"] .quiz-wrapper {
    box-shadow:
        0 16px 50px -18px rgba(0, 0, 0, 0.8),
        0 4px 12px -2px rgba(0, 0, 0, 0.4);
}

/* Premium option letter badge — gradient when selected */
.edubros-quiz-root .option.selected .option-letter,
.edubros-quiz-root .edubros-option.selected .edubros-option-letter {
    background: linear-gradient(135deg, var(--primary-blue), var(--primary-blue-hover));
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.30);
}
.edubros-quiz-root .option.correct .option-letter,
.edubros-quiz-root .edubros-option.correct .edubros-option-letter {
    background: linear-gradient(135deg, var(--success-green), var(--success-green-hover));
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.30);
}
.edubros-quiz-root .option.selected.incorrect .option-letter,
.edubros-quiz-root .edubros-option.selected.incorrect .edubros-option-letter {
    background: linear-gradient(135deg, var(--error-red), var(--error-red-hover));
    box-shadow: 0 4px 12px rgba(239, 68, 68, 0.30);
}

/* Premium start button — full width gradient with glow */
.edubros-quiz-root .btn-premium-full,
.edubros-quiz-root .edubros-btn-full {
    background: linear-gradient(135deg, var(--primary-blue) 0%, var(--primary-blue-hover) 50%, var(--primary-blue) 100%);
    background-size: 200% 100%;
    box-shadow:
        0 6px 20px rgba(37, 99, 235, 0.30),
        0 2px 8px rgba(37, 99, 235, 0.20),
        inset 0 1px 0 rgba(255, 255, 255, 0.20);
    animation: ebqGradientShift 3s ease infinite;
}
@keyframes ebqGradientShift {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}

/* Premium go-to button */
.edubros-quiz-root #go-to-btn,
.edubros-quiz-root .edubros-goto-btn {
    background: linear-gradient(135deg, var(--primary-blue), var(--primary-blue-hover));
    color: #fff;
    box-shadow: 0 2px 8px rgba(37, 99, 235, 0.20);
}
.edubros-quiz-root #go-to-btn:hover,
.edubros-quiz-root .edubros-goto-btn:hover {
    background: linear-gradient(135deg, var(--primary-blue-hover), var(--primary-blue));
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.30);
}
/* QuizMaker advanced LMS dashboard and result progress */
.quizmaker-user-dashboard,
.quizmaker-result-progress,
.quizmaker-result-buttons {
    box-sizing: border-box;
}
.quizmaker-user-dashboard {
    width: 100%;
    max-width: 1180px;
    margin: 24px auto;
    padding: 24px;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
    color: #0f172a;
}
.quizmaker-dashboard-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 20px;
}
.quizmaker-dashboard-head h2 {
    margin: 0;
    font-size: 1.35rem;
}
.quizmaker-filter-row,
.quizmaker-actions,
.quizmaker-result-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.quizmaker-filter-row select {
    min-height: 40px;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    padding: 0 12px;
    background: #fff;
}
.quizmaker-course-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 16px;
}
.quizmaker-course-card,
.quizmaker-progress-card,
.quizmaker-chapter-card {
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background: #f8fafc;
    padding: 18px;
}
.quizmaker-course-card h3 {
    margin: 0 0 14px;
    font-size: 1.05rem;
}
.quizmaker-progress-bar {
    height: 10px;
    border-radius: 999px;
    background: #e2e8f0;
    overflow: hidden;
    margin-bottom: 14px;
}
.quizmaker-progress-bar span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #2563eb, #10b981);
}
.quizmaker-metrics {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 14px;
}
.quizmaker-metrics span,
.quizmaker-result-progress div {
    display: grid;
    gap: 4px;
    padding: 10px;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background: #fff;
    font-size: 0.78rem;
    color: #64748b;
}
.quizmaker-metrics strong,
.quizmaker-result-progress strong {
    color: #0f172a;
    font-size: 1rem;
}
.quizmaker-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 14px;
    border-radius: 8px;
    border: 1px solid #cbd5e1;
    background: #fff;
    color: #0f172a;
    font-weight: 700;
    text-decoration: none;
}
.quizmaker-btn.primary {
    border-color: #2563eb;
    background: #2563eb;
    color: #fff;
}
.quizmaker-btn.disabled {
    opacity: .65;
}
.quizmaker-empty {
    grid-column: 1 / -1;
    padding: 28px;
    border: 1px dashed #cbd5e1;
    border-radius: 8px;
    color: #64748b;
    text-align: center;
}
.quizmaker-result-progress {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 10px;
    margin: 18px 0;
}
.quizmaker-result-buttons {
    justify-content: center;
    margin: 12px 0 18px;
}
.quizmaker-option-list .edubros-option,
.edubros-options-list .edubros-option {
    min-height: 52px;
}
@media (max-width: 640px) {
    .quizmaker-user-dashboard {
        padding: 16px;
    }
    .quizmaker-dashboard-head {
        align-items: flex-start;
        flex-direction: column;
    }
    .quizmaker-metrics {
        grid-template-columns: 1fr;
    }
}

/* Quiz-scoped Real Exam surface. Server policy also enforces every restriction;
   these selectors keep the learner interface intentionally minimal. */
.edubros-quiz-root[data-real-exam="1"] .edubros-mobile-toolbar-toggle,
.edubros-quiz-root[data-real-exam="1"] .edubros-mobile-toolbar,
.edubros-quiz-root[data-real-exam="1"] .edubros-quick-tools,
.edubros-quiz-root[data-real-exam="1"] .edubros-focus-tools,
.edubros-quiz-root[data-real-exam="1"] #edubros-prev-btn,
.edubros-quiz-root[data-real-exam="1"] #edubros-map-btn,
.edubros-quiz-root[data-real-exam="1"] .edubros-go-to-container,
.edubros-quiz-root[data-real-exam="1"] #edubros-flag-btn,
.edubros-quiz-root[data-real-exam="1"] #edubros-explanation-box,
.edubros-quiz-root[data-real-exam="1"] #edubros-map-modal,
.edubros-quiz-root[data-real-exam="1"] #edubros-revision-modal {
    display: none !important;
}
.edubros-quiz-root .edubros-real-exam-receipt {
    max-width: 640px;
    margin: 2rem auto;
    padding: 2rem;
    border: 1px solid #bbf7d0;
    border-radius: 1rem;
    background: #f0fdf4;
    color: #166534;
    text-align: center;
    box-shadow: var(--card-shadow);
}
.edubros-quiz-root .edubros-real-exam-receipt p {
    margin: 0;
    font-size: clamp(1.05rem, 2.5vw, 1.35rem);
    font-weight: 800;
    line-height: 1.55;
}

.edubros-quiz-root .edubros-runtime-modal {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: var(--overlay-bg);
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--transition-fast);
}
.edubros-quiz-root .edubros-runtime-modal.active {
    opacity: 1;
    pointer-events: auto;
}
.edubros-quiz-root .edubros-runtime-modal-card {
    width: min(520px, 100%);
    background: var(--background-white);
    color: var(--text-dark);
    border: 1px solid var(--border-color);
    border-radius: var(--card-border-radius);
    box-shadow: 0 25px 60px rgba(15, 23, 42, 0.28);
    padding: 1.5rem;
}
.edubros-quiz-root .edubros-runtime-modal-card h3 {
    font-size: 1.35rem;
    font-weight: 800;
    margin: 0 0 0.75rem;
}
.edubros-quiz-root .edubros-runtime-modal-body {
    color: var(--text-medium);
    font-size: 0.98rem;
}
.edubros-quiz-root .edubros-runtime-modal-actions {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    margin-top: 1.25rem;
    flex-wrap: wrap;
}
.edubros-quiz-root .edubros-submit-summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}
.edubros-quiz-root .edubros-submit-summary span {
    display: flex;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 0.75rem;
    background: var(--surface-muted);
}
.edubros-quiz-root .edubros-modal-input {
    width: 100%;
    min-height: 2.75rem;
    border: 1.5px solid var(--border-color);
    border-radius: 0.75rem;
    background: var(--input-bg);
    color: var(--text-dark);
    padding: 0 1rem;
    font: inherit;
}
.edubros-quiz-root .edubros-toast-stack {
    position: fixed;
    right: 1rem;
    bottom: 1rem;
    z-index: 1000000;
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
    max-width: min(360px, calc(100vw - 2rem));
}
.edubros-quiz-root .edubros-toast {
    transform: translateY(10px);
    opacity: 0;
    border-radius: 0.75rem;
    padding: 0.85rem 1rem;
    background: var(--background-white);
    color: var(--text-dark);
    border: 1px solid var(--border-color);
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.18);
    transition: all var(--transition-fast);
}
.edubros-quiz-root .edubros-toast.active {
    transform: translateY(0);
    opacity: 1;
}
.edubros-quiz-root .edubros-toast-success { border-color: var(--success-green); }
.edubros-quiz-root .edubros-toast-error { border-color: var(--error-red); }
.edubros-quiz-root .edubros-toast-warning { border-color: var(--warning-orange); }
.edubros-quiz-root .edubros-toast-info { border-color: var(--primary-blue); }

@media (max-width: 480px) {
    .edubros-quiz-root .edubros-submit-summary { grid-template-columns: 1fr; }
    .edubros-quiz-root .edubros-runtime-modal-actions .edubros-btn { width: 100%; }
}


/* =========================================================
   v5.3.2 requested quiz UI polish
   - Hide the top numbered mini-map row.
   - Keep Random / Auto-Next aligned to the right side.
   - Make question text stronger and options more compact.
   ========================================================= */
.edubros-quiz-root #edubros-mini-map.edubros-mini-map {
    display: none !important;
}
.edubros-quiz-root .edubros-info-bar {
    justify-content: flex-end !important;
    align-items: center !important;
    padding-bottom: 0.9rem !important;
    margin-bottom: 1.35rem !important;
}
.edubros-quiz-root .edubros-progress-tracker {
    margin-right: auto !important;
}
.edubros-quiz-root .edubros-toggle-group {
    margin-left: auto !important;
    justify-content: flex-end !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 1rem !important;
}
.edubros-quiz-root .edubros-question-text {
    font-size: 1.5rem !important;
    line-height: 1.48 !important;
    margin-bottom: 1.35rem !important;
}
.edubros-quiz-root .edubros-options-list {
    gap: 0.65rem !important;
}
.edubros-quiz-root .edubros-option {
    min-height: 50px !important;
    padding: 0.85rem 1.1rem !important;
    font-size: 0.95rem !important;
    border-radius: 0.85rem !important;
    gap: 0.75rem !important;
}
.edubros-quiz-root .edubros-option-letter {
    width: 2rem !important;
    height: 2rem !important;
    flex: 0 0 2rem !important;
    font-size: 0.82rem !important;
    border-radius: 0.55rem !important;
}
@media (max-width: 768px) {
    .edubros-quiz-root .edubros-info-bar {
        align-items: stretch !important;
    }
    .edubros-quiz-root .edubros-toggle-group {
        width: 100% !important;
        margin-left: 0 !important;
        justify-content: flex-end !important;
        border-top: 0 !important;
        padding-top: 0 !important;
    }
    .edubros-quiz-root .edubros-question-text {
        font-size: 1.32rem !important;
    }
    .edubros-quiz-root .edubros-option {
        min-height: 46px !important;
        padding: 0.75rem 0.95rem !important;
        font-size: 0.92rem !important;
    }
}


/* =========================================================
   v5.3.3 Premium confirmation modal buttons
   Fixes tiny/wrapped Cancel + Exit Without Saving buttons.
   ========================================================= */
.edubros-quiz-root .edubros-runtime-modal-actions {
    align-items: center;
    gap: 0.8rem;
}

.edubros-quiz-root .edubros-runtime-modal-actions .edubros-btn {
    min-width: 118px;
    height: 44px;
    padding: 0 1.15rem;
    border-radius: 14px;
    font-size: 0.94rem;
    font-weight: 750;
    letter-spacing: -0.01em;
    white-space: nowrap;
    border: 1px solid transparent;
}

.edubros-quiz-root .edubros-runtime-modal-actions .edubros-btn-neutral {
    color: #334155;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
    border-color: #dbe5f0;
    box-shadow:
        0 10px 24px rgba(15, 23, 42, 0.08),
        0 2px 6px rgba(15, 23, 42, 0.05),
        inset 0 1px 0 rgba(255, 255, 255, 0.95);
}

.edubros-quiz-root .edubros-runtime-modal-actions .edubros-btn-neutral:hover:not(:disabled) {
    color: #0f172a;
    background: linear-gradient(180deg, #ffffff 0%, #eef4fb 100%);
    border-color: #b9c7d8;
    transform: translateY(-2px);
    box-shadow:
        0 14px 30px rgba(15, 23, 42, 0.12),
        0 4px 10px rgba(15, 23, 42, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.95);
}

.edubros-quiz-root .edubros-runtime-modal-actions .edubros-modal-exit-unsaved-btn {
    min-width: 178px;
    color: #b42318;
    background: linear-gradient(180deg, #fff8f7 0%, #fff1ef 100%);
    border-color: #fecaca;
    box-shadow:
        0 10px 24px rgba(180, 35, 24, 0.10),
        0 2px 6px rgba(180, 35, 24, 0.06),
        inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

.edubros-quiz-root .edubros-runtime-modal-actions .edubros-modal-exit-unsaved-btn:hover:not(:disabled) {
    color: #991b1b;
    background: linear-gradient(180deg, #fff5f3 0%, #ffe7e3 100%);
    border-color: #fca5a5;
    box-shadow:
        0 14px 30px rgba(180, 35, 24, 0.16),
        0 4px 10px rgba(180, 35, 24, 0.10),
        inset 0 1px 0 rgba(255, 255, 255, 0.95);
}

.edubros-quiz-root .edubros-runtime-modal-actions .edubros-modal-save-exit-btn {
    min-width: 130px;
}

.edubros-quiz-root[data-theme="dark"] .edubros-runtime-modal-actions .edubros-btn-neutral {
    color: #e2e8f0;
    background: linear-gradient(180deg, rgba(30, 41, 59, 0.96) 0%, rgba(15, 23, 42, 0.96) 100%);
    border-color: rgba(148, 163, 184, 0.22);
}

.edubros-quiz-root[data-theme="dark"] .edubros-runtime-modal-actions .edubros-modal-exit-unsaved-btn {
    color: #fecaca;
    background: linear-gradient(180deg, rgba(127, 29, 29, 0.30) 0%, rgba(69, 10, 10, 0.42) 100%);
    border-color: rgba(248, 113, 113, 0.28);
}

@media (max-width: 560px) {
    .edubros-quiz-root .edubros-runtime-modal-actions {
        justify-content: stretch;
    }
    .edubros-quiz-root .edubros-runtime-modal-actions .edubros-btn,
    .edubros-quiz-root .edubros-runtime-modal-actions .edubros-modal-exit-unsaved-btn,
    .edubros-quiz-root .edubros-runtime-modal-actions .edubros-modal-save-exit-btn {
        width: 100%;
        min-width: 0;
    }
}


/* =========================================================
   v5.3.5 Compact frontend density
   Makes the quiz card, buttons, options, spacing, and modals
   slightly smaller while keeping the question readable.
   ========================================================= */
.edubros-quiz-root .quiz-body-wrapper {
    padding: 2rem 1rem !important;
}
.edubros-quiz-root #quiz-container {
    max-width: 760px !important;
}
.edubros-quiz-root .quiz-wrapper {
    padding: 2rem !important;
    min-height: 480px !important;
    border-radius: 1.15rem !important;
}
.edubros-quiz-root .quiz-header {
    margin-bottom: 1.45rem !important;
    gap: 0.65rem !important;
}
.edubros-quiz-root .quiz-logo {
    max-width: 120px !important;
}
.edubros-quiz-root .quiz-header h1,
.edubros-quiz-root .quiz-header .quiz-title {
    font-size: 1.38rem !important;
}
.edubros-quiz-root .edubros-info-bar,
.edubros-quiz-root .info-bar {
    gap: 0.65rem !important;
    padding-bottom: 0.7rem !important;
    margin-bottom: 1.05rem !important;
}
.edubros-quiz-root .edubros-progress-tracker,
.edubros-quiz-root .progress-tracker {
    font-size: 0.98rem !important;
    gap: 0.65rem !important;
}
.edubros-quiz-root .edubros-toggle-group,
.edubros-quiz-root .toggle-group {
    gap: 0.75rem !important;
}
.edubros-quiz-root .toggle-wrapper,
.edubros-quiz-root .edubros-toggle-wrapper {
    gap: 0.55rem !important;
    font-size: 0.88rem !important;
}
.edubros-quiz-root .toggle-btn,
.edubros-quiz-root .edubros-toggle,
.edubros-quiz-root .edubros-toggle-btn {
    width: 2.35rem !important;
    height: 1.35rem !important;
}
.edubros-quiz-root .toggle-btn::before,
.edubros-quiz-root .edubros-toggle::before,
.edubros-quiz-root .edubros-toggle-btn::before {
    width: 1.05rem !important;
    height: 1.05rem !important;
    top: 0.15rem !important;
    left: 0.15rem !important;
}
.edubros-quiz-root .toggle-btn:checked::before,
.edubros-quiz-root .edubros-toggle:checked::before,
.edubros-quiz-root .edubros-toggle-btn:checked::before {
    transform: translateX(1rem) !important;
}
.edubros-quiz-root .question-area h2,
.edubros-quiz-root .edubros-question-text {
    font-size: 1.38rem !important;
    line-height: 1.42 !important;
    margin-bottom: 1rem !important;
}
.edubros-quiz-root .options-list,
.edubros-quiz-root .edubros-options-list {
    gap: 0.48rem !important;
}
.edubros-quiz-root .option,
.edubros-quiz-root .edubros-option {
    min-height: 42px !important;
    padding: 0.58rem 0.8rem !important;
    border-radius: 0.72rem !important;
    font-size: 0.9rem !important;
    line-height: 1.35 !important;
    gap: 0.6rem !important;
}
.edubros-quiz-root .option-main,
.edubros-quiz-root .edubros-option-main {
    gap: 0.7rem !important;
}
.edubros-quiz-root .option-letter,
.edubros-quiz-root .edubros-option-letter {
    width: 1.72rem !important;
    height: 1.72rem !important;
    flex: 0 0 1.72rem !important;
    border-radius: 0.48rem !important;
    font-size: 0.76rem !important;
}
.edubros-quiz-root .btn-premium-action,
.edubros-quiz-root .edubros-btn {
    height: 2.7rem !important;
    padding: 0 1.05rem !important;
    border-radius: 0.62rem !important;
    font-size: 0.88rem !important;
}
.edubros-quiz-root .btn-premium-full,
.edubros-quiz-root .edubros-btn-full {
    height: 2.95rem !important;
    font-size: 0.95rem !important;
}
.edubros-quiz-root .utility-btn,
.edubros-quiz-root .edubros-utility-btn {
    height: 2.2rem !important;
    padding: 0 0.7rem !important;
    border-radius: 0.52rem !important;
    font-size: 0.82rem !important;
}
.edubros-quiz-root .navigation-footer,
.edubros-quiz-root .edubros-navigation-footer {
    margin-top: 1.55rem !important;
    padding-top: 1.2rem !important;
    gap: 0.7rem !important;
}
.edubros-quiz-root .go-to-container,
.edubros-quiz-root .edubros-go-to-container {
    height: 2.7rem !important;
    border-radius: 0.62rem !important;
}
.edubros-quiz-root .go-to-container input,
.edubros-quiz-root .edubros-goto-input {
    width: 3rem !important;
    font-size: 0.9rem !important;
}
.edubros-quiz-root .go-to-container button,
.edubros-quiz-root #go-to-btn,
.edubros-quiz-root .edubros-goto-btn {
    padding: 0 0.78rem !important;
    border-radius: 0.48rem !important;
    font-size: 0.84rem !important;
}
.edubros-quiz-root .explanation-box,
.edubros-quiz-root .edubros-explanation-box {
    margin-top: 1.55rem !important;
}
.edubros-quiz-root .expl-premium-header,
.edubros-quiz-root .edubros-expl-premium-header {
    padding: 0.85rem 1rem !important;
    font-size: 0.98rem !important;
    border-radius: 0.78rem 0.78rem 0 0 !important;
}
.edubros-quiz-root .explanation-content,
.edubros-quiz-root .edubros-explanation-content {
    padding: 1.15rem !important;
    font-size: 0.94rem !important;
    line-height: 1.6 !important;
    border-radius: 0 0 0.78rem 0.78rem !important;
}
.edubros-quiz-root .sidebar-modal-content,
.edubros-quiz-root .edubros-modal-content {
    max-width: 500px !important;
    padding: 1.45rem !important;
    border-radius: 1rem !important;
}
.edubros-quiz-root .edubros-runtime-modal-actions .edubros-btn {
    min-width: 104px !important;
    height: 40px !important;
    padding: 0 0.95rem !important;
    border-radius: 11px !important;
    font-size: 0.88rem !important;
}
.edubros-quiz-root .edubros-runtime-modal-actions .edubros-modal-exit-unsaved-btn {
    min-width: 160px !important;
}
.edubros-quiz-root .edubros-runtime-modal-actions .edubros-modal-save-exit-btn {
    min-width: 118px !important;
}

@media (max-width: 768px) {
    .edubros-quiz-root .quiz-body-wrapper {
        padding: 1rem 0.55rem !important;
    }
    .edubros-quiz-root .quiz-wrapper {
        padding: 1.15rem 0.9rem !important;
        border-radius: 0.95rem !important;
    }
    .edubros-quiz-root .edubros-info-bar,
    .edubros-quiz-root .info-bar {
        gap: 0.65rem !important;
        margin-bottom: 0.85rem !important;
    }
    .edubros-quiz-root .question-area h2,
    .edubros-quiz-root .edubros-question-text {
        font-size: 1.2rem !important;
        line-height: 1.4 !important;
    }
    .edubros-quiz-root .option,
    .edubros-quiz-root .edubros-option {
        min-height: 40px !important;
        padding: 0.55rem 0.7rem !important;
        font-size: 0.86rem !important;
    }
    .edubros-quiz-root .option-letter,
    .edubros-quiz-root .edubros-option-letter {
        width: 1.6rem !important;
        height: 1.6rem !important;
        flex-basis: 1.6rem !important;
        font-size: 0.72rem !important;
    }
    .edubros-quiz-root .navigation-footer,
    .edubros-quiz-root .edubros-navigation-footer {
        margin-top: 1.15rem !important;
        padding-top: 1rem !important;
        gap: 0.55rem !important;
    }
}

@media (max-width: 480px) {
    .edubros-quiz-root .quiz-wrapper {
        padding: 1rem 0.75rem !important;
    }
    .edubros-quiz-root .btn-premium-action,
    .edubros-quiz-root .edubros-btn {
        height: 2.55rem !important;
        font-size: 0.84rem !important;
        padding: 0 0.8rem !important;
    }
}

/* v5.3.6 Security hardening: stronger blackout for screenshot/snipping focus-loss events. */

/* =========================================================
   v5.3.7 FINAL FRONTEND BUTTON + MAP + SECURITY BAN POLISH
   Cleaner buttons, better map controls, and non-dismissible ban overlay.
   ========================================================= */
.edubros-quiz-root .edubros-btn,
.edubros-quiz-root .btn-premium-action,
.edubros-quiz-root .edubros-save-exit-btn,
.edubros-quiz-root .btn-save-exit,
.edubros-quiz-root .edubros-map-filter,
.edubros-quiz-root .edubros-security-continue-btn {
    white-space: nowrap;
    text-decoration: none !important;
    letter-spacing: -0.01em;
    isolation: isolate;
}
.edubros-quiz-root .edubros-btn:not(.edubros-btn-neutral):not(.edubros-btn-success):not(.edubros-btn-danger):not(.edubros-btn-warning):not(.secondary) {
    background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%) !important;
    color: #fff !important;
    border: 1px solid rgba(37,99,235,.22) !important;
    box-shadow: 0 10px 24px rgba(37,99,235,.20), inset 0 1px 0 rgba(255,255,255,.18) !important;
}
.edubros-quiz-root .edubros-btn-neutral,
.edubros-quiz-root .edubros-btn.secondary,
.edubros-quiz-root .edubros-runtime-modal-actions .edubros-btn-neutral {
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
    color: #172033 !important;
    border: 1px solid #dbe5f0 !important;
    box-shadow: 0 8px 18px rgba(15,23,42,.06), inset 0 1px 0 rgba(255,255,255,.92) !important;
}
.edubros-quiz-root .edubros-btn-success,
.edubros-quiz-root .edubros-runtime-modal-actions .edubros-modal-save-exit-btn {
    background: linear-gradient(135deg, #10b981 0%, #047857 100%) !important;
    color: #fff !important;
    border: 1px solid rgba(16,185,129,.25) !important;
    box-shadow: 0 12px 28px rgba(16,185,129,.20), inset 0 1px 0 rgba(255,255,255,.18) !important;
}
.edubros-quiz-root .edubros-btn-danger,
.edubros-quiz-root .edubros-runtime-modal-actions .edubros-modal-exit-unsaved-btn {
    background: linear-gradient(135deg, #ef4444 0%, #b91c1c 100%) !important;
    color: #fff !important;
    border: 1px solid rgba(239,68,68,.25) !important;
    box-shadow: 0 12px 28px rgba(239,68,68,.22), inset 0 1px 0 rgba(255,255,255,.18) !important;
}
.edubros-quiz-root .edubros-runtime-modal-actions {
    gap: 0.9rem !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap !important;
}
.edubros-quiz-root .edubros-runtime-modal-actions .edubros-btn {
    min-width: 128px !important;
    height: 44px !important;
    padding: 0 1.15rem !important;
    border-radius: 14px !important;
    font-weight: 850 !important;
    line-height: 1 !important;
}
.edubros-quiz-root .edubros-runtime-modal-actions .edubros-modal-exit-unsaved-btn {
    min-width: 190px !important;
}
.edubros-quiz-root .edubros-runtime-modal-actions .edubros-modal-save-exit-btn {
    min-width: 142px !important;
}
.edubros-quiz-root .edubros-btn:hover:not(:disabled),
.edubros-quiz-root .btn-save-exit:hover:not(:disabled),
.edubros-quiz-root .edubros-save-exit-btn:hover:not(:disabled),
.edubros-quiz-root .edubros-map-filter:hover:not(:disabled) {
    transform: translateY(-2px) !important;
    filter: saturate(1.05);
}
.edubros-quiz-root .edubros-map-modal-content {
    max-width: 780px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(226,232,240,.95) !important;
    box-shadow: 0 24px 80px rgba(15,23,42,.18) !important;
}
.edubros-quiz-root .edubros-map-filters {
    gap: 8px !important;
}
.edubros-quiz-root .edubros-map-filter {
    min-height: 34px;
    padding: 0 13px !important;
    border-radius: 999px !important;
    font-size: 0.82rem !important;
    font-weight: 850 !important;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
    color: #334155 !important;
    border: 1px solid #dbe5f0 !important;
    box-shadow: 0 7px 16px rgba(15,23,42,.06), inset 0 1px 0 rgba(255,255,255,.95) !important;
}
.edubros-quiz-root .edubros-map-filter.active {
    background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%) !important;
    color: #fff !important;
    border-color: rgba(37,99,235,.3) !important;
    box-shadow: 0 10px 22px rgba(37,99,235,.22), inset 0 1px 0 rgba(255,255,255,.18) !important;
}
.edubros-quiz-root .edubros-questions-grid {
    grid-template-columns: repeat(auto-fill, minmax(42px, 1fr)) !important;
    gap: 0.48rem !important;
}
.edubros-quiz-root .edubros-grid-item {
    height: 42px !important;
    min-height: 42px !important;
    border-radius: 12px !important;
    border: 1px solid #dbe5f0 !important;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
    color: #334155 !important;
    box-shadow: 0 6px 14px rgba(15,23,42,.06), inset 0 1px 0 rgba(255,255,255,.9) !important;
    font-size: 0.92rem !important;
}
.edubros-quiz-root .edubros-grid-item.current {
    background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%) !important;
    color: #fff !important;
    border-color: rgba(37,99,235,.3) !important;
    box-shadow: 0 12px 26px rgba(37,99,235,.26), inset 0 1px 0 rgba(255,255,255,.18) !important;
}
.edubros-quiz-root .edubros-grid-item.answered {
    background: linear-gradient(135deg, #e0f2fe 0%, #dbeafe 100%) !important;
    color: #1e3a8a !important;
    border-color: #bfdbfe !important;
}
.edubros-quiz-root .edubros-grid-item.flagged {
    background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%) !important;
    color: #92400e !important;
    border-color: #f59e0b !important;
}
.edubros-quiz-root .btn-save-exit,
.edubros-quiz-root .edubros-save-exit-btn {
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
    color: #172033 !important;
    border: 1px solid #dbe5f0 !important;
    border-radius: 999px !important;
    box-shadow: 0 9px 20px rgba(15,23,42,.08), inset 0 1px 0 rgba(255,255,255,.95) !important;
}
.edubros-quiz-root.edubros-quiz-banned #edubros-quiz-view {
    pointer-events: none;
    user-select: none;
    filter: blur(4px) grayscale(.18) brightness(.72);
}
.edubros-quiz-root .edubros-security-overlay.edubros-security-locked {
    background: rgba(2, 6, 23, 0.985) !important;
}
.edubros-quiz-root .edubros-security-overlay.edubros-security-locked .edubros-security-card {
    border-color: rgba(239,68,68,.45) !important;
    box-shadow: 0 30px 90px rgba(239,68,68,.18), 0 24px 80px rgba(0,0,0,.55) !important;
}
.edubros-quiz-root .edubros-security-overlay.edubros-security-locked .edubros-security-title {
    color: #b91c1c !important;
}
.edubros-quiz-root .edubros-security-overlay.edubros-security-locked .edubros-security-message {
    color: #334155 !important;
    font-weight: 750;
}
.edubros-quiz-root .edubros-security-overlay.edubros-security-locked .edubros-security-count {
    color: #991b1b !important;
    background: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: 12px;
    padding: 10px 12px;
}
.edubros-quiz-root .edubros-security-overlay.edubros-security-locked .edubros-security-continue-btn {
    display: none !important;
}
@media (max-width: 560px) {
    .edubros-quiz-root .edubros-runtime-modal-actions .edubros-btn,
    .edubros-quiz-root .edubros-runtime-modal-actions .edubros-modal-exit-unsaved-btn,
    .edubros-quiz-root .edubros-runtime-modal-actions .edubros-modal-save-exit-btn {
        width: 100% !important;
        min-width: 0 !important;
    }
    .edubros-quiz-root .edubros-questions-grid {
        grid-template-columns: repeat(auto-fill, minmax(38px, 1fr)) !important;
    }
}

/* =========================================================
   v5.3.8 CLEAN BUTTONS + WORKING ZOOM + SAFER SECURITY WARNING
   ========================================================= */
.edubros-quiz-root {
    --edubros-live-zoom: 0.9;
}
.edubros-quiz-root .edubros-btn,
.edubros-quiz-root .btn-premium-action,
.edubros-quiz-root .edubros-utility-btn,
.edubros-quiz-root .edubros-map-filter,
.edubros-quiz-root .edubros-save-exit-btn,
.edubros-quiz-root .btn-save-exit,
.edubros-quiz-root .edubros-security-continue-btn {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.45rem !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    font-family: inherit !important;
    font-weight: 780 !important;
    letter-spacing: -0.015em !important;
    border-radius: 12px !important;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease !important;
}
.edubros-quiz-root .edubros-btn,
.edubros-quiz-root .btn-premium-action {
    min-height: 40px !important;
    height: auto !important;
    padding: 0.65rem 1.05rem !important;
    border: 1px solid rgba(37, 99, 235, .22) !important;
    background: linear-gradient(180deg, #3b82f6 0%, #2563eb 100%) !important;
    color: #fff !important;
    box-shadow: 0 7px 16px rgba(37, 99, 235, .18), inset 0 1px 0 rgba(255,255,255,.20) !important;
}
.edubros-quiz-root .edubros-btn-neutral,
.edubros-quiz-root .edubros-btn.secondary,
.edubros-quiz-root .btn-save-exit,
.edubros-quiz-root .edubros-save-exit-btn {
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
    color: #172033 !important;
    border: 1px solid #d7e1ec !important;
    box-shadow: 0 5px 12px rgba(15,23,42,.06), inset 0 1px 0 rgba(255,255,255,.92) !important;
}
.edubros-quiz-root .edubros-btn-success,
.edubros-quiz-root .edubros-modal-save-exit-btn {
    background: linear-gradient(180deg, #22c55e 0%, #16a34a 100%) !important;
    color: #fff !important;
    border-color: rgba(22, 163, 74, .26) !important;
    box-shadow: 0 7px 16px rgba(22,163,74,.18), inset 0 1px 0 rgba(255,255,255,.18) !important;
}
.edubros-quiz-root .edubros-btn-danger,
.edubros-quiz-root .edubros-modal-exit-unsaved-btn {
    background: linear-gradient(180deg, #fb7185 0%, #e11d48 100%) !important;
    color: #fff !important;
    border-color: rgba(225,29,72,.26) !important;
    box-shadow: 0 7px 16px rgba(225,29,72,.18), inset 0 1px 0 rgba(255,255,255,.18) !important;
}
.edubros-quiz-root .edubros-btn:hover:not(:disabled),
.edubros-quiz-root .btn-premium-action:hover:not(:disabled),
.edubros-quiz-root .edubros-utility-btn:hover:not(:disabled),
.edubros-quiz-root .edubros-map-filter:hover:not(:disabled),
.edubros-quiz-root .btn-save-exit:hover:not(:disabled),
.edubros-quiz-root .edubros-save-exit-btn:hover:not(:disabled) {
    transform: translateY(-1px) !important;
    box-shadow: 0 10px 20px rgba(15,23,42,.12), inset 0 1px 0 rgba(255,255,255,.2) !important;
}
.edubros-quiz-root .edubros-btn:active:not(:disabled),
.edubros-quiz-root .edubros-utility-btn:active:not(:disabled) {
    transform: translateY(0) scale(.99) !important;
}
.edubros-quiz-root .edubros-utility-btn,
.edubros-quiz-root .edubros-zoom-controls .edubros-utility-btn {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    padding: 0 !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    color: #334155 !important;
    border: 1px solid #dbe5f0 !important;
    box-shadow: 0 4px 10px rgba(15,23,42,.06) !important;
}
.edubros-quiz-root .edubros-zoom-controls {
    gap: 0.35rem !important;
}
.edubros-quiz-root .edubros-runtime-modal-actions .edubros-btn,
.edubros-quiz-root .edubros-modal-actions .edubros-btn {
    min-width: 138px !important;
    min-height: 42px !important;
    padding: 0.65rem 1rem !important;
}
.edubros-quiz-root .edubros-modal-exit-unsaved-btn {
    min-width: 196px !important;
}
.edubros-quiz-root .edubros-map-filter {
    min-height: 32px !important;
    padding: 0.45rem 0.75rem !important;
    background: #fff !important;
    color: #334155 !important;
    border: 1px solid #dbe5f0 !important;
    box-shadow: 0 4px 10px rgba(15,23,42,.05) !important;
}
.edubros-quiz-root .edubros-map-filter.active {
    background: #2563eb !important;
    color: #fff !important;
    border-color: #2563eb !important;
}
/* Warning 1/3 and 2/3 should not make the quiz vanish. Only final ban uses blackout. */
.edubros-quiz-root .edubros-security-overlay:not(.edubros-security-locked) {
    background: rgba(15, 23, 42, .34) !important;
    backdrop-filter: blur(4px) !important;
    -webkit-backdrop-filter: blur(4px) !important;
}
.edubros-quiz-root .edubros-security-overlay:not(.edubros-security-locked) .edubros-security-card {
    border-radius: 18px !important;
    padding: 1.75rem !important;
    max-width: 440px !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 24px 70px rgba(15,23,42,.24) !important;
}
.edubros-quiz-root .edubros-security-overlay:not(.edubros-security-locked) .edubros-security-title {
    color: #0f172a !important;
    font-size: 1.25rem !important;
}
.edubros-quiz-root .edubros-security-overlay:not(.edubros-security-locked) .edubros-security-count {
    color: #92400e !important;
    background: #fffbeb !important;
    border: 1px solid #fde68a !important;
    border-radius: 12px !important;
    padding: 0.75rem 0.9rem !important;
    margin-bottom: 1rem !important;
}
.edubros-quiz-root .edubros-security-continue-btn {
    min-height: 42px !important;
    padding: 0.65rem 1.1rem !important;
    background: #2563eb !important;
    color: #fff !important;
    border: 1px solid rgba(37,99,235,.26) !important;
    box-shadow: 0 8px 18px rgba(37,99,235,.18) !important;
}
.edubros-quiz-root.security-blackout .quiz-wrapper,
.edubros-quiz-root.edubros-quiz-banned .quiz-wrapper {
    filter: blur(10px) grayscale(.25) brightness(.72) !important;
    opacity: .38 !important;
}
.edubros-quiz-root .edubros-security-overlay.edubros-security-locked {
    background: rgba(2,6,23,.92) !important;
    backdrop-filter: blur(14px) brightness(.55) !important;
    -webkit-backdrop-filter: blur(14px) brightness(.55) !important;
}
@media (max-width: 560px) {
    .edubros-quiz-root .edubros-btn,
    .edubros-quiz-root .btn-premium-action {
        min-height: 38px !important;
        padding: 0.58rem .9rem !important;
    }
    .edubros-quiz-root .edubros-runtime-modal-actions .edubros-btn,
    .edubros-quiz-root .edubros-modal-actions .edubros-btn {
        width: 100% !important;
        min-width: 0 !important;
    }
}

/* ========================================
   EDUBROS PREMIUM USER-FACING BUTTON SYSTEM
   Final scoped override for all frontend/user buttons.
   ======================================== */
.edubros-quiz-root {
    --primary-blue: #2563eb;
    --primary-blue-hover: #1d4ed8;
    --primary-blue-light: #dbeafe;
    --primary-blue-muted: rgba(37, 99, 235, 0.16);
    --light-blue-bg: #eff6ff;
    --success-green: #10b981;
    --success-green-hover: #059669;
    --success-green-bg: #ecfdf5;
    --success-green-text: #065f46;
    --error-red: #ef4444;
    --error-red-hover: #dc2626;
    --error-red-bg: #fef2f2;
    --error-red-text: #991b1b;
    --warning-orange: #f59e0b;
    --warning-orange-hover: #d97706;
    --warning-orange-bg: #fffbeb;
    --warning-orange-text: #92400e;
    --text-dark: #0f172a;
    --text-medium: #475569;
    --text-light: #94a3b8;
    --border-color: #e2e8f0;
    --border-color-hover: #cbd5e1;
    --background-body: #f8fafc;
    --background-white: #ffffff;
    --surface-muted: #f1f5f9;
    --input-bg: #ffffff;
    --focus-ring: 0 0 0 3px rgba(37, 99, 235, 0.25);
    --transition-fast: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    --transition-normal: 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}
.edubros-quiz-root[data-theme="dark"] {
    --primary-blue: #3b82f6;
    --primary-blue-hover: #60a5fa;
    --primary-blue-light: #1e3a8a;
    --primary-blue-muted: rgba(59, 130, 246, 0.24);
    --light-blue-bg: rgba(59, 130, 246, 0.12);
    --success-green: #34d399;
    --success-green-hover: #10b981;
    --success-green-bg: #064e3b;
    --success-green-text: #a7f3d0;
    --error-red: #f87171;
    --error-red-hover: #ef4444;
    --error-red-bg: #7f1d1d;
    --error-red-text: #fecaca;
    --warning-orange: #fbbf24;
    --warning-orange-hover: #f59e0b;
    --warning-orange-bg: #78350f;
    --warning-orange-text: #fde68a;
    --text-dark: #f8fafc;
    --text-medium: #cbd5e1;
    --text-light: #64748b;
    --border-color: #334155;
    --border-color-hover: #475569;
    --background-body: #020617;
    --background-white: #0f172a;
    --surface-muted: #1e293b;
    --input-bg: #0f172a;
    --focus-ring: 0 0 0 3px rgba(59, 130, 246, 0.4);
}
.edubros-quiz-root,
.edubros-quiz-root button,
.edubros-quiz-root input,
.edubros-quiz-root select,
.edubros-quiz-root textarea {
    font-family: 'Sohne', 'OpenAI Sans', 'Inter', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    font-feature-settings: 'cv02', 'cv03', 'cv04', 'cv11';
}
.edubros-quiz-root button { font-family: inherit !important; outline: none !important; }
.edubros-quiz-root button:hover svg:not(.svg-no-scale) {
    filter: drop-shadow(0 0 8px var(--primary-blue-light));
    transform: scale(1.12);
}
.edubros-quiz-root .btn-variant-success:hover svg,
.edubros-quiz-root .edubros-btn-success:hover svg { filter: drop-shadow(0 0 8px var(--success-green-bg)); }
.edubros-quiz-root .btn-variant-danger:hover svg,
.edubros-quiz-root .edubros-btn-danger:hover svg { filter: drop-shadow(0 0 8px var(--error-red-bg)); }
.edubros-quiz-root .btn-premium-action,
.edubros-quiz-root .edubros-btn,
.edubros-quiz-root .edubros-security-continue-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 0 !important;
    height: 2.45rem !important;
    padding: 0 0.78rem !important;
    border-radius: 0.58rem !important;
    font-size: 0.8rem !important;
    line-height: 1.1 !important;
    font-weight: 700 !important;
    border: none !important;
    cursor: pointer !important;
    background: var(--primary-blue) !important;
    color: #ffffff !important;
    transition: all var(--transition-fast) !important;
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.2) !important;
    position: relative !important;
    overflow: hidden !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    letter-spacing: 0 !important;
}
.edubros-quiz-root .btn-premium-action:hover:not(:disabled),
.edubros-quiz-root .edubros-btn:hover:not(:disabled),
.edubros-quiz-root .edubros-security-continue-btn:hover:not(:disabled) {
    background: var(--primary-blue-hover) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 16px rgba(37, 99, 235, 0.3) !important;
}
.edubros-quiz-root .btn-premium-action:active:not(:disabled),
.edubros-quiz-root .edubros-btn:active:not(:disabled) { transform: translateY(1px) !important; }
.edubros-quiz-root .btn-premium-action:disabled,
.edubros-quiz-root .edubros-btn:disabled {
    opacity: 0.5 !important;
    cursor: not-allowed !important;
    transform: none !important;
    box-shadow: none !important;
}
.edubros-quiz-root .btn-premium-action svg,
.edubros-quiz-root .edubros-btn svg {
    width: 16px !important;
    height: 16px !important;
    flex-shrink: 0 !important;
    transition: all var(--transition-fast) !important;
}
.edubros-quiz-root .btn-premium-full,
.edubros-quiz-root .edubros-btn-full {
    width: 100% !important;
    height: 2.7rem !important;
    font-size: 0.88rem !important;
    margin-top: 0.45rem !important;
}
.edubros-quiz-root .btn-content-layer,
.edubros-quiz-root .edubros-btn-content {
    position: relative !important;
    z-index: 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.42rem !important;
    transition: opacity 0.2s !important;
}
.edubros-quiz-root .loading-slider-track {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    height: 100% !important;
    width: 0% !important;
    background: rgba(255, 255, 255, 0.25) !important;
    z-index: 1 !important;
    transition: width 0.15s linear !important;
}
.edubros-quiz-root .btn-premium-action.is-animating-processing .btn-content-layer {
    opacity: 0.6 !important;
    transform: scale(0.97) !important;
}
.edubros-quiz-root .btn-variant-neutral,
.edubros-quiz-root .edubros-btn-neutral,
.edubros-quiz-root .edubros-btn.secondary {
    background: var(--background-white) !important;
    border: 1.5px solid var(--border-color) !important;
    color: var(--text-dark) !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02) !important;
}
.edubros-quiz-root .btn-variant-neutral:hover:not(:disabled),
.edubros-quiz-root .edubros-btn-neutral:hover:not(:disabled),
.edubros-quiz-root .edubros-btn.secondary:hover:not(:disabled) {
    background: var(--surface-muted) !important;
    border-color: var(--border-color-hover) !important;
}
.edubros-quiz-root .btn-variant-success,
.edubros-quiz-root .edubros-btn-success,
.edubros-quiz-root .edubros-modal-save-exit-btn {
    background: var(--success-green) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.25) !important;
}
.edubros-quiz-root .btn-variant-success:hover:not(:disabled),
.edubros-quiz-root .edubros-btn-success:hover:not(:disabled),
.edubros-quiz-root .edubros-modal-save-exit-btn:hover:not(:disabled) { background: var(--success-green-hover) !important; }
.edubros-quiz-root .btn-variant-danger,
.edubros-quiz-root .edubros-btn-danger {
    background: var(--error-red) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(239, 68, 68, 0.25) !important;
}
.edubros-quiz-root .btn-variant-danger:hover:not(:disabled),
.edubros-quiz-root .edubros-btn-danger:hover:not(:disabled) { background: var(--error-red-hover) !important; }
.edubros-quiz-root .btn-variant-warning,
.edubros-quiz-root .edubros-btn-warning {
    background: var(--warning-orange) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(245, 158, 11, 0.25) !important;
}
.edubros-quiz-root .btn-variant-warning:hover:not(:disabled),
.edubros-quiz-root .edubros-btn-warning:hover:not(:disabled) { background: var(--warning-orange-hover) !important; }
.edubros-quiz-root .btn-save-exit,
.edubros-quiz-root .edubros-save-exit-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    background: var(--surface-muted) !important;
    color: var(--text-dark) !important;
    border: 1.5px solid var(--border-color) !important;
    border-radius: 7px !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 10px !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all var(--transition-fast) !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}
.edubros-quiz-root .btn-save-exit:hover,
.edubros-quiz-root .edubros-save-exit-btn:hover {
    background: var(--border-color) !important;
    transform: translateY(-1px) !important;
}
.edubros-quiz-root .utility-btn,
.edubros-quiz-root .edubros-utility-btn,
.edubros-quiz-root .edubros-mobile-toolbar-toggle,
.edubros-quiz-root .edubros-map-filter {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.4rem !important;
    min-height: 0 !important;
    height: 2rem !important;
    min-width: 2rem !important;
    width: auto !important;
    padding: 0 0.48rem !important;
    border-radius: 0.48rem !important;
    font-size: 0.76rem !important;
    line-height: 1.1 !important;
    font-weight: 700 !important;
    border: 1.5px solid var(--border-color) !important;
    background: var(--background-white) !important;
    color: var(--text-medium) !important;
    cursor: pointer !important;
    transition: all var(--transition-fast) !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}
.edubros-quiz-root .utility-btn:hover,
.edubros-quiz-root .edubros-utility-btn:hover,
.edubros-quiz-root .edubros-mobile-toolbar-toggle:hover,
.edubros-quiz-root .edubros-map-filter:hover {
    background: var(--surface-muted) !important;
    color: var(--text-dark) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05) !important;
}
.edubros-quiz-root .utility-btn svg,
.edubros-quiz-root .edubros-utility-btn svg {
    width: 15px !important;
    height: 15px !important;
    flex-shrink: 0 !important;
}
.edubros-quiz-root .voice-btn.listening,
.edubros-quiz-root .edubros-voice-btn.listening {
    background: var(--error-red-bg) !important;
    color: var(--error-red-hover) !important;
    border-color: rgba(239, 68, 68, 0.5) !important;
    animation: pulseRed 1.5s infinite !important;
}
.edubros-quiz-root .theme-toggle-btn,
.edubros-quiz-root .edubros-theme-toggle-btn {
    background: var(--surface-muted) !important;
    border: 1.5px solid var(--border-color) !important;
    color: var(--text-dark) !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all var(--transition-fast) !important;
}
.edubros-quiz-root .theme-toggle-btn:hover,
.edubros-quiz-root .edubros-theme-toggle-btn:hover {
    background: var(--border-color) !important;
    transform: rotate(15deg) !important;
}
.edubros-quiz-root #go-to-btn,
.edubros-quiz-root .go-to-btn,
.edubros-quiz-root .edubros-goto-btn {
    height: 100% !important;
    padding: 0 1rem !important;
    background: var(--surface-muted) !important;
    color: var(--text-dark) !important;
    border-radius: 0.5rem !important;
    border: none !important;
    cursor: pointer !important;
    font-weight: 800 !important;
    transition: background var(--transition-fast) !important;
}
.edubros-quiz-root #go-to-btn:hover,
.edubros-quiz-root .go-to-btn:hover,
.edubros-quiz-root .edubros-goto-btn:hover { background: var(--border-color) !important; }
.edubros-quiz-root .close-btn,
.edubros-quiz-root .edubros-close-btn {
    background: var(--surface-muted) !important;
    border: none !important;
    width: 2.25rem !important;
    height: 2.25rem !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    color: var(--text-medium) !important;
    transition: all var(--transition-fast) !important;
}
.edubros-quiz-root .close-btn:hover,
.edubros-quiz-root .edubros-close-btn:hover {
    color: var(--error-red) !important;
    background: var(--error-red-bg) !important;
    transform: rotate(90deg) scale(1.1) !important;
}
.edubros-quiz-root .search-result-item,
.edubros-quiz-root .edubros-search-result-item {
    width: 100% !important;
    text-align: left !important;
    border: 1.5px solid var(--border-color) !important;
    background: var(--surface-muted) !important;
    color: var(--text-dark) !important;
    border-radius: 0.75rem !important;
    padding: 1rem !important;
    margin-bottom: 0.5rem !important;
    cursor: pointer !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
    transition: all var(--transition-fast) !important;
}
.edubros-quiz-root .search-result-item:hover,
.edubros-quiz-root .edubros-search-result-item:hover {
    border-color: var(--primary-blue) !important;
    transform: translateX(6px) !important;
    background: var(--background-white) !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05) !important;
}
.edubros-quiz-root .grid-item,
.edubros-quiz-root .edubros-grid-item,
.edubros-quiz-root .edubros-mini-map-item {
    height: 3.2rem !important;
    min-height: 3.2rem !important;
    border-radius: 0.6rem !important;
    border: 1.5px solid var(--border-color) !important;
    background: var(--surface-muted) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: 800 !important;
    font-size: 1rem !important;
    cursor: pointer !important;
    color: var(--text-medium) !important;
    position: relative !important;
    transition: all var(--transition-fast) !important;
}
.edubros-quiz-root .grid-item:hover,
.edubros-quiz-root .edubros-grid-item:hover,
.edubros-quiz-root .edubros-mini-map-item:hover {
    border-color: var(--text-light) !important;
    color: var(--text-dark) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05) !important;
}
.edubros-quiz-root .grid-item.current,
.edubros-quiz-root .edubros-grid-item.current,
.edubros-quiz-root .edubros-mini-map-item.current {
    border-color: var(--primary-blue) !important;
    color: var(--primary-blue) !important;
    background: var(--light-blue-bg) !important;
    box-shadow: var(--focus-ring) !important;
}
.edubros-quiz-root .grid-item.answered,
.edubros-quiz-root .edubros-grid-item.answered,
.edubros-quiz-root .edubros-mini-map-item.answered {
    background: var(--border-color) !important;
    color: var(--text-dark) !important;
}
.edubros-quiz-root .grid-item.flagged,
.edubros-quiz-root .edubros-grid-item.flagged,
.edubros-quiz-root .edubros-mini-map-item.flagged {
    border-color: var(--warning-orange-hover) !important;
    background: var(--warning-orange-bg) !important;
    color: var(--warning-orange-text) !important;
}
.edubros-quiz-root .toggle-btn,
.edubros-quiz-root .edubros-toggle {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 3rem !important;
    height: 1.6rem !important;
    background-color: var(--border-color) !important;
    border-radius: 999px !important;
    position: relative !important;
    cursor: pointer !important;
    transition: background-color var(--transition-normal) !important;
    outline: none !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
    border: none !important;
}
.edubros-quiz-root .toggle-btn::before,
.edubros-quiz-root .edubros-toggle::before {
    content: '' !important;
    position: absolute !important;
    width: 1.35rem !important;
    height: 1.35rem !important;
    border-radius: 50% !important;
    background-color: #ffffff !important;
    top: 2px !important;
    left: 2px !important;
    transition: transform var(--transition-normal) !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15) !important;
}
.edubros-quiz-root .toggle-btn:checked,
.edubros-quiz-root .edubros-toggle:checked { background-color: var(--primary-blue) !important; }
.edubros-quiz-root .toggle-btn:checked::before,
.edubros-quiz-root .edubros-toggle:checked::before { transform: translateX(1.4rem) !important; }
@media (max-width: 768px) {
    .edubros-quiz-root .btn-premium-action,
    .edubros-quiz-root .edubros-btn {
        height: 2.22rem !important;
        padding: 0 0.58rem !important;
        border-radius: 0.5rem !important;
        font-size: 0.72rem !important;
    }
    .edubros-quiz-root .btn-premium-full,
    .edubros-quiz-root .edubros-btn-full {
        height: 2.45rem !important;
        font-size: 0.78rem !important;
    }
    .edubros-quiz-root .utility-btn,
    .edubros-quiz-root .edubros-utility-btn {
        height: 1.82rem !important;
        padding: 0 0.4rem !important;
        border-radius: 0.42rem !important;
        font-size: 0.68rem !important;
    }
    .edubros-quiz-root .utility-btn svg,
    .edubros-quiz-root .edubros-utility-btn svg,
    .edubros-quiz-root .btn-premium-action svg,
    .edubros-quiz-root .edubros-btn svg {
        width: 14px !important;
        height: 14px !important;
    }
    .edubros-quiz-root .navigation-footer,
    .edubros-quiz-root .edubros-navigation-footer {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 0.6rem !important;
    }
    .edubros-quiz-root #prev-btn,
    .edubros-quiz-root #next-btn,
    .edubros-quiz-root #toggle-map-btn,
    .edubros-quiz-root #edubros-prev-btn,
    .edubros-quiz-root #edubros-next-btn,
    .edubros-quiz-root #edubros-map-btn { width: 100% !important; }
    .edubros-quiz-root .go-to-container,
    .edubros-quiz-root .edubros-go-to-container {
        grid-column: span 2 !important;
        justify-content: center !important;
        width: 100% !important;
    }
    .edubros-quiz-root #finish-btn,
    .edubros-quiz-root #edubros-submit-btn {
        grid-column: span 2 !important;
        width: 100% !important;
    }
}
@media (max-width: 480px) {
    .edubros-quiz-root .theme-toggle-btn,
    .edubros-quiz-root .edubros-theme-toggle-btn,
    .edubros-quiz-root .btn-save-exit,
    .edubros-quiz-root .edubros-save-exit-btn { height: 36px !important; }
    .edubros-quiz-root .theme-toggle-btn,
    .edubros-quiz-root .edubros-theme-toggle-btn { width: 36px !important; }
    .edubros-quiz-root .btn-save-exit,
    .edubros-quiz-root .edubros-save-exit-btn {
        padding: 0 10px !important;
        font-size: 0.78rem !important;
    }
    .edubros-quiz-root .toggle-btn,
    .edubros-quiz-root .edubros-toggle {
        width: 2.55rem !important;
        height: 1.35rem !important;
    }
    .edubros-quiz-root .toggle-btn::before,
    .edubros-quiz-root .edubros-toggle::before {
        width: 1.12rem !important;
        height: 1.12rem !important;
    }
    .edubros-quiz-root .toggle-btn:checked::before,
    .edubros-quiz-root .edubros-toggle:checked::before { transform: translateX(1.2rem) !important; }
}

/* ----------------------------------------------------------
   RESULT DASHBOARD REFINEMENT (5.3.14.2)
   Visual-only polish for the existing result markup.
   ---------------------------------------------------------- */
.edubros-quiz-root .edubros-summary > h2 {
    margin: 0 0 1.35rem !important;
    color: var(--text-dark);
    font-size: clamp(1.55rem, 3vw, 2rem);
    font-weight: 750;
    letter-spacing: -0.025em;
}
.edubros-quiz-root .edubros-summary-card {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: clamp(1.65rem, 4vw, 2.8rem);
    border: 1px solid var(--border-color);
    border-radius: 1.45rem;
    background:
        radial-gradient(circle at 50% 0, rgba(37, 99, 235, 0.09), transparent 42%),
        linear-gradient(145deg, var(--background-white), var(--surface-muted));
    box-shadow:
        0 24px 55px -35px rgba(15, 23, 42, 0.42),
        inset 0 1px 0 rgba(255, 255, 255, 0.78);
}
.edubros-quiz-root .edubros-summary-card::after {
    content: '';
    position: absolute;
    z-index: -1;
    top: -110px;
    left: 50%;
    width: 300px;
    height: 220px;
    border-radius: 50%;
    background: rgba(37, 99, 235, 0.07);
    filter: blur(34px);
    transform: translateX(-50%);
    pointer-events: none;
}
.edubros-quiz-root .edubros-score-ring {
    width: clamp(144px, 23vw, 164px);
    height: clamp(144px, 23vw, 164px);
    margin-bottom: 1.65rem;
    border: 3px solid var(--text-dark);
    box-shadow:
        0 18px 35px -23px rgba(15, 23, 42, 0.75),
        0 0 0 7px rgba(255, 255, 255, 0.34);
}
.edubros-quiz-root .edubros-score-ring::before {
    width: calc(100% - 36px);
    height: calc(100% - 36px);
    background: var(--background-white);
    box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.18);
}
.edubros-quiz-root .edubros-score-number {
    font-size: clamp(2.55rem, 7vw, 3rem);
    font-weight: 850;
    letter-spacing: -0.055em;
}
.edubros-quiz-root .edubros-result-badges {
    gap: 0.7rem;
    margin-top: 1.35rem;
}
.edubros-quiz-root .edubros-badge {
    min-height: 42px;
    padding: 0.55rem 1rem;
    border-radius: 0.7rem;
    box-shadow: 0 9px 20px -18px rgba(15, 23, 42, 0.7);
    transition: transform var(--transition-fast), box-shadow var(--transition-fast);
}
.edubros-quiz-root .edubros-badge:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 24px -18px rgba(15, 23, 42, 0.75);
}
.edubros-quiz-root .edubros-result-meta {
    display: grid;
    grid-template-columns: repeat(3, minmax(90px, 1fr));
    width: min(100%, 470px);
    gap: 0.55rem;
    margin-top: 1.5rem;
}
.edubros-quiz-root .edubros-meta-item {
    min-width: 0;
    padding: 0.65rem 0.45rem;
    border-radius: 0.8rem;
    background: var(--background-white);
}
.edubros-quiz-root .edubros-meta-item strong {
    font-size: clamp(1.15rem, 4vw, 1.45rem);
}
.edubros-quiz-root .edubros-percentile-text {
    max-width: 600px;
    margin: 1rem auto 0;
    line-height: 1.55;
}
.edubros-quiz-root .edubros-review-map {
    margin: 1.75rem 0 1.1rem;
    padding: clamp(0.9rem, 2.5vw, 1.15rem);
    border: 1px solid var(--border-color);
    border-radius: 1rem;
    background: var(--background-white);
    box-shadow: 0 16px 38px -32px rgba(15, 23, 42, 0.7);
}
.edubros-quiz-root .edubros-review-map-head {
    align-items: center;
    margin-bottom: 0.85rem;
    font-size: 0.86rem;
}
.edubros-quiz-root .edubros-review-map-head strong {
    font-size: 0.95rem;
    font-weight: 800;
}
.edubros-quiz-root .edubros-review-mini-map {
    gap: 0.42rem;
}
.edubros-quiz-root .edubros-review-mini-map .edubros-mini-map-item {
    min-width: 25px;
    height: 52px;
    border-radius: 0.65rem;
    transition: transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);
}
.edubros-quiz-root .edubros-review-mini-map .edubros-mini-map-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 18px -13px rgba(15, 23, 42, 0.75);
}
.edubros-quiz-root .quizmaker-result-progress {
    gap: 0.65rem;
    margin: 1.05rem 0 1.2rem;
}
.edubros-quiz-root .quizmaker-result-progress div {
    min-height: 72px;
    align-content: center;
    padding: 0.75rem;
    border-color: var(--border-color);
    border-radius: 0.85rem;
    background: linear-gradient(155deg, var(--background-white), var(--surface-muted));
    box-shadow: 0 12px 28px -25px rgba(15, 23, 42, 0.7);
    transition: transform var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);
}
.edubros-quiz-root .quizmaker-result-progress div:hover {
    transform: translateY(-2px);
    border-color: var(--primary-blue-muted);
    box-shadow: 0 16px 30px -24px rgba(37, 99, 235, 0.55);
}
.edubros-quiz-root .quizmaker-result-progress strong {
    color: var(--text-dark);
    font-size: 1.05rem;
}
@media (max-width: 600px) {
    .edubros-quiz-root .edubros-summary-card {
        padding: 1.35rem 1rem;
        border-radius: 1.15rem;
    }
    .edubros-quiz-root .edubros-result-badges {
        gap: 0.5rem;
    }
    .edubros-quiz-root .edubros-badge {
        min-height: 39px;
        padding: 0.48rem 0.7rem;
        font-size: 0.82rem;
    }
    .edubros-quiz-root .edubros-result-meta {
        gap: 0.35rem;
    }
    .edubros-quiz-root .edubros-meta-item {
        padding: 0.55rem 0.2rem;
        font-size: 0.67rem;
    }
    .edubros-quiz-root .edubros-review-map-head {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.25rem;
    }
}
@media (prefers-reduced-motion: reduce) {
    .edubros-quiz-root .edubros-badge,
    .edubros-quiz-root .edubros-review-mini-map .edubros-mini-map-item,
    .edubros-quiz-root .quizmaker-result-progress div {
        transition: none;
    }
    .edubros-quiz-root .edubros-badge:hover,
    .edubros-quiz-root .edubros-review-mini-map .edubros-mini-map-item:hover,
    .edubros-quiz-root .quizmaker-result-progress div:hover {
        transform: none;
    }
}

/* Quiz-scoped explanation design. Values are server-validated and emitted as
   variables on one quiz root, so they cannot alter the theme or another quiz. */
.edubros-quiz-root[data-explanation-design="quiz"] .explanation-box,
.edubros-quiz-root[data-explanation-design="quiz"] .edubros-explanation-box {
    box-sizing: border-box !important;
    width: var(--edubros-quiz-explanation-width) !important;
    max-width: var(--edubros-quiz-explanation-max-width) !important;
    margin: var(--edubros-quiz-explanation-margin) !important;
    margin-inline: var(--edubros-quiz-explanation-inline-margin) !important;
    border-width: var(--edubros-quiz-explanation-border-width) !important;
    border-style: var(--edubros-quiz-explanation-border-style) !important;
    border-color: var(--edubros-quiz-explanation-border-color) !important;
    border-radius: var(--edubros-quiz-explanation-border-radius) !important;
    background: var(--edubros-quiz-explanation-background) !important;
    color: var(--edubros-quiz-explanation-text-color) !important;
    box-shadow: var(--edubros-quiz-explanation-shadow) !important;
    overflow: hidden;
}
.edubros-quiz-root[data-explanation-design="quiz"] .expl-premium-header,
.edubros-quiz-root[data-explanation-design="quiz"] .edubros-expl-premium-header {
    border-radius: 0 !important;
    padding: var(--edubros-quiz-explanation-header-padding) !important;
    background: var(--edubros-quiz-explanation-header-background) !important;
    color: var(--edubros-quiz-explanation-header-color) !important;
    font-size: var(--edubros-quiz-explanation-header-font-size) !important;
    text-align: var(--edubros-quiz-explanation-header-align) !important;
}
.edubros-quiz-root[data-explanation-design="quiz"] .explanation-content,
.edubros-quiz-root[data-explanation-design="quiz"] .edubros-explanation-content {
    box-sizing: border-box !important;
    padding: var(--edubros-quiz-explanation-padding) !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: var(--edubros-quiz-explanation-background) !important;
    color: var(--edubros-quiz-explanation-text-color) !important;
    font-size: var(--edubros-quiz-explanation-font-size) !important;
    font-weight: var(--edubros-quiz-explanation-font-weight) !important;
    line-height: var(--edubros-quiz-explanation-line-height) !important;
    text-align: var(--edubros-quiz-explanation-text-align) !important;
}
.edubros-quiz-root[data-explanation-design="quiz"] .edubros-expl-list li,
.edubros-quiz-root[data-explanation-design="quiz"] .expl-list li {
    color: var(--edubros-quiz-explanation-text-color);
}
@media (max-width: 768px) {
    .edubros-quiz-root[data-explanation-design="quiz"] .explanation-box,
    .edubros-quiz-root[data-explanation-design="quiz"] .edubros-explanation-box {
        width: var(--edubros-quiz-explanation-mobile-width) !important;
    }
    .edubros-quiz-root[data-explanation-design="quiz"] .explanation-content,
    .edubros-quiz-root[data-explanation-design="quiz"] .edubros-explanation-content {
        padding: var(--edubros-quiz-explanation-mobile-padding) !important;
        font-size: var(--edubros-quiz-explanation-mobile-font-size) !important;
        text-align: var(--edubros-quiz-explanation-mobile-text-align) !important;
    }
}
/* v5.5.2 administrator preview and scheduled-opening status */
.edubros-quiz-root .edubros-admin-preview-banner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin: 0 0 1rem;
    padding: .9rem 1rem;
    border: 1px solid #93c5fd;
    border-radius: .85rem;
    background: #eff6ff;
    color: #1e3a8a;
    text-align: left;
}
.edubros-quiz-root .edubros-admin-preview-banner strong,
.edubros-quiz-root .edubros-admin-preview-banner span {
    display: block;
}
.edubros-quiz-root .edubros-admin-preview-banner span {
    margin-top: .2rem;
    font-size: .78rem;
    line-height: 1.45;
}
.edubros-quiz-root .edubros-admin-preview-edit {
    flex: 0 0 auto;
    padding: .55rem .8rem;
    border-radius: .65rem;
    background: #2563eb;
    color: #fff !important;
    font-size: .8rem;
    font-weight: 750;
    text-decoration: none;
}
.edubros-quiz-root .edubros-real-exam-countdown {
    margin: .65rem 0;
    color: #1d4ed8;
    font-weight: 750;
}
.edubros-quiz-root .edubros-info-msg {
    margin: 0 0 1rem;
    padding: .85rem 1rem;
    border: 1px solid #bfdbfe;
    border-radius: .75rem;
    background: #eff6ff;
    color: #1e40af;
}
@media (max-width: 600px) {
    .edubros-quiz-root .edubros-admin-preview-banner {
        align-items: stretch;
        flex-direction: column;
    }
    .edubros-quiz-root .edubros-admin-preview-edit {
        text-align: center;
    }
}
.edubros-user-results {
    --edubros-results-blue: #2563eb;
    --edubros-results-green: #059669;
    --edubros-results-red: #dc2626;
    max-width: 1040px;
    margin: 32px auto;
    padding: 28px;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    background: #fff;
    color: #0f172a;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .08);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.edubros-user-results h2,
.edubros-user-results h3,
.edubros-user-results p {
    margin-top: 0;
}

.edubros-user-results-heading,
.edubros-result-detail-heading,
.edubros-result-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.edubros-user-results-heading {
    padding-bottom: 22px;
    border-bottom: 1px solid #e2e8f0;
}

.edubros-user-results-heading h2,
.edubros-result-detail-heading h2 {
    margin-bottom: 6px;
    font-size: clamp(1.5rem, 3vw, 2.15rem);
}

.edubros-user-results-heading p,
.edubros-result-detail-heading p,
.edubros-result-row-main p,
.edubros-answer-review-heading p {
    margin-bottom: 0;
    color: #64748b;
}

.edubros-results-count,
.edubros-result-status {
    display: inline-flex;
    align-items: center;
    width: max-content;
    padding: 6px 10px;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 800;
}

.edubros-result-status.is-passed {
    background: #ecfdf5;
    color: #047857;
}

.edubros-result-status.is-failed {
    background: #fef2f2;
    color: #b91c1c;
}

.edubros-results-list {
    display: grid;
    gap: 14px;
    margin-top: 22px;
}

.edubros-result-row {
    padding: 18px;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    background: #f8fafc;
}

.edubros-result-row-main {
    flex: 1 1 300px;
}

.edubros-result-row-main h3 {
    margin: 8px 0 4px;
    font-size: 1.05rem;
}

.edubros-result-row-stats {
    display: flex;
    gap: 20px;
}

.edubros-result-row-stats span,
.edubros-result-summary-grid span {
    display: grid;
    gap: 2px;
    color: #64748b;
    font-size: 12px;
    font-weight: 700;
}

.edubros-result-row-stats strong,
.edubros-result-summary-grid strong {
    color: #0f172a;
    font-size: 1.08rem;
}

.edubros-results-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 10px;
    background: var(--edubros-results-blue);
    color: #fff !important;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none !important;
}

.edubros-results-button:hover {
    background: #1d4ed8;
}

.edubros-results-empty,
.edubros-user-results-login {
    text-align: center;
}

.edubros-results-empty {
    padding: 42px 18px;
}

.edubros-user-results-login .edubros-results-button {
    margin-top: 8px;
}

.edubros-results-pagination {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 22px;
}

.edubros-results-pagination a {
    display: inline-grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border: 1px solid #cbd5e1;
    border-radius: 9px;
    color: #334155;
    text-decoration: none;
}

.edubros-results-pagination a[aria-current="page"] {
    border-color: var(--edubros-results-blue);
    background: var(--edubros-results-blue);
    color: #fff;
}

.edubros-results-back {
    display: inline-flex;
    margin-bottom: 20px;
    color: var(--edubros-results-blue);
    font-weight: 800;
    text-decoration: none;
}

.edubros-result-detail-heading {
    padding-bottom: 22px;
    border-bottom: 1px solid #e2e8f0;
}

.edubros-result-detail-heading .edubros-result-status {
    margin-bottom: 10px;
}

.edubros-result-percentage {
    display: grid;
    place-items: center;
    width: 112px;
    height: 112px;
    flex: 0 0 112px;
    border: 10px solid #dbeafe;
    border-radius: 50%;
    color: #1d4ed8;
    font-size: 1.55rem;
    font-weight: 900;
}

.edubros-result-summary-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 12px;
    margin: 22px 0 30px;
}

.edubros-result-summary-grid span {
    padding: 14px;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    background: #f8fafc;
}

.edubros-result-summary-grid .is-correct strong {
    color: var(--edubros-results-green);
}

.edubros-result-summary-grid .is-wrong strong {
    color: var(--edubros-results-red);
}

.edubros-answer-review-heading {
    margin-bottom: 16px;
}

.edubros-answer-review-heading h3 {
    margin-bottom: 5px;
}

.edubros-personal-answer-review {
    display: grid;
    gap: 16px;
}

.edubros-answer-review-card {
    overflow: hidden;
    border: 1px solid #e2e8f0;
    border-left: 5px solid #94a3b8;
    border-radius: 14px;
    background: #fff;
}

.edubros-answer-review-card.is-correct {
    border-left-color: var(--edubros-results-green);
}

.edubros-answer-review-card.is-wrong {
    border-left-color: var(--edubros-results-red);
}

.edubros-answer-review-card.is-skipped {
    border-left-color: #d97706;
}

.edubros-answer-review-top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 16px;
    background: #f8fafc;
    color: #475569;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.edubros-answer-review-card.is-correct .edubros-answer-review-top strong {
    color: var(--edubros-results-green);
}

.edubros-answer-review-card.is-wrong .edubros-answer-review-top strong {
    color: var(--edubros-results-red);
}

.edubros-answer-review-question {
    padding: 18px 18px 10px;
    font-size: 1.04rem;
    font-weight: 800;
    line-height: 1.55;
}

.edubros-answer-comparison {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    padding: 8px 18px 18px;
}

.edubros-answer-comparison > div {
    padding: 13px;
    border-radius: 10px;
    background: #f8fafc;
    line-height: 1.5;
}

.edubros-answer-comparison span {
    display: block;
    margin-bottom: 5px;
    color: #64748b;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.edubros-answer-explanation {
    padding: 16px 18px;
    border-top: 1px solid #e2e8f0;
    background: #eff6ff;
    line-height: 1.65;
}

.edubros-answer-explanation > strong {
    display: block;
    margin-bottom: 6px;
    color: #1d4ed8;
}

@media (max-width: 800px) {
    .edubros-user-results {
        margin: 18px 0;
        padding: 18px;
        border-radius: 14px;
    }

    .edubros-result-row {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .edubros-result-row-stats {
        width: 100%;
        justify-content: space-between;
    }

    .edubros-result-summary-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 520px) {
    .edubros-user-results-heading,
    .edubros-result-detail-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .edubros-result-percentage {
        width: 88px;
        height: 88px;
        flex-basis: 88px;
        border-width: 8px;
    }

    .edubros-result-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .edubros-answer-comparison {
        grid-template-columns: 1fr;
    }
}
