:root{--pink:#e0479f;--pink-dark:#b02f80;--pink-soft:#e39ec5;--pink-pale:#fdeaf5;--blue:#5bb8d6;--blue-deep:#2f9cc4;--mint:#9ccbc4;--yellow:#fbe83a;--lilac:#b9a2ea;--ink:#3b2233;--ink-soft:#6b4b5e;--bg:#fff;--surface:#fff;--done-bg:var(--done-bg);--done-pale:var(--done-pale);--tip-bg:var(--tip-bg);--sky-pale:var(--sky-pale);--sky-ink:var(--sky-ink);--nav:var(--blue-deep);--hero:var(--pink-soft);--danger:#c0392b;--display:"Oswald", "Arial Narrow", Impact, sans-serif;--body:"Nunito Sans", system-ui, -apple-system, "Segoe UI", sans-serif}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--body);color:var(--ink);background:var(--bg);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);margin:0;font-size:1rem;line-height:1.55}h1,h2,h3,h4{font-family:var(--display);text-transform:uppercase;letter-spacing:.02em;margin:0;line-height:1.05}p{margin:0 0 .8em}ul{margin:0;padding-left:1.2em}:focus-visible{outline:3px solid var(--ink);outline-offset:2px;border-radius:6px}.topnav :focus-visible{outline-color:var(--yellow)}.wrap{width:100%;max-width:980px;margin:0 auto;padding:2.2rem 1.1rem 3rem}[hidden]{display:none!important}.topnav{z-index:20;padding:calc(.55rem + env(safe-area-inset-top)) .5rem .55rem;background:var(--nav);flex-wrap:wrap;justify-content:center;gap:.2rem;display:flex;position:sticky;top:0}.topnav a{font-family:var(--display);letter-spacing:.05em;text-transform:uppercase;color:#fff;white-space:nowrap;border-radius:999px;padding:.45rem clamp(.5rem,2.6vw,.9rem);font-size:clamp(.92rem,4.1vw,1.25rem);font-weight:700;text-decoration:none;transition:background .2s,color .2s}.topnav a[aria-current=page]{background:var(--yellow);color:#3b2233}.hero{background:var(--hero);padding:1.6rem 1.1rem 1.4rem;position:relative;overflow:hidden}.hero:before,.hero:after{content:"";clip-path:polygon(50% 0,100% 42%,78% 62%,50% 34%,22% 62%,0 42%);pointer-events:none;background:#ffffff3d;position:absolute}.hero:before{width:70%;height:90%;top:-22%;right:-18%;transform:rotate(18deg)}.hero:after{width:46%;height:60%;bottom:-26%;left:-14%;transform:rotate(-24deg)}.hero-inner{z-index:1;grid-template-areas:"kicker""title""sub""tags";gap:.3rem 2rem;max-width:980px;margin:0 auto;display:grid;position:relative}.hero-kicker{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;grid-area:kicker;margin:0;font-size:1.1rem;font-weight:500}.hero h1{color:#fff;-webkit-text-stroke:3px var(--blue-deep);paint-order:stroke fill;text-shadow:4px 4px 0 var(--pink);grid-area:title;margin:.1em 0 0;font-size:clamp(2.3rem,10vw,4.6rem);font-weight:700}.hero-sub{font-family:var(--display);text-transform:uppercase;color:var(--yellow);text-shadow:2px 2px 0 var(--pink-dark);grid-area:sub;margin:.15em 0 .8rem;font-size:clamp(1.3rem,5.5vw,2rem);font-weight:700;line-height:1.05}.hero-tags{grid-area:tags;align-content:center;gap:.7rem;display:grid}.tag-row{flex-direction:column;align-items:flex-start;gap:.3rem;display:flex}.tag{font-family:var(--display);text-transform:uppercase;letter-spacing:.03em;color:var(--yellow);background:var(--pink);border-radius:4px;padding:.05em .6em .05em .5em;font-size:1.2rem;font-weight:600;position:relative}.tag:before{content:"›";margin-right:.3em}.tag-text{font-family:var(--display);text-transform:uppercase;color:var(--ink);font-size:1.2rem;font-weight:500;line-height:1.15}.tag-text small{letter-spacing:.04em;font-size:.95rem;font-weight:400}@media (min-width:760px){.hero{padding:2rem 1.5rem 1.8rem}.hero-inner{grid-template-columns:1.15fr 1fr;grid-template-areas:"kicker tags""title tags""sub tags";align-items:center}.hero-sub{margin-bottom:0}}.countdown{background:var(--pink);color:#fff;grid-template-columns:repeat(5,1fr);padding:.7rem .4rem .6rem;display:grid}.cd-cell{border-left:1px solid #ffffff8c;flex-direction:column;align-items:center;padding:.2rem 0;display:flex}.cd-cell:first-child{border-left:0}.cd-num{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:clamp(1.7rem,7.5vw,3.2rem);font-weight:600;line-height:1}.cd-label{font-family:var(--display);letter-spacing:.1em;text-transform:uppercase;margin-top:.3rem;font-size:clamp(.7rem,2.6vw,.95rem);font-weight:500}.section-title{color:var(--blue-deep);margin:2.6rem 0 .4rem;font-size:clamp(2.2rem,9vw,3.4rem);font-weight:700}.wrap>.section-title:first-child{margin-top:0}.section-sub{color:var(--ink-soft);max-width:62ch;margin-bottom:1.3rem;font-size:1.05rem}.banner{background:var(--hero);text-align:center;padding:2.4rem 1.1rem 2.2rem;position:relative;overflow:hidden}.banner:before{content:"";clip-path:polygon(50% 0,100% 42%,78% 62%,50% 34%,22% 62%,0 42%);background:#ffffff3d;width:60%;height:120%;position:absolute;top:-30%;right:-16%;transform:rotate(16deg)}.banner h2,.banner p{position:relative}.banner h2{color:#fff;-webkit-text-stroke:2.5px var(--blue-deep);paint-order:stroke fill;text-shadow:3px 3px 0 var(--pink);font-size:clamp(2.6rem,12vw,4.8rem);font-weight:700}.banner p{font-family:var(--display);letter-spacing:.04em;text-transform:uppercase;margin:.9rem 0 0;font-size:1.25rem;font-weight:500}.note{color:var(--ink-soft);font-size:.92rem}.note.center{text-align:center;margin-top:1.4rem}.week-head{margin-bottom:1.4rem}.week-nav{align-items:center;gap:.6rem;margin-bottom:.5rem;display:flex}.week-nav button{font:inherit;border:3px solid var(--pink-soft);background:var(--surface);width:2.6rem;height:2.6rem;color:var(--pink-dark);cursor:pointer;border-radius:50%;font-size:1.3rem}.week-nav button:disabled{opacity:.35;cursor:default}.week-title{color:var(--blue-deep);font-size:clamp(2.2rem,9vw,3.4rem);font-weight:700}.week-range{font-family:var(--display);text-transform:uppercase;letter-spacing:.04em;color:var(--pink-dark);margin:.2rem 0 .6rem;font-size:1.3rem;font-weight:500}.week-phase{font-family:var(--display);text-transform:uppercase;letter-spacing:.05em;background:var(--yellow);border-radius:999px;margin-bottom:.9rem;padding:.1em .7em;font-size:1.05rem;font-weight:500;display:inline-block}.week-goal{max-width:60ch;font-size:1.1rem}.progress{background:var(--pink-pale);border:3px solid var(--pink-soft);border-radius:22px;margin:1.2rem 0 1.6rem;padding:.9rem 1.1rem 1rem}.progress-top{font-family:var(--display);text-transform:uppercase;letter-spacing:.03em;justify-content:space-between;align-items:baseline;margin-bottom:.5rem;font-size:1.25rem;display:flex}.progress-top b{color:var(--pink-dark);font-weight:700}.bar{background:var(--surface);border:2px solid var(--pink-soft);border-radius:999px;height:16px;overflow:hidden}.bar-fill{background:var(--pink);border-radius:999px;width:0;height:100%;transition:width .5s cubic-bezier(.3,.8,.3,1)}.progress-msg{color:var(--ink-soft);margin:.6rem 0 0;font-size:.98rem}.progress.done{background:var(--done-pale);border-color:var(--mint)}.progress.done .bar-fill{background:var(--blue-deep)}.days{gap:.9rem;display:grid}.day{background:var(--surface);border:3px solid var(--pink-soft);border-radius:22px;transition:border-color .2s,background .2s;overflow:hidden}.day.open{border-color:var(--pink)}.day.is-done{background:var(--done-bg);border-color:var(--mint)}.day.is-today{box-shadow:0 0 0 4px var(--yellow)}.day-head{align-items:stretch;display:flex}.day-toggle{min-width:0;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:.9rem;padding:.8rem .5rem .8rem .8rem;display:flex}.day-date{text-align:center;width:3.6rem;font-family:var(--display);text-transform:uppercase;background:var(--type,var(--blue));color:var(--type-ink,var(--ink));border-radius:14px;flex:none;padding:.35rem 0 .3rem;line-height:1}.day-date b{letter-spacing:.08em;font-size:.95rem;font-weight:500;display:block}.day-date i{margin-top:.1rem;font-size:1.9rem;font-style:normal;font-weight:700;display:block}.day-main{min-width:0}.badge{font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;background:var(--type,var(--blue));color:var(--type-ink,var(--ink));border-radius:999px;padding:.05em .65em;font-size:.85rem;font-weight:500;display:inline-block}.day-title{font-family:var(--display);text-transform:uppercase;margin:.25rem 0 .1rem;font-size:1.4rem;font-weight:600;line-height:1.1;display:block}.day-meta{color:var(--ink-soft);font-size:.95rem;display:block}.chev{color:var(--pink-dark);flex:none;margin-left:auto;font-size:1.6rem;transition:transform .25s}.day.open .chev{transform:rotate(90deg)}.day-check-wrap{align-items:center;padding:0 .9rem 0 .2rem;display:flex}.day-check{border:3px solid var(--pink-soft);background:var(--surface);color:#0000;cursor:pointer;border-radius:50%;width:2.9rem;height:2.9rem;font-size:1.4rem;font-weight:700;line-height:1;transition:background .2s,border-color .2s,color .2s,transform .15s}.day-check:active{transform:scale(.92)}.day-check[aria-pressed=true]{background:var(--pink);border-color:var(--pink);color:#fff}.day.is-done .day-check[aria-pressed=true]{background:var(--blue-deep);border-color:var(--blue-deep)}.extra-flag{font-size:.8rem;font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);margin-left:.4rem}.day-body{visibility:hidden;grid-template-rows:0fr;transition:grid-template-rows .28s,visibility .28s;display:grid}.day.open .day-body{visibility:visible;grid-template-rows:1fr}.day-body-inner{min-height:0;overflow:hidden}.day-content{padding:.2rem 1.2rem 1.2rem}.day-content ul{margin-bottom:.9rem;padding-left:1.15em}.day-content li{margin-bottom:.35em}.day-content li::marker{color:var(--pink)}.focus{background:var(--pink-pale);border-radius:14px;margin:0 0 .8rem;padding:.7rem .9rem;font-size:.98rem}.tip{background:var(--tip-bg);border-left:6px solid var(--yellow);border-radius:14px;margin:0;padding:.7rem .9rem;font-size:.98rem}.pin{color:var(--pink-dark);font-weight:700}.rules-title{margin-top:2.4rem}.rules{gap:.9rem;display:grid}.rule{background:var(--pink-pale);border:3px solid var(--pink-soft);border-radius:22px;padding:1rem 1.2rem}.rule h4{color:var(--pink-dark);margin-bottom:.35rem;font-size:1.35rem;font-weight:600}.rule p:last-child{margin-bottom:0}.rule ul{margin-top:.3rem}.effort{gap:.5rem;margin-top:.5rem;display:grid}.effort div{align-items:baseline;gap:.7rem;display:flex}.effort b{font-family:var(--display);text-align:center;background:var(--yellow);border-radius:999px;flex:none;min-width:3.4rem;padding:.05em .5em;font-weight:600}@media (min-width:760px){.rules{grid-template-columns:repeat(3,1fr)}.day-content{padding-left:5.4rem}}.card-grid{gap:.9rem;display:grid}@media (min-width:720px){.card-grid{grid-template-columns:1fr 1fr}}.card{background:var(--pink-pale);border:3px solid var(--pink-soft);border-radius:22px;padding:1.1rem 1.2rem 1.2rem}.card.challenge{background:var(--sky-pale);border-color:var(--blue)}.card-icon{margin-bottom:.5rem;font-size:2rem;line-height:1;display:block}.card h4{color:var(--pink-dark);margin-bottom:.4rem;font-size:1.5rem;font-weight:600}.card.challenge h4{color:var(--sky-ink)}.card p:last-child{margin-bottom:0}.how{background:var(--surface);border-radius:12px;margin-top:.7rem;padding:.6rem .8rem;font-size:.96rem}.how b{font-family:var(--display);text-transform:uppercase;letter-spacing:.05em;color:var(--sky-ink);font-weight:600}.pledge{background:var(--pink);color:#fff;text-align:center;border-radius:26px;margin:2.6rem 0 0;padding:1.6rem 1.3rem}.pledge p{font-family:var(--display);text-transform:uppercase;margin:0;font-size:clamp(1.5rem,6vw,2.3rem);font-weight:600;line-height:1.2}.goal-card{background:var(--pink);color:#fff;border-radius:26px;padding:1.6rem 1.3rem}.goal-big{font-family:var(--display);text-transform:uppercase;color:var(--yellow);margin-bottom:.5rem;font-size:clamp(2rem,9vw,3.4rem);font-weight:700;line-height:1.05}.goal-card p{max-width:58ch}.goal-card .note{color:#fff;opacity:.95;margin-bottom:0}.levels{gap:.8rem;display:grid}@media (min-width:720px){.levels{grid-template-columns:repeat(3,1fr)}}.level{color:var(--ink);border-radius:22px;padding:1.1rem 1.2rem}.level .lv-name{font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:1.05rem;font-weight:500}.level .lv-goal{font-family:var(--display);text-transform:uppercase;margin:.15rem 0 .4rem;font-size:2.3rem;font-weight:700;line-height:1.05}.level p:last-child{margin-bottom:0}.level.a{background:var(--yellow)}.level.b{background:var(--blue)}.level.c{background:var(--mint)}.progress-table{gap:.7rem;display:grid}.pt-row{background:var(--pink-pale);border:3px solid var(--pink-soft);border-radius:18px;grid-template-columns:4.2rem 1fr auto 1fr;align-items:center;gap:.5rem;padding:.7rem .9rem;display:grid}.pt-label{font-family:var(--display);text-transform:uppercase;color:var(--pink-dark);font-size:1.3rem;font-weight:600}.pt-val{font-family:var(--display);font-size:clamp(1.2rem,5vw,1.7rem);font-weight:600;line-height:1.1}.pt-val small{font-family:var(--body);color:var(--ink-soft);text-transform:none;letter-spacing:0;font-size:.78rem;font-weight:600;display:block}.pt-arrow{color:var(--pink);font-size:1.6rem;font-weight:700}.pt-val.to{color:var(--blue-deep);text-align:right}.phases{gap:.8rem;display:grid}.phase{--c:var(--yellow);background:var(--surface);border:3px solid var(--c);border-radius:22px;overflow:hidden}.phase[data-status=now]{box-shadow:0 0 0 4px var(--pink)}.phase-btn{background:var(--c);width:100%;font:inherit;color:var(--ink);text-align:left;cursor:pointer;border:0;align-items:center;gap:.9rem;padding:.9rem 1rem;display:flex}.phase-num{background:var(--surface);width:2.6rem;height:2.6rem;font-family:var(--display);border-radius:50%;flex:none;place-items:center;font-size:1.4rem;font-weight:700;display:grid}.phase-name{font-family:var(--display);text-transform:uppercase;font-size:1.7rem;font-weight:700;line-height:1;display:block}.phase-motto{margin-top:.15rem;font-size:.98rem;font-style:italic;display:block}.phase-btn .chev{color:var(--ink)}.phase.open .chev{transform:rotate(90deg)}.phase-status{font-family:var(--display);letter-spacing:.07em;text-transform:uppercase;background:var(--surface);border-radius:999px;margin-top:.35rem;padding:.05em .65em;font-size:.85rem;display:inline-block}.phase[data-status=now] .phase-status{background:var(--pink);color:#fff}.phase-body{visibility:hidden;grid-template-rows:0fr;transition:grid-template-rows .28s,visibility .28s;display:grid}.phase.open .phase-body{visibility:visible;grid-template-rows:1fr}.phase-body-inner{min-height:0;overflow:hidden}.phase-content{padding:1rem 1.2rem 1.2rem}.phase-dates{font-family:var(--display);text-transform:uppercase;letter-spacing:.04em;color:var(--pink-dark);margin-bottom:.6rem;font-size:1.15rem;font-weight:500}.phase-content dl{gap:.55rem;margin:.8rem 0 0;display:grid}.phase-content dt{font-family:var(--display);text-transform:uppercase;letter-spacing:.05em;color:var(--blue-deep);font-size:1.02rem;font-weight:600}.phase-content dd{margin:0}.months{margin:0;padding:0;list-style:none;position:relative}.months:before{content:"";background:var(--pink-soft);border-radius:4px;width:4px;position:absolute;top:.6rem;bottom:.6rem;left:1.05rem}.month{padding:0 0 1rem 3rem;position:relative}.month:before{content:"";background:var(--c,var(--yellow));width:1.1rem;height:1.1rem;box-shadow:0 0 0 3px var(--pink-soft);border:3px solid #fff;border-radius:50%;position:absolute;top:.65rem;left:.55rem}.month.now:before{box-shadow:0 0 0 3px var(--pink);background:var(--pink)}.month-card{background:var(--pink-pale);border:3px solid var(--pink-soft);border-radius:20px;padding:.85rem 1.1rem 1rem}.month.now .month-card{border-color:var(--pink);background:var(--surface);box-shadow:0 0 0 3px var(--yellow)}.month-top{flex-wrap:wrap;align-items:center;gap:.4rem .6rem;margin-bottom:.35rem;display:flex}.month-name{font-family:var(--display);text-transform:uppercase;margin-right:.2rem;font-size:1.9rem;font-weight:700;line-height:1}.chip{font-family:var(--display);letter-spacing:.05em;text-transform:uppercase;background:var(--c,var(--yellow));color:var(--ink);border-radius:999px;padding:.05em .7em;font-size:.9rem;font-weight:500}.chip.km{background:var(--surface);border:2px solid var(--blue)}.month-focus{margin-bottom:.4rem}.month-hito{color:var(--pink-dark);margin:0;font-weight:700}.month-hito:before{content:"🏁 "}.month.now .badge-now{font-family:var(--display);letter-spacing:.07em;text-transform:uppercase;background:var(--pink);color:#fff;border-radius:999px;padding:.05em .65em;font-size:.85rem}.footer{background:var(--pink-dark);color:#fff;text-align:center;padding:1.8rem 1.2rem calc(2rem + env(safe-area-inset-bottom))}.footer p{font-family:var(--display);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .5rem;font-size:1.3rem}.footer .footer-small{font-family:var(--body);text-transform:none;letter-spacing:0;opacity:.95;max-width:52ch;margin:0 auto;font-size:.92rem}.confetti{pointer-events:none;z-index:50;position:fixed;inset:0;overflow:hidden}.confetti span{font-size:1.8rem;animation:2.8s cubic-bezier(.3,.6,.4,1) forwards fall;position:absolute;top:-2.5rem}@keyframes fall{to{opacity:.9;transform:translateY(110vh)rotate(360deg)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}[data-theme=azul]{--pink:#2f9cc4;--pink-dark:#1d5f86;--pink-soft:#9fd3e6;--pink-pale:#eaf6fb;--blue:#e39ec5;--blue-deep:#1d3f6e;--ink:#16283b;--ink-soft:#4a5f73;--nav:#1d3f6e;--hero:#9fd3e6}[data-theme=oscuro]{--pink-pale:#2c1f2b;--pink-soft:#7a3f63;--ink:#f6eaf1;--ink-soft:#cdb6c5;--bg:#17111a;--surface:#221a25;--done-bg:#1a2a28;--done-pale:#1a2a28;--tip-bg:#2e2a12;--sky-pale:#14262e;--sky-ink:#8fd0ea;--blue-deep:#5bb8d6;--nav:#221a25;--hero:#3a2236;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=oscuro] .hero h1,[data-theme=oscuro] .banner h2{-webkit-text-stroke-color:#2f9cc4}[data-theme=oscuro] .tag-text{color:var(--ink)}[data-theme=oscuro] .hero:before,[data-theme=oscuro] .hero:after,[data-theme=oscuro] .banner:before{background:#ffffff0f}.loading{min-height:60vh;font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);place-items:center;font-size:1.4rem;display:grid}.topnav .nav-spacer{flex:1 0 0}.topnav button.linklike{font-family:var(--display);letter-spacing:.05em;text-transform:uppercase;color:#fff;cursor:pointer;background:0 0;border:2px solid #fff9;border-radius:999px;padding:.3rem .8rem;font-size:clamp(.85rem,3.6vw,1.05rem);font-weight:500}.btn{font-family:var(--display);letter-spacing:.05em;text-transform:uppercase;color:#fff;background:var(--pink);border:3px solid var(--pink);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:.6rem;padding:.55rem 1.4rem;font-size:1.2rem;font-weight:600;text-decoration:none;transition:background .2s,transform .15s;display:inline-flex}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:default}.btn.secondary{background:var(--surface);color:var(--pink-dark);border-color:var(--pink-soft)}.btn.small{border-width:2px;padding:.3rem .9rem;font-size:.95rem}.btn.danger{background:var(--danger);border-color:var(--danger)}.btn.google{background:var(--surface);color:var(--ink);border-color:var(--pink-soft)}.btn.google svg{width:1.3rem;height:1.3rem}.login-card{z-index:2;background:var(--surface);border:3px solid var(--pink-soft);text-align:center;border-radius:26px;max-width:460px;margin:-1.5rem auto 3rem;padding:1.6rem 1.4rem;position:relative}.login-card p{color:var(--ink-soft)}.alert{background:var(--tip-bg);border-left:6px solid var(--yellow);text-align:left;border-radius:14px;margin:0 0 1rem;padding:.8rem 1rem}.alert.error{border-left-color:var(--danger)}.form,.form-row{gap:.9rem;display:grid}@media (min-width:640px){.form-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}.field{gap:.3rem;display:grid}.field>span{font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--pink-dark);font-size:1rem;font-weight:500}.field input,.field select,.field textarea{font:inherit;color:var(--ink);background:var(--surface);border:2px solid var(--pink-soft);border-radius:12px;width:100%;padding:.55rem .75rem}.field textarea{resize:vertical;min-height:5.5rem}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--pink);outline:none}.field small{color:var(--ink-soft);font-size:.85rem}.check{background:var(--pink-pale);cursor:pointer;border-radius:14px;align-items:flex-start;gap:.7rem;padding:.7rem .9rem;display:flex}.check input{width:1.3rem;height:1.3rem;accent-color:var(--pink);flex:none;margin-top:.15rem}.actions{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.panel{background:var(--surface);border:3px solid var(--pink-soft);border-radius:22px;margin-bottom:1.2rem;padding:1.1rem 1.2rem 1.3rem}.panel h3{color:var(--blue-deep);margin-bottom:.8rem;font-size:1.6rem}.log-box{background:var(--pink-pale);border-radius:16px;gap:.7rem;margin-top:.9rem;padding:.9rem;display:grid}.log-box h5{font-family:var(--display);letter-spacing:.05em;text-transform:uppercase;color:var(--pink-dark);margin:0;font-size:1.1rem;font-weight:600}.rpe-scale{flex-wrap:wrap;gap:.3rem;display:flex}.rpe-scale button{border:2px solid var(--pink-soft);background:var(--surface);width:2.3rem;height:2.3rem;color:var(--ink);font-family:var(--display);cursor:pointer;border-radius:50%;font-size:1.05rem;font-weight:600}.rpe-scale button[aria-pressed=true]{background:var(--pink);border-color:var(--pink);color:#fff}.saved{color:var(--ink-soft);font-size:.9rem}.status{font-family:var(--display);letter-spacing:.07em;text-transform:uppercase;vertical-align:middle;white-space:nowrap;border-radius:999px;margin-left:.4rem;padding:.05em .6em;font-size:.8rem;font-weight:500;display:inline-block}.status.done{background:var(--mint);color:#183a35}.status.missed{background:var(--danger);color:#fff}.status.late{background:var(--yellow);color:#3b2233}.status.today{background:var(--pink);color:#fff}.status.upcoming{background:var(--pink-pale);color:var(--ink-soft)}.status.rest{background:var(--lilac);color:#3b2233}.day.is-missed{border-color:var(--danger)}.ai-flag{background:var(--lilac);color:#2b1d4a}.race-strip{background:var(--pink);color:#fff;text-align:center;font-family:var(--display);text-transform:uppercase;letter-spacing:.05em;padding:.8rem 1rem}.race-strip b{color:var(--yellow);font-size:clamp(1.8rem,8vw,2.6rem)}.athletes{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.7rem;display:grid}@media (min-width:720px){.athletes{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}}.athlete-card{color:inherit;background:var(--surface);border:3px solid var(--pink-soft);border-radius:16px;padding:.7rem .8rem .8rem;text-decoration:none;transition:border-color .2s,transform .15s;display:block}.athlete-card:hover{border-color:var(--pink)}.athlete-card h4{color:var(--pink-dark);font-size:1.25rem}.athlete-card .meta{color:var(--ink-soft);margin:.1rem 0 .4rem;font-size:.82rem}.athlete-card .pct{font-size:1.8rem}.athlete-card .pct small{margin:.15rem 0 0;font-size:.78rem;display:block}.athlete-card .alert{padding:.5rem .6rem;font-size:.82rem}.pct{font-family:var(--display);color:var(--blue-deep);font-size:2.4rem;font-weight:700;line-height:1}.pct small{color:var(--ink-soft);letter-spacing:.04em;text-transform:uppercase;margin-left:.4rem;font-size:1rem;font-weight:500}.table-wrap{overflow-x:auto}table.sessions{border-collapse:collapse;width:100%;font-size:.95rem}table.sessions th{text-align:left;font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--pink-dark);border-bottom:3px solid var(--pink-soft);padding:.4rem .5rem;font-weight:500}table.sessions td{border-bottom:1px solid var(--pink-pale);vertical-align:top;padding:.55rem .5rem}table.sessions td.comment{color:var(--ink-soft);max-width:28ch;font-style:italic}.pending-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.pending-list li{background:var(--pink-pale);border-radius:12px;justify-content:space-between;align-items:center;gap:.6rem;padding:.55rem .8rem;display:flex}.editor{border:3px dashed var(--pink-soft);border-radius:22px;margin-top:.9rem;padding:1rem 1.1rem 1.2rem}.week-tabs{flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;display:flex}.week-tabs button{font-family:var(--display);letter-spacing:.05em;text-transform:uppercase;border:2px solid var(--pink-soft);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:999px;padding:.25rem .85rem;font-size:1rem;font-weight:500}.week-tabs button[aria-pressed=true]{background:var(--yellow);border-color:var(--yellow);color:#3b2233}.legal{max-width:70ch}.legal h3{color:var(--blue-deep);margin:2rem 0 .7rem;font-size:1.8rem}.legal ol{padding-left:1.3em}.legal li{margin-bottom:.6em}.draft-banner{background:var(--yellow);color:#3b2233;text-align:center;font-family:var(--display);letter-spacing:.05em;text-transform:uppercase;padding:.35rem 1rem;font-size:.9rem}.theme-options{flex-wrap:wrap;gap:.7rem;display:flex}.theme-swatch{border:3px solid var(--pink-soft);background:var(--surface);color:var(--ink);cursor:pointer;font-family:var(--display);text-transform:uppercase;letter-spacing:.05em;border-radius:999px;align-items:center;gap:.5rem;padding:.35rem .9rem .35rem .4rem;font-size:1.05rem;display:flex}.theme-swatch[aria-pressed=true]{border-color:var(--pink);box-shadow:0 0 0 3px var(--yellow)}.theme-swatch i{border-radius:50%;width:1.6rem;height:1.6rem;display:block}.transfer{gap:1.2rem;margin-top:2rem;display:grid}@media (min-width:900px){.transfer{grid-template-columns:1fr 1fr;align-items:start}}.import-week{border-top:1px solid var(--line,#0000001f);margin-top:.6rem;padding-top:.6rem}.import-week ul{margin:.3rem 0 0;padding-left:1.1rem;font-size:.92rem}.alert ul{margin:.4rem 0 0;padding-left:1.1rem}.pending-list li .actions{flex:none;gap:.4rem;margin:0;display:flex}@media (max-width:600px){.pending-list li{flex-wrap:wrap}}.week-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.4rem 1rem;margin-bottom:.8rem;display:flex}.week-head h3{margin:0}.week-head .pct small{margin-left:.5rem}.profile-panel>summary{cursor:pointer;align-items:center;gap:.5rem;list-style:none;display:flex}.profile-panel>summary::-webkit-details-marker{display:none}.profile-panel>summary:after{content:"▾";color:var(--ink-soft);font-size:1.2rem}.profile-panel[open]>summary:after{content:"▴"}.profile-panel>summary h3{margin:0}.profile-panel[open]>summary{margin-bottom:.8rem}.member-badge{vertical-align:middle;background:var(--blue-deep);color:var(--yellow);letter-spacing:.1em;border-radius:999px;margin-left:.5rem;padding:.1em .6em;font-size:.8rem;display:inline-block}
