@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-normal-CnvboYUG.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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-normal-Ca2vKHc0.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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-normal-ukD16Tqj.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:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-italic-BicUS2cM.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:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-italic-BfTTTDIL.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:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-italic-Py8at3oI.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:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,d09GMgABAAAAAAaEABMAAAAADFgAAAYdAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbbhwoP0hWQVJpBmA/U1RBVIE4AFwvbBEICoJ8gkMLFAAwhCoBNgIkAyIEIAWGUAdiDAcbvgpRVHJOI/viwCYyfSFrJjFIG8raYpYj9+IeSF0s6zD+Lk/4OGrZHhHV+wvt2ffuWPwlA51lIICIosSVmyOKEs5Uzlx3NKeXIgn1ssCydUybDV0IHga+SszIyfrQe9bLTFNxjayzgs76hNsDoSYtRe32fiJ4gxBjrP8L+w//zzHjv7Yqyr9o2vOBDXhCo2jMtr4uwAK/gV1U0PxAq/EAD+yW9EoKOL1KLw8rHrFgCSgRTQRzBzpeXVhweEDlyfY8gIoOa2CQJzrTAHIIoitTMVV2dyFwpJ2iAEQTpSkhPitxD3YwuZHEagTcAhyKAcBmUyPdhTovJThOw6HYiaF2M/J7erdi2OUutor6ES6Ac88AvfZvKpb6fJoArohb524042j6Jij36NI7P8Pb7s721naN9gcTtcjXQP4l+8BKEzFVGMxxoHqlq8Ul4LGneFJBDFaOdKpLPcg8P14YSDwIcn75hdlyJLTBlZ4voL6tT46yC/njunXqpJ0/bSvmrH1o3kRlwZ+j0DBogkF3KbDRVBlbOc+fY5HVXwPoT9hfekPnyZMaEmenYLMSg5npqegFOsgXsBv1IoF9aIVfSCNHkk6+gIzILsiYuhWQCfUtZEpbkRntQxBZgw7MwFbMcRvwJrAnBlDqs7isLtL7pO84Xru1i7ah7tckH1Wreqq6K9u0amxU1bcff/s2Y1ni3rh2I8zHzqkm3PGvv3mzC6NDBz/UcOBIg+nm88rxN8MbdtypvHUL5o1c2zG0urYpRmW+VHZdiba6GXN/3v0B3i3nt4RBsbfAu8ftLqRcTIlZ4VYheFTAS5nXLS65VZrbuW3daF2Ze1ChyGXWZN6u9nUuH1LfyTERifZXEpIueMe28vF8FOoTnsONzw+1djo9P71lZGx1vM8mH/BhvSa2HDsRZ1+Ul+RmpnPOIaEuwWnZZdkgQWAAyCDDZ1wk+0sh7wseAAwA6UlHxbftCgYAAwKAgwIAEA7ACfHIRbV7J6dwF/ZzcRRmAjXUYKAGWAlDCCFmKnH+LJEQfHKEmVrfmKwSEab36AcubXQBoDYJV/aRV+funFD8wAXLSLYbwr9+DR+h/qZIKCfeqRG5ghHpdY0zcV2nuz5iJMhAFjaTDwOcoyKGG9JHrCfdp4cC+kCvUrxc7+bliIMiHj95sPIbUeWZEP/HLnN2tlr9EBeRiktHuWvErx98fRz1MuEvHO3FDRgtsSzL/P0hsDLK2n5/uHMOjvTst0HD6t+80ZN798j7j//kjqHxIOZDFPR/FxurFD6/HxGbB799RPHLx5F89MoBOub9jVuOWtmPH3o9H3r26DIuff+LqPLwff/xryDRmiAYmjxiK0GwS9XU+k8QpUrHsCTs4qH89Fv44ubWbQmOE51M7J8Pt8+h+NKt3zZpa2L9zZqcRlyEc4MaNGdfjQCxgIygn78ne4yAzcLWA3zAJ6RRGbijvHr1W+XN8ywrG0EoZSySb0/A9KsllI7Q/Pq8hLu76tfTy5cF4X8bQxTtYp2vr6/+1oI4AhgAlNYFryt62VaX9ktO6VsAeDLeWx6fff4vdV1ts7N6+gw9GCsQnqPB0QUttB9nEc7Aaf4XM0NQ90VJ+HV1rG04znGCmXcpPCA9+nxdMPgPlT7Dz83NMfZuMJaNeRqbc+tjd2QER/b0B44d7nv5Rif7VC8svYkx9SKWwb3YzN2M3cY8jSNLl+PYZqfjxNTxOLXVCmfmduDc0ty1kLbjeiGfIrDFJXWPTTMD5TKupR8cpZgJeXTofId8NoUj6E8XfAc2k4WPdbCberDYAp8Q7L5dUo8wE8cs9QINZYvwXKzvBS4v/n+fQZkGrrFysKEIuFBgjQpxiHH1XA+ZBI+C+oAoxhYKECc42rGOc8L4mYhsiThGfFjOcKmFubPpDgwnY1918Fwo8ouenDJxvGP96HFWJ28hiOy251oKjkcbGz2POMme8CTMThx6wqOPsFtPI6j6HhDyDTxFQYnL88FcXGAGHl3ZuueRbEuxbK6Hc84ZDvRrREtLzyjj8Xkd/uShR1b0sYd8Nh8/c8znxCnadxQcf2nFVWIyw1g+4StXav9j75s+CQAA) 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:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-vietnamese-wght-normal-CHiFlh_0.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:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-latin-ext-wght-normal-Dg-wlmqe.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:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-latin-wght-normal-CaVRRdDk.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:Lexend;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lexend-vietnamese-400-normal-DoLa7jNB.woff2) format("woff2"),url(/assets/lexend-vietnamese-400-normal-mPlHoWg5.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:Lexend;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lexend-latin-ext-400-normal-D38JI5AK.woff2) format("woff2"),url(/assets/lexend-latin-ext-400-normal-D9P7pMo-.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:Lexend;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lexend-latin-400-normal-CwRJVcUA.woff2) format("woff2"),url(/assets/lexend-latin-400-normal-CHypAkT3.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:Lexend;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lexend-vietnamese-500-normal-Bos7Oy9U.woff2) format("woff2"),url(/assets/lexend-vietnamese-500-normal-EFAPmUTE.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:Lexend;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lexend-latin-ext-500-normal-Bo17xs96.woff2) format("woff2"),url(/assets/lexend-latin-ext-500-normal-DbCmXT_D.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:Lexend;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lexend-latin-500-normal-Dl-X5nog.woff2) format("woff2"),url(/assets/lexend-latin-500-normal-D9x1QWTH.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:Lexend;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/lexend-vietnamese-700-normal-BrGlFDtO.woff2) format("woff2"),url(/assets/lexend-vietnamese-700-normal-NEp7hM5T.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:Lexend;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/lexend-latin-ext-700-normal-CcWyeg4T.woff2) format("woff2"),url(/assets/lexend-latin-ext-700-normal-iR1cPiNX.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:Lexend;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/lexend-latin-700-normal-DqO8md6r.woff2) format("woff2"),url(/assets/lexend-latin-700-normal-DVyJlN8t.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:OpenDyslexic;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/opendyslexic-latin-400-normal-nUhe5EwG.woff2) format("woff2"),url(/assets/opendyslexic-latin-400-normal-Cv3YY6GF.woff) format("woff")}@font-face{font-family:OpenDyslexic;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/opendyslexic-latin-700-normal-Bnmt45Ln.woff2) format("woff2"),url(/assets/opendyslexic-latin-700-normal-wYUJcbXi.woff) format("woff")}:root{color-scheme:light;--font-display: "Fraunces Variable", "Fraunces", Georgia, "Times New Roman", serif;--font-body: "Hanken Grotesk Variable", "Hanken Grotesk", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;font-family:var(--font-body);--ink: #17201c;--muted: #65736c;--line: #dce6df;--paper: #fbfcf8;--surface: #ffffff;--surface-2: #f4f9f6;--mint: #dff4e6;--green: #2f7d57;--green-edge: #205a40;--teal: #2f8a97;--coral: #c95848;--sun: #e3a83d;--sky: #4f83c4;--dark: #17231d;--radius: 18px;--radius-sm: 12px;--shadow: 0 18px 60px rgba(23, 32, 28, .12);--shadow-soft: 0 12px 34px rgba(23, 32, 28, .07);--shadow-lift: 0 28px 64px rgba(23, 32, 28, .17);--ease: cubic-bezier(.22, 1, .36, 1);--r-xs: 10px;--r-sm: 14px;--r-md: 20px;--r-lg: 28px;--r-xl: 36px;--r-pill: 999px;--r-round: 9999px;--candy-bloom: #3fb985;--candy-sun: #ffc24c;--candy-grape: #a98cff;--candy-sky: #57c5f2;--candy-bubble: #ff8cc0;--candy-coral: #ff7a66;--surf-mint: #e9f7ef;--surf-butter: #fff3da;--surf-lilac: #efeaff;--surf-sky: #e4f4fd;--surf-peach: #ffeede;--shadow-card: 0 14px 34px -16px rgba(23, 32, 28, .16);--shadow-clay: 0 18px 40px -14px rgba(47, 125, 87, .28), inset 0 6px 14px rgba(255, 255, 255, .65), inset 0 -7px 14px rgba(0, 0, 0, .05);--press-3d: 0 4px 0 var(--green-edge);--glow-green: 0 12px 24px -8px rgba(47, 125, 87, .42);--grad-bloom: linear-gradient(135deg, #3fb985, #2f7d57);--grad-sorbet: linear-gradient(135deg, #ff8cc0, #ffc24c);--grad-cotton: linear-gradient(135deg, #a98cff, #57c5f2);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-squish: cubic-bezier(.8, -.5, .2, 1.8);--t-press: .14s;--t-ui: .22s;--t-bounce: .36s;--tap-parent: 48px;--tap-child: 56px;--tap-gap: 8px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--tabbar-h: calc(60px + env(safe-area-inset-bottom, 0px)) ;background:var(--paper);color:var(--ink)}[data-realm=child]{--accent: var(--candy-bloom);--card-radius: var(--r-lg);--card-shadow: var(--shadow-clay)}[data-realm=parent]{--accent: var(--green);--card-radius: var(--r-md);--card-shadow: var(--shadow-soft)}button,a,[role=button],.app-chip,.child-nav button,label.check-row{touch-action:manipulation}html,body{overscroll-behavior-y:none}body{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.modal-card,.event-sheet,.child-views{overscroll-behavior:contain}.legal-page,.public-report,.report-events,.timeline{-webkit-user-select:text;user-select:text}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper)}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%}.hero{position:relative;min-height:84svh;overflow:hidden;color:#fff}.hero-image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#0e1813e0,#0e1813b3 42%,#0e18131a),linear-gradient(0deg,#0e181394,#0e181324)}.landing-nav,.topbar{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:24px;width:min(1180px,calc(100% - 32px));margin:0 auto;padding:18px 0}.brand{display:inline-flex;align-items:center;gap:12px;min-width:0}.brand-small{color:var(--ink)}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:11px;overflow:hidden;background:transparent;flex:0 0 auto;box-shadow:0 8px 22px #1119141f}.brand-mark img{display:block;width:100%;height:100%;object-fit:contain}.brand strong,.brand small{display:block}.brand small{color:#ffffffb8;font-size:.82rem}.brand-small small{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.nav-links,.topbar-actions,.hero-actions,.trust-row,.inline-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.nav-links a,.nav-button{color:#ffffffe0;background:#ffffff1c;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:10px 13px}.nav-cta{background:var(--green)!important;border-color:#ffffff29!important;color:#fff!important}.light-nav{color:var(--ink)}.light-nav .brand small{color:var(--muted)}.light-nav .nav-links a,.light-nav .nav-button{background:var(--surface);border-color:var(--line);color:var(--ink)}.hero-content{position:relative;z-index:1;width:min(1180px,calc(100% - 32px));min-height:calc(84svh - 86px);margin:0 auto;display:flex;align-items:center;padding:42px 0 64px}.hero-copy{max-width:740px}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--eyebrow-color, var(--green));font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.hero .eyebrow{color:#afe8c8}h1,h2,h3,p{margin-top:0}h1{margin-bottom:20px;font-size:clamp(2.2rem,4.8vw,4.2rem);line-height:1;letter-spacing:0;max-width:13em}h2{margin:8px 0 14px;font-size:clamp(1.65rem,3vw,3rem);line-height:1.05;letter-spacing:0}h3{margin:0 0 8px;font-size:1.14rem}.hero-copy p{max-width:700px;color:#ffffffd6;font-size:1.14rem;line-height:1.65}.primary-link,.secondary-link,.primary-button,.ghost-button,.icon-button,.inline-actions button,.quick-row button,.mini-form button,.reward-card button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;border:0;border-radius:8px;padding:11px 16px;font-weight:800}.primary-link,.secondary-link,.nav-button,.ghost-button,.icon-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.primary-link,.primary-button{background:var(--green);color:#fff}.secondary-link,.ghost-button{background:var(--surface);color:var(--ink);border:1px solid var(--line)}.hero .secondary-link{background:#ffffffeb;color:#1d6b46;border-color:#ffffffeb;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.hero .secondary-link:hover{background:#fff;border-color:#fff}.facebook-invite{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:13px;width:min(100%,680px);padding:14px 16px;border-radius:8px;text-decoration:none}.facebook-invite-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:999px;background:#1877f2;color:#fff;flex:0 0 auto}.facebook-invite-text{display:grid;gap:3px;min-width:0}.facebook-invite-text strong{font-size:1rem;line-height:1.18}.facebook-invite-text small{line-height:1.35}.facebook-invite-arrow{flex:0 0 auto}.hero-facebook-invite{margin-top:18px;border:1px solid rgba(255,255,255,.28);background:#1877f233;color:#fff;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);box-shadow:0 16px 38px #0a120e2e}.hero-facebook-invite small{color:#ffffffc7}.hero-facebook-invite .facebook-invite-arrow{color:#ffffffd1}.app-facebook-invite{margin:16px 0 18px;border:1px solid color-mix(in srgb,#1877f2 42%,var(--line));background:color-mix(in srgb,#1877f2 9%,var(--surface));color:var(--ink);box-shadow:var(--shadow-soft)}.app-facebook-invite small,.app-facebook-invite .facebook-invite-arrow{color:var(--muted)}.danger{background:var(--coral)}.icon-button{width:44px;padding:0;background:var(--surface);border:1px solid var(--line);color:var(--ink)}.trust-row{margin-top:22px;color:#ffffffd1;font-size:.94rem}.trust-row span{display:inline-flex;align-items:center;gap:8px}.band{padding:86px 0}.band.soft{background:var(--tint-soft)}.section-heading,.module-grid,.auth-layout,.waitlist-layout,.workspace,.child-space{width:min(1180px,calc(100% - 32px));margin:0 auto}.section-heading{max-width:760px;margin-bottom:30px}.section-heading p{color:var(--muted);line-height:1.65}.module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.platform-strip{width:min(1180px,calc(100% - 32px));margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.split-section,.safety-layout{width:min(1180px,calc(100% - 32px));margin:0 auto;display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:36px;align-items:start}.in-split{position:sticky;top:110px;margin-bottom:0}.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.compact-grid .feature-card{min-height:214px}.steps-grid,.apps-grid,.situation-grid{width:min(1180px,calc(100% - 32px));margin:0 auto;display:grid;gap:16px}.steps-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.apps-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.situation-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.feature-card,.step-card,.app-tile,.situation-card,.metric,.tool-panel,.auth-box,.waitlist-form,.reward-card,.mission-card,.routine-card,.event-row{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 28px #17201c0f}.feature-card{padding:22px}.step-card,.app-tile,.situation-card{padding:20px}.step-card span{display:grid;place-items:center;width:38px;height:38px;border-radius:8px;background:var(--dark);color:#fff;font-weight:900;margin-bottom:18px}.step-card p,.app-tile p{color:var(--muted);line-height:1.55}.app-tile{min-height:238px}.app-tile.active{border-color:#277a5773;background:linear-gradient(180deg,#fff,#f2fbf5)}.app-tile-top{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:16px}.app-tile-top .feature-icon{margin:0}.app-tile-top span{display:inline-flex;border-radius:999px;padding:6px 9px;background:var(--tint-soft);color:var(--green);font-size:.72rem;font-weight:900;text-transform:uppercase}.app-tile:not(.active) .app-tile-top span{background:var(--tint-cream);color:#8b6a24}.situation-card{min-height:96px;display:flex;align-items:center;gap:12px;color:var(--ink)}.situation-card svg{color:var(--green)}.safety-band{background:var(--dark);color:#fff}.safety-band .eyebrow{color:#afe8c8}.safety-band p{color:#ffffffc2;line-height:1.65}.privacy-list{display:grid;gap:10px}.privacy-list div{display:flex;align-items:center;gap:12px;min-height:56px;border:1px solid rgba(255,255,255,.14);border-radius:8px;padding:14px;background:#ffffff0f;font-weight:800}.privacy-list svg{color:#f3cf6a;flex:0 0 auto}.honest-band{background:var(--tint-cream)}.final-band{border-top:1px solid var(--line)}.mission-page{min-height:100svh;background:var(--paper)}.mission-hero{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:96px 0 74px}.mission-hero h1{color:var(--ink);max-width:980px}.mission-hero p{max-width:760px;color:var(--muted);font-size:1.16rem;line-height:1.65}.instruction-page{min-height:100svh;background:linear-gradient(180deg,color-mix(in srgb,var(--green) 6%,var(--paper)) 0%,var(--paper) 46%,color-mix(in srgb,var(--teal) 7%,var(--paper)) 100%)}.instruction-page .landing-nav{padding-top:calc(18px + env(safe-area-inset-top,0px))}.instruction-hero,.instruction-steps,.instruction-closing{width:min(1220px,calc(100% - 32px));margin:0 auto}.instruction-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);gap:46px;align-items:center;padding:46px 0 72px}.instruction-hero-copy h1,.instruction-closing h2{font-family:var(--font-body);letter-spacing:0;color:var(--ink)}.instruction-hero-copy h1{max-width:780px;font-size:clamp(2.15rem,4.3vw,4.2rem);line-height:.98;margin:14px 0 20px}.instruction-hero-copy p,.instruction-step-copy p,.instruction-closing p{color:var(--muted);line-height:1.68}.instruction-hero-copy>p{max-width:660px;font-size:1.08rem}.instruction-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.secondary-link.light{color:var(--ink);border-color:var(--line);background:#ffffffc2}.instruction-share{margin-top:18px;font-size:.94rem}.instruction-share strong{color:var(--green)}.instruction-steps{display:grid;gap:24px;padding-bottom:74px}.instruction-section{display:grid;grid-template-columns:minmax(250px,.56fr) minmax(0,1fr);gap:34px;align-items:start;padding:28px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface) 88%,transparent);box-shadow:var(--shadow-soft)}.instruction-step-copy .feature-icon{margin-bottom:16px}.instruction-step-number{display:inline-grid;place-items:center;width:34px;height:34px;margin-bottom:12px;border-radius:8px;background:var(--green);color:#fff;font-weight:900}.instruction-step-copy h2{margin:0 0 12px;font-family:var(--font-body);font-size:clamp(1.65rem,2.4vw,2.45rem);line-height:1.04}.instruction-hero-screens{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.instruction-hero-screens .instruction-shot:nth-child(2){margin-top:56px}.instruction-shot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:16px;align-items:start}.instruction-shot-grid.count-2{grid-template-columns:repeat(2,minmax(170px,260px));justify-content:end}.instruction-shot{width:100%;max-width:260px;margin:0;justify-self:center}.instruction-shot.featured{max-width:290px}.instruction-shot.compact{max-width:260px}.instruction-shot-frame{position:relative;display:block;width:100%;overflow:hidden;aspect-ratio:9 / 16;padding:8px;border:0;border-radius:26px;background:#17231d;box-shadow:0 22px 54px #17231d33;font:inherit;text-align:left;cursor:zoom-in}.instruction-shot-frame:focus-visible{outline:3px solid color-mix(in srgb,var(--green) 74%,white);outline-offset:4px}.instruction-shot img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center;border-radius:20px;background:#f8faf6}.instruction-zoom-hint{position:absolute;right:16px;bottom:16px;display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:6px 9px;border-radius:999px;background:#ffffffeb;color:#17231d;font-size:.76rem;font-weight:800;line-height:1;box-shadow:0 10px 24px #0a120e2e;opacity:0;transform:translateY(5px);transition:opacity .18s var(--ease),transform .18s var(--ease)}.instruction-shot-frame:hover .instruction-zoom-hint,.instruction-shot-frame:focus-visible .instruction-zoom-hint{opacity:1;transform:translateY(0)}@media(hover:none){.instruction-zoom-hint{opacity:1;transform:translateY(0)}}.instruction-shot figcaption{display:grid;gap:4px;margin:10px auto 0;max-width:280px;color:var(--muted);font-size:.85rem;line-height:1.38;text-align:center}.instruction-shot figcaption strong{color:var(--ink);font-size:.9rem}.instruction-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:grid;place-items:center;padding:max(14px,env(safe-area-inset-top,0px)) 14px max(14px,env(safe-area-inset-bottom,0px));background:#0a120eb8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.instruction-lightbox-card{position:relative;display:grid;gap:12px;width:min(460px,100%);max-height:96svh;padding:14px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#111a15;box-shadow:0 30px 100px #00000070}.instruction-lightbox-close{position:absolute;top:12px;right:12px;z-index:2;display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:#fffffff0;color:#17231d;box-shadow:0 12px 28px #00000038}.instruction-lightbox-image{display:grid;place-items:center;min-height:0}.instruction-lightbox-image img{display:block;width:auto;max-width:100%;max-height:calc(96svh - 118px);border-radius:24px;background:#f8faf6;box-shadow:0 14px 40px #00000047}.instruction-lightbox-caption{display:grid;gap:4px;color:#ffffffc2;font-size:.9rem;line-height:1.4;text-align:center}.instruction-lightbox-caption strong{color:#fff}.instruction-closing{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:34px;margin-bottom:64px;border-radius:8px;background:var(--dark);color:#fff}.instruction-closing h2{max-width:760px;margin:10px 0;color:#fff;font-size:clamp(1.8rem,3vw,3rem);line-height:1.02}.instruction-closing p{max-width:720px;color:#ffffffc2}.instruction-closing .eyebrow{background:#ffffff1f;color:#c9f2d8}[data-theme=dark] .instruction-page{background:linear-gradient(180deg,color-mix(in srgb,var(--green) 6%,var(--paper)) 0%,var(--paper) 48%,color-mix(in srgb,var(--sky) 5%,var(--paper)) 100%)}[data-theme=dark] .instruction-section{background:color-mix(in srgb,var(--surface) 92%,transparent);border-color:var(--line)}[data-theme=dark] .secondary-link.light{background:var(--surface);color:var(--ink);border-color:var(--line)}[data-theme=dark] .instruction-shot-frame{background:#0d100f;box-shadow:0 22px 58px #0000006b}[data-theme=dark] .instruction-closing{background:#121614;border:1px solid var(--line)}.mission-grid{width:min(1180px,calc(100% - 32px));margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.mission-grid article{border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:26px;box-shadow:0 8px 28px #17201c0f}.mission-grid p{color:var(--muted);line-height:1.65}.inline-secondary{margin-right:10px}.site-footer{background:#101a15;color:#fff;padding:58px 0 24px}.footer-grid,.footer-bottom{width:min(1180px,calc(100% - 32px));margin:0 auto}.footer-grid{display:grid;grid-template-columns:1.25fr repeat(3,minmax(0,.7fr));gap:28px}.site-footer .brand small{color:#ffffffa3}.site-footer .brand-mark{display:inline-flex;margin:0}.site-footer p,.site-footer small,.footer-bottom{color:#ffffffa3;line-height:1.6}.site-footer strong,.site-footer a,.site-footer button,.site-footer span{display:flex;align-items:center;gap:8px}.site-footer strong{margin-bottom:12px}.site-footer a,.site-footer button,.site-footer span{margin:8px 0}.site-footer button{border:0;background:transparent;color:#fff;padding:0;font-weight:700;text-align:left}.site-footer a{color:#fff;font-weight:700}.footer-bottom{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.12);margin-top:36px;padding-top:18px}.feature-icon,.metric-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:8px;color:var(--green);background:var(--mint);margin-bottom:18px}.feature-card p,.auth-layout p,.waitlist-layout p{color:var(--muted);line-height:1.6}.auth-layout,.waitlist-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,.7fr);gap:48px;align-items:start}.auth-box,.waitlist-form{padding:22px;box-shadow:var(--shadow)}.segmented{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;border-radius:8px;background:var(--tint-soft);margin-bottom:18px}.segmented.compact{display:inline-grid;grid-template-columns:repeat(2,auto);margin:0}.segmented button{border:0;border-radius:6px;background:transparent;color:var(--muted);min-height:38px;padding:8px 10px;font-weight:800}.segmented button.active{background:var(--surface);color:var(--ink);box-shadow:0 3px 12px #17201c14}.segmented button.active.gain{color:var(--green)}.segmented button.active.cost{color:var(--coral)}label{display:grid;gap:7px;margin-bottom:13px;color:var(--muted);font-size:.9rem;font-weight:800}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);padding:12px 13px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #277a5724}textarea{resize:vertical}.two-cols,.three-cols{display:grid;gap:12px}.two-cols{grid-template-columns:1fr 120px}.three-cols{grid-template-columns:1fr 1fr 1.3fr}.check-list{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:12px}.check-list li,.check-row{display:flex;align-items:center;gap:10px;color:var(--ink)}.check-row{flex-direction:row;font-weight:700}.check-row input{width:auto}.form-error{color:#a2352b;font-weight:800}[data-theme=dark] .form-error{color:#ff9b8f}.field-error{color:#a2352b;font-weight:800;font-size:.82rem;margin:-8px 0 4px}input[aria-invalid=true],textarea[aria-invalid=true],select[aria-invalid=true]{border-color:#a2352b;box-shadow:0 0 0 3px #a2352b1f}[data-theme=dark] .field-error{color:#ff9b8f}[data-theme=dark] .idea-badge,[data-theme=dark] .routine-pending{color:var(--sun)}.form-note{margin:2px 0 14px;color:var(--muted);font-size:.92rem;line-height:1.45}.success{color:var(--green);font-weight:800}.logger-cols{grid-template-columns:1fr 1fr}.link-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;padding:8px 2px;color:var(--green);font-weight:800;font-size:.95rem;cursor:pointer;text-align:center;text-decoration:none}.link-button:hover{text-decoration:underline}a.primary-button{text-decoration:none}.link-cta{margin-top:6px}.reset-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:var(--tint-cream)}.reset-card{width:100%;max-width:420px;background:var(--surface);border-radius:20px;padding:26px 24px;box-shadow:0 18px 44px #28283c1f;display:grid;gap:14px}.reset-card h1{margin:4px 0 0;font-size:1.4rem}.reset-card .auth-box{display:grid;gap:14px}.app-shell{min-height:100svh;background:linear-gradient(180deg,#f5faf6,#fbfcf8 36%),var(--paper)}.topbar{position:sticky;top:0;z-index:10;background:#fbfcf8e6;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid rgba(220,230,223,.72)}.loading-line{height:3px;background:linear-gradient(90deg,var(--green),var(--sun),var(--teal));animation:pulse 1.2s infinite}.workspace,.child-space{padding:28px 0 72px}.family-strip{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:18px;padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.family-strip strong{display:block;font-size:1.8rem;letter-spacing:0}.family-strip small{color:var(--muted)}.empty-family{border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow);padding:34px;margin-bottom:18px}.empty-family h1{color:var(--ink);font-size:clamp(2.1rem,5vw,4rem);margin:6px 0 12px}.empty-family p{max-width:720px;color:var(--muted);line-height:1.6}.family-actions{display:grid;justify-items:end;gap:12px}.family-buttons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.compact-button{min-height:42px}.protocol-block{margin-top:22px}.protocol-heading{margin-bottom:12px}.protocol-heading h3{margin:3px 0 0;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.15}.protocol-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.protocol-strip article{min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:14px;box-shadow:var(--shadow-soft)}.protocol-strip span{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:var(--green);color:#fff;font-weight:800;font-size:.85rem;margin-bottom:10px}.protocol-strip strong{display:block;margin-bottom:4px}.protocol-strip small,.sp-note{color:var(--muted);line-height:1.35}.settings-form,.feedback-form,.success-panel{display:grid;gap:14px}.callout.soft{border:1px solid color-mix(in srgb,var(--green) 25%,var(--line));border-radius:8px;background:color-mix(in srgb,var(--green) 8%,var(--surface));padding:14px 16px}.callout.soft p{margin:6px 0 0;color:var(--muted);line-height:1.5}.settings-check{align-items:flex-start}.settings-divider{height:1px;background:var(--line);margin:2px 0}.child-season-fields{display:grid;gap:10px}.sp-col.repair-only{justify-content:start;padding:12px;border:1px dashed var(--line);border-radius:8px;background:var(--surface)}@media(max-width:820px){.protocol-strip{grid-template-columns:1fr}}.child-tabs{display:flex;flex-wrap:wrap;gap:8px}.child-tabs button{display:inline-flex;align-items:center;gap:8px;min-height:42px;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:8px 12px;font-weight:800}.child-tabs button.active{border-color:var(--green);background:var(--mint)}.app-center{margin-bottom:18px}.parent-module{border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 8px 28px #17201c0f}.parent-app-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.parent-app-picker button{--app-accent: var(--green);--app-soft: #eef8f1;display:grid;grid-template-columns:58px minmax(0,1fr) 18px;gap:13px;align-items:start;min-height:128px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);padding:15px;text-align:left;box-shadow:0 8px 28px #17201c0d}.parent-app-picker button.active{border-color:color-mix(in srgb,var(--app-accent) 52%,var(--line));background:var(--app-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--app-accent) 18%,transparent)}.parent-app-picker .app-points{--app-accent: #277a57;--app-soft: #eef8f1}.parent-app-picker .app-routines{--app-accent: #2f8a97;--app-soft: #eef9fa}.parent-app-picker .app-sos{--app-accent: #c95848;--app-soft: #fff3f0}.parent-app-picker .app-rewards{--app-accent: #b9851d;--app-soft: #fff8e8}.parent-app-picker .app-album{--app-accent: #4f83c4;--app-soft: #f0f6ff}.parent-app-picker .app-report{--app-accent: #586879;--app-soft: #f3f6f7}.parent-app-picker small,.parent-app-picker strong,.parent-app-picker em{display:block}.parent-app-picker small{color:var(--app-accent);font-size:.74rem;font-weight:900;text-transform:uppercase}.parent-app-picker strong{margin:2px 0 4px;font-size:1.08rem;line-height:1.08}.parent-app-picker em{color:var(--muted);font-size:.86rem;font-style:normal;line-height:1.28}.parent-app-icon,.avatar-sm{display:grid;place-items:center;border-radius:8px}.parent-app-icon{width:58px;height:58px;background:linear-gradient(145deg,var(--dark),color-mix(in srgb,var(--app-accent) 62%,var(--dark)));color:#fff;box-shadow:inset 0 -10px 20px #ffffff14}.parent-app-icon svg{width:25px;height:25px}.parent-app-picker button>svg{margin-top:20px;color:var(--app-accent)}.parent-module{padding:18px}.parent-module-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--line)}.parent-module-header h1{margin:5px 0 7px;color:var(--ink);font-size:clamp(1.9rem,4vw,3.1rem);line-height:1}.back-to-today{display:inline-flex;align-items:center;gap:4px;margin-bottom:8px;padding:4px 2px;border:0;background:transparent;color:var(--green);font-weight:800;font-size:.88rem;cursor:pointer}.back-to-today:hover{text-decoration:underline}.parent-module-header p{max-width:740px;margin:0;color:var(--muted);line-height:1.55}.module-child-summary{display:flex;align-items:center;gap:10px;min-width:180px;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:10px;color:var(--ink);text-align:left;cursor:pointer;transition:background-color var(--t-ui) var(--ease),border-color var(--t-ui) var(--ease)}.module-child-summary:hover{background:var(--surface-2);border-color:var(--green)}.module-child-summary:active{transform:scale(.98)}.module-child-summary strong,.module-child-summary small{display:block}.module-child-summary small{color:var(--muted)}.module-child-summary-chevron{margin-left:2px;color:var(--muted);flex:0 0 auto}@media(prefers-reduced-motion:reduce){.module-child-summary{transition:none}}[data-motion=reduce] .module-child-summary{transition:none}.avatar-sm{width:42px;height:42px;color:#fff;font-weight:900}img.seg-avatar,img.avatar-sm,img.avatar-xl{object-fit:cover}.points-summary-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:12px;margin-bottom:14px}.view-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.view-switch button{min-height:52px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:10px 12px;font-weight:900}.view-switch button.active{background:var(--green);border-color:var(--green);color:#fff}.parent-module-grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:14px;align-items:start}.parent-module-grid.two-panel{grid-template-columns:minmax(0,1fr) minmax(0,.85fr)}.single-module{display:grid;gap:14px}.compact-single{max-width:640px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:20px;background:#0a120e9e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-card{position:relative;width:min(560px,100%);max-height:min(88svh,820px);overflow:auto;border:1px solid rgba(220,230,223,.92);border-radius:8px;background:var(--surface);box-shadow:0 28px 90px #0a120e47;padding:24px}.modal-card.wide{width:min(900px,100%)}.modal-card h2{margin-right:44px}.modal-note{color:var(--muted);line-height:1.55;margin-bottom:16px}.modal-card .auth-box{border:0;box-shadow:none;padding:0}.modal-close{position:absolute;top:16px;right:16px;display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink)}.wheel-picker-wrap{margin:2px 0 14px}.wheel-picker{position:relative;display:flex;gap:2px;height:180px;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line);padding:0 6px;overflow:hidden}.wheel-col{flex:1 1 0;min-width:0;max-height:180px;overflow-y:auto;scroll-snap-type:y mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 30%,#000 70%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 30%,#000 70%,transparent 100%)}.wheel-col::-webkit-scrollbar{display:none}.wheel-pad{height:72px;flex-shrink:0}.wheel-item{height:36px;display:flex;align-items:center;justify-content:center;scroll-snap-align:center;color:var(--muted);font-size:.95rem;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none}.wheel-item.selected{color:var(--ink);font-weight:800;font-size:1.15rem}.wheel-frame{position:absolute;left:6px;right:6px;top:50%;transform:translateY(-50%);height:36px;background:color-mix(in srgb,var(--green) 9%,transparent);border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:8px;pointer-events:none}.wheel-readout{margin:8px 0 0;text-align:center;color:var(--muted);font-weight:700;font-size:.88rem}.child-photo-row{display:flex;align-items:center;gap:12px;margin:2px 0 14px}.child-photo-preview{width:56px;height:56px;border-radius:var(--r-lg);object-fit:cover;border:1px solid var(--line);flex:0 0 auto}.child-photo-preview.empty{display:grid;place-items:center;background:var(--tint-soft);color:var(--green)}.child-photo-btn{cursor:pointer}.photo-error{margin:-6px 0 14px}.pin-fields{display:grid;grid-template-columns:1fr;gap:11px;margin:2px 0 14px}.pin-fields label{margin:0}.pin-toggle{min-height:44px;width:100%;border:1px solid var(--line);border-radius:8px;background:var(--tint-soft);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;font-weight:900}.auth-modal-layout{display:grid;grid-template-columns:minmax(0,.78fr) minmax(340px,1fr);gap:20px;align-items:start}.modal-intro{border-radius:8px;background:var(--surface-2);border:1px solid var(--line);padding:18px}.modal-intro p{color:var(--muted);line-height:1.6}.modal-points{display:grid;gap:10px}.modal-points span,.quick-start-list div{display:flex;align-items:center;gap:10px;border-radius:8px;background:var(--surface);border:1px solid var(--line);padding:10px;font-weight:800}.modal-points svg{color:var(--green)}.modal-form{display:grid}.quick-start-list{display:grid;gap:10px;margin:16px 0}.quick-start-list span{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--dark);color:#fff;font-weight:900;flex:0 0 auto}.quick-start-list p{margin:0;color:var(--muted);line-height:1.45}.quick-start-list strong{color:var(--ink)}.modal-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.confirm-actions{justify-content:flex-end}.confirm-actions .primary-button{display:inline-flex;align-items:center;gap:8px}.child-tabs span,.avatar-xl{display:grid;place-items:center;color:#fff;font-weight:900}.child-tabs span{width:28px;height:28px;border-radius:8px}.metrics-grid{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:16px;margin-bottom:18px}.metric{padding:18px}.metric span,.metric small{display:block;color:var(--muted)}.metric strong{display:block;margin:6px 0;font-size:2.2rem}.metric-text{font-size:1.35rem!important;line-height:1.1}.tool-grid,.child-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}.tool-panel{padding:18px}.span-2{grid-column:span 2}.panel-title{display:flex;align-items:start;justify-content:space-between;gap:18px;margin-bottom:16px}.panel-title h2{font-size:1.28rem;line-height:1.15;margin-bottom:0}.panel-subcopy{max-width:520px;margin:7px 0 0;color:var(--muted);font-size:.92rem;line-height:1.45}.panel-icon{color:var(--green);flex:0 0 auto}.quick-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.quick-row button{min-height:38px;background:var(--tint-soft);color:var(--ink);padding:8px 11px}.logger-form{display:grid}.file-drop{min-height:72px;border:1px dashed #a6b9ae;background:var(--surface-2);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-direction:row;text-align:center;cursor:pointer}.file-drop input,.icon-file input{display:none}.reward-list,.mission-list,.routine-list,.timeline{display:grid;gap:10px}.routine-card{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr) auto;align-items:start;gap:14px;padding:14px}.routine-card span,.routine-card small{display:block;color:var(--muted);font-size:.88rem}.routine-card span{color:var(--green);font-size:.78rem;font-weight:900;text-transform:uppercase}.routine-card strong{display:block;margin:4px 0}.routine-card.is-done-today{border-color:color-mix(in srgb,var(--green) 30%,var(--line));background:color-mix(in srgb,var(--green) 6%,var(--surface))}.routine-card ol{margin:0;padding-left:20px;color:var(--muted);line-height:1.45}.routine-steps-wrap{display:grid;gap:8px}.routine-card li{margin-bottom:5px}.routine-card li span{display:inline;color:inherit;font-size:inherit;font-weight:inherit;text-transform:none}.routine-meta-line{margin-top:4px}.routine-due-status{margin-top:5px;font-weight:800}.routine-due-status.ok,.routine-due-status.done{color:var(--green)!important}.routine-due-status.late{color:#a53f31!important}.routine-day-summary{display:block!important;margin-top:5px;color:var(--green)!important;font-weight:900}.routine-day-summary.date{color:color-mix(in srgb,var(--green) 78%,#4062b7)!important}.routine-history{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.routine-history-streak,.routine-history-chip{display:inline-flex!important;align-items:center;gap:4px;min-height:26px;padding:3px 8px;border-radius:999px;background:color-mix(in srgb,var(--green) 10%,var(--surface));color:var(--green)!important;font-size:.72rem!important;font-weight:900;text-transform:none!important}.routine-history-chip{background:var(--surface);border:1px solid var(--line);color:var(--muted)!important}.routine-history-chip b{color:var(--green)}.routine-history-chip small{display:inline!important;color:#a53f31!important;font-size:.68rem!important;font-weight:800}.routine-history-chip.late{border-color:#a53f3142}.routine-step-points{display:inline-flex!important;margin-left:6px;color:var(--green)!important;font-weight:900}.routine-step-muted{opacity:.45}.routine-step-move{display:inline-flex!important;gap:4px;margin-left:auto}.routine-step-move button{display:inline-grid;place-items:center;width:28px;height:28px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted)}.routine-step-move button:disabled{opacity:.35}.routine-card .primary-button{white-space:nowrap}.routine-form{display:grid;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.routine-step-editor{display:grid;gap:8px}.routine-day-rules{border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:10px 12px}.routine-day-rules summary{cursor:pointer;font-weight:900;color:var(--ink)}.routine-day-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.routine-date-rule-list{display:grid;gap:10px;margin-top:10px}.routine-date-rule-row{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(180px,1fr) auto;align-items:end;gap:10px}.routine-date-rule-row.new{padding-top:10px;border-top:1px solid var(--line)}@media(max-width:620px){.routine-date-rule-row{grid-template-columns:1fr;align-items:stretch}}.routine-day-extras{display:grid;gap:7px;padding:10px;border:1px dashed rgba(39,122,87,.32);border-radius:8px;background:color-mix(in srgb,var(--green) 8%,var(--surface))}.routine-day-extras.date{border-color:color-mix(in srgb,#4062b7 34%,var(--line));background:color-mix(in srgb,#4062b7 7%,var(--surface))}.routine-day-extras>span{color:var(--green-dark);font-size:.78rem;font-weight:900;text-transform:uppercase}.routine-day-extra-check{display:flex;align-items:center;gap:8px}.routine-day-extra-check small{color:var(--ink)!important;font-weight:800}.routine-step-row{display:grid;grid-template-columns:minmax(0,1fr) 92px 40px;align-items:end;gap:8px}.routine-step-row label{min-width:0}.routine-step-row input{width:100%}.routine-flex-check{align-self:end;min-height:44px}.routine-step-checks{display:grid;gap:8px}.routine-step-check{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid var(--line);border-radius:10px;background:#ffffff80;padding:8px 10px;color:var(--ink);font-weight:700}.routine-step-check input{width:18px;height:18px}.routine-step-check span,.routine-step-check small{overflow-wrap:anywhere}.routine-step-check span{display:block;color:var(--ink);font-size:.92rem;font-weight:800;text-transform:none}.routine-step-check small{display:block;color:var(--green);font-size:.82rem;font-weight:900}.evidence-photo-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.evidence-photo-row input{display:none}.evidence-photo-row small{color:var(--muted);font-size:.78rem;font-weight:800;overflow-wrap:anywhere}.evidence-review-flag{display:grid;gap:7px;width:100%;padding:8px 10px;border:1px solid color-mix(in srgb,var(--amber, #d99a24) 38%,var(--line));border-radius:var(--r-sm);background:color-mix(in srgb,var(--amber, #d99a24) 9%,var(--surface))}.evidence-review-flag input[type=text],.evidence-review-flag input:not([type]){width:100%}.evidence-review-badge{display:inline-flex;width:fit-content;max-width:100%;margin-top:4px;padding:4px 7px;border-radius:var(--r-pill);background:color-mix(in srgb,var(--amber, #d99a24) 12%,var(--surface));color:color-mix(in srgb,var(--ink) 78%,var(--amber, #d99a24));font-weight:800}.evidence-thumb,.approve-photo{width:64px;height:64px;border-radius:10px;border:1px solid var(--line);object-fit:cover;background:var(--surface)}.child-routine-card{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.reward-card{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:11px;padding:10px}.reward-card.is-goal{border-color:#277a5780;background:var(--mint)}.reward-card.is-locked{opacity:.72}.reward-card.is-locked .reward-illustration,.reward-card.is-locked .reward-photo{filter:grayscale(.55)}.reward-missing-tag{display:inline-block;margin-top:2px;padding:1px 8px;border-radius:999px;background:color-mix(in srgb,var(--coral) 16%,transparent);color:var(--coral);font-size:.72rem;font-weight:800}.reward-filter-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:2px 0 12px}.reward-sort{display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:700;color:var(--muted)}.reward-sort select{padding:6px 10px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;font-weight:700}.reward-affordable-toggle{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:.85rem;font-weight:700;cursor:pointer}.reward-affordable-toggle.active{background:color-mix(in srgb,var(--green) 16%,transparent);border-color:var(--green);color:var(--green)}.reward-card-actions{display:flex;gap:6px}.reward-goal-btn{background:var(--surface)!important;color:var(--muted)!important;border:1px solid var(--line)!important}.reward-goal-btn.active{background:var(--green)!important;color:#fff!important;border-color:var(--green)!important}.goal-tag{display:inline-block;margin-right:6px;padding:1px 8px;border-radius:999px;background:var(--green);color:#fff;font-size:.7rem;font-weight:900;vertical-align:middle}.reward-card img,.reward-placeholder,.event-row img,.event-icon{width:54px;height:54px;border-radius:8px;object-fit:cover;background:var(--tint-soft)}.reward-placeholder,.event-icon{display:grid;place-items:center;color:var(--green)}.reward-card strong,.reward-card span{display:block}.reward-card span{color:var(--muted);font-size:.9rem}.reward-card button,.mini-form button{min-width:44px;padding:0;background:var(--green);color:#fff}.mini-form{display:grid;grid-template-columns:1fr 70px minmax(96px,1fr) 44px 44px;gap:8px;margin-top:12px}.mini-form input{min-width:0}.icon-file{display:grid;place-items:center;width:44px;min-height:44px;border-radius:8px;margin:0;background:var(--tint-soft);color:var(--green);cursor:pointer}.mission-card{padding:14px}.mission-card span{display:inline-block;color:var(--green);font-size:.78rem;font-weight:900;text-transform:uppercase;margin-bottom:7px}.mission-card strong{display:block}.mission-card.declined span{color:var(--coral)}.mission-card.completed span{color:var(--teal)}.mission-card ol,.sos-result ol,.big-steps,.contract-columns ul{margin:10px 0 0;padding-left:20px;color:var(--muted)}.inline-actions button{min-height:38px;background:var(--green);color:#fff;padding:8px 12px}.inline-actions .muted{background:var(--tint-soft);color:var(--ink)}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.tabs button{border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:8px 12px;font-weight:800}.tabs button.active{background:var(--mint);border-color:var(--green)}.contract-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.contract-columns>div{border-left:3px solid var(--green);padding-left:12px}.contract-actions{display:flex;flex-wrap:wrap;gap:8px;margin:-2px 0 14px}.contract-actions .ghost-button{min-height:38px;padding:8px 12px}.sos-result,.report-box{margin-top:14px;padding:14px;border-radius:8px;background:var(--surface-2);border:1px solid var(--line)}.sos-result span,.report-box span{color:var(--green);font-size:.78rem;font-weight:900;text-transform:uppercase}.sos-result strong,.report-box strong{display:block;margin:5px 0}.sos-result small,.sos-result em{display:block;color:var(--muted);line-height:1.5}.report-stats{display:flex;flex-wrap:wrap;gap:8px}.report-stats span{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:7px 9px;color:var(--ink);text-transform:none}.event-row{display:grid;grid-template-columns:54px 1fr auto;gap:12px;align-items:start;padding:10px}.event-row strong,.event-row span,.event-row time{display:block}.event-row span,.event-row time,.event-row p{color:var(--muted);font-size:.88rem}.event-row p{margin:5px 0 0}.empty{color:var(--muted);margin:0}.splash{min-height:100svh;display:grid;place-items:center;align-content:center;gap:14px;background:var(--paper);color:var(--muted)}.spin{animation:rotate 1s linear infinite}.child-hero{display:flex;align-items:center;gap:18px;margin-bottom:18px;padding:24px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.child-hero h1{color:var(--ink);font-size:clamp(2.2rem,6vw,4.2rem);margin:4px 0 10px}.child-hero p{color:var(--muted);margin:0}.avatar-xl{width:88px;height:88px;border-radius:8px;font-size:2rem;flex:0 0 auto}.progress-track{height:12px;overflow:hidden;background:var(--tint-soft);border-radius:999px}.progress-track span{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--sun))}.big-steps{display:grid;gap:10px;color:var(--ink);font-weight:800}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.45}}@media(max-width:960px){.module-grid,.app-center,.platform-strip,.feature-grid,.steps-grid,.apps-grid,.situation-grid,.parent-module-grid,.tool-grid,.child-grid,.points-summary-grid,.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-layout,.waitlist-layout,.split-section,.safety-layout,.auth-modal-layout,.footer-grid,.mission-grid{grid-template-columns:1fr}.in-split{position:static}.span-2{grid-column:span 2}.contract-columns,.routine-card,.child-routine-card,.instruction-hero,.instruction-section{grid-template-columns:1fr}.instruction-closing{align-items:flex-start;flex-direction:column}}@media(max-width:700px){.landing-nav{align-items:flex-start}.nav-links{justify-content:flex-end}.nav-links a{display:none}.hero{min-height:82svh}.hero-content{min-height:calc(82svh - 86px);padding:26px 0 36px;align-items:end}.hero-shade{background:linear-gradient(90deg,#0e1813e6,#0e18137a),linear-gradient(0deg,#0e1813b8,#0e18132e)}h1{font-size:2.45rem}.hero-copy p{font-size:1rem;line-height:1.5}.instruction-hero{padding:30px 0 52px}.instruction-section{padding:20px}.module-grid,.app-center,.platform-strip,.feature-grid,.steps-grid,.apps-grid,.parent-app-picker,.parent-module-grid,.points-summary-grid,.tool-grid,.child-grid,.metrics-grid,.two-cols,.three-cols,.pin-fields,.contract-columns,.mini-form{grid-template-columns:1fr}.situation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.band{padding:62px 0}.compact-grid .feature-card,.app-tile{min-height:auto}.span-2{grid-column:span 1}.family-strip,.parent-module-header,.child-hero,.topbar{align-items:stretch;flex-direction:column}.app-center-copy,.parent-module{padding:14px}.app-center-copy h1,.parent-module-header h1{font-size:2rem;line-height:1.04}.parent-app-picker button{min-height:98px}.module-child-summary{width:100%}.family-actions{justify-items:stretch}.family-buttons,.child-tabs{justify-content:stretch}.family-buttons>*,.child-tabs button{flex:1 1 auto}.modal-backdrop{padding:10px;align-items:end}.modal-card{max-height:92svh;padding:18px}.topbar-actions{justify-content:space-between}.event-row{grid-template-columns:44px 1fr}.routine-card,.child-routine-card{grid-template-columns:1fr}.event-row time{grid-column:2}}h1,h2,h3,.brand strong,.modal-card h2,.child-hero h1,.reset-card h1{font-family:var(--font-display);font-weight:600;letter-spacing:-.015em}h1{letter-spacing:-.025em}.brand strong{letter-spacing:-.01em}.feature-card,.step-card,.app-tile,.situation-card,.metric,.tool-panel,.auth-box,.waitlist-form,.reward-card,.mission-card,.routine-card,.event-row,.modal-card,.feature-icon{border-radius:var(--radius)}.feature-card,.step-card,.app-tile,.situation-card,.tool-panel,.metric{box-shadow:var(--shadow-soft)}.primary-link,.secondary-link,.primary-button,.ghost-button,.icon-button,.nav-button,.feature-card,.step-card,.app-tile,.situation-card,.metric,.tool-panel,.link-button,.nav-links>a,.app-tile .feature-icon,.brand-mark{transition:transform .3s var(--ease),box-shadow .3s var(--ease),background-color .2s ease,color .2s ease,border-color .2s ease}.primary-link,.primary-button{border-radius:var(--radius-sm);box-shadow:0 10px 24px #277a5742}.primary-link:hover,.primary-button:hover{transform:translateY(-2px);box-shadow:0 16px 32px #277a5752}.primary-link:active,.primary-button:active{transform:translateY(0)}.secondary-link{border-radius:var(--radius-sm)}.secondary-link:hover{transform:translateY(-2px)}.primary-link svg,.secondary-link svg{transition:transform .3s var(--ease)}.primary-link:hover svg,.secondary-link:hover svg{transform:translate(4px)}.feature-card:hover,.step-card:hover,.app-tile:hover,.situation-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lift);border-color:#277a5757}.app-tile:hover .feature-icon{transform:scale(1.06) rotate(-3deg)}.metric:hover,.tool-panel:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.brand:hover .brand-mark{transform:rotate(-4deg) scale(1.04)}.nav-links>a{position:relative}.nav-links>a:after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:2px;border-radius:2px;background:currentColor;opacity:.75;transform:scaleX(0);transform-origin:left;transition:transform .32s var(--ease)}.nav-links>a:hover:after{transform:scaleX(1)}.eyebrow{padding:5px 12px;border-radius:999px;background:#277a571a}.hero .eyebrow{background:#afe8c829}.safety-band .eyebrow{background:#ffffff1f;color:#cfeede}.hero-shade{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.35'/%3E%3C/svg%3E"),radial-gradient(120% 95% at 10% 28%,rgba(24,78,56,.34) 0%,transparent 56%),linear-gradient(90deg,#0b1510e6,#0b1510b3 44%,#0b15101f),linear-gradient(0deg,#0b15109e,#0b15101a)}@keyframes riseIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.hero-copy>*{opacity:0;animation:riseIn .85s var(--ease) forwards}.hero-copy>*:nth-child(1){animation-delay:.06s}.hero-copy>*:nth-child(2){animation-delay:.18s}.hero-copy>*:nth-child(3){animation-delay:.32s}.hero-copy>*:nth-child(4){animation-delay:.46s}.hero-copy>*:nth-child(5){animation-delay:.6s}.mission-landing .mission-grid{margin-top:30px}.mission-grid article h3{font-size:clamp(1.3rem,2.3vw,1.7rem);line-height:1.12;margin-bottom:10px}.founder-card{position:relative;margin:34px auto 0;max-width:880px;padding:34px 36px;border-radius:26px;border:1px solid rgba(39,122,87,.18);background:radial-gradient(120% 140% at 100% 0%,rgba(47,138,151,.12) 0%,transparent 55%),linear-gradient(180deg,#ffffff 0%,var(--mint) 165%);box-shadow:var(--shadow-soft)}.founder-mark{display:grid;place-items:center;width:50px;height:50px;border-radius:16px;margin-bottom:18px;color:#fff;background:linear-gradient(140deg,var(--green),var(--teal));box-shadow:0 12px 26px #277a5747}.founder-card blockquote{margin:0;font-family:var(--font-display);font-style:italic;font-weight:500;font-size:clamp(1.32rem,2.6vw,1.9rem);line-height:1.34;letter-spacing:-.01em;color:var(--ink)}.founder-card figcaption{margin-top:18px;font-weight:800;font-size:.95rem;color:var(--green)}@media(prefers-reduced-motion:reduce){.hero-copy>*{animation:none;opacity:1}*{animation-duration:.001ms!important;transition-duration:.001ms!important}}.suggest-form,.suggest-done{width:min(620px,100%);margin:26px auto 0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:24px}.suggest-form textarea{min-height:110px}.suggest-done{text-align:center;display:grid;justify-items:center;gap:6px}.suggest-done-mark{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;margin-bottom:6px;color:#fff;background:linear-gradient(140deg,var(--green),var(--teal));box-shadow:0 12px 26px #277a5747}.suggest-done h3{margin:0}.suggest-done p{margin:0;color:var(--muted)}.admin-page{min-height:100vh;padding:28px 16px 60px;background:var(--paper)}.admin-shell{width:min(760px,100%);margin:0 auto;display:grid;gap:18px}.admin-login{width:100%;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:24px}.admin-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.admin-head h1{margin:0;font-size:1.7rem}.admin-actions,.admin-tabs{display:flex;gap:8px;flex-wrap:wrap}.admin-tabs button{display:inline-flex;align-items:center;gap:7px;min-height:38px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-weight:800;padding:0 14px;cursor:pointer}.admin-tabs button.active{border-color:#277a5752;color:var(--green-dark);background:var(--green-soft)}.admin-tabs span{display:inline-grid;place-items:center;min-width:22px;height:22px;border-radius:999px;background:#1f2a2614;font-size:.76rem}.admin-list{display:grid;gap:12px}.admin-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:18px 20px}.admin-card.is-hidden{border-color:#c9584852;background:#fff8f6}.admin-card-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:10px;color:var(--muted);font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:0}.admin-card h2{margin:0 0 8px;font-size:1.05rem;line-height:1.25}.admin-card p{margin:0 0 12px;color:var(--ink);line-height:1.55;white-space:pre-wrap}.admin-badge{display:inline-flex;align-items:center;min-height:24px;border-radius:999px;background:#1f2a2614;color:var(--muted);padding:0 9px;font-size:.73rem;font-weight:900}.admin-badge.warning{background:#fff2d7;color:#8c5a00}.admin-badge.danger{background:#ffe3dd;color:#a53f31}.admin-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:.86rem;font-weight:700}.admin-meta a{display:inline-flex;align-items:center;gap:6px;color:var(--green)}.admin-meta-soft{justify-content:flex-start;margin-top:8px;color:var(--muted);font-weight:700}.admin-forum-summary{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:.88rem;font-weight:800}.admin-forum-summary span{display:inline-flex;align-items:center;min-height:30px;border:1px solid var(--line);border-radius:999px;background:var(--surface);padding:0 11px}.admin-audit-log{border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:10px 12px}.admin-audit-log summary{cursor:pointer;color:var(--ink);font-weight:900}.admin-audit-log div{display:grid;gap:8px;margin-top:10px}.admin-audit-log p{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;color:var(--muted);font-size:.86rem}.admin-audit-log span{display:inline-flex;min-height:22px;align-items:center;border-radius:999px;background:#1f2a2612;padding:0 8px;font-weight:800}.admin-case-note{display:grid;gap:6px;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#f8fbf8}.admin-case-note small{color:var(--muted);font-weight:800}.admin-case-note p{margin:0;font-size:.9rem}.admin-template-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.admin-mod-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:14px}.admin-mod-actions .danger{border-color:#c9584847;color:#a53f31}.child-nav{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 16px}.child-nav button{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:11px 16px;font-weight:800;color:var(--ink);box-shadow:var(--shadow-soft);transition:transform .25s var(--ease),box-shadow .25s var(--ease),background-color .2s ease,color .2s ease}.child-nav button:hover{transform:translateY(-2px)}.child-nav button.active{background:linear-gradient(140deg,var(--green),var(--teal));border-color:transparent;color:#fff;box-shadow:0 12px 26px #277a5747}.child-views .tool-panel{margin:0}.child-reward-list{display:grid;gap:12px}.child-reward-card{display:flex;align-items:center;gap:14px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.child-reward-card.ready{border-color:#277a5780;background:var(--mint)}.child-reward-card img,.child-reward-card .reward-placeholder{width:60px;height:60px;border-radius:12px;object-fit:cover;flex:0 0 auto;display:grid;place-items:center;background:var(--tint-soft);color:var(--green)}.child-reward-body{flex:1;min-width:0;display:grid;gap:6px}.child-reward-body small{color:var(--muted);font-weight:700}.child-event-list{display:grid;gap:10px}.child-event{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.child-event-mark{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;flex:0 0 auto;color:#fff}.child-event.good .child-event-mark{background:var(--green)}.child-event.cost .child-event-mark{background:var(--coral)}.child-event-body{flex:1;min-width:0}.child-event-body strong{display:block}.child-event-body p{margin:3px 0;color:var(--muted);font-size:.9rem}.child-event-body time{color:var(--muted);font-size:.8rem}.child-event-delta{font-weight:900;font-size:1.1rem;flex:0 0 auto}.child-event.good .child-event-delta{color:var(--green)}.child-event.cost .child-event-delta{color:var(--coral)}.child-mission{border:1px solid rgba(39,122,87,.3);background:var(--surface);border-radius:14px;padding:16px;margin-top:12px}.child-mission small{display:block;margin-top:8px;color:var(--muted);font-weight:700}.child-mission-done{margin-top:16px;display:grid;gap:6px}.child-mission-done .done-row{display:flex;align-items:center;gap:8px;color:var(--muted);font-weight:700}.child-idea-form{display:flex;gap:10px;flex-wrap:wrap}.child-idea-form input{flex:1;min-width:200px}.child-idea-form .primary-button{flex:0 0 auto}.child-idea-list{margin-top:16px;display:grid;gap:8px}.idea-status-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.idea-badge{flex:0 0 auto;border-radius:999px;padding:4px 10px;font-size:.74rem;font-weight:800;background:var(--tint-cream);color:#8b6a24}.idea-badge.rejected{background:#f7e4e1;color:var(--coral)}.reward-ideas{display:grid;gap:10px;padding:14px;margin-bottom:14px;border:1px dashed rgba(39,122,87,.4);border-radius:14px;background:var(--surface-2)}.idea-price-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.idea-price-row strong{flex:1;min-width:140px}.idea-price-row input{width:84px}.idea-price-row .ghost-button{padding:8px 12px}.quick-section{margin-top:6px}.quick-section+.quick-section{margin-top:22px}.quick-head{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:.95rem;margin-bottom:12px}.quick-head.good{color:var(--green)}.quick-head.cost{color:var(--coral)}.quick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.quick-tile{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-height:92px;padding:14px 16px;border-radius:16px;border:1px solid var(--line);background:var(--surface);text-align:left;font-weight:800;color:var(--ink);box-shadow:var(--shadow-soft);transition:transform .2s var(--ease),box-shadow .2s var(--ease),border-color .2s ease,background-color .2s ease}.quick-tile:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift)}.quick-tile:active{transform:translateY(0) scale(.98)}.quick-tile:disabled{opacity:.55;cursor:progress}.quick-tile.good:hover{border-color:#277a5780;background:var(--surface-2)}.quick-tile.cost:hover{border-color:#c9584880;background:#fdf6f4}.quick-amt{display:inline-grid;place-items:center;min-width:46px;height:32px;padding:0 10px;border-radius:999px;font-size:1rem;font-weight:900;color:#fff}.quick-tile.good .quick-amt{background:linear-gradient(140deg,var(--green),var(--teal))}.quick-tile.cost .quick-amt{background:linear-gradient(140deg,var(--coral),#d98036)}.quick-tile-label{font-size:.95rem;line-height:1.2}.quick-hint{margin:12px 0 0;color:var(--muted);font-size:.86rem;font-weight:700}.quick-custom-toggle{margin-top:20px;display:inline-flex}.quick-toast{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px;padding:12px 14px;border-radius:14px;background:var(--mint);border:1px solid rgba(39,122,87,.3);animation:riseIn .35s var(--ease)}.quick-toast-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--green);color:#fff;flex:0 0 auto}.quick-toast-text{flex:1;min-width:160px;font-weight:700}.quick-undo{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--green);background:var(--surface);color:var(--green);border-radius:999px;padding:7px 14px;font-weight:800}.quick-undo:hover{background:var(--green);color:#fff}.quick-toast-x{border:0;background:transparent;color:var(--muted);padding:4px}.praise-callout,.reward-rotation-callout{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:14px;border:1px solid rgba(39,122,87,.28);background:var(--mint);color:var(--ink);font-weight:750;line-height:1.35}.praise-callout svg,.reward-rotation-callout svg{color:var(--green);flex:0 0 auto;margin-top:1px}.praise-callout span,.reward-rotation-callout span{flex:1;min-width:0}.praise-callout button{display:grid;place-items:center;width:26px;height:26px;border:0;border-radius:999px;background:#277a571f;color:var(--green);cursor:pointer;flex:0 0 auto}.reward-rotation-callout{margin:0 0 14px;background:#fff8e8;border-color:#cb8f1f57}.reward-rotation-callout svg{color:#a66b00}.strategy-library{display:grid;gap:14px}.strategy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.strategy-card{min-width:0;display:grid;gap:8px;padding:15px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-soft)}.strategy-card span{width:fit-content;border-radius:999px;padding:4px 9px;background:var(--tint-soft);color:var(--green);font-size:.74rem;font-weight:900}.strategy-card strong{font-size:1.05rem}.strategy-card p,.strategy-card small{margin:0;color:var(--muted);line-height:1.42}.strategy-card small{color:var(--ink);font-weight:800}.app-carousel{display:flex;flex-wrap:wrap;gap:10px;padding:2px 2px 12px}.app-chip{--app-accent: var(--green);--app-soft: #eef8f1;flex:1 1 86px;max-width:132px;display:grid;justify-items:center;gap:8px;padding:12px 8px;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--ink);box-shadow:var(--shadow-soft);cursor:pointer;transition:transform .2s var(--ease),box-shadow .2s var(--ease),border-color .2s ease,background-color .2s ease}.app-chip:hover{transform:translateY(-3px)}.app-chip:active{transform:translateY(0) scale(.97)}.app-chip-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:linear-gradient(145deg,var(--dark),color-mix(in srgb,var(--app-accent) 62%,var(--dark)));color:#fff;box-shadow:inset 0 -8px 16px #ffffff14;transition:transform .2s var(--ease)}.app-chip-icon svg{width:23px;height:23px}.app-chip-label{font-size:.84rem;font-weight:800;line-height:1.1;text-align:center}.app-chip.active{border-color:var(--app-accent);background:var(--app-soft);box-shadow:0 12px 26px color-mix(in srgb,var(--app-accent) 24%,transparent)}.app-chip.active .app-chip-icon{transform:scale(1.04)}.app-chip.active .app-chip-label{color:var(--app-accent)}.app-chip.app-points{--app-accent: #277a57;--app-soft: #eef8f1}.app-chip.app-routines{--app-accent: #2f8a97;--app-soft: #eef9fa}.app-chip.app-sos{--app-accent: #c95848;--app-soft: #fff3f0}.app-chip.app-rewards{--app-accent: #b9851d;--app-soft: #fff8e8}.app-chip.app-album{--app-accent: #4f83c4;--app-soft: #f0f6ff}.app-chip.app-report{--app-accent: #586879;--app-soft: #f3f6f7}.quick-tile-wrap{position:relative;display:flex}.quick-tile-wrap .quick-tile{width:100%}.quick-tile-del{position:absolute;top:-7px;right:-7px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:0;background:var(--coral);color:#fff;box-shadow:0 4px 10px #c9584866;cursor:pointer;z-index:2}.qa-form{margin-top:18px;padding:16px;border:1px dashed rgba(39,122,87,.4);border-radius:16px;background:var(--surface-2)}.qa-form-title{margin:0 0 12px;font-weight:800;color:var(--ink)}.qa-form .segmented.compact{margin-bottom:12px}.qa-form-row{display:flex;gap:10px;flex-wrap:wrap;align-items:stretch}.qa-form-row input[type=text],.qa-form-row input:not([type=number]){flex:1;min-width:180px}.qa-form-row input[type=number]{width:80px;flex:0 0 auto}.qa-form-row .primary-button{flex:0 0 auto}.quick-toggles{display:flex;gap:18px;flex-wrap:wrap;margin-top:20px}.add-event-cta{width:100%;justify-content:center;min-height:56px;font-size:1.05rem;margin:4px 0 18px}.goal-card{display:flex;flex-direction:column;align-items:flex-start;gap:7px}.goal-card>span{font-weight:800;line-height:1.2}.goal-card .progress-track{width:100%;margin:2px 0}.goal-card-note{color:var(--muted);font-weight:700}.modal-card.sheet{border-radius:22px;animation:riseIn .3s var(--ease)}.event-sheet{display:grid;gap:12px}.event-sheet .segmented.event-type{grid-template-columns:1fr 1fr}.event-sheet .segmented.event-type.three{grid-template-columns:1fr 1fr 1fr}.event-sheet .segmented.event-type.three button{display:inline-flex;align-items:center;justify-content:center;padding:8px 4px;font-size:.82rem;gap:4px}.segmented button.active.repair{color:var(--blue, #3a7bd5)}.primary-button.repair{background:var(--blue, #3a7bd5)}.field-label{display:block;margin-top:6px;font-weight:800;color:var(--muted);font-size:.82rem}.sheet-chips{display:flex;flex-wrap:wrap;gap:8px}.sheet-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;background:var(--surface);padding:7px 14px 7px 7px;font-weight:800;color:var(--ink);transition:transform .18s var(--ease),border-color .2s ease,background-color .2s ease}.sheet-chip:hover{transform:translateY(-2px)}.sheet-chip-amt{display:inline-grid;place-items:center;min-width:36px;height:26px;padding:0 8px;border-radius:999px;color:#fff;font-weight:900;font-size:.85rem}.sheet-chip.good .sheet-chip-amt{background:var(--green)}.sheet-chip.cost .sheet-chip-amt{background:var(--coral)}.sheet-chip.good.active{border-color:var(--green);background:var(--mint)}.sheet-chip.cost.active{border-color:var(--coral);background:#fdf0ed}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media(max-width:640px){.modal-backdrop.as-sheet{place-items:end stretch;padding:0}.modal-card.sheet{width:100%;max-width:none;max-height:94svh;border-radius:22px 22px 0 0;padding:20px 18px calc(22px + env(safe-area-inset-bottom));animation:sheetUp .32s var(--ease)}}.report-actions{display:flex;gap:8px;align-items:center}.report-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:6px 0 14px}.report-card{border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:var(--surface)}.report-card span{color:var(--muted);font-weight:700;font-size:.82rem}.report-card strong{display:block;margin-top:4px;font-size:1.5rem;line-height:1.05}.report-card.good strong{color:var(--green)}.report-card.cost strong{color:var(--coral)}.report-split{display:flex;height:14px;border-radius:99px;overflow:hidden;margin:0 0 16px;background:var(--line)}.report-split .good{background:var(--green)}.report-split .cost{background:var(--coral)}.report-bars{display:grid;gap:10px;margin:8px 0 4px}.report-bar-row{display:grid;grid-template-columns:minmax(96px,.5fr) 1fr 28px;align-items:center;gap:10px}.report-bar-label{font-weight:700;font-size:.86rem;color:var(--ink)}.report-bar{height:10px;border-radius:6px;background:var(--tint-soft);overflow:hidden}.report-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--teal))}.report-bar-count{text-align:right;font-weight:800;color:var(--muted)}.report-reco{display:flex;align-items:flex-start;gap:8px;margin:16px 0 0;padding:12px 14px;border-radius:12px;background:var(--mint);color:var(--ink);font-weight:600;line-height:1.5}.report-reco svg{flex:0 0 auto;margin-top:3px;color:var(--green)}.report-reco.ratio-warning{background:#fff4de;border:1px solid #f2c977}[data-theme=dark] .report-reco.ratio-warning{background:#f2c9771f;border-color:#f2c9776b}.muted-note{color:var(--muted);font-weight:600}@media(max-width:560px){.report-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}.school-panel{display:grid;gap:14px}.school-create-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2)}.school-create-form label,.school-note-label{display:grid;gap:6px;color:var(--ink);font-weight:800}.school-create-form input,.school-create-form textarea,.school-note-label textarea{border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);padding:10px 12px}.school-create-form textarea,.school-note-label textarea{resize:vertical;line-height:1.4}.school-create-form .span-form,.school-form-actions{grid-column:1 / -1}.school-form-actions,.school-card-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.school-card-list{display:grid;gap:10px}.school-card-row{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-soft)}.school-card-row.revoked{opacity:.68;background:color-mix(in srgb,var(--surface) 72%,var(--line))}.school-card-head{display:flex;gap:12px;align-items:flex-start;justify-content:space-between}.school-card-head strong,.school-card-head small{display:block}.school-card-head small{margin-top:3px;color:var(--muted);font-weight:750}.school-status{flex:0 0 auto;border-radius:999px;padding:5px 9px;background:color-mix(in srgb,var(--green) 12%,var(--surface));color:var(--green);font-size:.75rem;font-weight:900;white-space:nowrap}.school-status.revoked{background:color-mix(in srgb,var(--coral) 10%,var(--surface));color:var(--coral)}.school-goal-list{margin:0;padding-left:20px;color:var(--muted);line-height:1.45}.school-entry-list{display:grid;gap:8px}.school-entry-row{display:grid;gap:8px;padding:11px 12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2)}.school-entry-row strong,.school-entry-row small{display:block}.school-entry-row small,.school-entry-row p{margin:0;color:var(--muted)}.school-entry-ratings{display:flex;flex-wrap:wrap;gap:6px}.school-entry-ratings span{border-radius:999px;padding:5px 8px;background:var(--surface);border:1px solid var(--line);color:var(--ink);font-size:.78rem;font-weight:800}.public-school .legal-inner{max-width:900px}.school-public-form{display:grid;gap:16px;margin:14px 0 22px}.school-public-help{display:grid;gap:3px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--green) 26%,var(--line));border-radius:var(--r-md);background:color-mix(in srgb,var(--green) 8%,var(--surface));color:var(--ink)}.school-public-help strong{color:var(--green);font-size:.92rem}.school-public-help span{color:var(--muted);font-weight:750;line-height:1.35}.school-goal-field{display:grid;gap:12px;margin:0;padding:16px;border:2px solid color-mix(in srgb,var(--line) 88%,var(--green));border-radius:var(--r-md);background:var(--surface)}.school-goal-field legend{display:grid;gap:4px;width:100%;padding:0 6px;color:var(--ink);font-weight:900;line-height:1.28}.school-goal-field legend strong{display:block;max-width:100%;font-size:1.04rem}.school-goal-kicker{display:inline-flex;width:max-content;padding:3px 8px;border-radius:999px;background:color-mix(in srgb,var(--green) 11%,var(--surface-2));color:var(--green);font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.school-rating-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.school-rating-row label{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:10px;min-height:76px;padding:12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);color:var(--ink);font-weight:800;line-height:1.25}.school-rating-row label.active{border-color:color-mix(in srgb,var(--green) 58%,var(--line));background:color-mix(in srgb,var(--green) 9%,var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--green) 12%,transparent)}.school-rating-row input{flex:0 0 auto;width:18px;height:18px;padding:0;margin-top:2px;justify-self:center}.school-rating-row label span{display:grid;gap:3px;min-width:0;overflow-wrap:anywhere}.school-rating-row label b,.school-rating-row label small{display:block}.school-rating-row label b{font-size:.96rem}.school-rating-row label small{color:var(--muted);font-size:.82rem;font-weight:750}.seo-guide .legal-inner{max-width:820px}@media(max-width:720px){.public-school .legal-inner{padding-left:14px;padding-right:14px}.school-create-form,.school-rating-row{grid-template-columns:1fr}.school-goal-field{padding:16px 14px;border-radius:16px}.school-goal-field legend{padding:0 2px}.school-goal-field legend strong{font-size:1.08rem}.school-rating-row label{min-height:68px;padding:13px}.school-card-head{flex-direction:column}}.app-chip.app-manage{--app-accent: #5b6678;--app-soft: #f1f3f6}.manage-wrap{display:grid;gap:16px}.manage-tabs{display:flex;gap:8px;flex-wrap:wrap}.manage-tabs button{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:9px 15px;font-weight:800;box-shadow:var(--shadow-soft);transition:transform .2s var(--ease),background-color .2s ease,color .2s ease,border-color .2s ease}.manage-tabs button:hover{transform:translateY(-2px)}.manage-tabs button.active{background:var(--green);border-color:var(--green);color:#fff}.reward-desc{display:block;color:var(--muted);font-size:.85rem;line-height:1.3;margin:2px 0}.reward-card-actions{flex-wrap:wrap}.reward-del-btn{background:var(--surface)!important;color:var(--coral)!important;border:1px solid var(--line)!important}.reward-del-btn:hover{background:var(--coral)!important;color:#fff!important;border-color:var(--coral)!important}.reward-add-cta{width:100%;justify-content:center;margin:2px 0 16px}.reward-edit-btn{background:var(--surface)!important;color:var(--muted)!important;border:1px solid var(--line)!important}.reward-edit-btn:hover{background:var(--tint-soft)!important;color:var(--green)!important;border-color:var(--green)!important}.reward-ranking-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:.85rem;font-weight:700;cursor:pointer}.reward-ranking-btn:hover{border-color:var(--sun, var(--green));color:var(--ink)}.reward-ranking{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:8px}.reward-ranking-row{display:flex;align-items:center;gap:12px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.reward-ranking-place{flex:0 0 auto;width:24px;text-align:center;font-weight:900;color:var(--muted)}.reward-ranking-row:nth-child(1) .reward-ranking-place{color:var(--sun, #e0a400)}.reward-ranking-info{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}.reward-ranking-info strong{line-height:1.2}.reward-ranking-info small{color:var(--muted)}.reward-ranking-count{flex:0 0 auto;text-align:center;display:flex;flex-direction:column;min-width:56px}.reward-ranking-count strong{font-size:1.1rem;color:var(--green)}.reward-ranking-count small{color:var(--muted);font-size:.72rem}.reward-add-form{display:grid;gap:8px;margin-top:16px}.reward-add-row{display:grid;grid-template-columns:74px 1fr 44px auto;gap:8px;align-items:stretch}.reward-photo-name{color:var(--muted);font-size:.82rem;font-weight:700}.qa-list{display:grid;gap:8px;margin-top:16px}.qa-list-row{display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.qa-list-row strong{flex:1}.qa-badge{display:inline-grid;place-items:center;min-width:36px;height:26px;padding:0 8px;border-radius:999px;color:#fff;font-weight:900;font-size:.82rem}.qa-badge.good{background:var(--green)}.qa-badge.cost{background:var(--coral)}.qa-list-row .ghost-button{color:var(--coral)}.child-reward-desc{display:block;color:var(--muted);font-size:.82rem;margin:2px 0}@media(max-width:560px){.reward-add-row{grid-template-columns:1fr 1fr}}.report-events{display:grid;gap:6px;margin-top:6px}.report-event-row{display:grid;grid-template-columns:92px 1fr auto;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-size:.9rem}.report-event-row time{color:var(--muted);font-weight:700;white-space:nowrap}.report-event-row span{font-weight:900;white-space:nowrap}.report-event-row span.pos{color:var(--green)}.report-event-row span.neg{color:var(--coral)}.routine-card.is-pending{border-color:#e3a83d99;background:#fff8e8}.routine-flag{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:999px;background:var(--sun);color:#5b4410;font-size:.7rem;font-weight:900;vertical-align:middle}.routine-flag.done{background:var(--mint);color:var(--green)}.routine-pending{display:inline-block;color:#8b6a24;font-weight:800;font-size:.85rem}.routine-pending.done{color:var(--green)}.mission-card .mission-points{display:inline-block;margin-top:4px;font-weight:800;color:var(--muted);font-size:.82rem}.session-expired-banner{display:flex;align-items:center;justify-content:center;gap:12px;background:#fff4d6;color:#6a4a00;font-weight:800;padding:10px 16px;text-align:center;position:sticky;top:0;z-index:50}.session-expired-banner button{border:0;background:transparent;font-size:1.2rem;line-height:1;cursor:pointer;color:inherit}.error-boundary{max-width:460px;margin:16vh auto;text-align:center;padding:32px 24px;font-family:var(--font-body)}.error-boundary h1{font-family:var(--font-display);margin-bottom:8px}.error-boundary button{margin-top:18px;border:0;border-radius:12px;padding:12px 22px;font-weight:800;background:var(--green, #2f7d57);color:#fff;cursor:pointer}.event-row{position:relative}.event-undo{border:0;background:transparent;color:var(--muted, #65736c);cursor:pointer;padding:6px;border-radius:8px;align-self:center}.event-undo:hover:not(:disabled){background:#fde2e2;color:#b3261e}.event-undo:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,.app-chip:focus-visible,.sheet-chip:focus-visible,[role=button]:focus-visible{outline:3px solid #2f7d57;outline-offset:2px;border-radius:8px}.legal-page{min-height:100vh;background:var(--paper);padding:32px 18px 64px;font-family:var(--font-body);color:var(--ink, #17201c)}.legal-inner{max-width:760px;margin:0 auto}.legal-back{display:inline-block;margin-bottom:18px;color:var(--green, #2f7d57);font-weight:800;text-decoration:none}.legal-page h1{font-family:var(--font-display);font-size:2rem;margin-bottom:8px}.legal-page h2{font-family:var(--font-display);font-size:1.2rem;margin:26px 0 8px}.legal-page p,.legal-page li{line-height:1.65;color:#3a463f}.legal-page ul{padding-left:20px;margin:8px 0;display:grid;gap:6px}.legal-page a{color:var(--green, #2f7d57)}.legal-lead{font-size:1.05rem;font-weight:600;color:var(--ink, #17201c)}.legal-foot{margin-top:40px;padding-top:18px;border-top:1px solid var(--line, #dce6df);display:flex;flex-wrap:wrap;gap:16px;align-items:center;font-size:.9rem}.legal-foot a{font-weight:800;text-decoration:none}.consent-block{display:grid;gap:10px;margin:4px 0 8px}.consent-row{display:flex;gap:10px;align-items:flex-start;font-size:.85rem;font-weight:600;color:var(--muted, #65736c);line-height:1.45;cursor:pointer}.consent-row input{width:18px;height:18px;margin-top:2px;flex-shrink:0}.consent-row a{color:var(--green, #2f7d57);font-weight:800}.footer-legal-links{display:flex;flex-wrap:wrap;gap:18px;justify-content:center;padding:14px 0 4px}.footer-legal-links a{color:inherit;opacity:.85;font-weight:700;text-decoration:none;font-size:.9rem}.footer-legal-links a:hover{opacity:1;text-decoration:underline}.account-privacy{display:grid;gap:14px}.account-action{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:14px;border:1px solid var(--line, #dce6df);border-radius:14px}.account-action strong{display:block}.account-action small{color:var(--muted, #65736c)}.account-action.danger{border-color:#f3c9c4;background:#fff6f5}.forum-alias-form{align-items:flex-start}.forum-alias-controls{display:grid;gap:8px;min-width:min(260px,100%)}.forum-alias-controls input{min-height:42px;border:1px solid var(--line, #dce6df);border-radius:12px;padding:0 12px;font:inherit}.forum-block-note{display:block;margin-top:6px;color:#a53f31!important;font-weight:800}@media(max-width:560px){.account-action,.forum-alias-form{align-items:stretch;flex-direction:column}}.account-confirm{display:grid;gap:6px;font-weight:700}.primary-button.danger{background:#b3261e}.edit-child-danger{margin-top:14px;text-align:center}.link-button.danger{color:#b3261e}.routine-templates{margin-bottom:14px}.template-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.template-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line, #dce6df);background:var(--surface);border-radius:999px;padding:8px 12px;font-weight:700;cursor:pointer;color:var(--ink, #17201c);transition:transform .12s,box-shadow .12s}.template-chip:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 14px #17201c1a;border-color:#bcd6c6}.template-chip:disabled{opacity:.5;cursor:default}.template-emoji{font-size:1.1rem}.template-plus{background:#eef4f0;color:var(--green, #2f7d57);border-radius:8px;padding:1px 7px;font-size:.8rem}.child-routine-actions{display:flex;gap:8px;flex-wrap:wrap}.focus-body,.focus-done{text-align:center;padding:4px 2px 8px}.focus-dots{display:flex;gap:6px;justify-content:center;margin-bottom:14px}.focus-dots span{width:10px;height:10px;border-radius:50%;background:#dce6df}.focus-dots span.past{background:var(--green, #2f7d57)}.focus-dots span.now{background:var(--green, #2f7d57);box-shadow:0 0 0 4px #2f7d572e}.focus-step-label{color:var(--muted, #65736c);font-weight:800;font-size:.85rem;margin:0}.focus-now{font-family:var(--font-display);font-size:1.9rem;line-height:1.2;margin:6px 0 4px;color:var(--ink, #17201c)}.focus-next{color:var(--muted, #65736c);margin:2px 0 14px}.focus-timer{margin:8px 0 18px}.focus-bar{height:10px;background:#eef4f0;border-radius:999px;overflow:hidden}.focus-bar i{display:block;height:100%;background:linear-gradient(90deg,#3a9c6b,#2f7d57);transition:width 1s linear}.focus-time{font-family:var(--font-display);font-size:2.4rem;margin-top:8px;color:var(--green, #2f7d57)}.focus-time-label{color:var(--muted, #65736c);font-size:.8rem;font-weight:700}.focus-actions{display:flex;gap:10px;justify-content:center}.focus-emoji{font-size:3rem}.first-steps{background:linear-gradient(135deg,#f4f9f6,#eef6f0);border:1px solid #d7e6dd;border-radius:18px;padding:16px 18px;margin:4px 0 14px}.first-steps-head{display:flex;justify-content:space-between;align-items:flex-start}.first-steps-head h2{font-size:1.2rem;margin:2px 0 0}.fs-count{color:var(--green, #2f7d57);font-size:.9rem}.fs-head-actions{display:flex;align-items:center;gap:6px}.fs-close,.fs-expand{border:0;background:transparent;cursor:pointer;color:var(--muted, #65736c);padding:4px}.fs-expand{border:1px solid var(--line, #dce6df);border-radius:999px;padding:6px 10px;background:var(--surface);font-weight:800}.first-steps.compact{padding:12px 14px}.fs-progress-line{height:8px;border-radius:999px;background:#2f7d5724;overflow:hidden;margin-top:10px}.fs-progress-line span{display:block;height:100%;border-radius:inherit;background:var(--green, #2f7d57)}.first-steps-list{display:grid;gap:8px;margin-top:12px}.first-step{display:flex;align-items:center;gap:12px;text-align:left;background:var(--surface);border:1px solid var(--line, #dce6df);border-radius:12px;padding:10px 14px;cursor:pointer;width:100%;transition:border-color .12s,transform .12s}.first-step:hover:not(:disabled){border-color:#9fcbb2;transform:translate(2px)}.first-step.done{opacity:.62;cursor:default;background:#f7faf8}.first-step .fs-check{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--green, #2f7d57);color:#fff;flex-shrink:0}.first-step.done .fs-check{background:var(--green, #2f7d57)}.first-step:not(.done) .fs-check{background:#eef4f0;color:var(--green, #2f7d57)}.fs-circle{width:12px;height:12px;border:2px solid var(--green, #2f7d57);border-radius:50%}.fs-text{display:grid;gap:1px;flex:1}.fs-text small,.fs-arrow{color:var(--muted, #65736c)}.calm-exercise .panel-icon{color:#c2557a}.calm-menu{display:grid;gap:12px}.calm-choice{display:grid;gap:2px;text-align:left;padding:16px 18px;border:1px solid var(--line,#dce6df);border-radius:16px;background:var(--surface);cursor:pointer;transition:transform .12s,box-shadow .12s,border-color .12s}.calm-choice:hover{transform:translateY(-2px);box-shadow:0 6px 18px #17201c14;border-color:#e7c2d2}.calm-choice-emoji{font-size:1.8rem}.calm-choice strong{font-size:1.05rem}.calm-choice small{color:var(--muted,#65736c)}.calm-breath{text-align:center;padding:10px 0 6px}.calm-circle{width:150px;height:150px;border-radius:50%;margin:42px auto;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 40%,#bfe8d4,#79c7a3);color:#15402e;font-weight:800;font-size:1.1rem;box-shadow:0 10px 40px #2f7d5740}.calm-circle.in{transform:scale(1.45);transition:transform 4s ease-in}.calm-circle.hold{transform:scale(1.45);transition:transform .2s}.calm-circle.out{transform:scale(.85);transition:transform 4s ease-out}.calm-cycle{color:var(--muted,#65736c);font-weight:700;margin:6px 0 14px}.calm-feelings{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.calm-feel{display:grid;gap:4px;justify-items:center;min-width:84px;padding:12px 10px;border:1px solid var(--line,#dce6df);border-radius:14px;background:var(--surface);cursor:pointer;font-weight:700;color:var(--ink,#17201c);transition:transform .12s,border-color .12s}.calm-feel:hover{transform:translateY(-2px);border-color:#e7c2d2}.calm-feel span{font-size:1.9rem}.calm-feel-detail{text-align:center;padding:6px 0}.calm-feel-big{font-size:3.2rem}.calm-feel-msg{font-family:var(--font-display);font-size:1.2rem;margin:6px 0 10px;color:var(--ink,#17201c)}.calm-tips{display:inline-grid;gap:6px;text-align:left;margin:0 auto 14px;padding-left:18px;color:var(--ink)}.calm-tips li{line-height:1.4}.calm-feel-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.calm-launch{margin-bottom:12px;color:#c2557a}.report-share-box{background:#f4f9f6;border:1px solid #d7e6dd;border-radius:12px;padding:12px 14px;margin:4px 0 12px;display:grid;gap:6px}.report-share-row{display:flex;gap:8px;align-items:center}.report-share-row input{flex:1;font-size:.85rem;padding:8px 10px;border:1px solid var(--line,#dce6df);border-radius:8px;background:var(--surface);color:var(--ink,#17201c)}.public-report{min-height:100vh;background:var(--paper);padding:32px 18px 64px;font-family:var(--font-body)}.public-report .legal-inner{max-width:760px;margin:0 auto}.pr-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:18px}.pr-head h1{font-family:var(--font-display);font-size:2rem;margin:4px 0}@media print{.pr-head button{display:none}.public-report{background:var(--surface)}}.bloom-mascot{display:flex;align-items:center;gap:12px;margin-left:auto;background:#ffffff80;border:1px solid #d7e6dd;border-radius:16px;padding:10px 14px;min-width:190px}.bloom-plant{font-size:2.6rem;line-height:1;animation:bloom-sway 4s ease-in-out infinite}@keyframes bloom-sway{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}.bloom-info{display:grid;gap:3px}.bloom-info strong{font-size:.95rem}.bloom-info small{color:var(--muted,#65736c);font-size:.76rem}.bloom-bar{height:7px;background:#e7f0ea;border-radius:999px;overflow:hidden;width:130px}.bloom-bar i{display:block;height:100%;background:linear-gradient(90deg,#3a9c6b,#2f7d57)}@media(max-width:640px){.bloom-mascot{margin-left:0;width:100%}}.print-packs{margin-top:16px;padding-top:12px;border-top:1px solid var(--line,#dce6df)}.print-pack-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.report-shares-list{margin:4px 0 12px;display:grid;gap:6px}.report-share-item{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:.82rem;color:var(--muted,#65736c);border:1px solid var(--line,#dce6df);border-radius:10px;padding:8px 12px}.app-shell{padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}.topbar{padding-top:var(--safe-top)}.tool-panel{border-radius:var(--card-radius, var(--r-md));box-shadow:var(--card-shadow, var(--shadow-soft))}.family-strip{border-radius:var(--r-md);box-shadow:var(--shadow-soft)}.primary-button{min-height:var(--tap-parent);transition:transform var(--t-press) var(--ease),box-shadow var(--t-press) var(--ease)}.primary-button:active{transform:translateY(2px)}.ghost-button:active,.icon-button:active,.app-chip:active,.template-chip:active,.calm-choice:active,.calm-feel:active{transform:scale(.97)}[data-realm=child] .primary-button{min-height:var(--tap-child);border-radius:var(--r-md);background:var(--candy-bloom);box-shadow:var(--press-3d)}[data-realm=child] .primary-button:hover{transform:none}[data-realm=child] .primary-button:active{transform:translateY(4px);box-shadow:none}[data-realm=child] .child-hero,[data-realm=child] .child-reward-card,[data-realm=child] .child-mission,[data-realm=child] .tool-panel{border-radius:var(--r-lg)}[data-realm=child] .child-reward-card.ready{background:var(--surf-mint)}[data-realm=child] .child-reward-card.is-goal{background:var(--surf-butter)}[data-realm=child] .child-hero p strong{color:var(--green)}.avatar-xl{border-radius:var(--r-xl)}.bloom-plant{font-size:3rem}.bloom-bar{height:11px}[data-realm=child] .bloom-bar i{background:var(--grad-bloom)}[data-realm=child] .child-nav{position:fixed;left:0;right:0;bottom:0;z-index:40;max-width:760px;margin:0 auto;display:flex;flex-wrap:nowrap;gap:4px;padding:8px 10px calc(8px + var(--safe-bottom));background:#fffffff0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--line);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x proximity}[data-realm=child] .child-nav::-webkit-scrollbar{display:none}[data-realm=child] .child-nav button{flex:0 0 auto;min-width:60px;min-height:var(--tap-child);flex-direction:column;gap:3px;border:0;background:transparent;box-shadow:none;border-radius:var(--r-md);padding:6px 8px;color:var(--muted);font-weight:800;scroll-snap-align:center;transition:background-color var(--t-ui) var(--ease),color var(--t-ui) var(--ease)}[data-realm=child] .child-nav button:hover{transform:none}[data-realm=child] .child-nav button.active{background:var(--surf-mint);color:var(--green);border-color:transparent}[data-realm=child] .child-nav button.active svg{color:var(--candy-bloom)}.child-nav-icon{position:relative;display:inline-flex}.child-nav-badge{position:absolute;top:-6px;right:-8px;min-width:16px;height:16px;padding:0 4px;background:var(--candy-coral);color:#fff;border-radius:999px;font-size:.6rem;display:inline-flex;align-items:center;justify-content:center}.child-nav-label{font-size:.68rem;line-height:1}[data-realm=child] .child-space{padding-bottom:calc(var(--tabbar-h) + 16px)}[data-realm=parent] .app-chip{transition:transform var(--t-press) var(--ease),box-shadow var(--t-ui) var(--ease)}[data-realm=parent] .app-chip:active{transform:scale(.98)}.modal-card.sheet{border-top-left-radius:var(--r-lg);border-top-right-radius:var(--r-lg)}.modal-card.sheet:before{content:"";display:block;width:38px;height:4px;border-radius:999px;background:var(--line);margin:2px auto 14px}@media(hover:hover){.app-chip:hover,[data-realm=child] .child-nav button:hover{transform:translateY(-2px)}}@keyframes popIn{0%{transform:scale(.94);opacity:0}to{transform:scale(1);opacity:1}}[data-realm=child] .child-views>*{animation:popIn var(--t-bounce) var(--ease-spring) both}@keyframes bloomPop{0%{transform:scale(1)}45%{transform:scale(1.18) rotate(-4deg)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.bloom-plant{animation:none!important}}.confetti{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:100;overflow:hidden}.confetti span{position:absolute;top:-18px;width:10px;height:14px;border-radius:2px;opacity:.95;animation-name:confetti-fall;animation-timing-function:linear;animation-fill-mode:forwards}@keyframes confetti-fall{0%{transform:translateY(-20px) rotate(0);opacity:1}to{transform:translateY(106vh) rotate(calc(var(--rot, 0deg) + 600deg));opacity:.85}}.celebration-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:101;display:flex;align-items:center;justify-content:center;background:#17201c6b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);padding:24px;animation:fadeIn .2s ease}.celebration-card{background:var(--surface);border-radius:var(--r-lg);padding:30px 26px 26px;text-align:center;max-width:340px;width:100%;box-shadow:var(--shadow-lift);animation:pop-in .42s var(--ease-spring) both}.celebration-emoji{font-size:3.6rem;display:block;animation:bloomPop .7s var(--ease-squish) both}.celebration-card h2{font-family:var(--font-display);margin:8px 0 4px}.celebration-card p{color:var(--muted);margin:0 0 18px}.celebration-card .primary-button{width:100%;justify-content:center}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pop-in{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}.points-mode{margin:6px 0 14px}.simple-points{display:grid;gap:18px}.simple-points-pad{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sp-col{display:grid;gap:10px;text-align:center}.sp-col-label{font-weight:800;color:var(--muted);font-size:.85rem;text-transform:uppercase;letter-spacing:.04em}.sp-btn{border:0;border-radius:var(--r-md);padding:16px;font-size:1.5rem;font-weight:800;color:#fff;cursor:pointer;min-height:58px;transition:transform var(--t-press) var(--ease)}.sp-btn:disabled{opacity:.5}.sp-add{background:var(--green);box-shadow:0 4px 0 var(--green-edge)}.sp-add:active{transform:translateY(4px);box-shadow:none}.sp-sub{background:var(--coral);box-shadow:0 4px #8f3a2e}.sp-sub:active{transform:translateY(4px);box-shadow:none}.sp-recent{display:grid;gap:6px}.sp-row{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.sp-delta{font-weight:800;font-size:1.05rem}.sp-delta.pos{color:var(--green)}.sp-delta.neg{color:var(--coral)}.sp-row time{color:var(--muted);font-size:.85rem}html{font-size:calc(100% * var(--text-scale, 1))}[data-theme=dark]{color-scheme:dark;--paper: #1c1b1a;--surface: #242322;--surface-2: #2b2a28;--surface-3: #333230;--ink: #e9e7e3;--muted: #9c9a95;--line: #3a3834;--mint: #2a2926;--green: #58bd8f;--green-edge: #2c6f4f;--teal: #4fb0bd;--coral: #f08a78;--sun: #e8b75c;--sky: #6fa6e0;--dark: #131211;--shadow: 0 18px 60px rgba(0, 0, 0, .5);--shadow-soft: 0 12px 34px rgba(0, 0, 0, .4);--shadow-card: 0 14px 34px -16px rgba(0, 0, 0, .55);--shadow-lift: 0 28px 64px rgba(0, 0, 0, .55);--shadow-clay: 0 18px 40px -14px rgba(0, 0, 0, .5), inset 0 6px 14px rgba(255, 255, 255, .04), inset 0 -7px 14px rgba(0, 0, 0, .25);--surf-mint: #202821;--surf-butter: #2a2417;--surf-lilac: #231f2c;--surf-sky: #1c242c;--surf-peach: #2a2119}[data-theme=dark] body,[data-theme=dark] .app-shell{background:linear-gradient(180deg,#221f1d 0%,var(--paper) 36%),var(--paper)}[data-theme=dark] .primary-button,[data-theme=dark] .primary-link{color:#0f1714}[data-theme=dark] .topbar{background:#1c1b1adb;border-bottom-color:var(--line)}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea,[data-theme=dark] .child-tabs button,[data-theme=dark] .module-child-summary,[data-theme=dark] .modal-close{background:var(--surface-2);color:var(--ink)}[data-theme=dark] .segmented{background:var(--surface-3)}[data-theme=dark] .view-switch button,[data-theme=dark] .file-drop,[data-theme=dark] .report-share-row input,[data-theme=dark] .sp-row{background:var(--surface-2)}[data-theme=dark] .quick-row button,[data-theme=dark] .icon-file,[data-theme=dark] .pin-toggle,[data-theme=dark] .template-chip,[data-theme=dark] .calm-choice,[data-theme=dark] .calm-feel{background:var(--surface-3);color:var(--ink)}[data-theme=dark] .note{background:#2a2417}[data-theme=dark] .session-expired-banner{background:#33321a;color:#ffe49a}[data-theme=dark] .account-action.danger{background:#2a1a18;border-color:#5a3530}[data-theme=dark] .first-steps{background:linear-gradient(135deg,#242320,#1c1b19);border-color:var(--line)}[data-theme=dark] .app-facebook-invite{background:color-mix(in srgb,#1877f2 14%,var(--surface));border-color:color-mix(in srgb,#1877f2 44%,var(--line))}[data-theme=dark] .child-nav{background:#1c1b1aeb}[data-theme=dark] .modal-backdrop{background:#0c0b0ab8}[data-theme=dark] [data-realm=child] .child-nav button.active{background:var(--surf-mint);color:var(--green)}[data-font=readable]{--font-body: "Lexend", "Atkinson Hyperlegible", ui-sans-serif, system-ui, sans-serif}[data-font=dyslexia]{--font-body: "OpenDyslexic", "Lexend", ui-sans-serif, system-ui, sans-serif}[data-font=dyslexia] h1,[data-font=dyslexia] h2,[data-font=dyslexia] h3,[data-font=dyslexia] .panel-title h2{font-family:var(--font-body);letter-spacing:.01em}[data-motion=reduce] *,[data-motion=reduce] *:before,[data-motion=reduce] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}[data-motion=reduce] .confetti,[data-motion=reduce] .celebration-emoji,[data-motion=reduce] .bloom-plant{animation:none!important}[data-contrast=high]{--ink: #000;--muted: #33403a;--line: #8fa39a}[data-theme=dark][data-contrast=high]{--paper: #000;--surface: #0e0e0d;--ink: #fff;--muted: #d0d0cd;--line: #66665f}[data-contrast=high] :focus-visible{outline-width:3px}.focus-mode{--accent: var(--muted)}.focus-mode .child-nav-badge,.focus-mode .confetti,.focus-mode .bloom-plant,.focus-mode .loading-line{display:none!important}.focus-mode *{animation-duration:.01ms!important;transition-duration:.01ms!important}.a11y-panel{display:grid;gap:14px}.a11y-field{display:grid;gap:6px}.a11y-seg{grid-template-columns:repeat(auto-fit,minmax(68px,1fr))}.a11y-tiles{display:grid;gap:12px}.a11y-tile{display:grid;gap:4px;justify-items:center;text-align:center;padding:18px;border-radius:var(--r-lg);border:2px solid var(--line);background:var(--surface);cursor:pointer;color:var(--ink);min-height:var(--tap-child)}.a11y-tile.on{border-color:var(--green);background:var(--surf-mint);color:var(--ink)}.a11y-tile-emoji{font-size:2.2rem;line-height:1}.a11y-tile.static{cursor:default}.a11y-az{display:flex;gap:10px;margin-top:6px}.a11y-az button{min-width:56px;min-height:48px;border-radius:var(--r-md);border:0;background:var(--green);color:#fff;font-weight:800;font-size:1.1rem;cursor:pointer}.a11y-az button:active{transform:scale(.96)}[data-theme=dark] .bloom-mascot{background:#ffffff0f;border-color:var(--line)}[data-theme=dark] .report-share-box,[data-theme=dark] .report-shares-list .report-share-item,[data-theme=dark] .reward-ideas,[data-theme=dark] .routine-card.is-pending{background:var(--surface-2)}[data-theme=dark] .bloom-info small,[data-theme=dark] .bloom-mascot strong{color:var(--ink)}:root{--tint-soft: #eef6f1;--tint-cream: #f5f0e4}[data-theme=dark]{--tint-soft: #262523;--tint-cream: #2a2620}[data-theme=dark] .app-tile.active{background:linear-gradient(180deg,var(--surface-2) 0%,#242320 100%)}[data-theme=dark] .hero-shade{background:linear-gradient(180deg,#0003,#0000008c)}[data-theme=dark] .feature-card,[data-theme=dark] .mission-card,[data-theme=dark] .app-tile{background:var(--surface);border-color:var(--line)}[data-theme=dark] .session-expired-banner{background:#33321a}[data-theme=dark] .note,[data-theme=dark] [class*=banner]{color:var(--ink)}.nav-button.theme-toggle{display:inline-flex;align-items:center;justify-content:center;padding:8px 11px}[data-theme=dark] .focus-bar,[data-theme=dark] .bloom-bar,[data-theme=dark] .first-step:not(.done) .fs-check,[data-theme=dark] .template-plus,[data-theme=dark] .first-step.done{background:var(--surface-3)}[data-theme=dark] .legal-page,[data-theme=dark] .public-report{background:var(--paper)}[data-theme=dark] .legal-page p,[data-theme=dark] .legal-page li,[data-theme=dark] .legal-foot,[data-theme=dark] .pr-head h1,[data-theme=dark] .legal-page h1,[data-theme=dark] .legal-page h2{color:var(--ink)}[data-theme=dark] .idea-price-row,[data-theme=dark] .report-event-row{background:var(--surface-2)}[data-theme=dark] .idea-badge.rejected,[data-theme=dark] .quick-tile.cost:hover,[data-theme=dark] .sheet-chip.cost.active{background:#33231d;color:var(--ink)}[data-theme=dark] .routine-card.is-pending{background:var(--surface-2)}[data-theme=dark] .routine-flag{background:#33321a;color:#ffe49a}[data-theme=dark] .event-undo:hover:not(:disabled){background:#3a201d;color:#f3b0a6}[data-theme=dark] .nav-cta{color:#0f1714!important}[data-contrast=high] [data-realm=child] .child-nav button.active,[data-contrast=high] [data-realm=child] .child-nav button.active .child-nav-label{color:var(--ink)}[data-contrast=high] .primary-button,[data-contrast=high] .primary-link,[data-contrast=high] .nav-cta{background:var(--ink)!important;color:var(--paper)!important;border-color:var(--ink)!important}[data-contrast=high] [data-realm=child] .primary-button{color:var(--paper)!important}:root{--eyebrow-color: #266a47}[data-theme=dark]{--eyebrow-color: #6fd3a3}.honest-band .section-heading p{color:#4c574f}[data-theme=dark] .honest-band .section-heading p{color:var(--muted)}.draft-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--surf-butter, #fff3da);border:1px solid #e8d9a8;border-radius:var(--r-sm);padding:8px 12px;margin-bottom:12px;font-size:.85rem;font-weight:700;color:var(--ink)}.draft-banner button{border:0;background:transparent;color:var(--green);font-weight:800;cursor:pointer;text-decoration:underline}[data-theme=dark] .draft-banner{background:#2a2417;border-color:#4a4128}.scroll-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:60;background:transparent;pointer-events:none}.scroll-progress span{display:block;height:100%;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,var(--green),var(--sun));will-change:transform}.reveal-init{opacity:0;transform:translateY(12px);transition:opacity .55s var(--ease),transform .55s var(--ease);will-change:opacity,transform}.reveal-init.reveal-in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.reveal-init{opacity:1;transform:none;transition:none}}[data-motion=reduce] .reveal-init{opacity:1;transform:none;transition:none}.cookie-notice{position:fixed;left:16px;right:16px;bottom:16px;z-index:70;margin:0 auto;max-width:760px;display:flex;align-items:center;gap:16px;padding:14px 18px;border-radius:16px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-soft);font-size:.9rem}.cookie-notice p{margin:0;color:var(--muted);line-height:1.5}.cookie-notice a{color:var(--green);font-weight:700}.cookie-notice .primary-link{flex:0 0 auto;min-height:40px;padding:9px 18px}@media(max-width:620px){.cookie-notice{flex-direction:column;align-items:stretch}.cookie-notice .primary-link{width:100%}}.reward-illustration,.reward-photo{flex:0 0 auto;border-radius:12px;object-fit:cover}.reward-illustration{display:grid;place-items:center;border:1px solid rgba(0,0,0,.04)}.reward-illustration.sm,.reward-photo.sm{width:40px;height:40px}.reward-illustration.md,.reward-photo.md{width:54px;height:54px}.reward-illustration.lg,.reward-photo.lg{width:60px;height:60px}.reward-illustration span{line-height:1}.reward-illustration.sm span{font-size:1.3rem}.reward-illustration.md span{font-size:1.7rem}.reward-illustration.lg span{font-size:2rem}.rtint-0{background:#e7f5ee}.rtint-1{background:#fdeef0}.rtint-2{background:#fff4dd}.rtint-3{background:#e9f1fb}.rtint-4{background:#f1ecfb}.rtint-5{background:#fdeede}[data-theme=dark] .rtint-0{background:#16271f}[data-theme=dark] .rtint-1{background:#2a1c20}[data-theme=dark] .rtint-2{background:#2a2616}[data-theme=dark] .rtint-3{background:#172230}[data-theme=dark] .rtint-4{background:#1f1b2c}[data-theme=dark] .rtint-5{background:#2a2017}[data-theme=dark] .reward-illustration{border-color:#ffffff0f}.reward-modal-confirm{display:flex;align-items:center;gap:14px;padding:14px;margin-bottom:4px;border-radius:var(--r-md);background:var(--tint-soft)}.reward-modal-confirm p{margin:0;line-height:1.5}.reward-modal-feel{display:grid;justify-items:center;gap:8px;text-align:center;padding:8px 4px 16px}.reward-modal-feel p{margin:0;line-height:1.5}.reward-modal-feel .progress-track{width:100%;margin-top:4px}.reward-modal-emoji{font-size:3rem;line-height:1}.reward-modal-feel.happy .reward-modal-emoji{animation:bloomPop .7s var(--ease-squish) both}@media(prefers-reduced-motion:reduce){.reward-modal-feel.happy .reward-modal-emoji{animation:none}}[data-motion=reduce] .reward-modal-feel.happy .reward-modal-emoji{animation:none}.reward-icon-picker{display:flex;flex-wrap:wrap;gap:6px}.reward-icon-picker button{width:40px;height:40px;min-height:40px;padding:0;font-size:1.25rem;line-height:1;border-radius:10px;border:1px solid var(--line);background:var(--surface);cursor:pointer;transition:transform .12s var(--ease),border-color .12s var(--ease),box-shadow .12s var(--ease)}@media(hover:hover){.reward-icon-picker button:hover{transform:translateY(-1px)}}.reward-icon-picker button.active{border-color:var(--green);box-shadow:0 0 0 2px #2f7d5740;background:var(--mint)}.bloom-mascot{gap:14px;padding:14px 16px;border-radius:20px;background:radial-gradient(120% 120% at 30% 0%,rgba(255,255,255,.7),transparent 60%),linear-gradient(160deg,#e7f5ee,#f6fbf8);border:1px solid rgba(47,125,87,.18);box-shadow:var(--shadow-soft)}.bloom-plant{font-size:3.4rem}[data-realm=child] .bloom-plant{font-size:3.6rem}[data-theme=dark] .bloom-mascot{background:linear-gradient(160deg,#58bd8f1f,#ffffff0a);border-color:var(--line)}:root{--app-w: 460px;--app-h: 924px;--appbar-h: 56px}body.app-mode{height:100svh;height:100dvh;overflow:hidden;overscroll-behavior:none;background:radial-gradient(125% 80% at 50% -10%,#e7f2ea 0%,transparent 60%),var(--paper)}[data-theme=dark] body.app-mode{background:radial-gradient(125% 80% at 50% -10%,#26241f 0%,transparent 60%),var(--paper)}@media(min-width:560px){body.app-mode{display:grid;place-items:center;padding:24px}}body.app-mode .app-shell{width:min(var(--app-w),100%);height:100svh;height:100dvh;margin-inline:auto;display:flex;flex-direction:column;overflow:hidden;position:relative;background:linear-gradient(180deg,#f5faf6 0%,var(--paper) 34%),var(--paper)}[data-theme=dark] body.app-mode .app-shell{background:linear-gradient(180deg,#221f1d 0%,var(--paper) 34%),var(--paper)}@media(min-width:560px){body.app-mode .app-shell{height:min(var(--app-h),calc(100dvh - 48px));border-radius:40px;border:1px solid var(--line);box-shadow:0 50px 120px -34px #0a120e80,0 10px 30px #0a120e29}}body.app-mode .topbar{position:static;width:auto;margin:0;flex:0 0 auto;padding:10px 14px;padding-top:calc(10px + var(--safe-top));gap:10px;background:#fbfcf8db;-webkit-backdrop-filter:blur(16px) saturate(160%);backdrop-filter:blur(16px) saturate(160%);border-bottom:1px solid rgba(220,230,223,.7)}[data-theme=dark] body.app-mode .topbar{background:#1c1b1adb;border-bottom-color:var(--line)}body.app-mode .topbar{flex-wrap:nowrap}body.app-mode .topbar .brand span{display:none}body.app-mode .topbar-actions{gap:4px;flex-wrap:nowrap;flex:0 0 auto}body.app-mode .topbar .ghost-button{padding:9px 12px;white-space:nowrap}body.app-mode .topbar .icon-button{width:40px;min-height:40px}body.app-mode .app-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:none;animation:viewIn var(--t-ui) var(--ease) both}body.app-mode .app-scroll::-webkit-scrollbar{display:none}@keyframes viewIn{0%{opacity:0}to{opacity:1}}body.app-mode .workspace,body.app-mode .child-space{width:100%;padding:16px 16px 24px}body.app-mode .tool-panel{margin-bottom:14px}body.app-mode .tab-bar{flex:0 0 auto;display:flex;gap:4px;padding:6px 8px calc(6px + var(--safe-bottom));background:#fbfcf8eb;-webkit-backdrop-filter:blur(18px) saturate(180%);backdrop-filter:blur(18px) saturate(180%);border-top:1px solid var(--line);position:static;width:auto;max-width:none;margin:0;left:auto;right:auto;bottom:auto;transform:none;border-radius:0;z-index:1}[data-theme=dark] body.app-mode .tab-bar{background:#1c1b1aeb}body.app-mode .tab-bar button{flex:1 1 0;min-width:0;display:grid;justify-items:center;gap:3px;border:0;background:transparent;color:var(--muted);font-weight:700;font-size:.66rem;padding:4px 2px;min-height:var(--tap-parent);transition:color var(--t-press) var(--ease),transform var(--t-press) var(--ease)}[data-realm=child] body.app-mode .tab-bar button{min-height:var(--tap-child)}body.app-mode .tab-bar .ind{position:relative;display:grid;place-items:center;min-width:46px;height:30px;padding:0 12px;border-radius:var(--r-pill);transition:background-color var(--t-press) var(--ease)}body.app-mode .tab-bar .ind svg{width:22px;height:22px}body.app-mode .tab-bar .tab-label{line-height:1;white-space:nowrap}body.app-mode .tab-bar button.active{color:var(--accent);background:transparent}body.app-mode .tab-bar button.active .ind{background:color-mix(in srgb,var(--accent) 16%,transparent)}body.app-mode .tab-bar button:active{transform:scale(.93)}body.app-mode .tab-bar button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}[data-theme=dark] body.app-mode .tab-bar button.active .ind{background:color-mix(in srgb,var(--accent) 28%,transparent)}[data-contrast=high] body.app-mode .tab-bar button.active{color:var(--ink)}[data-contrast=high] body.app-mode .tab-bar button.active .ind{outline:1px solid var(--ink)}body.app-mode .tab-bar .child-nav-badge{top:-3px;right:-2px}body.app-mode .parent-tabs .tab-center .ind{background:var(--green);color:#fff}body.app-mode .parent-tabs .tab-center.active{color:var(--green)}body.app-mode .family-switcher{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,.75fr) auto;align-items:center;gap:10px;min-height:58px;margin-bottom:12px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}body.app-mode .family-switcher>div{display:grid;gap:2px;min-width:0}body.app-mode .family-switcher strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.98rem}body.app-mode .family-switcher small{color:var(--muted);font-size:.76rem;font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.app-mode .family-switcher label{min-width:0}body.app-mode .family-switcher select{width:100%;min-height:38px;padding:0 9px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--paper);color:var(--ink);font:inherit;font-weight:800}body.app-mode .family-switcher .form-error{grid-column:1 / -1;margin:0}body.app-mode .family-bar{margin-bottom:14px;display:flex;align-items:center;gap:10px}body.app-mode .family-bar>.child-segment,body.app-mode .family-bar>.family-who{flex:1 1 auto;min-width:0}body.app-mode .family-add-child{flex:0 0 auto;width:40px;height:40px;border-radius:var(--r-pill);display:grid;place-items:center;border:1px solid var(--line);background:var(--surface);color:var(--green);cursor:pointer}body.app-mode .family-add-child:hover{background:var(--tint-soft);border-color:var(--green)}body.app-mode .family-children{display:grid;gap:10px;margin:4px 0 16px}body.app-mode .family-child-card{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;width:100%;padding:12px 14px;text-align:left;cursor:pointer;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink)}body.app-mode .family-child-card:hover{border-color:var(--green)}body.app-mode .family-child-info{display:grid;gap:1px;min-width:0}body.app-mode .family-child-info strong{font-weight:700}body.app-mode .family-child-info small{color:var(--muted);font-size:.85rem}body.app-mode .family-child-edit{color:var(--muted)}body.app-mode .family-meta-card{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:4px 14px;margin-bottom:14px}body.app-mode .family-meta-card p{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:10px 0;font-size:.9rem}body.app-mode .family-meta-card p+p{border-top:1px solid var(--line)}body.app-mode .family-meta-card span{color:var(--muted)}body.app-mode .family-members-card{display:grid;gap:10px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:14px;margin-bottom:14px}body.app-mode .family-members-head{display:flex;align-items:center;justify-content:space-between;gap:10px}body.app-mode .family-members-head>div{display:grid;gap:2px}body.app-mode .family-members-head small,body.app-mode .family-member-row small{color:var(--muted);font-size:.82rem}body.app-mode .family-permission-strip{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;border-radius:var(--r-sm);background:color-mix(in srgb,var(--green-soft) 65%,transparent);color:var(--green-dark);font-size:.82rem}body.app-mode .family-permission-strip strong{text-align:right;overflow-wrap:anywhere}body.app-mode .family-members-list{display:grid;gap:8px}body.app-mode .family-member-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0}body.app-mode .family-member-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--green-soft);color:var(--green-dark);font-size:.78rem;font-weight:900}body.app-mode .family-member-main{display:grid;gap:1px;min-width:0}body.app-mode .family-member-row strong,body.app-mode .family-member-row small{overflow-wrap:anywhere}body.app-mode .family-member-permissions{display:block;color:color-mix(in srgb,var(--muted) 78%,var(--green))}body.app-mode .family-member-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}body.app-mode .family-member-actions .ghost-button{min-height:34px;padding:7px 10px}body.app-mode .family-member-actions .link-button{min-height:34px;padding:6px 0;white-space:nowrap}@media(max-width:560px){body.app-mode .family-member-row{grid-template-columns:38px minmax(0,1fr);align-items:start}body.app-mode .family-member-actions{grid-column:2;justify-content:flex-start}}body.app-mode .family-quick-actions{display:flex;gap:10px;flex-wrap:wrap}body.app-mode .family-child-card:disabled,body.app-mode .module-child-summary:disabled{cursor:default;opacity:.88}body.app-mode .apps-grid{display:grid;gap:12px;margin-top:6px}@media(min-width:620px){body.app-mode .apps-grid{grid-template-columns:1fr 1fr}}body.app-mode .app-card{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:14px;width:100%;text-align:left;padding:16px;cursor:pointer;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink)}body.app-mode .app-card:hover{border-color:color-mix(in srgb,var(--app-tint, var(--green)) 60%,var(--line))}body.app-mode .app-card.is-soon{cursor:default;opacity:.72}body.app-mode .app-card-ico{width:54px;height:54px;border-radius:var(--r-lg);display:grid;place-items:center;background:var(--app-tint, var(--green));color:#fff;flex:0 0 auto}body.app-mode .app-card.tint-sky{--app-tint: var(--sky)}body.app-mode .app-card.tint-sun{--app-tint: var(--sun)}body.app-mode .app-card.tint-teal{--app-tint: var(--teal)}body.app-mode .app-card.tint-lilac{--app-tint: #8b7bd8}body.app-mode .app-card-body{display:grid;gap:3px;min-width:0}body.app-mode .app-card-body strong{font-size:1.05rem}body.app-mode .app-card-body small{color:var(--muted);line-height:1.4}body.app-mode .app-card-badge{flex:0 0 auto;font-size:.72rem;font-weight:800;padding:4px 9px;border-radius:var(--r-pill);text-transform:uppercase;letter-spacing:.03em}body.app-mode .app-card-badge.ready{background:color-mix(in srgb,var(--green) 18%,transparent);color:var(--green)}body.app-mode .app-card-badge.soon{background:color-mix(in srgb,var(--muted) 18%,transparent);color:var(--muted)}.forum-tabs{display:flex;gap:6px;padding:4px;background:var(--surf-mint, var(--tint-soft));border-radius:var(--r-pill);margin:2px 0 12px}.forum-tabs button{flex:1 1 0;border:0;background:transparent;color:var(--muted);font-weight:700;padding:8px 12px;border-radius:var(--r-pill);min-height:40px;cursor:pointer}.forum-tabs button.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-soft)}.forum-list{display:grid;gap:10px;margin-top:4px}.forum-post-card{display:grid;gap:4px;text-align:left;width:100%;cursor:pointer;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink);padding:14px 16px}.forum-post-card:hover{border-color:var(--green)}.forum-post-card strong{font-size:1.02rem}.forum-excerpt{color:var(--muted);font-size:.9rem;line-height:1.4}.forum-post-card small{color:var(--muted);font-size:.8rem}.forum-thread-post h2{margin:6px 0 2px}.forum-meta{color:var(--muted);font-size:.85rem}.forum-body{line-height:1.6;white-space:pre-wrap;margin:10px 0;color:var(--ink)}.forum-actions{display:flex;gap:14px}.forum-comments{margin-top:8px;display:grid;gap:10px}.forum-comment{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:10px 14px}.forum-comment p{margin:0 0 6px;line-height:1.5;white-space:pre-wrap}.forum-comment-foot{display:flex;justify-content:space-between;align-items:center;gap:10px}.forum-comment-foot small{color:var(--muted);font-size:.78rem}.forum-comment-acts{display:flex;gap:8px}.forum-add-comment{display:flex;gap:8px;align-items:flex-end;margin-top:4px}.forum-add-comment textarea{flex:1 1 auto;min-width:0;resize:vertical}.routine-card-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.routine-edit-btn,.routine-del-btn{width:40px;min-height:40px;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);cursor:pointer}.routine-edit-btn{color:var(--muted)}.routine-edit-btn:hover{color:var(--green);border-color:var(--green)}.routine-del-btn{color:var(--coral)}.routine-del-btn:hover{background:var(--coral);color:#fff;border-color:var(--coral)}body.app-mode .child-segment{display:flex;gap:6px;padding:4px;background:var(--surf-mint, var(--tint-soft));border-radius:var(--r-pill);overflow-x:auto;scrollbar-width:none}body.app-mode .child-segment::-webkit-scrollbar{display:none}body.app-mode .child-segment button{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;border:0;background:transparent;color:var(--muted);font-weight:700;padding:7px 12px;border-radius:var(--r-pill);min-height:38px}body.app-mode .child-segment button.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-soft)}body.app-mode .seg-avatar{display:grid;place-items:center;width:26px;height:26px;border-radius:var(--r-pill);color:#fff;font-size:.7rem;font-weight:800;flex:0 0 auto}body.app-mode .family-who{display:flex;align-items:center;gap:10px}body.app-mode .family-who .seg-avatar{width:40px;height:40px;font-size:.95rem}body.app-mode .family-who-text{display:grid}body.app-mode .family-who-text strong{font-size:1.05rem}body.app-mode .family-who-text small{color:var(--muted);font-size:.8rem}body.app-mode .more-screen{display:grid;gap:4px}body.app-mode .list-section-title{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:12px 6px 4px}body.app-mode .list-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);overflow:clip}body.app-mode .list-item{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;width:100%;min-height:var(--tap-parent);padding:11px 14px;text-align:left;background:transparent;border:0;color:var(--ink);cursor:pointer;font:inherit}body.app-mode .list-item+.list-item{box-shadow:inset 0 .5px 0 var(--line)}body.app-mode .list-item:active{background:color-mix(in srgb,var(--ink) 5%,transparent)}body.app-mode .list-item .lead{width:40px;height:40px;border-radius:var(--r-pill);display:grid;place-items:center;background:var(--surf-mint, var(--tint-soft));color:var(--green);flex:0 0 auto}body.app-mode .list-item .list-text{display:grid;gap:1px;min-width:0}body.app-mode .list-item .head{font-weight:600}body.app-mode .list-item .sub{color:var(--muted);font-size:.85rem}body.app-mode .list-item .list-chevron{color:var(--muted)}body.app-mode .more-login{color:var(--muted);font-size:.85rem;text-align:center;padding:14px 0 4px}body.app-mode .community-card{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:13px;padding:14px 16px;margin-top:2px;text-decoration:none;border-radius:var(--r-md);border:1px solid color-mix(in srgb,#1877f2 40%,var(--line));background:color-mix(in srgb,#1877f2 10%,var(--surface));color:var(--ink)}body.app-mode .community-card:active{background:color-mix(in srgb,#1877f2 16%,var(--surface))}body.app-mode .community-ico{width:48px;height:48px;border-radius:var(--r-pill);display:grid;place-items:center;background:#1877f2;color:#fff;flex:0 0 auto}body.app-mode .community-text{display:grid;gap:2px;min-width:0}body.app-mode .community-text strong{font-weight:700}body.app-mode .community-text small{color:var(--muted);font-size:.85rem;line-height:1.35}body.app-mode .split-section,body.app-mode .feature-grid,body.app-mode .compact-grid,body.app-mode .steps-grid,body.app-mode .apps-grid,body.app-mode .mission-grid,body.app-mode .safety-layout,body.app-mode .parent-module-grid,body.app-mode .two-panel,body.app-mode .module-grid{grid-template-columns:minmax(0,1fr)!important}body.app-mode .situation-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}body.app-mode .span-2{grid-column:auto!important}body.app-mode .child-hero{flex-wrap:wrap;gap:14px;padding:2px 2px 6px;min-height:0}body.app-mode .child-hero h1{font-size:1.9rem;line-height:1.05;max-width:none}body.app-mode .child-hero .bloom-mascot{margin-left:0;width:100%}body.app-mode .parent-module-header h1,body.app-mode .empty-family h1{font-size:1.7rem;line-height:1.1}body.app-mode .panel-title h2{font-size:1.45rem}@media(prefers-reduced-motion:reduce){body.app-mode .app-scroll{animation:none}body.app-mode .tab-bar button,body.app-mode .tab-bar .ind,body.app-mode .list-item{transition:none}}[data-motion=reduce] body.app-mode .app-scroll{animation:none}[data-motion=reduce] body.app-mode .tab-bar button,[data-motion=reduce] body.app-mode .tab-bar .ind{transition:none}.focus-mode .tab-bar button:active{transform:none}body.app-mode .today{display:grid;gap:12px;margin-bottom:14px}body.app-mode .today-tiles{display:grid;grid-template-columns:1fr 1fr;gap:12px}body.app-mode .tile{display:grid;gap:3px;align-content:start;text-align:left;padding:15px;min-height:104px;border:1px solid var(--line);border-radius:var(--card-radius, var(--r-md));background:var(--surface);box-shadow:var(--card-shadow, var(--shadow-soft));cursor:pointer;color:var(--ink);font:inherit;transition:transform var(--t-press) var(--ease)}body.app-mode .tile:active{transform:scale(.97)}body.app-mode .tile:focus-visible{outline:2px solid var(--accent);outline-offset:2px}body.app-mode .tile-hero{grid-column:1 / -1;background:linear-gradient(150deg,var(--surf-mint, #e9f5ee),var(--surface) 70%)}body.app-mode .tile-ico{display:grid;place-items:center;width:38px;height:38px;border-radius:var(--r-sm);background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);margin-bottom:5px}body.app-mode .tile-k{color:var(--muted);font-size:.82rem;font-weight:700}body.app-mode .tile-v{font-family:var(--font-display, inherit);font-size:1.9rem;line-height:1;font-weight:600;color:var(--ink)}body.app-mode .tile-sub{color:var(--muted);font-size:.78rem}body.app-mode .tile-bar{height:8px;border-radius:999px;background:color-mix(in srgb,var(--accent) 16%,transparent);overflow:hidden;margin:6px 0 2px}body.app-mode .tile-bar i{display:block;height:100%;border-radius:999px;background:var(--accent)}body.app-mode .approve-card{border:1px solid color-mix(in srgb,var(--accent) 32%,var(--line));border-radius:var(--card-radius, var(--r-md));background:var(--surface);box-shadow:var(--card-shadow, var(--shadow-soft));overflow:clip}body.app-mode .approve-head{display:flex;align-items:center;gap:10px;padding:13px 14px 7px}body.app-mode .approve-count{display:grid;place-items:center;min-width:24px;height:24px;padding:0 7px;margin-left:auto;border-radius:999px;background:var(--accent);color:#fff;font-weight:800;font-size:.78rem}body.app-mode .approve-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 14px}body.app-mode .approve-row+.approve-row{box-shadow:inset 0 .5px 0 var(--line)}body.app-mode .approve-ico{display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:var(--surf-mint, var(--tint-soft));color:var(--green)}body.app-mode .approve-text{display:grid;min-width:0}body.app-mode .approve-text strong{font-weight:600}body.app-mode .approve-text small{color:var(--muted);font-size:.8rem}body.app-mode .approve-row .primary-button{min-height:38px;padding:8px 12px;white-space:nowrap}@media(prefers-reduced-motion:reduce){body.app-mode .tile{transition:none}}[data-motion=reduce] body.app-mode .tile{transition:none}body.app-mode .fab{position:absolute;right:16px;bottom:calc(var(--tabbar-h) + 14px);z-index:40;width:56px;height:56px;display:grid;place-items:center;border:0;border-radius:var(--r-round);background:var(--grad-bloom);color:#fff;cursor:pointer;box-shadow:var(--glow-green),0 10px 22px #0a120e3d;transition:transform var(--t-press) var(--ease-spring),box-shadow var(--t-press) var(--ease)}body.app-mode .fab:active{transform:scale(.9)}body.app-mode .fab:focus-visible{outline:2px solid #fff;outline-offset:3px}.focus-mode .fab{display:none}@media(prefers-reduced-motion:reduce){body.app-mode .fab{transition:none}}[data-motion=reduce] body.app-mode .fab{transition:none}body.app-mode .scroll-titlebar{flex:0 0 auto;display:flex;align-items:center;height:0;padding:0 16px;overflow:hidden;opacity:0;font-family:var(--font-display, inherit);font-weight:600;font-size:1.05rem;color:var(--ink);background:#fbfcf8eb;-webkit-backdrop-filter:blur(14px) saturate(160%);backdrop-filter:blur(14px) saturate(160%);border-bottom:1px solid transparent;transition:height var(--t-ui) var(--ease),opacity var(--t-ui) var(--ease)}body.app-mode .scroll-titlebar.show{height:42px;opacity:1;border-bottom-color:var(--line)}[data-theme=dark] body.app-mode .scroll-titlebar{background:#1c1b1aeb}@media(prefers-reduced-motion:reduce){body.app-mode .scroll-titlebar{transition:none}}[data-motion=reduce] body.app-mode .scroll-titlebar{transition:none}body.app-mode .child-seg{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin-bottom:12px;background:var(--surf-mint, var(--tint-soft));border-radius:var(--r-pill)}body.app-mode .child-seg button{border:0;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-weight:700;padding:9px 12px;border-radius:var(--r-pill);min-height:40px}body.app-mode .child-seg button.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-soft)}body.app-mode .child-today{display:grid;gap:12px}body.app-mode .now-card{display:grid;gap:10px;padding:18px;border-radius:var(--r-lg);border:1px solid var(--line);background:linear-gradient(150deg,var(--surf-mint, #e9f5ee),var(--surface) 75%);box-shadow:var(--shadow-clay, var(--shadow-soft))}body.app-mode .now-card h2{margin:0;font-size:1.6rem;line-height:1.1}body.app-mode .now-card .primary-button{justify-self:start}body.app-mode .now-empty{margin:0;color:var(--muted)}body.app-mode .next-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 16px;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line)}body.app-mode .next-row strong{font-size:1.05rem}body.app-mode .today-goal{display:grid;gap:6px;text-align:left;width:100%;cursor:pointer;font:inherit;color:var(--ink);padding:16px;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-soft);transition:transform var(--t-press) var(--ease)}body.app-mode .today-goal:active{transform:scale(.98)}body.app-mode .today-goal strong{font-size:1.1rem}body.app-mode .today-goal small{color:var(--muted)}body.app-mode .pending-points-card{display:grid;gap:5px;width:100%;padding:14px 16px;text-align:left;cursor:pointer;font:inherit;color:var(--ink);border-radius:var(--r-md);border:1px solid rgba(47,125,87,.28);background:var(--mint)}body.app-mode .pending-points-card strong{font-size:1.05rem}body.app-mode .pending-points-card small{color:var(--muted);font-weight:700}body.app-mode .retention-card,body.app-mode .bloom-garden{display:grid;gap:12px;padding:16px;border-radius:var(--r-md);border:1px solid color-mix(in srgb,var(--accent) 22%,var(--line));background:linear-gradient(150deg,color-mix(in srgb,var(--mint) 72%,var(--surface)),var(--surface) 82%);box-shadow:var(--card-shadow, var(--shadow-soft))}body.app-mode .retention-head,body.app-mode .garden-head{display:flex;align-items:start;justify-content:space-between;gap:12px}body.app-mode .retention-head>span:first-child,body.app-mode .garden-head>span:first-child{display:grid;gap:3px;min-width:0}body.app-mode .retention-head strong,body.app-mode .garden-head strong{font-size:1.08rem;line-height:1.15}body.app-mode .retention-pill,body.app-mode .garden-streak{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;padding:6px 9px;border-radius:var(--r-pill);background:var(--surface);color:var(--green);font-size:.8rem;font-weight:800;border:1px solid var(--line)}body.app-mode .retention-metrics,body.app-mode .garden-week{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}body.app-mode .garden-week{grid-template-columns:1fr 1fr}body.app-mode .retention-metrics span,body.app-mode .garden-week span{display:grid;gap:2px;min-width:0;padding:10px;border-radius:var(--r-sm);background:color-mix(in srgb,var(--surface) 86%,transparent);border:1px solid color-mix(in srgb,var(--accent) 12%,var(--line))}body.app-mode .retention-metrics strong,body.app-mode .garden-week strong{font-family:var(--font-display, inherit);font-size:1.28rem;line-height:1}body.app-mode .retention-metrics small,body.app-mode .garden-week small{color:var(--muted);font-size:.72rem;font-weight:700;line-height:1.2}body.app-mode .garden-collection{display:flex;flex-wrap:wrap;gap:7px}body.app-mode .garden-history{display:grid;gap:8px;padding:9px 10px;border-radius:var(--r-sm);border:1px solid color-mix(in srgb,var(--accent) 14%,var(--line));background:color-mix(in srgb,var(--surface) 88%,transparent)}body.app-mode .garden-history summary{cursor:pointer;color:var(--ink);font-size:.86rem;font-weight:900}body.app-mode .garden-badge{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:5px 10px;border-radius:var(--r-pill);background:var(--surface);border:1px solid color-mix(in srgb,var(--accent) 15%,var(--line));color:var(--ink);font-size:.78rem;font-weight:800}body.app-mode .garden-badge b{font-size:1rem;line-height:1}body.app-mode .garden-badge small{color:var(--muted);font-size:.68rem;font-weight:800}body.app-mode .season-archive-list{display:grid;gap:7px}body.app-mode .season-archive-row{display:grid;gap:3px;padding:8px 10px;border-radius:var(--r-sm);background:var(--surface);border:1px solid color-mix(in srgb,var(--accent) 14%,var(--line))}body.app-mode .season-archive-row b{font-size:.86rem;line-height:1.2}body.app-mode .season-archive-row small,body.app-mode .season-archive-row em{color:var(--muted);font-size:.72rem;font-style:normal;font-weight:750}body.app-mode .retention-challenges{display:grid;gap:8px}body.app-mode .retention-challenge{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px;border-radius:var(--r-sm);background:color-mix(in srgb,var(--surface) 90%,transparent);border:1px solid color-mix(in srgb,var(--accent) 12%,var(--line))}body.app-mode .retention-challenges.compact .retention-challenge{padding:7px 8px}body.app-mode .retention-challenge.done{border-color:color-mix(in srgb,var(--green) 32%,var(--line));background:color-mix(in srgb,var(--green) 9%,var(--surface))}body.app-mode .retention-challenge-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:var(--r-round);background:var(--surf-mint, var(--tint-soft));color:var(--green)}body.app-mode .retention-challenge-copy{display:grid;gap:4px;min-width:0}body.app-mode .retention-challenge-copy strong{font-size:.92rem;line-height:1.15}body.app-mode .retention-challenge-copy small{color:var(--muted);font-size:.76rem;line-height:1.25}body.app-mode .retention-challenge-score{color:var(--muted);font-weight:800;font-size:.82rem;white-space:nowrap}body.app-mode .retention-meter{display:block;width:100%;height:7px;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--accent) 14%,transparent)}body.app-mode .retention-meter i{display:block;height:100%;border-radius:inherit;background:var(--accent)}body.app-mode .retention-link,body.app-mode .surprise-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:42px;border-radius:var(--r-pill);border:1px solid color-mix(in srgb,var(--accent) 25%,var(--line));background:var(--surface);color:var(--ink);cursor:pointer;font:inherit;font-weight:800}body.app-mode .retention-surprise{display:flex;align-items:center;gap:7px;padding:9px 10px;border-radius:var(--r-sm);background:color-mix(in srgb,#ffc24c 22%,var(--surface));color:var(--ink);font-size:.84rem;font-weight:800}body.app-mode .retention-surprise.soft{background:color-mix(in srgb,var(--green) 11%,var(--surface));border:1px solid color-mix(in srgb,var(--green) 18%,var(--line))}body.app-mode .garden-scene{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:10px;border-radius:var(--r-md);background:linear-gradient(180deg,color-mix(in srgb,#ffffff 50%,transparent),transparent 55%),color-mix(in srgb,var(--green) 11%,var(--surface));border:1px solid color-mix(in srgb,var(--green) 16%,var(--line))}body.app-mode .garden-plant{display:grid;place-items:center;min-height:44px;border-radius:var(--r-sm);background:color-mix(in srgb,var(--surface) 74%,transparent);font-size:1.5rem}body.app-mode .garden-plant.locked{color:var(--muted);opacity:.55;background:color-mix(in srgb,var(--surface) 45%,transparent)}body.app-mode .garden-progress{display:grid;gap:5px}body.app-mode .garden-progress small{color:var(--muted);font-weight:700}body.app-mode .surprise-button{background:var(--grad-bloom);color:#fff;border:0}body.app-mode .surprise-button.ghost{background:var(--surface);color:var(--ink);border:1px solid var(--line)}@media(max-width:420px){body.app-mode .family-switcher{grid-template-columns:1fr}body.app-mode .retention-head,body.app-mode .garden-head{align-items:stretch;flex-direction:column}body.app-mode .retention-pill,body.app-mode .garden-streak{justify-content:center}body.app-mode .retention-metrics{grid-template-columns:1fr}body.app-mode .garden-scene{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){body.app-mode .today-goal{transition:none}}[data-motion=reduce] body.app-mode .today-goal{transition:none}.nav-auth{display:flex;align-items:center;gap:10px;flex:0 0 auto}.landing-nav .nav-links{margin-left:auto}.nav-links a{background:transparent;border-color:transparent;padding:8px 9px}.light-nav .nav-links a{background:transparent;border-color:transparent}@media(max-width:480px){.landing-nav{width:min(1180px,calc(100% - 20px));gap:8px}.landing-nav .brand>span:not(.brand-mark){display:none}.landing-nav .brand-mark{width:40px;height:40px}.nav-auth{min-width:0;flex:1 1 auto;justify-content:flex-end;gap:5px}.landing-nav .nav-button{min-height:40px;padding:8px 9px;font-size:.86rem;white-space:nowrap}.landing-nav .nav-button.theme-toggle{width:40px;padding:0}.landing-nav .nav-cta{font-size:0}.landing-nav .nav-cta:after{content:"Start";font-size:.86rem}.instruction-hero,.instruction-steps,.instruction-closing{width:min(1180px,calc(100% - 20px))}.instruction-hero-copy h1{font-size:2.35rem}.instruction-shot-frame{border-radius:28px;padding:10px}.instruction-shot img{border-radius:20px}.instruction-section{padding:16px}.instruction-closing{padding:22px}}body.app-mode .today-now{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;width:100%;text-align:left;cursor:pointer;font:inherit;color:var(--ink);padding:12px 16px;border-radius:var(--r-md);border:1px solid var(--line);background:linear-gradient(150deg,var(--surf-mint, #e9f5ee),var(--surface) 78%);box-shadow:var(--card-shadow, var(--shadow-soft));transition:transform var(--t-press) var(--ease)}body.app-mode .today-now:active{transform:scale(.98)}body.app-mode .today-now-head{display:inline-flex;align-items:center;gap:8px;flex:1 1 auto}body.app-mode .today-now-k{color:var(--muted);font-size:.82rem;font-weight:700}body.app-mode .today-now-v{font-family:var(--font-display, inherit);font-size:1.5rem;font-weight:600;line-height:1}body.app-mode .today-now-go{color:var(--muted);margin-left:auto}body.app-mode .today-now-bar{flex:1 1 110px;height:8px;border-radius:999px;background:color-mix(in srgb,var(--accent) 16%,transparent);overflow:hidden}body.app-mode .today-now-bar i{display:block;height:100%;border-radius:999px;background:var(--accent)}body.app-mode .today-now-sub{color:var(--muted);font-size:.78rem;flex:0 0 100%}body.app-mode .today-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}body.app-mode .act-tile{display:grid;justify-items:center;align-content:start;gap:6px;text-align:center;padding:14px 6px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);box-shadow:var(--card-shadow, var(--shadow-soft));cursor:pointer;font:inherit;color:var(--ink);transition:transform var(--t-press) var(--ease)}body.app-mode .act-tile:active{transform:scale(.96)}body.app-mode .act-tile:focus-visible{outline:2px solid var(--accent);outline-offset:2px}body.app-mode .act-ico{display:grid;place-items:center;width:40px;height:40px;border-radius:var(--r-pill);background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}body.app-mode .act-label{font-weight:700;font-size:.9rem}body.app-mode .act-sub{color:var(--muted);font-size:.7rem;line-height:1.15}body.app-mode .act-tile-configure{border-top:3px solid var(--sky);background:color-mix(in srgb,var(--sky) 7%,var(--surface))}body.app-mode .act-tile-rewards{border-top:3px solid var(--sun);background:color-mix(in srgb,var(--sun) 8%,var(--surface))}body.app-mode .act-tile-dashboard{border-top:3px solid var(--teal);background:color-mix(in srgb,var(--teal) 7%,var(--surface))}body.app-mode .act-tile-configure .act-ico{background:var(--sky);color:#fff}body.app-mode .act-tile-rewards .act-ico{background:var(--sun);color:#fff}body.app-mode .act-tile-dashboard .act-ico{background:var(--teal);color:#fff}@media(prefers-reduced-motion:reduce){body.app-mode .today-now,body.app-mode .act-tile{transition:none}}[data-motion=reduce] body.app-mode .today-now,[data-motion=reduce] body.app-mode .act-tile{transition:none}body.app-mode .child-segment button.active{box-shadow:var(--shadow-soft),0 0 0 2px var(--accent)}body.app-mode .child-segment button.active .seg-avatar{box-shadow:0 0 0 2px var(--surface)}body.app-mode .app-scroll input,body.app-mode .app-scroll select,body.app-mode .app-scroll textarea{max-width:100%;min-width:0}body.app-mode .reward-add-row,body.app-mode .reward-add-row>*,body.app-mode .reward-card,body.app-mode .reward-card-body,body.app-mode .child-reward-card,body.app-mode .child-reward-body,body.app-mode .idea-price-row,body.app-mode .idea-price-row>*,body.app-mode .qa-row,body.app-mode .qa-row>*{min-width:0}body.app-mode .reward-card strong,body.app-mode .reward-card-body span,body.app-mode .child-reward-body strong{overflow-wrap:break-word}body.app-mode .reward-card{grid-template-columns:54px minmax(0,1fr)!important;row-gap:6px}body.app-mode .reward-card .reward-card-actions{grid-column:1 / -1;justify-content:flex-end}body.app-mode .reward-add-row{grid-template-columns:76px minmax(0,1fr) auto!important}body.app-mode .reward-add-row>.primary-button{grid-column:1 / -1}body.app-mode .panel-title{flex-wrap:wrap}body.app-mode .panel-title>*{min-width:0}body.app-mode .report-actions,body.app-mode .report-share-row{flex-wrap:wrap}body.app-mode .report-actions>*,body.app-mode .report-share-row>*{min-width:0}.good-catch-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px;border:1px solid var(--line);border-radius:var(--r-md);background:color-mix(in srgb,var(--mint) 64%,var(--surface));box-shadow:var(--shadow-soft)}.good-catch-card strong{display:block;font-size:2rem;line-height:1;color:var(--ink)}.good-catch-card small,.good-catch-card p{color:var(--muted)}.good-catch-card p{margin:0;font-weight:650;line-height:1.35}.good-catch-card.needs-catch{background:color-mix(in srgb,#fff4d7 76%,var(--surface));border-color:#c6973357}.sos-parent-reset{display:flex;align-items:center;gap:8px;margin:8px 0;padding:10px 12px;border-radius:var(--r-sm);background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--ink);font-weight:800}.premium-panel .panel-subcopy{margin:4px 0 0}.premium-price{display:grid;gap:4px;padding:16px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2)}.premium-price span{font-size:2rem;font-weight:900;color:var(--ink)}.premium-price small{color:var(--muted);font-weight:750}.premium-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}.premium-grid div{padding:12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.premium-grid strong,.premium-grid small{display:block}.premium-grid small{margin-top:5px;color:var(--muted);line-height:1.35}.reset-panel,.sleep-panel,.bloomik-panel{display:grid;gap:14px}.reset-timer{display:grid;gap:6px;padding:18px;border:1px solid var(--line);border-radius:var(--r-md);background:color-mix(in srgb,var(--mint) 66%,var(--surface))}.reset-timer strong{font-size:2.4rem;line-height:1;color:var(--ink)}.reset-timer span{color:var(--green);font-weight:900}.reset-timer p{margin:0;color:var(--muted);font-weight:750;line-height:1.4}.reset-steps,.sleep-plan-grid,.bloomik-rules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sleep-plan-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.reset-steps div,.sleep-plan-grid div,.bloomik-rules div{display:grid;gap:5px;padding:12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.sleep-plan-grid strong{display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:color-mix(in srgb,var(--teal) 16%,var(--surface));color:var(--teal)}.reset-steps small,.bloomik-rules small{color:var(--muted);line-height:1.35}.season-final-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;border:1px solid color-mix(in srgb,var(--sun) 34%,var(--line));border-radius:var(--r-sm);background:color-mix(in srgb,#fff4d7 70%,var(--surface))}.season-final-card strong,.season-final-card small{display:block}.season-final-card small{margin-top:3px;color:var(--muted)}.retention-surprise.second-breath{background:color-mix(in srgb,#f3f0ff 72%,var(--surface));border:1px solid color-mix(in srgb,#a98cff 34%,var(--line))}.child-weather-card,.weather-parent-panel{position:relative;overflow:hidden}.child-weather-card{display:grid;gap:12px;padding:18px;border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(180deg,color-mix(in srgb,#d8edf7 62%,var(--surface)),var(--surface));box-shadow:var(--shadow-soft)}.child-weather-sky{position:absolute;top:14px;right:16px;font-size:2.4rem}.child-weather-head h2{margin-right:54px}.child-weather-head p{margin:4px 54px 0 0;color:var(--muted);font-weight:750}.weather-pick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.weather-pick-grid button,.weather-visibility button{min-height:48px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font-weight:800}.weather-pick-grid button{display:grid;place-items:center;gap:3px;font-size:.84rem}.weather-pick-grid button span{font-size:1.35rem;line-height:1}.weather-pick-grid button.active,.weather-visibility button.active{border-color:color-mix(in srgb,var(--accent) 68%,var(--line));background:color-mix(in srgb,var(--accent) 14%,var(--surface))}.weather-pick-grid button:disabled,.weather-visibility button:disabled{opacity:.48}.weather-intensity{display:grid;grid-template-columns:auto minmax(0,1fr) 24px;gap:10px;align-items:center;color:var(--muted);font-weight:800}.weather-visibility{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.weather-training,.weather-timeline{display:grid;gap:10px}.weather-training div,.weather-row{padding:12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.weather-training strong,.weather-training small,.weather-row-copy strong,.weather-row-copy small{display:block}.weather-training small,.weather-row-copy small{color:var(--muted);margin-top:4px}.weather-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center}.weather-row-emoji{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:color-mix(in srgb,var(--accent) 12%,var(--surface-2));font-size:1.35rem}.weather-privacy{justify-self:end;padding:6px 9px;border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--ink);font-size:.78rem;font-weight:850;white-space:nowrap}.weather-privacy.quiet{background:color-mix(in srgb,#fff4d7 72%,var(--surface));color:#715721}.child-sparkles-card{display:grid;gap:12px;padding:18px;border:1px solid var(--line);border-radius:var(--r-lg);background:color-mix(in srgb,#f3f0ff 72%,var(--surface));box-shadow:var(--shadow-soft)}.sparkle-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sparkle-actions button{display:grid;place-items:center;gap:5px;min-height:66px;padding:9px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font-weight:850;font-size:.84rem}.sparkle-actions button span{font-size:1.4rem}.firefly-list{display:flex;flex-wrap:wrap;gap:8px}.firefly-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,var(--surface));border:1px solid var(--line);font-weight:800}.sparkle-parent-list{display:grid;gap:10px}.sparkle-parent-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.sparkle-response-actions{display:inline-flex;gap:6px;justify-self:end}.sparkle-response-actions .compact-button{min-width:42px;justify-content:center;padding-inline:8px}@media(max-width:720px){.good-catch-card,.premium-grid,.weather-pick-grid,.weather-visibility,.weather-row,.sparkle-actions,.sparkle-parent-row,.reset-steps,.sleep-plan-grid,.bloomik-rules,.season-final-card{grid-template-columns:1fr}.weather-privacy,.sparkle-response-actions{justify-self:start}}.hero-copy h1,.mission-hero h1{font-family:var(--font-body);font-weight:800;letter-spacing:-.02em}.founder-card blockquote{font-weight:600;color:var(--ink)}.founder-card{border-color:#277a574d;background:radial-gradient(120% 140% at 100% 0%,rgba(47,138,151,.16) 0%,transparent 55%),linear-gradient(180deg,#f1faf4 0%,var(--mint) 130%);box-shadow:0 22px 48px -26px #14322666,var(--shadow-soft)}[data-theme=dark] .founder-card{background:linear-gradient(180deg,#58bd8f1f,#ffffff08);border-color:var(--line);box-shadow:var(--shadow-soft)}@media(min-width:960px){:root{--sidebar-w: 260px}body.app-mode{display:block;place-items:normal;padding:0;background:radial-gradient(140% 60% at 50% -10%,#e7f2ea 0%,transparent 60%),var(--paper)}[data-theme=dark] body.app-mode{background:radial-gradient(140% 60% at 50% -10%,#26241f 0%,transparent 60%),var(--paper)}body.app-mode .app-shell{width:100%;height:100dvh;margin:0;border-radius:0;border:0;box-shadow:none;display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);grid-template-areas:"topbar topbar" "sidebar main"}body.app-mode .topbar{grid-area:topbar;padding:14px 28px;gap:16px}body.app-mode .topbar .brand span{display:grid}body.app-mode .topbar .ghost-button{padding:10px 16px}body.app-mode .topbar .icon-button{width:44px;min-height:44px}body.app-mode .tab-bar{grid-area:sidebar;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:4px;width:100%;height:100%;min-height:0;overflow-y:auto;padding:20px 14px;border-top:0;border-right:1px solid var(--line);background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none}body.app-mode .tab-bar button{flex:0 0 auto;display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:12px;width:100%;min-height:48px;padding:10px 14px;border-radius:var(--r-md);font-size:.95rem;text-align:left;transition:background-color var(--t-press) var(--ease),color var(--t-press) var(--ease)}body.app-mode .tab-bar button:hover{background:color-mix(in srgb,var(--ink) 6%,transparent)}body.app-mode .tab-bar button.active{background:color-mix(in srgb,var(--accent) 14%,transparent)}body.app-mode .tab-bar .tab-label{font-weight:700}body.app-mode .app-scroll{grid-area:main;min-height:0;height:100%}body.app-mode .scroll-titlebar{display:none!important}body.app-mode .workspace,body.app-mode .child-space{width:min(1100px,calc(100% - 80px));margin:0 auto;padding:36px 0 56px}body.app-mode .parent-module-grid.two-panel{grid-template-columns:minmax(0,1fr) minmax(0,.85fr)!important;gap:22px}body.app-mode .child-hero h1{font-size:2.2rem}body.app-mode .parent-module-header h1,body.app-mode .empty-family h1{font-size:2rem}body.app-mode .panel-title h2{font-size:1.6rem}body.app-mode .fab{display:none}}
