/* Ahd 53: shared goal components and a focused timer surface. */
body{background-color:#f5f7f5;background-image:radial-gradient(rgba(39,78,67,.095) .7px,transparent .8px);background-size:22px 22px;background-attachment:fixed}
#app{background:transparent}.page{background:transparent}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
:where(.goals-v53,.w53-card,.focus-v53,.focus-launcher) button:focus-visible,:where(.goals-v53,.focus-v53) input:focus-visible,:where(.goals-v53,.focus-v53) select:focus-visible{outline:3px solid #25978c;outline-offset:3px}
:where(.goals-v53,.w53-card,.focus-v53) button{cursor:pointer;font-family:inherit}
:where(.goals-v53,.focus-v53) button:disabled{cursor:default;opacity:.45}
.goals-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:8px 0 25px}.goals-heading h1{font-family:var(--display);font-size:38px;letter-spacing:-1.5px;margin:0;line-height:1.15}.goals-heading p{font-size:13px;color:#69746f;margin:7px 0 0}.goals-add{display:flex;align-items:center;gap:7px;min-height:44px;padding:0 16px;border-radius:12px;background:#1f5148;color:#fff;font-size:13px;font-weight:700;flex-shrink:0}.goals-add .ui-icon{width:17px;height:17px}
.goals-toolbar{display:flex;gap:10px;margin-bottom:16px}.goals-search{display:flex;align-items:center;gap:10px;min-width:0;flex:1;background:#fff;border:1px solid #dfe5e0;border-radius:12px;padding:0 13px}.goals-search>.ui-icon{width:18px;color:#78857f}.goals-search input{width:100%;min-width:0;min-height:46px;border:0;background:none;padding:0;font-size:14px;color:var(--ink);outline-offset:0}.goals-sort select{height:48px;max-width:158px;padding:0 30px 0 12px;border:1px solid #dfe5e0;border-radius:12px;background-color:#fff;font-size:12px;color:#4b5953}
.goals-categories{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:0 0 16px}.goals-categories button{display:flex;align-items:center;gap:8px;flex-shrink:0;min-height:40px;padding:0 14px;border-radius:10px;background:#eaf0eb;color:#56645d;font-size:12px;font-weight:600}.goals-categories button span{font-size:10px;opacity:.72}.goals-categories button.active{background:#24574d;color:#fff}
.goals-view-options{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:3px 0 16px;border-bottom:1px solid #dfe6e1;min-height:46px}.goals-view-options>div{display:flex;gap:18px}.goals-view-options button{display:flex;align-items:center;gap:5px;min-height:46px;font-size:12px;color:#64746b;white-space:nowrap}.goals-view-options>div button{position:relative}.goals-view-options>div button.active{color:#234e43;font-weight:750}.goals-view-options>div button.active:after{content:"";height:2px;background:#24574d;position:absolute;bottom:-1px;left:0;right:0}.goals-view-options button span{font-size:10px;background:#e4ece6;padding:2px 5px;border-radius:5px}.goals-view-options .ui-icon{width:15px;height:15px}
.goals-grid-v53,.tracker-dashboard{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;align-items:stretch}.goals-template-callout{display:flex;align-items:center;text-align:left;gap:14px;width:100%;margin:22px 0 8px;padding:18px;background:#e8eee8;border:1px dashed #becbc1;border-radius:14px}.goals-template-callout>span{display:grid;place-items:center;width:42px;height:42px;background:#f8faf7;border-radius:12px;color:#38634d}.goals-template-callout>div{flex:1}.goals-template-callout b{font-size:14px}.goals-template-callout small{display:block;margin-top:3px;font-size:12px;color:#657567}.goals-template-callout>.ui-icon{width:18px}.goals-empty{grid-column:1/-1;text-align:center;padding:45px 15px;background:#fff;border:1px dashed #cbd6ce;border-radius:16px}.goals-empty>.ui-icon{width:40px;height:40px;color:#64947f}.goals-empty h2{font-size:20px;margin:16px 0 6px}.goals-empty p{color:#6b7770;font-size:13px}.goals-empty button{margin-top:12px;padding:12px 18px;background:#24574d;color:#fff;border-radius:10px;font-size:13px}
/* Every template shares typography and controls; the visualization varies. */
.w53-card{--w-accent:#407c64;--w-soft:#eaf2ed;background:#fff;border:1px solid #dfe6e1;border-radius:18px;box-shadow:0 3px 9px #142b2104;overflow:hidden;min-width:0;display:flex;flex-direction:column;text-align:left}
.w53-card[data-visual=weight]{--w-accent:#5883b3;--w-soft:#edf3f9}.w53-card[data-visual=water]{--w-accent:#3e95bb;--w-soft:#eaf5fa}.w53-card[data-visual=sleep]{--w-accent:#607a9b;--w-soft:#eef2f7}.w53-card[data-visual=limit]{--w-accent:#b77559;--w-soft:#fcf1eb}.w53-card[data-visual=savings]{--w-accent:#9d813a;--w-soft:#f7f3e6}.w53-card[data-visual=streak]{--w-accent:#b77559;--w-soft:#fcf1eb}.w53-card[data-visual=reading]{--w-accent:#8f805a;--w-soft:#f5f2e9}.w53-card[data-visual=study]{--w-accent:#527da2;--w-soft:#edf3f7}
.w53-header{display:flex;align-items:center;gap:10px;padding:17px 18px 0}.w53-icon{width:38px;height:38px;border-radius:11px;background:var(--w-soft);color:var(--w-accent);display:grid;place-items:center;flex-shrink:0}.w53-icon .ui-icon{width:20px;height:20px}.w53-header>button:not(.w53-open){flex:1;min-width:0;text-align:left}.w53-header b{font-size:15px;font-weight:700;line-height:1.4;display:block;overflow-wrap:anywhere}.w53-header small{display:block;margin-top:1px;font-size:11px;color:#748079}.w53-open{width:32px;height:40px;display:grid;place-items:center;color:#91a098;flex-shrink:0}.w53-open .ui-icon{width:16px;height:16px}
.w53-metric{display:flex;align-items:flex-end;gap:10px;padding:19px 18px 0}.w53-period{font-size:11px;color:#718078}.w53-number{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;margin-top:5px;font-variant-numeric:tabular-nums}.w53-number b{font-family:var(--sans);font-size:34px;line-height:1.05;letter-spacing:-1.2px;font-weight:650;color:#243b32}.w53-number>span{font-size:13px;color:#7a867f}.w53-target{margin-left:auto;flex-shrink:0;text-align:right;font-size:10px;color:#7b8980;padding-bottom:2px}.w53-target b{display:block;margin-top:4px;font-size:12px;font-weight:600;color:#53655b}.w53-sleep-moon{margin:auto auto 0 10px;color:#879db8}.w53-sleep-moon .ui-icon{width:30px;height:30px;fill:#eef2f7}
.w53-visual{padding:15px 18px 13px;flex:1;display:flex;flex-direction:column;justify-content:flex-end;gap:13px;min-height:126px;color:var(--w-accent)}.w53-line svg{display:block;width:100%;height:94px;overflow:visible}.w53-line text{font-size:8px;fill:#85938a;font-family:var(--sans)}.w53-data-line{stroke:var(--w-accent);stroke-width:2.5;fill:none;stroke-linecap:round;stroke-linejoin:round}.w53-line circle{fill:var(--w-accent);stroke:#fff;stroke-width:1.3}.w53-target-line{stroke:#c2d0c8;stroke-dasharray:3 4;stroke-width:1}.w53-grid-line{stroke:#edf1ee}.w53-axis{display:flex;justify-content:space-between;font-size:9px;color:#839187;padding-top:6px}.w53-bars{display:flex;gap:9px;height:103px;align-items:stretch}.w53-bar{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:6px}.w53-bar>span{font-size:8px;line-height:12px;min-height:12px;white-space:nowrap;color:#7e8d83}.w53-bar>div{height:66px;position:relative;width:100%;display:flex;align-items:flex-end;justify-content:center}.w53-bar i{display:block;max-width:22px;width:100%;border-radius:4px 4px 2px 2px;background:var(--w-accent);opacity:.34;min-height:0}.w53-bar.today i{opacity:1}.w53-bar em{position:absolute;bottom:0;width:4px;height:4px;border-radius:50%;background:#dce5df}.w53-bar small{font-size:10px;color:#89968c}.w53-bar.today small{color:var(--w-accent);font-weight:750}.w53-no-data{height:98px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#8a9b90;border-bottom:1px solid #e8eee9}.w53-no-data .ui-icon{width:28px;height:28px;opacity:.5}.w53-no-data span{font-size:11px}
.w53-water-cups{display:flex;gap:9px;margin:0 0 1px}.w53-water-cups>span{flex:1;height:24px;border:1.5px solid #c8e0ed;border-top:0;border-radius:1px 1px 7px 7px;position:relative;overflow:hidden;transform:perspective(30px) rotateX(-5deg)}.w53-water-cups i{display:block;position:absolute;bottom:0;width:100%;background:#8ec8df;border-radius:2px 2px 4px 4px}.w53-savings-track{position:relative;height:8px;background:var(--w-soft);border-radius:3px;overflow:hidden}.w53-savings-track i{height:100%;background:var(--w-accent);display:block}.w53-savings-track span{position:absolute;top:0;bottom:0;width:2px;background:#fff}.w53-page-track{display:flex;gap:4px;height:12px}.w53-page-track i{flex:1;background:var(--w-soft);border-radius:2px}.w53-page-track i.filled{background:var(--w-accent)}.w53-workout-week{display:flex;justify-content:space-between;gap:7px;margin-top:12px}.w53-workout-week>div{flex:1;display:grid;justify-items:center;gap:9px}.w53-workout-week span{display:grid;place-items:center;border:1px solid #e9e8e3;border-radius:50%;width:31px;height:31px}.w53-workout-week span.done{border-color:var(--w-accent);background:var(--w-accent);color:#fff}.w53-workout-week .ui-icon{width:17px;height:17px}.w53-workout-week span i{width:4px;height:4px;background:#d7ddd8;border-radius:50%}.w53-workout-week small{font-size:10px;color:#859188}.w53-visual-note{font-size:11px;color:#7b887f;margin:5px 0 0;text-align:center}
.w53-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px 12px 18px;border-top:1px solid #eef1ee;min-height:65px}.w53-status{font-size:11px;line-height:1.5;color:#7b887f;display:flex;align-items:center;gap:4px;min-width:0}.w53-status.met{color:#39745b}.w53-status .ui-icon{width:13px;flex-shrink:0}.w53-log-actions{display:flex;gap:5px;align-items:center;flex-shrink:0}.w53-quick{min-height:40px;display:flex;align-items:center;justify-content:center;gap:5px;padding:0 11px;border-radius:10px;font-size:11px;font-weight:700;background:var(--w-soft);color:var(--w-accent);white-space:nowrap}.w53-quick .ui-icon{width:14px;height:14px}.w53-custom{width:34px;height:40px;display:grid;place-items:center;color:#7c8c81;border-radius:9px}.w53-custom .ui-icon{width:15px;height:15px}.w53-quick:active,.goals-add:active{transform:scale(.97)}
/* Timer: legible countdown, explicit states, one primary action. */
.sheet:has(.focus-v53){max-width:440px!important;padding:22px!important;border-radius:24px 24px 0 0!important;background:#fcfdfb!important;max-height:calc(100dvh - 18px)!important}.sheet:has(.focus-v53)>.grabber{display:none}.focus-v53{padding-bottom:env(safe-area-inset-bottom,0px);color:#253d32}.focus-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:19px}.focus-heading h2{font-family:var(--display);font-size:30px;line-height:1.1;margin:5px 0 0;letter-spacing:-1px}.focus-eyebrow{font-size:11px;color:#7c8b80}.focus-heading .sheet-close{width:38px;height:38px;border-radius:50%;background:#edf1ec;box-shadow:none}.focus-modes{display:flex;background:#edf1eb;padding:4px;border-radius:12px;gap:3px}.focus-modes button{flex:1;min-height:38px;border-radius:9px;font-size:12px;color:#69786d}.focus-modes button.active{background:#fff;color:#2e5944;font-weight:700;box-shadow:0 1px 3px #213d2210}.focus-dial{position:relative;width:238px;height:238px;margin:22px auto 0}.focus-dial>svg{width:100%;height:100%;transform:rotate(-90deg);overflow:visible}.focus-track,.focus-progress{fill:none;stroke-width:5}.focus-track{stroke:#e5ece3}.focus-progress{stroke:#4f805c;stroke-linecap:round;transition:stroke-dashoffset .4s linear}.focus-dial-copy{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.focus-dial-copy>span{font-size:12px;color:#7b8b7d}.focus-dial-copy>b{font-family:var(--sans);font-size:55px;line-height:1;font-weight:500;letter-spacing:-2.5px;font-variant-numeric:tabular-nums}.focus-dial-copy>small{font-size:11px;color:#7c8b80;display:flex;align-items:center;gap:6px}.focus-dial.running .focus-dial-copy>small:before{content:"";width:5px;height:5px;border-radius:50%;background:#71965d}.focus-finish{text-align:center;margin:9px 0 20px;font-size:11px;color:#829080;min-height:16px}.focus-duration{display:flex;gap:9px;align-items:center;margin-bottom:17px}.focus-duration-presets{display:flex;gap:5px;flex:1}.focus-duration-presets button{flex:1;min-height:35px;padding:0 8px;border:1px solid #e0e7dc;border-radius:9px;font-size:12px;color:#7f8b79}.focus-duration-presets button span{display:none}.focus-duration-presets button.active{background:#e9f0e3;color:#45653b;border-color:#b9c9ad}.focus-custom{display:flex;align-items:center;gap:5px;color:#819079;font-size:10px}.focus-custom input{width:43px;height:35px;padding:0 4px;text-align:center;border:1px solid #dfe6da;background:#fff;border-radius:8px;font-size:12px;color:#48643c;appearance:textfield}.focus-custom input::-webkit-inner-spin-button{appearance:none}
.focus-link{display:flex;gap:12px;align-items:center;padding:12px;background:#f0f4ed;border:1px solid #e4eadf;border-radius:12px}.focus-link>.ui-icon:first-child{width:23px;height:23px;color:#6c8d5e}.focus-link>span{flex:1;min-width:0}.focus-link small{display:block;font-size:10px;color:#84927a;margin-bottom:3px}.focus-link select{appearance:none;display:block;width:100%;border:0;background:none;padding:0;font-size:13px;font-weight:600;color:#49623b;text-overflow:ellipsis}.focus-link>.ui-icon:last-child{width:14px;height:14px;color:#8a9a80}.focus-link select:disabled{opacity:.75}.focus-actions{display:flex;gap:10px;margin-top:18px}.focus-actions button{min-height:52px;border-radius:12px}.focus-actions #pomoToggle{display:flex;align-items:center;justify-content:center;gap:9px;flex:1;background:#285543;color:#fff;font-size:14px;font-weight:600}.focus-actions #pomoToggle .ui-icon{width:18px;height:18px}.focus-actions #pomoReset{display:grid;place-items:center;width:52px;background:#eef2e9;border:1px solid #dfe6d7;color:#638050}.focus-actions #pomoReset .ui-icon{width:19px;height:19px}.focus-footer{display:flex;align-items:center;justify-content:center;gap:8px;padding-top:19px;font-size:11px;color:#819079}.focus-footer b{font-weight:650;color:#506843}.focus-confirm{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;padding:12px;background:#faf0e8;border-radius:10px;font-size:12px}.focus-confirm>span{width:100%;color:#7d5942}.focus-confirm button{min-height:36px;padding:0 12px;border-radius:7px;background:#fff}.focus-confirm #focusDiscard{color:#9d4b31}.focus-launcher{display:flex;align-items:center;gap:13px;padding:19px;background:#edf2e8;border:1px solid #dde5d6;border-radius:16px}.focus-launcher-icon{display:grid;place-items:center;width:45px;height:45px;color:#628650;background:#fff;border-radius:50%;flex-shrink:0}.focus-launcher h3{font-size:15px;font-weight:650;margin:0}.focus-launcher p{font-size:11px;color:#829178;margin:5px 0 0}.focus-launcher>div{flex:1}.focus-launcher>button{display:flex;gap:6px;align-items:center;background:#30553d;color:#fff;padding:0 14px;min-height:42px;border-radius:10px;font-size:12px;flex-shrink:0}.focus-launcher>button .ui-icon{width:15px;height:15px}.focus-secondary{display:flex;gap:20px;padding:14px 4px}.focus-secondary button{display:flex;gap:7px;align-items:center;font-size:12px;color:#697e60;min-height:36px}.focus-secondary .ui-icon{width:16px;height:16px}
/* Corrected launch styles, independent of historic class names. */
#boot{background:#f5f7f2!important;color:#284835}.boot:before,.boot:after{display:none}.boot-v53{display:flex;flex-direction:column;align-items:center;gap:16px}.boot-v53>img{width:82px;height:82px;object-fit:contain;border-radius:23px;background:#fff;box-shadow:0 6px 22px #234b2910;animation:ahdArrival .6s ease-out both}.boot-v53>b{font-family:var(--display);font-size:34px;letter-spacing:-1px;font-weight:650}.boot-v53>p{font-size:12px;color:#84917d;margin:0}.boot-loader{display:flex;align-items:center;gap:6px;height:15px}.boot-loader i{width:5px;height:5px;border-radius:50%;background:#81a172;animation:ahdLoading 1.2s ease-in-out infinite}.boot-loader i:nth-child(2){animation-delay:.15s}.boot-loader i:nth-child(3){animation-delay:.3s}.boot-error{text-align:center;max-width:270px}.boot-error button{background:#285543;color:#fff;min-height:42px;padding:0 18px;margin:12px 5px 0;border-radius:9px}.boot-error p{font-size:13px;line-height:1.6;color:#6c7f63}.auth-transition{background:#f5f7f2!important}.auth-transition-mark{background:#fff!important;box-shadow:none!important}.auth-transition-mark span{border-color:#cad8c3!important;border-top-color:#6e9460!important}.auth-transition>b{color:#284835!important}.auth-transition>p{color:#7a8d71!important}.auth-transition>i em{background:#6e9460!important}
@keyframes ahdArrival{from{opacity:0;transform:translateY(8px) scale(.94)}to{opacity:1;transform:none}}@keyframes ahdLoading{0%,80%,100%{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-4px)}}
@media(min-width:900px){.sheet:has(.focus-v53){bottom:24px!important;border-radius:24px!important}.goals-heading{margin-bottom:28px}.goals-grid-v53,.tracker-dashboard{gap:20px!important}}
@media(max-width:600px){.goals-grid-v53,.tracker-dashboard{grid-template-columns:1fr!important;gap:14px!important}.goals-heading{margin-top:5px}.goals-heading h1{font-size:34px}.goals-heading p{font-size:12px}.goals-add{padding:0 12px;font-size:12px}.goals-sort select{max-width:110px;font-size:11px}.goals-view-options>div{gap:14px}.goals-view-options button{font-size:11px}.goals-view-options{gap:8px}.w53-card{border-radius:16px}.w53-number b{font-size:35px}.w53-line svg{height:100px}.w53-header{padding-top:17px}.w53-visual{min-height:128px}.focus-launcher{padding:15px;gap:10px}.focus-launcher h3{font-size:13px}.focus-launcher>button{padding:0 11px}.focus-secondary{gap:18px}.focus-secondary button{font-size:11px}.tracker-section .v8-section-head h2{font-size:23px}.sheet:has(.focus-v53){padding:20px!important}.focus-dial{width:218px;height:218px;margin-top:17px}.focus-finish{margin-bottom:16px}}
@media(max-height:740px){.focus-dial{width:182px;height:182px;margin-top:14px}.focus-dial-copy>b{font-size:45px}.focus-dial-copy{gap:9px}.focus-heading{margin-bottom:13px}.focus-finish{margin:6px 0 12px}.focus-duration{margin-bottom:12px}.focus-footer{padding-top:12px}.focus-actions{margin-top:12px}.focus-link{padding:10px}.sheet:has(.focus-v53){padding:16px!important}}
@media(max-width:350px){.goals-view-options>div{gap:10px}.goals-view-options button{font-size:10px}.goals-view-options>button .ui-icon{display:none}.focus-custom>span:first-child{display:none}.w53-footer{padding-left:14px}.w53-status{font-size:10px}.w53-quick{padding:0 8px}.w53-custom{width:30px}.goals-heading p{max-width:160px}.goals-add{padding:0 10px}}
@media(prefers-reduced-motion:reduce){.boot-v53>img,.boot-loader i{animation:none}.focus-progress{transition:none}.w53-quick:active,.goals-add:active{transform:none}}
/* Keep desktop cards readable and the app surface quiet. */
#app{max-width:1000px;margin-inline:auto;box-shadow:none;border-radius:0}
@media(min-width:720px){#app{padding-inline:28px}.goals-v53{padding-top:6px}}
.quick-hub-grid:has(.w53-card){grid-template-columns:1fr!important}
