.hub-plan{margin:0;background:#121212;color:#f5f1e9;font-family:var(--hub-sans)}.plan-main{padding-top:56px}.plan-hero{padding:clamp(70px,10vw,130px) clamp(22px,8vw,126px) 74px;background:radial-gradient(ellipse 65% 120% at 85% 30%,rgba(230,70,49,.32),transparent 65%),#181716;position:relative;overflow:hidden}.plan-hero:after{content:'04';position:absolute;right:4vw;bottom:-.18em;color:rgba(255,255,255,.04);font:800 clamp(170px,26vw,410px)/.8 var(--hub-display);letter-spacing:-.08em}.plan-eyebrow{position:relative;z-index:1;color:var(--hub-red-bright);font:11px var(--hub-mono);letter-spacing:.13em;display:flex;align-items:center;gap:10px}.plan-eyebrow i{width:30px;height:1px;background:currentColor}.plan-hero h1{position:relative;z-index:1;margin:18px 0 14px;font:700 clamp(72px,11vw,164px)/.8 var(--hub-display);letter-spacing:-.035em}.plan-hero h1 span{color:var(--hub-red-bright)}.plan-hero p{position:relative;z-index:1;max-width:470px;color:#ccc7bf;font-size:15px;line-height:1.9}.builder{margin:-22px clamp(16px,8vw,126px) 0;padding:clamp(28px,4vw,54px);position:relative;z-index:2;background:#f0ece3;color:#151515}.builder-title{display:flex;gap:18px;align-items:flex-start;border-bottom:1px solid #cbc5ba;padding-bottom:27px}.builder-title>span{font:12px var(--hub-mono);color:#9a5d53}.builder-title p{margin:0;color:#87665f;font:11px var(--hub-mono);letter-spacing:.14em}.builder-title h2{margin:6px 0 0;font:700 clamp(36px,5vw,62px)/.85 var(--hub-display)}.choice-group{margin-top:31px}.choice-label{margin-bottom:12px;font:11px var(--hub-mono);letter-spacing:.13em;color:#766f66}.choice-row{display:flex;flex-wrap:wrap;gap:9px}.choice{min-width:128px;display:flex;flex-direction:column;gap:2px;align-items:flex-start;padding:13px 16px;border:1px solid #c8c1b6;background:transparent;color:#201f1d;cursor:pointer;text-align:left;transition:.16s}.choice b{font-size:14px}.choice small{font-size:11px;color:#817a70}.choice.active{background:#1a1a19;border-color:#1a1a19;color:#fff}.choice.active small{color:#cfc6bc}.builder-footer{margin-top:34px;padding-top:20px;border-top:1px solid #cbc5ba;display:flex;align-items:center;justify-content:space-between;gap:20px}.builder-footer p{margin:0;color:#766f66;font-size:12px}.generate-plan{border:0;background:var(--hub-red);color:#fff;padding:14px 19px;font:600 13px var(--hub-sans);cursor:pointer;transition:.16s}.generate-plan:hover{background:var(--hub-red-bright);transform:translateY(-1px)}.generate-plan span{font-size:18px;margin-left:16px}.plan-area{padding:56px clamp(16px,8vw,126px) 70px}.empty-plan{padding:58px 0;border-top:1px solid #3a3935;color:#8e8a82}.empty-plan>span{font:11px var(--hub-mono);color:var(--hub-red-bright)}.empty-plan h2{margin:10px 0;font:600 clamp(34px,5vw,60px)/.9 var(--hub-display);color:#eee9df}.empty-plan p{margin:0;font-size:14px}.plan-summary{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding-bottom:28px;border-bottom:1px solid #3a3935}.plan-summary .summary-kicker{color:var(--hub-red-bright);font:11px var(--hub-mono);letter-spacing:.12em}.plan-summary h2{margin:8px 0 0;font:700 clamp(46px,6vw,78px)/.85 var(--hub-display)}.plan-summary p{margin:0;color:#aaa59d;font-size:13px}.progress-ring{min-width:92px;height:92px;border:1px solid #55504a;border-radius:50%;display:grid;place-items:center;text-align:center}.progress-ring b{display:block;font:700 28px/.9 var(--hub-display)}.progress-ring span{font:10px var(--hub-mono);color:#aaa59d}.week{margin-top:45px}.week-head{display:flex;align-items:baseline;gap:16px;margin-bottom:17px}.week-num{font:12px var(--hub-mono);color:var(--hub-red-bright)}.week h3{margin:0;font:600 30px var(--hub-display);letter-spacing:.02em}.week-note{color:#858078;font-size:12px}.day-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.day-card{background:#1b1b1a;border:1px solid #343330;padding:20px;min-height:285px;display:flex;flex-direction:column;transition:border .18s,opacity .18s}.day-card.done{border-color:#817066;opacity:.68}.day-top{display:flex;justify-content:space-between;gap:12px}.day-meta{display:block;color:#918b82;font:10px var(--hub-mono);letter-spacing:.1em}.day-top h3{margin:4px 0 0;font:600 24px/.9 var(--hub-display)}.complete-toggle{display:flex;align-items:center;gap:6px;color:#aaa59d;font-size:11px;cursor:pointer;white-space:nowrap}.complete-toggle input{position:absolute;opacity:0}.complete-toggle span{width:16px;height:16px;border:1px solid #6f6961;display:grid;place-items:center}.complete-toggle input:checked+span{background:var(--hub-red);border-color:var(--hub-red)}.complete-toggle input:checked+span:after{content:'✓';font-size:11px;color:#fff}.day-focus{margin:18px 0 12px;color:#e8e2d9;font-size:13px}.plan-video{border-top:1px solid #343330;border-bottom:1px solid #343330;padding:10px 0;color:#d5cdc2;font-size:12px}.plan-video span{display:block;color:#847e75;font:10px var(--hub-mono);letter-spacing:.09em;margin-bottom:4px}.plan-video a{color:#f0ece3;text-decoration:none}.plan-video a:hover{color:var(--hub-red-bright)}.plan-exercises{margin:12px 0 0;padding-left:18px;color:#aaa59d;font-size:12px;line-height:1.7}.plan-exercises li::marker{color:var(--hub-red-bright)}.history-area{padding:0 clamp(16px,8vw,126px) 80px}.history-area:empty{display:none}.history-area h2{border-top:1px solid #3a3935;padding-top:28px;margin:0 0 16px;font:600 28px var(--hub-display)}.history-list{display:flex;gap:10px;flex-wrap:wrap}.history-item{background:#1b1b1a;border:1px solid #343330;padding:13px 15px;min-width:185px}.history-item b{display:block;font-size:13px}.history-item small{display:block;margin-top:5px;color:#8e8a82;font-size:11px}@media(max-width:960px){.day-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.plan-hero{padding-top:88px;padding-bottom:74px}.builder{margin:-14px 14px 0}.builder-footer,.plan-summary{align-items:flex-start;flex-direction:column}.choice{flex:1;min-width:calc(50% - 5px)}.plan-area{padding-top:42px}.day-grid{grid-template-columns:1fr}.progress-ring{position:absolute;right:18px;margin-top:10px;width:75px;height:75px}.plan-summary{position:relative;padding-right:80px}.plan-summary h2{font-size:51px}}
