:root{color-scheme:light;--ink:oklch(22% .034 256);--muted:oklch(51% .025 255);--quiet:oklch(58% .025 255);--paper:oklch(99% .004 250);--blue:oklch(61% .19 255);--mint:oklch(68% .12 161);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:radial-gradient(ellipse 50% 500px at 2% 1%,#dceeff 0,transparent 80%),radial-gradient(ellipse 45% 400px at 90% 0,#e6fbea 0,transparent 80%),var(--paper);font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{color:inherit}a,button,input{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--blue);outline-offset:6px}button{cursor:pointer}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}p,h1,h2,h3{margin:0}h1,h2,h3{font-weight:700;line-height:1.25;letter-spacing:-.045em}h1{font-size:clamp(38px,4.4vw,60px)}h2{font-size:clamp(30px,3.1vw,42px)}h3{font-size:24px}.wrap{width:min(1120px,calc(100% - 80px));margin-inline:auto}.centered{text-align:center}.eyebrow{color:var(--quiet);font-size:16px;letter-spacing:.06em;margin-bottom:14px}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}.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}.skip-link{position:fixed;left:20px;top:-80px;z-index:10;padding:10px 20px;background:var(--paper)}.skip-link:focus{top:12px}.site-header{display:flex;align-items:center;justify-content:space-between;height:84px;position:relative;z-index:2}.brand{display:inline-flex;align-items:center;gap:11px;font-size:23px;font-weight:750;letter-spacing:-.04em}.brand img{display:block}.site-header nav{display:flex;gap:34px;align-items:center;font-size:15px;color:var(--muted)}.site-header nav>a{padding-block:10px;transition:color .2s}.site-header nav>a:hover{color:var(--blue)}.site-header .nav-download{padding:9px 20px;border-radius:10px;background:var(--ink);color:var(--paper);font-size:14px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:600px;align-items:center;position:relative;padding-block:38px 65px}.hero:before{content:"";position:absolute;z-index:-1;bottom:0;left:calc((1120px - 100vw)/2);width:100vw;height:240px;background:radial-gradient(ellipse at 15% 100%,#fff3df,transparent 65%)}.hero-copy{position:relative;z-index:1;padding-bottom:20px}.hero-description{margin-top:25px;color:var(--muted);font-size:18px;line-height:1.6}.hero-focus{margin:24px 0;color:var(--muted);font-size:18px}.hero-focus strong{font-weight:600;letter-spacing:.06em}.store-button{display:inline-flex;align-items:center;gap:10px;padding:10px 20px 10px 14px;border-radius:11px;background:var(--ink);color:var(--paper);text-align:left;line-height:1.3;box-shadow:0 3px 2px #15273b08;transition:transform .25s,background .25s}.store-button:hover{background:#233b57;transform:translateY(-2px)}.store-button svg{width:29px;height:34px}.store-button strong{display:block;font-size:17px;letter-spacing:.01em;font-weight:600}.store-button small{display:block;font-size:11px;color:#d5dfeb;margin-top:2px}.device-note{font-size:14px;color:var(--quiet);margin-top:12px}.hero-art{height:530px;position:relative}.phone{background-image:url('assets/phones.png');background-repeat:no-repeat;background-size:396% 100%;aspect-ratio:448/887;position:relative;filter:drop-shadow(7px 17px 12px #27334416)}.phone-today{background-position:11.31% center}.phone-goals{background-position:50% center}.hero-phone{width:280px;position:absolute;top:-20px;left:125px;transform:rotate(12deg);z-index:1}.orb{position:absolute;border-radius:50%;pointer-events:none;background:radial-gradient(ellipse at 70% 20%,#ffffff50,transparent 60%),linear-gradient(135deg,#d4d4ff80,#c6edff70 65%,#d7fff040);border:1px solid #e1f2ff;box-shadow:inset 2px 1px 4px #fcfdffff,inset -2px -1px 3px #98d4ff50}.hero-orb{width:470px;height:330px;left:0;top:80px;transform:rotate(-35deg);border-color:#b8dfff}.handwritten{font-family:"Kaiti SC",STKaiti,KaiTi,serif;color:#8b98a8;font-size:19px;letter-spacing:.15em;line-height:1.7;transform:rotate(-8deg);position:absolute}.hero-note{right:-4px;bottom:50px}.features{padding:46px 0 52px;background:linear-gradient(180deg,#fbfdff,#edf8fe 100%)}.section-heading{margin-bottom:32px}.section-heading .eyebrow{font-size:15px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.feature-card{background:#ffffff60;border:1px solid #fbfdff;border-radius:26px;padding:28px 38px 30px;box-shadow:0 12px 30px #7095b20d;transition:transform .3s,box-shadow .3s}.feature-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #7095b21c}.feature-top{display:flex;align-items:center;gap:26px;margin-bottom:20px}.icon-tile{width:64px;height:64px;display:inline-flex;align-items:center;justify-content:center;border-radius:20px;flex-shrink:0}.icon-tile svg{width:34px;height:34px;stroke-width:1.7}.blue{color:#2c89ff;background:linear-gradient(110deg,#e1edff,#bcdfff 75%,#e1ecff)}.mint{color:#4bc59c;background:linear-gradient(120deg,#e1f9ec,#c5eedc 75%,#e8f8eb)}.aqua{color:#33baca;background:linear-gradient(120deg,#dcf8fc,#b3e9ed 75%,#def4ec)}.lavender{color:#8863fb;background:linear-gradient(110deg,#eee9ff,#ddd7ff 75%,#f3eefe)}.feature-card p{font-size:17px;color:var(--muted);line-height:1.55}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:65px}.detail-section{overflow:hidden}.today-section{background:radial-gradient(ellipse at 20% 30%,#e5f2ff90,transparent 57%),radial-gradient(ellipse at 30% 100%,#fff2dc85,transparent 45%)}.today-section .split{min-height:610px}.visual{position:relative;height:560px}.today-phone{width:267px;position:absolute;left:155px;top:-4px;transform:rotate(-6deg)}.today-orb{width:340px;height:330px;left:110px;top:122px;transform:rotate(-22deg);background:linear-gradient(130deg,#f4e5ef80,#d8f3fb80)}.today-note{left:3px;bottom:107px}.section-description{font-size:18px;color:var(--muted);line-height:1.65;margin-top:22px}.steps{list-style:none;padding:0;margin:34px 0 0;display:grid;gap:24px}.steps li{display:flex;align-items:center;gap:22px}.steps h3{font-size:19px;letter-spacing:-.025em;margin-bottom:5px}.steps p{color:var(--quiet);font-size:16px}.steps .icon-tile{width:58px;height:58px;border-radius:16px}.goals-section{background:radial-gradient(ellipse at 75% 15%,#e0fae980,transparent 55%),radial-gradient(ellipse at 15% 90%,#fff4e480,transparent 50%),#fafcfd}.goals-section .split{min-height:555px}.goal-copy{padding:38px 0}.goal-copy h2{font-size:clamp(27px,2.8vw,37px);white-space:nowrap}.goal-name{font-size:23px;color:var(--muted);margin:13px 0 20px}.goal-demo{width:100%;max-width:475px}.progress-row{display:flex;align-items:center;gap:32px}.progress-row progress{appearance:none;border:0;width:100%;height:22px;background:#edf2f8;border-radius:20px;overflow:hidden}.progress-row progress::-webkit-progress-bar{background:#edf2f8;border-radius:20px}.progress-row progress::-webkit-progress-value{background:linear-gradient(90deg,#a9b8ff,#5ecfd0);border-radius:20px}.progress-row progress::-moz-progress-bar{background:linear-gradient(90deg,#a9b8ff,#5ecfd0);border-radius:20px}.progress-row output{font-size:27px;font-weight:650;min-width:62px;font-variant-numeric:tabular-nums}.goal-tasks{margin-top:16px;background:#ffffff65;padding:13px 20px;border:1px solid #fcfdff;border-radius:22px;width:82%}.goal-tasks label{display:flex;gap:16px;align-items:center;min-height:42px;cursor:pointer;font-size:16px;color:#536174}.goal-tasks input{appearance:none;display:grid;place-items:center;width:22px;height:22px;flex-shrink:0;border:1.5px solid #aebccc;border-radius:50%;margin:0;cursor:pointer}.goal-tasks input:checked{background:#59c89d;border-color:#59c89d}.goal-tasks input:checked:after{content:"";width:9px;height:5px;border-left:2px solid #fafffd;border-bottom:2px solid #fafffd;transform:translateY(-1px) rotate(-45deg)}.demo-hint{font-size:13px;color:var(--quiet);margin:8px 0 0 20px}.goal-art{height:555px}.goal-phone{position:absolute;width:257px;left:177px;top:5px;transform:rotate(4deg)}.goal-orb{width:390px;height:370px;left:80px;top:45px;transform:rotate(-25deg);background:linear-gradient(120deg,#e5faf980,#e0fcf050,#c8edff70)}.goal-note{left:2px;bottom:127px}.focus-section{overflow:hidden;background:radial-gradient(ellipse at 23% 50%,#e5f1ff,transparent 62%)}.focus-section .split{min-height:420px}.timer-art{position:relative;height:410px;display:flex;align-items:center;justify-content:center}.timer-face{width:350px;height:350px;border-radius:50%;background:radial-gradient(circle at 28% 23%,#ffffffb0,transparent 57%),linear-gradient(125deg,#d4e5ff99,#eee9ff90 55%,#cef8ffb0);border:2px solid #ffffffbb;box-shadow:inset 2px 4px 8px #ffffffbb,inset -2px -3px 7px #c3eaff80,0 12px 26px #c6dff62b;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1}.timer-digits{font-size:72px;line-height:1.2;letter-spacing:-.045em;font-weight:450;font-variant-numeric:tabular-nums}.timer-face>span:nth-child(2){font-size:16px;margin-top:3px}.timer-toggle{width:88px;height:88px;margin-top:20px;border-radius:50%;border:1px solid #ffffff80;background:linear-gradient(120deg,#fafbff,#adc4fa 78%,#deebff);box-shadow:2px 10px 17px #859ed44d,inset 3px 3px 8px #ffffffb0;display:grid;place-items:center;transition:transform .25s}.timer-toggle:hover{transform:scale(1.05)}.pause-mark{width:22px;height:28px;border-left:7px solid #fafdff;border-right:7px solid #fafdff;border-radius:2px}.timer-toggle[aria-pressed="true"] .pause-mark{width:0;height:0;border-left:21px solid #fafdff;border-top:13px solid transparent;border-bottom:13px solid transparent;border-right:0;border-radius:0;margin-left:5px}.timer-back{width:370px;height:350px;left:0;top:10px;transform:rotate(-30deg)}.timer-note{left:-15px;bottom:31px;font-size:17px;z-index:2}.philosophy{padding:22px 0 38px;background:radial-gradient(ellipse at 50% 0,#eef4ff70,transparent 70%),linear-gradient(#fcfdff,#fffaf1a0)}.philosophy .eyebrow{margin-bottom:10px}.principles{display:flex;justify-content:center;flex-wrap:wrap;gap:15px;list-style:none;padding:0;margin:24px 0 17px}.principles li{border:1px solid #e7ebf0;border-radius:99px;box-shadow:inset 0 2px 4px #27395508,0 2px 5px #27395503;padding:7px 22px;font-size:15px;color:var(--muted);background:#ffffff50}.philosophy>div>p:last-child{font-size:16px;color:var(--muted)}.pages-copy{align-self:center;padding-top:22px}.pages-copy h2{font-size:32px}.pages-copy>p{color:var(--muted);font-size:17px;line-height:1.5;margin-top:13px}.page-labels{display:flex;gap:58px;margin-top:22px;text-align:center}.page-labels>div{display:flex;align-items:center;flex-direction:column;font-size:14px}.page-labels .icon-tile{width:45px;height:45px;border-radius:14px;margin-bottom:6px}.page-labels svg{width:25px;height:25px}.page-labels strong{font-weight:600}.page-labels>div>span:last-child{font-size:13px;color:var(--quiet)}.download-section{padding:30px 0 16px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 0% 30%,#d8f2ffb0,transparent 60%),radial-gradient(ellipse at 100% 0%,#e8f9e990,transparent 60%),#fffaf550}.download-section .wrap{position:relative;z-index:1}.download-section h2{font-size:28px;letter-spacing:-.03em}.footer-brand{display:flex;width:fit-content;margin:20px auto 16px;font-size:29px}.final-download strong{font-size:15px}.final-download{padding-block:8px}.final-download svg{width:24px;height:28px}.download-status{font-size:13px;color:var(--quiet);margin-top:10px}.footer-note{right:13px;top:78px}.footer-orb-left{width:330px;height:220px;left:-90px;top:60px;background:linear-gradient(130deg,#dce7ff80,#eee3ff70,#fff6e580);transform:rotate(25deg)}.footer-orb-right{width:300px;height:240px;right:-70px;top:85px;background:linear-gradient(130deg,#d9f5ff80,#effef550);transform:rotate(-25deg)}.site-footer{background:#fffaf8;color:var(--quiet);text-align:center;padding:12px 24px 20px;font-size:12px}.footer-links{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:4px}.footer-links button,.footer-links a{border:0;background:none;font-size:13px;color:var(--quiet);padding:6px}.footer-links button:hover,.footer-links a:hover{color:var(--ink)}[hidden]{display:none!important}dialog{border:1px solid #dfe8f3;border-radius:24px;background:var(--paper);width:min(520px,calc(100% - 40px));padding:38px;color:var(--ink);box-shadow:0 30px 100px #1c2c4d33}dialog::backdrop{background:#1a29494d;backdrop-filter:blur(6px)}dialog h2{font-size:25px;margin-bottom:18px}dialog p{font-size:16px;color:var(--muted);margin-top:12px}.dialog-close{position:absolute;right:14px;top:10px;width:36px;height:36px;border:0;background:transparent;font-size:27px}
.hero{isolation:isolate}.hero:before{left:50%;transform:translateX(-50%)}
@media(min-width:1400px){.hero{min-height:650px}.hero-art{height:555px}.hero-phone{width:290px;top:-12px}.hero-note{right:0}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.hero{min-height:560px;gap:10px}.hero-art{height:470px}.hero-phone{width:245px;left:80px}.hero-orb{width:365px;height:290px;left:0}.hero-note{right:-15px;bottom:20px;font-size:17px}.split{gap:36px}.feature-card{padding:25px}.feature-top{gap:22px}.feature-card p{font-size:16px}.today-phone{left:105px;width:250px;top:14px}.today-note{font-size:17px}.goal-phone{left:130px;width:240px;top:27px}.goal-note{font-size:17px;left:-15px}.timer-face{width:320px;height:320px}.timer-back{width:330px;height:320px;left:-5px;top:33px}.timer-note{font-size:15px;left:-10px}.pages-copy h2{font-size:27px}.page-labels{gap:40px}.footer-note{font-size:17px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.site-header{height:72px}.brand{font-size:21px}.site-header nav{gap:20px;font-size:14px}.site-header .nav-download{display:none}.hero{grid-template-columns:1fr;padding:32px 0 20px;text-align:center;gap:0}.hero h1{font-size:clamp(35px,6.5vw,49px)}.hero .eyebrow{font-size:14px}.hero-description{font-size:16px;margin-top:22px}.hero-focus{font-size:16px;margin:20px 0}.hero-copy{padding-bottom:0}.device-note{font-size:13px}.hero-art{width:100%;max-width:440px;margin:22px auto 0;height:425px}.hero-phone{width:218px;left:calc(50% - 95px);top:0;transform:rotate(10deg)}.hero-orb{width:340px;height:240px;left:calc(50% - 170px);top:100px}.hero-note{right:0;bottom:24px;font-size:16px;text-align:left}.features{padding:34px 0}.section-heading{margin-bottom:25px}.section-heading h2{font-size:clamp(25px,4.5vw,32px)}.feature-grid{gap:12px}.feature-card{padding:20px 15px;border-radius:20px}.feature-top{display:block;margin-bottom:14px}.feature-top .icon-tile{width:48px;height:48px;border-radius:15px;margin-bottom:13px}.feature-top svg{width:28px;height:28px}.feature-top h3{font-size:21px}.feature-card p{font-size:14px;line-height:1.65}.feature-card br{display:none}.split{grid-template-columns:1fr;gap:15px}.today-section .split{padding-block:42px 22px}.today-art{grid-row:2;height:430px;width:min(400px,100%);margin-inline:auto}.today-phone{left:calc(50% - 60px);width:214px;top:0}.today-orb{width:280px;height:270px;left:60px;top:80px}.today-note{bottom:85px;left:4px}.detail-copy{width:min(450px,100%);margin-inline:auto}.detail-copy h2{font-size:32px}.eyebrow{font-size:14px;margin-bottom:10px}.section-description{font-size:16px;margin-top:17px}.steps{gap:21px;margin-top:25px}.steps .icon-tile{width:48px;height:48px;border-radius:14px}.steps h3{font-size:17px}.steps p{font-size:15px}.steps li{gap:18px}.goals-section .split{padding-block:0 15px}.goal-copy{padding:35px 0 0}.goal-copy h2{font-size:clamp(25px,5.6vw,32px);white-space:normal}.goal-name{font-size:20px}.goal-demo{max-width:450px}.goal-tasks{width:100%}.goal-art{height:425px;width:min(400px,100%);margin-inline:auto}.goal-phone{left:calc(50% - 50px);top:0;width:207px}.goal-orb{left:70px;width:290px;height:290px;top:28px}.goal-note{left:9px;bottom:115px}.focus-section .split{padding:35px 0 22px}.focus-section .detail-copy{grid-row:1}.timer-art{height:350px;width:min(400px,100%);margin-inline:auto}.timer-face{width:290px;height:290px;margin-left:10px}.timer-digits{font-size:62px}.timer-face>span:nth-child(2){font-size:14px}.timer-toggle{width:74px;height:74px}.timer-back{width:295px;height:280px;top:30px;left:8px}.timer-note{bottom:6px;left:0;font-size:15px}.philosophy{padding:36px 0 30px}.philosophy h2{font-size:32px}.principles{gap:10px;margin:23px 0 19px}.principles li{font-size:13px;padding:6px 14px}.philosophy>div>p:last-child{font-size:14px;max-width:340px;margin-inline:auto}.pages-copy{text-align:center;padding:0}.pages-copy h2{font-size:27px}.pages-copy>p{font-size:16px}.page-labels{justify-content:center;gap:50px}.download-section{padding-top:35px}.download-section h2{font-size:24px}.footer-note{display:none}.footer-orb-left{width:200px;left:-120px}.footer-orb-right{width:200px;right:-120px}.footer-brand{font-size:27px}.site-footer{padding-bottom:22px}}
@media(max-width:390px){.site-header nav{gap:15px}.feature-grid{gap:8px}.feature-card{padding:17px 11px}.feature-card p{font-size:13px}.hero-art{height:400px}.hero-phone{width:205px}.hero-note{font-size:14px}.today-phone{left:125px;width:195px}.goal-phone{left:140px;width:190px}.visual{height:405px}.timer-face{width:270px;height:270px}.timer-back{width:275px;height:270px;left:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Keep the complete phone artwork inside its own grid column. */
.pages-section {
  padding-block: 32px;
  background: radial-gradient(ellipse at 15% 65%, #dfedffb0, transparent 65%);
}
.pages-section .split {
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
  gap: clamp(32px, 5vw, 64px);
  min-height: 296px;
}
.phone-lineup {
  display: block;
  width: 100%;
  height: auto;
  min-width: 0;
  align-self: center;
}
.pages-copy {
  min-width: 0;
  padding-top: 0;
}
.hero-orb {
  max-width: calc(100% - 60px);
  left: 50%;
  transform: translateX(-50%) rotate(-35deg);
}
@media (max-width: 760px) {
  .pages-section { padding-block: 35px 24px; }
  .pages-section .split {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
    min-height: 0;
  }
  .phone-lineup {
    grid-row: 2;
    width: min(100%, 560px);
    justify-self: center;
  }
}
