@font-face{font-family:Hanken Grotesk;font-weight:300 600;font-display:swap;src:url(/fonts/hanken-grotesk-latin.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400-latin.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500-latin.woff2)format("woff2")}:root{--ground:#f7f8f7;--surface:#fff;--surface-2:#eef2f1;--ink:#141a1c;--ink-2:#3a4447;--muted:#6e777a;--line:#e2e7e6;--sea:#93d3cb;--foam:#e3f3ef;--sand:#f6dcc5;--sky:#d5ddf4;--accent:#2f8f86;--accent-soft:#e0f1ee;--danger:#b0442a;--page:#e8edec;--shadow:0 1px 2px #141a1c0a, 0 10px 30px -14px #141a1c29;--font:"Hanken Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--grain:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)' opacity='.6'/></svg>")}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ground:#0f1314;--surface:#171d1f;--surface-2:#1f2629;--ink:#edf1f0;--ink-2:#c5cdcc;--muted:#99a3a5;--line:#283033;--sea:#2a5d58;--foam:#16292a;--sand:#4d3526;--sky:#26304b;--accent:#6ccbbf;--accent-soft:#173532;--danger:#f09a80;--page:#070a0b;--shadow:0 1px 2px #0000004d, 0 10px 30px -14px #0009}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ground:#0f1314;--surface:#171d1f;--surface-2:#1f2629;--ink:#edf1f0;--ink-2:#c5cdcc;--muted:#99a3a5;--line:#283033;--sea:#2a5d58;--foam:#16292a;--sand:#4d3526;--sky:#26304b;--accent:#6ccbbf;--accent-soft:#173532;--danger:#f09a80;--page:#070a0b;--shadow:0 1px 2px #0000004d, 0 10px 30px -14px #0009}[hidden]{display:none!important}*{box-sizing:border-box}body{background:var(--page);color:var(--ink);font:400 15px/1.5 var(--font);-webkit-font-smoothing:antialiased;margin:0}button,input{font:inherit;color:inherit}button:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}p{margin:0}#root{justify-items:center;min-height:100dvh;display:grid}.screen{background:var(--ground);width:100%;max-width:440px;height:100dvh;padding-top:env(safe-area-inset-top);flex-direction:column;display:flex;position:relative;overflow:hidden}@media (width>=600px){#root{align-items:center;padding:28px 16px}.screen{height:min(860px,100dvh - 56px);box-shadow:0 40px 80px -30px #0b0f1059, 0 0 0 1px var(--line);border-radius:36px}}.scroll{overscroll-behavior:contain;scrollbar-width:none;flex-direction:column;flex:1;gap:18px;min-height:0;padding:8px 22px 32px;display:flex;overflow-y:auto}.scroll>*{flex-shrink:0}.scroll::-webkit-scrollbar{display:none}.carousel::-webkit-scrollbar{display:none}.wheel::-webkit-scrollbar{display:none}.foot{padding:10px 22px calc(24px + env(safe-area-inset-bottom));gap:4px;display:grid}.stack{gap:8px;display:grid}.label{font:400 11px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.h1{font:500 38px/1.02 var(--font);letter-spacing:-.035em;text-wrap:balance;margin:0}.h2{font:500 27px/1.08 var(--font);letter-spacing:-.028em;text-wrap:balance;margin:0}.h3{font:500 19px/1.2 var(--font);letter-spacing:-.015em;margin:0}.muted{color:var(--muted)}.small{font-size:13.5px}.center{text-align:center}.wordmark{font:600 17px/1 var(--font);letter-spacing:-.01em}.pill{cursor:pointer;font:500 16px/1 var(--font);letter-spacing:-.005em;background:var(--ink);color:var(--ground);border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:17px 24px;display:inline-flex}.pill.block{width:100%}.pill.soft{background:var(--surface-2);color:var(--ink)}.pill:disabled{opacity:.3;cursor:not-allowed}.link{color:var(--muted);cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:4px;background:0 0;border:0;padding:8px;font-size:14px}.card{background:var(--surface);box-shadow:var(--shadow);border-radius:24px;gap:10px;padding:18px;display:grid}.row{align-items:center;gap:12px;display:flex}.row.between{justify-content:space-between}.tag{font:400 11px/1 var(--mono);letter-spacing:.05em;text-transform:uppercase;background:var(--surface-2);color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;padding:7px 10px;display:inline-flex}.tag.accent{background:var(--accent-soft);color:var(--accent)}.avatar{width:44px;height:44px;font:500 15px/1 var(--font);background:var(--ink);color:var(--ground);border-radius:50%;flex:none;place-items:center;display:grid}.iconbtn{background:var(--surface);width:42px;height:42px;box-shadow:var(--shadow);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.iconbtn svg{width:18px;height:18px}.topbar{justify-content:space-between;align-items:center;gap:10px;min-height:44px;padding:14px 22px 0;display:flex}.spacer{flex:none;width:42px}.error{color:var(--danger);font-size:14px}.glow{isolation:isolate;background:radial-gradient(110% 80% at 0% 0%, var(--sea) 0%, transparent 58%), radial-gradient(90% 80% at 100% 100%, var(--sand) 0%, transparent 62%), radial-gradient(70% 60% at 80% 12%, var(--sky) 0%, transparent 62%), var(--foam);position:relative;overflow:hidden}.glow:after{content:"";background:var(--grain);opacity:.09;mix-blend-mode:multiply;pointer-events:none;z-index:-1;position:absolute;inset:0}.carousel{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab;gap:14px;margin-inline:-22px;padding:6px 22px 14px;display:flex;position:relative;overflow-x:auto}.carousel.centered{padding-inline:calc(50% - var(--item) / 2)}.carousel>*{scroll-snap-align:center;flex:none}.carousel.dragging{scroll-snap-type:none;cursor:grabbing}.carousel.dragging *{-webkit-user-select:none;user-select:none}.hero{aspect-ratio:1;border-radius:30px;place-items:center;max-width:100%;display:grid}.ring{width:86%;height:86%}.ring .spin{transform-origin:150px 150px;animation:70s linear infinite spin}.ring text{font:400 10.4px var(--mono);fill:var(--ink-2)}.ring .big{font:300 104px/1 var(--font);letter-spacing:-.06em;fill:var(--ink)}.ring .cap{font:400 14px var(--font);letter-spacing:-.01em;fill:var(--ink-2)}@keyframes spin{to{transform:rotate(360deg)}}.progress{grid-template-columns:repeat(var(--n,6), 1fr);gap:5px;padding:12px 22px 0;display:grid}.progress i{background:var(--line);border-radius:2px;height:3px}.progress i.on{background:var(--ink)}.opts{gap:10px;display:grid}.opt{text-align:left;background:var(--surface);cursor:pointer;box-shadow:var(--shadow);border:0;border-radius:20px;gap:2px;padding:16px 18px;display:grid}.opt b{letter-spacing:-.01em;font-size:16.5px;font-weight:500}.opt span{color:var(--muted);font-size:13.5px}.opt[aria-pressed=true]{background:var(--ink);color:var(--ground)}.opt[aria-pressed=true] span{color:inherit;opacity:.7}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{background:var(--surface);box-shadow:var(--shadow);cursor:pointer;border:0;border-radius:999px;padding:11px 16px;font-size:14.5px}.chip[aria-pressed=true]{background:var(--ink);color:var(--ground)}.wheel-wrap{height:240px;position:relative}.wheel-wrap:before{content:"";background:var(--surface);height:52px;box-shadow:var(--shadow);border-radius:18px;margin-top:-26px;position:absolute;top:50%;left:0;right:0}.wheel{scroll-snap-type:y mandatory;scrollbar-width:none;height:100%;padding-block:94px;position:relative;overflow-y:auto;-webkit-mask-image:linear-gradient(#0000,#000 32% 68%,#0000);mask-image:linear-gradient(#0000,#000 32% 68%,#0000)}.wheel>div{scroll-snap-align:center;height:52px;font:300 30px/1 var(--font);letter-spacing:-.03em;color:var(--muted);font-variant-numeric:tabular-nums;cursor:pointer;place-items:center;display:grid}.wheel>div.on{color:var(--ink);font-weight:500}.wheel-unit{color:var(--muted);pointer-events:none;font-size:14px;position:absolute;top:50%;right:22px;transform:translateY(-50%)}.field{gap:8px;display:grid}.field label,.field .label{font:400 11px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.field input{width:100%;min-height:54px;font:400 17px var(--font);background:var(--surface);box-shadow:var(--shadow);color:var(--ink);border:0;border-radius:999px;padding:15px 18px}.field .hint{color:var(--muted);padding-inline:18px;font-size:13px}.search{z-index:5;position:relative}.search>svg{width:18px;height:18px;color:var(--muted);pointer-events:none;margin-top:-9px;position:absolute;top:50%;left:18px}.field .search input{padding-left:46px;padding-right:50px}.search .x{background:var(--surface-2);width:32px;height:32px;color:var(--ink-2);cursor:pointer;border:0;border-radius:50%;place-items:center;margin-top:-16px;display:grid;position:absolute;top:50%;right:9px}.search .x svg{width:14px;height:14px}.suggest{background:var(--surface);border-radius:22px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 1px 2px #141a1c0f,0 22px 44px -18px #141a1c57}.suggest .label{padding:10px 14px 6px}.suggest button{color:var(--ink);text-align:left;cursor:pointer;font:400 15.5px var(--font);background:0 0;border:0;border-radius:16px;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 14px;display:flex}.suggest button:hover,.suggest button:focus-visible{background:var(--surface-2)}.suggest small{font:400 10.5px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.suggest .own b{font-weight:500}.shade{color:#fff;background-position:50%;background-size:cover}.shade .small{color:#ffffffe0}.wave{--item:220px;width:var(--item);text-align:left;cursor:pointer;border:0;border-radius:24px;flex-direction:column;justify-content:space-between;align-items:flex-start;height:196px;padding:16px;transition:transform .2s;display:flex}.wave .name{font:500 24px/1 var(--font);letter-spacing:-.025em;display:block}.wave .small{margin-top:6px;display:block}.wave .fit{color:#141a1c;background:#ffffffeb}.wave .fit.off{visibility:hidden}.analyze{justify-content:center;gap:28px}.orbit{align-self:center;width:180px;height:180px}.orbit circle{fill:none}.orbit .t{stroke:var(--line);stroke-width:2px}.orbit .a{stroke:var(--ink);stroke-width:2.5px;stroke-linecap:round;stroke-dasharray:90 400;transform-origin:90px 90px;animation:1.2s linear infinite spin}.checks{place-self:center;gap:14px;margin:0;padding:0;list-style:none;display:grid}.checks li{color:var(--muted);align-items:center;gap:12px;font-size:17px;transition:color .3s;display:flex}.checks li i{width:20px;height:20px;box-shadow:inset 0 0 0 1.5px var(--line);border-radius:50%;flex:none;place-items:center;display:grid}.checks li.on{color:var(--ink)}.checks li.on i{background:var(--ink);box-shadow:none}.checks li.on i:after{content:"";border:1.8px solid var(--ground);border-top:0;border-right:0;width:8px;height:4px;transform:rotate(-45deg)translate(1px,-1px)}.trip{border-radius:26px;gap:14px;padding:20px;display:grid}.trip .days{font:300 72px/.85 var(--font);letter-spacing:-.05em;font-variant-numeric:tabular-nums}.trip .place{font:500 26px/1.05 var(--font);letter-spacing:-.03em;overflow-wrap:anywhere}.trip .meta{font:400 11px var(--mono);color:var(--ink-2);letter-spacing:.04em;text-transform:uppercase;justify-content:space-between;gap:12px;display:flex}.trip.shade .label,.trip.shade .meta,.trip.shade .small{color:#ffffffe0}.focus{margin:0;padding:0;list-style:none;display:grid}.focus li{border-top:1px solid var(--line);grid-template-columns:26px 1fr;align-items:baseline;gap:8px;padding:11px 0;display:grid}.focus li:first-child{border-top:0;padding-top:2px}.focus .n{font:400 12px var(--mono);color:var(--muted)}.stats{grid-template-columns:1fr 1fr;gap:12px;display:grid}.stat{background:var(--surface);box-shadow:var(--shadow);border-radius:22px;gap:2px;padding:14px 16px;display:grid}.stat b{font:300 30px/1.05 var(--font);letter-spacing:-.04em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.stat span{color:var(--muted);font-size:12.5px}.facts{margin:0;display:grid}.facts>div{border-top:1px solid var(--line);grid-template-columns:130px 1fr;gap:12px;padding:10px 0;display:grid}.facts>div:first-child{border-top:0;padding-top:2px}.facts dt{color:var(--muted);font-size:13.5px}.facts dd{margin:0;font-weight:500}.fill{flex-direction:column;flex:1;min-height:0;display:flex}.tabs{flex:none;justify-content:center;gap:28px;padding:14px 22px 6px;display:flex}.tabs button{cursor:pointer;font:500 17px/1 var(--font);letter-spacing:-.015em;color:var(--muted);background:0 0;border:0;padding:6px 2px 10px;position:relative}.tabs button[aria-current=page]{color:var(--ink)}.tabs button[aria-current=page]:after{content:"";background:var(--ink);border-radius:2px;width:18px;height:4px;margin-left:-9px;position:absolute;bottom:0;left:50%}.card.tap{cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;border:0}.card-img{object-fit:cover;border-radius:24px 24px 0 0;width:calc(100% + 36px);height:150px;margin:-18px -18px 4px;display:block}.trip .bar{background:#ffffff47;border-radius:2px;height:3px;overflow:hidden}.trip .bar i{background:#fff;height:100%;display:block}.week{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.week>div{font:400 10.5px var(--mono);color:var(--muted);justify-items:center;gap:7px;display:grid}.week i{width:30px;height:30px;box-shadow:inset 0 0 0 1.5px var(--line);border-radius:50%;place-items:center;display:grid}.week .done i{background:var(--ink);box-shadow:none}.week .done i:after,.done-mark:after{content:"";border:1.8px solid var(--ground);border-top:0;border-right:0;width:9px;height:4.5px;transform:rotate(-45deg)translate(1px,-1px)}.week .planned i{box-shadow:inset 0 0 0 1.5px var(--ink-2)}.week .rest i{opacity:.4}.week .today{color:var(--ink)}.week .today i{box-shadow:inset 0 0 0 2px var(--accent)}.week .today.done i{box-shadow:0 0 0 2px var(--accent)}.wk{--item:212px;width:var(--item);text-align:left;cursor:pointer;background:var(--surface);min-height:184px;box-shadow:var(--shadow);color:var(--ink);border:0;border-radius:24px;flex-direction:column;gap:8px;padding:18px;transition:transform .15s ease-out;display:flex}.wk .n{font:400 11px var(--mono);letter-spacing:.08em;color:var(--muted);text-transform:uppercase}.wk b{font:500 20px/1.15 var(--font);letter-spacing:-.02em}.wk p{color:var(--muted);font-size:13px}.wk .st{margin-top:auto}.wk.now{background:var(--ink);color:var(--ground)}.wk.now .n,.wk.now p{color:inherit;opacity:.7}.wk.trip-w{background:var(--sand)}.sess-list{gap:10px;display:grid}.sess{background:var(--surface);box-shadow:var(--shadow);text-align:left;cursor:pointer;width:100%;color:var(--ink);font:inherit;border:0;border-radius:20px;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:14px 16px;display:grid}.sess .d{font:400 11px var(--mono);color:var(--muted)}.sess b{font-size:15px;font-weight:500}.sess small{font:400 11.5px var(--mono);color:var(--muted)}.sess.today{box-shadow:inset 0 0 0 1.5px var(--accent), var(--shadow)}.sess.ok b{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line)}.segbar{gap:5px;padding:12px 22px 0;display:grid}.segbar i{background:var(--line);border-radius:2px;height:3px}.segbar i.on{background:var(--ink)}.exs{flex:1;align-items:stretch;min-height:0;margin:0;padding-block:14px 18px}.ex{--item:300px;width:var(--item);scrollbar-width:none;background:var(--surface);max-width:calc(100vw - 44px);box-shadow:var(--shadow);border-radius:30px;flex-direction:column;gap:10px;padding:20px;transition:transform .15s ease-out,opacity .15s;display:flex;overflow-y:auto}.ex .art{cursor:pointer;background:var(--surface-2);object-fit:cover;border:0;border-radius:22px;flex:none;width:100%;height:148px;padding:0;position:relative;overflow:hidden}.ex .art img{object-fit:cover;width:100%;height:100%;display:block}.ex .art .play{background:#fffffff0;border-radius:50%;place-items:center;width:40px;height:40px;display:grid;position:absolute;bottom:12px;left:12px}.ex .art .play svg{width:14px;height:14px;margin-left:2px}.ex .art .soon{color:#141a1c;background:#ffffffeb;position:absolute;top:12px;right:12px}.ex .t{font:500 23px/1.1 var(--font);letter-spacing:-.025em}.ex .m{color:var(--muted);font-size:14px}.ex .cues{gap:6px;margin:2px 0 0;padding:0;list-style:none;display:grid}.ex .cues li{color:var(--ink-2);padding-left:16px;font-size:13.5px;line-height:1.35;position:relative}.ex .cues li:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;position:absolute;top:.5em;left:0}.ex .timer{align-items:center;gap:14px;margin-top:auto;display:flex}.ex .timer svg{flex:none;width:64px;height:64px;transform:rotate(-90deg)}.ex .timer .tb{fill:none;stroke:var(--line);stroke-width:4px}.ex .timer .tf{fill:none;stroke:var(--accent);stroke-width:4px;stroke-linecap:round;transition:stroke-dashoffset .95s linear}.ex .timer .tv{font:300 26px/1 var(--font);letter-spacing:-.03em;font-variant-numeric:tabular-nums}.ex .acts{flex-wrap:wrap;gap:8px;display:flex}.pill.sm{padding:11px 16px;font-size:14.5px}.done-mark{background:var(--ink);vertical-align:-5px;border-radius:50%;place-items:center;width:22px;height:22px;margin-right:6px;display:inline-grid}.ses-nav{padding:0 22px calc(24px + env(safe-area-inset-bottom));justify-content:space-between;align-items:center;gap:10px;display:flex}.iconbtn.flip svg{transform:scaleX(-1)}.toast{left:18px;right:18px;bottom:calc(26px + env(safe-area-inset-bottom));z-index:25;background:var(--ink);color:var(--ground);text-align:center;border-radius:22px;padding:14px 20px;font-size:14.5px;position:absolute;box-shadow:0 16px 36px -16px #00000073}@media (prefers-reduced-motion:reduce){.ring .spin,.orbit .a{animation:none}.ex .timer .tf{transition:none}}
