:root{--bg:#edf3f0;--bg-glow-a:#89b8ad59;--bg-glow-b:#d9e7e000;--ink:#1f3833;--ink-soft:#4a6a62;--ink-faint:#7e9891;--accent:#59867c;--orb-core:#59867c47;--orb-edge:#59867c8c;--ring:#59867c38;--btn-bg:#1f38330f;--btn-bg-hover:#1f38331f;--btn-border:#1f38332e;--hairline:#1f38331a;--track-bg:#1f383309;--track-border:#1f38331a;--seg-active-bg:#59867c29;--seg-active-border:#59867c57;--switch-off:#1f383324;--switch-on:#59867c99;--switch-knob-off:#1f383380;--switch-knob-on:#edf3f0;--fill-bg:#59867c29;--fill-border:#59867c8c}@media (prefers-color-scheme:dark){:root{--bg:#0d1a1c;--bg-glow-a:#3c6e6447;--bg-glow-b:#0d1a1c00;--ink:#d9e6e2;--ink-soft:#9cb8b0;--ink-faint:#5f7c75;--accent:#8fbfb4;--orb-core:#8fbfb424;--orb-edge:#8fbfb480;--ring:#8fbfb429;--btn-bg:#d9e6e20f;--btn-bg-hover:#d9e6e221;--btn-border:#d9e6e233;--hairline:#d9e6e214;--track-bg:#ffffff09;--track-border:#d9e6e214;--seg-active-bg:#8fbfb42e;--seg-active-border:#8fbfb457;--switch-off:#d9e6e21f;--switch-on:#8fbfb48c;--switch-knob-off:#d9e6e28c;--switch-knob-on:#0b1a18;--fill-bg:#8fbfb429;--fill-border:#8fbfb48c}}*{box-sizing:border-box;margin:0}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Jost,Avenir Next,Segoe UI,sans-serif;font-weight:300;overflow:hidden}.segmented{scrollbar-width:none;background:var(--track-bg);border:1px solid var(--track-border);border-radius:999px;gap:2px;max-width:100%;padding:4px;display:flex;overflow-x:auto}.segmented::-webkit-scrollbar{display:none}.segmented button{font:inherit;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;flex:none;padding:.5rem .9rem .5rem 1.08rem;font-size:.72rem;font-weight:400;transition:color .35s,background .35s,border-color .35s}.segmented button:hover{color:var(--ink-soft)}.segmented button.active{color:var(--ink);background:var(--seg-active-bg);border-color:var(--seg-active-border)}.segmented button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (width<=430px){.segmented button{letter-spacing:.1em;padding:.5rem .6rem .5rem .7rem;font-size:.64rem}}.switch-row{font:inherit;border:none;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:1.5rem;width:100%;padding:.9rem 0;display:flex}.switch-label{letter-spacing:.14em;color:var(--ink-soft);font-size:.78rem}.switch{background:var(--switch-off);border-radius:999px;flex:none;width:38px;height:22px;transition:background .35s;position:relative}.switch .knob{background:var(--switch-knob-off);border-radius:50%;width:16px;height:16px;transition:left .35s,background .35s;position:absolute;top:3px;left:3px}.switch.on{background:var(--switch-on)}.switch.on .knob{background:var(--switch-knob-on);left:19px}.switch-row:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (prefers-reduced-motion:reduce){.switch,.switch .knob{transition:none}}.drift{z-index:20;background:var(--bg);position:fixed;inset:0}.drift canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.drift.idle{cursor:none}.drift .drift-word{text-align:center;letter-spacing:.02em;color:var(--ink);opacity:0;pointer-events:none;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(1.8rem,5vw,2.7rem);font-style:italic;font-weight:400;transition:opacity 2.2s;position:absolute;top:16%;left:0;right:0}.drift .drift-ui{left:0;right:0;bottom:max(2rem, env(safe-area-inset-bottom));flex-direction:column;align-items:center;gap:.9rem;transition:opacity 1.6s;display:flex;position:absolute}.drift .drift-patterns{gap:.35rem;display:flex}.drift .drift-patterns button{font:inherit;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;padding:.4rem .9rem .4rem 1.12rem;font-size:.7rem;font-weight:400;transition:color .4s,border-color .4s}.drift .drift-patterns button:hover{color:var(--ink-soft)}.drift .drift-patterns button.active{color:var(--ink);border-color:var(--btn-border)}.drift .drift-patterns button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.drift .drift-summary{color:var(--ink);pointer-events:none;place-items:center;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(1.5rem,4vw,2.2rem);font-style:italic;animation:1.4s both drift-summary-in;display:grid;position:absolute;inset:0}@keyframes drift-summary-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.drift .drift-summary{animation:none}}.drift.idle .drift-ui{opacity:0;pointer-events:none}.drift button.return{font:inherit;letter-spacing:.3em;text-transform:uppercase;color:var(--ink-faint);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;padding:.7rem 1.6rem .7rem 1.9rem;font-size:.78rem;font-weight:400;transition:color .4s}.drift button.return:hover{color:var(--ink-soft)}.drift button.return:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.breathing{justify-content:center;align-items:flex-start;height:100%;display:flex;position:relative;overflow-y:auto}.breathing .sky{background:radial-gradient(ellipse 90% 70% at 50% 42%, var(--bg-glow-a), var(--bg-glow-b) 70%);pointer-events:none;position:fixed;inset:0}.breathing main{text-align:center;flex-direction:column;align-items:center;gap:clamp(.45rem,1.55vh,1.55rem);max-width:100%;margin:auto 0;padding:4.25rem 1.25rem 1.5rem;display:flex;position:relative}@media (width<=600px){.breathing main{padding:2.1rem 1.25rem 4.2rem}}.breathing .word{letter-spacing:.02em;min-height:1.25em;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(1.5rem,4.6vmin,2.8rem);font-style:italic;font-weight:400}.breathing .stage{aspect-ratio:1;--breath:.72;place-items:center;width:min(56vw,27vh,290px);display:grid;position:relative}.breathing .ring{border:1px solid var(--ring);transform:scale(var(--breath));border-radius:50%;position:absolute;inset:0}.breathing .ring.r2{opacity:.6;inset:-11%}.breathing .ring.r3{opacity:.3;inset:-23%}.breathing .orb{background:radial-gradient(circle at 50% 44%, var(--orb-core) 0%, var(--orb-core) 55%, transparent 74%);box-shadow:inset 0 0 0 1.5px var(--orb-edge), 0 0 70px var(--orb-core);transform:scale(var(--breath));border-radius:50%;place-items:center;display:grid;position:absolute;inset:9%}.breathing .count{font-variant-numeric:tabular-nums;color:var(--ink-soft);letter-spacing:.06em;opacity:0;font-size:clamp(1.8rem,5.5vmin,3rem);font-weight:300;transition:opacity 1.4s}.breathing.running .count{opacity:1}.breathing .readout{color:var(--ink-soft);min-height:1.4em;font-family:Cormorant Garamond,Georgia,serif;font-size:1.06rem;font-style:italic}.breathing .setup{flex-direction:column;align-items:center;gap:1.1rem;width:min(100%,340px);display:flex}.breathing .controls{align-items:center;gap:1rem;display:flex}.breathing button.quiet{font:inherit;letter-spacing:.28em;text-transform:uppercase;color:var(--ink-faint);cursor:pointer;background:0 0;border:none;padding:.85rem .5rem .85rem .78em;font-size:.85rem;font-weight:400;transition:color .4s}.breathing button.quiet:hover{color:var(--ink-soft)}.breathing button.quiet:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.breathing button.begin{font:inherit;letter-spacing:.28em;text-transform:uppercase;color:var(--ink);background:var(--btn-bg);border:1px solid var(--btn-border);cursor:pointer;border-radius:999px;padding:.85rem 2.6rem .85rem 2.85rem;font-size:.85rem;font-weight:400;transition:background .5s}.breathing button.begin:hover{background:var(--btn-bg-hover)}.breathing button.begin:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.breathing .sessions{letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);min-height:1.1em;font-size:.72rem}@media (prefers-reduced-motion:reduce){.breathing .ring,.breathing .orb{transform:scale(.86)!important}}@media (orientation:landscape) and (height<=560px){.breathing main{grid-template-rows:repeat(6,min-content);grid-template-columns:auto minmax(0,300px);place-content:center;gap:.45rem clamp(1rem,4vw,2.5rem);padding:3.25rem 1.25rem .75rem;display:grid}.breathing main>*{grid-column:2;justify-self:center}.breathing .stage{grid-area:1/1/-1;align-self:center;width:min(40vw,66vh,250px)}.breathing .word{min-height:0}.breathing .setup{gap:.6rem}}.breathing .guide-link{letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);border-bottom:1px solid #0000;padding-bottom:.15rem;font-size:.7rem;text-decoration:none;transition:color .4s,border-color .4s}.breathing .guide-link:hover{color:var(--ink-soft);border-bottom-color:var(--btn-border)}.breathing .guide-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.focus{justify-content:center;align-items:flex-start;height:100%;display:flex;position:relative;overflow-y:auto}.focus .sky{background:radial-gradient(ellipse 90% 70% at 50% 42%, var(--bg-glow-a), var(--bg-glow-b) 70%);pointer-events:none;position:fixed;inset:0}.focus main{text-align:center;flex-direction:column;align-items:center;gap:clamp(.45rem,1.55vh,1.55rem);max-width:100%;margin:auto 0;padding:4.25rem 1.25rem 1.5rem;display:flex;position:relative}@media (width<=600px){.focus main{padding:2.1rem 1.25rem 4.2rem}}.focus .word{letter-spacing:.02em;min-height:1.25em;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(1.5rem,4.6vmin,2.8rem);font-style:italic;font-weight:400}.focus .dial{aspect-ratio:1;width:min(56vw,27vh,290px);position:relative}.focus .dial svg{width:100%;height:100%}.focus .track{fill:none;stroke:var(--ring);stroke-width:2px}.focus .arc{fill:none;stroke:var(--orb-edge);stroke-width:2.5px;stroke-linecap:round;transition:stroke-dashoffset .3s linear}.focus.break .arc{stroke:var(--accent)}.focus .dial-center{flex-direction:column;justify-content:center;align-items:center;gap:.3rem;display:flex;position:absolute;inset:0}.focus .time{font-variant-numeric:tabular-nums;letter-spacing:.05em;color:var(--ink);font-size:clamp(1.9rem,6vmin,3.3rem);font-weight:300}.focus .mode-label{letter-spacing:.34em;text-transform:uppercase;color:var(--ink-faint);padding-left:.34em;font-size:.78rem}.focus .readout{color:var(--ink-soft);min-height:1.4em;font-family:Cormorant Garamond,Georgia,serif;font-size:1.06rem;font-style:italic}.focus .setup{flex-direction:column;align-items:center;gap:1.1rem;width:min(100%,340px);display:flex}.focus input.one-thing{font:inherit;letter-spacing:.08em;text-align:center;color:var(--ink);border:none;border-bottom:1px solid var(--btn-border);background:0 0;width:min(70vw,300px);padding:.4rem .5rem;font-size:.95rem}.focus input.one-thing::placeholder{color:var(--ink-faint)}.focus input.one-thing:focus{border-bottom-color:var(--accent);outline:none}.focus button.intention{color:var(--ink-soft);cursor:text;background:0 0;border:none;border-bottom:1px solid #0000;max-width:min(80vw,34ch);padding:.1rem .2rem;font-family:Cormorant Garamond,Georgia,serif;font-size:1.25rem;font-style:italic;transition:color .4s,border-color .4s}.focus button.intention:hover{color:var(--ink);border-bottom-color:var(--btn-border)}.focus button.intention:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.focus .controls{align-items:center;gap:1rem;display:flex}.focus .controls button{font:inherit;letter-spacing:.28em;text-transform:uppercase;cursor:pointer;border-radius:999px;font-size:.85rem;font-weight:400;transition:background .5s}.focus button.begin{color:var(--ink);background:var(--fill-bg);border:1px solid var(--fill-border);padding:.95rem 3rem .95rem 3.25rem}.focus button.begin:hover{background:var(--btn-bg-hover)}.focus button.quiet{color:var(--ink-faint);background:0 0;border:none;padding:.85rem .5rem .85rem .78em}.focus button.quiet:hover{color:var(--ink-soft)}.focus button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.focus .sessions{letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);min-height:1.2em;font-size:.78rem}@media (orientation:landscape) and (height<=560px){.focus main{grid-template-rows:repeat(8,min-content);grid-template-columns:auto minmax(0,300px);place-content:center;gap:.45rem clamp(1rem,4vw,2.5rem);padding:3.25rem 1.25rem .75rem;display:grid}.focus main>*{grid-column:2;justify-self:center}.focus .dial{grid-area:1/1/-1;align-self:center;width:min(40vw,66vh,250px)}.focus .word{min-height:0}.focus .setup{gap:.6rem}}.history{justify-content:center;align-items:flex-start;height:100%;display:flex;position:relative;overflow-y:auto}.history .sky{background:radial-gradient(ellipse 90% 70% at 50% 42%, var(--bg-glow-a), var(--bg-glow-b) 70%);pointer-events:none;position:fixed;inset:0}.history main{text-align:center;flex-direction:column;align-items:center;gap:clamp(1.1rem,3vh,2rem);max-width:100%;margin:auto 0;padding:4.5rem 1.5rem 2rem;display:flex;position:relative}@media (width<=600px){.history main{padding:2rem 1.5rem 5.5rem}}.history .word{letter-spacing:.02em;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(2rem,6vw,3.1rem);font-style:italic;font-weight:400}.history .today{letter-spacing:.24em;text-transform:uppercase;color:var(--ink-soft);font-size:.85rem}.history .intentions{color:var(--ink-soft);max-width:min(80vw,36ch);font-family:Cormorant Garamond,Georgia,serif;font-size:1.15rem;font-style:italic;line-height:1.7}.history .dots{grid-template-columns:repeat(7,auto);gap:clamp(.55rem,1.6vw,.85rem);margin-top:clamp(.6rem,2vh,1.4rem);display:grid}.history .dot{border:1px solid var(--ring);border-radius:50%;width:clamp(11px,2.6vw,14px);height:clamp(11px,2.6vw,14px)}.history .dot.lit{background:var(--accent);border-color:#0000}.history .dot.today-dot{border-color:var(--accent)}.history .caption{letter-spacing:.3em;text-transform:uppercase;color:var(--ink-faint);font-size:.72rem}.history .totals{letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);max-width:34ch;font-size:.78rem;line-height:2}.history .sync-link{font:inherit;cursor:pointer;letter-spacing:.26em;text-transform:uppercase;color:var(--ink-faint);border:none;border-bottom:1px dashed var(--btn-border);background:0 0;padding-bottom:.25rem;padding-left:.26em;font-size:.72rem;text-decoration:none;transition:color .4s}.history .sync-link:hover{color:var(--ink-soft)}.history .sync-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.history .sync-status{letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);align-items:center;gap:.9rem;font-size:.72rem;display:flex}.history .sync-status button{font:inherit;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);border:none;border-bottom:1px dashed var(--btn-border);cursor:pointer;background:0 0;padding:0 0 .2rem .2em;font-size:.72rem;transition:color .4s}.history .sync-status button:hover{color:var(--ink-soft)}.history .sync-status button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.history .sync-confirm{border:1px solid var(--btn-border);background:var(--btn-bg);border-radius:14px;flex-direction:column;align-items:center;gap:.9rem;max-width:40ch;padding:1.5rem 1.6rem 1.3rem;animation:.5s both sync-confirm-in;display:flex}@keyframes sync-confirm-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.history .sync-confirm{animation:none}}.history .sync-confirm p{color:var(--ink-soft);letter-spacing:.01em;text-wrap:pretty;margin:0;font-size:.92rem;line-height:1.65}.history .sync-confirm p.fine{color:var(--ink-faint);font-size:.82rem}.history .sync-confirm-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.6rem 1.1rem;margin-top:.2rem;display:flex}.history .sync-confirm-actions .continue{letter-spacing:.24em;text-transform:uppercase;color:var(--ink);border:1px solid var(--btn-border);white-space:nowrap;border-radius:999px;padding:.7rem 1.5rem .7rem 1.74rem;font-size:.75rem;text-decoration:none;transition:background .4s}.history .sync-confirm-actions .continue:hover{background:var(--btn-bg-hover)}.history .sync-confirm-actions button{font:inherit;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-faint);white-space:nowrap;cursor:pointer;background:0 0;border:none;padding:.7rem .2rem .7rem .44rem;font-size:.75rem;transition:color .4s}.history .sync-confirm-actions button:hover{color:var(--ink-soft)}.history .sync-confirm a:focus-visible,.history .sync-confirm button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.history .about{border-top:1px solid var(--hairline);flex-direction:column;align-items:center;gap:.7rem;width:min(100%,400px);margin-top:.6rem;padding-top:1.4rem;display:flex}.history .about-row{letter-spacing:.2em;text-transform:uppercase;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.5rem 1rem;font-size:.72rem;display:flex}.history .about-row span{color:var(--ink-faint);letter-spacing:.24em;width:100%}.history .about-row a{color:var(--ink-soft);border-bottom:1px solid #0000;padding-bottom:.15rem;text-decoration:none;transition:color .4s,border-color .4s}.history .about-row a:hover{color:var(--ink);border-bottom-color:var(--btn-border)}.history .about-row a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.history .about-row.quiet a{color:var(--ink-faint)}.brand{z-index:5;letter-spacing:.28em;text-transform:uppercase;color:var(--ink-faint);pointer-events:none;-webkit-user-select:none;user-select:none;font-size:.68rem;position:fixed;top:clamp(1rem,3.4vh,1.7rem);left:clamp(1rem,4vw,1.9rem)}@media (width<=600px){.brand{top:.85rem;left:.9rem}}.tool{height:100%}.tool.hidden{display:none}.feature-nav{z-index:10;gap:.4rem;display:flex;position:fixed;top:clamp(1rem,4vh,2rem);left:50%;transform:translate(-50%)}.feature-nav button{font:inherit;letter-spacing:.26em;text-transform:uppercase;color:var(--ink-faint);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;padding:.5rem 1.2rem .5rem 1.46rem;font-size:.75rem;font-weight:400;transition:color .4s,border-color .4s,background .4s}.feature-nav button:hover{color:var(--ink-soft)}.feature-nav button.active{color:var(--ink);border-color:var(--btn-border);background:var(--btn-bg)}.feature-nav button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.feature-nav .breath-dot{background:var(--accent);vertical-align:middle;width:8px;height:8px;transform:scale(calc(var(--breath-live,1) * 1.15));border-radius:50%;margin-left:.6em;display:inline-block}.feature-nav .badge{font-variant-numeric:tabular-nums;letter-spacing:.08em;color:var(--accent);margin-left:.6em}@media (width<=600px){.feature-nav{top:auto;bottom:max(1rem, env(safe-area-inset-bottom))}}
