@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-hebrew-wght-normal-DdnsCkLr.woff2) format("woff2-variations");unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-ext-wght-normal-CYrqKuxd.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:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-wght-normal-DM6njrJ3.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}:root{font-family:Fredoka Variable,Arial Rounded MT Bold,system-ui,sans-serif;color:#26053f;background:#eee6fb;font-synthesis:none;text-rendering:optimizeLegibility;--canvas: #fffaf4;--ink: #26053f;--lavender: #d5aef1;--lavender-dark: #b682db;--coral: #ff765b;--coral-dark: #e94f31;--sky: #69bdf0;--sky-dark: #2b91c8;--lime: #d9e624;--lime-dark: #91a400;--periwinkle: #8d9bef;--periwinkle-dark: #5968cd;--cream-shadow: #cfc7bc}*{box-sizing:border-box}html{min-width:320px;min-height:100%;background:#eee6fb}body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh;background:#eee6fb;color:var(--ink);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline:4px solid #2a7df0;outline-offset:3px}button,input{touch-action:manipulation}.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}.experience{isolation:isolate;position:relative;width:min(100%,560px);min-height:100vh;min-height:100dvh;margin-inline:auto;overflow:hidden;background:var(--canvas);box-shadow:0 0 50px #30104a21}.decoration-layer{position:absolute;z-index:-2;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none}.privacy-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:147px;min-height:32px;padding:5px 12px 6px;border:1px solid rgba(95,54,130,.22);border-radius:16px;background:#d6b0ed;box-shadow:inset 0 1px 1px #ffffffb8,0 2px #ad82ca,0 5px 10px #3f1a561f;color:var(--ink);font-size:clamp(15px,3.7vw,20px);font-weight:720;letter-spacing:.01em;line-height:1;cursor:pointer}.privacy-pill svg{width:18px;height:18px}.privacy-pill--static{pointer-events:none}.loading-screen{display:grid;place-items:center}.dashboard{display:flex;min-height:100dvh;flex-direction:column;justify-content:space-between;padding:max(20px,env(safe-area-inset-top)) 0 max(20px,env(safe-area-inset-bottom))}.dashboard-top{position:relative;z-index:3;flex:0 0 auto}.dashboard-header{position:relative;z-index:10;display:flex;justify-content:center;min-height:34px}.analytics-trigger,.analytics-back{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:grid;width:44px;height:44px;place-items:center;padding:0;border:1px solid rgba(95,54,130,.24);border-radius:15px;background:#d6b0ed;box-shadow:inset 0 1px 1px #ffffffb8,0 3px #ad82ca,0 7px 12px #3f1a5624;color:var(--ink);cursor:pointer;transition:transform .12s ease,filter .12s ease,box-shadow .12s ease}.analytics-trigger{position:absolute;top:-5px;right:28px}.analytics-trigger:hover,.analytics-back:hover{filter:saturate(1.05) brightness(1.025)}.analytics-trigger:active,.analytics-back:active{transform:translateY(3px);box-shadow:inset 0 1px 1px #ffffff9e,0 1px #ad82ca,0 3px 8px #3f1a561f}.privacy-controls{position:absolute;z-index:20;top:42px;left:50%;display:grid;width:min(250px,calc(100vw - 48px));padding:8px;border:1px solid #d8c9e4;border-radius:18px;background:#fffaf4fa;box-shadow:0 16px 36px #300e4833;transform:translate(-50%);animation:controls-in .16s ease-out}.privacy-controls button{display:flex;align-items:center;gap:10px;min-height:48px;padding:9px 12px;border:0;border-radius:12px;background:transparent;color:var(--ink);font-size:16px;font-weight:620;text-align:left;cursor:pointer}.privacy-controls button:hover{background:#f2e4fa}.analytics-screen{min-height:max(100dvh,913px);padding:max(19px,env(safe-area-inset-top)) 0 max(24px,env(safe-area-inset-bottom))}.analytics-header{position:relative;z-index:10;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;width:calc(100% - 56px);margin:0 auto}.analytics-pill{justify-self:center;cursor:default;pointer-events:none}.analytics-header__spacer{width:44px;height:44px}.analytics-title{position:relative;z-index:2;margin:16px auto 0;color:var(--ink);font-size:clamp(50px,12vw,64px);font-weight:745;letter-spacing:-.045em;line-height:.84;text-align:center}.analytics-total{position:relative;z-index:2;display:flex;min-height:82px;align-items:center;justify-content:space-between;width:calc(100% - 56px);margin:18px auto 0;padding:11px 17px 10px;border:1px solid rgba(95,54,130,.2);border-radius:20px;background:var(--lavender);box-shadow:inset 0 2px 2px #ffffff70,inset 0 -2px 2px #330e481c,0 3px 0 var(--lavender-dark),0 8px 14px #30143e26}.analytics-total span{max-width:125px;color:#4d2864;font-size:14px;font-weight:730;letter-spacing:.08em;line-height:1.05}.analytics-total strong{color:var(--ink);font-size:clamp(38px,10vw,52px);font-variant-numeric:tabular-nums;font-weight:760;letter-spacing:-.045em;line-height:1}.analytics-summary{margin-top:11px}.analytics-list{position:relative;z-index:2;display:grid;gap:9px;width:calc(100% - 56px);margin:11px auto 0}.analytics-row{min-width:0;min-height:68px;padding:8px 12px 9px;border:1px solid rgba(56,22,76,.1);border-radius:17px;box-shadow:inset 0 2px 2px #ffffff61,inset 0 -2px 2px #330e4817,0 3px 0 var(--card-edge),0 7px 11px #30143e21}.analytics-row__main,.analytics-row__progress{display:flex;align-items:center;justify-content:space-between}.analytics-row__main h2{min-width:0;margin:0;color:#1f0436;font-size:clamp(20px,5.3vw,28px);font-weight:760;letter-spacing:-.035em;line-height:1}.analytics-row__main strong{color:#29103e;font-size:clamp(20px,5.3vw,28px);font-variant-numeric:tabular-nums;font-weight:760;letter-spacing:-.03em;line-height:1}.analytics-row__progress{gap:9px;margin-top:7px}.analytics-row__track{display:block;flex:1;height:8px;overflow:hidden;border:1px solid rgba(62,28,75,.12);border-radius:999px;background:#fffaf4ad}.analytics-row__fill{display:block;height:100%;min-width:3px;border-radius:inherit;background:var(--card-edge)}.analytics-row__progress>span:last-child{min-width:33px;color:#4d2864;font-size:14px;font-variant-numeric:tabular-nums;font-weight:700;line-height:1;text-align:right}.dashboard-title{position:relative;z-index:2;width:min(90%,470px);margin:15px auto 0;color:var(--ink);font-size:clamp(47px,11.35vw,62px);font-weight:745;letter-spacing:-.045em;line-height:.82;text-align:center}.character-stage{--character-stage-base: clamp(319px, 75vw, 396px);--character-stage-overflow: clamp(46px, 10.9vw, 57px);position:relative;z-index:1;display:grid;flex:0 0 auto;height:calc(var(--character-stage-base) + var(--character-stage-overflow));min-height:calc(var(--character-stage-base) + var(--character-stage-overflow));overflow:hidden;place-items:end center;margin:calc(-1 * var(--character-stage-overflow)) 0 0}.meggy-character{position:absolute;bottom:-27.5%;display:block;width:auto;height:130%;max-width:none;object-fit:contain;object-position:center bottom;filter:saturate(1.02) contrast(1.01);transform-origin:50% 90%;-webkit-user-select:none;user-select:none}.is-sleep .meggy-character{bottom:-20%}.is-eat .meggy-character{bottom:-19.5%}.is-party .meggy-character{bottom:-20.5%}.is-fight .meggy-character{bottom:-19%}.is-rage .meggy-character{bottom:-20.5%}.is-train .meggy-character{bottom:-18%}.meggy-character.is-reacting{animation:character-pop .42s cubic-bezier(.2,.9,.3,1.25)}.is-sleep .meggy-character.is-reacting{animation-name:character-sleep}.is-party .meggy-character.is-reacting{animation-name:character-party}.is-fight .meggy-character.is-reacting{animation-name:character-fight}.is-rage .meggy-character.is-reacting{animation-name:character-rage}.is-train .meggy-character.is-reacting{animation-name:character-train}.reaction-message{position:absolute;z-index:3;right:7%;bottom:12px;max-width:185px;padding:8px 11px;border:1px solid rgba(52,14,74,.13);border-radius:15px 15px 4px;background:#fffaf4f5;box-shadow:0 7px 18px #3a134f29;color:var(--ink);font-size:13px;font-weight:610;line-height:1.15;text-align:center;animation:reaction-in .24s ease-out}.reaction-effect{position:absolute;z-index:2;display:grid;place-items:center;color:#397de3;filter:drop-shadow(0 4px 4px rgba(44,12,66,.18));pointer-events:none}.reaction-effect svg{width:46px;height:46px}.reaction-effect--sleep{top:20%;right:17%;display:flex;align-items:center;gap:2px;color:#6d75df;animation:effect-float 1.1s ease-in-out infinite alternate}.reaction-effect--sleep span{font-size:20px;font-weight:760}.reaction-effect--eat{right:18%;bottom:29%;color:#f0a63b;animation:effect-pop .65s ease-out both}.reaction-effect--party{top:27%;right:13%;color:#ff6c51;animation:effect-spin .9s ease-out both}.reaction-effect--fight{top:33%;right:13%;color:#6d75df;animation:effect-float .7s ease-in-out infinite alternate}.reaction-effect--rage{top:26%;right:17%;color:#ef4e35;animation:effect-steam .85s ease-in-out infinite alternate}.reaction-effect--train{top:34%;left:13%;color:#6d56cf;animation:effect-train .65s ease-out both}.action-grid{position:relative;z-index:2;display:grid;flex:0 0 auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:calc(100% - 56px);margin:0 auto}.action-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;gap:6px;min-width:0;min-height:64px;height:68px;align-items:center;justify-content:space-between;padding:8px 9px;border:1px solid rgba(56,22,76,.1);border-radius:18px;box-shadow:inset 0 2px 2px #ffffff6b,inset 0 -2px 2px #330e481c,0 3px 0 var(--card-edge),0 7px 11px #30143e24;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}.action-card:hover{filter:saturate(1.05) brightness(1.02)}.action-card:active{transform:translateY(3px) scale(.985);box-shadow:inset 0 2px 2px #ffffff59,inset 0 -2px 2px #330e4817,0 1px 0 var(--card-edge),0 3px 7px #30143e1f}.action-card--sleep{--card-edge: var(--lavender-dark);background:var(--lavender)}.action-card--eat,.action-card--rage{--card-edge: var(--coral-dark);background:var(--coral)}.action-card--party{--card-edge: var(--sky-dark);background:var(--sky)}.action-card--fight{--card-edge: var(--lime-dark);background:var(--lime)}.action-card--train{--card-edge: var(--periwinkle-dark);background:var(--periwinkle)}.action-card__label{flex:1 1 auto;min-width:0;color:#1f0436;font-size:clamp(18px,4.9vw,25px);font-weight:760;letter-spacing:-.035em;line-height:1;text-align:left;white-space:nowrap}.action-card--party .action-card__label,.action-card--train .action-card__label{font-size:clamp(16px,4.35vw,22px)}.action-card__count{display:grid;flex:0 0 auto;min-width:46px;height:32px;place-items:center;padding-inline:7px;border:1px solid rgba(81,58,74,.15);border-radius:16px;background:#fffdfa;box-shadow:inset 0 1px 1px #fff,0 2px #bdb5ac,0 4px 7px #37164626;color:#29103e;font-size:clamp(17px,4.5vw,22px);font-variant-numeric:tabular-nums;font-weight:760;letter-spacing:-.035em;line-height:1}.summary-card{position:relative;z-index:2;display:grid;grid-template-columns:78px 1fr;min-height:78px;align-items:center;width:calc(100% - 56px);margin:10px auto 0;padding:4px 14px 5px 12px;border:1px solid #e0d5c7;border-radius:18px;background:#fffaf4;box-shadow:inset 0 1px 1px #ffffffbf,0 3px 0 var(--cream-shadow),0 7px 14px #371a3d1f}.summary-chart{display:block}.summary-copy{min-width:0;padding-left:13px;text-align:left}.summary-copy h2{margin:0 0 3px;color:#2b0c40;font-size:clamp(21px,5.2vw,27px);font-weight:720;letter-spacing:-.02em;line-height:1}.summary-copy p{margin:0;font-size:clamp(15px,3.85vw,20px);font-weight:650;letter-spacing:-.02em;line-height:1.12}.summary-empty{color:#7b638c}.summary-sleep{color:#ae79dc}.summary-eat{color:#fa5f42}.summary-rage{color:#ec4529}.summary-rest{color:#347bdd}.toast{position:fixed;z-index:50;left:50%;bottom:max(20px,env(safe-area-inset-bottom));width:min(360px,calc(100vw - 36px));padding:13px 16px;border:1px solid rgba(56,18,76,.15);border-radius:16px;background:#2b0a43;box-shadow:0 15px 40px #27073947;color:#fffaf4;font-size:14px;font-weight:600;text-align:center;transform:translate(-50%);animation:toast-in .22s ease-out}.toast--milestone{display:grid;gap:3px;padding:15px 18px 16px;background:#d7b0ef;color:var(--ink)}.toast--milestone span{font-size:12px;font-weight:700;letter-spacing:.12em}.toast--milestone strong{font-size:23px;line-height:1}.lock-screen{display:flex;min-height:100dvh;align-items:flex-start;justify-content:center;overflow-x:hidden;overflow-y:auto;padding:max(24px,env(safe-area-inset-top)) 24px max(24px,env(safe-area-inset-bottom))}.lock-card{position:relative;z-index:1;display:flex;width:min(100%,390px);flex-direction:column;align-items:center;margin-block:auto;padding:26px 24px 24px;border:1px solid #e1d4e9;border-radius:30px;background:#fffaf4ed;box-shadow:0 4px #d5c6dd,0 24px 60px #37124e24}.lock-card.is-shaking{animation:shake .38s ease-in-out}.lock-character{display:block;width:min(52vw,210px);height:clamp(190px,29dvh,250px);margin:14px auto 4px;object-fit:contain;object-position:center bottom}.lock-card h1{max-width:320px;margin:2px 0 8px;color:var(--ink);font-size:clamp(35px,9.5vw,47px);font-weight:745;letter-spacing:-.045em;line-height:.96;text-align:center}.lock-card>p{max-width:290px;margin:0 0 18px;color:#755f82;font-size:16px;font-weight:520;line-height:1.25;text-align:center}.lock-card form{display:grid;gap:10px;width:100%}.lock-card input{width:100%;height:56px;padding:0 17px;border:2px solid #d8b8ea;border-radius:17px;background:#fffdfa;color:var(--ink);font-size:18px;font-weight:600;letter-spacing:.02em;text-align:center;text-transform:uppercase}.lock-card input::placeholder{color:#a48dac;text-transform:none}.lock-card form button{min-height:56px;border:1px solid #4f2469;border-radius:17px;background:#2b0a43;box-shadow:0 4px #160523;color:#fffaf4;font-size:18px;font-weight:650;cursor:pointer}.lock-card form button:active{transform:translateY(3px);box-shadow:0 1px #160523}.lock-card form button:disabled{cursor:wait;opacity:.7}.lock-message{min-height:21px;margin-top:12px;color:#6f467e;font-size:14px;font-weight:590;text-align:center}@keyframes controls-in{0%{opacity:0;transform:translate(-50%,-5px) scale(.96)}}@keyframes character-pop{0%{opacity:.45;transform:translateY(5px) rotate(-1deg)}65%{transform:translateY(-2px) rotate(.5deg)}}@keyframes character-sleep{0%{opacity:.5;transform:translateY(-8px)}70%{transform:translateY(4px) rotate(-1deg)}}@keyframes character-party{0%{opacity:.5;transform:rotate(-3deg)}45%{transform:rotate(3deg)}75%{transform:rotate(-1.5deg)}}@keyframes character-fight{0%{opacity:.4;transform:translateY(8px) rotate(-2deg)}55%{transform:translateY(-3px) rotate(1deg)}}@keyframes character-rage{0%{opacity:.45;transform:scale(.92)}40%,65%{transform:translate(-3px) rotate(-1deg)}52%,78%{transform:translate(3px) rotate(1deg)}}@keyframes character-train{0%{opacity:.4;transform:translateY(8px)}70%{transform:translateY(-2px)}}@keyframes reaction-in{0%{opacity:0;transform:translateY(7px) scale(.92)}}@keyframes effect-float{to{transform:translateY(-8px) rotate(3deg)}}@keyframes effect-pop{0%{opacity:0;transform:translate(-10px,8px) scale(.5)}}@keyframes effect-spin{0%{opacity:0;transform:rotate(-35deg) scale(.55)}}@keyframes effect-impact{0%{opacity:0;transform:scale(.35) rotate(-20deg)}55%{transform:scale(1.25) rotate(8deg)}}@keyframes effect-steam{0%{opacity:.55;transform:translateY(5px)}to{opacity:1;transform:translateY(-5px)}}@keyframes effect-train{0%{opacity:0;transform:translateY(10px) scale(.6) rotate(-12deg)}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,10px) scale(.96)}}@keyframes shake{20%{transform:translate(-7px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(3px)}}@media(min-width:500px){.dashboard{padding-top:max(23px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom))}.action-grid,.summary-card,.analytics-header,.analytics-total,.analytics-list{width:calc(100% - 72px)}.action-grid{gap:13px}.action-card{height:72px;border-radius:20px}.summary-card{min-height:92px;border-radius:22px}.analytics-row{border-radius:20px}}@media(max-height:800px)and (min-width:371px){.dashboard{padding-top:max(16px,env(safe-area-inset-top));padding-bottom:max(18px,env(safe-area-inset-bottom))}.dashboard-title{margin-top:11px;font-size:48px}.character-stage{--character-stage-base: 300px;--character-stage-overflow: 44px}.action-grid{gap:8px 10px}.action-card{height:64px}}@media(max-width:370px){.dashboard{min-height:700px;padding-top:max(16px,env(safe-area-inset-top));padding-bottom:max(18px,env(safe-area-inset-bottom))}.dashboard-title{margin-top:15px;font-size:42px}.character-stage{--character-stage-base: 292px;--character-stage-overflow: 42px}.action-grid,.summary-card,.analytics-header,.analytics-total,.analytics-list{width:calc(100% - 34px)}.analytics-trigger{right:17px}.action-card{height:64px;gap:4px;padding:6px 7px}.action-card__label{font-size:17px}.action-card--party .action-card__label,.action-card--train .action-card__label{font-size:15.5px}.action-card__count{min-width:43px;height:30px;padding-inline:5px;font-size:16px}.summary-card{grid-template-columns:66px 1fr;padding-inline:6px 10px}.summary-chart{transform:scale(.86)}.analytics-title{font-size:45px}.analytics-total{min-height:74px;padding-inline:13px}.analytics-total strong{font-size:36px}.analytics-row{min-height:64px;padding-inline:10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}
