.nneq-wrap { max-width:760px; margin:0 auto; font-family:inherit; }
    .nneq-start-card { background:#fff; border:1.5px solid #e4ebf7; border-radius:20px; padding:36px; text-align:center; box-shadow:0 8px 32px rgba(18,39,90,.07); }
	.nneq-start-description {
    margin-top: 6px;
    color: #5a6e8c;
    font-size: 14.5px;
    line-height: 1.7;
}
.nneq-start-description p { margin: 0 0 10px; }
.nneq-start-description p:last-child { margin-bottom: 0; }
    .nneq-start-badge { display:inline-block; background:#fdecea; color:#16A085; font-size:11px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; padding:5px 14px; border-radius:999px; margin-bottom:14px; }
    .nneq-start-card h2 { margin:0 0 20px; font-size:24px; color:#2C3E50; font-weight:800; }
    .nneq-start-meta { display:flex; justify-content:center; gap:24px; flex-wrap:wrap; margin-bottom:20px; }
	.nneq-start-description {
    color: #5a6e8c;
    font-size: 14.5px;
    line-height: 1.7;
    margin: 10px 0 18px;
    text-align: left;
}
.nneq-start-description p:last-child { margin-bottom: 0; }
    .nneq-meta-item { display:flex; align-items:center; gap:6px; font-size:14px; color:#334155; font-weight:600; }
    .nneq-meta-icon { font-size:18px; }
    .nneq-start-notice {
    background:#f8fafc;
    border:1.5px solid #e4ebf7;
    border-radius:12px;
    padding:14px 18px;
    font-size:13px;
    color:#475569;
    line-height:1.6;
    margin-bottom:24px;
    text-align:left;
}


/* ==================================================
   CEE MOCK TEST RULES
   ================================================== */

.nneq-cee-rules {
    margin: 4px 0 24px;

    padding: 20px;

    border: 1px solid #dce9e5;
    border-radius: 16px;

    background:
        linear-gradient(
            145deg,
            #fbfefd 0%,
            #f3faf8 100%
        );

    text-align: left;

    box-shadow:
        0 8px 24px rgba(44,62,80,.05);
}


.nneq-cee-rules-head {
    display: flex;
    align-items: center;

    gap: 11px;

    padding-bottom: 15px;
    margin-bottom: 15px;

    border-bottom: 1px solid #dfeae7;
}


.nneq-cee-rules-icon {
    display: grid;
    place-items: center;

    flex: 0 0 40px;

    width: 40px;
    height: 40px;

    border-radius: 12px;

    background: #eaf7f4;

    font-size: 18px;
}


.nneq-cee-rules-head strong {
    display: block;

    color: #2C3E50;

    font-size: 14px;
    font-weight: 800;
}


.nneq-cee-rules-head span {
    display: block;

    margin-top: 2px;

    color: #74838e;

    font-size: 11px;
}


.nneq-cee-rules-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 9px;
}


.nneq-cee-rule {
    min-width: 0;

    padding: 12px;

    border: 1px solid #e3ebe8;
    border-radius: 12px;

    background: #ffffff;
}


.nneq-cee-rule-label {
    display: block;

    margin-bottom: 5px;

    color: #16A085;

    font-size: 9px;
    font-weight: 800;

    letter-spacing: .06em;

    text-transform: uppercase;
}


.nneq-cee-rule strong {
    display: block;

    color: #293b48;

    font-size: 12.5px;
    font-weight: 800;

    line-height: 1.35;
}


.nneq-cee-rule small {
    display: block;

    margin-top: 3px;

    color: #7d8a93;

    font-size: 9.5px;
    line-height: 1.4;
}


.nneq-cee-rules-note {
    display: flex;
    align-items: flex-start;

    gap: 8px;

    margin-top: 12px;

    padding: 10px 12px;

    border-radius: 10px;

    background: #edf8f5;

    color: #47635c;

    font-size: 10.5px;
    line-height: 1.5;
}


@media (max-width:600px) {

    .nneq-cee-rules {
        padding: 15px;
    }

    .nneq-cee-rules-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

}


@media (max-width:390px) {

    .nneq-cee-rules-grid {
        grid-template-columns: 1fr;
    }

}
    .nneq-btn-primary { display:inline-block; background:#2C3E50; color:#fff; border:none; padding:13px 32px; border-radius:999px; font-size:15px; font-weight:700; cursor:pointer; transition:background .15s; text-decoration:none; }
    .nneq-btn-primary:hover { background:#2C3E50; color:#fff; }
    .nneq-btn-ghost { display:inline-block; background:#f0f4fb; color:#2C3E50; border:none; padding:13px 24px; border-radius:999px; font-size:14px; font-weight:700; cursor:pointer; transition:background .15s; text-decoration:none; margin-top:10px; }
    .nneq-btn-ghost:hover { background:#dde7f7; color:#2C3E50; }
    .nneq-btn-submit { display:inline-block; background:#16A085; color:#fff; border:none; padding:13px 32px; border-radius:999px; font-size:15px; font-weight:700; cursor:pointer; transition:background .15s; }
    .nneq-btn-submit:hover { background:#0D7A63; }
    .nneq-quiz-header { display:flex; align-items:center; gap:12px; padding:14px 0; margin-bottom:8px; flex-wrap:wrap; }
    .nneq-quiz-title { flex:1; font-size:15px; font-weight:700; color:#2C3E50; min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .nneq-timer { display:flex; align-items:center; gap:6px; background:#fdecea; border:1.5px solid #ffcdd2; border-radius:999px; padding:6px 14px; font-size:14px; font-weight:800; color:#16A085; }
    .nneq-timer-side { width:100%; box-sizing:border-box; justify-content:center; font-size:16px; padding:10px 14px; margin-bottom:12px; }
    .nneq-timer.is-urgent { background:#16A085; color:#fff; border-color:#16A085; animation:nneq-pulse .8s infinite; }
    @keyframes nneq-pulse { 0%,100%{opacity:1} 50%{opacity:.7} }
    .nneq-quiz-progress { font-size:13px; color:#7a8aaa; font-weight:600; white-space:nowrap; }
    .nneq-progress-bar { height:5px; background:#e4ebf7; border-radius:999px; margin-bottom:14px; overflow:hidden; }
    .nneq-progress-fill { height:100%; background:linear-gradient(90deg,#2C3E50,#2C3E50); border-radius:999px; transition:width .3s ease; }
    .nneq-dots { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:20px; }
    .nneq-dot { width:38px; height:21px; min-width:21px; min-height:21px; border-radius:999px; background:#fff; border:1px solid #d8e1e8; box-shadow:inset 0 -3px 0 var(--cat-color, #d8e1e8); cursor:pointer; font-size:9px; font-weight:700; color:#405264; transition:background .15s ease, border-color .15s ease, box-shadow .15s ease, transform .15s ease; display:flex; align-items:center; justify-content:center; flex-shrink:0; padding:0; box-sizing:border-box; line-height:1; }
    .nneq-dot.is-active { background:#2C3E50; color:#fff; transform:scale(1.08); border-color:#2C3E50; box-shadow:0 0 0 2px #fff, 0 0 0 4px #2C3E50; }
    .nneq-dot.is-answered { background:#e9f6f2; color:#08765f; border-color:#b9dfd3; box-shadow:inset 0 -3px 0 #16a085; }
    .nneq-dot:not(.is-active):not(.is-answered):hover { border-color:#91a4b2; background:#f8fafb; }
    .nneq-question-card { background:#fff; border:1.5px solid #e4ebf7; border-radius:16px; padding:24px; margin-bottom:16px; }
    .nneq-q-meta { display:flex; gap:8px; margin-bottom:14px; flex-wrap:wrap; align-items:center; }
    .nneq-cat-badge { font-size:11px; font-weight:800; padding:4px 11px; border-radius:999px; }
    .nneq-mark-badge { font-size:11px; font-weight:800; padding:4px 11px; border-radius:999px; background:#f0f4fb; color:#2C3E50; }
    .nneq-q-num { font-size:12px; font-weight:700; color:#7a8aaa; margin-left:auto; }
    .nneq-q-text { font-size:16px; color:#2C3E50; line-height:1.65; margin-bottom:20px; font-weight:500; }
    .nneq-options { display:flex; flex-direction:column; gap:10px; }
    .nneq-option { display:flex; align-items:flex-start; gap:12px; padding:13px 15px; border:1.5px solid #dce4f2; border-radius:12px; cursor:pointer; transition:all .15s; background:#fbfcff; }
    .nneq-option:hover { border-color:#a0b4d0; background:#f3f7ff; }
    .nneq-option.is-selected { border-color:#2C3E50; background:#eef3ff; }
    .nneq-option-key { width:28px; height:28px; border-radius:8px; background:#e4ebf7; display:flex; align-items:center; justify-content:center; font-size:12px; font-weight:800; color:#2C3E50; flex-shrink:0; }
    .nneq-option.is-selected .nneq-option-key { background:#2C3E50; color:#fff; }
    .nneq-option-text { font-size:14px; color:#2C3E50; line-height:1.5; padding-top:3px; }
    .nneq-nav { display:flex; gap:10px; align-items:center; margin-top:4px; flex-wrap:wrap; }
    .nneq-results-header { background:linear-gradient(135deg,#2C3E50 0%,#2C3E50 100%); border-radius:20px; padding:32px; text-align:center; margin-bottom:24px; color:#fff; }
    .nneq-score-circle { width:100px; height:100px; border-radius:50%; background:rgba(255,255,255,.15); border:3px solid rgba(255,255,255,.4); display:flex; flex-direction:column; align-items:center; justify-content:center; margin:0 auto 16px; }
    .nneq-score-num { font-size:28px; font-weight:800; line-height:1; }
    .nneq-score-den { font-size:13px; opacity:.8; }
    .nneq-results-header h2 { margin:0 0 4px; font-size:22px; font-weight:800; }
    .nneq-results-header p { margin:0; opacity:.8; font-size:14px; }
    .nneq-stats-row { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:24px; }
    .nneq-stat-box { flex:1; min-width:120px; background:#fff; border:1.5px solid #e4ebf7; border-radius:14px; padding:16px; text-align:center; }
    .nneq-stat-val { font-size:22px; font-weight:800; color:#2C3E50; }
    .nneq-stat-lbl { font-size:12px; color:#7a8aaa; margin-top:3px; }
    .nneq-breakdown { background:#fff; border:1.5px solid #e4ebf7; border-radius:16px; padding:20px; margin-bottom:24px; }
    .nneq-breakdown h3 { margin:0 0 16px; font-size:16px; color:#2C3E50; font-weight:800; }
    .nneq-cat-row { display:flex; align-items:center; gap:10px; margin-bottom:12px; }
    .nneq-cat-row:last-child { margin-bottom:0; }
    .nneq-cat-name { width:130px; font-size:13px; font-weight:600; color:#334155; flex-shrink:0; }
    .nneq-cat-bar-wrap { flex:1; height:10px; background:#e4ebf7; border-radius:999px; overflow:hidden; }
    .nneq-cat-bar { height:100%; border-radius:999px; transition:width .5s ease; }
    .nneq-cat-score { font-size:12px; font-weight:700; color:#7a8aaa; width:50px; text-align:right; flex-shrink:0; }
    .nneq-review { margin-bottom:24px; }
    .nneq-review h3 { font-size:16px; color:#2C3E50; font-weight:800; margin-bottom:14px; }
    .nneq-review-item { background:#fff; border:1.5px solid #e4ebf7; border-radius:14px; padding:18px; margin-bottom:10px; }
    .nneq-review-item.is-correct { border-color:#a5d6a7; background:#f1f8f1; }
    .nneq-review-item.is-wrong   { border-color:#ef9a9a; background:#fff5f5; }
    .nneq-review-item.is-skipped { border-color:#e4ebf7; background:#f8fafc; }
    .nneq-review-q { display:flex; gap:10px; align-items:flex-start; margin-bottom:12px; }
    .nneq-review-icon { font-size:18px; flex-shrink:0; }
    .nneq-review-qtext { font-size:14px; font-weight:600; color:#2C3E50; line-height:1.5; }
    .nneq-review-answers { display:flex; gap:8px; flex-wrap:wrap; font-size:13px; margin-bottom:10px; }
    .nneq-ans-chip { padding:4px 12px; border-radius:8px; font-weight:700; }
    .nneq-ans-correct { background:#c8e6c9; color:#1b5e20; }
    .nneq-ans-wrong   { background:#ffcdd2; color:#b71c1c; }
    .nneq-ans-skipped { background:#e4ebf7; color:#7a8aaa; }
	.nneq-opt-list { display:flex; flex-direction:column; gap:6px; margin-bottom:10px; }
    .nneq-opt-row { display:flex; align-items:flex-start; gap:8px; padding:8px 12px; border-radius:8px; font-size:13px; border:1.5px solid transparent; }
    .nneq-opt-neutral { background:#f0f4fa; border-color:#e4ebf7; color:#475569; }
    .nneq-opt-correct { background:#e8f5e9; border-color:#a5d6a7; color:#1b5e20; font-weight:700; }
    .nneq-opt-wrong   { background:#ffebee; border-color:#ef9a9a; color:#b71c1c; font-weight:700; text-decoration:line-through; }
    .nneq-opt-label { font-weight:800; flex-shrink:0; min-width:18px; }
    .nneq-opt-text  { line-height:1.5; }
    .nneq-explanation { font-size:13px; color:#475569; line-height:1.6; background:#f8fafc; border-radius:8px; padding:10px 14px; margin-top:8px; white-space:pre-wrap; word-break:break-word; }
	.nneq-explanation-wrap { margin-top:8px; }
.nneq-explanation-label { font-size:11px; font-weight:800; color:#2C3E50; letter-spacing:.8px; text-transform:uppercase; margin-bottom:4px; }
.nneq-report-btn { margin-top:10px; background:none; border:1.5px solid #e4ebf7; border-radius:8px; padding:5px 12px; font-size:12px; font-weight:700; color:#7a8aaa; cursor:pointer; transition:all .15s; }
.nneq-report-btn:hover { border-color:#16A085; color:#16A085; background:#fff5f5; }
.nneq-report-btn.reported { border-color:#a5d6a7; color:#2e7d32; background:#f1f8f1; cursor:default; }
    .nneq-results-actions { display:flex; gap:10px; flex-wrap:wrap; justify-content:center; padding-top:8px; }
    @media(max-width:600px){
        .nneq-start-card { padding:24px 18px; }
        .nneq-start-card h2 { font-size:20px; }
        .nneq-question-card { padding:18px 14px; }
        .nneq-q-text { font-size:15px; }
        .nneq-dot { width:24px; height:24px; font-size:10px; }
    }
    /* ── Two-column desktop layout ── */
    .nneq-two-col { display:flex; gap:20px; align-items:flex-start; }
    .nneq-col-question { flex:0 0 60%; min-width:0; }
    .nneq-col-dots { flex:0 0 calc(40% - 20px); min-width:0; background:#fff; border:1.5px solid #e4ebf7; border-radius:16px; padding:16px; position:sticky; top:80px; }
    .nneq-dots { display:flex; flex-wrap:wrap; gap:3px; }
    .nneq-dots-legend { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:12px; padding-bottom:10px; border-bottom:1.5px solid #e4ebf7; }
    .nneq-dots-scroll { max-height:55vh; overflow-y:auto; padding-right:4px; }
    .nneq-legend-item { display:flex; align-items:center; gap:5px; font-size:11px; font-weight:700; color:#475569; }
    .nneq-legend-dot { width:12px; height:12px; border-radius:50%; flex-shrink:0; }
    @media(max-width:700px){
        .nneq-two-col { flex-direction:column; }
        .nneq-col-question { flex:none; width:100%; }
        .nneq-col-dots { flex:none; width:100%; box-sizing:border-box; position:static; }
        .nneq-dots-legend { display:none; }
    }
