/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.block{display:block}.hidden{display:none}.table{display:table}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--strawberry:#e94b66;--strawberry-deep:#951f43;--petal:#f4a9bb;--blush:#fbe2e7;--cream:#fff8ee;--vanilla:#f6ead7;--sage:#7d9365;--leaf:#4f7554;--leaf-dark:#31523b;--cocoa:#4a2930;--muted:#8d7378;--paper:#fffdf8}*{box-sizing:border-box}html{background:#eadfe0}body{color:var(--cocoa);background:#eadfe0;margin:0;font-family:Avenir Next,Trebuchet MS,ui-rounded,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;overflow-x:hidden}.login-shell,.auth-boot,.resource-loading{min-height:100svh;color:var(--cocoa);background:radial-gradient(circle at 14% 12%,#ffffffeb 0 2px,#0000 2.6px) 0 0/31px 31px,radial-gradient(circle at 85% 20%,#e94b662e 0 3px,#0000 3.6px) 0 0/45px 45px,linear-gradient(155deg,#fff9f2 0%,#fbe6ea 58%,#efd1d7 100%);overflow:hidden}.login-shell{padding:calc(22px + env(safe-area-inset-top)) 16px calc(22px + env(safe-area-inset-bottom));place-items:center;display:grid;position:relative}.login-card{z-index:2;text-align:center;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffdf9d4;border:1px solid #ffffffe6;border-radius:34px;width:min(100%,380px);padding:30px 24px 24px;position:relative;overflow:hidden;box-shadow:0 28px 70px #652d3b2b,inset 0 1px #fff}.login-card:before{content:"";background:#f4a9bb33;border-radius:50%;width:150px;height:150px;position:absolute;top:-60px;right:-48px}.login-kicker{color:var(--strawberry-deep);letter-spacing:.19em;margin-top:13px;font-size:8px;font-weight:950;display:block}.login-card h1{letter-spacing:-.045em;margin:7px 0 8px;font-family:Georgia,serif;font-size:clamp(31px,9vw,42px);line-height:.98}.login-card>p{color:#84676e;max-width:285px;margin:0 auto 19px;font-size:11px;line-height:1.5}.login-berry{color:#5f2633;background:linear-gradient(145deg,#ff7187,#e53c60);border:3px solid #9d2445;border-radius:48% 48% 52% 52%/37% 37% 66% 66%;width:58px;height:62px;margin:0 auto;animation:3s ease-in-out infinite login-berry-float;position:relative;box-shadow:inset 8px 6px #ffffff2e,0 10px 20px #951f432e}.login-berry:before{content:"";clip-path:polygon(50% 100%,0 0,38% 24%,50% 0,64% 25%,100% 0);background:#5f8b57;width:34px;height:22px;position:absolute;top:-16px;left:10px}.login-berry i:before,.login-berry i:after{content:"";background:#5a2530;border-radius:50%;width:4px;height:6px;position:absolute;top:27px}.login-berry i:before{left:17px}.login-berry i:after{right:17px}.login-berry b{font:700 15px/1 Georgia,serif;position:absolute;top:31px;left:23px}.login-name{text-align:left;gap:6px;display:grid}.login-name span{color:var(--muted);letter-spacing:.15em;font-size:8px;font-weight:900}.login-name input{width:100%;height:47px;color:var(--cocoa);background:#fff;border:1px solid #ecd6da;border-radius:15px;outline:0;padding:0 15px;font-weight:750;box-shadow:inset 0 2px 4px #5a2d3709}.login-name input:focus{border-color:#e78499;box-shadow:0 0 0 4px #e94b661a}.pin-dots{justify-content:center;gap:12px;margin:17px 0 14px;display:flex}.pin-dots i{background:#fff;border:2px solid #dcafba;border-radius:50%;width:13px;height:13px;transition:transform .18s,background .18s}.pin-dots i.filled{border-color:var(--strawberry);background:var(--strawberry);transform:scale(1.12);box-shadow:0 0 0 4px #e94b661a}.pin-pad{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.pin-pad button{color:#58323a;background:#ffffffeb;border:1px solid #78485317;border-radius:16px;min-height:48px;font-family:Georgia,serif;font-size:19px;font-weight:700;transition:transform .12s,background .12s;box-shadow:0 6px 14px #5d2f3a11}.pin-pad button:active{background:var(--blush);transform:scale(.92)}.pin-pad .pin-back{color:#a47b84;font-family:inherit;font-size:16px}.pin-pad .pin-enter{color:#fff;background:linear-gradient(145deg,#f06982,#d9365b)}.login-submit{color:#fff;background:linear-gradient(135deg,#a42149,#e74869);border:0;border-radius:17px;width:100%;min-height:49px;margin-top:13px;font-size:11px;font-weight:900;box-shadow:0 10px 24px #951f4338}.login-submit:disabled{opacity:.48;box-shadow:none}.login-error{background:#fee9ed;border-radius:12px;padding:9px 11px;color:#8f2442!important;margin:12px 0 -3px!important;font-size:9px!important}.login-privacy{color:#a08188;margin-top:13px;font-size:8px;display:block}.login-sparkles i{color:#c2476573;font:25px/1 Georgia,serif;animation:3.8s ease-in-out infinite login-sparkle;position:absolute}.login-sparkles i:first-child{top:9%;left:10%}.login-sparkles i:nth-child(2){animation-delay:-.8s;top:18%;right:8%}.login-sparkles i:nth-child(3){animation-delay:-1.7s;bottom:12%;left:7%}.login-sparkles i:nth-child(4){animation-delay:-2.2s;bottom:7%;right:12%}.auth-boot{text-align:center;place-content:center;gap:18px;display:grid}.auth-boot span{color:var(--strawberry-deep);letter-spacing:.08em;font-size:10px;font-weight:850}.resource-loading .splash-screen{display:block}.loading-percent{justify-content:space-between;align-items:baseline;margin:0 1px 7px;display:flex}.loading-percent b{font-family:Georgia,serif;font-size:23px}.loading-percent small{letter-spacing:.12em;text-transform:uppercase;font-size:8px;font-weight:850}.resource-loading .loading-track i{transition:transform .35s;animation:none}.loading-retry{color:#fff;background:#ffffff24;border:1px solid #ffffff8c;border-radius:13px;width:100%;min-height:40px;margin-top:12px;font-size:10px;font-weight:850}.tutorial-layer{z-index:160;pointer-events:auto;position:fixed;inset:0}.tutorial-dim{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#30181ea3;position:absolute;inset:0}.tutorial-dim.has-focus{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0}.tutorial-focus{z-index:1;pointer-events:none;border:3px solid #fff6f8;border-radius:24px;transition:all .34s cubic-bezier(.2,.8,.2,1);position:fixed;box-shadow:0 0 0 9999px #30181ea6,0 0 0 7px #f15e7d40,0 15px 30px #38182040}.tutorial-card{z-index:2;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);will-change:transform;background:#fffcf7f7;border:1px solid #ffffffe6;border-radius:27px;width:min(100% - 28px,402px);max-height:min(44svh,330px);margin:0 auto;padding:19px;transition:transform .46s cubic-bezier(.2,.82,.2,1);animation:.38s both tutorial-card-in;position:fixed;top:50svh;left:14px;right:14px;overflow-y:auto;box-shadow:0 24px 65px #33161e57}.tutorial-card.is-bottom{transform:translateY(calc(50svh - 100% - 14px - env(safe-area-inset-bottom)))}.tutorial-card.is-middle{transform:translateY(-50%)}.tutorial-card.is-top{transform:translateY(calc(-50svh + 12px + env(safe-area-inset-top)))}.tutorial-progress{background:#f0dfe3;border-radius:99px;height:4px;margin-bottom:15px;overflow:hidden}.tutorial-progress i{border-radius:inherit;background:linear-gradient(90deg, var(--strawberry), #f6a4b4);height:100%;transition:width .32s;display:block}.tutorial-card>span{color:var(--strawberry-deep);letter-spacing:.15em;font-size:8px;font-weight:950}.tutorial-card h2{letter-spacing:-.025em;margin:6px 0 7px;font-family:Georgia,serif;font-size:24px;line-height:1.05}.tutorial-card p{color:#775b62;margin:0 0 17px;font-size:11px;line-height:1.55}.tutorial-actions{grid-template-columns:1fr 1.2fr;gap:9px;display:grid}.tutorial-actions button{border-radius:15px;min-height:46px;font-size:10px;font-weight:900}.tutorial-skip{color:#8f7078;background:#fff;border:1px solid #e6ced4}.tutorial-next{color:#fff;background:linear-gradient(135deg,#a6234a,#e74c6c);border:0;box-shadow:0 8px 19px #9d244533}.journey-welcome{z-index:180;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:radial-gradient(circle,#fff8e1ed,#df6f89e0);place-items:center;padding:22px;animation:.45s both journey-fade-in;display:grid;position:fixed;inset:0;overflow:hidden}.journey-rays{background:repeating-conic-gradient(from -8deg, #ffffff73 0 7deg, transparent 7deg 18deg);border-radius:50%;width:165vmax;height:165vmax;animation:16s linear infinite journey-rays;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.journey-rays i{background:#fff;border-radius:50%;width:7px;height:7px;animation:2.2s ease-in-out infinite journey-sparkle;position:absolute;top:50%;left:50%;box-shadow:0 0 14px 5px #ffffffbf}.journey-rays i:first-child{transform:translate(-126px,-164px)}.journey-rays i:nth-child(2){animation-delay:-.4s;transform:translate(132px,-148px)}.journey-rays i:nth-child(3){animation-delay:-.8s;transform:translate(-164px,82px)}.journey-rays i:nth-child(4){animation-delay:-1.2s;transform:translate(148px,104px)}.journey-card{text-align:center;background:#fffcf7e6;border:1px solid #ffffffe6;border-radius:30px;width:min(100%,350px);padding:30px 23px 23px;animation:.7s cubic-bezier(.16,.85,.25,1.18) both journey-card-in;position:relative;box-shadow:0 28px 70px #66253838,inset 0 1px #fff}.journey-card>span{color:#fff;background:linear-gradient(145deg,#ff7188,#d92f58);border-radius:48% 48% 52% 52%/38% 38% 66% 66%;place-items:center;width:61px;height:66px;margin:0 auto 13px;font:20px/1 Georgia,serif;animation:2.2s ease-in-out infinite journey-heart;display:grid;box-shadow:inset 8px 6px #ffffff29,0 10px 28px #b92d5038}.journey-card small{color:var(--strawberry-deep);letter-spacing:.17em;font-size:8px;font-weight:950}.journey-card h2{letter-spacing:-.04em;margin:7px 0 9px;font-family:Georgia,serif;font-size:31px;line-height:1.02}.journey-card p{color:#82666d;max-width:270px;margin:0 auto 20px;font-size:10px;line-height:1.5}.journey-card button{color:#fff;background:linear-gradient(135deg,#a6234a,#ed4e6f);border:0;border-radius:16px;width:100%;min-height:48px;font-size:10px;font-weight:900;box-shadow:0 10px 23px #97204438}.original-photo-note{color:#426045;background:#f0f5e8;border:1px solid #cddbbb;border-radius:16px;grid-template-columns:34px 1fr;align-items:center;gap:10px;margin:13px 0;padding:11px 12px;display:grid}.original-photo-note>span{color:#fff;background:#68835c;border-radius:11px;place-items:center;width:32px;height:32px;font-weight:900;display:grid}.original-photo-note p{margin:0;display:grid}.original-photo-note strong{font-size:10px}.original-photo-note small{color:#71806b;margin-top:2px;font-size:8px}.gallery-photo-tile,.gallery-file-tile{aspect-ratio:1;color:#fff;background:#eadbdf;border-radius:4px;min-width:0;text-decoration:none;position:relative;overflow:hidden}.gallery-photo-tile img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .35s,transform .35s;position:absolute;inset:0;transform:scale(1.02)}.gallery-photo-tile.is-loaded img{opacity:1;transform:scale(1)}.gallery-original-mark{z-index:2;color:#fff;opacity:0;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#371c2361;border:1px solid #ffffffb3;border-radius:50%;place-items:center;width:19px;height:19px;font-size:8px;transition:opacity .2s;display:grid;position:absolute;bottom:5px;right:5px}.gallery-photo-tile:focus-visible .gallery-original-mark{opacity:1}.photo-skeleton{background:linear-gradient(100deg,#ead5da 30%,#f8ebee 48%,#ead5da 66%) 0 0/250% 100%;animation:1.5s infinite photo-shimmer;position:absolute;inset:0}.gallery-file-tile{color:#684a52;text-align:center;background:#f4e6e9;place-content:center;gap:4px;padding:8px;display:grid}.gallery-file-tile>span{color:#fff;background:#9b5f70;border-radius:7px;width:max-content;margin:0 auto;padding:5px 7px;font-size:7px;font-weight:900}.gallery-file-tile small{font-size:7px}.gallery-upload.is-uploading{opacity:.65;pointer-events:none}.form-message{color:var(--strawberry-deep);text-align:center;margin:9px 0 0;font-size:9px;line-height:1.4}.album-message{margin-bottom:2px}.account-actions{gap:9px;margin-top:16px;display:grid}.account-actions button,.account-actions a{min-height:49px;color:var(--cocoa);text-align:left;background:#fff;border:1px solid #ead8dc;border-radius:16px;grid-template-columns:33px 1fr;align-items:center;gap:9px;padding:7px 12px;text-decoration:none;display:grid}.account-actions span{width:31px;height:31px;color:var(--strawberry-deep);background:var(--blush);border-radius:10px;place-items:center;display:grid}.account-actions strong{font-size:10px}.account-actions .logout-button{color:#8e5965;background:#fbf4f5}.admin-shell{width:min(100%,760px);min-height:100svh;padding:calc(22px + env(safe-area-inset-top)) 16px 50px;background:var(--cream);margin:0 auto}.admin-header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.admin-header span,.admin-panel>div>span,.admin-section-title span{color:var(--strawberry-deep);letter-spacing:.16em;font-size:8px;font-weight:950}.admin-header h1{margin:4px 0;font-family:Georgia,serif;font-size:clamp(28px,8vw,40px);line-height:1}.admin-header p{color:var(--muted);margin:0;font-size:10px}.admin-header>.admin-back{color:var(--strawberry-deep);background:#fff;border:1px solid #ecd5db;border-radius:13px;flex:none;padding:10px 12px;font-size:9px;font-weight:850;text-decoration:none}.admin-message{color:#6f4e56;background:var(--blush);border-radius:14px;padding:11px 13px;font-size:9px}.admin-loading{min-height:250px;color:var(--muted);place-items:center;gap:13px;font-size:10px;display:grid}.admin-loading i{border:3px solid #efced6;border-top-color:var(--strawberry);border-radius:50%;width:38px;height:38px;animation:.8s linear infinite spin}.admin-stats{grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:14px;display:grid}.admin-stats article{background:#fff;border:1px solid #efdee2;border-radius:17px;min-width:0;padding:13px;display:grid;box-shadow:0 7px 20px #5a313a0d}.admin-stats span{color:var(--muted);text-transform:uppercase;font-size:7px;font-weight:850}.admin-stats strong{margin-top:5px;font-family:Georgia,serif;font-size:25px}.admin-stats small{color:var(--muted);font-size:7px}.admin-panel{background:#fff;border:1px solid #ead7dc;border-radius:20px;justify-content:space-between;align-items:center;gap:16px;margin:10px 0;padding:17px;display:flex}.admin-panel h2{margin:4px 0;font-family:Georgia,serif;font-size:19px}.admin-panel p{max-width:440px;color:var(--muted);margin:0;font-size:9px;line-height:1.45}.admin-panel>button,.admin-upload{color:#fff;background:var(--strawberry-deep);border:0;border-radius:13px;flex:none;place-items:center;min-height:40px;padding:0 13px;font-size:9px;font-weight:850;display:grid}.admin-upload input{display:none}.admin-section{margin-top:18px}.admin-section-title{justify-content:space-between;align-items:end;margin-bottom:9px;display:flex}.admin-section-title h2{margin:4px 0 0;font-family:Georgia,serif;font-size:22px}.admin-section-title>small{color:var(--muted);font-size:8px}.admin-row{background:#fff;border:1px solid #ecdde1;border-radius:15px;justify-content:space-between;align-items:center;gap:10px;margin-bottom:7px;padding:12px 13px;display:flex}.admin-row>div{gap:2px;min-width:0;display:grid}.admin-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.admin-row small,.admin-row em{color:var(--muted);font-size:7px;font-style:normal}.admin-row button,.admin-row-actions a{color:#9a2446;background:#fff6f8;border:1px solid #ebcbd3;border-radius:10px;min-height:32px;padding:0 10px;font-size:8px;font-weight:850;text-decoration:none}.admin-row-actions{flex:none;align-items:center;gap:6px;display:flex}.admin-row-actions a{color:#486046;background:#f4f7ef;border-color:#d2dfc4;place-items:center;display:grid}.admin-empty{color:var(--muted);text-align:center;border:1px dashed #dec9ce;border-radius:16px;padding:18px;font-size:9px}@keyframes login-berry-float{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-6px)rotate(2deg)}}@keyframes login-sparkle{0%,to{opacity:.25;transform:scale(.8)rotate(0)}50%{opacity:.8;transform:scale(1.15)rotate(20deg)}}@keyframes tutorial-card-in{0%{opacity:0;filter:blur(4px)}to{opacity:1;filter:blur()}}@keyframes photo-shimmer{to{background-position:-250% 0}}@keyframes gallery-open{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes journey-fade-in{0%{opacity:0}to{opacity:1}}@keyframes journey-rays{to{transform:translate(-50%,-50%)rotate(360deg)}}@keyframes journey-card-in{0%{opacity:0;transform:translateY(22px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes journey-heart{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-5px)rotate(2deg)}}@keyframes journey-sparkle{0%,to{opacity:.25}50%{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:520px){.login-card{border-radius:30px;padding:26px 19px 20px}.pin-pad button{min-height:45px}.admin-stats{grid-template-columns:1fr 1fr}.admin-panel{flex-direction:column;align-items:stretch}.admin-panel>button,.admin-upload{width:100%}}button{font:inherit;-webkit-tap-highlight-color:transparent}.app-shell{width:100%;min-height:100svh;padding-bottom:calc(92px + env(safe-area-inset-bottom));background:radial-gradient(circle at 8% 4%, #ffffffe0 0 2px, transparent 2.5px), radial-gradient(circle at 92% 12%, #e94b661f 0 3px, transparent 3.5px), var(--cream);background-size:28px 28px,42px 42px,auto;position:relative;overflow-x:hidden}.garden-screen{width:min(100%,430px);padding:calc(18px + env(safe-area-inset-top)) 18px 28px;margin:0 auto}.splash-screen{z-index:100;background:#f5c5cd;width:min(100%,430px);margin:0 auto;transition:opacity .55s,visibility .55s;position:fixed;inset:0;overflow:hidden}.splash-screen img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.splash-screen.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.splash-shade{background:linear-gradient(#0000 58%,#4e1f2a0a 72%,#4e1f2a70);position:absolute;inset:0}.splash-copy{left:20px;right:20px;bottom:calc(22px + env(safe-area-inset-bottom));color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#5b232f6b;border:1px solid #ffffff80;border-radius:21px;padding:15px 17px;position:absolute;box-shadow:0 12px 35px #46192329}.splash-copy span{letter-spacing:.18em;font-size:9px;font-weight:900}.splash-copy p{margin:5px 0 11px;font-family:Georgia,Times New Roman,serif;font-size:17px}.loading-track{background:#ffffff4d;border-radius:999px;height:4px;overflow:hidden}.loading-track i{border-radius:inherit;transform-origin:0;background:#fff;width:100%;height:100%;animation:2.65s ease-out forwards load-grow;display:block}.topbar{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.eyebrow{color:var(--strawberry-deep);letter-spacing:.17em;margin:0 0 5px;font-size:10px;font-weight:850;line-height:1}.topbar h1{letter-spacing:-.035em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:32px;line-height:1}.topbar h1 span{color:var(--strawberry);vertical-align:5px;font-size:.7em}.avatar{color:#fff;background:linear-gradient(145deg, var(--strawberry), #f58498);border:2px solid #fff;border-radius:16px;width:44px;height:44px;font-weight:850;box-shadow:0 7px 18px #951f4333}.day-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffd1;border:1px solid #e94b661f;border-radius:23px;justify-content:space-between;align-items:center;margin-bottom:14px;padding:17px 18px;display:flex;box-shadow:0 12px 40px #5f363d14}.day-card>div:first-child{display:grid}.day-kicker{color:var(--muted);letter-spacing:.14em;font-size:9px;font-weight:850}.day-card strong{letter-spacing:-.03em;margin:3px 0;font-family:Georgia,serif;font-size:24px}.day-card small{color:var(--muted);font-size:11px}.milestone-badge{color:#9f254a;letter-spacing:.06em;text-transform:uppercase;background:linear-gradient(135deg,#fff4f6,#f9dfe5);border:1px solid #e5537033;border-radius:999px;align-items:center;gap:5px;width:max-content;max-width:100%;margin-top:9px;padding:6px 10px;font-size:8px;font-weight:900;animation:2.2s ease-in-out infinite badge-glow-pink;display:inline-flex;position:relative;box-shadow:0 0 #e94b663b,0 6px 15px #852e441a}.milestone-badge i{color:var(--strawberry);font:10px/1 Georgia,serif}.milestone-badge.year{color:#85551e;background:linear-gradient(135deg,#fff8df,#f2db9e);border-color:#b881303d;animation-name:badge-glow-gold}.milestone-badge.year i{color:#b47926}.tiny-calendar{text-align:center;background:var(--paper);border:1px solid #f3c1cc;border-radius:14px;width:52px;overflow:hidden;transform:rotate(3deg);box-shadow:0 5px 13px #552d3514}.tiny-calendar span{color:#fff;background:var(--strawberry);letter-spacing:.12em;padding:4px;font-size:8px;font-weight:850;display:block}.tiny-calendar b{padding:5px 0 7px;font-family:Georgia,serif;font-size:20px;display:block}.birthday-card{background:linear-gradient(125deg,#fffaf6f0,#fbe2e7e6);border:1px solid #e94b6626;border-radius:23px;grid-template-columns:48px minmax(0,1fr) 16px;align-items:center;gap:13px;min-height:78px;margin-bottom:14px;padding:12px 14px;display:grid;position:relative;overflow:hidden;box-shadow:0 10px 30px #82354814}.birthday-card:after{content:"";pointer-events:none;background:#ffffff5c;border-radius:50%;width:88px;height:88px;position:absolute;bottom:-34px;right:-24px}.birthday-calendar{text-align:center;background:#fffdf8e6;border:1px solid #e94b663d;border-radius:14px;overflow:hidden;box-shadow:0 5px 13px #552d3512}.birthday-calendar span{color:#fff;letter-spacing:.14em;background:linear-gradient(135deg,#ef6079,#d9365e);padding:3px;font-size:7px;font-weight:900;display:block}.birthday-calendar b{padding:4px 0 6px;font-family:Georgia,serif;font-size:19px;display:block}.birthday-copy{gap:2px;min-width:0;display:grid}.birthday-copy>span{color:var(--strawberry-deep);letter-spacing:.14em;font-size:8px;font-weight:900}.birthday-copy strong{overflow-wrap:anywhere;letter-spacing:-.02em;font-family:Georgia,serif;font-size:17px;line-height:1.15}.birthday-copy small{color:var(--muted);font-size:9px;line-height:1.35}.birthday-sparkle{z-index:1;color:#dc4868;font:15px/1 Georgia,serif;animation:2.7s ease-in-out infinite birthday-sparkle;position:relative}.birthday-card.is-today{background:linear-gradient(125deg,#fff8ed,#f9ced9);border-color:#e94b6657;box-shadow:0 10px 34px #c335572b,0 0 0 5px #ffffff57}.garden-card{background:#eef2df;border:1px solid #4f755429;border-radius:30px;overflow:hidden;box-shadow:0 16px 45px #485a3221}.sky-copy{color:#63705d;align-items:center;gap:8px;padding:17px 19px 6px;font-size:11px;font-weight:750;display:flex}.status-dot{background:var(--sage);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #7d936526}.garden-scene{background:linear-gradient(#eef3df 0 63%,#d0d2a1 63% 100%);height:278px;position:relative;overflow:hidden}.sun{background:#f6cf72;border-radius:50%;width:48px;height:48px;position:absolute;top:28px;right:33px;box-shadow:0 0 0 9px #f6cf722e,0 0 38px #ebbe5147}.cloud{background:#ffffffad;border-radius:20px;width:46px;height:12px;position:absolute}.cloud:before,.cloud:after{content:"";background:inherit;border-radius:50%;position:absolute;bottom:0}.cloud:before{width:18px;height:18px;left:9px}.cloud:after{width:14px;height:14px;left:24px}.cloud-one{top:48px;left:28px}.cloud-two{opacity:.7;top:88px;right:94px;transform:scale(.7)}.sparkle{color:#fff;text-shadow:0 2px 7px #4f755433;font:30px/1 Georgia;position:absolute;transform:rotate(45deg)}.sparkle-one{top:96px;left:62px}.sparkle-two{font-size:19px;top:52px;right:106px}.plant{z-index:2;width:190px;height:177px;position:absolute;bottom:45px;left:50%;transform:translate(-50%)}.stem{background:var(--leaf-dark);border-radius:8px;width:8px;height:112px;position:absolute;bottom:9px;left:94px;transform:rotate(-2deg)}.leaf{border:4px solid var(--leaf-dark);background:var(--leaf);width:78px;height:48px;position:absolute}.leaf:after{content:"";background:var(--leaf-dark);opacity:.65;width:53px;height:3px;position:absolute;top:23px}.leaf-left{border-radius:75% 25%;bottom:42px;left:28px;transform:rotate(19deg)}.leaf-left:after{right:-1px;transform:rotate(10deg)}.leaf-right{border-radius:25% 75%;bottom:67px;right:17px;transform:rotate(-14deg)}.leaf-right:after{left:0;transform:rotate(-8deg)}.berry{z-index:3;border:4px solid var(--strawberry-deep);background:var(--strawberry);border-radius:48% 48% 52% 52%/38% 38% 66% 66%;width:52px;height:58px;position:absolute;box-shadow:inset 8px 5px #ffffff24,0 8px 12px #5a2f361f}.berry:before{content:"";background:var(--leaf);clip-path:polygon(50% 100%,0 0,38% 25%,50% 0,64% 27%,100% 0);width:31px;height:20px;position:absolute;top:-14px;left:7px}.berry i,.berry i:before,.berry i:after{content:"";background:#f7d493;border-radius:50%;width:3px;height:5px;position:absolute}.berry i{top:20px;left:13px}.berry i:before{top:-8px;left:18px}.berry i:after{top:18px;left:14px}.berry-one{top:26px;left:42px;transform:rotate(-8deg)}.berry-two{top:6px;right:30px;transform:scale(.78)rotate(12deg)}.berry-three{top:-8px;left:74px;transform:scale(.62)rotate(3deg)}.face{z-index:6;width:35px;height:23px;position:absolute;top:49px;left:54px}.face i{background:#58232e;border-radius:50%;width:4px;height:7px;position:absolute;top:0}.face i:first-child{left:2px}.face i:nth-child(2){right:2px}.face b{border-bottom:2px solid #58232e;border-radius:50%;width:10px;height:7px;position:absolute;top:5px;left:13px}.soil{z-index:1;background:#98745a;border-radius:50%;width:205px;height:47px;position:absolute;bottom:22px;left:50%;transform:translate(-50%);box-shadow:inset 0 -13px #805c47}.soil span{background:#6f4c3b;border-radius:50%;width:7px;height:4px;position:absolute}.soil span:first-child{top:17px;left:38px}.soil span:nth-child(2){top:25px;left:134px}.soil span:nth-child(3){top:10px;left:104px}.garden-actions{background:#ffffff85;border-top:1px solid #4f755424;gap:10px;padding:14px;display:flex}.water-button{color:#fff;background:var(--leaf-dark);border:0;border-radius:17px;flex:1;min-height:48px;font-size:13px;font-weight:800;box-shadow:0 8px 17px #31523b38}.more-button{width:48px;color:var(--cocoa);letter-spacing:2px;background:#ffffffbf;border:1px solid #4a29301a;border-radius:17px;font-weight:900}.note-card{background:#fff;border:1px solid #e94b661c;border-radius:22px;grid-template-columns:42px 1fr 28px;align-items:center;gap:11px;margin-top:14px;padding:15px;display:grid;box-shadow:0 10px 35px #5f363d12}.note-icon{width:42px;height:42px;color:var(--strawberry);background:var(--blush);border-radius:15px;place-items:center;display:grid}.note-card span{color:var(--strawberry-deep);letter-spacing:.15em;font-size:8px;font-weight:900}.note-card p{margin:3px 0 0;font-family:Georgia,serif;font-size:14px;line-height:1.25}.note-card button{color:var(--muted);background:0 0;border:0;font-size:17px}.bottom-nav{z-index:20;width:min(100%,430px);min-height:calc(72px + env(safe-area-inset-bottom));padding:9px 10px calc(8px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffdf8eb;border-top:1px solid #6037401a;grid-template-columns:1fr 1fr 58px 1fr 1fr;align-items:end;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -10px 30px #5c323a14}.nav-item{color:#a98c93;background:0 0;border:0;place-items:center;gap:3px;min-height:48px;font-size:9px;font-weight:750;display:grid}.nav-item span{font-size:20px;line-height:1}.nav-item.active{color:var(--strawberry-deep)}.add-button{border:4px solid var(--paper);color:#fff;background:var(--strawberry);border-radius:18px;align-self:start;width:52px;height:52px;margin-top:-22px;font-size:29px;line-height:1;box-shadow:0 9px 22px #951f4340}@media (min-width:600px){.app-shell{width:430px;margin:0 auto;box-shadow:0 0 80px #4c2a312e}}@media (prefers-reduced-motion:no-preference){.berry-one{transform-origin:50% -8px;animation:3.6s ease-in-out infinite berry-bob}.leaf-right{transform-origin:0;animation:4s ease-in-out infinite leaf-wave}@keyframes load-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes berry-bob{50%{transform:rotate(-3deg)translateY(2px)}}@keyframes leaf-wave{50%{transform:rotate(-8deg)}}}.skip-splash{top:calc(14px + env(safe-area-inset-top));color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#54232e47;border:1px solid #ffffff8c;border-radius:999px;min-width:58px;min-height:36px;font-size:11px;font-weight:750;position:absolute;right:15px}.content-view{padding-bottom:10px}.section-intro{background:#ffffffb8;border:1px solid #e94b661c;border-radius:22px;margin:3px 0 18px;padding:17px 18px}.section-intro span{color:var(--strawberry-deep);letter-spacing:.16em;font-size:9px;font-weight:900}.section-intro p{margin:7px 0 0;font-family:Georgia,serif;font-size:17px;line-height:1.34}.filter-row{scrollbar-width:none;gap:7px;margin:0 0 18px;display:flex;overflow-x:auto}.filter-row::-webkit-scrollbar{display:none}.filter-row button{min-height:35px;color:var(--muted);background:#ffffffad;border:1px solid #4a29301a;border-radius:999px;flex:none;padding:0 14px;font-size:10px;font-weight:750}.filter-row button.selected{border-color:var(--strawberry-deep);color:#fff;background:var(--strawberry-deep)}.timeline{gap:12px;display:grid}.memory-card{background:#fff;border:1px solid #e94b661c;border-radius:23px;grid-template-columns:42px 1fr;gap:12px;padding:17px;display:grid;box-shadow:0 10px 32px #5f363d12}.memory-index{width:38px;height:38px;color:var(--strawberry-deep);background:var(--blush);border-radius:14px;align-self:start;place-items:center;font-family:Georgia,serif;font-weight:700;display:grid}.memory-meta{justify-content:space-between;align-items:center;gap:8px;display:flex}.memory-meta span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:750}.memory-meta i{color:var(--leaf-dark);background:#e6edda;border-radius:999px;padding:3px 7px;font-size:8px;font-style:normal;font-weight:800}.memory-card h2{letter-spacing:-.02em;margin:8px 0 5px;font-family:Georgia,serif;font-size:19px}.memory-card p{color:#6f5359;margin:0 0 11px;font-size:12px;line-height:1.55}.memory-card small{color:var(--strawberry-deep);font-size:9px;font-weight:800}.empty-state{color:#9a6f78;text-align:center;background:#ffffff8c;border:1px dashed #e5bdc5;border-radius:24px;place-items:center;gap:7px;min-height:190px;padding:24px;display:grid}.empty-state span{font:32px/1 Georgia,serif}.empty-state strong{color:var(--cocoa);font-family:Georgia,serif;font-size:17px}.empty-state p{color:var(--muted);margin:0;font-size:10px}.photos-view{padding-bottom:22px}.photos-toolbar{background:#ffffffc7;border:1px solid #ecdde0;border-radius:19px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;padding:13px 14px;display:flex;box-shadow:0 8px 24px #59303a0e}.photos-toolbar>div{gap:2px;min-width:0;display:grid}.photos-toolbar>div strong{font-family:Georgia,serif;font-size:17px}.photos-toolbar>div small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.gallery-upload{color:#fff;background:linear-gradient(135deg,#a6234a,#ec4d6e);border-radius:13px;flex:none;align-items:center;gap:5px;min-height:40px;padding:0 12px;font-size:9px;font-weight:900;display:flex;position:relative;overflow:hidden;box-shadow:0 7px 16px #951f4333}.gallery-upload>span{font-size:16px;line-height:1}.gallery-upload input{opacity:0;cursor:pointer;position:absolute;inset:0}.ios-photo-hint{color:#96737b;align-items:center;gap:7px;margin:-2px 2px 10px;font-size:8px;line-height:1.35;display:flex}.ios-photo-hint>span{width:22px;height:22px;color:var(--strawberry-deep);background:var(--blush);border-radius:8px;flex:none;place-items:center;font-size:11px;display:grid}.gallery-message{background:#fbe2e799;border-radius:12px;margin:-2px 0 12px;padding:9px 11px}.photo-date-list{gap:10px;display:grid}.photo-date-group{background:#ffffffbf;border:1px solid #ebdde0;border-radius:19px;overflow:hidden;box-shadow:0 8px 23px #582f390b}.photo-date-group summary{cursor:pointer;-webkit-tap-highlight-color:transparent;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:11px 14px;list-style:none;display:flex}.photo-date-group summary::-webkit-details-marker{display:none}.photo-date-group summary>span{gap:2px;min-width:0;display:grid}.photo-date-group summary strong{text-overflow:ellipsis;white-space:nowrap;font-family:Georgia,serif;font-size:14px;overflow:hidden}.photo-date-group summary small{color:var(--muted);font-size:8px}.photo-date-group summary>i{width:27px;height:27px;color:var(--strawberry-deep);background:var(--blush);border-radius:9px;place-items:center;font-size:13px;font-style:normal;transition:transform .24s;display:grid}.photo-date-group[open] summary>i{transform:rotate(180deg)}.photo-date-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;padding:0 3px 3px;animation:.24s both gallery-open;display:grid}.gallery-empty{color:#9b717a;text-align:center;background:#ffffff80;border:1px dashed #e2bac3;border-radius:22px;align-content:center;place-items:center;gap:7px;min-height:210px;padding:24px;display:grid}.gallery-empty span{font:32px/1 Georgia,serif}.gallery-empty strong{color:var(--cocoa);font-family:Georgia,serif;font-size:17px}.gallery-empty p{max-width:230px;color:var(--muted);margin:0;font-size:9px;line-height:1.45}.cafe-dream-card,.cafe-mini-card{width:100%;color:var(--cocoa);text-align:left;background:linear-gradient(135deg,#f6e8d5,#fffaf1);border:1px solid #dcc7b5;border-radius:23px;grid-template-columns:52px 1fr 22px;align-items:center;gap:12px;margin-top:14px;padding:14px;display:grid;box-shadow:0 10px 30px #5b423314}.cafe-cup{background:#fff2e3;border:3px solid #8a5e4f;border-radius:5px 5px 14px 14px;width:43px;height:37px;display:block;position:relative}.cafe-cup:after{content:"";border:3px solid #8a5e4f;border-left:0;border-radius:0 10px 10px 0;width:13px;height:16px;position:absolute;top:6px;right:-12px}.cafe-cup i,.cafe-cup i:after{content:"";border-left:2px solid #8a5e4f80;border-radius:50%;width:4px;height:12px;position:absolute}.cafe-cup i{top:-18px;left:12px}.cafe-cup i:after{top:-2px;left:11px}.cafe-card-copy,.cafe-mini-card>span{display:grid}.cafe-dream-card small,.cafe-mini-card small{color:#8d6457;letter-spacing:.13em;font-size:8px;font-weight:900}.cafe-dream-card strong,.cafe-mini-card strong{margin:3px 0;font-family:Georgia,serif;font-size:16px}.cafe-dream-card em,.cafe-mini-card em{color:#8c756e;font-size:9px;font-style:normal}.cafe-dream-card>b,.cafe-mini-card>b{color:#9a7568;font-size:16px}.letter-stack{gap:11px;display:grid}.letter-card{width:100%;color:var(--cocoa);text-align:left;background:#fff;border:1px solid #e94b661f;border-radius:22px;grid-template-columns:45px 1fr auto;align-items:center;gap:12px;padding:15px;display:grid;box-shadow:0 8px 25px #5f363d0f}.envelope-icon{width:43px;height:43px;color:var(--strawberry-deep);background:var(--blush);border-radius:15px;place-items:center;font-family:Georgia,serif;display:grid}.letter-card div{display:grid}.letter-card small{color:var(--strawberry-deep);letter-spacing:.11em;font-size:7px;font-weight:900}.letter-card strong{margin:3px 0;font-family:Georgia,serif;font-size:14px;line-height:1.2}.letter-card em{color:var(--muted);font-size:9px;font-style:normal}.letter-card>b{color:var(--muted);font-size:10px}.letter-card.locked{filter:saturate(.78);background:#f5efe8}.letter-card.from-pich{background:linear-gradient(145deg,#fff,#f4f3fb);border-color:#6f7eae33}.letter-card.from-pich .envelope-icon{color:#6a557f;background:#ece7f5}.letter-card.from-pich small{color:#6a557f}.letter-empty{text-align:center;background:#ffffff85;border:1px dashed #dec3ca;border-radius:22px;place-items:center;gap:6px;min-height:142px;padding:22px;display:grid}.letter-empty span{color:#ad7884;font:27px/1 Georgia,serif}.letter-empty strong{font-family:Georgia,serif;font-size:16px}.letter-empty p{color:var(--muted);margin:0;font-size:9px}.owner-letter-button{width:100%;min-height:46px;color:var(--strawberry-deep);background:#fbe2e770;border:1px dashed #e3a0b0;border-radius:17px;margin-top:11px;font-size:10px;font-weight:800}.owner-letter-button.special-letter-button{color:#655378;background:#ece7f58c;border-color:#bdb2d4}.game-banner{color:#fff;text-align:left;background:linear-gradient(135deg, var(--strawberry-deep), #c9375b);border:0;border-radius:24px;justify-content:space-between;align-items:center;width:100%;min-height:119px;margin-top:14px;padding:18px;display:flex;overflow:hidden;box-shadow:0 14px 30px #951f4333}.game-banner span{display:grid}.game-banner small{letter-spacing:.15em;opacity:.75;font-size:8px;font-weight:850}.game-banner strong{margin:4px 0;font-family:Georgia,serif;font-size:20px}.game-banner em{opacity:.8;font-size:9px;font-style:normal}.game-banner>i{background:var(--strawberry);border:2px solid #ffffff80;border-radius:48% 48% 52% 52%/38% 38% 66% 66%;place-items:center;width:59px;height:65px;font:20px Georgia,serif;display:grid;transform:rotate(8deg);box-shadow:inset 9px 7px #ffffff21}.cafe-mini-card{grid-template-columns:1fr 25px;min-height:90px}.drop{z-index:8;color:#7bc4d0;font-size:12px;animation:1.25s ease-in infinite water-drop;position:absolute}.drop-one{top:52px;left:43%}.drop-two{animation-delay:.2s;top:35px;left:55%}.drop-three{animation-delay:.4s;top:70px;left:61%}.overlay-backdrop{z-index:40;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#391f2561;border:0;width:100%;position:fixed;inset:0}.bottom-sheet{z-index:50;width:min(100%,430px);max-height:89svh;padding:10px 20px calc(24px + env(safe-area-inset-bottom));background:var(--paper);border-radius:30px 30px 0 0;animation:.32s cubic-bezier(.2,.8,.2,1) sheet-up;position:fixed;bottom:0;left:50%;overflow-y:auto;transform:translate(-50%);box-shadow:0 -20px 60px #361d2338}.sheet-close{z-index:3;float:right;color:#916b73;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe6;border:1px solid #eadbdd;border-radius:50%;place-items:center;width:32px;height:32px;margin:0 0 -32px;font-size:18px;line-height:1;display:grid;position:sticky;top:4px;box-shadow:0 5px 13px #53303917}.sheet-close:active{transform:scale(.94)}.sheet-handle{background:#e6d9d9;border-radius:999px;width:42px;height:4px;margin:0 auto 19px}.sheet-kicker{color:var(--strawberry-deep);letter-spacing:.16em;font-size:9px;font-weight:900}.bottom-sheet h2{letter-spacing:-.03em;margin:5px 0 18px;font-family:Georgia,serif;font-size:27px}.sheet-lead{color:var(--muted);margin:-10px 0 18px;font-family:Georgia,serif;font-size:14px;line-height:1.4}.compact-sheet{padding-bottom:calc(28px + env(safe-area-inset-bottom))}.profile-options{grid-template-columns:1fr 1fr;gap:11px;display:grid}.profile-options button{min-height:112px;color:var(--cocoa);background:#fff;border:1px solid #e94b6621;border-radius:22px;place-items:center;gap:6px;padding:13px;display:grid}.profile-options i{color:#fff;background:var(--strawberry);border-radius:15px;place-items:center;width:42px;height:42px;font-style:normal;font-weight:850;display:grid}.profile-options span{gap:2px;display:grid}.profile-options strong{font-family:Georgia,serif;font-size:15px}.profile-options small{color:var(--muted);font-size:9px}.add-sheet form{gap:14px;display:grid}.add-sheet label{color:#6e4f55;gap:6px;font-size:10px;font-weight:800;display:grid}.add-sheet input,.add-sheet textarea,.add-sheet select{width:100%;color:var(--cocoa);background:#fff;border:1px solid #eadbda;border-radius:16px;outline:none;font:13px/1.45 inherit}.add-sheet input,.add-sheet select{min-height:47px;padding:0 13px}.add-sheet textarea{resize:none;padding:12px 13px}.add-sheet input:focus,.add-sheet textarea:focus,.add-sheet select:focus{border-color:var(--strawberry);box-shadow:0 0 0 3px #e94b661a}.primary-sheet-button{color:#fff;background:var(--strawberry-deep);border:0;border-radius:17px;width:100%;min-height:49px;font-size:12px;font-weight:850;box-shadow:0 10px 22px #951f432e}.game-heading{justify-content:space-between;align-items:center;display:flex}.game-heading h2{margin-bottom:13px}.game-heading strong{color:var(--strawberry-deep);font-size:11px}.game-field{background:linear-gradient(#f1f3df 0 76%,#bdc58b 76%);border:1px solid #dfe3c8;border-radius:24px;height:300px;position:relative;overflow:hidden}.tap-berry{z-index:5;border:3px solid var(--strawberry-deep);background:var(--strawberry);border-radius:48% 48% 52% 52%/38% 38% 66% 66%;width:50px;height:56px;transition:left .2s,top .2s;position:absolute;transform:translate(-50%,-50%);box-shadow:inset 7px 5px #ffffff26,0 9px 16px #46232a29}.tap-berry:before{content:"";background:var(--leaf);clip-path:polygon(50% 100%,0 0,38% 25%,50% 0,64% 27%,100% 0);width:29px;height:18px;position:absolute;top:-12px;left:8px}.tap-berry i:before,.tap-berry i:after{content:"";background:#f8d28d;border-radius:50%;width:3px;height:5px;position:absolute}.game-cloud{background:#ffffffb3;border-radius:999px;width:60px;height:14px;position:absolute}.game-cloud.one{top:40px;left:25px}.game-cloud.two{top:83px;right:25px;transform:scale(.7)}.game-grass{background:repeating-linear-gradient(70deg,#82945d 0 8px,#9bab71 8px 16px);height:26px;position:absolute;bottom:0;left:0;right:0}.game-message{min-height:42px;color:var(--strawberry-deep);background:var(--blush);text-align:center;border-radius:15px;margin:12px 0 0;padding:11px 13px;font-family:Georgia,serif;font-size:13px}.cafe-moodboard{gap:10px;margin-bottom:14px;display:grid}.cafe-moodboard article{background:#fffaf2;border:1px solid #e7d7c7;border-radius:19px;padding:15px;display:grid}.cafe-moodboard small{color:#8d6457;letter-spacing:.14em;font-size:8px;font-weight:900}.cafe-moodboard strong{margin:4px 0;font-family:Georgia,serif;font-size:16px}.cafe-moodboard em{color:var(--muted);font-size:10px;font-style:normal}.cafe-moodboard article span{gap:6px;margin-top:7px;display:flex}.swatch{border:2px solid #fff;border-radius:9px;width:23px;height:23px;display:block;box-shadow:0 2px 8px #46282d1f}.swatch.cream{background:var(--cream)}.swatch.pink{background:var(--petal)}.swatch.berry{background:var(--strawberry)}.swatch.sage{background:var(--sage)}.cafe-idea-form{gap:10px;display:grid}.cafe-idea-form label{gap:6px;display:grid}.cafe-idea-form label>span{color:#765c57;font-size:9px;font-weight:850}.cafe-idea-form input{width:100%;min-height:47px;color:var(--cocoa);background:#fff;border:1px solid #e7d7c7;border-radius:15px;outline:none;padding:0 13px;font:13px/1.4 inherit}.cafe-idea-form input:focus{border-color:#bd776c;box-shadow:0 0 0 3px #bd776c1a}.game-message{border:0;width:100%}.game-message.is-unlocked{color:#fff;background:linear-gradient(135deg, var(--strawberry-deep), var(--strawberry));animation:1.8s ease-in-out infinite note-unlocked;box-shadow:0 8px 18px #951f432e}.read-sheet{text-align:center}.read-note-heart,.letter-seal{color:#fff;background:linear-gradient(145deg,#f26d84,#cf3158);border:2px solid #be3157;border-radius:48% 48% 52% 52%/38% 38% 66% 66%;place-items:center;width:66px;height:72px;margin:16px auto 12px;font:22px/1 Georgia,serif;display:grid;transform:rotate(-3deg);box-shadow:inset 8px 6px #ffffff2b,0 12px 24px #951f4329}.read-sheet h2{margin-bottom:10px}.read-sheet>p{color:#766068;max-width:330px;margin:0 auto 20px;font-family:Georgia,serif;font-size:15px;line-height:1.58}.letter-read-sheet{background:linear-gradient(#fffaf6,#f9edf0)}.letter-seal{border-radius:50%;width:58px;height:58px}.letter-signature{color:#a23a58;margin:-6px 0 20px;font-family:Georgia,serif;font-style:italic;display:block}@keyframes note-unlocked{0%,to{transform:translateY(0);box-shadow:0 8px 18px #951f432e}50%{transform:translateY(-2px);box-shadow:0 12px 24px #951f4345}}@keyframes sheet-up{0%{opacity:0;transform:translate(-50%,30px)}to{opacity:1;transform:translate(-50%)}}@keyframes water-drop{0%{opacity:0;transform:translateY(0)scale(.55)}20%{opacity:.9}to{opacity:0;transform:translateY(90px)scale(.9)}}.garden-card{background:#eff4e5}.growth-summary{background:linear-gradient(145deg,#ffffffbd,#f6f9eba3);border-bottom:1px solid #4f75541f;grid-template-columns:minmax(0,1fr) auto;gap:7px 14px;padding:16px 18px 13px;display:grid}.growth-copy{min-width:0;display:grid}.growth-copy>span{color:#758069;letter-spacing:.14em;font-size:8px;font-weight:950}.growth-copy strong{letter-spacing:-.02em;margin:3px 0 1px;font-family:Georgia,serif;font-size:18px}.growth-copy small{color:#7d776c;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.growth-timing{align-self:center;justify-items:end;display:grid}.growth-timing b{color:var(--leaf-dark);letter-spacing:.05em;font-size:11px}.growth-timing span{color:#818575;font-size:7px}.growth-track{background:#5a754b1f;border-radius:999px;grid-column:1/-1;height:5px;overflow:hidden}.growth-track i{border-radius:inherit;background:linear-gradient(90deg,#9fb879,#557f58);height:100%;transition:width .7s cubic-bezier(.2,.8,.2,1);display:block;box-shadow:0 0 10px #597f584d}.garden-scene{isolation:isolate;background:radial-gradient(circle at 78% 18%,#ffffffe0 0 4%,#0000 17%),linear-gradient(#edf6e9 0%,#f5f3df 62%,#cdd8a8 62%,#b7c889 100%);height:342px}.garden-scene .sky-copy{z-index:8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff94;border:1px solid #ffffff94;border-radius:999px;padding:8px 11px;position:absolute;top:12px;left:13px;box-shadow:0 5px 16px #4d644314}.garden-scene:after{content:"";z-index:1;background:linear-gradient(#b8ca8c,#91a86b);border-radius:50% 50% 0 0;height:99px;position:absolute;bottom:-33px;left:-14%;right:-14%;box-shadow:inset 0 10px 22px #ffffff2e}.garden-hill{z-index:0;background:#b4c98b94;border-radius:50% 50% 0 0;position:absolute}.garden-hill.hill-one{width:230px;height:84px;bottom:57px;left:-62px;transform:rotate(4deg)}.garden-hill.hill-two{background:#9ab87b78;width:250px;height:76px;bottom:60px;right:-92px;transform:rotate(-3deg)}.plant-glow{z-index:2;filter:blur(4px);background:radial-gradient(#ffffffad,#fadede33 53%,#0000 72%);border-radius:50%;width:232px;height:220px;position:absolute;bottom:30px;left:50%;transform:translate(-50%)}.complete-stage-art,.growth-reveal-complete{background-repeat:no-repeat;background-size:300% 300%}.complete-stage-art{z-index:5;filter:drop-shadow(0 13px 10px #4f4b312b);transform-origin:50% 90%;-webkit-user-select:none;user-select:none;width:306px;height:306px;animation:4.2s ease-in-out infinite complete-stage-alive;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.complete-stage-0{background-position:0 0}.complete-stage-1{background-position:50% 0}.complete-stage-2{background-position:100% 0}.complete-stage-3{background-position:0%}.complete-stage-4{background-position:50%}.complete-stage-5{background-position:100%}.complete-stage-6{background-position:0 100%}.complete-stage-7{background-position:50% 100%}.complete-stage-8{background-position:100% 100%}.complete-stage-art.complete-stage-3,.complete-stage-art.complete-stage-4,.complete-stage-art.complete-stage-5{clip-path:inset(0 0 32px)}.growth-reveal-complete.complete-stage-3,.growth-reveal-complete.complete-stage-4,.growth-reveal-complete.complete-stage-5{clip-path:inset(0 0 20px)}.strawberry-stage-art{--plant-y:-4px;--soil-y:61%;--soil-width:22px;--pot-mask-y:65%;z-index:5;filter:drop-shadow(0 12px 9px #4b483024);transform-origin:50% 84%;width:268px;height:268px;animation:.75s cubic-bezier(.18,.86,.2,1) both stage-art-arrive;position:absolute;bottom:-2px;left:50%;transform:translate(-50%)}.stage-layer{transform-origin:50% var(--soil-y);-webkit-user-select:none;user-select:none;pointer-events:none;background-repeat:no-repeat;background-size:300% 300%;position:absolute;inset:0}.stage-pot{z-index:3;-webkit-mask-image:radial-gradient(ellipse 48% 39% at 50% var(--pot-mask-y), #000 94%, transparent 100%);-webkit-mask-image:radial-gradient(ellipse 48% 39% at 50% var(--pot-mask-y), #000 94%, transparent 100%);-webkit-mask-image:radial-gradient(ellipse 48% 39% at 50% var(--pot-mask-y), #000 94%, transparent 100%);-webkit-mask-image:radial-gradient(ellipse 48% 39% at 50% var(--pot-mask-y), #000 94%, transparent 100%);mask-image:radial-gradient(ellipse 48% 39% at 50% var(--pot-mask-y), #000 94%, transparent 100%);background-image:url(/strawberry-pots-stages.webp)}.stage-leaves{z-index:4;background-image:url(/strawberry-leaves-stages.webp);animation:4.6s ease-in-out infinite leaves-breathe}.stage-flowers{z-index:5;background-image:url(/strawberry-flowers-stages.webp);animation:3.35s ease-in-out infinite flowers-flutter}.stage-fruits{z-index:6;background-image:url(/strawberry-fruits-stages.webp);animation:3.85s ease-in-out infinite fruit-bob}.soil-entry-lip{z-index:7;top:var(--soil-y);width:var(--soil-width);pointer-events:none;background:linear-gradient(#7d462ad1,#4e2a1de6);border-radius:50%;height:5px;position:absolute;left:50%;transform:translate(-50%,-50%);box-shadow:inset 0 2px 2px #ffbd842e}.strawberry-stage-art.stage-1{--soil-y:59%;--soil-width:25px}.strawberry-stage-art.stage-2{--soil-y:57%;--soil-width:29px}.strawberry-stage-art.stage-3{--plant-y:-22px;--soil-y:49%;--soil-width:34px;--pot-mask-y:59%}.strawberry-stage-art.stage-4{--plant-y:-22px;--soil-y:49%;--soil-width:38px;--pot-mask-y:59%}.strawberry-stage-art.stage-5{--plant-y:-22px;--soil-y:49%;--soil-width:42px;--pot-mask-y:59%}.strawberry-stage-art.stage-6{--plant-y:-35px;--soil-y:42%;--soil-width:46px;--pot-mask-y:55%}.strawberry-stage-art.stage-7{--plant-y:-35px;--soil-y:42%;--soil-width:50px;--pot-mask-y:55%}.strawberry-stage-art.stage-8{--plant-y:-35px;--soil-y:42%;--soil-width:54px;--pot-mask-y:55%}.stage-0 .stage-layer{background-position:0 0}.stage-1 .stage-layer{background-position:50% 0}.stage-2 .stage-layer{background-position:100% 0}.stage-3 .stage-layer{background-position:0%}.stage-4 .stage-layer{background-position:50%}.stage-5 .stage-layer{background-position:100%}.stage-6 .stage-layer{background-position:0 100%}.stage-7 .stage-layer{background-position:50% 100%}.stage-8 .stage-layer{background-position:100% 100%}.stage-3 .stage-leaves,.stage-4 .stage-leaves{clip-path:inset(0 0 62px)}.stage-5 .stage-leaves,.stage-5 .stage-fruits{clip-path:inset(0 0 86px)}.garden-card.just-watered .stage-leaves{animation:.78s cubic-bezier(.2,.9,.25,1) leaves-happy,4.6s ease-in-out .78s infinite leaves-breathe}.garden-card.just-watered .stage-flowers{animation:.72s cubic-bezier(.2,.9,.25,1) flowers-happy,3.35s ease-in-out .72s infinite flowers-flutter}.garden-card.just-watered .stage-fruits{animation:.82s cubic-bezier(.2,.9,.25,1) fruit-happy,3.85s ease-in-out .82s infinite fruit-bob}.plant-stack{z-index:4;transform-origin:50% 91%;width:204px;height:306px;animation:.85s cubic-bezier(.18,.86,.2,1) both plant-arrive;position:absolute;bottom:13px;left:50%;transform:translate(-50%)}.plant-sprite,.growth-reveal-sprite{background-repeat:no-repeat;background-size:300% 300%}.plant-sprite{z-index:4;filter:saturate(.96)contrast(1.05)drop-shadow(0 11px 9px #4f583124);transform-origin:50% 90%;-webkit-user-select:none;user-select:none;width:204px;height:306px;animation:4.2s ease-in-out infinite plant-alive;position:absolute;bottom:53px;left:0}.mature-plant-art{z-index:5;filter:drop-shadow(0 13px 10px #4f4b312b);transform-origin:50% 90%;-webkit-user-select:none;user-select:none;width:auto;height:306px;animation:4.2s ease-in-out infinite mature-plant-alive;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.garden-card.plant-stage-0 .plant-sprite,.garden-card.plant-stage-1 .plant-sprite,.garden-card.plant-stage-2 .plant-sprite{bottom:90px}.garden-card.plant-stage-0 .plant-sprite{animation-name:tiny-plant-alive;bottom:84px}.garden-card.plant-stage-1 .plant-sprite{clip-path:inset(0 24px 0 0)}.garden-card.plant-stage-3 .plant-sprite,.garden-card.plant-stage-4 .plant-sprite,.garden-card.plant-stage-5 .plant-sprite{clip-path:inset(0 0 58px);bottom:7px}.garden-card.plant-stage-6 .plant-sprite{clip-path:inset(0 24px 52px 0);background-position:0 94%;bottom:2px}.garden-card.plant-stage-7 .plant-sprite{clip-path:inset(0 24px 52px 0);background-position:50% 94%;bottom:-1px}.growth-reveal-sprite.atlas-stage-0,.growth-reveal-sprite.atlas-stage-1,.growth-reveal-sprite.atlas-stage-2{bottom:42px}.growth-reveal-sprite.atlas-stage-1{clip-path:inset(0 16px 0 0)}.growth-reveal-sprite.atlas-stage-3,.growth-reveal-sprite.atlas-stage-4,.growth-reveal-sprite.atlas-stage-5{bottom:-15px}.growth-reveal-sprite.atlas-stage-4,.growth-reveal-sprite.atlas-stage-6,.growth-reveal-sprite.atlas-stage-7{clip-path:inset(0 16px 0 0)}.growth-reveal-sprite.atlas-stage-6,.growth-reveal-sprite.atlas-stage-7,.growth-reveal-sprite.atlas-stage-8{bottom:-28px}.atlas-stage-0{background-position:0 0}.atlas-stage-1{background-position:50% 0}.atlas-stage-2{background-position:100% 0}.atlas-stage-3{background-position:0%}.atlas-stage-4{background-position:50%}.atlas-stage-5{background-position:100%}.atlas-stage-6{background-position:0 100%}.atlas-stage-7{background-position:50% 100%}.atlas-stage-8{background-position:100% 100%}.plant-pot{z-index:6;color:#fff1e1cc;background:radial-gradient(circle at 24% 26%,#ffffff85 0 5px,#0000 6px),linear-gradient(145deg,#f9a6a0,#df716f 68%,#c85961);border:3px solid #b9535e;border-radius:15px 15px 43px 43px;width:132px;height:88px;position:absolute;bottom:12px;left:50%;transform:translate(-50%);box-shadow:inset 9px 8px #ffffff26,inset -7px -8px #882b3b14,0 14px 18px #4e3d2b30}.plant-pot:before{content:"";z-index:2;background:linear-gradient(#ffb6ad,#e77876);border:3px solid #b9535e;border-radius:50%;height:26px;position:absolute;top:-11px;left:-7px;right:-7px;box-shadow:inset 0 5px #ffffff40}.garden-card.plant-stage-0 .plant-pot:after{content:"";z-index:1;background:linear-gradient(90deg,#6bad42,#9ad057 55%,#59963a);border:2px solid #3e772e;border-radius:7px;width:8px;height:27px;position:absolute;top:-20px;left:50%;transform:translate(-50%);box-shadow:inset 2px 0 #fff3}.pot-soil{z-index:3;background:radial-gradient(circle at 25% 45%,#754830 0 3px,#0000 4px),radial-gradient(circle at 68% 64%,#7f5137 0 4px,#0000 5px),linear-gradient(#9b6849,#69412f);border-radius:50%;width:110px;height:17px;position:absolute;top:-5px;left:8px;box-shadow:inset 0 4px 5px #2d18122e}.pot-soil:after{content:"";filter:blur(1px);background:#3f23194d;border-radius:50%;width:21px;height:7px;position:absolute;top:4px;left:50%;transform:translate(-50%)}.plant-pot span{z-index:4;letter-spacing:.28em;text-align:center;text-shadow:0 1px #9b3c4840;font:700 10px/1 Georgia,serif;position:absolute;bottom:26px;left:0;right:0}.garden-shadow{z-index:3;filter:blur(7px);background:#414e3130;border-radius:50%;width:170px;height:26px;animation:4.2s ease-in-out infinite shadow-breathe;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.garden-mote{z-index:3;color:#fffffff0;text-shadow:0 2px 8px #4c6d482e;animation:3.2s ease-in-out infinite garden-float;position:absolute}.mote-one{font-size:16px;top:112px;left:18%}.mote-two{font-size:28px;animation-delay:-.8s;top:154px;right:18%}.mote-three{font-size:10px;animation-delay:-1.6s;top:68px;left:41%}.garden-card.just-watered .plant-sprite{animation:.72s cubic-bezier(.2,.9,.25,1) plant-happy,4.2s ease-in-out .72s infinite plant-alive}.garden-card.plant-stage-0.just-watered .plant-sprite{animation:.72s cubic-bezier(.2,.9,.25,1) tiny-plant-happy,4.2s ease-in-out .72s infinite tiny-plant-alive}.garden-card.just-watered .mature-plant-art{animation:.72s cubic-bezier(.2,.9,.25,1) mature-plant-happy,4.2s ease-in-out .72s infinite mature-plant-alive}.garden-card.just-watered .plant-pot{animation:.72s cubic-bezier(.2,.9,.25,1) pot-happy}.garden-card.just-watered .complete-stage-art{animation:.72s cubic-bezier(.2,.9,.25,1) complete-stage-happy,4.2s ease-in-out .72s infinite complete-stage-alive}.garden-card.just-watered .plant-glow{animation:1.15s ease-out garden-glow,4s ease-in-out 1.15s infinite glow-breathe}.plant-glow{animation:4s ease-in-out infinite glow-breathe}.watering-effect{z-index:9;pointer-events:none;position:absolute;inset:0}.watering-can{transform-origin:28% 90%;background:linear-gradient(145deg,#a8d6c0,#77b29a 70%);border:3px solid #59836f;border-radius:18px 20px 18px 25px;width:78px;height:61px;animation:1.65s cubic-bezier(.22,.8,.26,1) both can-pour;position:absolute;top:28px;right:23px;box-shadow:inset 7px 7px #ffffff42,0 12px 22px #415d4a33}.watering-can b{color:#ffffffc7;text-align:center;font:22px/1 Georgia,serif;position:absolute;inset:18px 0 auto}.can-handle{z-index:-1;border:8px solid #66977f;border-bottom:0;border-radius:32px 32px 0 0;width:50px;height:39px;position:absolute;top:-24px;left:13px}.can-spout{transform-origin:100%;background:linear-gradient(#9acbb3,#77b29a);border:3px solid #59836f;border-right:0;border-radius:16px 0 0 16px;width:64px;height:22px;position:absolute;top:19px;left:-56px;transform:rotate(-14deg)}.can-rose{background:#8dc2a8;border:3px solid #59836f;border-radius:60% 42% 42% 60%;width:25px;height:36px;position:absolute;top:4px;left:-70px;transform:rotate(-14deg)}.water-drop{opacity:0;background:linear-gradient(145deg,#c9f4f5 10%,#6fc7dd 72%);border:2px solid #46a4be57;border-radius:56% 44% 61% 39%/66% 42% 58% 34%;width:19px;height:24px;animation:.82s cubic-bezier(.3,.72,.48,1) forwards big-water-drop;position:absolute;top:92px;left:69%;transform:rotate(24deg);box-shadow:inset 5px 4px #ffffff7a,0 5px 9px #459db533}.water-drop.drop-one{margin-left:-10px;animation-delay:.42s}.water-drop.drop-two{width:15px;height:19px;margin-left:-29px;animation-delay:.56s}.water-drop.drop-three{width:16px;height:21px;margin-left:7px;animation-delay:.68s}.water-drop.drop-four{width:21px;height:27px;margin-left:-43px;animation-delay:.79s}.water-drop.drop-five{width:17px;height:22px;margin-left:-12px;animation-delay:.92s}.water-drop.drop-six{width:14px;height:18px;margin-left:-35px;animation-delay:1.04s}.water-button{transition:transform .16s,box-shadow .16s,opacity .16s;position:relative;overflow:hidden}.water-button:active{transform:scale(.98);box-shadow:0 4px 10px #31523b2e}.water-button:disabled{opacity:.78}.garden-status{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.game-heading{align-items:flex-start;gap:12px;margin-bottom:12px}.game-heading>div:first-child{min-width:0}.game-heading h2{margin:5px 0 2px}.game-heading span{color:var(--muted);font-size:9px}.game-tools{flex:none;align-items:center;gap:7px;padding-top:8px;display:flex}.game-heading .game-tools strong{background:var(--blush);border-radius:999px;padding:7px 9px;animation:.25s ease-out score-bump;display:inline-block}.sound-toggle{color:#94767c;background:#fff;border:1px solid #ead6d9;border-radius:50%;place-items:center;width:31px;height:31px;font-size:13px;font-weight:900;display:grid}.sound-toggle.is-on{color:var(--strawberry-deep);background:#fff4f5}.game-progress{background:#fff7f7;border:1px solid #f1d8dd;border-radius:999px;height:19px;margin-bottom:10px;position:relative;overflow:hidden}.game-progress i{border-radius:inherit;background:linear-gradient(90deg, #f4a6b5, var(--strawberry));transition:width .35s cubic-bezier(.2,.8,.3,1);position:absolute;inset:0 auto 0 0;box-shadow:inset 0 2px #ffffff40}.game-progress span{z-index:1;color:#784e58;letter-spacing:.1em;text-align:right;text-transform:uppercase;padding-right:8px;font-size:7px;font-weight:900;line-height:17px;display:block;position:relative}.game-field{background:radial-gradient(circle at 76% 16%,#fffbd2c7 0 5%,#0000 18%),linear-gradient(#eaf4e5 0%,#f6f1da 72%,#bfc991 72%,#aebd7c 100%);border-color:#d9dfbf;height:318px;box-shadow:inset 0 0 35px #ffffff80,0 9px 25px #5c673e14}.game-field:after{content:"";z-index:3;background:linear-gradient(#b2c07f26,#8b9f5c33);height:23px;position:absolute;bottom:25px;left:0;right:0}.tap-berry{z-index:8;touch-action:manipulation;background:linear-gradient(145deg,#ff667d 0 24%,#eb4563 62%,#cf2c52 100%);border-width:3px;width:62px;height:68px;transition:left .2s cubic-bezier(.2,.8,.3,1),top .2s cubic-bezier(.2,.8,.3,1),filter .15s;animation:1.8s ease-in-out infinite berry-idle;box-shadow:inset 9px 7px #ffffff2e,inset -6px -7px #8e173a1c,0 12px 19px #70243933}.tap-berry:before{filter:drop-shadow(0 2px 1px #34532f2e);background:linear-gradient(135deg,#79a65e,#487a50);width:40px;height:24px;top:-15px;left:8px}.tap-berry:after{content:"";background:#ffffff57;border-radius:50%;width:12px;height:8px;position:absolute;top:14px;left:13px;transform:rotate(-28deg)}.tap-berry i:before,.tap-berry i:after{width:4px;height:6px;box-shadow:20px 17px #f8d28d,7px 31px #f8d28d}.tap-berry i:before{top:28px;left:16px}.tap-berry i:after{top:22px;right:15px}.tap-berry b{color:#72223b;width:18px;height:9px;font:900 18px/6px Arial,sans-serif;position:absolute;bottom:10px;left:50%;overflow:hidden;transform:translate(-50%)}.tap-berry.is-caught{animation:.17s cubic-bezier(.2,.85,.3,1) both berry-catch}.catch-burst{z-index:10;pointer-events:none;width:1px;height:1px;position:absolute}.catch-burst strong{color:#a51f48;text-shadow:0 2px #fffffff2,0 5px 12px #7e203d2e;font:900 18px/1 Georgia,serif;animation:.66s ease-out both score-float;position:absolute;top:-57px;left:-20px}.catch-burst i{--tx:0px;--ty:-38px;color:#dd315e;text-shadow:0 2px #fffffff2,0 4px 10px #8b223f33;font:15px/1 Georgia,serif;animation:.64s cubic-bezier(.15,.75,.3,1) both heart-pop;position:absolute;top:-6px;left:-6px}.catch-burst i:first-of-type{--tx:-39px;--ty:-19px}.catch-burst i:nth-of-type(2){--tx:-27px;--ty:-43px;animation-delay:15ms}.catch-burst i:nth-of-type(3){--tx:0px;--ty:-51px;animation-delay:30ms}.catch-burst i:nth-of-type(4){--tx:29px;--ty:-40px;animation-delay:15ms}.catch-burst i:nth-of-type(5){--tx:40px;--ty:-13px}.catch-burst i:nth-of-type(6){--tx:25px;--ty:25px;animation-delay:25ms}.catch-burst i:nth-of-type(7){--tx:-25px;--ty:23px;animation-delay:25ms}.game-cloud{z-index:1;animation:5s ease-in-out infinite cloud-drift;box-shadow:18px 4px 0 -3px #ffffff61}.game-cloud.two{animation-delay:-2s}.game-hill{z-index:1;background:#cbd6a4;border-radius:50% 50% 0 0;width:210px;height:92px;position:absolute;bottom:24px}.game-hill.left{left:-70px;transform:rotate(5deg)}.game-hill.right{background:#b6c88f;bottom:20px;right:-90px;transform:rotate(-5deg)}.game-flower{z-index:4;color:#fff8ea;text-shadow:0 2px #dc9ea4;font-size:16px;position:absolute;bottom:35px}.flower-one{left:14%}.flower-two{font-size:11px;bottom:27px;left:27%}.flower-three{font-size:13px;bottom:39px;right:15%}.game-grass{z-index:5;background:repeating-linear-gradient(71deg,#78945e 0 8px,#96ad72 8px 16px);height:25px}.game-message{transition:background .2s,transform .2s}.growth-welcome{z-index:91;padding:max(22px, env(safe-area-inset-top)) 20px max(22px, env(safe-area-inset-bottom));background:radial-gradient(circle at 50% 22%,#ffffffc7,#0000 31%),linear-gradient(155deg,#eaf2dc,#cbdba7 54%,#f2bdc5);place-items:center;animation:.45s ease-out both celebration-arrive;display:grid;position:fixed;inset:0;overflow:hidden}.growth-confetti{pointer-events:none;position:absolute;inset:0}.growth-confetti i{color:#ffffffd1;opacity:0;font:14px/1 Georgia,serif;animation:3s linear infinite growth-confetti;position:absolute;top:-8%}.growth-confetti i:first-child{animation-delay:-.5s;left:8%}.growth-confetti i:nth-child(2){font-size:9px;animation-delay:-1.8s;left:18%}.growth-confetti i:nth-child(3){animation-delay:-.9s;left:29%}.growth-confetti i:nth-child(4){font-size:10px;animation-delay:-2.4s;left:39%}.growth-confetti i:nth-child(5){animation-delay:-1.3s;left:50%}.growth-confetti i:nth-child(6){font-size:9px;animation-delay:-2.7s;left:61%}.growth-confetti i:nth-child(7){animation-delay:-.3s;left:72%}.growth-confetti i:nth-child(8){font-size:11px;animation-delay:-2.1s;left:82%}.growth-confetti i:nth-child(9){animation-delay:-1.1s;left:91%}.growth-confetti i:nth-child(10){font-size:8px;animation-delay:-2.9s;left:45%}.growth-welcome-card{z-index:2;text-align:center;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffdf6ed;border:1px solid #fffc;border-radius:32px;width:min(100%,350px);padding:24px 22px 22px;animation:.62s cubic-bezier(.18,.85,.22,1) .1s both celebration-card-in;position:relative;box-shadow:0 28px 70px #42552d3b,inset 0 1px #fff}.growth-welcome-kicker{color:#60774d;letter-spacing:.17em;font-size:8px;font-weight:950;display:block}.growth-reveal-art{background:linear-gradient(#f0f6e8,#f8f2df);border-radius:48% 48% 37% 37%;width:190px;height:216px;margin:5px auto 0;position:relative;overflow:hidden}.growth-reveal-art .strawberry-stage-art{filter:drop-shadow(0 8px 7px #4a482d21);width:190px;height:190px;animation:none;bottom:1px}.strawberry-stage-art.is-reveal{--soil-width:16px}.strawberry-stage-art.is-reveal.stage-1{--soil-width:18px}.strawberry-stage-art.is-reveal.stage-2{--soil-width:21px}.strawberry-stage-art.is-reveal.stage-3{--plant-y:-16px;--soil-width:24px}.strawberry-stage-art.is-reveal.stage-4{--plant-y:-16px;--soil-width:27px}.strawberry-stage-art.is-reveal.stage-5{--plant-y:-16px;--soil-width:30px}.strawberry-stage-art.is-reveal.stage-6{--plant-y:-25px;--soil-width:33px}.strawberry-stage-art.is-reveal.stage-7{--plant-y:-25px;--soil-width:36px}.strawberry-stage-art.is-reveal.stage-8{--plant-y:-25px;--soil-width:39px}.growth-reveal-complete{z-index:3;transform-origin:50% 90%;filter:drop-shadow(0 9px 9px #4a482d26);width:190px;height:190px;animation:2.8s ease-in-out infinite complete-reveal-sway;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.growth-reveal-sprite{z-index:2;filter:saturate(.96)contrast(1.05);transform-origin:50% 90%;width:140px;height:210px;animation:2.8s ease-in-out infinite reveal-plant-sway;position:absolute;bottom:20px;left:25px}.growth-reveal-mature{z-index:3;transform-origin:50% 90%;filter:drop-shadow(0 9px 9px #4a482d26);width:auto;height:205px;animation:2.8s ease-in-out infinite mature-reveal-sway;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.growth-reveal-pot{z-index:4;color:#ffe8d9;background:linear-gradient(145deg,#f8a49e,#d96469);border:2px solid #b9535e;border-radius:11px 11px 31px 31px;width:94px;height:58px;position:absolute;bottom:15px;left:50%;transform:translate(-50%);box-shadow:inset 6px 5px #ffffff2b,0 9px 13px #52372a29}.growth-reveal-pot:before{content:"";background:linear-gradient(#9b6849 0 48%,#f3a29d 51%);border:2px solid #b9535e;border-radius:50%;height:17px;position:absolute;top:-7px;left:-5px;right:-5px}.growth-reveal-pot span{letter-spacing:.2em;font:700 8px/1 Georgia,serif;position:absolute;bottom:17px;left:0;right:0}.growth-welcome-card>small{color:var(--strawberry-deep);letter-spacing:.13em;margin-top:1px;font-size:8px;font-weight:950;display:block}.growth-welcome-card h2{letter-spacing:-.03em;margin:5px 0 0;font-family:Georgia,serif;font-size:27px}.growth-welcome-card p{color:#786e64;max-width:276px;margin:9px auto 18px;font-family:Georgia,serif;font-size:13px;line-height:1.45}.growth-welcome-card button{color:#fff;background:linear-gradient(135deg,#557b54,#7fa06a);border:0;border-radius:17px;width:100%;min-height:50px;font-size:11px;font-weight:900;box-shadow:0 11px 23px #4669443d}.growth-welcome-card button:active{transform:scale(.98)}.growth-welcome-card button:disabled{opacity:.82}.growth-welcome.is-opening .growth-reveal-sprite{animation:1.25s cubic-bezier(.18,.9,.22,1) both growth-unlock}.growth-welcome.is-opening .growth-reveal-complete{animation:1.25s cubic-bezier(.18,.9,.22,1) both complete-growth-unlock}.growth-welcome.is-opening .strawberry-stage-art.is-reveal{animation:1.25s cubic-bezier(.18,.9,.22,1) both stage-growth-unlock}.growth-welcome.is-opening .growth-welcome-card{animation:1.25s ease-in-out both growth-card-open;box-shadow:0 28px 70px #42552d45,0 0 0 12px #fff0,inset 0 1px #fff}.celebration-welcome{z-index:90;padding:max(24px, env(safe-area-inset-top)) 22px max(24px, env(safe-area-inset-bottom));background:radial-gradient(circle at 50% 22%,#ffffffb8,#0000 29%),linear-gradient(155deg,#f9e2e7,#f5bfc9 58%,#df8da1);place-items:center;animation:.48s cubic-bezier(.2,.8,.2,1) both celebration-arrive;display:grid;position:fixed;inset:0;overflow:hidden}.celebration-welcome.year{background:radial-gradient(circle at 50% 20%,#ffe1923d,#0000 31%),linear-gradient(155deg,#381b31,#751f47 55%,#b34d55)}.celebration-sky{pointer-events:none;position:absolute;inset:0}.celebration-sky i{color:#ffffffc7;opacity:0;text-shadow:0 3px 10px #9637522e;font:16px/1 Georgia,serif;position:absolute;top:-10%;left:50%}.celebration-sky i:first-child{animation-delay:-.3s;left:7%}.celebration-sky i:nth-child(2){font-size:9px;animation-delay:-.8s;left:16%}.celebration-sky i:nth-child(3){animation-delay:-.1s;left:26%}.celebration-sky i:nth-child(4){font-size:11px;animation-delay:-1.1s;left:34%}.celebration-sky i:nth-child(5){animation-delay:-.5s;left:44%}.celebration-sky i:nth-child(6){font-size:10px;animation-delay:-1.35s;left:55%}.celebration-sky i:nth-child(7){animation-delay:-.2s;left:64%}.celebration-sky i:nth-child(8){font-size:12px;animation-delay:-.9s;left:73%}.celebration-sky i:nth-child(9){animation-delay:-1.45s;left:82%}.celebration-sky i:nth-child(10){font-size:9px;animation-delay:-.45s;left:91%}.celebration-sky i:nth-child(11){animation-delay:-1.65s;left:22%}.celebration-sky i:nth-child(12){animation-delay:-1.85s;left:68%}.celebration-welcome.month .celebration-sky i{animation:2.7s linear infinite berry-confetti}.celebration-welcome.year .celebration-sky i{color:#ffd778;text-shadow:0 0 13px #ffcf5bbf;animation:2.4s ease-out infinite star-burst;top:50%}.celebration-welcome.year .celebration-sky i:nth-child(n+13){animation-delay:-1.2s;left:50%}.celebration-card{z-index:2;width:min(100%,354px);color:var(--cocoa);text-align:center;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffaf7eb;border:1px solid #ffffffb8;border-radius:32px;padding:28px 24px 24px;animation:.62s cubic-bezier(.18,.85,.22,1) .12s both celebration-card-in;position:relative;box-shadow:0 28px 70px #6525393d,inset 0 1px #fff}.year .celebration-card{color:#4a2736;background:linear-gradient(155deg,#fffbebf5,#fae0aced);border-color:#ffdf938a;box-shadow:0 30px 80px #1906176b,inset 0 1px #fffbe9}.celebration-kicker{color:#a82c51;letter-spacing:.16em;font-size:8px;font-weight:950;display:block}.year .celebration-kicker{color:#95601e}.celebration-emblem{color:#fff;transform-origin:50% 90%;background:linear-gradient(145deg,#ff6d84,#d92f57);border:3px solid #a7234c;border-radius:48% 48% 52% 52%/38% 38% 66% 66%;place-items:center;width:92px;height:102px;margin:18px auto 12px;animation:2.7s ease-in-out infinite emblem-sway;display:grid;position:relative;box-shadow:inset 12px 9px #ffffff29,0 15px 24px #8d254133}.celebration-emblem:before{content:"";clip-path:polygon(50% 100%,0 0,38% 24%,50% 0,64% 25%,100% 0);background:#628c53;width:54px;height:31px;position:absolute;top:-23px;left:17px}.celebration-emblem b{font:700 30px/1 Georgia,serif}.celebration-emblem i{background:#ffffff61;border-radius:50%;width:8px;height:5px;position:absolute;top:23px;left:18px;transform:rotate(-28deg)}.year .celebration-emblem{color:#6f4217;background:radial-gradient(circle at 36% 28%,#fff8d2 0 8%,#0000 9%),linear-gradient(145deg,#ffe8a1,#dca343);border-color:#b17a29;border-radius:50%;width:104px;height:104px;animation:3.2s ease-in-out infinite annual-emblem;box-shadow:inset 11px 8px #ffffff40,0 0 0 8px #ecbe5926,0 17px 32px #5b331140}.year .celebration-emblem:before{content:"✦";color:#b77924;clip-path:none;background:0 0;width:auto;height:auto;font:26px/1 Georgia,serif;top:-20px;left:36px}.year .celebration-emblem b{font-size:42px}.celebration-card h2{letter-spacing:-.035em;margin:0;font-family:Georgia,serif;font-size:30px;line-height:1.02}.celebration-card p{color:#795b61;max-width:280px;margin:12px auto 20px;font-family:Georgia,serif;font-size:14px;line-height:1.45}.year .celebration-card p{color:#72543d}.celebration-card button{color:#fff;background:linear-gradient(135deg,#b1244f,#e14669);border:0;border-radius:17px;width:100%;min-height:50px;font-size:11px;font-weight:900;box-shadow:0 10px 22px #9e29493b}.year .celebration-card button{color:#432a1a;background:linear-gradient(135deg,#efbd5f,#ffe8a5);box-shadow:0 10px 25px #86541847}.celebration-card button:active{transform:scale(.98)}.celebration-card button:disabled{opacity:.8}.celebration-welcome.is-celebrating.month .celebration-card{animation:.62s cubic-bezier(.18,.85,.22,1) .12s both celebration-card-in,.9s ease-in-out infinite monthly-kiss}.celebration-welcome.is-celebrating.year .celebration-card{animation:.62s cubic-bezier(.18,.85,.22,1) .12s both celebration-card-in,.8s ease-in-out infinite alternate annual-card-glow}@keyframes garden-float{0%,to{opacity:.55;transform:translateY(0)rotate(0)}50%{opacity:1;transform:translateY(-8px)rotate(13deg)}}@keyframes plant-arrive{0%{opacity:0;transform:translate(-50%)translateY(15px)scale(.9)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@keyframes plant-alive{0%,to{transform:translateY(0)rotate(-.7deg)scale(1)}28%{transform:translateY(-2px)rotate(.3deg)scale(1.006,.997)}62%{transform:translateY(-4px)rotate(.8deg)scale(.998,1.007)}82%{transform:translateY(-1px)rotate(0)}}@keyframes plant-happy{0%{transform:scale(1)}35%{transform:translateY(-3px)scale(.96,1.04)rotate(-1.2deg)}67%{transform:translateY(-7px)scale(1.035,.975)rotate(.9deg)}to{transform:scale(1)}}@keyframes tiny-plant-alive{0%,to{transform:rotate(-1deg)scale(1)}34%{transform:rotate(.8deg)scale(1.012,.995)}68%{transform:rotate(-.2deg)scale(.996,1.01)}}@keyframes tiny-plant-happy{0%,to{transform:translateY(0)scale(1)}38%{transform:translateY(2px)scale(.93,1.08)rotate(-2deg)}70%{transform:translateY(0)scale(1.06,.96)rotate(1.4deg)}}@keyframes stage-art-arrive{0%{opacity:0;transform:translate(-50%)translateY(13px)scale(.94)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@keyframes leaves-breathe{0%,to{transform:translateY(var(--plant-y)) rotate(-.55deg) scale(1)}31%{transform:translateY(calc(var(--plant-y) - 2px)) rotate(.28deg) scale(1.004,.998)}67%{transform:translateY(calc(var(--plant-y) - 3px)) rotate(.65deg) scale(.998,1.005)}}@keyframes flowers-flutter{0%,to{transform:translateY(var(--plant-y)) translateX(0) rotate(.4deg)}38%{transform:translateY(calc(var(--plant-y) - 2px)) translateX(1px) rotate(-1.15deg)}72%{transform:translateY(calc(var(--plant-y) - 1px)) translateX(-1px) rotate(.9deg)}}@keyframes fruit-bob{0%,to{transform:translateY(var(--plant-y)) rotate(-.2deg)}42%{transform:translateY(calc(var(--plant-y) + 2px)) rotate(.65deg)}76%{transform:translateY(calc(var(--plant-y) - 1px)) rotate(-.55deg)}}@keyframes leaves-happy{0%,to{transform:translateY(var(--plant-y)) scale(1)}38%{transform:translateY(calc(var(--plant-y) + 3px)) scale(.965,1.035) rotate(-1.1deg)}70%{transform:translateY(calc(var(--plant-y) - 5px)) scale(1.025,.982) rotate(.8deg)}}@keyframes flowers-happy{0%,to{transform:translateY(var(--plant-y)) scale(1)}45%{transform:translateY(calc(var(--plant-y) - 6px)) scale(1.08) rotate(3deg)}}@keyframes fruit-happy{0%,to{transform:translateY(var(--plant-y)) scale(1)}36%{transform:translateY(calc(var(--plant-y) + 4px)) scale(.97,1.025) rotate(-1deg)}70%{transform:translateY(calc(var(--plant-y) - 4px)) scale(1.025,.98) rotate(.8deg)}}@keyframes complete-stage-alive{0%,to{transform:translate(-50%)translateY(0)rotate(-.55deg)scale(1)}28%{transform:translate(-50%)translateY(-2px)rotate(.25deg)scale(1.004,.998)}62%{transform:translate(-50%)translateY(-4px)rotate(.6deg)scale(.999,1.005)}82%{transform:translate(-50%)translateY(-1px)rotate(0)}}@keyframes complete-stage-happy{0%{transform:translate(-50%)scale(1)}35%{transform:translate(-50%)translateY(2px)scale(.97,1.025)rotate(-.9deg)}67%{transform:translate(-50%)translateY(-6px)scale(1.025,.98)rotate(.7deg)}to{transform:translate(-50%)scale(1)}}@keyframes mature-plant-alive{0%,to{transform:translate(-50%)translateY(0)rotate(-.7deg)scale(1)}28%{transform:translate(-50%)translateY(-2px)rotate(.3deg)scale(1.006,.997)}62%{transform:translate(-50%)translateY(-4px)rotate(.8deg)scale(.998,1.007)}82%{transform:translate(-50%)translateY(-1px)rotate(0)}}@keyframes mature-plant-happy{0%{transform:translate(-50%)scale(1)}35%{transform:translate(-50%)translateY(-3px)scale(.96,1.04)rotate(-1.2deg)}67%{transform:translate(-50%)translateY(-7px)scale(1.035,.975)rotate(.9deg)}to{transform:translate(-50%)scale(1)}}@keyframes pot-happy{0%,to{transform:translate(-50%)scale(1)}42%{transform:translate(-50%)translateY(3px)scale(1.025,.97)}72%{transform:translate(-50%)translateY(-2px)scale(.99,1.015)}}@keyframes garden-glow{0%{opacity:.45;transform:translate(-50%)scale(.8)}45%{opacity:1;transform:translate(-50%)scale(1.12)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes glow-breathe{0%,to{opacity:.65;transform:translate(-50%)scale(.94)}50%{opacity:1;transform:translate(-50%)scale(1.04)}}@keyframes shadow-breathe{0%,to{opacity:.8;transform:translate(-50%)scaleX(.94)}50%{opacity:1;transform:translate(-50%)scaleX(1.05)}}@keyframes can-pour{0%{opacity:0;transform:translate(72px,-23px)rotate(16deg)}18%{opacity:1;transform:translate(0)rotate(16deg)}42%,72%{opacity:1;transform:translate(-5px,5px)rotate(-19deg)}88%{opacity:1;transform:translate(0)rotate(8deg)}to{opacity:0;transform:translate(68px,-18px)rotate(14deg)}}@keyframes big-water-drop{0%{opacity:0;transform:translate(0)rotate(24deg)scale(.4)}15%{opacity:1}to{opacity:0;transform:translate(-79px,142px)rotate(24deg)scale(1.05)}}@keyframes score-bump{0%{transform:scale(.78)}65%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes berry-idle{0%,to{margin-top:0}50%{margin-top:-5px}}@keyframes berry-catch{0%{transform:translate(-50%,-50%)scale(1)}45%{filter:brightness(1.12);transform:translate(-50%,-50%)scale(.76,1.2)rotate(-7deg)}to{opacity:0;transform:translate(-50%,-50%)scale(.12)}}@keyframes score-float{0%{opacity:0;transform:translateY(4px)scale(.75)}25%,70%{opacity:1}to{opacity:0;transform:translateY(-20px)scale(1.12)}}@keyframes heart-pop{0%{opacity:0;transform:translate(0)scale(.2)rotate(-15deg)}18%,68%{opacity:1}to{transform:translate(var(--tx),var(--ty)) scale(1.15) rotate(15deg);opacity:0}}@keyframes cloud-drift{0%,to{transform:translate(0)}50%{transform:translate(9px)}}@keyframes badge-glow-pink{0%,to{box-shadow:0 0 #e94b6633,0 6px 15px #852e441a}50%{box-shadow:0 0 0 7px #e94b6600,0 7px 20px #cc375b38}}@keyframes badge-glow-gold{0%,to{box-shadow:0 0 #dba53c38,0 6px 15px #7548181a}50%{box-shadow:0 0 0 7px #dba53c00,0 7px 23px #b8772347}}@keyframes birthday-sparkle{0%,to{opacity:.45;transform:scale(.82)rotate(0)}50%{opacity:1;transform:scale(1.15)rotate(18deg)}}@keyframes celebration-arrive{0%{opacity:0}to{opacity:1}}@keyframes celebration-card-in{0%{opacity:0;transform:translateY(28px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes berry-confetti{0%{opacity:0;transform:translateY(-8svh)rotate(0)}12%{opacity:.9}to{opacity:0;transform:translateY(118svh)rotate(320deg)}}@keyframes star-burst{0%,35%{opacity:0;transform:translate(0)scale(.1)rotate(0)}48%{opacity:1}to{transform:translate(calc((var(--star-x,1)) * 120px), calc((var(--star-y,-1)) * 160px)) scale(1.4) rotate(130deg);opacity:0}}@keyframes emblem-sway{0%,to{transform:rotate(-3deg)translateY(0)}50%{transform:rotate(3deg)translateY(-5px)}}@keyframes annual-emblem{0%,to{transform:translateY(0)rotate(0);box-shadow:inset 11px 8px #ffffff40,0 0 0 8px #ecbe5926,0 17px 32px #5b331140}50%{transform:translateY(-6px)rotate(3deg);box-shadow:inset 11px 8px #ffffff40,0 0 0 15px #ecbe5900,0 20px 38px #5b331152}}@keyframes monthly-kiss{0%,to{box-shadow:0 28px 70px #6525393d,inset 0 1px #fff}50%{box-shadow:0 28px 70px #6525394f,0 0 0 7px #ffffff24,inset 0 1px #fff}}@keyframes annual-card-glow{0%{box-shadow:0 30px 80px #1906176b,0 0 #ffd36629,inset 0 1px #fffbe9}to{box-shadow:0 30px 80px #19061780,0 0 0 10px #ffd36600,inset 0 1px #fffbe9}}@keyframes growth-confetti{0%{opacity:0;transform:translateY(-7svh)rotate(0)}12%{opacity:.85}to{opacity:0;transform:translateY(116svh)rotate(300deg)}}@keyframes reveal-plant-sway{0%,to{transform:translateY(0)rotate(-.8deg)}50%{transform:translateY(-4px)rotate(.8deg)}}@keyframes mature-reveal-sway{0%,to{transform:translate(-50%)translateY(0)rotate(-.8deg)}50%{transform:translate(-50%)translateY(-4px)rotate(.8deg)}}@keyframes complete-reveal-sway{0%,to{transform:translate(-50%)translateY(0)rotate(-.7deg)}50%{transform:translate(-50%)translateY(-4px)rotate(.7deg)}}@keyframes growth-unlock{0%{filter:saturate(1.04)brightness();transform:translateY(0)scale(1)}35%{transform:translateY(4px)scale(.94,1.04)}65%{filter:saturate(1.1)brightness(1.08);transform:translateY(-11px)scale(1.07,.96)}to{filter:saturate(1.04)brightness();transform:translateY(0)scale(1)}}@keyframes complete-growth-unlock{0%{filter:brightness();transform:translate(-50%)translateY(0)scale(1)}35%{transform:translate(-50%)translateY(3px)scale(.95,1.035)}65%{filter:brightness(1.08);transform:translate(-50%)translateY(-9px)scale(1.055,.97)}to{filter:brightness();transform:translate(-50%)translateY(0)scale(1)}}@keyframes stage-growth-unlock{0%{filter:brightness();transform:translate(-50%)translateY(0)scale(1)}35%{transform:translate(-50%)translateY(3px)scale(.95,1.035)}65%{filter:brightness(1.08);transform:translate(-50%)translateY(-9px)scale(1.055,.97)}to{filter:brightness();transform:translate(-50%)translateY(0)scale(1)}}@keyframes growth-card-open{0%,to{transform:scale(1)}45%{transform:scale(1.015);box-shadow:0 28px 70px #42552d45,0 0 #ffffff8c,inset 0 1px #fff}80%{box-shadow:0 28px 70px #42552d45,0 0 0 14px #fff0,inset 0 1px #fff}}@media (prefers-reduced-motion:reduce){.garden-mote,.complete-stage-art,.strawberry-stage-art,.stage-leaves,.stage-flowers,.stage-fruits,.plant-stack,.plant-sprite,.mature-plant-art,.plant-pot,.plant-glow,.garden-shadow,.watering-can,.water-drop,.tap-berry,.catch-burst strong,.catch-burst i,.game-cloud,.game-heading .game-tools strong,.milestone-badge,.birthday-sparkle,.growth-welcome,.growth-welcome-card,.growth-reveal-complete,.growth-reveal-sprite,.growth-reveal-mature,.growth-confetti i,.celebration-welcome,.celebration-card,.celebration-emblem,.celebration-sky i{animation-duration:.01ms!important;animation-iteration-count:1!important}.growth-track i,.game-progress i,.tap-berry,.water-button{transition-duration:.01ms!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
