:root{--fpt-blue:#2457e6;--fpt-blue-deep:#173ba8;--fpt-ink:#172033;--fpt-muted:#68738a;--fpt-line:#e4e9f3;--fpt-bg:#f0f3ff;--fpt-green:#08bf73;--fpt-soft:#f8faff;--fpt-danger:#e84b5f}
.fpt-shell{background:radial-gradient(circle at 50% -10%,#fff 0,#f2f5ff 42%,#eaf0ff 100%);border-radius:30px;color:var(--fpt-ink);font-family:Tahoma,Arial,sans-serif;margin:24px auto;max-width:1040px;padding:54px 28px 64px;position:relative;box-sizing:border-box}
.fpt-shell *{box-sizing:border-box}.fpt-hero{margin:0 auto 26px;max-width:780px;text-align:center}.fpt-eyebrow{color:var(--fpt-blue);display:block;font:700 12px/1.4 Arial,sans-serif;letter-spacing:2px;margin-bottom:10px}.fpt-hero h1{color:#16234a;font-size:clamp(28px,4vw,48px);font-weight:900;line-height:1.35;margin:0 0 12px}.fpt-hero p{color:var(--fpt-muted);font-size:17px;line-height:1.9;margin:0}.fpt-young-notice{align-items:center;background:#fff8df;border:1px solid #f5dfa0;border-radius:14px;color:#6c5722;display:flex;gap:13px;justify-content:center;margin:0 auto 20px;max-width:820px;padding:11px 18px}.fpt-young-notice span{background:#ffd866;border-radius:20px;color:#55420d;font:700 11px Arial,sans-serif;padding:5px 10px}.fpt-young-notice strong{font-size:13px}
.fpt-card{background:#fff;border:1px solid rgba(48,76,160,.08);border-radius:26px;box-shadow:0 22px 65px rgba(35,61,137,.12);margin:0 auto;max-width:860px;min-height:360px;padding:42px 54px;position:relative}.fpt-login-card{text-align:center}.fpt-login-card h2{font-size:27px;margin:12px 0}.fpt-login-card p{color:var(--fpt-muted);line-height:1.9;margin:0 auto 26px;max-width:560px}.fpt-icon-lock{align-items:center;background:linear-gradient(135deg,#eff3ff,#dce7ff);border-radius:50%;color:var(--fpt-blue);display:flex;font:900 25px Arial;height:64px;justify-content:center;margin:auto;width:64px}
.fpt-button,.fpt-pay-button,.fpt-secondary-button{align-items:center;border:0;border-radius:12px;box-shadow:none;cursor:pointer;display:inline-flex;font:700 15px Tahoma,Arial,sans-serif;justify-content:center;min-height:52px;padding:0 28px;text-decoration:none!important;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.fpt-button{background:linear-gradient(135deg,var(--fpt-blue),#3f72f5);box-shadow:0 12px 25px rgba(36,87,230,.23);color:#fff!important;min-width:210px}.fpt-button:hover,.fpt-pay-button:hover{box-shadow:0 16px 30px rgba(21,78,194,.28);color:#fff!important;transform:translateY(-2px)}.fpt-step-label{color:var(--fpt-blue);display:block;font-size:13px;font-weight:700;margin-bottom:9px}.fpt-intro>h2{font-size:29px;margin:0 0 25px}.fpt-rules{display:grid;gap:12px;grid-template-columns:1fr 1fr;list-style:none;margin:0 0 28px;padding:0}.fpt-rules li{background:var(--fpt-soft);border:1px solid var(--fpt-line);border-radius:13px;padding:14px 16px}.fpt-rules strong{color:#25365f;display:block;font-size:14px;margin-bottom:5px}.fpt-rules span{color:var(--fpt-muted);font-size:12px;line-height:1.7}
.fpt-field{display:block;margin:0 0 16px}.fpt-field>span{display:block;font-size:13px;font-weight:700;margin-bottom:8px}.fpt-field input,.fpt-field select,.fpt-field textarea{background:#fff;border:1px solid #ccd6ef!important;border-radius:10px!important;box-shadow:none!important;font:15px Arial,sans-serif;min-height:50px;outline:none;padding:10px 14px;width:100%}.fpt-field input:focus{border-color:var(--fpt-blue)!important;box-shadow:0 0 0 3px rgba(36,87,230,.09)!important}.fpt-consent{align-items:center;color:var(--fpt-muted);display:flex;font-size:13px;gap:9px;margin:12px 0 22px}.fpt-consent input{accent-color:var(--fpt-blue);height:18px;width:18px}.fpt-inline-error{background:#fff0f2;border:1px solid #ffcbd2;border-radius:10px;color:#9e2435;font-size:13px;margin-bottom:16px;padding:12px 15px}
.fpt-test-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.fpt-category{background:#edf2ff;border-radius:20px;color:var(--fpt-blue-deep);font:700 12px Arial,sans-serif;letter-spacing:.5px;padding:7px 13px;text-transform:uppercase}.fpt-confirmation{background:#e8fbf3;border-radius:20px;color:#087d50;font-size:11px;font-weight:700;margin-right:7px;padding:7px 11px}.fpt-counter{color:var(--fpt-muted);font-size:13px}.fpt-counter strong{color:var(--fpt-ink);font-size:19px}.fpt-progress{background:#edf0f7;border-radius:20px;height:7px;margin-bottom:26px;overflow:hidden}.fpt-progress span{background:linear-gradient(90deg,var(--fpt-blue),#65a1ff);border-radius:20px;display:block;height:100%;transition:width .35s ease}.fpt-timer{align-items:center;color:var(--fpt-muted);display:flex;font-size:12px;gap:8px;justify-content:flex-end;margin-top:-11px}.fpt-timer-ring{align-items:center;background:#edf2ff;border:3px solid #bfcdf6;border-radius:50%;color:var(--fpt-blue);display:flex;height:48px;justify-content:center;width:48px}.fpt-timer-ring b{font:800 18px Arial,sans-serif}.fpt-timer-ring.is-urgent{animation:fptPulse .75s infinite;background:#fff0f2;border-color:#ff9cac;color:var(--fpt-danger)}@keyframes fptPulse{50%{transform:scale(1.08)}}.fpt-passage{background:#f7f9fd;border-left:4px solid var(--fpt-blue);border-radius:12px;color:#2e3850;font:16px/1.85 Georgia,serif;margin:22px 0;padding:19px 22px;text-align:left}.fpt-question{color:#18223a;font:700 clamp(20px,3vw,28px)/1.5 Arial,sans-serif;margin:22px 0;text-align:left}.fpt-options{display:grid;gap:11px}.fpt-option{align-items:center;background:#fff;border:1px solid #dce3f1;border-radius:13px;color:#263149;cursor:pointer;display:flex;gap:13px;min-height:60px;padding:9px 14px;text-align:left;transition:.15s ease;width:100%}.fpt-option>span{align-items:center;background:#eff3fb;border-radius:9px;color:#53627e;display:flex;flex:0 0 38px;font:800 14px Arial;height:38px;justify-content:center}.fpt-option>b{font:600 15px/1.45 Arial,sans-serif}.fpt-option:hover{border-color:#8da9fa;box-shadow:0 6px 17px rgba(36,87,230,.08);transform:translateY(-1px)}.fpt-option.is-selected{background:#edf3ff;border-color:var(--fpt-blue)}.fpt-option.is-selected>span{background:var(--fpt-blue);color:#fff}.fpt-option:disabled{cursor:default}.fpt-no-back{color:#929bad;font-size:11px;margin:17px 0 0;text-align:center}
.fpt-loading,.fpt-error{text-align:center;padding:70px 10px}.fpt-loading>span{animation:fptSpin 1s linear infinite;border:4px solid #dfe7fb;border-radius:50%;border-top-color:var(--fpt-blue);display:block;height:54px;margin:0 auto 19px;width:54px}@keyframes fptSpin{to{transform:rotate(360deg)}}.fpt-loading h2,.fpt-error h2{font-size:24px;margin:0 0 8px}.fpt-loading p,.fpt-error p{color:var(--fpt-muted)}.fpt-error>span{align-items:center;background:#fff0f2;border-radius:50%;color:var(--fpt-danger);display:flex;font:900 28px Arial;height:58px;justify-content:center;margin:0 auto 16px;width:58px}
.fpt-result{text-align:center}.fpt-result>.fpt-step-label{margin-bottom:15px}.fpt-level-orb{align-items:center;background:linear-gradient(145deg,#2457e6,#173ba8);border:8px solid #e7edff;border-radius:50%;box-shadow:0 16px 35px rgba(36,87,230,.25);color:#fff;display:flex;flex-direction:column;height:170px;justify-content:center;margin:0 auto 24px;width:170px}.fpt-level-orb small{font-size:11px;opacity:.8}.fpt-level-orb strong{font:900 54px/1 Arial,sans-serif;margin:5px 0}.fpt-level-orb span{font-size:11px;opacity:.9}.fpt-result>h2{font-size:20px;line-height:1.8;margin:0 auto 26px;max-width:660px}.fpt-skills{background:var(--fpt-soft);border:1px solid var(--fpt-line);border-radius:16px;margin:0 auto 22px;max-width:680px;padding:19px 21px}.fpt-skill-row{align-items:center;display:grid;font-size:12px;gap:12px;grid-template-columns:105px 1fr 42px;margin:10px 0;text-align:left}.fpt-skill-row>div{background:#e4e9f3;border-radius:10px;height:8px;overflow:hidden}.fpt-skill-row i{background:linear-gradient(90deg,var(--fpt-blue),#6fa4ff);border-radius:10px;display:block;height:100%}.fpt-skill-row strong{font:700 12px Arial;color:#52617d}.fpt-report-notes{color:#4f5c73;font-size:13px;line-height:1.8;margin:auto;max-width:680px}.fpt-report-notes p{background:#fff;border-bottom:1px solid var(--fpt-line);margin:0;padding:10px}.fpt-result-actions{margin:24px 0}.fpt-secondary-button{background:#eef2fa;color:#34435e!important}.fpt-certificate-offer{align-items:center;background:linear-gradient(135deg,#f3fff8,#e8fbf2);border:1px solid #b9ebd2;border-radius:18px;display:grid;gap:18px;grid-template-columns:auto 1fr auto;margin:28px auto 0;max-width:740px;padding:21px;text-align:right}.fpt-discount-badge{align-items:center;background:#0dbf75;border-radius:50%;color:#fff;display:flex;font-size:12px;font-weight:800;height:68px;justify-content:center;text-align:center;width:68px}.fpt-certificate-offer h3{color:#15523c;font-size:18px;margin:0 0 6px}.fpt-certificate-offer p{color:#547064;font-size:12px;line-height:1.8;margin:0}.fpt-pay-button{background:linear-gradient(135deg,#08bf73,#00a965);box-shadow:0 11px 24px rgba(8,191,115,.25);color:#fff!important;white-space:nowrap}.fpt-certificate-offer.is-unavailable{display:block;text-align:center}
.fpt-cta{align-items:center;background:linear-gradient(135deg,#132c78,#2457e6);border-radius:20px;color:#fff;display:flex;gap:30px;justify-content:space-between;margin:25px auto;max-width:1050px;padding:32px}.fpt-cta h2{color:#fff;margin:4px 0 8px}.fpt-cta p{margin:0;opacity:.8}.fpt-cta .fpt-eyebrow{color:#aecaFF}.fpt-cta .fpt-button{background:#fff;color:var(--fpt-blue)!important;white-space:nowrap}
body.fpt-placement-checkout{background:#edf1ff}.fpt-placement-checkout .woocommerce{background:#fff;border-radius:26px;box-shadow:0 22px 65px rgba(35,61,137,.12);margin:45px auto;max-width:1080px;padding:38px}.fpt-placement-checkout .woocommerce-checkout h3{color:#1d2e57}.fpt-placement-checkout .woocommerce input.input-text,.fpt-placement-checkout .woocommerce select{border:1px solid #cbd6ed;border-radius:9px;min-height:48px;padding:9px 12px}.fpt-placement-checkout #place_order{background:linear-gradient(135deg,#08bf73,#00a965);border-radius:11px;box-shadow:0 12px 25px rgba(8,191,115,.25);font-weight:700;min-height:52px;width:100%}.fpt-order-finish{background:#edf3ff;border:1px solid #cbd9ff;border-radius:12px;margin-top:20px;padding:16px;text-align:center}
@media(max-width:720px){.fpt-shell{border-radius:18px;margin:10px auto;padding:34px 12px 42px}.fpt-card{border-radius:18px;padding:27px 18px}.fpt-rules{grid-template-columns:1fr}.fpt-certificate-offer{grid-template-columns:1fr;text-align:center}.fpt-discount-badge{margin:auto}.fpt-pay-button{width:100%}.fpt-test-head{align-items:flex-start;gap:12px}.fpt-confirmation{display:inline-block;margin-top:7px}.fpt-timer{margin-top:8px}.fpt-skill-row{grid-template-columns:82px 1fr 36px}.fpt-cta{align-items:stretch;flex-direction:column}.fpt-placement-checkout .woocommerce{border-radius:16px;margin:15px 8px;padding:18px}}

/* 0.6 adaptive test-type, direction, young learner, and payment refinements */
.fpt-test-types{display:grid;gap:14px;grid-template-columns:1fr 1fr;margin:0 0 24px}.fpt-test-type{align-items:center;background:#fff;border:2px solid #e1e7f2;border-radius:17px;color:var(--fpt-ink);cursor:pointer;display:grid;gap:5px;grid-template-columns:58px 1fr;padding:17px;text-align:right;transition:.18s ease}.fpt-test-type:hover{border-color:#9fb5f5;transform:translateY(-2px)}.fpt-test-type.is-selected{background:#f3f6ff;border-color:var(--fpt-blue);box-shadow:0 8px 22px rgba(36,87,230,.1)}.fpt-type-icon{align-items:center;background:#e9efff;border-radius:15px;color:var(--fpt-blue);display:flex;font:900 21px Arial;grid-row:1/3;height:54px;justify-content:center;width:54px}.fpt-test-type[data-type=young] .fpt-type-icon{background:#fff2bd;color:#dc8b00}.fpt-test-type strong{font-size:16px}.fpt-test-type small{color:var(--fpt-muted);font-size:11px;line-height:1.7}
.fpt-question,.fpt-passage{direction:ltr!important;text-align:left!important;unicode-bidi:isolate!important}.fpt-question{display:block;width:100%}.fpt-options{direction:ltr!important;unicode-bidi:isolate!important}.fpt-option{direction:ltr!important;text-align:left!important;unicode-bidi:isolate!important}.fpt-option>b{direction:ltr!important;text-align:left!important;unicode-bidi:plaintext!important}.fpt-next-wrap{display:flex;justify-content:flex-end;margin-top:20px}.fpt-next-button{min-width:180px}.fpt-next-button:disabled{background:#cbd3e3;box-shadow:none;cursor:not-allowed;transform:none}
.fpt-question-media{align-items:center;background:linear-gradient(135deg,#f8fbff,#eef4ff);border:1px solid #dfe8f7;border-radius:18px;display:flex;justify-content:center;margin:18px auto;max-width:390px;min-height:190px;overflow:hidden;padding:9px}.fpt-question-media img{display:block;height:190px;max-width:100%;object-fit:contain;width:100%}.fpt-young-test{border:4px solid #ffcf4d}.fpt-young-test .fpt-category{background:#fff0b7;color:#7d5500}.fpt-young-test .fpt-question{color:#15315d;font-size:clamp(27px,4vw,37px);line-height:1.45}.fpt-young-test .fpt-option{border-radius:17px;min-height:74px;padding:12px 17px}.fpt-young-test .fpt-option>span{background:#fff2be;color:#8c6500;font-size:17px;height:46px;width:46px}.fpt-young-test .fpt-option>b{font-size:20px}.fpt-young-test .fpt-progress span{background:linear-gradient(90deg,#ffbd2f,#ffdb65)}
.fpt-checkout-intro{align-items:center;background:linear-gradient(135deg,#edf3ff,#f8faff);border:1px solid #cfdcff;border-radius:20px;display:flex;gap:18px;margin:0 0 26px;padding:22px}.fpt-checkout-icon,.fpt-receipt-check{align-items:center;background:var(--fpt-blue);border-radius:50%;color:#fff;display:flex;flex:0 0 58px;font:900 24px Arial;height:58px;justify-content:center}.fpt-checkout-intro h1{color:#172b57;font-size:24px;margin:0 0 7px}.fpt-checkout-intro p{color:#66738d;line-height:1.8;margin:0}.fpt-receipt-card{align-items:center;background:linear-gradient(135deg,#effff7,#f8fffb);border:1px solid #bcebd1;border-radius:20px;display:flex;gap:18px;margin:24px 0;padding:24px}.fpt-receipt-check{background:var(--fpt-green)}.fpt-receipt-card h2{color:#15563d;font-size:22px;margin:0 0 7px}.fpt-receipt-card p{color:#557267;line-height:1.8;margin:0 0 6px}.fpt-receipt-card small{color:#72877f}
.fpt-error-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:22px 0 15px}.fpt-error>small{color:#7b8497;display:block;line-height:1.8;margin:auto;max-width:590px}
@media(max-width:720px){.fpt-test-types{grid-template-columns:1fr}.fpt-next-wrap{justify-content:stretch}.fpt-next-button{width:100%}.fpt-question-media,.fpt-question-media img{height:160px;min-height:160px}.fpt-checkout-intro,.fpt-receipt-card{align-items:flex-start;flex-direction:column}}
