/* A monochrome interface foundation for the future device display. */
:root{--green:#202020;--sage:#e4e4de;--ink:#202020;--muted:#55554f;--line:#bdbfb6;--cream:#dfe1d8;--blue:#202020;--lilac:#f1f1e9;--teal:#202020}body{background:#dfe1d8;font-family:'DM Sans',sans-serif}.sidebar{background:#e8e9e2;border-color:#b9bdb1}.brand-dot,.little-leaf{color:#202020}.sidebar-caption,.eyebrow,header{color:#4f5549}.sidebar-bottom p,.settings-link,.subtitle{color:#51574c}nav button{color:#4e5548}nav button:hover{background:#d5d8ce}nav button.active{background:#222;color:#fafaf4}nav button.active span{color:#fff}.avatar{background:#cccfc4;color:#222}header{border-color:#b9bfb0}.private-dot{background:#222}.hero{background:transparent;color:#202020;border:0;border-top:1px solid #92988b;border-bottom:1px solid #92988b;border-radius:0;min-height:177px;padding:24px 0;margin-bottom:24px}.hero h2{font-family:Manrope;font-size:40px;font-weight:600;letter-spacing:-1.8px}.hero p{color:#51574b;margin:12px 0 15px}.hero .eyebrow{color:#555c4e;font-family:monospace;font-size:10px}.hero .primary{background:#222;color:#fff;border-radius:30px}.momentum-art{width:220px;height:130px;margin-right:25px}.momentum-art:before{display:none}.energy-orbit{background:none;border:1px solid #6b7364;width:132px;height:132px;border-radius:50%;transform:none;top:0;left:40px}.energy-orbit:after{background:#222;width:66px;height:66px;right:32px;bottom:32px}.energy-star{display:none}.energy-dot{display:none}.energy-label{color:#444c3e;bottom:-8px;right:-10px;font-family:monospace}.snapshot-grid{grid-template-columns:1.05fr 1fr 1fr;gap:22px}.snapshot-card{background:#eef0e9;border:0;border-radius:28px;min-height:238px;padding:22px 25px}.snapshot-total{background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0}.snapshot-total>.section-label{margin-bottom:10px}.snapshot-glow{display:none}.ink-dial{width:190px;height:190px;border-radius:50%;background:#222;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#f7f8f2}.ink-dial .snapshot-number{font-size:62px;font-weight:400;letter-spacing:-2px;margin:0 0 9px}.ink-dial .snapshot-number small{color:#eee;font-size:18px}.ink-dial>span{font-family:monospace;font-size:9px;letter-spacing:1.5px}.snapshot-total p{margin-top:11px;color:#40483b}.snapshot-number{font-family:monospace;font-weight:400;font-size:40px;margin-top:13px;letter-spacing:-1px}.snapshot-number small{font-size:15px;color:#4b5345}.section-label,.event-time,.date-pill,.micro{font-family:monospace;letter-spacing:1px;color:#4e5746}.snapshot-card p{color:#50594a}.status-dot{background:#222}.ink-gauge{height:105px;position:relative;border-bottom:1px solid #535c4b;margin-bottom:16px}.ink-gauge:before{content:'';position:absolute;width:130px;height:65px;border:1px solid #535c4b;border-bottom:0;border-radius:100px 100px 0 0;bottom:0;left:50%;transform:translateX(-50%);background:repeating-conic-gradient(from -90deg at 50% 100%,#535c4b 0deg 1deg,transparent 1deg 14deg);mask-image:radial-gradient(ellipse at 50% 100%,transparent 61%,#000 63%)}.ink-gauge span{position:absolute;height:48px;width:1px;background:#222;bottom:0;left:50%;transform-origin:bottom;transform:rotate(-32deg)}.ink-orbits{height:105px;position:relative;margin-bottom:16px}.ink-orbits i{position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:125px;height:90px;border:1px solid #8c9583;border-radius:50%}.ink-orbits i:nth-child(2){height:59px}.ink-orbits i:nth-child(3){height:25px;border-color:#404b35}.card{background:#eff0e9;border:0;border-radius:25px}.timeline{padding:2px 23px}.event{border-color:#cdd2c5}.event-icon{background:#dde0d5;color:#202020;border:1px solid #abb39f}.event-time,.event p{color:#555f4b}.event .check{border:1px solid #59644e;background:transparent;width:27px;height:27px}.event.done .check{background:#222;border-color:#222;color:#fff}.event.done h3{color:#535e49;text-decoration:line-through}.badge{background:transparent;color:#505c45;border:1px solid #b4beaa;border-radius:4px}.badge.amber{background:transparent;color:#262f1e;border-color:#616e52}.next-step-card{background:#eff0e9;color:#202020;border:1px solid #b7c0ab;border-radius:28px}.next-step-aura{display:none}.next-step-card .section-label{color:#505d44}.next-step-card p{color:#4d5c41}.next-step-card .next-step-action{background:#222;color:#fff;border-radius:30px}.next-step-card .next-step-action:hover{background:#373737}.meal-art svg{filter:grayscale(1)}.dinner-card .meal-art,.meal-grid .meal-art{background:#dde1d4}.review-note,.note-banner{background:#e7eadf;color:#39442e;border:1px solid #9daa8e;border-radius:18px}.text-button{color:#303c25}.text-button:hover{color:#000;text-decoration:underline}.primary{background:#222;color:#fff;border-radius:25px}.primary:hover{filter:none;background:#383838}.secondary{background:#eff0e8;border-color:#8d9b7d;border-radius:22px}.pill-row button.active{background:#222;border-color:#222}.pill-row button{border-color:#97a385;color:#37462a}.mood-buttons label:has(input:checked){background:#d9dfce;border-color:#3f4e31}.mood-buttons input,.check-label input,.grocery-row input{accent-color:#222}.progress-caption,footer,footer span{color:#58664a}dialog{background:#eff0e9;color:#222;border-color:#929f7e}dialog p,.muted,.small{color:#556349}.routine-details p{color:#526344}.routine-details h3{color:#202020}.danger{color:#333;text-decoration:underline}#toast{background:#222;border-color:#222}.date-pill{border-color:#9ca88c;background:#eef0e7}.meal-meta{color:#536446}.profile{border-color:#b5beaa}.snapshot-card .section-label{font-size:10px}.progress-caption{font-size:10px}.review-note p{color:#414f35}@media(max-width:1100px){.snapshot-grid{gap:14px}.ink-dial{width:165px;height:165px}.ink-dial .snapshot-number{font-size:54px}.snapshot-card{padding:20px}.snapshot-total{padding:0}.ink-gauge:before{width:105px;height:53px}.ink-orbits i{width:105px}}@media(max-width:760px){.sidebar{background:#dfe1d8;border-color:#a8b29a}nav button.active{color:#fff}.hero{min-height:210px;padding:22px 0;overflow:visible}.hero h2{font-size:35px;max-width:245px}.hero p{font-size:11px;max-width:210px;line-height:1.65}.hero .primary{font-size:10px;padding:11px 15px}.hero .eyebrow{font-size:8px}.momentum-art{right:-2px;bottom:20px;width:98px;height:100px;transform:none;opacity:1;margin:0}.energy-orbit{width:80px;height:80px;left:0;top:0}.energy-orbit:after{width:40px;height:40px;bottom:19px;right:19px}.energy-label{display:none}.snapshot-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:26px}.snapshot-total{grid-column:1/-1;min-height:215px;padding:0;position:relative}.snapshot-total>.section-label{position:absolute;top:24px;left:0;font-size:9px;max-width:75px;line-height:1.7}.ink-dial{width:185px;height:185px}.ink-dial .snapshot-number{font-size:62px;line-height:1}.snapshot-total p{position:absolute;right:0;bottom:20px;max-width:70px;line-height:1.6;font-size:9px;margin:0}.snapshot-card:not(.snapshot-total){padding:17px 18px;min-height:205px;border-radius:24px}.snapshot-card .section-label{font-size:9px;letter-spacing:.8px}.snapshot-number{font-size:31px;margin-top:12px}.ink-gauge,.ink-orbits{height:80px;margin-bottom:12px}.ink-gauge:before{width:102px;height:51px}.ink-orbits i{width:104px;height:74px}.ink-orbits i:nth-child(2){height:48px}.ink-orbits i:nth-child(3){height:21px}.snapshot-card p{font-size:9px;line-height:1.5}.next-step-card{border-radius:25px}.card{border-radius:24px}.section-head h2{font-size:18px}.event-icon{background:#dce1d2}.snapshot-total .snapshot-number{margin-top:0}.next-step-action{min-height:44px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Native-style tab bar on phones, sidebar navigation on desktop. */
.sidebar nav button>span:first-child{display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar nav svg{width:22px;height:22px}.sidebar nav .nav-label{width:auto;text-align:left;font-size:inherit;line-height:1.3}.nav-mobile-label{display:none}
@media(max-width:760px){
.sidebar{position:relative;top:auto;padding:18px 19px 14px;border-bottom:0;z-index:auto}
.sidebar nav{position:fixed;left:0;right:0;bottom:0;z-index:20;margin:0;padding:9px max(12px,env(safe-area-inset-right)) calc(9px + env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left));height:calc(66px + env(safe-area-inset-bottom,0px));background:#eef0e9;border-top:1px solid #a8b29a;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.sidebar nav button{display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;padding:3px 0 5px;min-height:46px;min-width:44px;color:#5a6252;background:transparent;border-radius:0;font-size:10px;font-weight:500;line-height:1.2}
.sidebar nav button>span:first-child{width:25px;height:25px;font-size:24px}.sidebar nav svg{width:25px;height:25px}.sidebar nav .nav-label{font-size:10px;line-height:1.2;text-align:center;width:auto;letter-spacing:.1px}
.sidebar nav button.active{color:#111;background:transparent;font-weight:700}.sidebar nav button.active>span:first-child{color:#111}.sidebar nav button.active svg{stroke-width:2.3}.sidebar nav button:hover{background:transparent}.nav-desktop-label{display:none}.nav-mobile-label{display:inline}
main{padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}footer{padding-bottom:10px}#toast{bottom:calc(82px + env(safe-area-inset-bottom,0px));max-width:calc(100vw - 32px)}
}

.sidebar nav .nav-label span{font-size:inherit;line-height:inherit;width:auto;color:inherit}@media(max-width:760px){.sidebar nav button.active .nav-label,.sidebar nav button.active .nav-label span{color:#111}.sidebar nav .nav-label span{font-size:10px}}
