@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-wght-normal-CY6AOgYE.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-vietnamese-wght-normal-U01xdrZh.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-ext-wght-normal-CXYtwYOx.woff2) format("woff2-variations");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-wght-normal-BzFMHfZw.woff2) format("woff2-variations");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:"Baloo 2";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/baloo-2-devanagari-600-normal-CuT_xCk5.woff2) format("woff2"),url(/assets/baloo-2-devanagari-600-normal-Cnn1WFYO.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/baloo-2-vietnamese-600-normal-C5EqHgu0.woff2) format("woff2"),url(/assets/baloo-2-vietnamese-600-normal-CGkk4Wtx.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/baloo-2-latin-ext-600-normal-DiVeaYrH.woff2) format("woff2"),url(/assets/baloo-2-latin-ext-600-normal-CFaB2nBN.woff) format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/baloo-2-latin-600-normal-tIfxVoAe.woff2) format("woff2"),url(/assets/baloo-2-latin-600-normal-B4tNaogw.woff) format("woff");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:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/baloo-2-devanagari-700-normal-D37Te3iF.woff2) format("woff2"),url(/assets/baloo-2-devanagari-700-normal-CEIF4sJg.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/baloo-2-vietnamese-700-normal-h4tlcePq.woff2) format("woff2"),url(/assets/baloo-2-vietnamese-700-normal-DoF59Mjc.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/baloo-2-latin-ext-700-normal-Mlh7kdab.woff2) format("woff2"),url(/assets/baloo-2-latin-ext-700-normal-D6LeXASg.woff) format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/baloo-2-latin-700-normal-CqTg7A15.woff2) format("woff2"),url(/assets/baloo-2-latin-700-normal-Ld3Zm3l2.woff) format("woff");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:"Baloo 2";font-style:normal;font-display:swap;font-weight:800;src:url(/assets/baloo-2-devanagari-800-normal-BURIY0wZ.woff2) format("woff2"),url(/assets/baloo-2-devanagari-800-normal-YLp1oUqR.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:800;src:url(/assets/baloo-2-vietnamese-800-normal-ConLnEgt.woff2) format("woff2"),url(/assets/baloo-2-vietnamese-800-normal-GQACmpuv.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:800;src:url(/assets/baloo-2-latin-ext-800-normal-C_Iwmf1s.woff2) format("woff2"),url(/assets/baloo-2-latin-ext-800-normal-D-iCxxqE.woff) format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:800;src:url(/assets/baloo-2-latin-800-normal-BbF3Etk1.woff2) format("woff2"),url(/assets/baloo-2-latin-800-normal-B8BXfZF7.woff) format("woff");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:Caveat;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/caveat-cyrillic-ext-500-normal-DcrB4vVx.woff2) format("woff2"),url(/assets/caveat-cyrillic-ext-500-normal-DqTXtm5N.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/caveat-cyrillic-500-normal-DpMZbbjM.woff2) format("woff2"),url(/assets/caveat-cyrillic-500-normal-DLSfp5IU.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/caveat-latin-ext-500-normal-jKqJW7bC.woff2) format("woff2"),url(/assets/caveat-latin-ext-500-normal-wUUXxlbS.woff) format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/caveat-latin-500-normal-B9SDL8cy.woff2) format("woff2"),url(/assets/caveat-latin-500-normal-Do9veZfZ.woff) format("woff");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}:root{color-scheme:light;--ink: #23264f;--ink-2: #4a4e7a;--muted: #62668c;--paper: #ffffff;--sky-page: #eef6ff;--line: #dde3f3;--line-strong: #c4cce6;--berry: #4b4fd6;--berry-deep: #3337a8;--berry-soft: #e4e5ff;--sun: #ffc83d;--sun-soft: #fff1c7;--sun-ink: #8a5a00;--mint: #2fbf8f;--mint-soft: #d3f5e8;--mint-ink: #0f7a57;--sky: #47a3f3;--sky-soft: #d8ebff;--sky-ink: #1666b0;--lilac: #9b7bff;--lilac-soft: #ebe4ff;--lilac-ink: #5b3fc4;--coral: #ff6f61;--coral-soft: #ffe0dc;--coral-ink: #b8382b;--danger: #c43d30;--success: var(--mint-ink);--focus: #4b4fd6;--grid: #e3e8f4;--flag: #8b90b0;--series-1: #2a78d6;--series-2: #eb6834;--series-3: #1baf7a;--series-4: #eda100;--series-5: #e87ba4;--tone: var(--sun);--tone-soft: var(--sun-soft);--tone-ink: var(--sun-ink);--radius-xl: 28px;--radius: 20px;--radius-sm: 14px;--shadow: 0 2px 0 rgb(35 38 79 / .06), 0 8px 24px -12px rgb(35 38 79 / .18);--font-display: "Baloo 2", "Nunito Variable", system-ui, sans-serif;--font-body: "Nunito Variable", system-ui, -apple-system, "Segoe UI", sans-serif;font-family:var(--font-body);font-size:16.5px;line-height:1.55;-webkit-font-smoothing:antialiased}.tone-sun{--tone: var(--sun);--tone-soft: var(--sun-soft);--tone-ink: var(--sun-ink)}.tone-mint{--tone: var(--mint);--tone-soft: var(--mint-soft);--tone-ink: var(--mint-ink)}.tone-sky{--tone: var(--sky);--tone-soft: var(--sky-soft);--tone-ink: var(--sky-ink)}.tone-lilac{--tone: var(--lilac);--tone-soft: var(--lilac-soft);--tone-ink: var(--lilac-ink)}.tone-coral{--tone: var(--coral);--tone-soft: var(--coral-soft);--tone-ink: var(--coral-ink)}*{box-sizing:border-box}html,body{margin:0;background:var(--sky-page);color:var(--ink)}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--font-display);font-weight:700;letter-spacing:-.005em}h1{font-size:1.95rem;line-height:1.1}h2{font-size:1.3rem;line-height:1.2}h3{font-size:1.08rem;line-height:1.25}a{color:var(--berry)}button{font:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:10px}.muted{color:var(--muted)}.small{font-size:.9rem}.xsmall{font-size:.8rem}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.02em}.error{color:var(--danger);font-weight:600}.success{color:var(--success);font-weight:700}.center{text-align:center}.stack{display:flex;flex-direction:column;gap:1rem}.stack-sm{display:flex;flex-direction:column;gap:.5rem}.row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.row-between{display:flex;gap:.5rem;align-items:center;justify-content:space-between}.grow{flex:1;min-width:0}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.shell{min-height:100vh}.shell-main{max-width:760px;margin:0 auto;padding:0 1rem calc(104px + env(safe-area-inset-bottom))}.shell-wide .shell-main{max-width:980px}.tabbar{position:fixed;left:.6rem;right:.6rem;bottom:calc(.6rem + env(safe-area-inset-bottom));z-index:20;background:var(--paper);border-radius:26px;box-shadow:0 10px 30px -10px #23264f59;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:6px}.tabbar a{position:relative;display:flex;flex-direction:column;align-items:center;gap:1px;text-decoration:none;color:var(--muted);font-size:.74rem;font-weight:700;padding:7px 2px 5px;border-radius:20px;min-height:56px;justify-content:center;transition:color .2s ease}.tabbar a svg{position:relative;z-index:1;transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.tabbar a span{position:relative;z-index:1}.tabbar a:before{content:"";position:absolute;inset:4px 10%;border-radius:18px;background:var(--tone-soft);transform:scale(.4);opacity:0;transition:transform .3s cubic-bezier(.34,1.56,.64,1),opacity .2s ease}.tabbar a.active{color:var(--ink)}.tabbar a.active:before{transform:scale(1);opacity:1}.tabbar a.active svg{transform:translateY(-1px) scale(1.08);color:var(--tone-ink)}.tabbar .brand-side{display:none}@media(min-width:960px){.shell{display:grid;grid-template-columns:250px 1fr}.tabbar{position:sticky;inset:0 auto auto;height:100vh;border-radius:0;box-shadow:1px 0 0 var(--line);display:flex;flex-direction:column;gap:6px;padding:1.4rem .9rem}.tabbar .brand-side{display:flex;margin:0 .4rem 1.4rem}.tabbar a{flex-direction:row;justify-content:flex-start;gap:.8rem;font-size:1rem;padding:.7rem .9rem;min-height:50px}.tabbar a:before{inset:0}.shell-main{padding-bottom:3rem;width:100%}}.hero{position:relative;margin:0 -1rem 1.1rem;padding:.6rem 1.25rem 2.6rem;background:var(--tone-soft);overflow:hidden;isolation:isolate}.hero:after{content:"";position:absolute;left:-2%;right:-2%;bottom:-1px;height:26px;z-index:-1;background:var(--sky-page);-webkit-mask:radial-gradient(28px 20px at 50% 100%,#000 98%,transparent) 0 0 / 56px 26px repeat-x;mask:radial-gradient(28px 20px at 50% 100%,#000 98%,transparent) 0 0 / 56px 26px repeat-x}.hero-blob{position:absolute;z-index:-1;border-radius:50%;background:var(--tone);opacity:.28;pointer-events:none}.hero-blob.b1{width:210px;height:210px;right:-70px;top:-90px}.hero-blob.b2{width:70px;height:70px;right:90px;top:64px;opacity:.18}.hero-bar{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;min-height:48px}.hero-text{padding:.35rem .1rem 0}.hero-text h1{color:var(--ink)}.hero-text p{color:var(--ink-2);font-weight:600;margin-top:.2rem}.hero.compact{padding-bottom:2.2rem}.hero.compact .hero-text{text-align:center;padding-top:0}.hero.compact .hero-text h1{font-size:1.35rem}.hero-sub{color:var(--ink-2);font-weight:600;text-align:center;margin:.4rem auto 0;max-width:32ch}@media(min-width:960px){.hero{margin:0 0 1.25rem;border-radius:0 0 var(--radius-xl) var(--radius-xl)}}.icon-btn{width:44px;height:44px;border-radius:14px;border:none;background:transparent;color:var(--ink);display:inline-grid;place-items:center;cursor:pointer;text-decoration:none;transition:transform .15s ease,background .15s ease}.icon-btn:hover{background:#fff9}.icon-btn:active{transform:scale(.92)}.hero .icon-btn{background:#ffffffb3}.icon-btn-primary{color:var(--berry)}.card{background:var(--paper);border-radius:var(--radius);padding:1.1rem;box-shadow:var(--shadow)}.card-tint{background:var(--tone-soft);box-shadow:none}.card-green{background:var(--mint-soft);box-shadow:none}.card-title{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.75rem}.section-title{display:flex;align-items:baseline;justify-content:space-between;margin:.6rem 0 -.2rem}.section-title a,.link-btn{font-size:.95rem;font-weight:700;color:var(--berry);text-decoration:none;background:none;border:none;cursor:pointer;padding:0}.list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.list-row{display:flex;align-items:center;gap:.9rem;width:100%;text-align:left;background:var(--paper);border:none;border-radius:var(--radius);padding:.8rem .9rem;color:var(--ink);text-decoration:none;cursor:pointer;min-height:64px;box-shadow:var(--shadow);transition:transform .15s ease}.list-row:active{transform:scale(.985)}.list-row.flat{background:var(--sky-page);box-shadow:none}.list-row .chev{color:var(--muted);flex-shrink:0}.list-row-title{font-weight:800}.list-row-sub{font-size:.88rem;color:var(--muted)}.list-row.danger{color:var(--danger)}.tile{width:44px;height:44px;border-radius:15px;display:grid;place-items:center;flex-shrink:0;font-family:var(--font-display);font-weight:700}.tile-lg{width:54px;height:54px;border-radius:18px}.tile-green{background:var(--mint-soft);color:var(--mint-ink)}.tile-blue{background:var(--sky-soft);color:var(--sky-ink)}.tile-yellow{background:var(--sun-soft);color:var(--sun-ink)}.tile-purple{background:var(--lilac-soft);color:var(--lilac-ink)}.tile-pink{background:var(--coral-soft);color:var(--coral-ink)}.tile-teal{background:var(--mint-soft);color:var(--mint-ink)}.tile-plain{background:var(--sky-page);color:var(--ink-2)}.date-leaf{width:52px;flex-shrink:0;border-radius:15px;overflow:hidden;text-align:center;background:var(--paper);box-shadow:inset 0 0 0 2px var(--mint-soft)}.date-leaf b{display:block;font-family:var(--font-display);font-size:1.35rem;line-height:1.5;color:var(--ink)}.date-leaf span{display:block;background:var(--mint);color:#fff;font-size:.7rem;font-weight:800;padding:1px 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:52px;padding:.7rem 1.35rem;border-radius:18px;cursor:pointer;border:2px solid var(--line-strong);background:var(--paper);color:var(--ink);font-family:var(--font-display);font-weight:700;font-size:1.08rem;text-decoration:none;box-shadow:0 3px 0 var(--line-strong);transition:transform .1s ease,box-shadow .1s ease}.btn:active:not(:disabled){transform:translateY(3px);box-shadow:0 0 0 transparent}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--berry);border-color:var(--berry);color:#fff;box-shadow:0 4px 0 var(--berry-deep)}.btn-primary:active:not(:disabled){transform:translateY(4px)}.btn-outline{background:var(--paper);border-color:var(--berry);color:var(--berry);box-shadow:0 3px 0 var(--berry-soft)}.btn-soft{background:var(--berry-soft);border-color:transparent;color:var(--berry);box-shadow:none}.btn-danger{background:var(--paper);border-color:var(--danger);color:var(--danger);box-shadow:0 3px 0 var(--coral-soft)}.btn-small{min-height:40px;padding:.35rem .95rem;font-size:.95rem;border-radius:14px}.btn-block{width:100%}.btn-pair{display:grid;grid-template-columns:1fr 1.5fr;gap:.75rem}.field{display:flex;flex-direction:column;gap:.35rem}.field-label{font-size:.95rem;font-weight:800;color:var(--ink)}.field-hint{font-size:.85rem;color:var(--muted);font-weight:500}input,select,textarea{font:inherit;color:var(--ink);background:var(--paper);width:100%;border:2px solid var(--line);border-radius:var(--radius-sm);padding:.75rem .9rem;transition:border-color .15s ease,box-shadow .15s ease}input:focus,select:focus,textarea:focus{border-color:var(--berry);outline:none;box-shadow:0 0 0 4px var(--berry-soft)}textarea{resize:vertical;min-height:100px}.check{display:flex;align-items:center;gap:.65rem;cursor:pointer;font-weight:600}.check input{width:22px;height:22px;accent-color:var(--berry);flex-shrink:0}.input-icon{position:relative}.input-icon svg{position:absolute;left:.9rem;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.input-icon input{padding-left:2.7rem}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.pills{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;background:var(--paper);border-radius:18px;padding:5px;box-shadow:var(--shadow)}.pills button{border:none;background:transparent;color:var(--ink-2);border-radius:14px;padding:.45rem .4rem;cursor:pointer;font-weight:700;font-size:.92rem;min-height:40px;white-space:nowrap;transition:background .2s ease,color .2s ease}.pills button.active{background:var(--berry);color:#fff}.underline-tabs{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px;background:var(--paper);border-radius:18px;padding:5px;box-shadow:var(--shadow)}.underline-tabs button{border:none;background:none;padding:.6rem;cursor:pointer;color:var(--muted);font-weight:800;border-radius:14px;transition:background .2s ease}.underline-tabs button.active{color:var(--ink);background:var(--tone-soft)}.chips-scroll{display:flex;gap:.5rem;overflow-x:auto;padding:2px 2px 6px;scrollbar-width:none}.chip-link{display:inline-flex;align-items:center;gap:.45rem;white-space:nowrap;text-decoration:none;background:var(--paper);color:var(--ink);box-shadow:var(--shadow);border-radius:999px;padding:.5rem .95rem;font-size:.9rem;font-weight:800;min-height:40px}.chip-link svg{color:var(--tone-ink)}.chip{border:2px solid var(--line);background:var(--paper);color:var(--ink-2);border-radius:999px;padding:.4rem .95rem;cursor:pointer;font-size:.92rem;font-weight:700;min-height:40px;transition:transform .15s ease,background .15s ease}.chip.active{border-color:var(--tone-ink);background:var(--tone-soft);color:var(--ink);animation:pop .3s cubic-bezier(.34,1.56,.64,1)}.badge{display:inline-flex;align-items:center;font-size:.78rem;font-weight:800;padding:.15rem .6rem;border-radius:999px;background:var(--sky-page);color:var(--ink-2)}.badge-blue{background:var(--sky-soft);color:var(--sky-ink)}.badge-green{background:var(--mint-soft);color:var(--mint-ink)}.progress-track{height:10px;background:#23264f14;border-radius:999px;overflow:hidden}.progress-fill{height:100%;background:var(--tone);border-radius:999px;transition:width .4s cubic-bezier(.34,1.56,.64,1)}.week-dots{display:grid;grid-template-columns:repeat(14,1fr);gap:5px}.week-dot{aspect-ratio:1;border-radius:50%;background:var(--grid)}.week-dot.on{background:var(--mint)}.garden{display:grid;grid-template-columns:repeat(7,1fr);gap:.25rem;align-items:end}.garden-day{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:.72rem;font-weight:800;color:var(--ink-2)}.garden-day svg{width:100%;max-width:46px;height:auto;overflow:visible}.garden-day.today{color:var(--ink)}.garden-day.today .day-label{background:var(--ink);color:#fff;border-radius:999px;padding:0 6px}.garden-day.future{opacity:.45}.garden .bloom{transform-box:fill-box;transform-origin:50% 100%;animation:grow .7s cubic-bezier(.34,1.56,.64,1) both;animation-delay:calc(var(--i) * 90ms + .15s)}.garden .bud{transform-box:fill-box;transform-origin:50% 100%;animation:sway 2.6s ease-in-out infinite}.garden-caption{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;margin-top:.4rem;font-weight:700;color:var(--ink-2);font-size:.92rem}.welcome{min-height:100vh;display:flex;flex-direction:column;align-items:center;background:linear-gradient(180deg,#d8ebff 0%,#fff6dc 70%,var(--sky-page) 100%)}.welcome-inner{width:100%;max-width:440px;display:flex;flex-direction:column;flex:1}.welcome-top{padding:2.5rem 1.5rem 0;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.5rem}.welcome-tagline{color:var(--ink-2);font-size:1.12rem;font-weight:700;line-height:1.4}.welcome-art{width:100%;display:block;margin-top:.5rem}.welcome-art .sun{transform-box:fill-box;transform-origin:center;animation:rise 1.1s cubic-bezier(.34,1.56,.64,1) both}.welcome-art .plant{transform-box:fill-box;transform-origin:50% 100%;animation:grow .8s cubic-bezier(.34,1.56,.64,1) both;animation-delay:calc(var(--i) * .12s + .4s)}.welcome-actions{padding:1.5rem;display:flex;flex-direction:column;gap:.85rem}.welcome-links{display:flex;justify-content:center;gap:1.25rem;font-size:.9rem;font-weight:700}.welcome-links a{color:var(--ink-2);text-decoration:none}.handwriting{font-family:Caveat,cursive;font-size:1.8rem;line-height:1.1;color:var(--berry);text-align:center;padding:.5rem 0 2rem;transform:rotate(-2deg)}.auth-card{margin:0 1.5rem 2rem}.qr{width:200px;height:200px;background:#fff;padding:8px;border-radius:14px;align-self:center}.secret{word-break:break-all;font-size:.95rem}.greeting-sun{position:absolute;right:18px;top:22px;color:var(--sun-ink);z-index:0;animation:spin 24s linear infinite}.start-cta{margin-top:-1.4rem;position:relative}.duo{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.duo-tile{display:flex;flex-direction:column;gap:.6rem;padding:1rem;border-radius:var(--radius);text-decoration:none;color:var(--ink);border:none;text-align:left;cursor:pointer;min-height:140px;position:relative;overflow:hidden;transition:transform .15s ease}.duo-tile:active{transform:scale(.97)}.duo-tile strong{font-family:var(--font-display);font-size:1.15rem;line-height:1.15}.duo-tile span.sub{font-size:.85rem;color:var(--ink-2);font-weight:600}.duo-tile .deco{position:absolute;right:-14px;bottom:-14px;opacity:.25}.duo-tile.mint{background:var(--mint-soft)}.duo-tile.coral{background:var(--coral-soft)}.speech{display:flex;align-items:flex-end;gap:.75rem}.speech-bubble{position:relative;background:var(--paper);border-radius:20px 20px 20px 6px;padding:.85rem 1rem;box-shadow:var(--shadow);font-weight:700;color:var(--ink)}.speech svg{flex-shrink:0;color:var(--mint-ink)}.flow{min-height:100vh;display:flex;flex-direction:column;max-width:560px;margin:0 auto;padding:0 1rem calc(1rem + env(safe-area-inset-bottom))}.flow-body{flex:1;display:flex;flex-direction:column;gap:1.25rem;padding-top:.25rem}.flow-footer{padding-top:1.25rem}.step-meta{font-size:.95rem;color:var(--ink-2);font-weight:800;margin-bottom:.4rem}.steps{display:flex;gap:6px}.steps i{flex:1;height:10px;border-radius:999px;background:#23264f1a;transition:background .3s ease}.steps i.on{background:var(--tone)}.steps i.now{background:var(--tone);animation:pop .4s cubic-bezier(.34,1.56,.64,1)}.question-card{background:var(--paper);border-radius:var(--radius-xl);padding:1.3rem 1.2rem;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:1.1rem;animation:card-in .35s cubic-bezier(.2,.8,.3,1)}.question-title{font-family:var(--font-display);font-size:1.45rem;font-weight:700;line-height:1.2}.scale-labels{display:flex;justify-content:space-between;gap:1rem;font-size:.88rem;color:var(--ink-2);font-weight:700}.scale-labels span:last-child{text-align:right}.slider{position:relative;padding-top:3rem}.slider-bubble{position:absolute;top:0;transform:translate(-50%);min-width:2.6rem;height:2.6rem;padding:0 .6rem;display:grid;place-items:center;border-radius:999px;background:var(--tone);color:var(--ink);font-family:var(--font-display);font-weight:800;font-size:1.35rem;pointer-events:none;box-shadow:0 3px #23264f26;transition:left .08s linear}.slider-bubble:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);border:7px solid transparent;border-top-color:var(--tone);border-bottom:0}.slider-bubble.unset{background:var(--paper);box-shadow:inset 0 0 0 2px var(--line-strong);font-size:.85rem;font-weight:700;color:var(--muted);white-space:nowrap;font-family:var(--font-body)}.slider-bubble.unset:after{border-top-color:var(--line-strong)}.slider-bubble.bump{animation:pop .25s ease}.slider input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:40px;background:transparent;border:none;padding:0;margin:0;--fill: 50%}.slider input[type=range]::-webkit-slider-runnable-track{height:14px;border-radius:999px;background:linear-gradient(to right,var(--tone) 0 var(--fill),rgb(35 38 79 / .1) var(--fill) 100%)}.slider input[type=range]::-moz-range-track{height:14px;border-radius:999px;background:#23264f1a}.slider input[type=range]::-moz-range-progress{height:14px;border-radius:999px;background:var(--tone)}.slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:34px;height:34px;border-radius:50%;margin-top:-10px;background:var(--paper);border:6px solid var(--tone-ink);box-shadow:0 2px 6px #00000040}.slider input[type=range]::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:var(--paper);border:6px solid var(--tone-ink);box-shadow:0 2px 6px #00000040}.slider.unset input[type=range]::-webkit-slider-runnable-track{background:#23264f1a}.slider.unset input[type=range]::-moz-range-progress{background:transparent}.slider.unset input[type=range]::-webkit-slider-thumb{border:3px dashed var(--line-strong);box-shadow:none}.slider.unset input[type=range]::-moz-range-thumb{border:3px dashed var(--line-strong);box-shadow:none}.slider-ticks{display:flex;justify-content:space-between;font-size:.85rem;font-weight:800;color:var(--ink-2);padding:0 8px}.scale-mid{text-align:center;font-size:.85rem;color:var(--muted);font-weight:600}.option-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.option{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:.6rem;padding:.85rem;border-radius:var(--radius);background:var(--paper);cursor:pointer;box-shadow:var(--shadow);min-height:104px;border:3px solid transparent;transition:transform .15s ease,border-color .15s ease,background .15s ease}.option:active{transform:scale(.97)}.option .opt-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center}.option span{font-weight:800;line-height:1.2}.option input{position:absolute;opacity:0;pointer-events:none}.option .tick{position:absolute;right:10px;top:10px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--berry);color:#fff;transform:scale(0);transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.option.checked{border-color:var(--berry);background:var(--berry-soft)}.option.checked .tick{transform:scale(1)}.option:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.done{text-align:center;align-items:center;justify-content:center}.done-icon{position:relative;width:112px;height:112px;border-radius:50%;background:var(--mint-soft);color:var(--mint-ink);display:grid;place-items:center;animation:pop .5s cubic-bezier(.34,1.56,.64,1)}.confetti{position:absolute;inset:0;pointer-events:none}.confetti i{position:absolute;left:50%;top:50%;width:12px;height:18px;border-radius:12px 0;background:var(--c);animation:burst .9s cubic-bezier(.2,.8,.3,1) both;animation-delay:.15s}.moods{display:grid;grid-template-columns:repeat(5,1fr);gap:.35rem}.mood{display:flex;flex-direction:column;align-items:center;gap:.35rem;background:none;border:none;cursor:pointer;padding:.4rem 0 .5rem;border-radius:18px;color:var(--ink-2);font-size:.8rem;font-weight:800;line-height:1.15;transition:background .2s ease}.mood svg{width:100%;max-width:62px;height:auto;transition:transform .25s cubic-bezier(.34,1.56,.64,1),opacity .2s ease}.mood:hover svg{transform:translateY(-3px) rotate(-4deg)}.mood.selected{background:var(--paper);box-shadow:var(--shadow);color:var(--ink)}.mood.selected svg{transform:scale(1.14);animation:wiggle .5s ease}.mood.dim svg{opacity:.4}.drawpad{display:flex;flex-direction:column;gap:.5rem}.drawpad canvas{width:100%;height:auto;border-radius:18px;background:#fff;border:3px dashed var(--coral-soft);touch-action:none;cursor:crosshair}.swatches{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap}.swatch{width:34px;height:34px;border-radius:50%;border:3px solid var(--paper);box-shadow:0 0 0 2px var(--line);cursor:pointer;transition:transform .15s ease}.swatch.active{box-shadow:0 0 0 3px var(--ink);transform:scale(1.12)}.drawing-thumb{max-width:220px;border-radius:12px;border:2px solid var(--line);background:#fff}.chart-area{position:relative}.chart-area svg{width:100%;height:auto;display:block;touch-action:pan-y;overflow:visible}.chart-area .grid{stroke:var(--grid);stroke-width:1}.chart-area .axis-label{fill:var(--muted);font-size:11px;font-family:var(--font-body);font-weight:600}.chart-area .crosshair{stroke:var(--ink-2);stroke-width:1;opacity:.45}.chart-area .flag-line{stroke:var(--flag);stroke-width:1.5;stroke-dasharray:4 4}.chart-area .flag-label{fill:var(--muted);font-size:10px}.series-line{fill:none;stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.series-dot{stroke:var(--paper);stroke-width:1.5}.status-dot{fill:var(--paper);stroke-width:1.5}.s1{--c: var(--series-1)}.s2{--c: var(--series-2)}.s3{--c: var(--series-3)}.s4{--c: var(--series-4)}.s5{--c: var(--series-5)}.series-line,.status-dot{stroke:var(--c)}.series-dot{fill:var(--c)}.legend{display:flex;flex-wrap:wrap;gap:.3rem 1rem;font-size:.85rem;color:var(--ink-2);font-weight:600}.legend-v{flex-direction:column;gap:.2rem}.legend-item{display:inline-flex;align-items:center;gap:.45rem}.legend-key{display:inline-block;width:14px;height:0;border-top:3px solid var(--c);border-radius:2px}.legend-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--c)}.tooltip{position:absolute;top:0;transform:translate(12px);pointer-events:none;z-index:3;background:var(--paper);border-radius:14px;box-shadow:0 10px 28px -8px #23264f4d;padding:.5rem .7rem;font-size:.85rem;min-width:150px}.tooltip.left{transform:translate(calc(-100% - 12px))}.tooltip-date{color:var(--muted);font-size:.8rem;margin-bottom:.2rem;font-weight:700}.tooltip-row{display:flex;align-items:center;gap:.45rem}.table-view summary{cursor:pointer;color:var(--ink-2);font-size:.88rem;font-weight:700;margin-top:.3rem}.chart-head{display:flex;align-items:center;gap:.8rem;margin-bottom:.6rem}.overview-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;margin-bottom:.5rem}table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{text-align:left;padding:.55rem .5rem;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:.82rem;color:var(--muted);font-weight:800}.table-wrap{overflow-x:auto}.sheet-backdrop{position:fixed;inset:0;background:#23264f73;z-index:40;display:flex;align-items:flex-end;justify-content:center;animation:fade .2s ease}.sheet{background:var(--sky-page);width:100%;max-width:640px;max-height:88vh;overflow:auto;border-radius:26px 26px 0 0;padding:.9rem 1rem 1.6rem;animation:sheet-up .3s cubic-bezier(.2,.8,.3,1)}@media(min-width:700px){.sheet-backdrop{align-items:center}.sheet{border-radius:26px}}.answer-line{display:flex;justify-content:space-between;gap:1rem;padding:.5rem 0;border-bottom:1px solid var(--line)}.answer-line:last-child{border-bottom:none}.answer-value{font-family:var(--font-display);font-weight:700;font-size:1.1rem;white-space:nowrap}.note-box{background:var(--sky-page);border-radius:12px;padding:.55rem .75rem;font-size:.92rem}.notice{background:var(--tone-soft);border-radius:var(--radius-sm);padding:.8rem .95rem;font-size:.92rem;color:var(--ink);font-weight:600}.empty{text-align:center;color:var(--muted);padding:2rem 1rem;font-weight:600}.switch{position:relative;width:56px;height:32px;flex-shrink:0}.switch input{opacity:0;width:0;height:0}.switch span{position:absolute;inset:0;background:var(--line-strong);border-radius:999px;cursor:pointer;transition:background .2s ease}.switch span:before{content:"";position:absolute;width:26px;height:26px;left:3px;top:3px;background:#fff;border-radius:50%;transition:transform .25s cubic-bezier(.34,1.56,.64,1);box-shadow:0 1px 3px #0003}.switch input:checked+span{background:var(--mint)}.switch input:checked+span:before{transform:translate(24px)}.switch input:focus-visible+span{outline:3px solid var(--focus);outline-offset:2px}.prose h2{margin-top:.5rem}.prose p,.prose li{color:var(--ink-2)}.prose ul{padding-left:1.2rem;margin:0;display:flex;flex-direction:column;gap:.35rem}@keyframes grow{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes pop{0%{transform:scale(.85)}60%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes sway{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}@keyframes wiggle{0%,to{transform:scale(1.14) rotate(0)}30%{transform:scale(1.14) rotate(-8deg)}60%{transform:scale(1.14) rotate(6deg)}}@keyframes rise{0%{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade{0%{opacity:0}}@keyframes sheet-up{0%{transform:translateY(40px);opacity:0}}@keyframes card-in{0%{transform:translate(24px);opacity:0}}@keyframes burst{0%{transform:translate(-50%,-50%) rotate(0) scale(.4);opacity:1}to{transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) rotate(var(--r)) scale(1);opacity:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}@media(max-width:420px){h1{font-size:1.75rem}.card{padding:1rem}.pills button{font-size:.86rem}.question-title{font-size:1.3rem}}.passkey-icon{width:76px;height:76px;margin:0 auto;border-radius:26px;display:grid;place-items:center;background:var(--berry-soft);color:var(--berry)}.passkey-steps{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}.passkey-steps li{display:flex;gap:.75rem;align-items:center;color:var(--ink-2)}.passkey-list{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}.passkey-list li{display:flex;gap:.75rem;align-items:center;padding:.6rem .4rem .6rem .6rem;border:1.5px solid var(--line);border-radius:var(--radius)}.passkey-list .grow{display:flex;flex-direction:column;gap:.1rem;min-width:0}.passkey-list .badge{display:inline-flex;align-items:center;gap:.25rem;align-self:flex-start}.secret{display:block;padding:.75rem .9rem;border-radius:12px;background:var(--sky-page);border:1.5px dashed var(--line-strong);font-size:.85rem;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.setup-link-card{border:2px solid var(--mint)}.login-divider{display:flex;align-items:center;gap:.75rem;margin:1rem .25rem;color:var(--muted);font-weight:700}.login-divider:before,.login-divider:after{content:"";flex:1;height:1.5px;background:var(--line-strong)}.password-input{position:relative;display:flex}.password-input input{flex:1;padding-right:3.2rem}.password-toggle{position:absolute;right:.35rem;top:50%;transform:translateY(-50%);width:2.6rem;height:2.6rem;display:grid;place-items:center;border:0;border-radius:12px;background:transparent;color:var(--ink-2);cursor:pointer}.password-toggle:hover{background:var(--sky-page)}.passkey-offer{text-align:center}.link-button{background:none;border:0;padding:.4rem;color:var(--berry);font-weight:700;text-decoration:underline;cursor:pointer;font:inherit}
