:root {
--rm-p: #0F8A5F;
--rm-pl: #E8F5EF;
--rm-pd: #0A6B49;
--rm-dk: #1A1A2E;
--rm-dk2: #374151;
--rm-g1: #F7F8FA;
--rm-g2: #E5E7EB;
--rm-g3: #D1D5DB;
--rm-g4: #9CA3AF;
--rm-g5: #6B7280;
--rm-w: #fff;
--rm-ok: #059669;
--rm-okl: #D1FAE5;
--rm-hd: 'Plus Jakarta Sans', sans-serif;
--rm-bd: 'DM Sans', sans-serif;
}
.pcfg-rm * { margin: 0; padding: 0; box-sizing: border-box; }
.pcfg-rm { font-family: var(--rm-bd); color: var(--rm-dk); -webkit-font-smoothing: antialiased; }
.pcfg-rm button { font-family: var(--rm-bd); cursor: pointer; } .pcfg-rm-header { text-align: center; margin-bottom: 40px; }
.pcfg-rm-header h2 { font-family: var(--rm-hd); font-size: clamp(28px, 5vw, 44px); font-weight: 800; color: var(--rm-dk); letter-spacing: -.03em; margin-bottom: 12px; }
.pcfg-rm-header p { font-size: 16px; color: var(--rm-g5); max-width: 560px; margin: 0 auto; line-height: 1.6; } .pcfg-rm { max-width: 1060px; margin: 0 auto; padding: 40px 24px; }
.pcfg-rm-step { margin-bottom: 24px; }
.pcfg-rm-hidden { display: none !important; }
.pcfg-rm-card { background: var(--rm-g1); border-radius: 20px; padding: 32px; box-shadow: 0 2px 8px rgba(0,0,0,.04); }
.pcfg-rm-card h3 { font-family: var(--rm-hd); font-size: 20px; font-weight: 800; color: var(--rm-dk); margin-bottom: 20px; } .pcfg-rm-options { display: grid; gap: 14px; }
.pcfg-rm-options--2 { grid-template-columns: repeat(2, 1fr); }
.pcfg-rm-options--3 { grid-template-columns: repeat(3, 1fr); }
.pcfg-rm-options--4 { grid-template-columns: repeat(4, 1fr); }
.pcfg-rm-opt { background: var(--rm-w); border: 2px solid var(--rm-g2); border-radius: 12px; padding: 18px 20px; font-family: var(--rm-hd); font-size: 15px; font-weight: 700; color: var(--rm-dk); cursor: pointer; transition: all .2s; text-align: left; display: flex; flex-direction: column; gap: 4px; }
.pcfg-rm-opt:hover { border-color: var(--rm-p); box-shadow: 0 2px 12px rgba(15,138,95,.1); }
.pcfg-rm-opt.active { background: var(--rm-p); color: #fff; border-color: var(--rm-p); }
.pcfg-rm-opt.active span { color: rgba(255,255,255,.8); }
.pcfg-rm-opt--level { padding: 22px 20px; }
.pcfg-rm-opt--level span { font-size: 13px; font-weight: 400; color: var(--rm-g5); line-height: 1.4; font-family: var(--rm-bd); }
.pcfg-rm-opt-icon { display: flex; align-items: center; gap: 8px; } .pcfg-rm-result-header { margin-bottom: 32px; }
.pcfg-rm-result-header h2 { font-family: var(--rm-hd); font-size: 28px; font-weight: 800; color: var(--rm-dk); margin-bottom: 8px; }
.pcfg-rm-result-header p { font-size: 15px; color: var(--rm-g5); margin-bottom: 16px; }
.pcfg-rm-reset { background: none; border: none; color: var(--rm-p); font-weight: 600; font-size: 14px; cursor: pointer; font-family: var(--rm-bd); padding: 0; }
.pcfg-rm-reset:hover { text-decoration: underline; } .pcfg-rm-timeline { position: relative; padding-left: 40px; }
.pcfg-rm-timeline::before { content: ''; position: absolute; left: 16px; top: 0; bottom: 0; width: 3px; background: var(--rm-p); border-radius: 2px; }
.pcfg-rm-stage { position: relative; margin-bottom: 36px; }
.pcfg-rm-stage-dot { position: absolute; left: -32px; top: 4px; width: 28px; height: 28px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 14px; background: var(--rm-w); border: 3px solid var(--rm-p); z-index: 2; }
.pcfg-rm-stage-dot.learn { background: var(--rm-pl); }
.pcfg-rm-stage-dot.revise { background: #FEF9C3; }
.pcfg-rm-stage-dot.exam { background: #DBEAFE; }
.pcfg-rm-stage h4 { font-family: var(--rm-hd); font-size: 20px; font-weight: 700; color: var(--rm-dk); margin-bottom: 6px; }
.pcfg-rm-stage .pcfg-rm-stage-desc { font-size: 14px; color: var(--rm-g5); margin-bottom: 14px; line-height: 1.5; } .pcfg-rm-resources { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.pcfg-rm-res { background: var(--rm-g1); border-radius: 10px; padding: 14px 18px; display: flex; justify-content: space-between; align-items: center; text-decoration: none; color: var(--rm-dk); transition: all .2s; }
.pcfg-rm-res:hover { background: var(--rm-g2); }
.pcfg-rm-res-name { font-weight: 600; font-size: 14px; }
.pcfg-rm-res-tag { font-size: 11px; font-weight: 700; padding: 3px 10px; border-radius: 20px; text-transform: uppercase; letter-spacing: .04em; }
.pcfg-rm-res-tag.free { background: var(--rm-okl); color: var(--rm-ok); }
.pcfg-rm-res-tag.paid { background: #FEF9C3; color: #A16207; } .pcfg-rm-fadein { animation: rmFade .4s ease; }
@keyframes rmFade { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } } @media (max-width: 768px) {
.pcfg-rm-options--2, .pcfg-rm-options--3, .pcfg-rm-options--4 { grid-template-columns: 1fr; }
.pcfg-rm-resources { grid-template-columns: 1fr; }
} .pcfg-rm-progress{display:flex;gap:8px;list-style:none;padding:0;margin:0 0 24px;flex-wrap:wrap;justify-content:center}
.pcfg-rm-progress li{display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;color:var(--rm-g4);padding:7px 14px;border-radius:30px;background:var(--rm-g1)}
.pcfg-rm-progress li span{width:20px;height:20px;border-radius:50%;background:var(--rm-g3);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px}
.pcfg-rm-progress li.active{color:var(--rm-p);background:var(--rm-pl)}
.pcfg-rm-progress li.active span{background:var(--rm-p)}
.pcfg-rm-progress li[hidden]{display:none} .pcfg-rm-empty{text-align:center;background:var(--rm-g1);border:1px dashed var(--rm-g3);border-radius:16px;padding:36px 24px}
.pcfg-rm-empty h3{font-family:var(--rm-hd);font-size:20px;font-weight:700;margin-bottom:8px;color:var(--rm-dk)}
.pcfg-rm-empty p{color:var(--rm-g5);font-size:14px;max-width:440px;margin:0 auto 18px;line-height:1.6}
.pcfg-rm-lead{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.pcfg-rm-lead input{padding:11px 14px;border:1px solid var(--rm-g2);border-radius:8px;font-size:14px;font-family:var(--rm-bd);min-width:240px}
.pcfg-rm-lead input:focus{outline:none;border-color:var(--rm-p)}
.pcfg-rm-lead button{padding:11px 24px;background:var(--rm-p);color:#fff;border:none;border-radius:8px;font-weight:700;font-family:var(--rm-hd);cursor:pointer}
.pcfg-rm-lead button:hover{background:var(--rm-pd)}
.pcfg-rm-lead-done{color:var(--rm-ok);font-weight:600} .pcfg-qr{font-family:var(--rm-bd);color:var(--rm-dk);max-width:960px;margin:0 auto}
.pcfg-qr-empty{text-align:center;padding:48px 24px;background:var(--rm-g1);border-radius:16px;color:var(--rm-g5)}
.pcfg-qr-heading{font-family:var(--rm-hd);font-size:19px;font-weight:800;margin:32px 0 14px;color:var(--rm-dk)}
.pcfg-qr-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.pcfg-qr-stat{background:var(--rm-g1);border-radius:14px;padding:20px;text-align:center}
.pcfg-qr-stat-num{display:block;font-family:var(--rm-hd);font-size:30px;font-weight:800;color:var(--rm-p);line-height:1.1}
.pcfg-qr-stat-num small{font-size:16px;color:var(--rm-g4);font-weight:600}
.pcfg-qr-stat-label{font-size:12px;color:var(--rm-g5);margin-top:4px;display:block}
.pcfg-qr-best{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.pcfg-qr-card{border:1px solid var(--rm-g2);border-radius:14px;padding:18px}
.pcfg-qr-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px}
.pcfg-qr-card-title{font-weight:700;font-size:14px;line-height:1.35}
.pcfg-qr-pct{font-family:var(--rm-hd);font-weight:800;font-size:16px;flex-shrink:0}
.pcfg-qr-pct.good{color:var(--rm-ok)}.pcfg-qr-pct.ok{color:#B45309}.pcfg-qr-pct.low{color:#B91C1C}
.pcfg-qr-bar{height:7px;background:var(--rm-g2);border-radius:20px;overflow:hidden;margin-bottom:12px}
.pcfg-qr-bar span{display:block;height:100%;border-radius:20px}
.pcfg-qr-bar span.good{background:var(--rm-ok)}.pcfg-qr-bar span.ok{background:#F59E0B}.pcfg-qr-bar span.low{background:#EF4444}
.pcfg-qr-card-meta{display:flex;gap:12px;font-size:12.5px;flex-wrap:wrap}
.pcfg-qr-right{color:var(--rm-ok);font-weight:600}
.pcfg-qr-wrong{color:#B91C1C;font-weight:600}
.pcfg-qr-tries{color:var(--rm-g4)}
.pcfg-qr-retake{display:inline-block;margin-top:12px;font-size:12.5px;font-weight:600;color:var(--rm-p);text-decoration:none}
.pcfg-qr-retake:hover{text-decoration:underline}
.pcfg-qr-attempts{display:flex;flex-direction:column;gap:8px}
.pcfg-qr-attempt{border:1px solid var(--rm-g2);border-radius:12px;overflow:hidden}
.pcfg-qr-attempt-head{display:flex;align-items:center;gap:14px;width:100%;padding:15px 18px;background:none;border:none;text-align:left;cursor:pointer;font-family:var(--rm-bd);flex-wrap:wrap}
.pcfg-qr-attempt-head:disabled{cursor:default}
.pcfg-qr-attempt-head:not(:disabled):hover{background:var(--rm-g1)}
.pcfg-qr-attempt-title{font-weight:600;font-size:14px;flex:1;min-width:160px}
.pcfg-qr-attempt-score{display:flex;gap:12px;align-items:center;font-size:13px}
.pcfg-qr-attempt-date{font-size:12px;color:var(--rm-g4)}
.pcfg-qr-chev{color:var(--rm-g4);transition:transform .2s}
.pcfg-qr-attempt.open .pcfg-qr-chev{transform:rotate(180deg)}
.pcfg-qr-questions{display:none;padding:0 18px 16px;border-top:1px solid var(--rm-g2)}
.pcfg-qr-attempt.open .pcfg-qr-questions{display:block}
.pcfg-qr-q{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;margin-top:8px;font-size:13.5px}
.pcfg-qr-q.is-right{background:var(--rm-okl)}
.pcfg-qr-q.is-wrong{background:#FEE2E2}
.pcfg-qr-q-mark{font-weight:700}
.pcfg-qr-q.is-right .pcfg-qr-q-mark{color:var(--rm-ok)}
.pcfg-qr-q.is-wrong .pcfg-qr-q-mark{color:#B91C1C}
.pcfg-qr-q-num{font-weight:700;color:var(--rm-g5);min-width:28px}
.pcfg-qr-q-title{flex:1}
.pcfg-qr-q-status{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.pcfg-qr-q.is-right .pcfg-qr-q-status{color:var(--rm-ok)}
.pcfg-qr-q.is-wrong .pcfg-qr-q-status{color:#B91C1C}
.pcfg-qr-note{background:#f4faf7;border:1px solid #cfe6da;padding:15px 17px;border-radius:10px;font-size:13px;color:var(--rm-g5);margin-top:20px;line-height:1.6} .pcfg-quiz-intro{margin-bottom:28px}
@media(max-width:768px){
.pcfg-qr-stats{grid-template-columns:repeat(2,1fr)}
.pcfg-rm-progress li{font-size:11px;padding:6px 10px}
} .pcfg-rm-mark{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:7px;background:var(--rm-g1);border:1px solid var(--rm-g2);font-family:var(--rm-hd);font-size:12px;font-weight:700;color:var(--rm-g5);margin-right:10px;flex-shrink:0}
.pcfg-rm-opt.active .pcfg-rm-mark{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.28);color:#fff}
.pcfg-rm-opt{flex-direction:row;align-items:center}
.pcfg-rm-opt--level{flex-direction:column;align-items:flex-start}
.pcfg-rm-opt-label{line-height:1.3} .pcfg-tutor-placeholder{font-family:var(--rm-hd);font-size:56px;font-weight:800;color:rgba(15,138,95,.32);letter-spacing:.02em}
.pcfg-detail-img .pcfg-tutor-placeholder{font-size:64px} .pcfg-rm .pcfg-rm-card,
.pcfg-rm .pcfg-rm-empty,
.pcfg-qr .pcfg-qr-note,
.pcfg-qr .pcfg-qr-card,
.pcfg-qr .pcfg-qr-attempt,
.pcfg-qr .pcfg-qr-stat{border-left-width:1px;border-left-style:solid}
.pcfg-rm .pcfg-rm-card,
.pcfg-qr .pcfg-qr-stat{border-left-color:transparent}
.pcfg-qr .pcfg-qr-note{border-left-color:#cfe6da}
.pcfg-qr .pcfg-qr-card,
.pcfg-qr .pcfg-qr-attempt{border-left-color:var(--rm-g2)}