@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/space-grotesk-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/space-grotesk-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/space-mono-400-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/space-mono-400-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/space-mono-700-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/space-mono-700-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:LAPA Grotesk;font-style:normal;font-weight:300 900;font-display:block;src:url(/fonts/LAPAGrotesk-VF.woff2) format("woff2");ascent-override:98%;descent-override:26%;line-gap-override:0%}:root{--font: "Space Grotesk", "Helvetica Neue", Arial, sans-serif;--font-mono: "Space Mono", ui-monospace, Menlo, monospace;--font-mark: "LAPA Grotesk", "Space Grotesk", system-ui, sans-serif;--ease: cubic-bezier(.16, 1, .3, 1);--spring: cubic-bezier(.34, 1.56, .64, 1);--neon: #1FD65F;--neon-2: #3BE276;--neon-soft: rgba(31, 214, 95, .1);--neon-glow: rgba(31, 214, 95, .45);--on-neon: #0A0A0A;--bg: #070707;--bg-2: #0E0E0F;--text: #F4F4F5;--text-2: #A9A9AE;--text-3: #6E6E73;--line: rgba(255, 255, 255, .07);--line-2: rgba(255, 255, 255, .12);--glass: rgba(255, 255, 255, .025);--glass-strong: rgba(24, 24, 27, .86);--glass-hi: rgba(255, 255, 255, .08);--glass-rim: rgba(255, 255, 255, .07);--fill: rgba(255, 255, 255, .04);--fill-2: rgba(255, 255, 255, .08);--neon-text: #4BE283;--danger: #FF6B57;--warn: #F2B544;--shadow: none;--float-shadow: 0 16px 40px -16px rgba(0, 0, 0, .8);--aura-1: rgba(31, 214, 95, .22);--aura-2: rgba(31, 214, 95, .07);color-scheme:dark}@media(prefers-color-scheme:light){:root{--bg: #ECECEE;--bg-2: #F4F4F5;--text: #0A0A0A;--text-2: #55555A;--text-3: #8A8A8F;--line: rgba(10, 10, 10, .08);--line-2: rgba(10, 10, 10, .14);--glass: #FFFFFF;--glass-strong: rgba(255, 255, 255, .85);--glass-hi: rgba(255, 255, 255, .95);--glass-rim: rgba(255, 255, 255, .7);--fill: rgba(10, 10, 10, .05);--fill-2: rgba(10, 10, 10, .09);--neon-soft: rgba(31, 214, 95, .18);--shadow: 0 1px 2px rgba(10, 10, 10, .04);--float-shadow: 0 14px 34px -16px rgba(10, 10, 10, .28);--neon-text: #0A7A33;--line: rgba(10, 10, 10, .07);--aura-1: rgba(31, 214, 95, .28);--aura-2: rgba(31, 214, 95, .1);color-scheme:light}}*{box-sizing:border-box}html,body{margin:0;min-height:100%}html,body{overflow-x:clip}body{font-family:var(--font);font-size:15px;line-height:1.45;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none;padding:0}input,textarea{background:none;border:0;outline:0}:focus-visible{outline:2px solid var(--neon);outline-offset:2px;border-radius:8px}h1,h2,h3,p{margin:0}.mono{font-family:var(--font-mono);letter-spacing:-.02em}.muted{color:var(--text-2)}.faint{color:var(--text-3)}.label{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.aura{display:none}.aura:before,.aura:after{content:"";position:absolute;border-radius:50%;filter:blur(80px)}.aura:before{width:70vmax;height:70vmax;left:-20vmax;top:-30vmax;background:radial-gradient(circle,var(--aura-1),transparent 65%);opacity:calc(.35 + var(--p) * .65);transition:opacity 1.2s var(--ease);animation:breathe 7s ease-in-out infinite}.aura:after{width:60vmax;height:60vmax;right:-25vmax;bottom:-25vmax;background:radial-gradient(circle,var(--aura-2),transparent 70%)}@keyframes breathe{50%{transform:scale(1.08) translate(2vmax,1vmax)}}.glass{background:var(--glass);border:1px solid var(--glass-rim);border-radius:22px;box-shadow:var(--shadow)}.dock,.toast,.rest,.sheet{background:color-mix(in srgb,var(--bg-2) 72%,transparent);backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);box-shadow:inset 0 1px 0 var(--glass-hi),var(--float-shadow)}.app{max-width:620px;margin:0 auto;padding:calc(env(safe-area-inset-top) + 18px) 16px calc(env(safe-area-inset-bottom) + 112px)}.page{display:flex;flex-direction:column;gap:14px;animation:rise .42s var(--ease) backwards}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px}.page-title{font-size:26px;font-weight:600;letter-spacing:-.03em}.section{padding:16px}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:8px}.section-head h2{font-size:15px;font-weight:600;letter-spacing:-.01em}.row{display:flex;align-items:center;gap:10px}.grow{flex:1;min-width:0}.stack{display:flex;flex-direction:column;gap:8px}.empty{padding:14px;border:1px dashed var(--line-2);border-radius:16px;color:var(--text-2);font-size:14px;text-align:center}.lapa-mark{--mark-h: 18px;--la: 400;--pa: 600;font-family:var(--font-mark);font-size:calc(var(--mark-h) / .715);font-weight:700;line-height:1;display:inline-flex;align-items:center;white-space:nowrap;height:1em;font-synthesis:none;user-select:none}.lapa-mark>span{display:inline-block}.lapa-mark .logo-la{font-variation-settings:"wght" var(--la)}.lapa-mark .logo-pa{font-variation-settings:"wght" var(--pa)}.lapa-mark .logo-app{font-variation-settings:"wght" 400;margin-left:.2em;color:var(--neon)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 18px;border-radius:999px;font-weight:600;font-size:15px;background:var(--fill-2);color:var(--text);transition:transform .16s var(--ease),background .16s,box-shadow .16s;text-decoration:none}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;pointer-events:none}.btn-primary{background:var(--neon);color:var(--on-neon)}.btn-primary:hover{background:var(--neon-2)}.btn-ghost{background:transparent;color:var(--text-2)}.btn-ghost:hover{background:var(--fill);color:var(--text)}.btn-sm{height:34px;padding:0 14px;font-size:13px}.btn-block{width:100%}.btn-danger{color:var(--danger)}.icon-btn{width:38px;height:38px;display:inline-grid;place-items:center;border-radius:50%;color:var(--text-2);transition:background .15s,color .15s;flex:none}.icon-btn:hover{background:var(--fill);color:var(--text)}.icon-btn:disabled{opacity:.3;pointer-events:none}.field{display:flex;flex-direction:column;gap:6px}.field>span{font-size:13px;color:var(--text-2)}.input{height:46px;padding:0 14px;border-radius:14px;background:var(--fill);border:1px solid var(--line);transition:border-color .15s,background .15s;width:100%}.input:focus{border-color:var(--neon);background:var(--fill-2)}textarea.input{height:auto;min-height:84px;padding:12px 14px;resize:vertical;line-height:1.4}.input-num{text-align:center;font-family:var(--font-mono);font-variant-numeric:tabular-nums;padding:0 6px}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip{height:36px;min-width:36px;padding:0 12px;border-radius:999px;background:var(--fill);color:var(--text-2);font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid transparent;transition:all .15s var(--ease)}.chip.is-on{background:var(--neon-soft);color:var(--text);border-color:color-mix(in srgb,var(--neon) 55%,transparent)}.stepper{display:inline-flex;align-items:center;gap:4px;background:var(--fill);border-radius:999px;padding:3px}.stepper button{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:var(--text-2)}.stepper button:hover{background:var(--fill-2);color:var(--text)}.stepper output{min-width:64px;text-align:center;font-family:var(--font-mono);font-size:15px}.scale{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.scale button{height:52px;border-radius:16px;background:var(--fill);font-size:22px;display:grid;place-items:center;transition:transform .2s var(--spring),background .15s;filter:grayscale(.8);opacity:.7}.scale button.is-on{background:var(--neon-soft);transform:scale(1.06);filter:none;opacity:1;box-shadow:inset 0 0 0 1.5px var(--neon)}.dock{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom) + 14px);transform:translate(-50%);z-index:20;display:flex;gap:2px;padding:6px;border-radius:999px}.dock a{display:grid;place-items:center;width:46px;height:46px;border-radius:999px;color:var(--text-3);text-decoration:none;transition:color .15s,background .2s var(--ease)}.dock a:hover{color:var(--text)}.dock a.is-active{color:var(--text);background:var(--fill-2)}.dock a.is-active svg{color:var(--neon)}.monitor{padding:18px 18px 14px;overflow:hidden;position:relative}.monitor-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.pulse-num{font-family:var(--font-mono);font-size:64px;line-height:.9;letter-spacing:-.06em;font-variant-numeric:tabular-nums}.pulse-num small{font-size:15px;letter-spacing:0;color:var(--text-3);margin-left:4px}.pulse-state{margin-top:6px;font-size:14px;color:var(--text-2)}.pulse-state b{color:var(--text);font-weight:600}.ecg{display:block;width:100%;height:86px;margin-top:8px;overflow:hidden}.ecg-grid{stroke:var(--line);stroke-width:1}.ecg-line{fill:none;stroke:var(--neon);stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round;transition:d .7s var(--ease)}.ecg-line.is-flat{stroke:var(--text-3);filter:none}.ecg-sweep{fill:url(#sweep);animation:sweep 2.4s linear infinite}@keyframes sweep{0%{transform:translate(-30%)}to{transform:translate(110%)}}.monitor-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:8px;font-size:13px}.xp-today{font-family:var(--font-mono);color:var(--neon-text)}.badges{display:flex;gap:6px}.badge{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 11px;border-radius:999px;background:var(--fill);font-size:13px;font-weight:600;white-space:nowrap}.badge svg{color:var(--neon)}.badge.is-risk svg{color:var(--warn);animation:blink 1.4s ease-in-out infinite}@keyframes blink{50%{opacity:.35}}.level{display:flex;align-items:center;gap:10px}.level-ring{--v: 0;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;flex:none;background:conic-gradient(var(--neon) calc(var(--v) * 1turn),var(--fill-2) 0)}.level-ring span{width:36px;height:36px;border-radius:50%;background:var(--bg);display:grid;place-items:center;font-family:var(--font-mono);font-size:14px;font-weight:700}.item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:18px;background:var(--fill);transition:background .2s,transform .16s var(--ease);position:relative;user-select:none;text-align:left;width:100%}button.item:active{transform:scale(.985)}.item.is-done{background:var(--fill)}.item-icon{width:38px;height:38px;border-radius:12px;background:var(--fill-2);display:grid;place-items:center;font-size:19px;flex:none}.item.is-done .item-icon{background:var(--neon-soft);color:var(--neon-text)}.item-title{font-weight:600;font-size:15px}.item-sub{font-size:12.5px;color:var(--text-2)}.item.is-done .item-title{color:var(--text)}.check{width:28px;height:28px;border-radius:50%;border:2px solid var(--line-2);display:grid;place-items:center;flex:none;transition:all .22s var(--spring);color:transparent}.item.is-done .check{background:var(--neon);border-color:var(--neon);color:var(--on-neon);transform:scale(1.06)}.dots{display:flex;gap:4px}.dots i{width:8px;height:8px;border-radius:50%;background:var(--fill-2)}.dots i.on{background:var(--neon)}.xp-pop{position:absolute;right:52px;top:6px;font-family:var(--font-mono);font-size:13px;color:var(--neon);pointer-events:none;animation:pop .9s var(--ease) forwards}@keyframes pop{0%{opacity:1;transform:translateY(6px)}to{opacity:0;transform:translateY(-18px)}}.challenge{padding:14px 16px;display:flex;gap:12px;align-items:center}.challenge .bar{height:6px;border-radius:99px;background:var(--fill-2);overflow:hidden;margin-top:8px}.challenge .bar i{display:block;height:100%;background:var(--neon);border-radius:99px;transition:width .6s var(--ease)}.challenge.is-done{border-color:color-mix(in srgb,var(--neon) 50%,transparent)}.daynav{display:flex;align-items:center;gap:4px}.daynav-label{font-size:14px;color:var(--text-2);min-width:0;text-align:center}.grid28{display:grid;grid-template-columns:repeat(14,1fr);gap:4px;margin-top:10px}.grid28 i{aspect-ratio:1;border-radius:5px;background:var(--fill)}.grid28 i.part{background:color-mix(in srgb,var(--neon) 40%,transparent)}.grid28 i.on{background:var(--neon)}.grid28 i.off{background:transparent;border:1px dashed var(--line)}.grid28 i.today{outline:1.5px solid var(--text-2);outline-offset:1px}.habit-card{padding:14px 16px}.strip{display:grid;grid-template-columns:repeat(28,1fr);gap:3px;align-items:end;height:46px}.strip i{border-radius:3px;background:var(--fill-2);min-height:3px;transition:height .5s var(--ease)}.strip i.rhythm{background:var(--neon)}.strip i.saved{background:repeating-linear-gradient(45deg,var(--neon) 0 3px,transparent 3px 6px)}.sheet-backdrop{position:fixed;inset:0;z-index:40;background:#0000008c;animation:fade .22s ease-out;display:flex;align-items:flex-end;justify-content:center}@keyframes fade{0%{background:#0000}}.sheet{width:100%;max-width:620px;max-height:92dvh;overflow:auto;border-radius:28px 28px 0 0;padding:10px 18px calc(env(safe-area-inset-bottom) + 18px);background:var(--glass-strong);backdrop-filter:blur(30px) saturate(170%);-webkit-backdrop-filter:blur(30px) saturate(170%);border:1px solid var(--glass-rim);border-bottom:0;box-shadow:inset 0 1px 0 var(--glass-hi);animation:up .36s var(--ease) both}@keyframes up{0%{transform:translateY(40px);opacity:0}}.sheet-grip{width:40px;height:5px;border-radius:9px;background:var(--line-2);margin:0 auto 12px}.sheet h2{font-size:20px;letter-spacing:-.02em;margin-bottom:14px}.sheet .stack{gap:14px}.sheet-actions{display:flex;gap:8px;margin-top:18px}.sheet-actions .btn{flex:1}@media(min-width:700px){.sheet-backdrop{align-items:center}.sheet{border-radius:28px;border-bottom:1px solid var(--glass-rim)}}.toaster{position:fixed;top:calc(env(safe-area-inset-top) + 12px);left:50%;transform:translate(-50%);z-index:60;display:flex;flex-direction:column;gap:8px;width:min(92vw,420px);pointer-events:none}.toast{padding:12px 16px;border-radius:18px;font-size:14px;animation:drop .38s var(--spring) both;pointer-events:auto}.toast b{display:block;font-weight:600}.toast.is-error b{color:var(--danger)}.toast.is-reward{border:1px solid color-mix(in srgb,var(--neon) 55%,transparent)}.toast.is-reward b{color:var(--neon-text)}@keyframes drop{0%{opacity:0;transform:translateY(-14px) scale(.96)}}.burst{position:fixed;inset:0;pointer-events:none;z-index:50;display:grid;place-items:center}.burst i{position:absolute;width:40px;height:40px;border-radius:50%;border:1.5px solid var(--neon);animation:ring 1.1s var(--ease) forwards}.burst i:nth-child(2){animation-delay:.14s}.burst i:nth-child(3){animation-delay:.28s}@keyframes ring{0%{transform:scale(.2);opacity:1}to{transform:scale(18);opacity:0}}.burst b{font-family:var(--font-mono);font-size:22px;color:var(--neon);animation:pop2 1.6s var(--ease) forwards}@keyframes pop2{0%{opacity:0;transform:scale(.6)}20%{opacity:1;transform:scale(1.1)}80%{opacity:1}to{opacity:0;transform:scale(1)}}.cover{position:relative;width:100vw;margin-left:calc(50% - 50vw);margin-top:calc(-1*(env(safe-area-inset-top) + 18px));height:min(64vh,540px);min-height:400px;overflow:hidden;isolation:isolate}.pixel-field{position:absolute;inset:0;width:100%;height:100%;z-index:-1}.cover:after{content:"";position:absolute;inset:auto 0 0;height:30%;background:linear-gradient(to bottom,transparent,var(--bg));z-index:-1;pointer-events:none}.cover-top{position:absolute;top:calc(env(safe-area-inset-top) + 18px);left:50%;transform:translate(-50%);width:min(100%,620px);padding:0 16px;display:flex;justify-content:space-between;align-items:center}.cover-level{display:flex;align-items:center;gap:10px;color:var(--text-2);text-decoration:none;font-size:13px}.cover-text{position:absolute;left:50%;top:42%;transform:translate(-50%,-50%);width:min(100%,620px);padding:0 20px;text-align:center;display:flex;flex-direction:column;align-items:center;animation:fade-in 1.2s var(--ease) .1s backwards}@keyframes fade-in{0%{opacity:0}}.cover-date{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.cover-text h1{font-size:clamp(30px,7vw,46px);font-weight:300;letter-spacing:-.045em;line-height:1.05;margin-top:12px;text-wrap:balance}.cover-text p{font-size:16px;margin-top:10px;color:var(--text-2)}.cover-breathe{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 14px;border-radius:999px;margin-top:22px;font-size:12.5px;font-weight:500;color:var(--text-2);border:1px solid var(--line-2);transition:color .2s,border-color .2s}.cover-breathe:hover{color:var(--text);border-color:var(--neon)}.summary{padding:12px 16px 12px 8px;display:flex;align-items:center;gap:12px;margin-top:-20px;position:relative;z-index:2}.summary-date{font-weight:600;font-size:15px;flex:1;text-align:center;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-left:10px;font-size:13px;color:var(--text-2);margin-top:2px}.summary .daynav{gap:0}.pulse-ring{--v: 0;width:68px;height:68px;border-radius:50%;flex:none;display:grid;place-items:center;background:conic-gradient(var(--neon) calc(var(--v) * 1turn),var(--fill-2) 0)}.pulse-ring>span{width:62px;height:62px;border-radius:50%;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}.pulse-ring b{font-family:var(--font-mono);font-weight:400;font-size:22px;letter-spacing:-.05em}.pulse-ring small{font-size:10px;color:var(--text-3);font-family:var(--font-mono);margin-top:3px;text-transform:uppercase;letter-spacing:.06em}.switch{width:44px;height:26px;border-radius:99px;background:var(--fill-2);position:relative;flex:none;transition:background .2s}.switch i{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:var(--text-2);transition:transform .22s var(--spring),background .2s}.switch.is-on{background:var(--neon)}.switch.is-on i{transform:translate(18px);background:var(--on-neon)}.ai-card{padding:16px}.ai-label{display:inline-flex;align-items:center;gap:6px;color:var(--neon-text)}.ai-line{font-size:16px;line-height:1.45;font-weight:300;letter-spacing:-.01em}.ai-steps{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.ai-steps li{display:grid;grid-template-columns:48px 1fr;gap:10px;font-size:14px;color:var(--text-2)}.ai-steps .mono{font-size:12px;color:var(--text-3);padding-top:1px}.ai-headline{font-size:20px;font-weight:400;letter-spacing:-.02em;line-height:1.25}.ai-story{font-size:14.5px;color:var(--text-2);line-height:1.55}.ai-list{margin:6px 0 0;padding-left:18px;font-size:14px;display:flex;flex-direction:column;gap:4px}.ai-list.is-num{padding-left:20px}.ai-error{font-size:13px;color:var(--danger);margin-top:8px}.timeline.md:before{left:50px}.md-item,.md-band{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:center;position:relative}.md-body{display:flex;align-items:center;gap:12px;padding:7px 10px;border-radius:14px;width:100%;text-align:left;position:relative;transition:background .2s}button.md-body:hover{background:var(--fill)}.md-emoji{width:32px;height:32px;border-radius:10px;background:var(--fill);display:grid;place-items:center;flex:none;font-size:16px}.md-item.is-done .tl-title{color:var(--text-3);text-decoration:line-through;text-decoration-color:var(--line-2)}.md-item.is-done .md-emoji{background:var(--neon-soft)}.md-item.is-done .check{background:var(--neon);border-color:var(--neon);color:var(--on-neon)}.md-item .check{width:26px;height:26px}.md-item.is-current .md-body{background:var(--fill);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--neon) 45%,transparent)}.md-item.is-current .tl-sub{color:var(--neon-text)}.md-item.is-break .md-emoji{font-size:14px}.md-item.is-marker .md-emoji{background:transparent}.md-item.is-quiet .tl-title{color:var(--text-2);font-weight:500}.md-work{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-radius:12px;font-size:13px;color:var(--text-2);background:repeating-linear-gradient(135deg,var(--fill) 0 6px,transparent 6px 12px);border:1px dashed var(--line-2)}.md-missed{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px}.md-missed .timeline:before{display:none}.md-missed .tl-title{color:var(--text-2)}.intent-text{min-height:120px;font-size:15px;line-height:1.5}.pf-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.rv-item{display:flex;gap:10px;align-items:flex-start;padding:10px;border-radius:16px;background:var(--fill)}.rv-item.is-off{opacity:.45}.rv-item .check{width:26px;height:26px;margin-top:8px;font-size:13px}.rv-item .check.is-on{background:var(--neon);border-color:var(--neon);color:var(--on-neon)}.rv-item .md-emoji{margin-top:5px}.rv-title{height:38px}.rv-select{height:34px;width:auto;padding:0 10px;font-size:13px}.rv-num{width:52px;height:34px}.now{display:flex;flex-direction:column;gap:8px}.now-head{display:flex;justify-content:space-between;align-items:center;padding:0 4px;min-height:28px}.now-card{display:flex;gap:12px;align-items:flex-start;padding:12px 8px 12px 14px;border-radius:18px;border:1px solid var(--line);background:var(--glass);animation:rise .42s var(--ease) backwards}.now-icon{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;flex:none;background:var(--fill);color:var(--text-2);margin-top:1px}.now-card.is-nudge .now-icon{color:var(--warn)}.now-card.is-win .now-icon,.now-card.is-plan .now-icon{color:var(--neon-text)}.now-card.is-care .now-icon{color:#8fb4ff}.now-card.is-proposal{border-style:dashed;border-color:var(--line-2)}.now-card.is-proposal .now-icon{color:var(--neon-text)}.now-title{font-weight:600;font-size:14.5px}.now-body{font-size:13px;color:var(--text-2);margin-top:2px;line-height:1.4}.now-act{align-self:center;flex:none}.now-x{width:28px;height:28px;color:var(--text-3);align-self:flex-start}.timeline{list-style:none;margin:0;padding:0;position:relative;display:flex;flex-direction:column;gap:6px}.timeline:before{content:"";position:absolute;left:50px;top:8px;bottom:8px;width:1px;background:var(--line-2)}.tl-item,.tl-now{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:center;position:relative}.tl-time{font-family:var(--font-mono);font-size:12px;color:var(--text-3);text-align:right}.tl-item.is-done .tl-time{color:var(--text-2)}.tl-item.is-late .tl-time{color:var(--warn)}.tl-body{display:flex;align-items:center;gap:12px;padding:8px 10px;border-radius:14px;background:transparent;width:100%;text-align:left;position:relative;transition:background .2s,transform .16s var(--ease)}button.tl-body:hover{background:var(--fill)}button.tl-body:active{transform:scale(.985)}.tl-item.is-done .tl-title,.tl-body.is-done .tl-title{color:var(--text-3);text-decoration:line-through;text-decoration-color:var(--line-2)}.tl-icon{width:32px;height:32px;border-radius:10px;background:var(--fill);color:var(--text-2);display:grid;place-items:center;flex:none}.tl-item.is-done .tl-icon,.tl-body.is-done .tl-icon{background:var(--neon-soft);color:var(--neon-text)}.tl-title{display:block;font-weight:600;font-size:14.5px}.tl-sub{display:block;font-size:12.5px;color:var(--text-2)}.tl-item .check{width:26px;height:26px}.tl-item.is-done .check{background:var(--neon);border-color:var(--neon);color:var(--on-neon)}.tl-now .tl-time{color:var(--neon-text)}.tl-now i{height:1px;border-radius:2px;background:linear-gradient(to right,var(--neon),transparent);position:relative}.tl-now i:before{content:"";position:absolute;left:-9px;top:-4px;width:10px;height:10px;border-radius:50%;background:var(--neon);animation:beat 1.6s ease-in-out infinite}@keyframes beat{0%,to{transform:scale(1)}12%{transform:scale(1.5)}24%{transform:scale(1)}36%{transform:scale(1.3)}}.tl-body.is-active .tl-icon{background:var(--neon-soft);color:var(--neon-text)}.tl-body.is-active .tl-sub{color:var(--neon-text)}.tl-free{display:flex;flex-direction:column;gap:6px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.tl-free .label{margin-bottom:2px}.habit-week{display:flex;flex-direction:column;gap:6px}.hw-row{display:grid;grid-template-columns:minmax(0,1fr) repeat(7,30px) 34px;gap:5px;align-items:center}.hw-head span{font-family:var(--font-mono);font-size:10.5px;color:var(--text-3);text-align:center}.hw-head span.is-today{color:var(--neon-text)}.hw-name{font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;gap:8px;align-items:center}.hw-cell{height:30px;border-radius:8px;background:var(--fill-2);position:relative;transition:background .2s,transform .2s var(--spring)}.hw-cell:not(:disabled):not(.on):hover{background:color-mix(in srgb,var(--neon) 22%,var(--fill-2))}.hw-cell:not(:disabled):active{transform:scale(.9)}.hw-cell.part{background:color-mix(in srgb,var(--neon) 40%,transparent)}.hw-cell.on{background:var(--neon)}.hw-cell.off{background:transparent;border:1px dashed var(--line)}.hw-cell.is-today{outline:1.5px solid var(--text-2);outline-offset:1px}.hw-cell:disabled{cursor:default}.hw-cell .xp-pop{right:auto;left:50%;top:-14px;transform:translate(-50%);font-size:11px}.hw-streak{font-family:var(--font-mono);font-size:11.5px;color:var(--text-2);display:inline-flex;align-items:center;gap:2px;justify-content:flex-end}.hw-streak svg{color:var(--neon)}@media(max-width:400px){.hw-row{grid-template-columns:minmax(0,1fr) repeat(7,24px) 28px;gap:4px}.hw-cell{height:26px}}.breathe{position:fixed;inset:0;z-index:70;display:grid;place-items:center;background:#050806d1;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);animation:fade .4s ease-out;color:#f4f4f5}.breathe-close{position:absolute;top:calc(env(safe-area-inset-top) + 14px);right:14px;color:#a9a9ae}.breathe-orb{width:min(64vw,300px);aspect-ratio:1;border-radius:50%;grid-area:1 / 1;background:radial-gradient(circle at 50% 40%,rgba(31,214,95,.55),rgba(31,214,95,.08) 62%,transparent 70%);box-shadow:0 0 120px -20px #1fd65f99,inset 0 0 0 1px #1fd65f66;transition-property:transform;transition-timing-function:cubic-bezier(.45,0,.55,1)}.breathe-text{grid-area:1 / 1;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.breathe-text b{font-size:26px;font-weight:400;letter-spacing:-.02em}.breathe-progress{position:absolute;bottom:calc(env(safe-area-inset-bottom) + 40px);width:min(60vw,240px);height:2px;background:#ffffff1a;border-radius:2px;overflow:hidden}.breathe-progress i{display:block;height:100%;background:#1fd65f;transition:width 1s linear}.exercise{padding:14px 16px}.set-row{display:grid;grid-template-columns:28px 1fr 1fr 44px;gap:8px;align-items:center;margin-top:8px}.set-row .input{height:42px}.set-no{font-family:var(--font-mono);color:var(--text-3);text-align:center}.set-row.is-done .set-no{color:var(--neon)}.set-head{display:grid;grid-template-columns:28px 1fr 1fr 44px;gap:8px;margin-top:8px}.set-check{width:44px;height:42px;border-radius:12px;background:var(--fill);display:grid;place-items:center;color:var(--text-3);transition:all .2s var(--spring)}.set-row.is-done .set-check{background:var(--neon);color:var(--on-neon)}.pr-tag{font-family:var(--font-mono);font-size:11px;color:var(--on-neon);background:var(--neon);border-radius:6px;padding:1px 6px;margin-left:6px}.last-hint{font-size:12px;color:var(--text-3);margin-top:2px;font-family:var(--font-mono)}.rest{position:fixed;left:50%;transform:translate(-50%);bottom:calc(env(safe-area-inset-bottom) + 84px);z-index:25;display:flex;align-items:center;gap:10px;padding:8px 8px 8px 16px;border-radius:999px;font-family:var(--font-mono)}.rest-time{font-size:20px;min-width:56px}.rest.is-over{outline:1px solid var(--neon)}.ticks{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.tick{width:58px;height:58px;border-radius:16px;background:var(--fill);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;transition:background .2s,transform .2s var(--spring);border:1px solid var(--line)}.tick:active{transform:scale(.92)}.tick b{font-family:var(--font-mono);font-size:16px;font-weight:400;display:grid;place-items:center;height:18px}.tick small{font-family:var(--font-mono);font-size:9.5px;color:var(--text-3)}.tick.is-on{background:var(--neon);border-color:var(--neon);color:var(--on-neon)}.tick.is-on small{color:color-mix(in srgb,var(--on-neon) 65%,transparent)}.tick.is-add{border-style:dashed;color:var(--text-3);background:transparent}.exercise.is-done{border-color:color-mix(in srgb,var(--neon) 45%,transparent)}.program{padding:14px;border-radius:18px;background:var(--fill)}.book{padding:16px}.cover-book{--hue: 140;border-radius:4px 8px 8px 4px;position:relative;overflow:hidden;flex:none;display:grid;place-items:center;background:linear-gradient(135deg,hsl(var(--hue) 28% 32%),hsl(var(--hue) 30% 18%));box-shadow:inset 4px 0 #00000040,inset 5px 0 #ffffff14}.cover-book span{font-family:var(--font-mark);font-weight:700;color:#ffffffd9;font-size:.9em;letter-spacing:.02em;position:relative;z-index:1}.cover-book i{position:absolute;left:0;right:0;bottom:0;background:color-mix(in srgb,var(--neon) 35%,transparent)}.book-title{font-size:17px;font-weight:600;letter-spacing:-.01em;text-align:left;line-height:1.25}.book-pct{font-size:28px;letter-spacing:-.05em;margin:8px 0 6px}.book-facts{display:flex;flex-direction:column;gap:4px;margin-top:12px;font-size:13px;color:var(--text-2)}.book-facts b{color:var(--text);font-weight:600}.book-facts .is-hit{color:var(--neon-text)}.book-facts svg{color:var(--neon-text);vertical-align:-1px}.page-big{font-size:46px;letter-spacing:-.05em}.page-big small{font-size:18px;color:var(--text-3)}.range{width:100%;accent-color:var(--neon)}.quote{margin:0;padding:10px 6px 10px 12px;border-left:2px solid var(--neon);font-size:14px;display:flex;gap:6px;align-items:flex-start;background:var(--fill);border-radius:0 12px 12px 0}.quote .icon-btn{width:26px;height:26px;margin-left:auto;flex:none}.money-hero{padding:18px}.money-hero.is-red .money-big{color:var(--danger)}.money-big{font-size:40px;letter-spacing:-.05em;margin:6px 0 4px}.tile b.is-in,.tx-amt.is-in{color:var(--neon-text)}.tx-row{display:flex;align-items:center;gap:10px;padding:8px 4px;width:100%;text-align:left;border-radius:12px}button.tx-row:hover{background:var(--fill)}.tx-row.is-dup{opacity:.45}.tx-cat{width:32px;height:32px;border-radius:10px;background:var(--fill);display:grid;place-items:center;flex:none}.tx-desc{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.tx-sub{display:block;font-size:12px;color:var(--text-3)}.tx-amt{font-size:14px;white-space:nowrap}.cat-select{font-size:12px;background:var(--fill);border:1px solid var(--line);border-radius:8px;padding:2px 6px;color:var(--text-2);max-width:190px}.import-list{max-height:46vh;overflow:auto;gap:2px}.week-bars{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;align-items:end;height:120px;margin-top:6px}.week-bar{display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;justify-content:flex-end}.week-bar i{width:100%;border-radius:10px;background:var(--fill-2);min-height:4px;transition:height .6s var(--ease)}.week-bar i.rhythm{background:var(--neon)}.week-bar span{font-family:var(--font-mono);font-size:11px;color:var(--text-3)}.tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.tile{padding:14px;border-radius:20px;background:var(--fill)}.tile b{display:block;font-family:var(--font-mono);font-size:24px;letter-spacing:-.04em;margin-top:2px}.insight{padding:12px 14px;border-radius:16px;background:var(--fill);font-size:14px;border-left:3px solid var(--neon)}.meter{height:6px;border-radius:99px;background:var(--fill-2);overflow:hidden}.meter i{display:block;height:100%;background:var(--neon)}.ach-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}@media(max-width:440px){.ach-grid{grid-template-columns:1fr}}.ach{padding:12px;border-radius:18px;background:var(--fill);display:flex;gap:10px;align-items:center}.ach-icon{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:var(--fill-2);color:var(--text-3);flex:none}.ach.is-on .ach-icon{background:var(--neon-soft);color:var(--neon-text)}.ach:not(.is-on) .item-title{color:var(--text-2)}.profile-hero{padding:22px 18px;display:flex;gap:16px;align-items:center}.profile-hero .level-ring{width:84px;height:84px}.profile-hero .level-ring span{width:70px;height:70px;font-size:26px}.login{min-height:100dvh;display:grid;place-items:center;padding:24px}.login-card{width:min(100%,400px);padding:32px 26px 26px;text-align:center;display:flex;flex-direction:column;gap:18px;align-items:center}.login-card h1{font-size:22px;letter-spacing:-.02em;font-weight:600}.login-card .ecg{height:70px}.splash{min-height:100dvh;display:grid;place-items:center}.spinner{width:18px;height:18px;border-radius:50%;border:2px solid var(--fill-2);border-top-color:var(--neon);animation:spin .7s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
