/* ============================================================
   PA NOTARY KNOWLEDGE CHECK
   Large text — designed for 45–65+ audience
   ============================================================ */

.pankc-wrap {
    font-family: 'Poppins', system-ui, sans-serif;
    max-width: 720px;
    margin: 40px auto;
    border: 1px solid #e0e0e0;
    border-radius: 16px;
    overflow: hidden;
    background: #fff;
}

/* ── Header ──────────────────────────────────────────────── */
.pankc-header {
    background: #1A1A1A;
    padding: 22px 28px;
}
.pankc-header__eyebrow {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: #CC0000;
    margin-bottom: 6px;
}
.pankc-header__title {
    font-size: 20px;
    font-weight: 600;
    color: #fff;
    line-height: 1.3;
}

/* ── Previous score bar ──────────────────────────────────── */
.pankc-prev-score {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 28px;
    background: #f5f5f5;
    border-bottom: 1px solid #e8e8e8;
    font-size: 17px;
    color: #444;
}
.pankc-retake-btn {
    background: #fff;
    border: 1.5px solid #CC0000;
    color: #CC0000;
    padding: 8px 20px;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: background .12s;
}
.pankc-retake-btn:hover { background: #fff0f0; }

/* ── Progress bar ────────────────────────────────────────── */
.pankc-progress-wrap {
    padding: 18px 28px 0;
}
.pankc-progress-track {
    height: 6px;
    background: #efefef;
    border-radius: 3px;
    overflow: hidden;
    margin-bottom: 10px;
}
.pankc-progress-fill {
    height: 100%;
    background: #CC0000;
    border-radius: 3px;
    transition: width .4s ease;
}
.pankc-progress-label {
    font-size: 15px;
    color: #888;
    font-weight: 500;
    margin-bottom: 4px;
}

/* ── Stage (single question view) ────────────────────────── */
.pankc-stage {
    padding: 28px;
}

/* ── Question number ─────────────────────────────────────── */
.pankc-q-num {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #CC0000;
    margin-bottom: 10px;
}

/* ── Question text — LARGE ───────────────────────────────── */
.pankc-q-text {
    font-size: 22px;
    font-weight: 600;
    line-height: 1.5;
    color: #1A1A1A;
    margin-bottom: 24px;
}

/* ── Options — LARGE ─────────────────────────────────────── */
.pankc-options {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 8px;
}

.pankc-option {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 16px 18px;
    border: 2px solid #e0e0e0;
    border-radius: 12px;
    cursor: pointer;
    transition: border-color .12s, background .12s;
    background: #fff;
    min-height: 60px;
}
.pankc-option:hover {
    border-color: #CC0000;
    background: #fff8f8;
}
.pankc-option.pankc-option--selected {
    border-color: #CC0000;
    background: #fff0f0;
}
.pankc-option.pankc-option--correct {
    border-color: #16a34a !important;
    background: #f0fdf4 !important;
    cursor: default;
}
.pankc-option.pankc-option--wrong {
    border-color: #CC0000 !important;
    background: #fff0f0 !important;
    cursor: default;
}
.pankc-option.pankc-option--used {
    cursor: default;
    opacity: .65;
}
.pankc-option.pankc-option--disabled {
    cursor: not-allowed;
}

/* Letter badge */
.pankc-option__letter {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #f0f0f0;
    font-size: 15px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #555;
    flex-shrink: 0;
    margin-top: 1px;
}
.pankc-option--correct .pankc-option__letter { background: #16a34a; color: #fff; }
.pankc-option--wrong   .pankc-option__letter { background: #CC0000; color: #fff; }

/* Option text — LARGE */
.pankc-option__text {
    font-size: 18px;
    line-height: 1.5;
    color: #1A1A1A;
    flex: 1;
    padding-top: 5px;
}

.pankc-option__mark {
    font-size: 20px;
    font-weight: 700;
    flex-shrink: 0;
    padding-top: 4px;
}
.pankc-option--correct .pankc-option__mark { color: #16a34a; }
.pankc-option--wrong   .pankc-option__mark { color: #CC0000; }

/* ── Feedback panel — LARGE ──────────────────────────────── */
.pankc-feedback {
    margin-top: 16px;
    padding: 16px 18px;
    border-radius: 12px;
    font-size: 17px;
    line-height: 1.65;
    display: none;
    border-left: 5px solid #e0e0e0;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}
.pankc-feedback--correct {
    background: #f0fdf4;
    border-left-color: #16a34a;
    display: block;
}
.pankc-feedback--wrong {
    background: #fff0f0;
    border-left-color: #CC0000;
    display: block;
}
.pankc-feedback__label {
    font-weight: 700;
    margin-bottom: 6px;
    font-size: 17px;
}
.pankc-feedback--correct .pankc-feedback__label { color: #16a34a; }
.pankc-feedback--wrong   .pankc-feedback__label { color: #CC0000; }
.pankc-feedback__exp { color: #333; }

/* ── Next button ─────────────────────────────────────────── */
.pankc-next-btn {
    display: block;
    width: 100%;
    margin-top: 20px;
    padding: 18px 24px;
    background: #CC0000;
    color: #fff;
    border: none;
    border-radius: 12px;
    font-size: 18px;
    font-weight: 700;
    font-family: inherit;
    cursor: pointer;
    transition: background .15s, transform .1s;
    text-align: center;
}
.pankc-next-btn:hover { background: #aa0000; transform: translateY(-1px); }
.pankc-next-btn:active { transform: translateY(0); }

/* ── Score panel ─────────────────────────────────────────── */
.pankc-score {
    text-align: center;
    padding: 28px 0 8px;
    border-top: 1px solid #efefef;
    margin-top: 28px;
}
.pankc-score__num {
    font-size: 52px;
    font-weight: 900;
    line-height: 1;
    margin-bottom: 10px;
}
.pankc-score--pass { color: #16a34a; }
.pankc-score--fail { color: #CC0000; }
.pankc-score__label {
    font-size: 18px;
    color: #555;
    line-height: 1.5;
}

/* ── Review items (after completion / retake summary) ────── */
.pankc-review-item {
    padding-bottom: 28px;
    margin-bottom: 28px;
    border-bottom: 1px solid #efefef;
}
.pankc-review-item:last-of-type {
    border-bottom: none;
}

/* ── Login message ───────────────────────────────────────── */
.pankc-login-msg {
    padding: 24px;
    background: #f9f9f9;
    border: 1px solid #eee;
    border-radius: 12px;
    font-size: 18px;
    color: #555;
    text-align: center;
}

/* ── Mobile ──────────────────────────────────────────────── */
@media (max-width: 600px) {
    .pankc-stage { padding: 20px; }
    .pankc-q-text { font-size: 19px; }
    .pankc-option__text { font-size: 16px; }
    .pankc-option { padding: 14px 14px; }
    .pankc-header { padding: 18px 20px; }
    .pankc-prev-score { padding: 12px 20px; font-size: 15px; }
    .pankc-progress-wrap { padding: 14px 20px 0; }
    .pankc-next-btn { font-size: 17px; padding: 16px; }
    .pankc-score__num { font-size: 44px; }
    .pankc-score__label { font-size: 16px; }
    .pankc-feedback { font-size: 16px; }
}
