/* MOMENTUM DESIGN SYSTEM v3 — deliberate Apple HIG-inspired hierarchy, no proprietary assets */
:root{color-scheme:light;--bg:#f6f7f4;--surface:#ffffff;--surface-2:#eff3ef;--border:#e5eae5;--text:#172b23;--muted:#66796f;--lime:#cceb83;--dark:#19372b;--mint:#4b7763;--radius:22px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased}
body{background:var(--bg);color:var(--text)}.app-shell{max-width:none}.main-area{max-width:1360px;margin:auto}.sidebar{background:#142b23;border-right:1px solid #233e32;width:244px;padding:36px 16px;gap:24px;color:#f9fcf8}.sidebar .brandmark{background:#ceec8f;border-radius:15px;color:#142b23}.brandname{font-size:18px;font-weight:860;letter-spacing:.07em}.brandsub{color:#a6b7aa;letter-spacing:.12em;font-size:9px;margin-top:4px}.nav-item{color:#b4c6b9;font-size:14px;font-weight:640;border-radius:14px;min-height:46px}.nav-item .icon{width:19px;height:19px}.nav-item.active{background:#294639;color:#d9f69e}.nav-item:hover:not(.active){background:#203b2f}.side-links{gap:5px}.sidefoot{font-size:13px;line-height:1.8;color:#a6b6aa;border-top:1px solid #32493f;margin:10px 10px 0;padding:22px 2px}.sidefoot strong{color:#f4f9f1}.sidefoot span{font-size:11px;opacity:.8}
.topbar{min-height:100px;padding:27px clamp(24px,4.6vw,68px) 13px;border-bottom:0}.topbar .eyebrow{color:#6b7a72;font-weight:650;font-size:11px;letter-spacing:.06em;text-transform:capitalize}.topbar h1{font-size:20px;font-weight:820;letter-spacing:-.045em;margin:8px 0 0}.header-dot{color:#8ebc6b;font-size:13px;vertical-align:2px}.head-actions{gap:9px}.icon-btn,.round-icon{display:grid;place-items:center;background:#fff;border:1px solid var(--border);color:var(--text);border-radius:15px;height:44px;width:44px;min-width:44px;box-shadow:0 1px 3px #1e2e2108;cursor:pointer}
.content-area{padding:12px clamp(24px,4.6vw,68px) 90px}.welcome{display:flex;justify-content:space-between;align-items:center;margin:10px 0 22px;gap:15px}.welcome h2,.page-head h2{font-size:clamp(29px,3.4vw,40px);font-weight:820;letter-spacing:-.055em;line-height:1.13;margin:7px 0}.welcome p,.page-head p{color:var(--muted);margin:7px 0 0;font-size:14px;line-height:1.48}.section-kicker{font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:#6c8775}.page-head{margin:8px 0 23px}.page-head .action{min-width:44px}.add-desktop{display:inline}
.action{background:#1a3a2d;color:#fff;border-radius:14px;min-height:46px;padding:12px 17px;font-size:13px;font-weight:730;white-space:normal;text-align:center}.action:hover{background:#2e5340}.action.secondary{background:#eaf0eb;color:#213d2c;border:1px solid #e5ebe6}.action.secondary:hover{background:#dce8dd}.action.ghost{background:#fff;color:#3d6151;border-color:#e1e8e0}.action.danger{background:#fff1ef;color:#a33a3e;border-color:#f4d6d5}.action.small{min-height:40px;font-size:12px}.panel{background:#fff;border:1px solid #e7ece7;border-radius:22px;box-shadow:0 3px 16px #1c3f2406;padding:24px}.panel-title{font-size:16px;font-weight:800;letter-spacing:-.025em}.panel-title small{font-size:12px}.inline-link{display:inline-flex;gap:5px;align-items:center;background:transparent;color:#3e6651;border:0;padding:8px;min-height:36px;font-size:12px;font-weight:750;cursor:pointer}
.experience-hero{background:radial-gradient(circle at 86% 13%,#345743 0%,#1a3b2b 43%,#112b22 96%);color:white;border-radius:27px;padding:29px 31px 29px;box-shadow:0 16px 35px #213f2c1a;min-height:285px;margin-bottom:16px;position:relative;overflow:hidden}.experience-hero:before{content:'';width:210px;height:210px;position:absolute;top:-80px;right:-60px;border:1px solid #b4d5b522;border-radius:50%;box-shadow:0 0 0 45px #b4d5b510,0 0 0 95px #b4d5b50a;pointer-events:none}.experience-hero>*{position:relative}.hero-topline{display:flex;justify-content:space-between;align-items:center;gap:10px}.live-pill{display:inline-flex;align-items:center;gap:7px;border:1px solid #587764;background:#3d60452b;color:#d9efcc;border-radius:100px;padding:7px 10px;font-size:10px;font-weight:800;letter-spacing:.1em}.live-pill i{width:6px;height:6px;border-radius:50%;background:#d5f48d}.hero-time{font-size:13px;font-weight:730;color:#bed0c3;font-variant-numeric:tabular-nums}.experience-hero h2{font-size:clamp(26px,3.5vw,42px);letter-spacing:-.055em;max-width:680px;line-height:1.09;margin:23px 0 10px;font-weight:790}.experience-hero .hero-first{font-size:14px;color:#c5d6c9;margin:0;line-height:1.55;max-width:540px}.hero-bottom{display:flex;gap:20px;justify-content:space-between;align-items:end;margin-top:25px}.overline{display:block;font-size:10px;font-weight:780;letter-spacing:.12em;color:#b5c8b9}.hero-count{font-size:clamp(32px,4vw,44px);font-weight:800;letter-spacing:-.065em;line-height:1.04;font-variant-numeric:tabular-nums;margin-top:5px}.hero-time-range{display:block;font-size:11px;margin-top:8px;color:#b5c8b9}.hero-buttons{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.hero-primary{background:#d0ed90;color:#193323;min-height:48px}.hero-primary:hover{background:#e0f6ad}.hero-outline{background:#ffffff17;color:white;border:1px solid #ffffff33;min-height:48px}.hero-outline:hover{background:#ffffff2d}.empty-hero{min-height:275px;display:flex;justify-content:space-between;align-items:center;gap:20px}.empty-hero h2{margin:18px 0}.empty-hero .hero-info{max-width:560px}.empty-hero p{font-size:15px;color:#c7d8ca;line-height:1.5;margin:0 0 18px}.empty-hero .action{background:#d1ec95;color:#173125}.hero-symbol{opacity:.25;border:1px solid #d6f7d647;width:128px;height:128px;display:grid;place-items:center;border-radius:40px}
.overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.overview-tile{background:#fff;border:1px solid #e5ebe5;border-radius:19px;padding:18px 19px;min-width:0;display:grid;grid-template-columns:auto 1fr;column-gap:11px;align-content:start}.ov-icon{height:35px;width:35px;border-radius:11px;background:#ecf3e7;color:#365b45;display:grid;place-items:center;grid-row:span 3}.ov-icon .icon{width:18px;height:18px}.overview-tile strong{font-size:27px;line-height:1.06;font-weight:825;letter-spacing:-.045em;font-variant-numeric:tabular-nums}.overview-tile strong em,.report-tile strong em{font-size:13px;font-style:normal;color:var(--muted);font-weight:650;margin-left:3px}.overview-tile small{font-size:12px;font-weight:760;margin-top:5px;line-height:1.2}.overview-tile>span{color:#798a81;font-size:11px;margin-top:5px}.home-grid{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(290px,.78fr);gap:15px}.home-grid>div{min-width:0;display:grid;align-content:start;gap:15px}.upcoming-list{display:grid}.upcoming-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #edf1ec}.upcoming-row:last-child{border-bottom:0}.upcoming-time{font-size:12px;font-weight:800;min-width:43px;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.upcoming-stripe{width:3px;height:36px;border-radius:10px;background:var(--cat,#9abc91)}.upcoming-row>div:nth-child(3){flex:1;min-width:0}.upcoming-row strong{font-size:13px;display:block;font-weight:770}.upcoming-row small{font-size:11px;color:var(--muted);line-height:1.35;display:block;margin-top:3px}.tag-done{color:#3f7a4e}.priority-panel .task{background:#f8faf7;border-color:#e6ece5;margin:7px 0}.priority-panel .task-main{padding:2px 0}.priority-panel .action{margin-top:9px}.momentum-coach{background:#eaf2e7;border-color:#dfe9de}.coach-icon{background:#d8e7ca;color:#355b43;border-radius:13px;padding:9px;display:inline-grid;place-items:center;margin-bottom:12px}.momentum-coach h3{font-size:24px;letter-spacing:-.045em;margin:8px 0}.momentum-coach p{color:#66796f;line-height:1.56;font-size:13px;margin:0 0 18px}.mini-report .week-bars{margin:8px 0}.mini-report .inline-link{margin-top:6px}.muted-small{font-size:12px;color:var(--muted);line-height:1.6}.soft-note{border-radius:14px;background:#f1f5ef;padding:16px;font-size:13px;color:#5c7565;line-height:1.55}
/* Global inherited screens */
.tab{color:#50695c;border-color:#dce6dc;background:white;min-height:39px;font-size:12px;font-weight:650}.tab.active{background:#213e2e!important;border-color:#213e2e!important;color:white!important}.task{background:#f9fbf8;border:1px solid #e4eae3;padding:13px 12px;min-height:63px}.task-title{font-size:14px;font-weight:760}.task-meta{font-size:12px;line-height:1.55}.tick-box{height:41px;width:41px;border-radius:13px;border-color:#a3b5a6;color:#23402e}.tick-box.checked{background:#cdeb8c;color:#263a23}.more-btn{min-width:40px;min-height:40px;border-radius:12px}.habit{background:#f9fbf8}.habit .label{font-size:14px}.habit small{font-size:12px}.habit-check{width:44px;height:44px;background:#eef3eb;border-color:#d4e1d4;color:#315746}.habit-check.yes{background:#cceb83;color:#243921;border-color:#cceb83}.project{box-shadow:0 3px 12px #00000004}.project-icon{background:#eff4ec}.focus-card h2{font-size:25px}.ring{background:conic-gradient(#567e5d var(--progress,0%),#e1ebdd var(--progress,0%))}.ring-inner{background:#fff}.ring-time{color:#173025}.first-step{background:#f0f4ed;color:#526b5a}.first-step strong{color:#19392b}.focus-prompt{background:#eff5ed;color:#23402d}.focus-prompt p{color:#66796f}.pause-line{color:#557a40}.mini-pill{background:#e8f0e5;color:#3e7050}.history-item{font-size:14px}.notice{font-size:13px;color:#6d7b72;border-left-color:#8cb46e}.empty{color:#60766a}.stat-highlight{color:#234c38}.setting-row strong{font-size:14px}.setting-row small{font-size:12px}.sheet{background:white;border-color:#e0e8df;color:#172b23;box-shadow:0 30px 80px #1835224a}.sheet::backdrop{background:#10251b99}.field label{color:#344b3a;font-size:13px}.field input,.field select,.field textarea{background:#f7faf6;border-color:#dce7dc;color:#132b22;font-size:16px}.field-hint{color:#677e6f;font-size:12px}.day-option span{background:#f3f6f2;color:#48634c;border-color:#e3e9e1;min-height:43px}.day-option input:checked+span{background:#315540;color:#fff;border-color:#315540}.color-radio{border-color:#f9faf8}.color-radio:checked{outline-color:#1c3a2b}.toast{background:#193e2d;color:white;border-radius:14px;box-shadow:0 12px 40px #17342135;font-size:13px}
/* Agenda */
.date-strip{border-color:#e4ebe3;background:#fff;padding:13px 14px;border-radius:17px}.date-strip strong{font-size:15px;color:#18372b}.date-strip small{font-size:12px}.small-round{width:45px;height:45px;border-radius:13px;border-color:#dce8dc;background:#f6f9f5;color:#41604b;min-width:45px;min-height:45px}.date-strip>.small-round:first-child svg{transform:rotate(180deg)}.small-round.is-done{background:#c8e79b;color:#163625}.agenda-status{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:26px}.agenda-status span{display:inline-flex;align-items:center;gap:7px;padding:10px 13px;border-radius:12px;background:#eaf1e9;color:#4d6a54;font-size:12px}.agenda-group-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 12px}.agenda-group-title h3{font-size:20px;letter-spacing:-.04em;margin:0}.agenda-group-title span{font-size:12px;color:#647c6d}.day-list{gap:9px}.routine-card{border-color:#e6ede4;background:white;gap:13px;padding:14px;border-radius:17px;min-height:77px;box-shadow:0 1px 4px #14221904}.routine-card.active-now{border-color:#9ec390;background:#f0f7ec;box-shadow:0 0 0 1px #b0d79e3b}.routine-card.done,.routine-card.skip{opacity:1;background:#f9fbf8}.routine-hour{min-width:51px;gap:5px;align-items:flex-start}.routine-hour strong{font-size:14px;color:#17392b}.routine-hour small{font-size:11px;color:#819087}.routine-name{font-size:14px;font-weight:780;color:#203629}.routine-kind{font-size:12px;color:#697b6d;line-height:1.4;margin-top:4px}.routine-status{color:#447955;font-size:11px}.routine-buttons .small-round{height:44px;width:44px;min-height:44px;min-width:44px}.routine-buttons{gap:8px}.now-pill{font-size:9px;border-radius:7px;background:#d2eab5;color:#204a31;vertical-align:2px}.past-blocks{margin-top:25px;border-top:1px solid #e0e8df;padding-top:17px}.past-blocks summary{cursor:pointer;font-size:14px;font-weight:750;color:#466753;list-style:none;display:flex;justify-content:space-between;align-items:center;min-height:44px}.past-blocks summary:after{content:'⌄';font-size:20px;margin-right:7px}.past-blocks[open] summary:after{transform:rotate(180deg)}.past-blocks .day-list{margin-top:11px}.past-blocks summary span{font-weight:600;color:#7f9484;margin-right:auto;margin-left:10px}.day-widget-actions{margin-top:22px}.checkin-panel{margin-top:30px}.start-guide,.empty-schedule{padding:30px}.empty-schedule h3{font-size:23px;letter-spacing:-.04em}.empty-schedule p{color:var(--muted);line-height:1.55}.empty-graphic{background:#eaf1e5;color:#416f53;height:70px;width:70px;border-radius:19px;display:grid;place-items:center}
/* Reports and alerts */
.segmented{display:flex;background:#e9efea;padding:5px;border-radius:15px;gap:3px;width:min(100%,430px);margin-bottom:21px}.segment{flex:1;border:0;background:transparent;color:#64766b;border-radius:11px;min-height:43px;font-size:13px;font-weight:730}.segment.active{background:white;color:#153427;box-shadow:0 2px 9px #143b2220}.report-lead{padding:21px 25px;border-radius:20px;background:#193b2d;color:white;margin-bottom:14px}.report-lead .section-kicker{color:#b6d4bd}.report-lead h3{font-size:26px;letter-spacing:-.045em;margin:8px 0}.report-lead p{font-size:12px;color:#c8dccb;margin:0;line-height:1.55}.report-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.report-tile{background:white;border:1px solid var(--border);border-radius:17px;padding:16px;min-width:0}.report-tile .ov-icon{margin-bottom:13px}.report-tile strong{display:block;font-size:26px;letter-spacing:-.045em}.report-tile span{display:block;color:#60796a;font-size:12px;line-height:1.3;margin-top:6px}.report-panel,.report-details{margin-bottom:14px}.report-badge{background:#eaf4e8;color:#416d4b;padding:7px 10px;font-size:10px;border-radius:100px;font-weight:730}.score-layout{display:flex;gap:20px;align-items:center}.score-circle{flex-shrink:0;width:125px;height:125px;display:flex;flex-direction:column;justify-content:center;align-items:center;border-radius:50%;border:10px solid #e4efdf;font-size:40px;font-weight:800;letter-spacing:-.06em;color:#1b5234}.score-circle small{color:#698173;font-size:11px;letter-spacing:0;font-weight:600}.score-layout h3{font-size:17px;letter-spacing:-.03em;margin:0 0 9px}.score-layout p{color:#667a6b;font-size:12px;line-height:1.5;margin:0 0 7px}.report-detail-row{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--border);font-size:13px}.report-detail-row span{color:#65786a}.report-detail-row strong{color:#234333}.alert-status{display:flex;gap:18px;align-items:flex-start;margin-bottom:15px;background:#eaf2e8;border-color:#e1ebe0}.alert-icon{flex-shrink:0;width:56px;height:56px;display:grid;place-items:center;border-radius:18px;background:#d5e7cf;color:#3d6a49}.alert-status h3{font-size:20px;letter-spacing:-.035em;margin:12px 0 8px}.alert-status p{color:#627769;line-height:1.5;font-size:13px;margin:0}.alert-controls,.alert-controls+.panel{margin-bottom:15px}.alert-controls select{padding:12px;border:1px solid var(--border);border-radius:11px;background:#f8faf7;color:#294632;min-height:45px}.switch{position:relative;display:inline-block;width:55px;height:33px;flex-shrink:0}.switch input{opacity:0;width:0;height:0}.switch span{position:absolute;inset:0;background:#cad6cd;border-radius:100px;transition:.2s}.switch span:before{content:'';position:absolute;height:25px;width:25px;left:4px;top:4px;background:#fff;border-radius:50%;box-shadow:0 1px 5px #0002;transition:.2s}.switch input:checked+span{background:#346e48}.switch input:checked+span:before{transform:translateX(22px)}.switch:focus-within{outline:3px solid #8bb39c;outline-offset:3px;border-radius:100px}
@media(max-width:1070px){.sidebar{width:218px}.home-grid{grid-template-columns:1fr}.overview-grid{gap:9px}.content-area{padding-left:25px;padding-right:25px}.topbar{padding-left:25px;padding-right:25px}}
@media(max-width:690px){.app-shell{display:block}.sidebar{display:none}.topbar{min-height:73px;padding:18px 19px 6px;align-items:center}.topbar h1{font-size:17px;margin-top:5px}.topbar .eyebrow{font-size:10px}.head-actions .icon-btn{width:42px;height:42px;min-width:42px;background:#fff}.content-area{padding:15px 16px calc(125px + env(safe-area-inset-bottom,0px))}.welcome{margin:4px 0 19px}.welcome h2{font-size:30px}.welcome p{font-size:13px}.welcome .round-icon{display:none}.page-head h2{font-size:31px}.page-head p{font-size:13px}.add-desktop{display:none}.page-head .action{padding:10px;min-width:46px}.experience-hero{padding:21px 21px 22px;min-height:290px;border-radius:23px;margin-bottom:12px}.experience-hero h2{font-size:29px;margin:20px 0 10px;line-height:1.14}.experience-hero .hero-first{font-size:13px}.hero-bottom{display:block;margin-top:22px}.hero-count{font-size:34px}.hero-buttons{margin-top:20px;justify-content:flex-start;gap:8px}.hero-buttons>.action{flex:1;font-size:12px;padding:10px}.hero-outline{flex:0 0 auto!important}.overview-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:13px}.overview-tile{display:flex;flex-direction:column;padding:11px 9px;border-radius:14px;gap:4px;min-height:119px}.overview-tile .ov-icon{width:29px;height:29px;border-radius:10px}.overview-tile .ov-icon .icon{width:16px;height:16px}.overview-tile strong{font-size:23px}.overview-tile small{font-size:11px;font-weight:750}.overview-tile>span{font-size:10px;margin-top:auto}.home-grid{grid-template-columns:1fr;gap:13px}.home-grid>div{gap:13px}.panel{padding:18px;border-radius:18px}.panel-title{font-size:15px}.upcoming-row{padding:12px 0;gap:10px}.upcoming-row strong{font-size:13px}.upcoming-row small{font-size:11px}.mobile-nav{position:fixed;z-index:20;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom,0px));display:flex;align-items:center;justify-content:space-between;background:#ffffffed;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);border:1px solid #e2e9e0;box-shadow:0 7px 30px #163d2730;border-radius:23px;padding:8px 6px;gap:0}.mobile-link{color:#738577;min-width:0;min-height:51px;padding:6px 2px;display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;font-size:10px;font-weight:680;border-radius:13px;flex:1}.mobile-link .icon{width:21px;height:21px}.mobile-link.active{color:#255b36;background:#ebf2e6}.date-strip{padding:9px;gap:6px}.date-strip .small-round{min-width:42px;width:42px;height:42px;min-height:42px}.date-strip strong{font-size:13px}.date-strip small{font-size:11px}.date-strip .action.ghost{padding:9px;min-height:42px}.agenda-status{margin-bottom:21px}.agenda-status span{font-size:11px}.routine-card{padding:11px;gap:9px;min-height:79px}.routine-hour{min-width:42px}.routine-hour strong{font-size:12px}.routine-hour small{font-size:10px}.routine-name{font-size:13px}.routine-kind{font-size:11px}.routine-buttons .small-round{min-width:42px;width:42px;height:42px;min-height:42px}.routine-buttons{gap:4px}.now-pill{display:block;width:max-content;margin:6px 0 0}.report-grid{grid-template-columns:repeat(2,1fr)}.report-tile strong{font-size:26px}.score-layout{align-items:flex-start;gap:14px}.score-circle{width:93px;height:93px;border-width:7px;font-size:30px}.score-layout h3{font-size:15px}.alert-status{display:block}.alert-icon{margin-bottom:10px}.alert-status h3{margin-top:10px}.sheet{width:min(100%,calc(100% - 16px));max-height:92dvh;border-radius:22px}.sheet-content{padding:22px}.sheet-head h2{font-size:20px}.setting-row{gap:8px}.setting-row strong{font-size:13px}.setting-row small{font-size:11px}.form-row{gap:10px}}
@media(max-width:360px){.hero-outline{display:none}.experience-hero h2{font-size:26px}.routine-card{gap:6px}.routine-buttons .small-round{min-width:39px;width:39px}.overview-tile strong{font-size:20px}.overview-tile small{font-size:10px}.mobile-link{font-size:9px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media(prefers-color-scheme:dark){/* Purposefully retain a stable high-contrast light design in v3; opt-in theme is future work. */}
.supporting-links{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin:-7px 0 16px}.supporting-links .inline-link{background:#eaf1e9;border-radius:12px;padding:9px 13px;min-height:44px;color:#315b43}.supporting-links .inline-link:hover{background:#dceadd}
.mobile-link{font-size:11px}
