.my-plan{gap:var(--space-6);flex-direction:column;display:flex}.my-plan h2{font-size:var(--text-xl);margin:0}.my-plan__head h1{margin:0 0 var(--space-1);letter-spacing:-.025em;font-size:clamp(1.6rem,3.4vw,2.25rem)}.plan-section-head{justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-4);flex-wrap:wrap;display:flex}.plan-section-head .text-muted{font-size:var(--text-sm)}.my-plan__finished{padding:var(--space-4) var(--space-5);border:1.5px solid var(--color-text-primary);border-radius:var(--radius-lg);background:var(--color-success-bg);color:var(--color-success-text);text-decoration:none;display:block}.my-plan__top{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.my-plan__bottom{gap:var(--space-4);grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start;display:grid}@media (max-width:860px){.my-plan__top,.my-plan__bottom{grid-template-columns:1fr}}.today-card{align-items:flex-start;gap:var(--space-4);padding:var(--space-6);border-radius:var(--radius-xl);background:var(--shadow-grey);color:var(--lemon-chiffon);box-shadow:var(--shadow-md);flex-direction:column;display:flex}.today-card__kicker{font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--bright-amber)}.my-plan .today-card h2{color:var(--white);font-size:var(--text-2xl);line-height:1.2}.today-card h2+p{margin-top:var(--space-2);font-size:var(--text-sm);opacity:.8}.today-card__streak{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);background:#ffffff14;display:flex}.today-card .flame{stroke:var(--white)}.today-card :focus-visible{outline-color:var(--bright-amber)}@media (prefers-color-scheme:dark){.today-card{border:1px solid var(--color-border-strong)}}.progress-card,.boxes,.weeks,.plan-settings{gap:var(--space-4);padding:var(--space-5);background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;display:flex}.progress{gap:var(--space-2);flex-direction:column;display:flex}.progress__count{font-size:var(--text-md);color:var(--color-text-secondary)}.progress__count b{font-size:var(--text-3xl);color:var(--color-text-primary)}.progress__bar{gap:3px;margin:0;padding:0;list-style:none;display:flex}.progress__bar li{background:var(--color-bg-muted);border-radius:3px;flex:1;height:14px}.progress__bar li.is-done{background:var(--color-text-primary)}.progress__bar li.is-today{background:var(--bright-amber);box-shadow:inset 0 0 0 2px var(--color-text-primary)}.progress__marks{font-size:var(--text-xs);color:var(--color-text-muted);justify-content:space-between;display:flex;position:relative}.progress__marks span:nth-child(2){white-space:nowrap;position:absolute;transform:translate(-50%)}.progress__goal{font-size:var(--text-sm);font-weight:var(--weight-bold)}.boxes__shelf{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}@media (max-width:640px){.boxes__shelf{grid-template-columns:repeat(2,minmax(0,1fr))}}.box{align-items:center;gap:var(--space-2);min-height:170px;padding:var(--space-4) var(--space-3);border:1.5px solid var(--color-border);border-radius:var(--radius-md);text-align:center;flex-direction:column;display:flex}.box small{font-size:var(--text-xs);color:var(--color-text-muted)}.box__day{justify-content:space-between;align-self:stretch;align-items:baseline;gap:var(--space-2);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.box__day small{font-weight:var(--weight-bold)}.box__icon{stroke:var(--color-text-primary)}.box__lid,.box__base{fill:var(--color-bg-base)}.box.is-earned{border-color:var(--color-text-primary)}.box.is-earned .box__lid{fill:var(--princeton-orange)}.box.is-earned .box__day small{color:var(--color-success-text)}.box.is-next{border-style:dashed;border-color:var(--color-text-primary)}.box.is-locked .box__icon{stroke:var(--color-text-muted);opacity:.6}.box__reveal{align-items:center;gap:var(--space-1);font-size:var(--text-sm);flex-direction:column;display:flex}.nudgie{animation:.5s cubic-bezier(.3,1.6,.5,1) nudgie-pop}@keyframes nudgie-pop{0%{opacity:0;transform:translateY(20px)scale(.4)}}@media (prefers-reduced-motion:reduce){.nudgie{animation:none}}.week{border:1.5px solid var(--color-border);border-radius:var(--radius-md)}.week.is-current{border-color:var(--color-text-primary)}.week summary{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:56px;padding:var(--space-3) var(--space-4);cursor:pointer;list-style:none;display:flex}.week summary::-webkit-details-marker{display:none}.week summary:after{content:"⌄";font-size:var(--text-lg);transition:transform var(--duration-fast);line-height:1}.week[open] summary:after{transform:rotate(180deg)}.week summary>span:first-child{flex-direction:column;flex:1;display:flex}.week summary small{font-size:var(--text-sm);color:var(--color-text-muted)}.week__rows{padding:0 var(--space-4) var(--space-3);flex-direction:column;margin:0;list-style:none;display:flex}.week__empty{padding:var(--space-2) 0;font-size:var(--text-sm)}.week-row{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-top:1px solid var(--color-border);display:flex}.week-row__mark{border:2px solid var(--color-border-strong);width:24px;height:24px;font-size:var(--text-xs);font-weight:var(--weight-bold);border-radius:50%;flex:none;place-items:center;display:grid}.week-row.is-done .week-row__mark{border-color:var(--emerald);background:var(--emerald);color:var(--white)}.week-row.is-today .week-row__mark{border-color:var(--color-text-primary);background:var(--bright-amber)}.week-row.is-missed .week-row__mark{border-style:dashed;border-color:var(--color-text-primary)}.week-row__thumb{aspect-ratio:16/9;border-radius:var(--radius-sm);background:var(--color-border);flex:none;width:88px;position:relative;overflow:hidden}.week-row__thumb img{object-fit:cover}@media (max-width:480px){.week-row__thumb{width:64px}}.week-row__text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.week-row__text b{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.week-row.is-today .week-row__text b{font-weight:var(--weight-bold)}.week-row__text a{color:var(--color-text-primary);text-decoration:none}.week-row__text a:hover b{text-underline-offset:3px;text-decoration:underline}.week-row.is-later .week-row__text b{color:var(--color-text-secondary)}.week-row__text small{font-size:var(--text-xs);color:var(--color-text-muted);align-items:center;gap:6px;display:flex}.week-row__dot{background:var(--tone);border-radius:2px;width:8px;height:8px}.plan-settings dl{flex-direction:column;margin:0;display:flex}.plan-settings dl div{padding:var(--space-3) 0;border-top:1px solid var(--color-border);flex-direction:column;gap:2px;display:flex}.plan-settings dt{font-size:var(--text-sm);font-weight:var(--weight-bold)}.plan-settings dd{font-size:var(--text-sm);color:var(--color-text-secondary);overflow-wrap:anywhere;margin:0}.plan-settings>p{font-size:var(--text-xs)}.complete{max-width:var(--max-width-content);gap:var(--space-6);flex-direction:column;margin:0 auto;display:flex}.complete__hero{align-items:center;gap:var(--space-4);text-align:center;flex-direction:column;display:flex}.complete__hero h1{letter-spacing:-.025em;margin:0;font-size:clamp(1.8rem,4vw,2.6rem)}.complete__badge{background:var(--bright-amber);border:2.5px solid var(--shadow-grey);width:88px;height:88px;color:var(--shadow-grey);border-radius:50%;place-items:center;font-size:40px;animation:.6s cubic-bezier(.3,1.6,.5,1) nudgie-pop;display:grid}.complete__stats{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));width:100%;margin:0;display:grid}.complete__stats div{padding:var(--space-4);background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-direction:column-reverse;gap:2px;display:flex}.complete__stats dd{font-size:var(--text-2xl);font-weight:var(--weight-bold);margin:0}.complete__stats dt{font-size:var(--text-sm);color:var(--color-text-secondary)}@media (max-width:520px){.complete__stats{grid-template-columns:1fr}}.pro-card{gap:var(--space-4);padding:var(--space-6);border:2px solid var(--color-text-primary);border-radius:var(--radius-xl);background:var(--color-bg-surface);box-shadow:var(--shadow-lg);flex-direction:column;display:flex}.pro-card__top{justify-content:space-between;align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.pro-card__price{font-size:var(--text-sm);color:var(--color-text-secondary)}.pro-card__price b{font-size:var(--text-3xl);color:var(--color-text-primary)}.pro-card ul{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.pro-card li{gap:var(--space-3);display:flex}.pro-card li:before{content:"✓";background:var(--emerald);width:22px;height:22px;color:var(--white);font-size:var(--text-xs);font-weight:var(--weight-bold);border-radius:50%;flex:none;place-items:center;display:grid}.pro-card form{gap:var(--space-3);flex-direction:column;display:flex}.pro-card__later{align-self:center}
