.gfp-vocabulary .gfvt-title{margin:0 0 10px;font-size:24px;letter-spacing:-.03em}
.gfp-vocabulary .quiz-words{grid-template-columns:repeat(3,minmax(0,1fr))}
.gfp-vocabulary .gfvt-quiz-actions{flex-wrap:wrap;gap:10px;justify-content:space-between}
.gfp-vocabulary .gfvt-number-card{margin:14px 0;border-radius:17px;padding:23px;background:linear-gradient(117deg,#071b47,#1759b3);color:white;text-align:center;display:flex;flex-direction:column;gap:6px}
.gfp-vocabulary .gfvt-number-card small{color:#cde3ff;font-size:13px;font-weight:700}
.gfp-vocabulary .gfvt-number-card strong{font-size:clamp(38px,6vw,57px);line-height:1.15;letter-spacing:-.05em}
.gfp-vocabulary .gfvt-number-card span{font-size:11px;color:#bdd7fc;line-height:1.5}
.gfp-vocabulary .gfvt-level-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 2px;border-bottom:1px solid #e5edf7;font-size:14px}
.gfp-vocabulary .gfvt-level-row strong{background:#e8f2ff;color:#1b5ac3;border-radius:10px;padding:6px 12px}
.gfp-vocabulary .gfvt-bars{margin:18px 0}
.gfp-vocabulary .gfvt-band{margin-bottom:12px}
.gfp-vocabulary .gfvt-band-label{display:flex;justify-content:space-between;gap:9px;font-size:12px;color:#395880;margin-bottom:5px}
.gfp-vocabulary .gfvt-band-track{background:#e9eef7;border-radius:9px;overflow:hidden;height:9px}
.gfp-vocabulary .gfvt-band-fill{height:100%;background:linear-gradient(90deg,#1469eb,#5d9eff)}
.gfp-vocabulary .gfvt-safety{padding:14px;background:#fff;border:1px solid #dce8f5;border-radius:12px;margin-top:20px;color:#3a587b;font-size:13px}
.gfp-vocabulary .gfvt-safety p{margin:4px 0 0;font-size:12px}
@media(max-width:750px){.gfp-vocabulary .quiz-words{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:400px){.gfp-vocabulary .gfvt-quiz-actions .btn{font-size:11px;padding:9px}.gfp-vocabulary .gfvt-title{font-size:21px}}
/* Scoped fallback for standalone shortcode use outside the LAB hub. */
.gfp-vocabulary{font-family:Inter,system-ui,Arial,sans-serif;color:#102244;line-height:1.5;max-width:1170px;margin:0 auto;padding:25px 0 50px}
.gfp-vocabulary *{box-sizing:border-box}
.gfp-vocabulary button{cursor:pointer;font:inherit}
.gfp-vocabulary .vocab-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}
.gfp-vocabulary .panel{background:#fff;border:1px solid #dce6f4;border-radius:18px;padding:25px;box-shadow:0 18px 56px rgba(14,41,84,.09)}
.gfp-vocabulary .panel-title{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:12px}
.gfp-vocabulary .panel-title h3{font-size:16px;margin:0;letter-spacing:-.018em}
.gfp-vocabulary .tag{background:#eaf3ff;color:#1c62c8;font-size:10px;font-weight:850;border-radius:99px;padding:6px 9px}
.gfp-vocabulary .progress{display:flex;gap:7px;margin:13px 0 18px}
.gfp-vocabulary .progress span{height:7px;background:#e6eef8;flex:1;border-radius:20px}.gfp-vocabulary .progress span.filled{background:#1569e6}
.gfp-vocabulary .hint{color:#738199;font-size:12px;margin:0 0 20px}
.gfp-vocabulary .step-status{color:#627da0;font-size:11px;font-weight:800;letter-spacing:.1em;margin-bottom:9px}
.gfp-vocabulary .quiz-words{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.gfp-vocabulary .word-toggle{border:1px solid #dce5f1;display:flex;align-items:center;justify-content:space-between;gap:8px;background:#fbfdff;color:#1b355a;border-radius:10px;padding:13px 12px;min-height:54px;font-weight:700;font-size:13px}
.gfp-vocabulary .word-toggle:hover{border-color:#8dbafa}.gfp-vocabulary .word-toggle.selected{border-color:#1470ed;background:#edf5ff;color:#135dcb}
.gfp-vocabulary .check{width:18px;height:18px;border-radius:6px;border:1px solid #b9c9dd;display:grid;place-items:center;font-size:12px;color:transparent}
.gfp-vocabulary .selected .check{color:#fff;background:#1468e8;border-color:#1468e8}
.gfp-vocabulary .quiz-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;margin-top:22px}
.gfp-vocabulary .quiz-actions small{font-size:11px;color:#7990a8}
.gfp-vocabulary .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:11px;font-weight:800;font-size:13px;padding:13px 18px;border:1px solid transparent;text-decoration:none;line-height:1.2}
.gfp-vocabulary .btn-blue{background:#1466e5;color:white}.gfp-vocabulary .btn-plain{background:#fff;color:#16417e;border:1px solid #dce6f3}
.gfp-vocabulary .btn:disabled{opacity:.45;cursor:not-allowed}
.gfp-vocabulary .aside-promo{border-radius:18px;border:1px solid #dce9fd;padding:22px;background:linear-gradient(150deg,#edf5ff,#fff)}
.gfp-vocabulary .aside-promo h3{margin:0 0 12px;font-size:15px}
.gfp-vocabulary .aside-promo li{margin:0 0 12px;color:#56708d;font-size:12px}.gfp-vocabulary .aside-promo ul{padding-left:19px;margin:0}
.gfp-vocabulary .q-word{font-size:36px;letter-spacing:-.04em;margin:0 0 10px;color:#092854}
.gfp-vocabulary .answers{display:grid;gap:9px;margin:16px 0}
.gfp-vocabulary .answer{padding:13px 14px;text-align:left;background:#fff;border:1px solid #dce6f5;border-radius:11px;color:#14365f;font-size:13px}
.gfp-vocabulary .answer:hover{border-color:#8dbaff;background:#f7fbff}.gfp-vocabulary .answer.chosen{border:2px solid #1768e9;background:#eff5ff}
.gfp-vocabulary .result-stat{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #e5edf7;font-size:13px}
.gfp-vocabulary .demo-note{background:#fff8e9;border:1px solid #f8dfa8;border-radius:12px;padding:13px;color:#7c5f2c;font-size:12px;line-height:1.65}
@media(max-width:900px){.gfp-vocabulary .vocab-layout{grid-template-columns:1fr}}
@media(max-width:650px){.gfp-vocabulary .panel{padding:16px}.gfp-vocabulary .quiz-words{grid-template-columns:repeat(2,minmax(0,1fr))}}
