.gfp-pronunciation{--gfpl-navy:#0a285f;--gfpl-blue:#1469eb}
.gfp-pronunciation .detail-note{min-height:90px}
.gfp-pronunciation .gfpl-example-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:19px 0 9px}
.gfp-pronunciation .gfpl-example-header strong{font-size:13px}.gfp-pronunciation .gfpl-example-header small{color:#8291a7;font-size:11px}
.gfp-pronunciation .gfpl-transcriber{margin:22px 0 0}
.gfp-pronunciation .gfpl-fieldlabel{display:block;margin:17px 0 6px;font-weight:800;font-size:13px;color:#16417e}
.gfp-pronunciation textarea{display:block;width:100%;resize:vertical;min-height:97px;border:1px solid #ccdaed;border-radius:12px;padding:13px;color:#102244;background:#fff;font:inherit;font-size:15px;line-height:1.6}
.gfp-pronunciation textarea:focus{outline:3px solid #b9d8ff;border-color:#427dff}
.gfp-pronunciation .gfpl-actions{margin:12px 0;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.gfp-pronunciation [data-transcribe-status]{font-size:12px;color:#486a9a}
.gfp-pronunciation .gfpl-ipa-output{background:#eff6ff;border:1px solid #d4e7ff;border-radius:12px;padding:19px;min-height:80px;color:#102b62;font-size:clamp(17px,2vw,23px);word-break:break-word;line-height:1.65;white-space:pre-wrap}
.gfp-pronunciation .gfpl-minimal{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
.gfp-pronunciation .gfpl-minimal button{border:1px solid #bfd7fb;border-radius:8px;padding:7px 12px;background:#fff;color:#1553bc;font-weight:750;cursor:pointer}
.gfp-pronunciation .gfpl-minimal button:hover{background:#e4f1ff}
.gfp-pronunciation .sound-btn:focus-visible,.gfp-pronunciation .example-chip:focus-visible{outline:3px solid #579cff;outline-offset:2px}
@media(max-width:650px){.gfp-pronunciation .gfpl-ipa-output{font-size:18px}}
/* Scoped fallback: shortcode also works on a page without the LAB hub theme. */
.gfp-pronunciation{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-pronunciation *{box-sizing:border-box}
.gfp-pronunciation button{cursor:pointer;font:inherit}
.gfp-pronunciation .pill-tabs{display:inline-flex;background:#e8eff9;border:1px solid #dae4f3;border-radius:12px;gap:4px;padding:5px;margin-bottom:18px}
.gfp-pronunciation .pill-tabs button{background:transparent;border:0;border-radius:9px;padding:10px 15px;color:#576d8b;font-size:12px;font-weight:800}
.gfp-pronunciation .pill-tabs button.active{background:white;color:#1455c3;box-shadow:0 2px 9px rgba(15,43,95,.08)}
.gfp-pronunciation .lab-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:19px;align-items:start}
.gfp-pronunciation .panel{background:white;border:1px solid #dce6f4;border-radius:18px;padding:25px;box-shadow:0 18px 56px rgba(14,41,84,.09)}
.gfp-pronunciation .panel-title{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:12px}
.gfp-pronunciation .panel-title h3{font-size:16px;margin:0;letter-spacing:-.018em}
.gfp-pronunciation .hint{color:#738199;font-size:12px;margin:0 0 20px}
.gfp-pronunciation .sound-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.gfp-pronunciation .sound-btn{min-height:98px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border-radius:13px;border:1px solid #dce6f4;background:#f8fbff;color:#183764;transition:.18s}
.gfp-pronunciation .sound-btn:hover{border-color:#8cbbff;background:#f0f7ff}
.gfp-pronunciation .sound-btn.active{background:#e9f2ff;border:2px solid #1768e9;box-shadow:0 0 0 3px rgba(24,101,228,.09)}
.gfp-pronunciation .sound-btn strong{font-size:30px;line-height:1.1;font-weight:700}.gfp-pronunciation .sound-btn span{font-size:12px}
.gfp-pronunciation .sound-btn em{font-size:10px;font-style:normal;color:#5e85b4}
.gfp-pronunciation .detail-banner{border-radius:14px;background:linear-gradient(130deg,#09265c,#175bb4);color:#fff;text-align:center;padding:22px 16px;margin-bottom:17px}
.gfp-pronunciation .detail-symbol{font-size:74px;line-height:1;font-weight:600}
.gfp-pronunciation .detail-type{font-size:10px;letter-spacing:.14em;color:#b2d7ff;font-weight:800;margin:8px 0}
.gfp-pronunciation .detail-example{font-size:17px;font-weight:780}
.gfp-pronunciation .detail-note{background:#f0f6ff;border:1px solid #dceaff;border-radius:11px;padding:14px;margin-bottom:14px;font-size:13px;color:#425d82;line-height:1.65}
.gfp-pronunciation .detail-examples{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.gfp-pronunciation .example-chip{padding:8px 11px;border:1px solid #d6e5fb;background:#f5f9ff;color:#1654b2;border-radius:9px;font-size:12px}
.gfp-pronunciation .helper{font-size:11px;color:#8090a4;line-height:1.5;margin:12px 0 0}
.gfp-pronunciation .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-pronunciation .btn-blue{background:#1466e5;color:#fff}
.gfp-pronunciation .btn-plain{background:#fff;color:#16417e;border:1px solid #dce6f3}
.gfp-pronunciation .btn:disabled{opacity:.45;cursor:not-allowed}
.gfp-pronunciation .tag{background:#eaf3ff;color:#1c62c8;font-size:10px;font-weight:850;border-radius:99px;padding:6px 9px}
.gfp-pronunciation .below-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:22px 0}
.gfp-pronunciation .mini-box{border:1px solid #dfebfa;border-radius:14px;padding:17px;background:#fff;display:flex;flex-direction:column;gap:7px;font-size:12px;color:#66758a}
.gfp-pronunciation .mini-box strong{font-size:14px;color:#183b78}
@media(max-width:850px){.gfp-pronunciation .lab-layout{grid-template-columns:1fr}.gfp-pronunciation .below-grid{grid-template-columns:1fr}}
@media(max-width:650px){.gfp-pronunciation .panel{padding:16px}.gfp-pronunciation .sound-grid{grid-template-columns:repeat(3,1fr);gap:7px}.gfp-pronunciation .sound-btn{min-height:87px}.gfp-pronunciation .sound-btn strong{font-size:27px}.gfp-pronunciation .pill-tabs{display:flex;width:100%}.gfp-pronunciation .pill-tabs button{flex:1;padding:9px 6px;font-size:10px}}
