.rp-head{display:flex;align-items:center;gap:.75rem}.rp-emblem{flex-shrink:0;display:grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:.875rem;background:var(--background-base);box-shadow:var(--neu-inset);color:var(--accent)}.rp-head h1,.rp-head h2{font-family:var(--font-heading);font-weight:700;font-size:1.625rem;letter-spacing:.04em;line-height:1;text-transform:uppercase;color:var(--foreground)}.rp-head p{margin-top:.25rem;font-size:.75rem}.rp-head p,.rp-streak{color:var(--foreground-muted)}.rp-streak{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .625rem;border-radius:999px;background:var(--background-base);box-shadow:var(--neu-inset-sm);font-family:var(--font-heading);font-size:.8125rem;font-weight:700;letter-spacing:.04em;font-variant-numeric:tabular-nums;white-space:nowrap}.rp-streak.is-on{color:var(--foreground)}.rp-streak.is-on svg{color:var(--flame-base);filter:drop-shadow(0 0 4px color-mix(in srgb,var(--flame-base) 60%,transparent))}.rp-slot{position:relative;display:flex;align-items:center;gap:.875rem;width:100%;padding:.875rem 1rem;border-radius:1.125rem;text-align:left;background:var(--neu-face);box-shadow:var(--neu-raise),var(--specular);transition:transform .25s var(--neu-ease-spring,cubic-bezier(.3,1.4,.5,1)),box-shadow .25s ease}.rp-slot:hover{transform:translateY(-2px)}.rp-slot:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.rp-slot:disabled{opacity:.6}.rp-ring{position:relative;flex-shrink:0;display:grid;place-items:center;width:4.5rem;height:4.5rem;border-radius:999px;background:var(--background-base);box-shadow:var(--neu-inset)}.rp-ring svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.rp-ring-track{fill:none;stroke:rgb(var(--foreground-rgb)/.08);stroke-width:4}.rp-ring-arc{fill:none;stroke:var(--accent-fill);stroke-width:4;stroke-linecap:round;filter:drop-shadow(0 0 4px rgb(var(--accent-fill-rgb)/.6));transition:stroke-dashoffset 1.1s cubic-bezier(.2,0,0,1)}.rp-ring-king{width:2.125rem;height:2.125rem;filter:drop-shadow(0 2px 2px rgb(0 0 0/.25))}.rp-ring-track.is-inner{stroke-width:3}.rp-ring-arc.is-learned{stroke:var(--rp-green);stroke-width:3;filter:drop-shadow(0 0 3px color-mix(in srgb,var(--rp-green) 55%,transparent))}.rp-slot-learned{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;color:var(--foreground)}.rp-slot-learned:before{content:"";width:.4375rem;height:.4375rem;border-radius:999px;background:var(--rp-green);flex-shrink:0}.rp-slot-games{font-size:.6875rem;line-height:1.35;color:var(--foreground-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-slot-games.is-left{color:var(--rp-red)}.rp-slot-games.is-kept{color:var(--rp-green)}.rp-slot-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.rp-slot-name{font-size:.8125rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--foreground-muted)}.rp-slot-name,.rp-slot-num{font-family:var(--font-heading)}.rp-slot-num{font-size:1.875rem;font-weight:800;line-height:1;color:var(--foreground);font-variant-numeric:tabular-nums}.rp-slot-num small{margin-left:.25rem;font-size:.8125rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--foreground-muted)}.rp-slot-sub{font-size:.75rem;line-height:1.35;color:var(--foreground-muted)}.rp-slot-hole{line-height:1.35;color:var(--rp-red);overflow:hidden;text-overflow:ellipsis}.rp-slot-foot,.rp-slot-hole{font-size:.6875rem;white-space:nowrap}.rp-slot-foot{flex-shrink:0;align-self:stretch;display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;font-family:var(--font-heading);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--foreground-muted)}.rp-slot-go{display:grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:999px;background:var(--background-base);box-shadow:var(--neu-inset-sm);color:var(--foreground-muted);transition:color .2s ease,box-shadow .2s ease}.rp-slot:hover .rp-slot-go{color:var(--accent);box-shadow:var(--neu-inset-sm),0 0 12px rgb(var(--accent-fill-rgb)/.35)}.rp-learned{position:relative;height:.5rem;border-radius:999px;background:var(--background-base);box-shadow:var(--neu-inset-sm);overflow:hidden}.rp-learned-fill{position:absolute;left:0;top:0;bottom:0;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent-fill));box-shadow:0 0 10px rgb(var(--accent-fill-rgb)/.5)}.rp-day{display:flex;flex-direction:column;gap:.5rem}.rp-day-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:0 .25rem}.rp-day-more{align-self:flex-start;display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;margin-left:.25rem;border-radius:999px;font-family:var(--font-heading);font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--foreground-muted)}.rp-day-more:hover{color:var(--foreground)}.rp-day-more svg{transition:transform .2s ease}.rp-day-head h2{font-family:var(--font-heading);font-size:.8125rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--foreground-muted)}.rp-task{display:flex;align-items:center;gap:.75rem;width:100%;padding:.5rem .75rem .5rem .5rem;border-radius:.875rem;text-align:left;background:var(--neu-face);box-shadow:var(--neu-raise-sm),var(--specular);transition:transform .2s ease,box-shadow .2s ease}button.rp-task:hover{transform:translateY(-1px)}button.rp-task:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rp-task.is-quiet{background:transparent;box-shadow:var(--neu-inset-sm)}.rp-task-well{position:relative;flex-shrink:0;display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:.75rem;background:var(--background-base);box-shadow:var(--neu-inset-sm);color:var(--foreground-muted)}.rp-task.is-due .rp-task-well{color:var(--accent);box-shadow:var(--neu-inset-sm),0 0 0 1.5px rgb(var(--accent-fill-rgb)/.55),0 0 14px rgb(var(--accent-fill-rgb)/.3)}.rp-task.is-warn .rp-task-well{color:var(--rp-red);box-shadow:var(--neu-inset-sm),0 0 0 1.5px color-mix(in srgb,var(--rp-red) 55%,transparent)}.rp-task.is-done .rp-task-well{color:var(--rp-green)}.rp-task-text{flex:1;min-width:0;display:flex;flex-direction:column}.rp-task-label{font-size:.875rem;font-weight:600;color:var(--foreground);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-task.is-quiet .rp-task-label{font-weight:500;color:var(--foreground-muted)}.rp-task-hint{font-size:.6875rem;overflow:hidden;text-overflow:ellipsis}.rp-task-hint,.rp-task-status{color:var(--foreground-muted);white-space:nowrap}.rp-task-status{flex-shrink:0;display:flex;align-items:center;gap:.375rem;font-family:var(--font-heading);font-size:.875rem;font-weight:700;letter-spacing:.02em;font-variant-numeric:tabular-nums}.rp-task.is-due .rp-task-status{color:var(--accent)}.rp-task.is-warn .rp-task-status{color:var(--rp-red)}.rp-task-chev{flex-shrink:0;color:var(--foreground-subtle);transition:transform .2s ease,color .2s ease}button.rp-task:hover .rp-task-chev{transform:translateX(2px);color:var(--accent)}.rp-steps{display:flex;flex-direction:column;gap:.625rem}.rp-step{display:flex;gap:.75rem;align-items:flex-start}.rp-step-well{position:relative;flex-shrink:0;display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:.875rem;background:var(--background-base);box-shadow:var(--neu-inset);color:var(--accent)}.rp-step-n{position:absolute;left:50%;bottom:-.375rem;transform:translateX(-50%);min-width:1.125rem;height:1.125rem;padding:0 .25rem;display:grid;place-items:center;border-radius:999px;background:var(--accent-fill);color:var(--background-base);font-size:.625rem;font-weight:800;box-shadow:0 0 8px rgb(var(--accent-fill-rgb)/.5)}.rp-step h3,.rp-step-n{font-family:var(--font-heading)}.rp-step h3{font-size:.9375rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1.1;color:var(--foreground)}.rp-step p{margin-top:.125rem;font-size:.75rem;line-height:1.4;color:var(--foreground-muted)}:root{--rp-red:#b42318;--rp-green:#2b8a3e;--rp-amber:#b45309;--rp-wax:#9f1d2b}:root[data-theme=dark]{--rp-red:#ff8787;--rp-green:#69db7c;--rp-amber:#fbbf24;--rp-wax:#e5484d}@media (prefers-reduced-motion:no-preference){.rp-day-head,.rp-slot,.rp-task{animation:rp-rise .45s cubic-bezier(.2,.9,.3,1) both}.rp-slot:nth-child(2){animation-delay:.08s}.rp-day>:nth-child(2){animation-delay:.12s}.rp-day>:nth-child(3){animation-delay:.17s}.rp-day>:nth-child(4){animation-delay:.22s}.rp-day>:nth-child(5){animation-delay:.27s}.rp-day>:nth-child(6){animation-delay:.32s}.rp-day>:nth-child(7){animation-delay:.37s}.rp-task.is-due .rp-task-well{animation:rp-breathe 2.4s ease-in-out infinite}.rp-task.is-done .rp-task-well svg{animation:rp-stamp .45s cubic-bezier(.2,.9,.3,1) .3s both}}@keyframes rp-rise{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:none}}@keyframes rp-breathe{0%,to{box-shadow:var(--neu-inset-sm),0 0 0 1.5px rgb(var(--accent-fill-rgb)/.55),0 0 10px rgb(var(--accent-fill-rgb)/.2)}50%{box-shadow:var(--neu-inset-sm),0 0 0 1.5px rgb(var(--accent-fill-rgb)/.8),0 0 20px rgb(var(--accent-fill-rgb)/.45)}}@keyframes rp-stamp{0%{opacity:0;transform:scale(1.9) rotate(-10deg)}55%{opacity:1;transform:scale(.9) rotate(2deg)}to{transform:none}}.rp-hero{display:flex;flex-direction:column;overflow:hidden}.rp-hero-head{flex-shrink:0;display:flex;align-items:center;gap:.625rem}.rp-hero-head .rp-emblem{width:2.25rem;height:2.25rem;border-radius:.75rem}.rp-hero-title{min-width:0;flex:1}.rp-hero-title h2{font-family:var(--font-heading);font-weight:700;font-size:1.25rem;letter-spacing:.03em;line-height:1.05;text-transform:uppercase;color:var(--foreground);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.rp-hero-title p{margin-top:.125rem;font-size:.6875rem;color:var(--foreground-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-hero-bar{flex-shrink:0;margin-top:.625rem;position:relative;height:.5rem;border-radius:999px;background:var(--background-base);box-shadow:var(--neu-inset-sm);overflow:hidden}.rp-hero-bar>span{position:absolute;left:0;top:0;bottom:0;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent-fill));box-shadow:0 0 10px rgb(var(--accent-fill-rgb)/.5);transition:width .45s cubic-bezier(.2,0,0,1)}.rp-hero-body{flex:1;min-height:0;margin:.625rem -.75rem 0;padding:0 .75rem;display:flex;flex-direction:column;gap:.75rem;overflow-y:auto;overscroll-behavior:contain}.rp-hero-foot{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding-top:.5rem}.rp-label{font-family:var(--font-heading);font-size:.6875rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--foreground-muted)}.rp-line{display:flex;flex-wrap:wrap;gap:.25rem .375rem;align-items:baseline}.rp-line>li{display:inline-flex;align-items:baseline;gap:.25rem}.rp-line-n{font-size:.6875rem;color:var(--foreground-subtle);font-variant-numeric:tabular-nums}.rp-line-move{display:inline-flex;align-items:center;gap:.25rem;padding:.0625rem .375rem;border-radius:.375rem;font-family:var(--font-mono,ui-monospace,monospace);font-size:.75rem;color:var(--foreground-muted)}.rp-line-move.is-mine{color:var(--foreground);background:var(--background-base);box-shadow:var(--neu-inset-sm)}.rp-dot{width:.4375rem;height:.4375rem;border-radius:999px;background:rgb(var(--foreground-rgb)/.2);flex-shrink:0}.rp-dot.is-well{background:var(--rp-green);box-shadow:0 0 6px color-mix(in srgb,var(--rp-green) 70%,transparent)}.rp-dot.is-ok{background:var(--rp-amber)}.rp-dot.is-practice{background:var(--rp-red)}.rp-ladder{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.25rem}.rp-ladder li{display:flex;flex-direction:column;gap:.25rem}.rp-ladder-pip{height:.375rem;border-radius:999px;background:var(--background-base);box-shadow:var(--neu-inset-sm)}.rp-ladder li.is-on .rp-ladder-pip{background:var(--accent-fill);box-shadow:0 0 8px rgb(var(--accent-fill-rgb)/.55)}.rp-ladder li.is-here .rp-ladder-pip{background:var(--accent)}.rp-ladder-word{font-size:.625rem;text-align:center;color:var(--foreground-subtle);white-space:nowrap}.rp-ladder li.is-here .rp-ladder-word{color:var(--foreground);font-weight:600}.rp-stage-chip{flex-shrink:0;display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .5rem;border-radius:999px;background:var(--background-base);box-shadow:var(--neu-inset-sm);font-family:var(--font-heading);font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--foreground)}.rp-stage-chip i{display:inline-flex;gap:.125rem}.rp-stage-chip i b{width:.25rem;height:.625rem;border-radius:1px;background:rgb(var(--foreground-rgb)/.15)}.rp-stage-chip i b.is-on{background:var(--accent-fill)}.rp-turn{display:flex;flex-direction:column;gap:.5rem}.rp-turn-head{display:flex;align-items:center;gap:.5rem}.rp-turn-well{flex-shrink:0;display:grid;place-items:center;width:2rem;height:2rem;border-radius:.625rem;background:var(--background-base);box-shadow:var(--neu-inset-sm);color:var(--accent)}.rp-turn-well.is-new{color:var(--accent);box-shadow:var(--neu-inset-sm),0 0 0 1.5px rgb(var(--accent-fill-rgb)/.55)}.rp-turn-well.is-miss{color:var(--rp-red)}.rp-turn-well.is-sound{color:var(--rp-amber)}.rp-turn-title{font-family:var(--font-heading);font-size:1.0625rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;line-height:1.1;color:var(--foreground)}.rp-turn p{font-size:.75rem;line-height:1.45;color:var(--foreground-muted)}.rp-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.375rem}.rp-choice{padding:.5rem .25rem;border-radius:.75rem;background:var(--neu-face);box-shadow:var(--neu-raise-sm),var(--specular);font-family:var(--font-mono,ui-monospace,monospace);font-size:.875rem;font-weight:600;color:var(--foreground);transition:transform .15s ease}.rp-choice:hover{transform:translateY(-1px)}.rp-choice:active{transform:scale(.97)}.rp-why{padding:.5rem .625rem;border-radius:.75rem;background:var(--background-base);box-shadow:var(--neu-inset-sm);font-size:.75rem;line-height:1.45;color:var(--foreground);white-space:pre-wrap}.rp-why b{color:var(--accent);font-weight:600}.rp-moment{position:absolute;inset:0;z-index:30;display:flex;align-items:flex-start;justify-content:flex-end;padding:4%;pointer-events:none}.rp-seal{display:grid;place-items:center;text-align:center;width:7.25rem;height:7.25rem;border-radius:999px;background:radial-gradient(circle at 35% 30%,color-mix(in srgb,var(--rp-wax) 70%,white) 0,var(--rp-wax) 45%,color-mix(in srgb,var(--rp-wax) 70%,black) 100%);box-shadow:0 10px 28px rgb(0 0 0/.35),inset 0 -6px 12px rgb(0 0 0/.25),inset 0 4px 10px rgb(255 255 255/.2);color:#fff7ef;font-family:var(--font-heading);text-transform:uppercase}.rp-seal b{display:block;font-size:1.0625rem;font-weight:800;letter-spacing:.06em;line-height:1}.rp-seal span{display:block;margin-top:.25rem;font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:none;opacity:.85}.rp-seal svg{margin:0 auto .25rem}@media (prefers-reduced-motion:no-preference){.rp-seal{animation:rp-press .55s cubic-bezier(.2,.9,.3,1) both,rp-lift .35s ease-in 1.25s forwards}.rp-turn,.rp-why{animation:rp-rise .3s cubic-bezier(.2,.9,.3,1) both}.rp-shake{animation:rp-shake .36s ease-in-out both}}@keyframes rp-press{0%{opacity:0;transform:scale(1.8) rotate(-14deg)}60%{opacity:1;transform:scale(.94) rotate(3deg)}to{transform:rotate(-4deg)}}@keyframes rp-lift{to{opacity:0;transform:rotate(-4deg) translateY(-6px) scale(.96)}}@keyframes rp-shake{0%,to{transform:none}20%{transform:translateX(-4px)}40%{transform:translateX(4px)}60%{transform:translateX(-3px)}80%{transform:translateX(2px)}}.rp-first{display:flex;flex-direction:column;gap:.875rem;padding:1rem}.rp-first-title{font-family:var(--font-heading);font-weight:700;font-size:1.25rem;letter-spacing:.03em;line-height:1.1;text-transform:uppercase;color:var(--foreground)}.rp-first-line{margin-top:.25rem;font-size:.75rem;line-height:1.4;color:var(--foreground-muted)}.rp-first-moves{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.rp-first-move.is-ask{grid-column:span 2}.rp-first-move{display:flex;flex-direction:column;align-items:center;gap:.125rem;padding:.625rem .5rem;border-radius:.875rem;background:var(--neu-face);box-shadow:var(--neu-raise-sm),var(--specular);transition:transform .2s ease,box-shadow .2s ease}.rp-first-move b{font-family:var(--font-mono,ui-monospace,monospace);font-size:1rem;font-weight:700;color:var(--foreground)}.rp-first-move span{font-size:.6875rem;color:var(--foreground-muted);white-space:nowrap}.rp-first-move:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--neu-raise-sm),0 0 0 1.5px rgb(var(--accent-fill-rgb)/.55)}.rp-first-move.is-ask b{font-family:var(--font-heading);font-size:.875rem;letter-spacing:.04em;text-transform:uppercase}.rp-first-move:disabled{opacity:.6}.rp-doors{display:flex;flex-direction:column;gap:.5rem}.rp-door{display:flex;align-items:center;gap:.75rem;width:100%;padding:.5rem .75rem .5rem .5rem;border-radius:.875rem;text-align:left;background:var(--neu-face);box-shadow:var(--neu-raise-sm),var(--specular);transition:transform .2s ease}.rp-door:hover:not(:disabled){transform:translateY(-1px)}.rp-door:disabled{background:transparent;box-shadow:var(--neu-inset-sm)}.rp-door-well{flex-shrink:0;display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:.75rem;background:var(--background-base);box-shadow:var(--neu-inset-sm);color:var(--accent)}.rp-door.is-lead .rp-door-well{box-shadow:var(--neu-inset-sm),0 0 0 1.5px rgb(var(--accent-fill-rgb)/.55),0 0 14px rgb(var(--accent-fill-rgb)/.3)}.rp-door:disabled .rp-door-well{color:var(--foreground-subtle)}.rp-door-text{min-width:0;display:flex;flex-direction:column}.rp-door-text b{font-size:.875rem;font-weight:600;color:var(--foreground)}.rp-door-text span{font-size:.6875rem;line-height:1.35;color:var(--foreground-muted)}.rp-menu{position:absolute;z-index:40;top:calc(100% + .375rem);left:0;min-width:16rem;padding:.375rem;border-radius:.875rem;display:flex;flex-direction:column;gap:.125rem;background:var(--neu-face);box-shadow:var(--neu-raise),0 12px 28px rgb(0 0 0/.18)}.rp-menu.is-right{left:auto;right:0;min-width:12rem}.rp-menu-item{display:flex;align-items:flex-start;gap:.625rem;width:100%;padding:.5rem .625rem;border-radius:.625rem;text-align:left;color:var(--accent)}.rp-menu-item:hover:not(:disabled){background:var(--background-base);box-shadow:var(--neu-inset-sm)}.rp-menu-item:disabled{color:var(--foreground-subtle)}.rp-menu-item svg{flex-shrink:0;margin-top:.125rem}.rp-menu-item span{display:flex;flex-direction:column;min-width:0}.rp-menu-item b{font-size:.8125rem;font-weight:600;color:var(--foreground)}.rp-menu-item small,.rp-menu-item:disabled b{color:var(--foreground-muted)}.rp-menu-item small{font-size:.6875rem;line-height:1.35}.rp-ready{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.375rem;padding:.375rem;border-radius:1rem;background:var(--background-base);box-shadow:var(--neu-inset-sm)}.rp-ready-book{display:flex;align-items:center;gap:.625rem;padding:.4375rem .625rem .4375rem .4375rem;border-radius:.75rem;text-align:left;background:var(--neu-face);box-shadow:var(--neu-raise-sm),var(--specular);transition:transform .15s ease}.rp-ready-book:hover:not(:disabled){transform:translateY(-1px)}.rp-ready-book:disabled{opacity:.6}.rp-ready-king{flex-shrink:0;display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:.75rem;background:var(--background-base);box-shadow:var(--neu-inset-sm)}