.premium-hero-lock { display:flex; align-items:center; gap:20px; background:linear-gradient(135deg, #1d4ed8, #4338ca); color:white; padding:20px 24px; border-radius:var(--radius-lg); margin-bottom:24px; flex-wrap:wrap; }
.premium-hero-lock i { font-size:2rem; }
.premium-hero-lock h3 { color:white; margin-bottom:6px; }
.topic-premium-inline { display:flex; align-items:center; gap:12px; background:#fffbeb; border-radius:var(--radius); padding:14px; }
.topic-premium-inline p { margin:0; flex:1; }
.practice-free-plan-banner { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:14px; margin:0 0 22px; padding:18px 20px; border-radius:var(--radius-lg); background:linear-gradient(180deg,#f8fbff,#eef4fb); border:1px solid rgba(191,219,254,.75); color:#29415d; }
.practice-free-plan-banner strong { color:#0f3b82; }
.highlight-question { border:2px solid #f97316; background:#fff7ed; box-shadow:0 18px 40px rgba(249,115,22,.18); }
.conversion-card { position:relative; display:flex; justify-content:space-between; align-items:center; gap:24px; padding:26px 28px; margin:22px 0; border-radius:28px; border:1px solid rgba(148,163,184,.16); box-shadow:0 24px 50px -36px rgba(15,23,42,.35); flex-wrap:wrap; overflow:hidden; isolation:isolate; }
.conversion-card::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at top right, rgba(255,255,255,.55), transparent 38%); pointer-events:none; z-index:-1; }
.conversion-card-soft { background:linear-gradient(135deg,#f8fbff 0%,#eef6ff 52%,#ffffff 100%); }
.conversion-card-premium { background:linear-gradient(135deg,#fff7ed 0%,#ffedd5 55%,#fffaf5 100%); }
.conversion-card-strong { background:linear-gradient(135deg,#0f172a 0%,#1d4ed8 55%,#0f3b82 100%); color:#fff; border-color:rgba(191,219,254,.24); box-shadow:0 28px 60px -34px rgba(29,78,216,.58); }
.conversion-card-strong h3, .conversion-card-strong p, .conversion-card-strong .conversion-kicker { color:#fff; }
.conversion-kicker { display:inline-flex; align-items:center; gap:8px; margin-bottom:10px; padding:6px 12px; border-radius:999px; background:rgba(255,255,255,.72); box-shadow:inset 0 0 0 1px rgba(191,219,254,.55); font-size:.74rem; font-weight:800; text-transform:uppercase; letter-spacing:.1em; color:#0f3b82; }
.conversion-card-strong .conversion-kicker { background:rgba(255,255,255,.12); box-shadow:inset 0 0 0 1px rgba(191,219,254,.24); color:#dbeafe; }
.conversion-copy { flex:1 1 420px; }
.conversion-copy h3 { margin:0 0 10px; font-size:1.45rem; line-height:1.15; letter-spacing:-.02em; }
.conversion-copy p { margin:0; max-width:720px; color:var(--gray); line-height:1.7; }
.conversion-card-strong .conversion-copy p { color:#dbeafe; }
.conversion-actions { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.conversion-actions .btn { min-width:190px; justify-content:center; box-shadow:0 16px 28px -22px rgba(15,23,42,.45); }
.conversion-actions .btn-primary { background:linear-gradient(135deg,#2563eb,#1d4ed8); border:none; }
.conversion-actions .btn-outline { background:rgba(255,255,255,.78); border-color:rgba(148,163,184,.34); }
.conversion-card-strong .btn-outline { background:rgba(255,255,255,.12); color:#fff; border-color:rgba(191,219,254,.22); }
.preview-locked { position:relative; overflow:hidden; background:linear-gradient(180deg,#fff,#f8fafc); border:1px solid rgba(148,163,184,.2); box-shadow:0 18px 40px -34px rgba(15,23,42,.35); }
.preview-locked .question-preview-body, .preview-locked .question-preview-footer { filter:blur(1.5px); opacity:.82; }
.preview-locked::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(248,250,252,.76)); pointer-events:none; }
.preview-veil { position:absolute; inset:auto 16px 16px auto; background:rgba(15,23,42,.86); color:#fff; padding:9px 13px; border-radius:999px; font-size:.76rem; font-weight:800; box-shadow:0 14px 24px -18px rgba(15,23,42,.8); pointer-events:none; }
.preview-veil span { display:flex; align-items:center; gap:8px; }
.topic-conversion-tail { margin-top:26px; }
@media (max-width:768px){ .conversion-card { padding:20px; border-radius:24px; gap:18px; } .conversion-copy h3 { font-size:1.2rem; } .conversion-kicker { font-size:.7rem; padding:5px 10px; } .conversion-actions { width:100%; } .conversion-actions .btn { flex:1 1 100%; min-width:0; } .preview-veil { left:16px; right:16px; inset:auto 16px 16px 16px; justify-content:center; } }

.epw-admin-question-meta{
    margin:10px 0 10px;
    padding:8px 10px;
    border:1px dashed #f97316;
    border-radius:10px;
    background:#fff7ed;
    color:#9a3412;
    font-size:12px;
    font-weight:700;
    line-height:1.55;
}
.epw-admin-question-meta span{
    color:#c2410c;
    margin:0 4px;
}

.concept-hero {
    background:
        radial-gradient(circle at top left, rgba(251,191,36,.10), transparent 40%),
        radial-gradient(circle at right center, rgba(37,99,235,.08), transparent 40%),
        linear-gradient(135deg, #ffffff 0%, #f1f5f9 100%);
}
.concept-hero::before { display:none; }
.concept-hero::after {
    width:420px;
    height:420px;
    right:-150px;
    top:-130px;
    background:radial-gradient(circle, rgba(255,255,255,.24) 0%, rgba(255,255,255,0) 74%);
}
.concept-hero .epw-breadcrumb__list { color:#475569; }
.concept-hero .epw-breadcrumb__item:not(:last-child)::after { color:rgba(71,85,105,.55); }
.concept-hero .epw-breadcrumb__item a { color:#1e3a8a; }
.concept-hero .epw-breadcrumb__item a:hover { color:#172554; }
.concept-hero .epw-breadcrumb__item--current span { color:#0f172a; }
.concept-hero__layout { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(280px,.9fr); gap:28px; align-items:center; }
.concept-hero__copy {
    position:relative;
    z-index:1;
    opacity:1;
}
.hero-content-card {
    background:#ffffff;
    border-radius:20px;
    padding:28px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    max-width:720px;
}
.concept-hero .epw-breadcrumb { margin-bottom:18px; }
.concept-hero__eyebrow { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:16px; }
.concept-hero__eyebrow span { display:inline-flex; padding:8px 14px; border-radius:999px; background:#eff6ff; color:#0f3b82; font-size:.82rem; font-weight:700; }
.concept-hero__eyebrow--free {
    background:#ecfdf5 !important;
    color:#047857 !important;
}
.topic-hero .concept-hero__title { font-size:40px; font-weight:800; color:#0f172a; line-height:1.2; margin-bottom:14px; max-width:14ch; text-wrap:balance; }
.topic-hero p.concept-hero__subtitle { max-width:760px; font-size:1.06rem; line-height:1.8; color:#444; margin-bottom:0; }
.access-strip {
    display:grid;
    gap:12px;
    margin:18px 0 4px;
}
.access-strip__group {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    align-items:center;
}
.access-strip__group--premium .access-strip__item {
    background:#f8fafc;
    border-style:dashed;
}
.access-strip__label,
.access-strip__item,
.access-chip {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:0.45rem 0.85rem;
    border-radius:999px;
    font-size:.8rem;
    font-weight:700;
}
.access-strip__label {
    background:#0f172a;
    color:#fff;
}
.access-strip__item {
    background:#ffffff;
    border:1px solid rgba(226,232,240,.95);
    color:#334155;
}
.access-chip {
    background:#eff6ff;
    color:#1d4ed8;
    border:1px solid rgba(147,197,253,.45);
    width:max-content;
}
.access-chip--free {
    background:#ecfdf5;
    color:#047857;
    border-color:rgba(16,185,129,.22);
}
.access-chip--premium {
    background:#eff6ff;
    color:#1d4ed8;
    border-color:rgba(147,197,253,.35);
}
.concept-hero__media img { width:100%; border-radius:28px; box-shadow:0 28px 80px -42px rgba(15,23,42,.42); }
.concept-stats { display:flex; flex-wrap:wrap; gap:12px; margin:22px 0; }
.concept-hero__meta { opacity:1; }
.concept-stat { display:inline-flex; align-items:center; gap:10px; padding:10px 14px; border-radius:999px; background:rgba(255,255,255,.84); border:1px solid rgba(148,163,184,.2); box-shadow:0 16px 40px -30px rgba(15,23,42,.25); color:#555; backdrop-filter:blur(8px); }
.concept-stat i { color:#f97316; }
.concept-hero__actions { margin-top:16px; display:flex; gap:12px; flex-wrap:wrap; }
.concept-hero__actions .btn { min-height:52px; padding:0.95rem 1.6rem !important; font-size:1rem !important; font-weight:700 !important; align-items:center; }
.concept-hero__assist {
    margin-top:18px;
    display:flex;
    flex-wrap:wrap;
    gap:10px 14px;
    align-items:center;
    padding-top:16px;
    border-top:1px solid rgba(226,232,240,.95);
}
.concept-hero__assist-text {
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#475569;
    font-size:.96rem;
    font-weight:600;
}
.concept-hero__assist-link {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:0.65rem 1rem;
    border-radius:999px;
    background:#eff6ff;
    color:#1d4ed8;
    font-weight:700;
    border:1px solid rgba(147,197,253,.5);
}
.concept-hero__assist-link--soft {
    background:#fff7ed;
    color:#c2410c;
    border-color:rgba(253,186,116,.45);
}
.concept-audio-transcript {
    margin-top:16px;
    padding:16px;
    border-radius:18px;
    background:#f8fafc;
    border:1px solid rgba(226,232,240,.95);
}
.topic-link-pills {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}
.topic-link-pill {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0.8rem 1rem;
    border-radius:999px;
    background:#eff6ff;
    color:#1d4ed8;
    border:1px solid rgba(147,197,253,.45);
    font-weight:700;
}
.topic-link-pill--accent {
    background:#fff7ed;
    color:#c2410c;
    border-color:rgba(253,186,116,.45);
}
.why-topic-matters-section {
    padding-top:20px;
}
.why-topic-matters {
    padding:28px;
    border-radius:30px;
    background:
        radial-gradient(circle at top right, rgba(37,99,235,.08), transparent 34%),
        linear-gradient(135deg, #f8fbff 0%, #ffffff 45%, #fff7ed 100%);
    border:1px solid rgba(191,219,254,.75);
    box-shadow:0 28px 54px -42px rgba(15,23,42,.24);
}
.why-topic-matters__header {
    max-width:58rem;
    margin-bottom:18px;
}
.why-topic-matters__header h2 {
    margin:10px 0;
    color:#0f172a;
}
.why-topic-matters__header p {
    margin:0;
    color:#475569;
    line-height:1.75;
}
.why-topic-matters__grid {
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:16px;
}
.why-topic-card {
    padding:22px;
    border-radius:24px;
    background:rgba(255,255,255,.92);
    border:1px solid rgba(226,232,240,.95);
    box-shadow:0 18px 34px -28px rgba(15,23,42,.18);
}
.why-topic-card__icon {
    width:48px;
    height:48px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:16px;
    background:linear-gradient(135deg,#eff6ff,#fff7ed);
    color:#1d4ed8;
    font-size:1.1rem;
    margin-bottom:14px;
}
.why-topic-card h3 {
    margin:0 0 8px;
    color:#0f172a;
    font-size:1.02rem;
}
.why-topic-card p {
    margin:0;
    color:#475569;
    line-height:1.7;
}
.shortcut-first-section {
    padding-top:0;
}
.shortcut-band {
    padding:28px;
    border-radius:30px;
    background:linear-gradient(135deg,#0f172a 0%, #12315f 52%, #1d4ed8 100%);
    color:#fff;
    box-shadow:0 30px 60px -42px rgba(15,23,42,.52);
}
.shortcut-band .concept-panel__tag {
    background:rgba(255,255,255,.14);
    color:#fff;
}
.shortcut-band__intro {
    max-width:44rem;
    margin-bottom:18px;
}
.shortcut-band__intro h2,
.shortcut-band__intro p {
    color:#fff;
}
.shortcut-band__grid {
    display:grid;
    grid-template-columns:1.2fr 1fr 1fr;
    gap:16px;
}
.shortcut-band__card {
    padding:20px;
    border-radius:24px;
    background:rgba(255,255,255,.1);
    border:1px solid rgba(255,255,255,.16);
    backdrop-filter:blur(4px);
}
.shortcut-band__card--primary {
    background:linear-gradient(135deg, rgba(255,255,255,.16), rgba(251,191,36,.18));
}
.shortcut-band__label {
    display:inline-flex;
    padding:6px 12px;
    border-radius:999px;
    background:rgba(15,23,42,.28);
    color:#f8fafc;
    font-size:.76rem;
    font-weight:800;
    letter-spacing:.05em;
    text-transform:uppercase;
    margin-bottom:10px;
}
.shortcut-band__card p {
    margin:0;
    color:#eff6ff;
    line-height:1.75;
}
.faster-steps {
    margin-top:22px;
}
.faster-steps__grid {
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:14px;
}
.faster-step {
    padding:18px;
    border-radius:22px;
    background:#ffffff;
    border:1px solid rgba(226,232,240,.95);
    box-shadow:0 18px 40px -34px rgba(15,23,42,.16);
}
.faster-step__count {
    display:inline-flex;
    margin-bottom:12px;
    padding:6px 10px;
    border-radius:999px;
    background:#eff6ff;
    color:#1d4ed8;
    font-size:.76rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.faster-step strong {
    display:block;
    margin-bottom:8px;
    color:#0f172a;
}
.faster-step p {
    margin:0;
    color:#64748b;
    line-height:1.65;
}
.topic-progress-card {
    margin-top:18px;
    padding:22px;
    border-radius:22px;
    background:linear-gradient(135deg,#f8fafc 0%,#ffffff 100%);
    border:1px solid rgba(226,232,240,.95);
    box-shadow:0 18px 40px -34px rgba(15,23,42,.22);
}
.topic-progress-card__header {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:14px;
    margin-bottom:10px;
}
.topic-progress-card__header h3 {
    margin:0;
    color:#0f172a;
}
.topic-progress-card__status {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:0.4rem 0.8rem;
    border-radius:999px;
    font-size:.82rem;
    font-weight:800;
    white-space:nowrap;
}
.topic-progress-card__status--started,
.topic-progress-card__status--not-started {
    background:#fff7ed;
    color:#c2410c;
}
.topic-progress-card__status--in_progress {
    background:#eff6ff;
    color:#1d4ed8;
}
.topic-progress-card__status--completed {
    background:#ecfdf5;
    color:#047857;
}
.topic-progress-card__stats {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin:14px 0 0;
}
.topic-progress-card__stats span {
    display:inline-flex;
    padding:8px 12px;
    border-radius:999px;
    background:#fff;
    border:1px solid rgba(226,232,240,.9);
    color:#334155;
    font-weight:600;
}
.topic-progress-card__hint {
    margin-top:14px;
    color:#475569;
}
.topic-progress-card__hint a {
    color:#1d4ed8;
    font-weight:700;
}
.topic-progress-card__actions {
    margin-top:16px;
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}
.topic-progress-card__actions form {
    margin:0;
}
.concept-hero__actions .primary-btn,
.concept-cta-band__actions .btn-primary,
.concept-sidecard--cta .btn-primary {
    background:#ff7a18 !important;
    color:#fff !important;
    border:none !important;
    box-shadow:0 4px 12px rgba(0,0,0,.15), 0 14px 30px -18px rgba(249,115,22,.65) !important;
}
.concept-hero__actions .primary-btn:hover,
.concept-cta-band__actions .btn-primary:hover,
.concept-sidecard--cta .btn-primary:hover {
    background:#ff8d38 !important;
    box-shadow:0 10px 24px rgba(0,0,0,.14), 0 18px 34px -18px rgba(249,115,22,.6) !important;
}
.concept-hero__actions .secondary-btn,
.concept-cta-band__actions .btn-outline {
    background:#fff !important;
    border:1px solid #ddd !important;
    color:#0f172a !important;
    box-shadow:0 4px 12px rgba(15,23,42,.08) !important;
}
.concept-hero__actions .secondary-btn:hover,
.concept-cta-band__actions .btn-outline:hover {
    background:#f8fafc !important;
    border-color:#cbd5e1 !important;
}
.concept-anchor-bar { padding-top:0; }
.concept-anchor-bar__inner { display:flex; flex-wrap:wrap; gap:10px; padding:14px; border-radius:22px; background:rgba(255,255,255,.92); border:1px solid rgba(191,219,254,.8); box-shadow:0 20px 45px -38px rgba(15,23,42,.28); backdrop-filter:blur(12px); }
.concept-anchor-bar__inner a { padding:10px 14px; border-radius:999px; color:#0f3b82; background:#f8fbff; font-weight:700; border:1px solid transparent; }
.concept-anchor-bar__inner a:hover { background:#eff6ff; color:#172554; border-color:rgba(96,165,250,.3); }
.concept-shell { display:grid; grid-template-columns:minmax(0,1.3fr) 320px; gap:24px; }
.concept-main { display:grid; gap:22px; }
.concept-sidebar { display:grid; gap:18px; align-content:start; }
.concept-panel, .concept-sidecard { background:#fff; border:1px solid rgba(226,232,240,.95); border-radius:28px; padding:26px; box-shadow:0 22px 54px -42px rgba(15,23,42,.32); }
.concept-panel--summary { background:linear-gradient(135deg,#fff8e8 0%,#fffdf6 100%); }
.concept-panel--accent { margin-top:22px; background:linear-gradient(135deg,#eff6ff 0%,#ffffff 100%); }
.conversion-card,
.premium-placeholder {
    margin-top:24px;
    border-radius:30px;
    padding:28px;
    position:relative;
    overflow:hidden;
}
.conversion-card {
    display:grid;
    grid-template-columns:minmax(0,1.3fr) auto;
    gap:20px;
    align-items:center;
    background:linear-gradient(135deg,#fff7ed 0%,#ffffff 55%,#eff6ff 100%);
    border:1px solid rgba(251,146,60,.22);
    box-shadow:0 26px 56px -42px rgba(249,115,22,.36);
}
.conversion-card__eyebrow {
    display:inline-flex;
    margin-bottom:12px;
    padding:6px 12px;
    border-radius:999px;
    background:#ffffff;
    color:#c2410c;
    font-size:.74rem;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.conversion-card h2,
.premium-placeholder h3 { margin-bottom:10px; color:#0f172a; }
.conversion-card p,
.premium-placeholder p { color:#475569; max-width:64ch; }
.conversion-card__points,
.premium-placeholder__points {
    margin:16px 0 0;
    padding-left:20px;
    color:#334155;
}
.conversion-card__actions,
.premium-placeholder__actions {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    align-items:center;
    justify-content:flex-start;
}
.conversion-card__note {
    grid-column:1 / -1;
    margin-top:4px;
    padding-top:16px;
    border-top:1px solid rgba(251,146,60,.16);
}
.conversion-card__note p {
    margin:10px 0 0;
    color:#475569;
}
.premium-placeholder {
    display:grid;
    grid-template-columns:minmax(0,1.2fr) auto;
    gap:20px;
    align-items:center;
    background:linear-gradient(140deg,#0f172a 0%,#111827 48%,#1d4ed8 100%);
    border:1px solid rgba(191,219,254,.16);
    box-shadow:0 28px 60px -40px rgba(15,23,42,.55);
}
.premium-placeholder::before {
    content:"";
    position:absolute;
    inset:auto -80px -120px auto;
    width:220px;
    height:220px;
    border-radius:50%;
    background:radial-gradient(circle, rgba(255,255,255,.16) 0%, rgba(255,255,255,0) 72%);
    pointer-events:none;
}
.premium-placeholder h3,
.premium-placeholder p,
.premium-placeholder__points { color:#fff; }
.premium-placeholder__points { opacity:.92; }
.premium-soft-lock {
    margin-top:18px;
    padding:18px;
    border-radius:20px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(191,219,254,.18);
}
.premium-soft-lock__badge {
    display:inline-flex;
    align-items:center;
    gap:8px;
    min-height:34px;
    padding:0.45rem 0.85rem;
    border-radius:999px;
    background:rgba(255,255,255,.12);
    color:#f8fafc;
    font-size:.8rem;
    font-weight:800;
    margin-bottom:12px;
}
.premium-soft-lock__grid {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:12px;
    margin-top:14px;
}
.premium-soft-lock__item {
    padding:14px;
    border-radius:16px;
    background:rgba(15,23,42,.28);
    border:1px solid rgba(191,219,254,.15);
}
.premium-soft-lock__item strong {
    display:block;
    margin-bottom:6px;
    color:#fff;
}
.premium-soft-lock__item span {
    color:#dbeafe;
}
.premium-placeholder__badge {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:0.65rem 1rem;
    border-radius:999px;
    background:rgba(255,255,255,.12);
    color:#dbeafe;
    border:1px solid rgba(191,219,254,.26);
    font-weight:800;
    letter-spacing:.04em;
    text-transform:uppercase;
    font-size:.78rem;
}
.premium-placeholder__actions .btn-outline {
    background:#ffffff !important;
    color:#0f172a !important;
    border-color:#ffffff !important;
}
.continue-prep-grid {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:20px;
}
.continue-prep-card {
    display:block;
    padding:24px;
    border-radius:24px;
    background:#ffffff;
    border:1px solid rgba(226,232,240,.95);
    box-shadow:0 20px 50px -40px rgba(15,23,42,.28);
    color:inherit;
}
.continue-prep-card h3 { margin:14px 0 10px; color:#0f172a; }
.continue-prep-card p { color:#475569; margin-bottom:16px; }
.continue-prep-card__link {
    color:#1d4ed8;
    font-weight:700;
}
.continue-prep-card--subject {
    background:linear-gradient(135deg,#eff6ff 0%,#ffffff 100%);
    border-color:rgba(147,197,253,.45);
}
.continue-prep-card--static {
    pointer-events:none;
}
.concept-panel__header { margin-bottom:16px; }
.concept-panel__tag { display:inline-flex; margin-bottom:10px; padding:6px 12px; border-radius:999px; background:#eff6ff; color:#0f3b82; font-size:.74rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.concept-panel h2, .concept-sidecard h3 { margin-bottom:10px; color:#0f172a; }
.rich-copy { color:#425466; line-height:1.8; font-size:1rem; }
.rich-copy ul, .rich-copy ol { padding-left:22px; }
.concept-grid-2 { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:22px; }
.concept-sidecard__meta { margin:14px 0 0; padding-left:20px; color:#425466; }
.concept-sidecard--cta { background:linear-gradient(135deg,#0f172a 0%,#1d4ed8 100%); color:#fff; }
.concept-sidecard--cta .concept-panel__tag { background:rgba(255,255,255,.12); color:#dbeafe; }
.practice-intro {
    display:grid;
    grid-template-columns:minmax(0,1.4fr) minmax(250px,.8fr);
    gap:16px;
    align-items:start;
    margin-bottom:16px;
    padding:22px 24px;
    border-radius:24px;
    background:linear-gradient(135deg,#fff7ed 0%, #ffffff 50%, #eff6ff 100%);
    border:1px solid rgba(251,191,36,.34);
    box-shadow:0 24px 48px -38px rgba(180,83,9,.3);
}
.practice-intro h3 {
    margin:10px 0 8px;
    color:#0f172a;
}
.practice-intro p {
    margin:0;
    color:#475569;
    line-height:1.75;
}
.practice-intro__tip {
    padding:16px 18px;
    border-radius:18px;
    background:rgba(255,255,255,.92);
    border:1px solid rgba(226,232,240,.95);
    color:#334155;
    line-height:1.7;
}
.real-shortcut-box,
.worked-example-card {
    margin-top:18px;
    padding:24px;
    border-radius:26px;
    background:#ffffff;
    border:1px solid rgba(226,232,240,.95);
    box-shadow:0 22px 46px -38px rgba(15,23,42,.2);
}
.real-shortcut-box {
    background:linear-gradient(135deg,#eff6ff 0%, #ffffff 52%, #fff7ed 100%);
    border-color:rgba(147,197,253,.45);
}
.real-shortcut-box__header,
.worked-example-card__header {
    margin-bottom:16px;
}
.real-shortcut-box__header h3,
.worked-example-card__header h3 {
    margin:10px 0 0;
    color:#0f172a;
}
.real-shortcut-box__grid {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:14px;
}
.real-shortcut-box__card {
    padding:16px;
    border-radius:18px;
    background:rgba(255,255,255,.92);
    border:1px solid rgba(226,232,240,.95);
}
.real-shortcut-box__card--answer {
    background:linear-gradient(135deg,#ecfdf5,#ffffff);
    border-color:rgba(16,185,129,.22);
}
.real-shortcut-box__label {
    display:inline-flex;
    margin-bottom:8px;
    padding:6px 10px;
    border-radius:999px;
    background:#0f172a;
    color:#fff;
    font-size:.74rem;
    font-weight:800;
    letter-spacing:.05em;
    text-transform:uppercase;
}
.real-shortcut-box__card p {
    margin:0;
    color:#475569;
    line-height:1.7;
}
.worked-example-card__body {
    display:grid;
    grid-template-columns:minmax(0,1.3fr) minmax(240px,.8fr);
    gap:18px;
}
.worked-example-card__body strong {
    color:#0f172a;
}
.worked-example-card__body ul {
    margin:10px 0 0;
    padding-left:20px;
    color:#475569;
}
.worked-example-card__body li + li {
    margin-top:8px;
}
.worked-example-card__answer {
    padding:16px;
    border-radius:18px;
    background:#f8fafc;
    border:1px solid rgba(226,232,240,.95);
}
.worked-example-card__answer p {
    margin:0;
    color:#475569;
    line-height:1.7;
}
.worked-example-card__answer p + p {
    margin-top:10px;
}
.practice-access-strip,
.locked-question-grid { display:grid; gap:16px; margin:18px 0 0; }
.question-learning-strip {
    display:grid;
    gap:8px;
    margin:14px 0 0;
    padding:14px;
    border-radius:18px;
    background:#f8fafc;
    border:1px solid rgba(226,232,240,.95);
}
.question-learning-strip span {
    color:#475569;
    font-size:.92rem;
    line-height:1.55;
}
.question-learning-strip strong {
    color:#0f172a;
}
.question-preview-options {
    display:grid;
    gap:8px;
    margin-top:14px;
}
.question-preview-options span {
    padding:10px 12px;
    border-radius:14px;
    background:#ffffff;
    border:1px solid rgba(226,232,240,.95);
    color:#334155;
    font-size:.92rem;
    line-height:1.5;
}
.question-preview-solution {
    margin-top:14px;
    padding:12px 14px;
    border-radius:16px;
    background:#f8fafc;
    border:1px solid rgba(226,232,240,.95);
    color:#475569;
}
.question-preview-card--locked {
    position:relative;
    border:1px dashed rgba(148,163,184,.55);
    background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
}
.locked-question-grid {
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
}
.locked-solution-tease {
    position:relative;
    margin-top:16px;
    border-radius:18px;
    overflow:hidden;
    border:1px solid rgba(226,232,240,.95);
    background:#f8fafc;
}
.locked-solution-tease__content {
    padding:16px;
    filter:blur(3px);
    opacity:.72;
    user-select:none;
}
.locked-solution-tease__overlay {
    position:absolute;
    inset:0;
    display:flex;
    align-items:center;
    justify-content:center;
    background:linear-gradient(180deg, rgba(255,255,255,.22), rgba(241,245,249,.88));
    color:#0f172a;
    font-weight:800;
    text-align:center;
    padding:14px;
}
.premium-lock-card {
    margin-top:20px;
    display:grid;
    grid-template-columns:minmax(0,1.25fr) auto;
    gap:18px;
    align-items:center;
    padding:24px 28px;
    border-radius:28px;
    background:linear-gradient(135deg,#fff7ed 0%,#ffffff 58%,#eff6ff 100%);
    border:1px solid rgba(251,146,60,.22);
    box-shadow:0 22px 48px -38px rgba(249,115,22,.34);
}
.premium-lock-card__points {
    margin:14px 0 0;
    padding-left:20px;
    color:#334155;
}
.premium-lock-card__subtext {
    color:#475569;
    max-width:56ch;
    margin-bottom:0;
}
.premium-lock-card__proof {
    margin:16px 0 0;
    color:#0f172a;
    font-weight:700;
}
.premium-lock-card__limit {
    margin:8px 0 0;
    color:#64748b;
    font-size:.92rem;
}
.premium-lock-card__actions {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    align-items:center;
    justify-content:flex-start;
}
.pricing-preview-card {
    margin-top:20px;
    padding:26px 28px;
    border-radius:28px;
    background:#ffffff;
    border:1px solid rgba(226,232,240,.95);
    box-shadow:0 22px 50px -40px rgba(15,23,42,.26);
}
.pricing-preview-card__header {
    margin-bottom:18px;
}
.pricing-preview-card__header p {
    margin:10px 0 0;
    color:#64748b;
}
.pricing-preview-status {
    margin-bottom:16px;
    padding:12px 14px;
    border-radius:16px;
    font-weight:600;
}
.pricing-preview-status.is-info {
    background:#dbeafe;
    color:#1d4ed8;
}
.pricing-preview-status.is-error {
    background:#fee2e2;
    color:#991b1b;
}
.pricing-preview-status.is-success {
    background:#dcfce7;
    color:#166534;
}
.pricing-preview-grid {
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:16px;
}
.pricing-plan {
    position:relative;
    display:grid;
    gap:16px;
    padding:20px;
    border-radius:22px;
    background:#f8fafc;
    border:1px solid rgba(226,232,240,.95);
}
.pricing-plan--featured {
    background:linear-gradient(180deg,#eff6ff 0%,#ffffff 100%);
    border-color:rgba(96,165,250,.45);
    box-shadow:0 18px 40px -32px rgba(37,99,235,.38);
    transform:translateY(-4px);
}
.pricing-plan__badge {
    position:absolute;
    top:14px;
    right:14px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:28px;
    padding:0.3rem 0.7rem;
    border-radius:999px;
    background:#1d4ed8;
    color:#fff;
    font-size:.72rem;
    font-weight:800;
    letter-spacing:.04em;
    text-transform:uppercase;
}
.pricing-plan__top h4 {
    margin-bottom:8px;
    color:#0f172a;
}
.pricing-plan__price {
    margin:0;
    font-size:2rem;
    font-weight:800;
    color:#0f172a;
    line-height:1;
}
.pricing-plan__price span {
    font-size:.95rem;
    font-weight:600;
    color:#64748b;
    margin-left:4px;
}
.pricing-plan__features {
    margin:0;
    padding-left:20px;
    color:#334155;
}
.pricing-plan__features li + li {
    margin-top:8px;
}
.start-payment-btn[disabled] {
    opacity:.72;
    cursor:not-allowed;
}
.motion-card,
.motion-hover-card,
.motion-step-card,
.motion-reveal-up,
.motion-inview-practice,
.premium-lock-card,
.pricing-preview-card {
    will-change:transform, opacity;
}
.concept-video-wrap { position:relative; width:100%; padding-top:56.25%; overflow:hidden; border-radius:20px; background:#0f172a; }
.concept-video-wrap iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
.concept-audio { width:100%; }
.concept-cta-band { margin-top:24px; display:flex; justify-content:space-between; align-items:center; gap:18px; padding:24px 28px; border-radius:28px; background:linear-gradient(135deg,#0f172a 0%,#1d4ed8 55%,#0f3b82 100%); color:#fff; }
.concept-cta-band h3, .concept-cta-band p { color:#fff; }
.concept-cta-band__actions { display:flex; flex-wrap:wrap; gap:12px; }
.section-header--left { text-align:left; margin-bottom:18px; }
.detail-section { scroll-margin-top:100px; }
.detail-section:nth-of-type(even) { position:relative; }
.detail-section:nth-of-type(even)::before {
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.45));
    pointer-events:none;
}
.section-title, .section-title span { color:#0f172a; }
.section-subtitle { color:#475569; }
.concept-anchor-bar__inner a:focus-visible,
.concept-panel a:focus-visible,
.concept-sidecard a:focus-visible,
.concept-hero__actions .btn:focus-visible,
.concept-cta-band__actions .btn:focus-visible {
    outline:3px solid rgba(37,99,235,.28);
    outline-offset:3px;
}
@media (max-width: 980px) {
  .concept-hero__layout, .concept-shell, .concept-grid-2 { grid-template-columns:1fr; }
  .concept-sidebar { order:-1; }
  .topic-hero .concept-hero__title { max-width:none; }
  .why-topic-matters__grid,
  .shortcut-band__grid,
  .faster-steps__grid,
  .practice-intro,
  .real-shortcut-box__grid,
  .worked-example-card__body { grid-template-columns:1fr; }
  .conversion-card,
  .premium-placeholder { grid-template-columns:1fr; }
  .premium-soft-lock__grid { grid-template-columns:1fr; }
}
@media (max-width: 768px) {
  .concept-hero { padding-bottom:18px; }
  .hero-content-card { padding:20px; border-radius:18px; }
  .concept-panel, .concept-sidecard, .concept-cta-band { padding:20px; border-radius:22px; }
  .conversion-card,
  .premium-placeholder,
  .continue-prep-card { padding:20px; border-radius:22px; }
  .why-topic-matters,
  .shortcut-band,
  .practice-intro,
  .faster-step { padding:20px; border-radius:22px; }
  .premium-lock-card { grid-template-columns:1fr; padding:20px; border-radius:22px; }
  .pricing-preview-card { padding:20px; border-radius:22px; }
  .pricing-preview-grid { grid-template-columns:1fr; }
  .pricing-plan--featured { transform:none; }
  .locked-question-grid { grid-template-columns:1fr; }
  .access-strip__group { align-items:flex-start; }
  .topic-progress-card { padding:18px; border-radius:20px; }
  .topic-progress-card__header { flex-direction:column; align-items:flex-start; }
  .concept-anchor-bar__inner { overflow-x:auto; flex-wrap:nowrap; padding:12px; }
  .concept-anchor-bar__inner a { flex:0 0 auto; white-space:nowrap; }
  .concept-stats { gap:10px; }
  .concept-stat { width:100%; justify-content:flex-start; border-radius:18px; }
  .concept-hero__actions .btn,
  .concept-cta-band__actions .btn,
  .conversion-card__actions .btn,
  .premium-placeholder__actions .btn,
  .premium-lock-card__actions .btn,
  .concept-hero__assist-link,
  .topic-progress-card__actions .btn,
  .topic-progress-card__actions form { width:100%; }
  .topic-progress-card__actions form .btn { width:100%; justify-content:center; }
}
