.pk{--pk-ink:#0e0f1a;--pk-ink-2:#171a2e;--pk-ink-3:#232743;--pk-violet:#7c4dff;--pk-violet-2:#a58bff;--pk-coral:#ff5a4e;--pk-mint:#2ee6a6;--pk-amber:#ffb020;--pk-display:"Barlow Condensed", "Manrope", sans-serif}.pk-display{font-family:var(--pk-display,"Barlow Condensed", sans-serif);letter-spacing:.005em;text-transform:uppercase;font-variant-numeric:tabular-nums;font-style:italic;font-weight:800;line-height:.95}.pf{width:100%;height:auto;display:block;overflow:hidden}.pf-dark{--pf-fig:#fff;--pf-fig2:#ffffff73;--pf-floor:#ffffff29;--pf-glow:#ff5a4e;--pf-guide:#2ee6a6d9}.pf-light{--pf-fig:#23264a;--pf-fig2:#8b8fb5;--pf-floor:#dfe2f0;--pf-glow:#ff5a4e;--pf-guide:#12b981}.pf-glow{transform-box:fill-box;transform-origin:50%;animation:1.6s ease-in-out infinite pfGlow}.pf-guide{animation:1.2s linear infinite pfDash}.pf-breathe{animation:2.4s ease-in-out infinite pfBreathe}.pf-shake{animation:.14s linear infinite pfShake}.pf-squeeze{animation:1s ease-in-out infinite pfSqueeze}.pf-lift{animation:1.4s ease-in-out infinite pfLift}@keyframes pfGlow{0%,to{opacity:.22;transform:scale(.92)}50%{opacity:.85;transform:scale(1.12)}}@keyframes pfDash{to{stroke-dashoffset:-32px}}@keyframes pfBreathe{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes pfShake{0%{transform:translate(0)}25%{transform:translate(.7px,-.6px)}50%{transform:translate(-.7px,.6px)}75%{transform:translate(.6px,.7px)}to{transform:translate(0)}}@keyframes pfSqueeze{0%,to{opacity:.4}50%{opacity:1}}@keyframes pfLift{0%,to{opacity:.5;transform:translateY(0)}50%{opacity:1;transform:translateY(-7px)}}@keyframes pkFadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes pkPop{0%{opacity:0;transform:scale(.55)}60%{opacity:1;transform:scale(1.12)}to{transform:scale(1)}}@keyframes pkNum{0%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes pkPulseRing{0%{opacity:.55;transform:scale(.92)}to{opacity:0;transform:scale(1.35)}}@keyframes pkDrift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes pkFlame{0%,to{transform:scale(1)rotate(-3deg)}50%{transform:scale(1.14)rotate(3deg)}}@keyframes pkShine{0%{transform:translate(-120%)skew(-18deg)}to{transform:translate(260%)skew(-18deg)}}@keyframes pkBreatheCircle{0%,to{transform:scale(.82)}50%{transform:scale(1.05)}}@keyframes pkBanner{0%{opacity:0;transform:translateY(-16px)}12%,80%{opacity:1;transform:none}to{opacity:0;transform:translateY(-8px)}}@keyframes pkConfetti{0%{opacity:1;transform:translateY(-12vh)rotate(0)}to{transform:translate3d(var(--dx), 108vh, 0) rotate(var(--rot));opacity:.9}}.pk-fade-up{animation:.55s cubic-bezier(.16,1,.3,1) both pkFadeUp}.pk-pop{animation:.5s cubic-bezier(.34,1.56,.64,1) both pkPop}.pk-num-pop{animation:.3s ease-out pkNum}.pk-hero{color:#fff;background:linear-gradient(120deg,#4b1fd8,#7c4dff 40%,#ff5a4e 110%) 0 0/200% 200%;border-radius:28px;padding:22px 20px 20px;animation:12s infinite pkDrift;position:relative;overflow:hidden;box-shadow:0 18px 40px -16px #7c4dff8c}.pk-hero:after{content:"";pointer-events:none;background:radial-gradient(circle at 85% 10%,#ffffff38,#0000 45%);position:absolute;inset:0}.pk-cta{cursor:pointer;font-family:var(--pk-display,sans-serif);letter-spacing:.04em;text-transform:uppercase;color:#1c1140;background:#fff;border:0;border-radius:9999px;justify-content:center;align-items:center;gap:10px;padding:16px 30px;font-size:1.35rem;font-style:italic;font-weight:800;transition:transform .15s;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 10px 24px -8px #00000073}.pk-cta:active{transform:scale(.96)}.pk-cta:after{content:"";background:linear-gradient(90deg,#0000,#7c4dff59,#0000);width:40%;animation:2.8s ease-in-out infinite pkShine;position:absolute;top:0;bottom:0}.pk-chip{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff2e;border-radius:9999px;align-items:center;gap:6px;padding:5px 11px;font-size:.74rem;font-weight:700;display:inline-flex}.pk-ex{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-card);cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;border-radius:20px;grid-template-columns:112px 1fr;align-items:center;gap:14px;padding:12px 14px 12px 8px;transition:transform .18s,box-shadow .18s;display:grid}.pk-ex:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.pk-ex:focus-visible,.pk-day:focus-visible,.pk-cta:focus-visible{outline:3px solid var(--pk-violet,#7c4dff);outline-offset:2px}.pk-day{border:1.5px solid var(--line);background:var(--mist);height:50px;font-family:var(--pk-display,sans-serif);color:var(--slate);cursor:pointer;border-radius:14px;justify-content:center;align-items:center;font-size:1.2rem;font-style:italic;font-weight:800;transition:transform .15s;display:flex;position:relative}.pk-day:hover{transform:translateY(-2px)}.pk-day[data-type=train]{color:#4b1fd8;background:#eef1ff;border-color:#d6dcff}.pk-day[data-type=test]{color:#e07a10;background:#fff1e0;border-color:#ffd9ab}.pk-day[data-done=true]{color:#fff;background:linear-gradient(135deg,#16b981,#2ee6a6);border-color:#0000}.pk-day[data-today=true]:after{content:"";border:2px solid var(--pk-violet,#7c4dff);border-radius:18px;animation:1.6s ease-out infinite pkPulseRing;position:absolute;inset:-5px}.pk-day[data-selected=true]{outline:3px solid var(--pk-violet,#7c4dff);outline-offset:2px}.pk-badge{text-align:center;background:var(--paper);border:1px solid var(--line);color:var(--slate);border-radius:18px;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;font-size:.72rem;font-weight:700;display:flex}.pk-badge[data-on=true]{color:#7a3d00;background:linear-gradient(160deg,#fff7e6,#ffe9d6);border-color:#ffd7a8}.pk-badge[data-on=false] .pk-badge-icon{filter:grayscale();opacity:.35}.pk-badge-icon{font-size:1.9rem;line-height:1}.pk-stage{z-index:100;color:#fff;padding:max(16px, env(safe-area-inset-top)) 18px max(20px, env(safe-area-inset-bottom));background:var(--pk-ink);flex-direction:column;transition:background .6s;display:flex;position:fixed;inset:0;overflow:hidden}.pk-stage:before{content:"";background:radial-gradient(circle at 50% 42%, var(--stage-glow,#7c4dff73), transparent 60%);pointer-events:none;transition:background .6s;position:absolute;inset:-20%}.pk-stage>*{position:relative}.pk-stage[data-mode=hold]{--stage-glow:#ff5a4e6b}.pk-stage[data-mode=rest],.pk-stage[data-mode=switch]{--stage-glow:#2ee6a657}.pk-stage[data-mode=prep]{--stage-glow:#ffb02066}.pk-stage[data-mode=done]{--stage-glow:#2ee6a680}.pk-iconbtn{color:#fff;cursor:pointer;background:#ffffff1f;border:0;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.pk-iconbtn[aria-pressed=false]{opacity:.45}.pk-iconbtn:focus-visible{outline-offset:2px;outline:3px solid #fff}.pk-ctl{cursor:pointer;font-family:var(--pk-display,sans-serif);text-transform:uppercase;letter-spacing:.04em;color:#fff;background:#ffffff24;border:0;border-radius:9999px;align-items:center;gap:8px;padding:14px 24px;font-size:1.1rem;font-style:italic;font-weight:800;display:inline-flex}.pk-ctl-main{color:var(--pk-ink);background:#fff}.pk-ctl:focus-visible{outline-offset:2px;outline:3px solid #fff}.pk-banner{color:var(--pk-ink);font-family:var(--pk-display,sans-serif);text-transform:uppercase;white-space:nowrap;pointer-events:none;z-index:3;background:#fff;border-radius:9999px;padding:8px 18px;font-size:1.3rem;font-style:italic;font-weight:800;animation:2.2s both pkBanner;position:absolute;top:14%;left:50%;transform:translate(-50%)}.pk-confetti{pointer-events:none;z-index:120;position:fixed;inset:0;overflow:hidden}.pk-confetti i{width:9px;height:15px;animation:pkConfetti var(--dur) cubic-bezier(.25, .6, .4, 1) var(--delay) forwards;border-radius:2px;position:absolute;top:0}.pk-breathe-orb{background:radial-gradient(circle at 35% 30%, #b9ffe6, var(--pk-mint) 55%, #0fa676);border-radius:50%;width:150px;height:150px;animation:4s ease-in-out infinite pkBreatheCircle;box-shadow:0 0 60px #2ee6a699}@media (prefers-reduced-motion:reduce){.pk-hero,.pk-cta:after,.pk-day[data-today=true]:after,.pk-breathe-orb,.pf-glow,.pf-guide,.pf-breathe,.pf-shake,.pf-squeeze,.pf-lift,.pk-fade-up,.pk-pop{animation:none!important}.pk-confetti{display:none}}
