:root{--teal:#075d58;--accent:#d6f56b;--soft:#eaf4ef;--hero:#153c35;--purple:#7460df;--orange:#f4ad74;background:#f5f5ef;color:#202f32}html[data-theme=violet]{--teal:#5940ad;--accent:#e3d8ff;--soft:#f0ebfa;--hero:#332452}html[data-theme=ocean]{--teal:#12668b;--accent:#b1edfa;--soft:#e7f2f7;--hero:#123c52}header{padding:22px 36px}.brand .mark{background:var(--hero)}.brand small{letter-spacing:.07em}.toolbar{border:0;flex-wrap:wrap;margin-bottom:10px;padding:0}.main-nav{background:#202f32;border-radius:18px;padding:7px;gap:3px}.main-nav button{color:#e7eeea;min-width:104px;border-radius:12px}.main-nav .selected{background:var(--accent);color:#202f32}.user-actions{display:flex;flex-wrap:wrap;gap:4px}.subnav{margin:12px 0 30px;gap:6px}.subnav button{font-size:.9rem;background:transparent}.subnav button.selected{background:var(--soft);color:var(--teal)}.card{box-shadow:none;border-color:#e0e4dd;border-radius:20px}.page-title h1{font-size:clamp(2rem,4vw,3rem)}.study-hero{background:var(--hero);color:#fff;border-radius:26px;padding:32px 38px;display:grid;grid-template-columns:1.5fr 1fr;gap:24px;margin-bottom:22px;overflow:hidden}.study-hero .eyebrow{color:var(--accent)}.study-hero h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.12;letter-spacing:-.04em}.study-hero h2 span{display:block;font-size:1.25rem;font-weight:500;margin-top:12px;letter-spacing:0}.study-hero p{color:#e2ece6}.study-hero .primary{background:var(--accent);color:#202f32;border:0}.hero-clock{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #ffffff30;border-radius:80px 80px 26px 26px;padding:24px}.hero-clock>span:first-child{font-size:3.8rem;font-weight:750;letter-spacing:-.06em;font-variant-numeric:tabular-nums}.hero-clock p{text-align:center;max-width:220px;font-size:.85rem}.orbit{position:absolute;top:-24px;right:-6px;color:var(--accent);font-size:4rem;animation:float 6s ease-in-out infinite}.action-tiles{grid-template-columns:1.25fr 1fr 1fr}.action-tile{border:1px solid #dce3db;transition:transform .2s,box-shadow .2s}.action-tile:hover{transform:translateY(-3px);box-shadow:0 7px 18px #152e3610}.photo-tile{background:var(--soft);color:var(--teal)}.action-tile:nth-child(2){background:#efebff;border-color:#e0d7fc}.action-tile:nth-child(3){background:#fff0e4;border-color:#f3dec9}.tile-icon{background:var(--teal);color:#fff}.diary-note{margin-bottom:20px}.stats{gap:12px;border:0;padding:0}.stats>div{background:#fff;border:1px solid #e0e4dd!important;border-radius:16px;padding:16px!important}.stats span{font-size:2rem}.focus-card{background:var(--hero)}.mentor-intro{display:flex;align-items:center;gap:18px;margin-bottom:22px}.mentor-intro img{flex-shrink:0}.mentor-intro p{margin:3px 0}.mentor-intro>div>p:not(.eyebrow){font-size:1.15rem;font-weight:600}.gym-top,.gym-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.gym-top .card{margin:0}.gym-top{margin-bottom:24px}.challenge-card{background:#f8dec7;border-radius:22px;padding:28px}.challenge-card .eyebrow{color:#784220}.challenge-card strong{font-size:2.5rem}.challenge-card progress{display:block;width:100%;height:12px;accent-color:#855232;margin:12px 0}.challenge-card p:last-child{font-size:.875rem}.day-pills{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.day-pills label{display:flex;gap:7px;align-items:center;margin:0;border:1px solid #d9e0d9;border-radius:9px;padding:9px}.day-pills input,.habit-checks input{display:inline-block;width:auto;margin:0;accent-color:var(--teal)}.habit-checks label{display:flex;align-items:center;gap:12px;margin:12px 0}.gym-exercise{border:1px solid #dbe2da;padding:16px;border-radius:14px;margin:20px 0;min-width:0}.gym-exercise legend{font-weight:650;padding:0 8px}.set-line{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:center}.set-line input{min-width:0}.set-line label{margin-bottom:12px}.gym-exercise>button{margin-right:6px}.coach-card{border-top:5px solid var(--purple)}#coachMessages{max-height:450px;overflow:auto;margin:18px 0}#coachForm button{margin-top:12px}.guide-step{border-top:1px solid #e4e8e2;padding-top:10px}.guide-step h3{font-size:1rem;margin:10px 0}details>summary{font-weight:650;cursor:pointer;padding:6px 0}#gymProgress small{display:block;color:#506477}.primary{background:var(--teal)}.message.assistant{background:var(--soft)}@keyframes float{50%{transform:translateY(7px) rotate(12deg)}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(max-width:850px){.gym-top,.gym-layout{grid-template-columns:1fr}.action-tiles{grid-template-columns:1fr}.study-hero{padding:26px;grid-template-columns:1fr}.hero-clock{display:none}}@media(max-width:760px){.toolbar .main-nav{display:flex;flex-wrap:nowrap;overflow-x:auto;width:100%;padding:6px;border-radius:14px}.main-nav button{min-width:auto;flex:1 0 auto;text-align:center!important;padding:10px!important}.toolbar{gap:6px}.user-actions{width:100%;justify-content:flex-end}.subnav{gap:3px;margin-top:4px;margin-bottom:22px}.subnav button{padding:8px 10px;font-size:.85rem}.study-hero h2{font-size:2.45rem}.study-hero{border-radius:20px;padding:24px}.stats>div{padding:12px!important}.stats p{font-size:.6rem}.set-line{grid-template-columns:1fr 1fr}.set-line .quiet{grid-column:1/-1;justify-self:start;padding:0 4px;min-height:30px;margin-bottom:12px}.intro h1{font-size:2.4rem}.mentor-intro{gap:12px}.mentor-intro img{width:64px;height:64px}.challenge-card{padding:22px}}

/* Keep the daily start action in the hero instead of repeating it. */
#dailyTile{display:none}.action-tiles{grid-template-columns:1.3fr 1fr}#plan .two-col{grid-template-columns:1fr}#plan .focus-card{display:none}#studyWindowState{font-weight:650;color:var(--accent);font-size:.875rem}@media(max-width:760px){.action-tiles{grid-template-columns:1fr}}

.gym-shortcuts{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 24px}.gym-shortcuts button:last-child{background:#efebff;color:#493794;border-color:#e0d7fc}

.calendar-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:22px 0}.calendar-controls h3{margin:0;text-transform:capitalize}.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar-weekday{text-align:center;font-size:.8rem;color:#526777}.calendar-day{min-height:54px;padding:8px;display:flex;flex-direction:column;align-items:center;gap:4px}.calendar-day.today{outline:2px solid var(--teal);background:var(--soft)}.calendar-dot{background:var(--teal);color:#fff;border-radius:10px;font-size:.7rem;padding:0 7px}.calendar-event{padding:16px 0;border-bottom:1px solid #dde4dc}.calendar-event h3{margin:4px 0}.calendar-event p{margin:7px 0}.calendar-event button{margin-right:8px}#familyEventForm{border-top:1px solid #dde4dc;margin-top:24px;padding-top:24px}#calendarEvents{max-height:650px;overflow:auto}@media(max-width:760px){.calendar-layout{grid-template-columns:1fr}.calendar-grid{gap:3px}.calendar-day{padding:5px;min-width:0}.calendar-controls{gap:8px}.calendar-controls h3{font-size:1rem}.calendar-controls button{padding:8px}#familyTimetables{display:block}}

.family-shortcuts{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}.family-shortcuts a,.family-shortcuts button{display:inline-flex;align-items:center;background:#eaf4ef;color:var(--teal);padding:10px 14px;border:1px solid #d5e3dc;border-radius:10px;text-decoration:none;font-size:.9rem;font-weight:600}#appUpdate{max-width:1208px;margin:16px auto}#familyDocumentsSection,#familyCalendarSection,#familyTimetableSection{scroll-margin-top:24px}

.manual-tile{display:inline-flex;align-items:center;padding:10px 14px;border-radius:12px;background:#e3ebff;color:#18385c;font-weight:750;text-decoration:none;border:1px solid #b8cbee}.manual-tile:hover{background:#ceddff}.manual-tile:focus-visible{outline:3px solid #167970;outline-offset:3px}

