.pg{--pg-night:#1f2744;--pg-cream:#f6efdf;--pg-muted:#c9c3b4;--pg-gold:#efd28d;--pg-mint:#b5e6d7;--pg-ok:#7fd6b9;--pg-ng:#f2a48f;--play-ink:var(--pg-cream);--play-icon-bg:#ffffff1a;border-radius:var(--radius-xl);color:var(--pg-cream);isolation:isolate;-webkit-tap-highlight-color:transparent;background:radial-gradient(90% 70% at 45% 32%,#34406a,#232c4c 60%,#1a2038);position:relative;overflow:hidden}.pg-stage{aspect-ratio:16/10;outline:none;position:relative}.pg-art{width:100%;height:100%;display:block;position:absolute;inset:0}.pg .pa-bg{display:none}.pg:not([data-play-mode]) .pg-stage{cursor:pointer}.pg:not([data-play-mode]) :is(.pg-status,.pg-panel,.pg-feedback,.pg-caption){display:none}.pg-entry{padding:var(--space-3) var(--space-4) var(--space-5);justify-items:center;display:grid}.pg[data-play-mode=on] .pg-entry{display:none}.pg-sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.pg p{margin:0}.pg-cta{min-width:168px;min-height:60px;padding-inline:var(--space-6);border-radius:var(--radius-full);background:var(--pg-cream);color:var(--pg-night);font:inherit;letter-spacing:.02em;cursor:pointer;touch-action:manipulation;border:0;font-size:1.2rem;font-weight:800;transition:translate 60ms,box-shadow 60ms;box-shadow:0 5px #b9ae95}.pg-cta:active{translate:0 3px;box-shadow:0 2px #b9ae95}.pg-cta:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;translate:none}.pg :focus-visible{outline:3px solid var(--pg-gold);outline-offset:3px}.pg .pa-amp{transition:transform .35s cubic-bezier(.2,.8,.3,1),opacity .3s}.pg .pa-wave-b{transition:transform .45s cubic-bezier(.2,.8,.3,1.2)}.pg .pa-ind g{transition:opacity .3s}.pg:is([data-step=a],[data-step=gap],[data-step=b],[data-step=done]) .pa-wave-a .pa-amp,.pg:is([data-step=b],[data-step=done]) .pa-wave-b .pa-amp{opacity:1;transform:scaleY(1)}.pg[data-reveal=higher] .pa-wave-b{transform:translateY(-34px)}.pg[data-reveal=lower] .pa-wave-b{transform:translateY(34px)}.pg[data-reveal=higher] .pa-ind [data-ind=higher],.pg[data-reveal=same] .pa-ind [data-ind=same],.pg[data-reveal=lower] .pa-ind [data-ind=lower]{opacity:1}@media (prefers-reduced-motion:no-preference){.pg[data-step=a] .pa-wave-a .pa-line,.pg[data-step=b] .pa-wave-b .pa-line{animation:.36s ease-in-out infinite alternate pg-hum}}@keyframes pg-hum{0%{stroke-width:3.2px}to{stroke-width:5.4px}}.pg-caption{padding:4px var(--space-4);border-radius:var(--radius-full);color:var(--pg-cream);white-space:nowrap;background:#00000038;font-size:.95rem;font-weight:700;position:absolute;bottom:6%;left:50%;translate:-50%}.pg-caption:empty{display:none}.pg-pips{gap:5px;margin:0;padding:0;list-style:none;display:flex}.pg-pips li{width:12px;height:12px;color:var(--pg-night);border:1.5px solid #f6efdf73;border-radius:50%;place-items:center;font-size:.6rem;font-weight:800;line-height:1;display:grid}.pg-pips li[data-state=current]{border-color:var(--pg-gold);background:#efd28d4d}.pg-pips li[data-state=ok]{background:var(--pg-ok);border-color:var(--pg-ok)}.pg-pips li[data-state=ng]{border-color:var(--pg-ng);color:var(--pg-ng);background:0 0}.pg-pips li[data-state=ng]:before{content:"✕";font-size:.55rem}.pg-pips--result li{width:20px;height:20px;font-size:.75rem}.pg-pips--result li[data-state=ok]:before{content:"✓"}.pg-pips--result li[data-state=ng]:before{font-size:.75rem}.pg[data-play-mode=on]{-webkit-user-select:none;user-select:none;border-radius:0;grid-template:"bar""stage"minmax(0,1fr)"panel"/minmax(0,1fr);animation:.3s ease-out pg-fade;display:grid}@keyframes pg-fade{0%{opacity:0}to{opacity:1}}.pg[data-play-mode=on] .play-bar{padding:calc(env(safe-area-inset-top) + var(--space-2)) calc(env(safe-area-inset-right) + var(--space-3)) 0 calc(env(safe-area-inset-left) + var(--space-3));grid-area:bar}.pg[data-play-mode=on] .pg-stage{aspect-ratio:auto;grid-area:stage;min-height:120px}.pg[data-play-mode=on] .pg-panel{grid-area:panel}.pg[data-play-mode=on] .pg-status{top:calc(env(safe-area-inset-top) + var(--space-2));min-height:var(--tap-min);white-space:nowrap;pointer-events:none;align-content:center;justify-items:center;gap:4px;font-size:.9rem;font-weight:800;display:grid;position:absolute;left:50%;translate:-50%}@media (width<=420px){.pg[data-play-mode=on] .pg-pips{display:none}}.pg[data-phase=ready] .pg-status,.pg[data-phase=result] .pg-status{visibility:hidden}.pg-panel{padding:0 calc(env(safe-area-inset-right) + var(--space-4)) calc(env(safe-area-inset-bottom) + var(--space-4)) calc(env(safe-area-inset-left) + var(--space-4))}.pg-panel>[hidden]{display:none!important}.pg-ready,.pg-answers,.pg-result{gap:var(--space-3);text-align:center;justify-items:center;width:min(100%,440px);margin-inline:auto;display:grid}.pg-ready__title{font-size:1.3rem;font-weight:800}.pg-ready__sub{color:var(--pg-muted);font-weight:600;margin-top:calc(-1 * var(--space-2))!important}.pg-levels{gap:var(--space-2);border:0;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;margin:0;padding:0;display:grid}.pg-levels legend{margin-bottom:var(--space-1);color:var(--pg-muted);grid-column:1/-1;padding:0;font-size:.85rem;font-weight:700}.pg-level{min-height:60px;padding:var(--space-2) 4px;border-radius:var(--radius-md);cursor:pointer;border:2px solid #f6efdf38;align-content:center;gap:2px;display:grid;position:relative}.pg-level input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.pg-level__name{font-weight:800}.pg-level__note{color:var(--pg-muted);font-size:.75rem;font-weight:600}.pg-level:has(input:checked){border-color:var(--pg-gold);background:#efd28d24}.pg-level:has(input:checked) .pg-level__name:before{content:"● ";color:var(--pg-gold)}.pg-level:has(input:focus-visible){outline:3px solid var(--pg-gold);outline-offset:2px}.pg-gate{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);text-align:left;background:#efd28d29;border:1.5px solid #efd28d8c;align-items:center;font-size:.95rem;display:flex}.pg-gate[hidden]{display:none}.pg-gate__icon{background:var(--pg-gold);width:36px;height:36px;color:var(--pg-night);border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.pg-gate__where{color:var(--pg-muted);font-size:.85rem;font-weight:600}.pg-choices{gap:var(--space-2);width:100%;display:grid}.pg-choice{min-height:58px;padding:0 var(--space-3);border-radius:var(--radius-full);color:var(--pg-cream);font:inherit;cursor:pointer;touch-action:manipulation;background:#f6efdf14;border:2px solid #f6efdf4d;grid-template-columns:40px 1fr 40px;align-items:center;font-size:1.2rem;font-weight:800;transition:background .15s,border-color .15s,opacity .2s;display:grid;position:relative}.pg-choice__glyph{font-size:1rem}.pg-choice__key{width:24px;height:24px;color:var(--pg-muted);border:1px solid #f6efdf59;border-radius:6px;justify-self:end;place-items:center;font-size:.8rem;display:grid}.pg-choice__mark{font-size:1.1rem;position:absolute;top:50%;right:52px;translate:0 -50%}@media (hover:hover){.pg-choice:not([aria-disabled=true]):hover{background:#f6efdf29;border-color:#f6efdf99}}.pg-choice:not([aria-disabled=true]):active{background:#f6efdf3d}.pg-choice[aria-disabled=true]{cursor:default}.pg[data-phase=question][data-heard=false] .pg-choice{opacity:.45}.pg-choice[data-picked]{border-color:var(--pg-ng)}.pg-choice[data-picked] .pg-choice__mark:before{content:"✕";color:var(--pg-ng)}.pg-choice[data-right]{border-color:var(--pg-ok);background:#7fd6b92e}.pg-choice[data-right] .pg-choice__mark:before{content:"✓";color:var(--pg-ok)}@media (hover:none),(pointer:coarse){.pg-choice__key,.pg-keyhint{display:none}}.pg-under{gap:var(--space-2) var(--space-4);flex-wrap:wrap;justify-content:center;align-items:center;display:flex}.pg-replay{min-height:48px;padding:0 var(--space-4);border-radius:var(--radius-full);color:var(--pg-gold);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;font-weight:800;display:inline-flex}.pg-replay[aria-disabled=true]{opacity:.4;cursor:default}.pg-keyhint{color:var(--pg-muted);font-size:.8rem;font-weight:600}.pg-feedback{display:none}.pg[data-play-mode=on] .pg-feedback:not(:empty){padding:6px var(--space-5);border-radius:var(--radius-full);background:var(--pg-cream);color:var(--pg-night);white-space:nowrap;z-index:1;grid-area:stage;place-self:start center;font-size:1.15rem;font-weight:800;animation:.22s cubic-bezier(.2,.9,.3,1.2) pg-pop;display:block;margin-top:var(--space-3)!important}@keyframes pg-pop{0%{opacity:0;scale:.9}to{opacity:1;scale:1}}.pg-result{padding:var(--space-4);border-radius:var(--radius-lg);background:#f6efdf14;border:1px solid #f6efdf24}.pg-result__badge{padding:2px var(--space-4);border-radius:var(--radius-full);background:var(--pg-gold);color:var(--pg-night);font-weight:800}.pg-result__level{color:var(--pg-muted);font-size:.9rem;font-weight:700}.pg-result__title{font-size:1.6rem;font-weight:800}.pg-result__stats{gap:var(--space-6);margin:0;display:flex}.pg-result__stats div{gap:2px;display:grid}.pg-result__stats dt{color:var(--pg-muted);font-size:.85rem;font-weight:700}.pg-result__stats dd{font-variant-numeric:tabular-nums;margin:0;font-size:1.3rem;font-weight:800}.pg-result__actions{gap:var(--space-2);justify-items:center;display:grid}.pg-link{min-height:44px;padding:0 var(--space-3);color:var(--pg-gold);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;font-weight:700;text-decoration:underline}@media (orientation:landscape) and (height<=520px){.pg[data-play-mode=on]{grid-template:"bar bar""stage panel"minmax(0,1fr)/minmax(0,1fr) minmax(0,1fr)}.pg[data-play-mode=on] .pg-panel{padding-top:0;padding-bottom:calc(env(safe-area-inset-bottom) + var(--space-2));align-self:center}.pg[data-play-mode=on] .play-bar{z-index:2;pointer-events:none;position:absolute;inset:0 0 auto}.pg[data-play-mode=on] .play-bar button{pointer-events:auto}.pg[data-play-mode=on] .pg-stage{margin-top:56px}.pg-ready,.pg-answers,.pg-result{gap:var(--space-2)}.pg-ready__sub,.pg-keyhint{display:none}.pg-choice{min-height:50px}.pg-level{min-height:52px}.pg-cta{min-height:52px;font-size:1.1rem}.pg-result{padding:var(--space-3)}.pg-result__title{font-size:1.3rem}}@media (width<=360px){.pg-choice{min-height:52px;font-size:1.1rem}.pg-ready__title{font-size:1.15rem}}
