@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,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y: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,::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]){appearance:button}::file-selector-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{.visible{visibility:visible}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.lowercase{text-transform:lowercase}.\[no-new-privileges\:true\]{no-new-privileges:true}}:root{--cream:#fff8ef;--cream-deep:#f8ecdd;--paper:#fffdf9;--ink:#3e343c;--muted:#82747c;--line:#5e464f1f;--peach:#ff9b87;--coral:#ef6a6f;--rose:#f5a7b4;--blue:#9bb9d7;--blue-deep:#6f91b5;--sage:#a8c5af;--butter:#f7cf79;--lilac:#c8b8d9;--shadow:0 24px 80px #6f4e4e1f;--soft-shadow:0 12px 36px #654b4e1a;--font-sans:"Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", system-ui, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);font-family:var(--font-sans);min-width:320px;margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline-offset:3px;outline:3px solid #6f91b58c}.brand-lockup{align-items:center;gap:12px;display:inline-flex}.brand-lockup>span:last-child{gap:2px;display:grid}.brand-lockup strong{letter-spacing:.08em;font-size:17px}.brand-lockup small{color:var(--muted);letter-spacing:.13em;font-size:9px;font-weight:700}.brand-mark{background:linear-gradient(145deg, var(--coral), var(--peach));color:#fff;border:4px solid #ffffffb3;border-radius:15px;justify-content:center;align-items:center;width:46px;height:46px;font-family:serif;font-size:20px;font-weight:700;display:inline-flex;transform:rotate(-3deg);box-shadow:0 8px 20px #ef6a6f38}.privacy-pill,.soft-label{border:1px solid var(--line);color:var(--muted);letter-spacing:.06em;background:#ffffffad;border-radius:999px;align-items:center;gap:6px;padding:9px 13px;font-size:12px;font-weight:700;display:inline-flex}.privacy-pill:before{background:var(--sage);content:"";border:3px solid #a8c5af40;border-radius:50%;width:8px;height:8px}.eyebrow{color:var(--coral);letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:800;display:inline-block}.poster-login-page{background:#f7ead7;min-height:100vh;position:relative;overflow:hidden}.poster-stage{position:absolute;inset:0}.poster-image{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.poster-shade{pointer-events:none;background:linear-gradient(#382c2805 0%,#0000 55%,#382c2824 100%);position:absolute;inset:0}.poster-privacy{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf9b8;position:absolute;top:clamp(18px,3vw,36px);right:clamp(18px,3vw,42px)}.site-compliance-footer{color:#534448b8;text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:7px 14px;font-size:11px;line-height:1.4;display:flex}.site-compliance-footer a{text-underline-offset:3px;-webkit-text-decoration:underline #53444847;text-decoration:underline #53444847;transition:color .16s,text-decoration-color .16s}.site-compliance-footer a:hover{color:var(--coral);text-decoration-color:currentColor}.public-security-filing{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.public-security-filing img{object-fit:contain;width:18px;height:18px;display:block}.poster-compliance-footer{z-index:3;width:calc(100% - 28px);position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.app-compliance-footer{padding:4px clamp(24px,5vw,68px) 24px}.login-dock{-webkit-backdrop-filter:blur(24px)saturate(1.08);backdrop-filter:blur(24px)saturate(1.08);z-index:2;background:#fffbf5e0;border:1px solid #ffffffc7;border-radius:24px;grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;gap:clamp(20px,3vw,38px);width:calc(100% - clamp(36px,8vw,130px));max-width:1080px;padding:20px 24px;display:grid;position:absolute;bottom:clamp(18px,3vw,34px);left:50%;transform:translate(-50%);box-shadow:0 24px 70px #4a363033}.card-kicker{color:var(--muted);letter-spacing:.08em;align-items:center;gap:8px;font-size:12px;font-weight:800;display:flex}.status-dot{background:var(--sage);border-radius:50%;width:8px;height:8px;display:inline-block;box-shadow:0 0 0 5px #a8c5af33}.login-dock h1{margin:8px 0 2px;font-family:STKaiti,KaiTi,serif;font-size:clamp(26px,3vw,36px)}.login-dock-copy>p{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.login-dock-actions{place-items:center;gap:7px;display:grid}.mainland-login{grid-template-columns:minmax(190px,.75fr) minmax(420px,1.5fr) auto}.mainland-login-form{grid-template-columns:minmax(130px,1fr) minmax(130px,1fr) 100px minmax(150px,1fr) auto;align-items:end;gap:10px;display:grid}.mainland-login-form label{gap:5px;display:grid}.mainland-login-form label>span{color:var(--muted);font-size:10px;font-weight:800}.mainland-login-form input{border:1px solid var(--line);color:var(--ink);font:inherit;background:#ffffffd1;border-radius:11px;min-width:0;min-height:44px;padding:0 12px}.mainland-login-form input:focus-visible{border-color:var(--blue);outline:3px solid #7eadcc33}.login-error{color:#a3424b;grid-column:1/-1;margin:0;font-size:11px}.button-link{cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.upload-action{background:linear-gradient(135deg, var(--coral), #ef8c76);color:#fff;cursor:pointer;border-radius:14px;justify-content:center;align-items:center;min-height:52px;padding:0 20px;font-weight:800;display:inline-flex;box-shadow:0 12px 26px #ef6a6f38}.upload-action input{display:none}.upload-action.is-busy{cursor:wait;opacity:.72}.workspace-message{border:1px solid var(--line);color:var(--muted);background:#ffffffad;border-radius:14px;margin:18px 0;padding:14px 16px}.real-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:22px;display:grid}.real-photo-card{box-shadow:var(--shadow-soft);background:#fff;border:1px solid #66514a14;border-radius:20px;overflow:hidden}.real-photo-card>img,.processing-photo{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.processing-photo{color:var(--muted);background:linear-gradient(135deg,#f4d6cb,#d7e7ec);justify-content:center;align-items:center;font-size:12px;font-weight:800;display:flex}.photo-card-meta,.memory-card-footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.photo-card-meta{padding:13px 14px 15px}.photo-card-meta>div{gap:3px;min-width:0;display:grid}.photo-card-meta strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.photo-card-meta small{color:var(--muted)}.photo-card-meta button,.memory-card-footer button{color:var(--coral);cursor:pointer;white-space:nowrap;background:0 0;border:0;font-size:11px;font-weight:800}.river-actions{gap:10px;display:flex}.secondary-action{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:14px;min-height:48px;padding:0 18px;font-weight:800}.memory-composer{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#ffffffd1;border-radius:22px;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0 28px;padding:20px;display:grid}.memory-composer label{gap:6px;display:grid}.memory-composer label.wide{grid-column:1/-1}.memory-composer label>span{color:var(--muted);font-size:11px;font-weight:800}.memory-composer input,.memory-composer textarea{border:1px solid var(--line);color:var(--ink);font:inherit;background:#fff;border-radius:11px;padding:10px 12px}.memory-composer textarea{resize:vertical}.memory-composer .primary-action{cursor:pointer;border:0;justify-self:start}.real-memory-card{white-space:pre-wrap}.memory-card-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:14px;padding-top:12px}.simple-gate{background:var(--cream);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.simple-gate>section{box-shadow:var(--shadow);background:#fff;border-radius:24px;width:100%;max-width:520px;padding:32px}.simple-gate h1{margin:10px 0;font-family:STKaiti,KaiTi,serif;font-size:34px}.simple-gate p{color:var(--muted)}.gate-form{gap:16px;margin-top:24px;display:grid}.gate-form label,.admin-card label{gap:6px;display:grid}.gate-form label>span,.admin-card label>span{color:var(--muted);font-size:11px;font-weight:800}.gate-form input,.admin-card input,.admin-card select{border:1px solid var(--line);font:inherit;border-radius:11px;min-height:44px;padding:0 12px}.gate-form .primary-action,.admin-card .primary-action{cursor:pointer;border:0;justify-self:start}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.admin-card{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#fff;border-radius:20px;gap:12px;padding:20px;display:grid}.admin-card h2{margin:0 0 4px}.activation-result{background:#fff6df;border:1px solid #f0d79f;border-radius:16px;align-items:center;gap:8px;margin-top:18px;padding:16px;display:grid}.activation-result code{overflow-wrap:anywhere}.activation-result button{justify-self:start}.member-table{border:1px solid var(--line);background:#fff;border-radius:20px;margin-top:22px;overflow:hidden}.member-table article{border-bottom:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:16px;padding:16px 18px;display:grid}.member-table article:last-child{border-bottom:0}.member-table article>div:first-child{gap:3px;display:grid}.member-table small{color:var(--muted)}.member-actions{gap:8px;display:flex}.member-actions button,.activation-result button{color:var(--coral);cursor:pointer;background:0 0;border:0;font-weight:800}.settings-grid{grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);gap:18px;display:grid}.session-list{display:grid}.session-list article{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.session-list article>div{gap:3px;display:grid}.session-list small{color:var(--muted)}.session-list button{color:var(--coral);cursor:pointer;background:0 0;border:0;font-weight:800}.session-list button:disabled{color:var(--muted);cursor:default}.enter-preview{background:linear-gradient(135deg, var(--coral), #ef8c76);color:#fff;border-radius:13px;justify-content:center;align-items:center;gap:14px;min-height:48px;padding:0 20px;font-size:13px;font-weight:800;transition:transform .18s,box-shadow .18s;display:inline-flex;box-shadow:0 12px 26px #ef6a6f40}.enter-preview:hover{transform:translateY(-2px);box-shadow:0 16px 32px #ef6a6f52}.login-dock-actions small{color:var(--muted);text-align:center;font-size:10px}.login-signout{color:var(--muted);text-underline-offset:3px;font-size:11px;font-weight:700;text-decoration:underline}.text-action{color:var(--blue-deep);font-size:13px;font-weight:800}.login-roadmap{border-left:1px solid var(--line);color:var(--muted);gap:8px;min-width:132px;padding-left:20px;font-size:10px;display:grid}.login-roadmap span{align-items:center;gap:8px;display:flex}.login-roadmap strong{color:var(--coral);font-size:10px}.disabled-action{color:#fff;cursor:not-allowed;opacity:.72;background:linear-gradient(135deg,#c7bfc2,#aaa0a4);border:0;border-radius:14px;min-height:52px;padding:0 18px;font-weight:800}.app-shell{background:radial-gradient(circle at 82% 6%, #f5a7b421, transparent 28%), radial-gradient(circle at 9% 92%, #a8c5af21, transparent 30%), var(--cream);grid-template-columns:232px minmax(0,1fr);min-height:100vh;display:grid}.side-nav{border-right:1px solid var(--line);background:#fffdf9c7;flex-direction:column;min-height:100vh;padding:30px 22px 24px;display:flex;position:sticky;top:0}.nav-list{gap:8px;margin-top:52px;display:grid}.nav-item{color:var(--muted);border-radius:14px;align-items:center;gap:12px;padding:13px 14px;font-size:14px;font-weight:800;transition:background .18s,color .18s,transform .18s;display:flex}.nav-item span{width:22px;font-size:18px}.nav-item:hover{color:var(--coral);background:#ef6a6f12;transform:translate(2px)}.nav-item.is-active{color:var(--coral);background:linear-gradient(135deg,#ff9b872b,#f5a7b41f)}.side-note{background:#a8c5af1f;border:1px solid #a8c5af38;border-radius:16px;align-items:center;gap:12px;margin-top:auto;padding:13px;display:flex}.side-note div{gap:2px;display:grid}.side-note strong{font-size:12px}.side-note small{color:var(--muted);font-size:10px}.app-stage{min-width:0}.top-bar{justify-content:space-between;align-items:center;padding:24px clamp(24px,5vw,68px) 8px;display:flex}.top-actions{align-items:center;gap:12px;display:flex}.account-summary{justify-items:end;gap:2px;display:grid}.account-summary span{color:var(--muted);letter-spacing:.08em;font-size:9px;font-weight:700}.account-summary strong{font-size:12px}.signout-link{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:8px 11px;font-size:11px;font-weight:700;transition:border-color .16s,color .16s}.signout-link:hover{border-color:var(--coral);color:var(--coral)}.avatar{color:#fff;background:linear-gradient(145deg,#ffd2c7,#f09791);border:4px solid #fffc;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-family:serif;font-weight:800;display:inline-flex;box-shadow:0 8px 18px #ef6a6f29}.page-content{max-width:1280px;margin:0 auto;padding:26px clamp(24px,5vw,68px) 64px}.welcome-panel{box-shadow:var(--soft-shadow);background:linear-gradient(135deg,#fffdf9f2,#fff1e9e6);border:1px solid #ffffffdb;border-radius:30px;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);align-items:center;gap:30px;padding:clamp(30px,5vw,58px);display:grid;position:relative;overflow:hidden}.welcome-copy{z-index:2;position:relative}.welcome-copy h1,.page-intro h1{margin:12px 0 14px;font-family:STKaiti,KaiTi,serif;font-size:clamp(40px,5vw,64px);line-height:1.12}.welcome-copy p,.page-intro p{color:var(--muted);max-width:660px;margin:0;font-size:16px;line-height:1.8}.welcome-actions{flex-wrap:wrap;align-items:center;gap:22px;margin-top:28px;display:flex}.primary-action{background:linear-gradient(135deg, var(--coral), #f18c7e);color:#fff;border-radius:14px;padding:13px 20px;font-size:13px;font-weight:800;transition:transform .18s,box-shadow .18s;box-shadow:0 12px 24px #ef6a6f33}.primary-action:hover{transform:translateY(-2px);box-shadow:0 16px 30px #ef6a6f42}.home-illustration{min-width:280px;height:230px;position:relative}.mini-sun{background:var(--butter);border:8px solid #ffffff8c;border-radius:50%;width:78px;height:78px;position:absolute;top:5px;right:12%}.hill{border-radius:50% 50% 0 0;position:absolute;bottom:-70px}.hill-back{background:#c8d9cc;width:120%;height:210px;left:0;transform:rotate(3deg)}.hill-front{background:#9fbca6;width:130%;height:190px;bottom:-104px;left:-10%;transform:rotate(-4deg)}.home-cat{background:var(--peach);color:#5b4a50;text-align:center;z-index:2;border:6px solid #ffffffb8;border-radius:48% 48% 42% 42%;width:70px;height:78px;line-height:31px;position:absolute;bottom:30px}.home-cat-one{left:34%;transform:rotate(-5deg)}.home-cat-two{background:var(--blue);right:25%;transform:rotate(5deg)}.tiny-heart{color:var(--coral);z-index:3;font-size:22px;position:absolute;top:86px;left:56%}.quick-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0 42px;display:grid}.quick-grid article{border:1px solid var(--line);background:#fffdf9b8;border-radius:18px;gap:4px;padding:18px 20px;display:grid}.quick-grid span,.quick-grid small{color:var(--muted);font-size:11px}.quick-grid strong{font-family:STKaiti,KaiTi,serif;font-size:27px}.section-block,.roadmap-card{margin-top:42px}.section-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:20px;display:flex}.section-heading h2{margin:7px 0 0;font-family:STKaiti,KaiTi,serif;font-size:34px}.module-grid{grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:17px;display:grid}.module-card{border:1px solid var(--line);background:#fffdf9cc;border-radius:22px;min-height:250px;padding:22px;transition:transform .18s,box-shadow .18s;position:relative;overflow:hidden}.module-card:after{content:"";opacity:.16;border-radius:50%;width:120px;height:120px;position:absolute;top:-40px;right:-36px}.module-card:hover{box-shadow:var(--soft-shadow);transform:translateY(-4px)}.accent-peach:after,.accent-peach .module-icon{background:var(--peach)}.accent-blue:after,.accent-blue .module-icon{background:var(--blue)}.accent-sage:after,.accent-sage .module-icon{background:var(--sage)}.accent-butter:after,.accent-butter .module-icon{background:var(--butter)}.accent-lilac:after,.accent-lilac .module-icon{background:var(--lilac)}.module-icon{color:#fff;border:5px solid #ffffffa6;border-radius:15px;justify-content:center;align-items:center;width:47px;height:47px;font-size:20px;display:inline-flex}.module-status{color:var(--muted);float:right;margin-top:8px;font-size:10px;font-weight:700}.module-card h3{margin:24px 0 9px;font-size:20px}.module-card p{color:var(--muted);margin:0;font-size:13px;line-height:1.75}.card-link{color:var(--blue-deep);font-size:12px;font-weight:800;position:absolute;bottom:20px;left:22px}.roadmap-card{border:1px solid var(--line);background:#fffdf9c7;border-radius:26px;padding:clamp(24px,4vw,38px)}.roadmap-list{grid-template-columns:repeat(4,1fr);gap:0;margin:30px 0 0;padding:0;list-style:none;display:grid}.roadmap-list li{border-top:2px solid var(--line);gap:12px;padding:20px 14px 0 0;display:flex;position:relative}.roadmap-list li:before{border:4px solid var(--paper);content:"";background:#d9cfd2;border-radius:50%;width:14px;height:14px;position:absolute;top:-8px;left:0}.roadmap-list li.is-current{border-color:var(--coral)}.roadmap-list li.is-current:before{background:var(--coral);box-shadow:0 0 0 4px #ef6a6f26}.roadmap-list li.is-complete{border-color:var(--sage)}.roadmap-list li.is-complete:before{background:var(--sage)}.roadmap-list li>span{color:var(--coral);font-size:11px;font-weight:900}.roadmap-list li div{gap:6px;display:grid}.roadmap-list strong{font-size:13px}.roadmap-list small{color:var(--muted);font-size:11px;line-height:1.6}.security-note{background:#9bb9d71f;border:1px solid #6f91b529;border-radius:20px;align-items:center;gap:17px;margin-top:20px;padding:18px 22px;display:flex}.security-mark{color:var(--blue-deep);background:#9bb9d740;border-radius:50%;flex:none;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.security-note strong{font-size:13px}.security-note p{color:var(--muted);margin:4px 0 0;font-size:12px;line-height:1.6}.page-intro{justify-content:space-between;align-items:end;gap:38px;margin-bottom:32px;display:flex}.page-intro h1{max-width:800px;font-size:clamp(38px,4.4vw,58px)}.disabled-action{flex:none;min-height:46px}.filter-row,.view-switch{border:1px solid var(--line);background:#fffdf9b8;border-radius:14px;align-items:center;gap:5px;padding:5px;display:inline-flex}.filter-row{margin-bottom:20px}.filter-row button,.view-switch button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;padding:9px 14px;font-size:12px;font-weight:800}.filter-row button.is-active,.view-switch button.is-active{color:var(--coral);background:#fff;box-shadow:0 5px 14px #654b4e14}.photo-board{grid-template-columns:repeat(3,1fr);grid-auto-rows:190px;gap:16px;display:grid}.photo-placeholder{box-shadow:var(--soft-shadow);border:7px solid #ffffffb8;border-radius:22px;flex-direction:column;justify-content:space-between;padding:20px;display:flex;position:relative;overflow:hidden}.photo-placeholder:first-child,.photo-placeholder:nth-child(5){grid-row:span 2}.photo-placeholder:after{content:"";background:#ffffff38;border-radius:50%;width:180px;height:180px;position:absolute;top:-80px;right:-60px}.photo-corail,.photo-coral{background:linear-gradient(145deg,#f7b0a5,#e98280)}.photo-sky{background:linear-gradient(145deg,#c7d9e9,#8eacc9)}.photo-sage{background:linear-gradient(145deg,#d0dfd2,#9ab8a1)}.photo-butter{background:linear-gradient(145deg,#fae1a7,#e8bd64)}.photo-lilac{background:linear-gradient(145deg,#dfd5e8,#b7a2ca)}.photo-rose{background:linear-gradient(145deg,#f8d1d8,#e99aaa)}.placeholder-spark{color:#ffffffd1;z-index:2;font-size:32px;position:relative}.photo-placeholder div{color:#fff;text-shadow:0 2px 12px #4a32382e;z-index:2;gap:5px;display:grid;position:relative}.photo-placeholder strong{font-size:14px}.photo-placeholder small{opacity:.84;font-size:11px}.empty-guidance{border:1px solid var(--line);background:#fffdf9c7;border-radius:24px;align-items:center;gap:24px;margin-top:24px;padding:28px;display:flex}.empty-icon{color:var(--coral);background:#ef6a6f1a;border-radius:18px;flex:none;justify-content:center;align-items:center;width:68px;height:68px;font-size:28px;display:inline-flex}.empty-guidance h2{margin:6px 0 7px;font-family:STKaiti,KaiTi,serif;font-size:clamp(24px,3vw,34px)}.empty-guidance p{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.river-intro{align-items:center}.river-intro h1{max-width:850px}.timeline{max-width:900px;margin:34px auto 0;display:grid}.timeline-item{grid-template-columns:64px minmax(0,1fr);gap:26px;padding-bottom:24px;display:grid;position:relative}.timeline-item:not(:last-child):before{background:linear-gradient(var(--line), #5e464f0a);content:"";width:2px;height:calc(100% + 5px);position:absolute;top:58px;left:31px}.timeline-dot{box-shadow:var(--soft-shadow);color:#fff;z-index:2;border:7px solid #ffffffbf;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;font-size:11px;font-weight:900;display:flex;position:relative}.tone-peach{background:var(--peach)}.tone-blue{background:var(--blue)}.tone-sage{background:var(--sage)}.timeline-card{border:1px solid var(--line);background:#fffdf9d1;border-radius:22px;padding:24px 28px}.timeline-card h2{margin:12px 0 8px;font-family:STKaiti,KaiTi,serif;font-size:28px}.timeline-card p{color:var(--muted);margin:0;line-height:1.8}.river-quote{align-items:start;gap:16px;max-width:800px;margin:10px auto 0;padding:20px;display:flex}.river-quote span{color:var(--rose);font-family:Georgia,serif;font-size:54px;line-height:.8}.river-quote p{color:var(--muted);margin:0;font-family:STKaiti,KaiTi,serif;font-size:24px}.play-tabs{border:1px solid var(--line);background:#fffdf9d1;border-radius:16px;align-items:center;gap:4px;margin-bottom:20px;padding:5px;display:inline-flex}.play-tabs a{color:var(--muted);border-radius:11px;align-items:center;gap:7px;padding:10px 15px;font-size:13px;font-weight:800;transition:background .16s,color .16s,transform .16s;display:inline-flex}.play-tabs a:hover{color:var(--coral);transform:translateY(-1px)}.play-tabs a.is-active{color:var(--coral);background:#fff1e9;box-shadow:0 5px 16px #6f4e4e14}.play-hero{box-shadow:var(--soft-shadow);background:#fffdf9e6;border:1px solid #ffffffe6;border-radius:28px;justify-content:space-between;align-items:center;gap:28px;min-height:190px;padding:clamp(28px,4vw,48px);display:flex;position:relative;overflow:hidden}.play-hero:after{content:"";border:30px solid #ffffff57;border-radius:50%;width:180px;height:180px;position:absolute;top:-100px;right:12%}.farm-hero{background-color:#f3f6ec}.games-hero{background-color:#f4f0f8}.play-hero>div{z-index:1;position:relative}.play-hero h1{margin:10px 0 12px;font-family:STKaiti,KaiTi,serif;font-size:clamp(36px,4vw,54px);line-height:1.15}.play-hero p{color:var(--muted);max-width:680px;margin:0;line-height:1.8}.play-balance{background:#ffffffc2;border:1px solid #ffffffe6;border-radius:18px;flex:none;align-items:center;gap:12px;min-width:150px;padding:14px 18px;display:flex;box-shadow:0 12px 30px #5b494e14}.play-balance>span{color:#805e22;background:#f8d77e;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:21px;display:flex}.play-balance div{gap:1px;display:grid}.play-balance small{color:var(--muted);font-size:10px;font-weight:800}.play-balance strong{font-size:24px}.play-message{margin:14px 2px 18px}.play-panel{border:1px solid var(--line);background:#fffdf9e6;border-radius:22px;padding:22px;box-shadow:0 10px 30px #654b4e12}.play-panel h2{margin:7px 0 15px;font-family:STKaiti,KaiTi,serif;font-size:25px}.panel-heading{justify-content:space-between;align-items:start;display:flex}.farm-layout{grid-template-columns:minmax(0,1.65fr) minmax(290px,.75fr);align-items:start;gap:20px;display:grid}.farm-field{box-shadow:var(--soft-shadow);background-color:#dce5ca;background-image:radial-gradient(circle at 12% 18%,#ffffff61 0 3px,#0000 4px),radial-gradient(circle at 75% 82%,#ffffff4d 0 2px,#0000 3px);background-size:58px 58px,47px 47px;border:8px solid #fffdf9cc;border-radius:28px;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:20px;display:grid}.farm-plot{text-align:center;background:#fffdf9e0;border:1px solid #6c59471a;border-radius:20px;flex-direction:column;align-items:center;min-height:280px;padding:15px 13px;display:flex}.farm-plot.is-ready{box-shadow:0 0 0 3px #f7cf798c}.plot-number{color:var(--muted);letter-spacing:.08em;align-self:flex-start;font-size:10px;font-weight:800}.soil-patch{background:#9a7053;border:8px solid #b98d69;border-radius:50%;justify-content:center;align-items:center;width:132px;height:104px;margin:14px 0 11px;display:flex;position:relative;box-shadow:inset 0 7px 10px #422b2333}.soil-patch:after{content:"";border-bottom:2px solid #4b2f2338;border-radius:50%;width:92px;height:25px;position:absolute}.empty-soil{color:#ffffff8c;z-index:1;font-size:30px;position:relative}.crop-sprout{z-index:2;flex-direction:column;align-items:center;display:flex;position:absolute;bottom:42px}.crop-sprout i{background:#6f9d75;width:5px;height:48px;position:relative}.crop-sprout i:before,.crop-sprout i:after{content:"";background:#89b98d;border-radius:90% 10%;width:14px;height:22px;position:absolute;top:13px}.crop-sprout i:before{left:-11px;transform:rotate(20deg)}.crop-sprout i:after{right:-11px;transform:rotate(70deg)}.crop-sprout b{color:#fff;background:#e87e73;border:4px solid #ffffffa6;border-radius:50%;order:-1;justify-content:center;align-items:center;width:42px;height:42px;font-size:18px;display:flex}.crop-strawberry b,.crop-tomato b{background:#e86968}.crop-sunflower b{color:#795923;background:#efbd51}.crop-lavender b{background:#a38aba}.farm-plot>strong{font-size:15px}.farm-plot>small{color:var(--muted);margin:5px 0 12px;font-size:11px}.plot-actions{margin-top:auto}.farm-action{color:#56735c;cursor:pointer;background:#eef5eb;border:1px solid #c8d9c9;border-radius:11px;min-height:38px;padding:0 15px;font-size:12px;font-weight:800}.farm-action.harvest{color:#8b651f;background:#fff0d3;border-color:#eed091}.farm-action:disabled{cursor:not-allowed;opacity:.5}.farm-sidebar{gap:18px;display:grid}.seed-list{gap:8px;display:grid}.seed-list button{color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:13px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px;display:grid}.seed-list button:hover,.seed-list button.is-selected{background:#f4f7ef;border-color:#89b98d5c}.seed-symbol{color:#6f9d75;background:#e6efe0;border-radius:12px;justify-content:center;align-items:center;height:40px;font-size:18px;display:flex}.seed-list button>span:nth-child(2){gap:2px;display:grid}.seed-list small{color:var(--muted);font-size:9px}.seed-list button>b{color:var(--muted);font-size:11px}.daily-line{border-top:1px solid var(--line);grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 0;display:grid}.daily-line>span{color:var(--muted);background:#f1eee9;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.daily-line.is-complete>span{color:#55725b;background:#dfece1}.daily-line strong{font-size:12px}.daily-line small{color:var(--muted);font-size:10px}.room-sun{background:#f6cd73;border-radius:50%;width:60px;height:60px;position:absolute;top:22px;right:26px}.cloud-one{top:65px;left:17px}.cloud-two{top:137px;right:19px;transform:scale(.65)}.css-cat{z-index:3;width:260px;height:250px;position:absolute;bottom:83px;left:50%;transform:translate(-50%)}.empty-copy{color:var(--muted);font-size:12px}.game-layout{grid-template-columns:minmax(500px,1.4fr) minmax(280px,.6fr);align-items:start;gap:20px;display:grid}.memory-game{min-height:600px}.game-board-header,.game-board-footer{justify-content:space-between;align-items:center;display:flex}.game-stats{gap:8px;display:flex}.game-stats>span{background:#f6f1f8;border-radius:12px;justify-items:center;gap:1px;min-width:66px;padding:9px 12px;display:grid}.game-stats small{color:var(--muted);font-size:9px}.game-stats strong{font-size:18px}.memory-grid{grid-template-columns:repeat(4,minmax(70px,1fr));gap:12px;max-width:620px;margin:22px auto 28px;display:grid}.memory-grid button{aspect-ratio:4/5;color:#fff;cursor:pointer;background:#9a82af;border:5px solid #ffffffb8;border-radius:17px;place-items:center;font-size:clamp(24px,3.5vw,38px);transition:transform .18s,background .18s;display:grid;position:relative;box-shadow:0 8px 17px #47365229}.memory-grid button:hover:not(:disabled){transform:translateY(-3px)rotate(-1deg)}.memory-grid button.is-open{color:var(--coral);background:#fff8ec;border-color:#efe3d2;transform:rotateY(0)}.memory-grid button.is-matched{color:#5e8566;background:#eef5eb;border-color:#c8ddca}.card-front{display:none}.memory-grid button.is-open .card-front{display:block}.memory-grid button.is-open .card-back{display:none}.memory-grid button:disabled{cursor:default}.player-chips{flex-wrap:wrap;gap:7px;display:flex}.player-chips>span{background:#f7f2ed;border-radius:999px;align-items:center;gap:6px;padding:5px 9px 5px 5px;font-size:10px;font-weight:800;display:flex}.player-chips i{background:var(--peach);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-style:normal;display:flex}.secondary-action{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:0 0;border-radius:11px;min-height:38px;padding:0 14px;font-size:11px;font-weight:800}.secondary-action:hover{border-color:var(--coral);color:var(--coral)}.secondary-action:disabled,.play-panel .primary-action:disabled{cursor:not-allowed;opacity:.5}.game-start-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:450px;display:flex}.game-start-state h3{margin:24px 0 8px;font-family:STKaiti,KaiTi,serif;font-size:28px}.game-start-state p{color:var(--muted);max-width:390px;margin:0 0 22px;font-size:12px;line-height:1.7}.game-start-state .primary-action{cursor:pointer;border:0}.stacked-cards{width:145px;height:115px;position:relative}.stacked-cards span{color:#fff;background:#a08ab3;border:5px solid #fffc;border-radius:16px;justify-content:center;align-items:center;width:84px;height:105px;font-size:32px;display:flex;position:absolute;top:5px;left:27px;box-shadow:0 10px 22px #47365226}.stacked-cards span:first-child{transform:rotate(-13deg)translate(-18px)}.stacked-cards span:nth-child(2){transform:rotate(12deg)translate(18px)}.game-shelf{gap:18px;display:grid}.game-rule-card ol{gap:10px;margin:0;padding:0;list-style:none;display:grid}.game-rule-card li{align-items:center;gap:10px;font-size:12px;font-weight:700;display:flex}.game-rule-card li span{color:#765f8c;background:#eee7f3;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;display:flex}.game-rule-card p,.coming-game p{border-top:1px solid var(--line);color:var(--muted);margin:16px 0 0;padding-top:14px;font-size:11px;line-height:1.7}.coming-game{background:#f7f2e9}.puzzle-preview{grid-template-columns:repeat(2,54px);gap:4px;width:max-content;margin:22px auto 12px;display:grid}.puzzle-preview span{color:#ffffffb3;background:#d9b9a4;justify-content:center;align-items:center;height:50px;font-size:20px;display:flex}.mobile-nav{display:none}@media (max-width:1100px){.module-grid{grid-template-columns:repeat(2,1fr)}.welcome-panel{grid-template-columns:1fr}.home-illustration{max-width:500px}}@media (max-width:860px){.login-dock{grid-template-columns:minmax(220px,1fr) auto}.login-roadmap{display:none}.mainland-login{grid-template-columns:1fr}.mainland-login-form{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell{padding-bottom:76px;display:block}.side-nav{display:none}.mobile-nav{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid var(--line);padding:8px max(12px, env(safe-area-inset-left)) calc(8px + env(safe-area-inset-bottom));z-index:20;background:#fffdf9e6;grid-template-columns:none;grid-auto-columns:minmax(64px,1fr);grid-auto-flow:column;align-items:center;display:grid;position:fixed;bottom:0;left:0;right:0;overflow-x:auto}.mobile-nav a{color:var(--muted);place-items:center;gap:2px;padding:6px;display:grid}.mobile-nav a>span{font-size:18px}.mobile-nav a.is-active{color:var(--coral)}.top-bar{padding-top:16px}.top-bar>div:first-child{display:none}.top-actions{margin-left:auto}.photo-board{grid-template-columns:repeat(2,1fr)}.roadmap-list{grid-template-columns:repeat(2,1fr);gap:18px}}@media (max-width:620px){.poster-login-page{flex-direction:column;min-height:100vh;display:flex;overflow:auto}.poster-stage{aspect-ratio:16/9;min-height:0;position:relative;inset:auto}.poster-image{object-fit:contain}.poster-shade{background:linear-gradient(#0000 70%,#4a363014)}.poster-privacy{padding:7px 9px;font-size:9px;top:10px;right:10px}.login-dock{background:var(--paper);box-shadow:none;padding:28px 22px calc(28px + env(safe-area-inset-bottom));border:0;border-radius:0;flex:1;grid-template-columns:1fr;align-items:stretch;gap:22px;width:100%;position:relative;bottom:auto;left:auto;transform:none}.login-dock-actions{place-items:stretch stretch}.mainland-login-form,.memory-composer,.admin-grid,.settings-grid{grid-template-columns:1fr}.mainland-login-form .login-error,.memory-composer label.wide{grid-column:auto}.real-photo-grid{grid-template-columns:1fr}.member-table article{grid-template-columns:1fr;align-items:start}.enter-preview{width:100%}.account-summary{display:none}.signout-link{padding:7px 9px}.page-content{padding-bottom:36px}.welcome-panel{border-radius:24px;padding:28px 22px}.welcome-copy h1,.page-intro h1{font-size:38px}.home-illustration{min-width:0;height:190px}.quick-grid,.module-grid,.roadmap-list{grid-template-columns:1fr}.section-heading,.page-intro{flex-direction:column;align-items:start}.section-heading .soft-label,.section-heading>.text-action{display:none}.module-card{min-height:220px}.photo-board{grid-template-columns:1fr;grid-auto-rows:180px}.photo-placeholder:first-child,.photo-placeholder:nth-child(5){grid-row:span 1}.empty-guidance{flex-direction:column;align-items:start}.river-intro{align-items:start}.timeline-item{grid-template-columns:48px minmax(0,1fr);gap:15px}.timeline-dot{border-width:5px;width:48px;height:48px}.timeline-item:not(:last-child):before{top:45px;left:23px}.timeline-card{padding:20px}}@media (max-width:1120px){.farm-layout,.game-layout{grid-template-columns:1fr}.farm-sidebar,.game-shelf{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.play-tabs{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}.play-tabs a{justify-content:center;padding-inline:8px}.play-hero{flex-direction:column;align-items:start}.play-balance{min-width:0}.farm-field{grid-template-columns:repeat(2,minmax(0,1fr));padding:13px}.farm-sidebar,.game-shelf{grid-template-columns:1fr}.memory-grid{gap:8px}}@media (max-width:480px){.play-tabs a{gap:4px;font-size:11px}.play-hero{border-radius:22px;min-height:0;padding:25px 21px}.play-hero h1{font-size:36px}.farm-field{grid-template-columns:1fr}.farm-plot{min-height:255px}.memory-game{min-height:520px;padding:16px}.memory-grid{grid-template-columns:repeat(3,minmax(60px,1fr))}.game-board-header{align-items:start;gap:12px}.game-board-footer{flex-direction:column;align-items:start;gap:13px}}.games-hero{background:radial-gradient(circle at 78% 22%,#ffffffb8 0 7%,#0000 7.5%),linear-gradient(135deg,#f5ebff 0%,#fff2ef 54%,#fff9e9 100%)}.farm-hero{background:radial-gradient(circle at 76% 28%,#ffffffad 0 8%,#0000 8.5%),linear-gradient(135deg,#eaf6df 0%,#f5f7e8 48%,#fff2d9 100%)}.play-panel{border-color:#74544e1a;box-shadow:0 18px 45px #654b4e14,inset 0 1px #ffffffe6}.miaomiao-balance{border:1px solid #e6af4038;position:relative;overflow:visible;box-shadow:0 14px 35px #c48c2621}.miaomiao-balance>img{object-fit:cover;border-radius:50%;width:52px;height:52px}.miaomiao-balance small{color:#956c22}.miaomiao-balance strong{color:#6e4b18;font-variant-numeric:tabular-nums}.miaomiao-balance.is-rewarding{animation:.65s both balance-reward}.miaomiao-balance.is-spending{animation:.52s both balance-spend}.balance-pop{color:#d18821;font-size:17px;animation:1.55s both balance-pop;position:absolute;top:-16px;right:12px}.balance-pop.is-cost{color:#ba6d58}.reward-celebration{background:radial-gradient(circle at 15% 20%,#ffffffb8 0 5px,#0000 6px),linear-gradient(120deg,#fff7cf,#ffe7c0 50%,#ffdcce);border:1px solid #ebb2424d;border-radius:22px;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:15px;margin:-2px 0 18px;padding:15px 18px;animation:.52s cubic-bezier(.2,.9,.25,1.2) both reward-arrive;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 38px #a9732024}.reward-celebration>img{object-fit:cover;border-radius:50%;width:68px;height:68px;animation:1.6s ease-in-out infinite coin-bob}.reward-celebration>div{gap:1px;display:grid}.reward-celebration small{color:#9a6c25;letter-spacing:.08em;font-size:10px;font-weight:900}.reward-celebration strong{color:#6d4718;font-family:STKaiti,KaiTi,serif;font-size:27px}.reward-celebration div>span{color:#a46855;font-size:11px}.reward-celebration button{color:#fff;cursor:pointer;background:#8f6546;border:0;border-radius:999px;min-height:38px;padding:0 17px;font-size:11px;font-weight:900}.reward-spark{color:#e4a937;animation:1.4s ease-in-out infinite sparkle;position:absolute}.spark-one{top:10px;right:25%}.spark-two{animation-delay:.3s;bottom:10px;left:44%}.memory-game{background:radial-gradient(circle at 12% 12%,#f2b9c738 0 4px,#0000 5px) 0 0/54px 54px,radial-gradient(circle at 88% 22%,#bad6b040 0 5px,#0000 6px) 0 0/64px 64px,linear-gradient(155deg,#fffdf9f5,#faf6fff5)}.memory-grid{perspective:1100px;gap:14px}.memory-grid button{isolation:isolate;transform-style:preserve-3d;background:radial-gradient(circle at 72% 18%,#fff6 0 7%,#0000 7.5%),linear-gradient(145deg,#a68bbe,#876da2);border:5px solid #ffffffc7;border-radius:22px;transition:transform .26s cubic-bezier(.2,.8,.2,1),box-shadow .26s;overflow:hidden;box-shadow:0 12px 22px #47365233,inset 0 1px #ffffff59}.memory-grid button:after{content:"";pointer-events:none;border:1px dashed #ffffff4d;border-radius:15px;position:absolute;inset:7px}.memory-grid button:hover:not(:disabled){transform:translateY(-6px)rotate(-1deg);box-shadow:0 17px 26px #47365240}.memory-grid button.is-open{background:#fff8ec;border-color:#ffffffe6;transform:rotateY(0)scale(1.015);box-shadow:0 10px 24px #85594924}.memory-grid button.is-matched{background:#eef7e9;border-color:#bedbbf;animation:1.2s ease-in-out infinite alternate matched-glow}.card-back{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.card-back i{background:#ffffff29;border:1px solid #ffffff38;border-radius:50%;justify-content:center;align-items:center;width:68%;height:58%;font-size:clamp(21px,2.8vw,32px);font-style:normal;display:flex}.memory-symbol{background-image:url(/game-art/memory-icons-v2.png);background-repeat:no-repeat;background-size:300% 200%;background-origin:border-box;border-radius:15px;position:absolute;inset:9px}.memory-symbol.symbol-sun{background-position:0 0}.memory-symbol.symbol-heart{background-position:50% 0}.memory-symbol.symbol-leaf{background-position:100% 0}.memory-symbol.symbol-cloud{background-position:0 100%}.memory-symbol.symbol-star{background-position:50% 100%}.memory-symbol.symbol-flower{background-position:100% 100%}.farm-field{isolation:isolate;background-color:#edf3df;background-image:radial-gradient(circle at 12% 72%,#ffffff8c 0 3px,#0000 4px),radial-gradient(circle at 79% 88%,#e2b0c63d 0 3px,#0000 4px);background-position:0 0,0 0;background-size:58px 58px,47px 47px;border:7px solid #fffdf9e0;gap:12px;min-height:680px;padding:232px 16px 24px;position:relative;overflow:hidden}.farm-field:before{content:"";pointer-events:none;z-index:0;background:linear-gradient(#ffffff0d 68%,#edf3df 100%),url(/game-art/farm-scenery-v2.webp) 50%/cover no-repeat;height:224px;position:absolute;inset:0 0 auto}.farm-plot{z-index:1;background:#fffef9f5;border:1px solid #c3d4a8cc;min-height:242px;padding:13px 10px;position:relative;box-shadow:0 12px 25px #40572b21}.farm-plot.is-ready{animation:1.8s ease-in-out infinite alternate ripe-glow;box-shadow:0 0 0 4px #ffd3619e,0 16px 30px #5b6c382e}.soil-patch{background:#71482dd1;border:6px solid #976542c7;width:122px;height:92px;margin:10px 0 8px;overflow:visible}.crop-art{background-image:url(/game-art/crop-atlas-v2.png);background-repeat:no-repeat;background-size:300% 200%;display:block}.soil-patch .crop-art{filter:drop-shadow(0 8px 8px #3c332033);z-index:2;width:122px;height:118px;transition:transform .24s;position:absolute;transform:translateY(-25px)scale(.78)}.farm-plot.is-ready .soil-patch .crop-art{animation:1.5s ease-in-out infinite crop-ready;transform:translateY(-29px)scale(.9)}.crop-radish,.seed-radish{background-position:0 0}.crop-strawberry,.seed-strawberry{background-position:50% 0}.crop-tomato,.seed-tomato{background-position:100% 0}.crop-sunflower,.seed-sunflower{background-position:0 100%}.crop-lavender,.seed-lavender{background-position:50% 100%}.crop-sprout-stage{background-position:100% 100%}.seed-symbol{color:#0000;background-color:#f3f7ec;background-image:url(/game-art/crop-atlas-v2.png);background-repeat:no-repeat;background-size:300% 200%;box-shadow:inset 0 0 0 1px #779d651a}.farm-action{transition:transform .16s,box-shadow .16s;box-shadow:0 6px 12px #46663d17}.farm-action:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 17px #46663d24}.farm-market{background:linear-gradient(155deg,#fffbe8f7,#fff4e2f7)}.seed-shop{background:linear-gradient(155deg,#f1faebfa,#fffce7fa)}.seed-shop .panel-heading,.farm-market .panel-heading{align-items:center}.seed-shop .panel-heading img,.farm-market .panel-heading img{object-fit:cover;border-radius:50%;width:50px;height:50px}.shop-loop{color:#67805e;background:#ffffff94;border:1px dashed #749d6047;border-radius:12px;margin:-7px 0 13px;padding:8px 10px;font-size:10px;font-weight:800;line-height:1.5}.market-intro{color:var(--muted);margin:-7px 0 13px;font-size:11px;line-height:1.65}.seed-shop-list,.market-list{gap:8px;display:grid}.seed-shop-list article,.market-list article{background:#ffffffb3;border:1px solid #ddb77029;border-radius:15px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px;display:grid}.shop-crop,.market-crop{border-radius:12px;width:48px;height:48px}.seed-shop-list article>div,.market-list article>div{gap:2px;display:grid}.seed-shop-list article strong,.market-list article strong{font-size:11px}.seed-shop-list article small,.market-list article small{color:var(--muted);font-size:9px}.seed-shop-list button,.market-list button{color:#835d19;cursor:pointer;background:#fff0cf;border:1px solid #ecd08c;border-radius:11px;gap:1px;min-width:76px;padding:7px 9px;display:grid}.seed-shop-list button{color:#55754d;background:#edf7e7;border-color:#c9ddb9}.seed-shop-list article{border-color:#9bbe8238}.seed-shop-list button:hover:not(:disabled){background:#e3f2d9;transform:translateY(-1px)}.seed-shop-list button span,.market-list button span{font-size:9px;font-weight:800}.seed-shop-list button b,.market-list button b{font-size:11px}.seed-shop-list button:disabled,.market-list button:disabled{cursor:not-allowed;filter:grayscale(.5);opacity:.45}@keyframes reward-arrive{0%{opacity:0;transform:translateY(-8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes coin-bob{0%,to{transform:translateY(0)rotate(-3deg)}50%{transform:translateY(-5px)rotate(3deg)}}@keyframes sparkle{0%,to{opacity:.25;transform:scale(.7)rotate(0)}50%{opacity:1;transform:scale(1.2)rotate(35deg)}}@keyframes matched-glow{0%{box-shadow:0 9px 18px #52845b24}to{box-shadow:0 12px 28px #52845b47}}@keyframes crop-ready{0%,to{transform:translateY(-29px)scale(.9)rotate(-1deg)}50%{transform:translateY(-34px)scale(.93)rotate(1deg)}}@keyframes ripe-glow{0%{filter:saturate()}to{filter:saturate(1.12)brightness(1.03)}}@keyframes balance-reward{0%{transform:scale(1)}45%{transform:scale(1.07)rotate(-1deg)}to{transform:scale(1)}}@keyframes balance-spend{0%{transform:scale(1)}45%{transform:scale(.96)rotate(1deg)}to{transform:scale(1)}}@keyframes balance-pop{0%{opacity:0;transform:translateY(8px)scale(.7)}25%{opacity:1;transform:translateY(0)scale(1.1)}to{opacity:0;transform:translateY(-24px)scale(1)}}@keyframes speech-pop{0%{opacity:0;transform:translateY(5px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:1120px){.farm-field{padding-top:218px}.farm-sidebar{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:860px){.farm-sidebar{grid-template-columns:1fr}.farm-field{min-height:640px;padding-top:196px}.farm-field:before{height:188px}.reward-celebration{grid-template-columns:60px minmax(0,1fr)}.reward-celebration>img{width:58px;height:58px}.reward-celebration>button{grid-column:1/-1}}@media (max-width:620px){.miaomiao-balance>img{width:46px;height:46px}.farm-field{grid-template-columns:repeat(2,minmax(0,1fr));padding-top:174px}.farm-field:before{height:166px}.farm-plot{min-height:225px}}@media (max-width:480px){.farm-field{grid-template-columns:1fr;padding:158px 13px 18px}.farm-field:before{height:150px}.farm-plot{min-height:215px}.memory-grid{gap:8px}.memory-grid button{border-width:3px;border-radius:17px}.memory-symbol{inset:6px}.market-list article{grid-template-columns:44px minmax(0,1fr)}.market-list button{grid-column:1/-1}}.memory-grid{gap:clamp(9px,1.5vw,15px);max-width:660px}.memory-grid button{transform-style:preserve-3d;background:linear-gradient(145deg,#ae95c8,#84699f);border:5px solid #f7f0fb;border-radius:24px;box-shadow:0 13px #5e46751a,0 17px 30px #47365233,inset 0 1px #ffffff75}.memory-grid button:after{z-index:3;border:1px dashed #ffffff5c;border-radius:16px;transition:opacity .18s;inset:8px}.memory-grid button.is-open{background:#fff9ed;border-color:#fffdf8;box-shadow:0 10px #b1916314,0 16px 30px #75524329,inset 0 0 0 2px #e5c69247}.memory-grid button.is-open:after{opacity:0}.card-back,.card-front{backface-visibility:hidden;transition:opacity .28s,transform .52s cubic-bezier(.2,.76,.2,1);position:absolute;inset:0;display:flex!important}.card-back{opacity:1;z-index:2;transform:rotateY(0)}.card-front{opacity:0;z-index:1;transform:rotateY(180deg)}.memory-grid button.is-open .card-back{opacity:0;transform:rotateY(-180deg);display:flex!important}.memory-grid button.is-open .card-front{opacity:1;transform:rotateY(0);display:flex!important}.card-back i{background:radial-gradient(circle at 50% 45%,#ffffff2b 0 44%,#0000 45%),#ffffff14;border:1px solid #ffffff3d;box-shadow:inset 0 0 18px #ffffff14}.memory-symbol{background-color:#fff9ed;background-position:50%;background-repeat:no-repeat;background-size:72%;border-radius:18px;inset:0}.memory-symbol.symbol-sun{background-image:url(/game-art/memory-sun-v4.webp)}.memory-symbol.symbol-heart{background-image:url(/game-art/memory-heart-v4.webp)}.memory-symbol.symbol-leaf{background-image:url(/game-art/memory-leaf-v4.webp)}.memory-symbol.symbol-cloud{background-image:url(/game-art/memory-cloud-v4.webp)}.memory-symbol.symbol-star{background-image:url(/game-art/memory-star-v4.webp)}.memory-symbol.symbol-flower{background-image:url(/game-art/memory-flower-v4.webp)}.memory-symbol.symbol-hidden{background-image:none}.memory-symbol.symbol-sun,.memory-symbol.symbol-heart,.memory-symbol.symbol-leaf,.memory-symbol.symbol-cloud,.memory-symbol.symbol-star,.memory-symbol.symbol-flower{background-position:50%}.memory-grid button.is-matched .memory-symbol{background-color:#eff8ed;box-shadow:inset 0 0 0 3px #9fcc9e47}.farm-world-scroll{box-shadow:var(--soft-shadow);background:#fffaf1;border-radius:30px;min-width:0;overflow:hidden}.farm-field{aspect-ratio:3/2;isolation:isolate;background:url(/game-art/farm-garden-nine-v2.webp) 50%/100% 100% no-repeat;border:7px solid #fffdf9eb;border-radius:30px 30px 0 0;min-height:0;padding:0;display:block;position:relative;overflow:hidden}.farm-field:before{display:none}.crop-art.crop-stage-seedling,.crop-art.crop-stage-growing,.crop-art.crop-stage-mature{background-position:bottom;background-repeat:no-repeat;background-size:contain}.crop-radish.crop-stage-seedling{background-image:url(/game-art/crop-radish-seedling-v4.webp)}.crop-radish.crop-stage-growing{background-image:url(/game-art/crop-radish-growing-v4.webp)}.crop-radish.crop-stage-mature{background-image:url(/game-art/crop-radish-mature-v4.webp)}.crop-strawberry.crop-stage-seedling{background-image:url(/game-art/crop-strawberry-seedling-v4.webp)}.crop-strawberry.crop-stage-growing{background-image:url(/game-art/crop-strawberry-growing-v4.webp)}.crop-strawberry.crop-stage-mature{background-image:url(/game-art/crop-strawberry-mature-v4.webp)}.crop-tomato.crop-stage-seedling{background-image:url(/game-art/crop-tomato-seedling-v4.webp)}.crop-tomato.crop-stage-growing{background-image:url(/game-art/crop-tomato-growing-v4.webp)}.crop-tomato.crop-stage-mature{background-image:url(/game-art/crop-tomato-mature-v4.webp)}.crop-sunflower.crop-stage-seedling{background-image:url(/game-art/crop-sunflower-seedling-v4.webp)}.crop-sunflower.crop-stage-growing{background-image:url(/game-art/crop-sunflower-growing-v4.webp)}.crop-sunflower.crop-stage-mature{background-image:url(/game-art/crop-sunflower-mature-v4.webp)}.crop-lavender.crop-stage-seedling{background-image:url(/game-art/crop-lavender-seedling-v4.webp)}.crop-lavender.crop-stage-growing{background-image:url(/game-art/crop-lavender-growing-v4.webp)}.crop-lavender.crop-stage-mature{background-image:url(/game-art/crop-lavender-mature-v4.webp)}.seed-symbol.crop-art{background-color:#f3f7ec;background-position:50%;background-size:92%;width:40px}.shop-crop.crop-art,.market-crop.crop-art{background-position:50%;background-size:92%}.farm-plot{--crop-size:72%;box-shadow:none;cursor:pointer;text-align:center;z-index:3;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;width:22%;height:13%;min-height:0;padding:0;transition:filter .18s;display:flex;position:absolute}.farm-plot:first-of-type{--crop-size:80%;width:21.0286%;height:11.9141%;top:34.082%;left:16.6667%}.farm-plot:nth-of-type(2){--crop-size:80%;width:19.5313%;height:11.8164%;top:34.082%;left:39.9089%}.farm-plot:nth-of-type(3){--crop-size:80%;width:20.3776%;height:11.8164%;top:34.082%;left:61.9792%}.farm-plot:nth-of-type(4){--crop-size:86%;width:23.2422%;height:14.7461%;top:47.5586%;left:12.8255%}.farm-plot:nth-of-type(5){--crop-size:86%;width:21.6797%;height:14.7461%;top:47.5586%;left:38.6719%}.farm-plot:nth-of-type(6){--crop-size:86%;width:23.0469%;height:14.7461%;top:47.5586%;left:63.2161%}.farm-plot:nth-of-type(7){--crop-size:92%;width:24.5443%;height:18.2617%;top:64.1602%;left:9.375%}.farm-plot:nth-of-type(8){--crop-size:92%;width:24.0885%;height:18.2617%;top:64.1602%;left:37.0443%}.farm-plot:nth-of-type(9){--crop-size:92%;width:25.4557%;height:18.2617%;top:64.1602%;left:64.3229%}.farm-plot:hover,.farm-plot:focus-visible{filter:brightness(1.04);outline:none}.farm-plot.is-ready{box-shadow:none;animation:none}.farm-selection-canvas{pointer-events:none;z-index:2;width:100%;height:100%;position:absolute;inset:0}.farm-plot .soil-patch{border-radius:inherit;box-shadow:none;z-index:2;background:0 0;border:0;width:100%;height:100%;margin:0;position:relative;overflow:visible}.farm-plot .soil-patch:after{display:none}.farm-plot .soil-patch .crop-art{filter:drop-shadow(0 7px 6px #302a1738);aspect-ratio:1;transform-origin:50% 100%;height:auto;width:var(--crop-size);background-position:bottom;background-repeat:no-repeat;background-size:contain;transition:transform .36s cubic-bezier(.2,.75,.2,1);position:absolute;bottom:46%;left:50%;transform:translate(-50%)}.farm-plot.is-ready .soil-patch .crop-art{animation:1.65s ease-in-out infinite crop-grow-in-world}.farm-control-dock{background:linear-gradient(135deg,#fffdf6,#f4f7e9);border:7px solid #fffdf9eb;border-radius:0 0 30px 30px;justify-content:space-between;align-items:center;gap:13px;width:100%;min-height:74px;padding:10px 14px 10px 20px;display:flex;position:relative;box-shadow:inset 0 1px #859b6724}.farm-control-copy{text-align:left;gap:1px;min-width:0;display:grid}.farm-control-copy span{color:#719064;letter-spacing:.08em;font-size:9px;font-weight:900}.farm-control-copy strong{color:#453b31;font-size:clamp(12px,1.3vw,17px)}.farm-control-copy small{color:#776d63;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(8px,.85vw,11px);overflow:hidden}.farm-control-dock .farm-action{flex:none;min-width:72px;min-height:40px}@keyframes crop-grow-in-world{0%,to{transform:translate(-50%)translateY(0)rotate(-.6deg)}50%{transform:translate(-50%)translateY(-3px)rotate(.6deg)}}@media (max-width:1120px){.farm-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:860px){.farm-world-scroll{overscroll-behavior-inline:contain;scrollbar-color:#708d5b73 transparent;overflow-x:auto}.farm-field{min-width:720px}.farm-sidebar{grid-template-columns:1fr}}@media (max-width:620px){.farm-field{min-width:680px}.memory-grid button{border-width:3px;border-radius:18px}.memory-grid button:after{border-radius:12px;inset:6px}.memory-symbol{background-size:76%}}@media (prefers-reduced-motion:reduce){.farm-plot.is-ready:after,.farm-plot.is-ready .soil-patch .crop-art{animation:none!important}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.farm-layout{grid-template-columns:minmax(0,1fr) minmax(288px,330px)}.farm-shop-sidebar{min-width:0;display:block}.farm-shop-sidebar .seed-shop{background:linear-gradient(155deg,#f2fae8fa,#fff8dcfa);border:1px solid #8ca76933;position:sticky;top:18px;box-shadow:0 18px 42px #584b301f}.farm-shop-sidebar .shop-loop{color:#6d7f59;margin-bottom:16px}.farm-shop-sidebar .seed-shop-list{gap:10px}.farm-shop-sidebar .seed-shop-list article{background:#ffffffc7;border-color:#8fad6f38;min-height:66px;box-shadow:0 5px 14px #5e563a0f}.farm-plot{isolation:isolate;touch-action:manipulation;border-radius:0}.farm-plot .soil-patch,.farm-plot .soil-patch .crop-art{pointer-events:none}.farm-plot:focus-visible{filter:brightness(1.08);outline:none}.farm-warehouse{background:radial-gradient(circle at 92% 8%,#ffdd9733,#0000 24%),linear-gradient(150deg,#fffdf6,#f6f2e8);border:1px solid #9a7f5829;margin-top:22px;overflow:hidden;box-shadow:0 20px 48px #55442d1c}.warehouse-heading{border-bottom:1px solid #8d745021;margin-bottom:18px;padding-bottom:15px}.warehouse-capacity{color:#806f57;background:#f1eadb;border:1px solid #96774a24;border-radius:999px;padding:7px 11px;font-size:10px;font-weight:900}.warehouse-body{grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);align-items:stretch;gap:18px;display:grid}.warehouse-grid{background:#e8dcc6;border:7px solid #b9986f;border-radius:22px;grid-template-columns:repeat(5,minmax(76px,1fr));align-content:start;gap:8px;padding:11px;display:grid;box-shadow:inset 0 0 0 3px #fff8debf,inset 0 8px 18px #5b402724}.warehouse-grid>button{aspect-ratio:1;color:#544638;cursor:pointer;text-align:center;background:linear-gradient(145deg,#fffdf5,#f2eadb);border:2px solid #7d5f3f2e;border-radius:16px;grid-template-rows:minmax(40px,1fr) auto auto;justify-items:center;min-width:0;padding:7px 6px 8px;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid;position:relative;box-shadow:0 5px #684d3114,inset 0 1px #ffffffe6}.warehouse-grid>button:hover,.warehouse-grid>button.is-selected{border-color:#e8b958;transform:translateY(-2px);box-shadow:0 5px #684d3114,0 0 0 3px #ffe19785,inset 0 1px #fff}.warehouse-item-art{background-position:bottom;background-repeat:no-repeat;background-size:contain;width:58px;height:54px}.warehouse-item-fallback{justify-content:center;align-items:center;height:54px;font-size:28px;display:flex}.warehouse-grid>button strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:10px;line-height:1.2;overflow:hidden}.warehouse-grid>button small{color:#92816d;margin-top:2px;font-size:8px}.warehouse-grid>button b{color:#fff;background:#806443;border:2px solid #fff9e9;border-radius:999px;justify-content:center;align-items:center;min-width:32px;padding:2px 5px;font-size:9px;display:flex;position:absolute;bottom:6px;right:5px}.warehouse-detail{background:linear-gradient(150deg,#fffdf5f7,#f7f2e2f5);border:1px solid #997b4e2b;border-radius:22px;flex-direction:column;min-height:260px;padding:18px;display:flex;box-shadow:inset 0 0 0 5px #ffffff70}.warehouse-detail-title{grid-template-columns:86px minmax(0,1fr);align-items:center;gap:13px;display:grid}.warehouse-detail-art{background-position:bottom;background-repeat:no-repeat;background-size:contain;width:86px;height:86px}.warehouse-detail-title>div{gap:3px;display:grid}.warehouse-detail-title span{color:#8a765b;letter-spacing:.08em;font-size:9px;font-weight:900}.warehouse-detail-title h3{margin:0;font-family:STKaiti,KaiTi,serif;font-size:22px}.warehouse-detail-title small{color:#6f8c61;font-size:10px;font-weight:800}.warehouse-detail>p{color:#766b60;margin:14px 0;font-size:11px;line-height:1.7}.warehouse-detail dl{gap:7px;margin:0 0 14px;display:grid}.warehouse-detail dl>div{border-top:1px dashed #826b4c2b;justify-content:space-between;align-items:center;gap:12px;padding-top:7px;display:flex}.warehouse-detail dt{color:#95826d;font-size:9px}.warehouse-detail dd{color:#55483b;margin:0;font-size:10px;font-weight:900}.warehouse-sell{color:#71501c;cursor:pointer;background:linear-gradient(#ffe7a5,#f5c966);border:1px solid #d9a941;border-radius:13px;justify-content:space-between;align-items:center;min-height:42px;margin-top:auto;padding:0 13px;font-size:11px;font-weight:900;display:flex}.warehouse-sell:disabled{cursor:not-allowed;filter:grayscale(.55);opacity:.52}.warehouse-tip{color:#67805c;background:#edf4e7;border:1px dashed #c6d7b8;border-radius:12px;margin-top:auto;padding:10px;font-size:10px;line-height:1.55}.warehouse-daily{background:#ffffff8c;border:1px solid #8f75521f;border-radius:17px;grid-template-columns:minmax(150px,1fr) repeat(3,minmax(130px,.75fr));align-items:center;gap:10px;margin-top:18px;padding:10px 13px;display:grid}.warehouse-daily>div:first-child{gap:2px;display:grid}.warehouse-daily>div:first-child strong{font-size:11px}.warehouse-daily .daily-line{border:0;padding:5px 7px}.plant-dialog-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background:#362d2261;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.plant-dialog{background:radial-gradient(circle at 92% 7%,#ffe09242,#0000 25%),linear-gradient(150deg,#fffdf5,#f4f1e5);border:7px solid #fffbe9f0;border-radius:28px;width:100%;max-width:760px;max-height:min(760px,100vh - 36px);padding:25px;position:relative;overflow-y:auto;box-shadow:0 28px 80px #36271652}.plant-dialog-close{color:#806f5f;cursor:pointer;background:#ffffffb8;border:1px solid #83684b26;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:22px;display:flex;position:absolute;top:18px;right:18px}.plant-dialog-heading{padding-right:48px}.plant-dialog-heading h2{margin:4px 0;font-family:STKaiti,KaiTi,serif;font-size:clamp(24px,4vw,32px)}.plant-dialog-heading p{color:#7d7166;margin:0;font-size:11px}.plant-seed-grid{grid-template-columns:repeat(5,minmax(100px,1fr));gap:11px;margin:22px 0 16px;display:grid}.plant-seed-grid>button{color:#55493c;cursor:pointer;background:linear-gradient(145deg,#fffdf6,#eee8d7);border:2px solid #89704c2b;border-radius:18px;justify-items:center;min-height:154px;padding:10px 8px;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.plant-seed-grid>button:hover:not(:disabled),.plant-seed-grid>button.is-selected{border-color:#e7b64e;transform:translateY(-2px);box-shadow:0 0 0 4px #ffe0916b}.plant-seed-grid>button:disabled{cursor:not-allowed;filter:grayscale(.72);opacity:.48}.plant-seed-art{background-position:bottom;background-repeat:no-repeat;background-size:contain;width:78px;height:74px}.plant-seed-grid strong{font-size:11px}.plant-seed-grid small{color:#8b7c6c;margin-top:3px;font-size:9px}.plant-seed-grid b{color:#68815f;margin-top:6px;font-size:9px}.plant-dialog-summary{background:#edf4e4;border:1px solid #ccdabd;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:4px 12px;padding:11px 14px;display:grid}.plant-dialog-summary span{color:#7e8f71;font-size:9px;font-weight:900}.plant-dialog-summary strong{font-size:13px}.plant-dialog-summary small{color:#69765f;font-size:10px}.plant-dialog-actions{justify-content:flex-end;gap:10px;margin-top:17px;display:flex}.plant-dialog-actions .primary-action{color:#624613;cursor:pointer;background:linear-gradient(#f5c96d,#e7ae42);border:1px solid #cb9634;border-radius:12px;min-width:118px;min-height:40px;font-size:11px;font-weight:900}.plant-dialog-actions .primary-action:disabled{cursor:not-allowed;filter:grayscale(.5);opacity:.5}@media (max-width:1120px){.farm-layout{grid-template-columns:minmax(0,1fr) minmax(260px,300px)}.warehouse-grid{grid-template-columns:repeat(4,minmax(72px,1fr))}.warehouse-daily{grid-template-columns:repeat(3,minmax(130px,1fr))}.warehouse-daily>div:first-child{grid-column:1/-1}}@media (max-width:940px){.farm-layout,.warehouse-body{grid-template-columns:1fr}.farm-shop-sidebar .seed-shop{position:static}.farm-shop-sidebar .seed-shop-list{grid-template-columns:repeat(2,minmax(0,1fr))}.warehouse-grid{grid-template-columns:repeat(5,minmax(72px,1fr))}.plant-seed-grid{grid-template-columns:repeat(3,minmax(100px,1fr))}}@media (max-width:620px){.farm-shop-sidebar .seed-shop-list,.warehouse-daily{grid-template-columns:1fr}.warehouse-grid{grid-template-columns:repeat(3,minmax(70px,1fr))}.warehouse-detail-title{grid-template-columns:72px minmax(0,1fr)}.warehouse-detail-art{width:72px;height:72px}.plant-dialog-backdrop{align-items:flex-end;padding:0}.plant-dialog{max-height:88vh;padding:22px 17px calc(22px + env(safe-area-inset-bottom));border-radius:28px 28px 0 0}.plant-seed-grid{grid-template-columns:repeat(2,minmax(100px,1fr))}.plant-dialog-summary{grid-template-columns:auto minmax(0,1fr)}.plant-dialog-summary small{grid-column:1/-1}}.poster-login-page{isolation:isolate;background:radial-gradient(circle at 12% 12%,#f4b49133,#0000 28%),radial-gradient(circle at 88% 84%,#93ae8b33,#0000 30%),linear-gradient(145deg,#f8f0e3 0%,#f6eadb 52%,#efe5d5 100%);place-items:center;min-height:100svh;padding:clamp(18px,3vw,42px);display:grid;position:relative;overflow:auto}.poster-login-page:before,.poster-login-page:after{content:"";pointer-events:none;z-index:-1;border:1px solid #8a694e1f;border-radius:50%;position:fixed}.poster-login-page:before{width:260px;height:260px;top:-100px;left:-120px}.poster-login-page:after{width:360px;height:360px;bottom:-170px;right:-130px}.login-shell{background:#fffcf6c7;border:1px solid #ffffffeb;border-radius:clamp(26px,3vw,38px);grid-template-columns:minmax(0,1.55fr) minmax(390px,.72fr);width:min(1440px,100%);min-height:min(820px,100svh - clamp(36px,6vw,84px));animation:.56s cubic-bezier(.22,1,.36,1) both login-shell-enter;display:grid;overflow:hidden;box-shadow:0 34px 90px #533d3029,0 4px 18px #533d3014}.login-shell .poster-stage{background:radial-gradient(circle at 78% 24%,#ffc6772e,#0000 24%),linear-gradient(145deg,#fbf1df,#f4e4cb);justify-content:center;align-items:center;min-height:560px;display:flex;position:relative;inset:auto;overflow:hidden}.login-shell .poster-stage:after{content:"";pointer-events:none;border:1px solid #ffffff94;border-radius:30px;position:absolute;inset:18px}.login-shell .poster-image{object-fit:contain;object-position:center;width:100%;height:100%;display:block}.login-shell .poster-shade{background:linear-gradient(90deg,#0000 74%,#503d2f0d),linear-gradient(#ffffff0a,#0000 68%,#4332271f)}.login-shell .poster-privacy{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:2;background:#fffcf5d6;border:1px solid #ffffffe6;align-items:center;gap:9px;padding:10px 14px;display:inline-flex;top:30px;left:32px;right:auto;box-shadow:0 10px 28px #4b362a17}.poster-caption{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#4e3d35c7;letter-spacing:.16em;white-space:nowrap;z-index:2;background:#fffbf3b8;border:1px solid #ffffffc2;border-radius:999px;margin:0;padding:9px 17px;font-family:STKaiti,KaiTi,serif;font-size:14px;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}.login-shell .login-dock{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;background:radial-gradient(circle at 100% 0,#f8c4a724,#0000 28%),#fffcf7f7;border:0;border-left:1px solid #7e62521a;border-radius:0;flex-direction:column;align-items:stretch;gap:22px;width:auto;max-width:none;padding:clamp(34px,4vw,58px);display:flex;position:relative;bottom:auto;left:auto;transform:none}.login-brand{align-items:center;gap:13px;display:flex}.login-brand-mark{color:#fff;background:linear-gradient(145deg,#f3ae8e,#e98275);border:3px solid #ffffffd1;border-radius:17px;flex:none;justify-content:center;align-items:center;width:50px;height:50px;font-family:STKaiti,KaiTi,serif;font-size:25px;display:inline-flex;transform:rotate(-3deg);box-shadow:0 10px 24px #dc7e6a38}.login-brand>span:last-child{gap:2px;display:grid}.login-brand strong{color:#453733;letter-spacing:.08em;font-family:STKaiti,KaiTi,serif;font-size:19px}.login-brand small{color:#9c8880;letter-spacing:.13em;font-size:9px;font-weight:800}.login-shell .login-dock-copy{padding-top:clamp(4px,1vh,14px)}.login-welcome-note{color:#d57466;letter-spacing:.14em;margin-bottom:8px;font-size:11px;font-weight:800;display:inline-block}.login-shell .login-dock h1{color:#3f312e;letter-spacing:.04em;margin:0 0 11px;font-size:clamp(36px,4vw,48px);font-weight:700;line-height:1.08}.login-shell .login-dock-copy>p{color:#7d6c66;max-width:34em;margin:0;font-size:13px;line-height:1.75}.login-shell .mainland-login-form{grid-template-columns:1fr;align-items:stretch;gap:14px;display:grid}.login-field{gap:7px;display:grid}.login-field>span{color:#5c4c47;letter-spacing:.04em;justify-content:space-between;align-items:center;font-size:12px;font-weight:800;display:flex}.login-field>span small{color:#ad9c95;letter-spacing:0;font-size:9px;font-weight:600}.login-shell .mainland-login-form input{color:#453733;background:#fffefa;border:1px solid #e6d9ce;border-radius:14px;min-height:50px;padding:0 15px;font-size:13px;transition:border-color .16s,box-shadow .16s,background .16s;box-shadow:inset 0 1px 2px #4e372d08}.login-shell .mainland-login-form input::placeholder{color:#bdaca4}.login-shell .mainland-login-form input:focus-visible{background:#fff;border-color:#dd8a79;outline:none;box-shadow:0 0 0 4px #dd8a7924}.recovery-login{border-bottom:1px solid #7e62521c;padding-bottom:12px}.recovery-login summary{color:#917d75;cursor:pointer;font-size:11px;font-weight:700;list-style-position:inside;transition:color .16s}.recovery-login summary:hover{color:#d57466}.recovery-login .login-field{margin-top:12px}.login-shell .login-error{color:#a3424b;background:#fff0ed;border:1px solid #f2c6bd;border-radius:12px;grid-column:auto;margin:0;padding:10px 12px;font-size:11px;line-height:1.55}.login-shell .enter-preview{color:#fff;cursor:pointer;letter-spacing:.08em;background:linear-gradient(135deg,#e98a78,#df6f70);border:0;border-radius:15px;width:100%;min-height:52px;padding:0 22px;font-size:13px;box-shadow:0 14px 30px #da66653d,inset 0 1px #ffffff42}.login-shell .enter-preview span{font-size:17px;transition:transform .18s}.login-shell .enter-preview:hover span{transform:translate(4px)}.login-shell .login-dock-actions{place-items:stretch stretch;gap:12px;display:grid}.login-assurances{color:#8c7a73;text-align:center;border-top:1px solid #7e62521a;border-bottom:1px solid #7e62521a;grid-template-columns:repeat(3,1fr);gap:8px;padding:14px 0;font-size:10px;display:grid}.login-assurances span{white-space:nowrap;justify-content:center;align-items:center;gap:5px;display:inline-flex}.login-assurances i{color:#6f936d;background:#e7f0e4;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:8px;font-style:normal;display:inline-flex}.login-shell .poster-compliance-footer{color:#aa9790;margin-top:auto;padding-top:2px;font-size:10px;position:static;bottom:auto;left:auto;transform:none}@keyframes login-shell-enter{0%{opacity:0;transform:translateY(12px)scale(.992)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:1080px){.login-shell{grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr)}.login-shell .login-dock{padding:34px}.poster-caption{display:none}}@media (min-width:821px) and (max-height:800px){.poster-login-page{padding:16px}.login-shell{height:calc(100svh - 32px);min-height:0}.login-shell .poster-stage{min-height:0}.login-shell .login-dock{gap:12px;padding:22px 34px 18px;overflow-y:auto}.login-brand{gap:10px}.login-brand-mark{border-radius:13px;width:42px;height:42px;font-size:21px}.login-brand strong{font-size:17px}.login-shell .login-dock-copy{padding-top:2px}.login-welcome-note{margin-bottom:4px;font-size:10px}.login-shell .login-dock h1{margin-bottom:6px;font-size:36px}.login-shell .login-dock-copy>p{font-size:11px;line-height:1.55}.login-shell .mainland-login-form{gap:9px}.login-field{gap:4px}.login-shell .mainland-login-form input{min-height:43px}.recovery-login{padding-bottom:8px}.recovery-login .login-field{margin-top:8px}.login-shell .enter-preview{min-height:47px}.login-assurances{padding:10px 0}.login-shell .poster-compliance-footer{margin-top:0}}@media (max-width:820px){.poster-login-page{padding:18px;display:block}.login-shell{grid-template-columns:1fr;min-height:0}.login-shell .poster-stage{aspect-ratio:16/9;min-height:0}.login-shell .poster-image{object-fit:contain}.login-shell .poster-shade{background:linear-gradient(#0000 70%,#43322714)}.login-shell .login-dock{border-top:1px solid #7e62521a;border-left:0;padding:38px clamp(28px,8vw,64px)}.login-assurances{margin-top:2px}}@media (max-width:520px){.poster-login-page{padding:10px}.login-shell{border-radius:24px}.login-shell .poster-stage:after{border-radius:18px;inset:8px}.login-shell .poster-privacy{padding:7px 10px;font-size:9px;top:14px;left:14px}.login-shell .poster-privacy .status-dot{width:6px;height:6px;box-shadow:0 0 0 3px #a8c5af2e}.login-shell .login-dock{padding:30px 22px calc(24px + env(safe-area-inset-bottom));gap:19px}.login-brand-mark{border-radius:14px;width:44px;height:44px;font-size:22px}.login-shell .login-dock h1{font-size:38px}.login-assurances{gap:4px;font-size:9px}}@media (prefers-reduced-motion:reduce){.login-shell{animation:none}}.app-shell{--cream:#e8f1eb;--cream-deep:#dce9e2;--paper:#fbfdf8;--ink:#18343a;--muted:#617477;--line:#184a4f24;--peach:#f1c977;--coral:#2f7d78;--rose:#e9a78e;--blue:#82bdd8;--blue-deep:#2f6f91;--sage:#86ad8a;--butter:#f5d887;--lilac:#9faecc;--shadow:0 28px 74px #19424329;--soft-shadow:0 18px 44px #1846471f, 0 2px 8px #1846470d;isolation:isolate;background:linear-gradient(110deg,#e3f1ed5c,#d7e8e00f 52%,#113e3a1f),url(/site-art/meadow-sky-v1.webp) 50%/cover no-repeat;position:relative}.app-shell:before{content:"";pointer-events:none;z-index:-1;background:linear-gradient(#ecf7f614,#11403a33),radial-gradient(circle at 73% 28%,#ffe8ab2b,#0000 23%);position:absolute;inset:0}.app-shell .side-nav{-webkit-backdrop-filter:blur(26px)saturate(1.16);backdrop-filter:blur(26px)saturate(1.16);z-index:30;background:linear-gradient(#f8fdfae0,#e7f2eac7);border-right:1px solid #ffffffad;box-shadow:12px 0 38px #1944421a}.app-shell .brand-lockup strong{color:#1c5357;letter-spacing:.12em}.app-shell .brand-lockup small{color:#728b89}.app-shell .brand-mark{background:linear-gradient(150deg,#ffffff57,#0000 44%),linear-gradient(145deg,#5fa7b5,#397c73 58%,#305f58);border-color:#ffffffc7;box-shadow:0 12px 26px #2664653d,inset 0 1px #ffffff52}.app-shell .nav-list{gap:9px}.app-shell .nav-item{color:#627979;border:1px solid #0000;border-radius:16px;padding:13px 15px}.app-shell .nav-item span{background:#ffffff94;border:1px solid #265e5e17;border-radius:11px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.app-shell .nav-item:hover{color:#286c6e;background:#ffffff85;border-color:#ffffffa3}.app-shell .nav-item.is-active{color:#20676b;background:linear-gradient(135deg,#ffffffdb,#e8f4eebf);border-color:#ffffffd1;box-shadow:0 12px 25px #2556521f,inset 3px 0 #e3b85d}.app-shell .nav-item.is-active span{color:#fff;background:linear-gradient(145deg,#79b7c4,#4d8c82);border-color:#ffffff9e;box-shadow:0 6px 14px #2b646233}.app-shell .side-note{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#eef8f0b3;border-color:#53856233;box-shadow:inset 0 1px #ffffffad}.app-shell .status-dot{background:#77a97e;box-shadow:0 0 0 5px #699e7124}.app-shell .app-stage{z-index:1;position:relative}.app-shell .top-bar{-webkit-backdrop-filter:blur(22px)saturate(1.12);backdrop-filter:blur(22px)saturate(1.12);z-index:24;background:linear-gradient(#eff8f5c7,#eff8f561);border-bottom:1px solid #ffffff70;min-height:78px;padding-bottom:14px;position:sticky;top:0}.app-shell .top-bar .soft-label{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#446f70;background:#ffffff85;border-color:#ffffffb3}.app-shell .account-summary span{color:#6a8180}.app-shell .account-summary strong{color:#244f52}.app-shell .avatar{color:#644b22;background:linear-gradient(145deg,#ffffff59,#0000 48%),linear-gradient(145deg,#f2cf82,#d9a957);box-shadow:0 9px 22px #845e232e}.app-shell .signout-link{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#537171;background:#ffffff7a;border-color:#ffffffb8}.app-shell .signout-link:hover{color:#286f70;background:#ffffffc7;border-color:#2f7d7859}.app-shell .page-content{max-width:1400px;padding-top:34px}.app-shell .welcome-panel,.app-shell .quick-grid article,.app-shell .module-card,.app-shell .roadmap-card,.app-shell .security-note,.app-shell .page-intro,.app-shell .filter-row,.app-shell .view-switch,.app-shell .photo-placeholder,.app-shell .real-photo-card,.app-shell .empty-guidance,.app-shell .timeline-card,.app-shell .memory-composer,.app-shell .admin-card,.app-shell .member-table,.app-shell .play-tabs,.app-shell .play-hero,.app-shell .play-panel,.app-shell .farm-warehouse,.app-shell .plant-dialog,.app-shell .workspace-message{-webkit-backdrop-filter:blur(24px)saturate(1.08);backdrop-filter:blur(24px)saturate(1.08);background:linear-gradient(145deg,#ffffffe0,#f2f9f3b8);border-color:#ffffffb8;box-shadow:0 22px 54px #18403e21,inset 0 1px #ffffffd6}.app-shell .welcome-panel{background:linear-gradient(110deg,#fbfdf6f0,#f0f8f0bd 58%,#d6ebe68a);border-radius:34px;min-height:360px}.app-shell .welcome-panel:before{content:"";pointer-events:none;border:1px solid #ffffff94;border-radius:27px;position:absolute;inset:9px}.app-shell .welcome-copy h1,.app-shell .page-intro h1,.app-shell .section-heading h2,.app-shell .timeline-card h2,.app-shell .play-panel h2{color:#173f43;text-shadow:0 2px #ffffff80}.app-shell .eyebrow{color:#2c7976}.app-shell .soft-label{color:#5c7877;background:#ffffff8f;border-color:#ffffffb8}.app-shell .home-illustration{filter:saturate(.82);opacity:.9}.app-shell .mini-sun{background:#f4d27c;box-shadow:0 0 44px #f5cd6c57}.app-shell .hill-back{background:#a9c9bb}.app-shell .hill-front{background:#6ea28a}.app-shell .quick-grid{gap:18px}.app-shell .quick-grid article{border-radius:20px;min-height:104px;padding:20px 22px;transition:transform .18s,box-shadow .18s}.app-shell .quick-grid article:hover{transform:translateY(-3px);box-shadow:0 22px 48px #18444126}.app-shell .quick-grid strong{color:#315f61}.app-shell .section-heading{-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);background:#f7fcf7ad;border:1px solid #ffffffa8;border-radius:22px;padding:18px 22px;box-shadow:0 14px 34px #1c454317}.app-shell .roadmap-card .section-heading{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.app-shell .module-grid{gap:20px}.app-shell .module-card{border-radius:26px;min-height:264px;padding:24px}.app-shell .module-card:before{content:"";opacity:.72;background:linear-gradient(90deg,#5f9f9c,#e8c16d);border-radius:999px;width:54px;height:4px;position:absolute;top:0;left:24px}.app-shell .module-card:hover{border-color:#fffffff0;transform:translateY(-6px);box-shadow:0 30px 62px #18403e2e}.app-shell .module-icon{box-shadow:0 9px 20px #2b5f5b24,inset 0 1px #ffffff80}.app-shell .module-status{color:#547466;background:#ebf5edcc}.app-shell .card-link,.app-shell .text-action{color:#2d7372}.app-shell .roadmap-card{border-radius:30px}.app-shell .roadmap-list li.is-current{border-color:#d9b15d}.app-shell .roadmap-list li.is-current:before{background:#dfb75f;box-shadow:0 0 0 4px #e0b55b29}.app-shell .roadmap-list li.is-complete{border-color:#72a680}.app-shell .roadmap-list li.is-complete:before{background:#72a680}.app-shell .security-note{background:linear-gradient(120deg,#e2f2eee0,#f5f9edbd);border-color:#ffffffb8}.app-shell .security-mark{color:#fff;background:linear-gradient(145deg,#85bdc5,#5c958a);box-shadow:0 8px 18px #2f706d2e}.app-shell .page-intro{border-radius:28px;margin-bottom:26px;padding:clamp(24px,4vw,36px)}.app-shell .filter-row,.app-shell .view-switch,.app-shell .play-tabs{border-radius:16px;padding:6px}.app-shell .filter-row button.is-active,.app-shell .view-switch button.is-active,.app-shell .play-tabs a.is-active{color:#236d6e;background:linear-gradient(135deg,#eaf5f0f5,#fffbedeb);box-shadow:0 8px 18px #2a59551f}.app-shell .real-photo-card,.app-shell .photo-placeholder{border-color:#ffffffd6;border-radius:24px;box-shadow:0 20px 44px #183f3e21}.app-shell .timeline-item:not(:last-child):before{background:linear-gradient(#7ca7a1,#fff3)}.app-shell .timeline-dot{border-color:#ffffffd6;box-shadow:0 12px 30px #19454324}.app-shell .timeline-card{border-radius:24px}.app-shell .primary-action,.app-shell .upload-action{background:linear-gradient(145deg,#ffffff1f,#0000 48%),linear-gradient(135deg,#3b8a85,#286e6b);border:1px solid #ffffff47;border-radius:14px;box-shadow:0 13px 26px #2266623d,inset 0 1px #ffffff3d}.app-shell .primary-action:hover,.app-shell .upload-action:hover{box-shadow:0 17px 32px #2266624d}.app-shell .secondary-action{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#326f6d;background:#ffffff8f;border-color:#2b6d6a38}.app-shell .secondary-action:hover{color:#205e5e;background:#ffffffd1;border-color:#2b6d6a75}.app-shell .play-hero{background:radial-gradient(circle at 83% 20%,#f5d58833,#0000 22%),linear-gradient(125deg,#ffffffe6,#e4f2edb8);border-radius:30px}.app-shell .games-hero,.app-shell .farm-hero{background:radial-gradient(circle at 83% 20%,#f5d58838,#0000 22%),linear-gradient(125deg,#ffffffe6,#e4f2edb8)}.app-shell .play-balance{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdf1d1;border-color:#e1b75942;box-shadow:0 14px 32px #7e5e221f}.app-shell .play-panel{border-radius:26px}.app-shell .memory-game{background:radial-gradient(circle at 12% 12%,#7db9c326 0 4px,#0000 5px) 0 0/58px 58px,radial-gradient(circle at 88% 22%,#e6b96529 0 5px,#0000 6px) 0 0/68px 68px,linear-gradient(155deg,#ffffffe6,#e9f5efd1)}.app-shell .memory-grid button{background:radial-gradient(circle at 74% 18%,#ffffff5c 0 7%,#0000 7.5%),linear-gradient(145deg,#70aeb9,#4d8881);border-color:#ffffffd1;box-shadow:0 14px 25px #1c514f38,inset 0 1px #fff6}.app-shell .memory-grid button:hover:not(:disabled){box-shadow:0 20px 30px #1c514f45}.app-shell .memory-grid button.is-open{background:#fffaf0;border-color:#fffffff0}.app-shell .memory-grid button.is-matched{background:#edf7e9;border-color:#b9d7b9}.app-shell .game-stats>span,.app-shell .player-chips>span{background:#e9f4efd6}.app-shell .game-rule-card li span{color:#2d7472;background:#e1f0ed}.app-shell .coming-game{background:linear-gradient(145deg,#fffbeee6,#f0f6e9c7)}.app-shell .admin-card input,.app-shell .admin-card select,.app-shell .memory-composer input,.app-shell .memory-composer textarea{color:#244649;background:#ffffffb8;border-color:#2a5e5c2e}.app-shell .workspace-message{color:#466b69}.app-shell .app-compliance-footer{color:#f0faf6eb;text-shadow:0 1px 8px #113936b8}.app-shell .app-compliance-footer a:hover{color:#fff1bd}.app-shell .mobile-nav{-webkit-backdrop-filter:blur(24px)saturate(1.16);backdrop-filter:blur(24px)saturate(1.16);background:#f2faf5e0;border-top-color:#ffffffb3;box-shadow:0 -10px 30px #1945421a}.app-shell .mobile-nav a.is-active{color:#216c6e}@media (max-width:820px){.app-shell{background:linear-gradient(#e6f2ef4d,#17443e2e),url(/site-art/meadow-sky-v1.webp) 66%/cover no-repeat}.app-shell .top-bar{min-height:68px}.app-shell .page-content{padding-top:22px}.app-shell .welcome-panel{min-height:0}.app-shell .page-intro{padding:22px}}@media (max-width:560px){.app-shell .top-bar{background:#eff8f4d9}.app-shell .account-summary{display:none}.app-shell .welcome-panel,.app-shell .roadmap-card,.app-shell .page-intro,.app-shell .play-hero,.app-shell .play-panel,.app-shell .farm-warehouse{border-radius:22px}.app-shell .section-heading{border-radius:18px;padding:15px 17px}.app-shell .module-card{min-height:235px}}@media (prefers-reduced-transparency:reduce){.app-shell .side-nav,.app-shell .top-bar,.app-shell .welcome-panel,.app-shell .quick-grid article,.app-shell .module-card,.app-shell .roadmap-card,.app-shell .security-note,.app-shell .page-intro,.app-shell .play-panel{-webkit-backdrop-filter:none;backdrop-filter:none;background:#f7fbf6}}.journey-hero{background:radial-gradient(circle at 85% 20%,#ffe79d85,#0000 28%),linear-gradient(125deg,#f6fdfaf0,#dcf0ecd4);border:1px solid #ffffffc2;border-radius:30px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:28px;margin-bottom:18px;padding:34px 38px;display:grid;position:relative;overflow:hidden;box-shadow:0 22px 52px #1c4c4724}.journey-hero:after{content:"";border:1px solid #fff9;border-radius:50%;width:190px;height:110px;position:absolute;bottom:-45px;right:8%;transform:rotate(-11deg)}.journey-hero h1{color:#245d5b;letter-spacing:.08em;margin:4px 0 8px;font-family:STKaiti,KaiTi,serif;font-size:clamp(42px,5vw,68px);font-weight:600;line-height:1}.journey-hero p{color:#567673;letter-spacing:.06em;margin:0;font-size:16px}.journey-stats{z-index:1;gap:10px;display:flex}.journey-stats span{color:#65807c;text-align:center;background:#ffffff7a;border:1px solid #ffffffb8;border-radius:18px;min-width:78px;padding:12px 13px}.journey-stats strong{color:#2b6663;font-size:22px;display:block}.journey-primary,.journey-empty-city button,.journey-upload-drop label,.journey-dialog-actions .is-primary{z-index:1;color:#fff;cursor:pointer;font:inherit;background:linear-gradient(135deg,#ec8a7c,#dd6871);border:0;border-radius:999px;font-weight:700;box-shadow:0 12px 24px #bf535b38}.journey-primary{white-space:nowrap;padding:14px 21px}.journey-primary:hover,.journey-empty-city button:hover,.journey-upload-drop label:hover,.journey-dialog-actions .is-primary:hover:not(:disabled){filter:saturate(1.08)brightness(1.03);transform:translateY(-1px)}.journey-tabs{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f7fcf9b8;border:1px solid #ffffffb8;border-radius:999px;width:fit-content;margin:0 0 16px;padding:5px;display:flex;box-shadow:0 8px 24px #24514c14}.journey-tabs button{color:#65807d;cursor:pointer;font:inherit;background:0 0;border:0;border-radius:999px;padding:10px 18px}.journey-tabs button.is-active{color:#2a6663;background:#fff;font-weight:700;box-shadow:0 6px 18px #2a544f1f}.journey-message{background:#ffffffa3;border:1px solid #ffffffb3;border-radius:16px;margin:0 0 14px;padding:11px 16px}.journey-map-layout{grid-template-columns:minmax(0,1fr) 310px;gap:18px;min-height:610px;margin-bottom:22px;display:grid}.journey-map-frame,.journey-city-panel,.journey-album-view,.journey-drafts{border:1px solid #ffffffbf;box-shadow:0 20px 48px #1d4a4621}.journey-map-frame{background:linear-gradient(145deg,#d8ece9,#f5f2d9);border-radius:30px;min-width:0;position:relative;overflow:hidden}.journey-map-canvas,.journey-map-fallback{position:absolute;inset:0}.journey-map-canvas.is-hidden{visibility:hidden}.journey-map-legend{z-index:20;color:#426c68;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd6;border:1px solid #ffffffc7;border-radius:999px;padding:9px 13px;font-size:13px;position:absolute;top:20px;left:20px;box-shadow:0 8px 22px #2248441f}.journey-map-legend span{color:#e56672}.journey-map-fallback{background:radial-gradient(circle at 70% 35%,#fff1bbd6,#0000 24%),radial-gradient(circle at 25% 75%,#74b1ac45,#0000 30%),linear-gradient(145deg,#d8eeed,#eef6df 72%,#f9e6c6);overflow:hidden}.journey-map-fallback:before,.journey-map-fallback:after{content:"";filter:blur(1px);background:#4a8e821c;border-radius:48% 52% 55% 45%;position:absolute;transform:rotate(-9deg)}.journey-map-fallback:before{clip-path:polygon(8% 26%,25% 10%,51% 18%,71% 7%,93% 26%,81% 47%,92% 65%,72% 78%,49% 94%,30% 79%,11% 83%,17% 56%);inset:15% 13% 13% 11%}.journey-map-fallback:after{background:0 0;border:1px solid #ffffff57;inset:24% 24% 22% 20%}.journey-fallback-copy{z-index:2;color:#3f726f;text-align:center;width:min(420px,60%);position:absolute;top:80px;left:50%;transform:translate(-50%)}.journey-fallback-copy span{color:#7b9993;letter-spacing:.24em;margin-bottom:7px;font-size:12px;display:block}.journey-fallback-copy strong{font-family:STKaiti,KaiTi,serif;font-size:clamp(20px,3vw,31px);font-weight:500}.journey-fallback-orbit{z-index:1;border:1px dashed #ffffff80;border-radius:50%;position:absolute}.journey-fallback-orbit.orbit-one{inset:20% 10% 18%;transform:rotate(-12deg)}.journey-fallback-orbit.orbit-two{inset:30% 22% 28%;transform:rotate(18deg)}.journey-fallback-pin{z-index:8;color:#476d69;cursor:pointer;font:inherit;background:#ffffffe6;border:1px solid #ffffffdb;border-radius:999px;grid-template-columns:auto auto;align-items:center;gap:0 6px;padding:6px 10px 6px 7px;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 8px 19px #3258512e}.journey-fallback-pin:hover,.journey-fallback-pin.is-selected{z-index:10;transform:translate(-50%,-50%)scale(1.08);box-shadow:0 12px 26px #b449543d}.journey-pin-heart{color:#e96570;font-size:18px}.journey-pin-name{white-space:nowrap;font-size:13px;font-weight:700}.journey-map-service-note{z-index:3;color:#315b55a3;margin:0;font-size:11px;position:absolute;bottom:10px;right:16px}.journey-map-marker{color:#436966;cursor:pointer;min-width:max-content;font:inherit;background:#fffffff0;border:2px solid #ffffffeb;border-radius:999px;grid-template-columns:auto auto;align-items:center;gap:0 6px;padding:5px 10px 5px 6px;transition:all .18s;display:grid;position:relative;box-shadow:0 8px 20px #324e483d}.journey-map-marker:after{content:"";background:#fff;border-bottom:2px solid #ffffffeb;border-right:2px solid #ffffffeb;width:10px;height:10px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)rotate(45deg)}.journey-map-marker:hover,.journey-map-marker.is-selected{transform:translateY(-3px)scale(1.07);box-shadow:0 13px 28px #bd4e5842}.journey-map-marker img{object-fit:cover;border-radius:50%;grid-row:1/3;width:34px;height:34px}.journey-marker-heart{color:#e6616d;grid-row:1/3;font-size:20px}.journey-map-marker img+.journey-marker-heart{display:none}.journey-marker-name{font-size:13px;font-weight:800}.journey-map-marker small{opacity:.68;font-size:10px}.journey-illustrated-map{isolation:isolate;background:radial-gradient(circle at 74% 18%,#fff4c4eb,#0000 22%),linear-gradient(165deg,#cae9ec 0%,#e9f4e9 56%,#f9e9c8 100%);min-height:610px}.journey-map-sky,.journey-china-stage,.journey-map-markers{position:absolute;inset:0}.journey-map-sky{z-index:0;pointer-events:none;overflow:hidden}.journey-map-sky:before,.journey-map-sky:after{content:"";opacity:.42;border-radius:50%;position:absolute}.journey-map-sky:before{border:1px solid #ffffffc7;width:360px;height:360px;top:-145px;right:-120px;box-shadow:0 0 0 34px #ffffff1a,0 0 0 70px #ffffff12}.journey-map-sky:after{background:#65a59433;width:190px;height:190px;bottom:-88px;left:-80px;box-shadow:120px -22px #7cb2981c}.journey-map-sky .cloud{filter:blur(.2px);background:#ffffff7a;border-radius:999px;width:94px;height:26px;position:absolute}.journey-map-sky .cloud:before,.journey-map-sky .cloud:after{content:"";background:inherit;border-radius:50%;position:absolute;bottom:5px}.journey-map-sky .cloud:before{width:39px;height:39px;left:17px}.journey-map-sky .cloud:after{width:49px;height:49px;right:14px}.journey-map-sky .cloud-one{top:98px;left:7%;transform:scale(.74)}.journey-map-sky .cloud-two{opacity:.72;top:128px;right:5%;transform:scale(.56)}.journey-map-sky .map-spark{color:#ffffffdb;font-style:normal;position:absolute}.journey-map-sky .spark-one{font-size:19px;top:86px;right:24%}.journey-map-sky .spark-two{font-size:27px;bottom:14%;left:13%}.journey-map-title{z-index:4;color:#477770;text-align:center;pointer-events:none;gap:2px;display:grid;position:absolute;top:19px;left:50%;transform:translate(-50%)}.journey-map-title span{letter-spacing:.25em;opacity:.58;font-size:9px;font-weight:800}.journey-map-title strong{white-space:nowrap;letter-spacing:.08em;font-family:STKaiti,KaiTi,serif;font-size:clamp(18px,2.25vw,27px);font-weight:600}.journey-china-stage{z-index:1;aspect-ratio:1000/680;top:52%;left:50%;width:calc(100% - 30px);height:auto;inset:auto;transform:translate(-50%,-50%)}.journey-china-shape{width:100%;height:100%;display:block;overflow:visible}.journey-land-shadow{fill:#39685b29;filter:blur(7px);transform:translateY(10px)}.journey-land{stroke:#fffffff5;stroke-linejoin:round;stroke-width:7px}.journey-coastline{fill:none;stroke:#507c6f73;stroke-dasharray:2 5;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.1px}.journey-map-terrain path:first-child{fill:#66a37b29}.journey-map-terrain path:nth-child(2){fill:none;stroke:#ffffff40;stroke-width:29px}.journey-map-terrain circle:first-of-type{fill:#f8c6842e}.journey-map-terrain circle:last-of-type{fill:#73b1911f}.journey-map-markers{z-index:6}.journey-memory-pin{color:#426b66;cursor:pointer;width:0;height:0;font:inherit;background:0 0;border:0;outline:none;padding:0;position:absolute}.journey-pin-anchor{z-index:2;color:#fff;background:#e76f78;border:3px solid #fff;border-radius:50% 50% 50% 8px;place-items:center;width:21px;height:21px;display:grid;position:absolute;top:0;left:0;transform:translate(-50%,-50%)rotate(-45deg);box-shadow:0 5px 12px #8b424540}.journey-pin-anchor i{font-size:9px;font-style:normal;rotate:45deg}.journey-pin-postcard{z-index:1;transform-origin:bottom;background:#fffdf4f5;border:2px solid #fffffff5;border-radius:13px 13px 13px 5px;grid-template-columns:40px auto;align-items:center;gap:8px;min-width:max-content;padding:5px 10px 5px 5px;transition:transform .18s,box-shadow .18s;display:grid;position:absolute;bottom:17px;left:0;transform:translate(-50%)rotate(-1deg);box-shadow:0 10px 24px #34574e33}.journey-memory-pin.is-left .journey-pin-postcard{transform:translate(-82%)rotate(1.4deg)}.journey-memory-pin.is-right .journey-pin-postcard{transform:translate(-18%)rotate(-1.4deg)}.journey-pin-postcard>i,.journey-pin-postcard>img{border-radius:9px;grid-row:1;width:40px;height:40px}.journey-pin-postcard>i{color:#fff;background:linear-gradient(145deg,#f6d38f,#ef9b9d);place-items:center;font-size:18px;font-style:normal;display:grid}.journey-pin-postcard>img{object-fit:cover;display:block}.journey-pin-postcard>span{text-align:left;gap:1px;display:grid}.journey-pin-postcard strong{font-size:12px;line-height:1.2}.journey-pin-postcard small{color:#8a9d95;white-space:nowrap;font-size:9px}.journey-memory-pin:hover,.journey-memory-pin:focus-visible,.journey-memory-pin.is-selected{z-index:20}.journey-memory-pin:hover .journey-pin-postcard,.journey-memory-pin:focus-visible .journey-pin-postcard,.journey-memory-pin.is-selected .journey-pin-postcard{transform:translate(-50%)translateY(-5px)rotate(0)scale(1.05);box-shadow:0 15px 30px #b24d533d}.journey-memory-pin.is-selected .journey-pin-postcard{border-color:#f09399}.journey-memory-pin.is-selected .journey-pin-anchor{animation:1.8s ease-out infinite journey-pin-pulse}@keyframes journey-pin-pulse{0%,to{box-shadow:0 5px 12px #8b424540,0 0 #e6677252}55%{box-shadow:0 5px 12px #8b424540,0 0 0 10px #e6677200}}.journey-south-sea{z-index:5;color:#416a60b8;text-align:center;background:#ffffff52;border:1px solid #49756a47;border-radius:12px;width:74px;padding:6px 5px 5px;position:absolute;bottom:7%;right:4.8%}.journey-south-canvas{aspect-ratio:120/150;width:100%;position:relative}.journey-south-sea button{z-index:2;color:#fff;cursor:pointer;background:#e7747d;border:2px solid #fff;border-radius:50%;place-items:center;width:15px;height:15px;padding:0;font-size:7px;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 4px 9px #7e3c413d}.journey-south-sea button.is-selected{outline:3px solid #e7747d3b}.journey-south-sea svg{width:100%;height:100%;display:block}.journey-south-sea path{fill:#edcf9a94;stroke:#4c7b6db3;stroke-width:.8px}.journey-south-sea span{letter-spacing:.08em;font-size:8px}.journey-illustrated-map .journey-map-legend{z-index:12;background:#fffdf5d1;top:20px;left:auto;right:20px}.journey-illustrated-map .journey-map-service-note{z-index:12;color:#3a625a9e;bottom:13px;right:20px}.journey-city-panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fbfdf8e0;border-radius:30px;flex-direction:column;padding:28px 24px;display:flex;overflow:hidden}.journey-panel-kicker{color:#e36d76;letter-spacing:.12em;font-size:12px;font-weight:700}.journey-city-panel h2{color:#2d625f;margin:8px 0 4px;font-family:STKaiti,KaiTi,serif;font-size:42px;font-weight:600}.journey-city-panel>p{color:#78908d;margin:0 0 22px;font-size:13px}.journey-city-albums{gap:12px;display:grid;overflow-y:auto}.journey-city-albums button{color:#426864;cursor:pointer;text-align:left;background:#ffffffc2;border:1px solid #3f706a1f;border-radius:19px;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:12px;padding:8px;display:grid}.journey-city-albums button:hover{border-color:#e26b7459;transform:translateY(-1px)}.journey-city-albums img,.journey-cover-placeholder{object-fit:cover;border-radius:14px;width:76px;height:62px}.journey-cover-placeholder{color:#e26a74;background:linear-gradient(145deg,#d9eeea,#fff0cb);place-items:center;font-size:26px;display:grid}.journey-city-albums span span{display:block}.journey-city-albums strong,.journey-city-albums small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.journey-city-albums small{color:#8a9d99;margin-top:5px;font-size:11px}.journey-empty-city{text-align:center;place-items:center;margin:auto 0;display:grid}.journey-empty-city>span{color:#e9787f;font-size:54px}.journey-empty-city h2{margin:8px 0;font-family:inherit;font-size:22px}.journey-empty-city p{max-width:240px;line-height:1.8}.journey-empty-city button{margin-top:12px;padding:11px 18px}.journey-preview-note{color:#567672;background:#dbeee9b3;border-radius:18px;gap:7px;margin-top:10px;padding:18px;line-height:1.65;display:grid}.journey-drafts{background:#fafcf7d6;border-radius:26px;grid-template-columns:220px minmax(0,1fr);gap:24px;margin:0 0 22px;padding:24px;display:grid}.journey-drafts h2{color:#386965;margin:4px 0 0;font-size:18px}.journey-draft-list{gap:12px;display:flex;overflow-x:auto}.journey-draft-list button{color:#4c716d;cursor:pointer;text-align:left;background:#fff;border:1px dashed #40726c47;border-radius:17px;flex:0 0 180px;gap:5px;padding:14px;display:grid}.journey-draft-list button>span{color:#d57478;font-size:11px}.journey-draft-list small{color:#8b9d99}.journey-album-view{background:#fbfdf8e8;border-radius:28px;margin-bottom:22px;padding:28px}.journey-album-view header{justify-content:space-between;gap:24px;margin-bottom:20px;display:flex}.journey-album-view h2{color:#315f5c;margin:5px 0;font-size:28px}.journey-album-view p{color:#758e8a;margin:0}.journey-album-actions{align-items:flex-start;gap:7px;display:flex}.journey-album-actions button{color:#4d716d;cursor:pointer;background:#fff;border:1px solid #39686329;border-radius:999px;padding:8px 12px}.journey-album-actions .is-danger{color:#c95e67}.journey-album-grid{columns:3 220px;column-gap:12px}.journey-album-grid figure{break-inside:avoid;background:#e7efeb;border-radius:18px;margin:0 0 12px;overflow:hidden}.journey-album-grid img{width:100%;height:auto;display:block}.journey-photo-grid{margin-top:0}.journey-trash-toolbar{background:#fffcf9e6;border:1px solid #de74792e;border-radius:20px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;padding:16px 18px;display:flex;box-shadow:0 10px 28px #47605912}.journey-trash-toolbar div{gap:4px;display:grid}.journey-trash-toolbar strong{color:#456f6b;font-size:16px}.journey-trash-toolbar span{color:#82928f;font-size:12px}.journey-trash-toolbar button{color:#bd5962;cursor:pointer;background:#fff5f3;border:1px solid #c95e6747;border-radius:999px;flex:none;padding:10px 16px;font-weight:700}.journey-trash-toolbar button:hover:not(:disabled){background:#ffe8e5}.journey-trash-toolbar button:disabled{cursor:not-allowed;opacity:.46}.journey-dialog-backdrop{z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#19343175;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.journey-dialog{background:radial-gradient(circle at 92% 5%,#ffe6a36b,#0000 24%),#f8fbf7;border:1px solid #ffffffdb;border-radius:30px;width:min(780px,100%);max-height:min(850px,100vh - 40px);padding:32px;position:relative;overflow-y:auto;box-shadow:0 32px 90px #1336324d}.journey-dialog-close{color:#67827f;cursor:pointer;background:#ffffffc2;border:1px solid #3a686324;border-radius:50%;width:38px;height:38px;font-size:24px;position:absolute;top:18px;right:18px}.journey-dialog-heading>span{color:#df737a;letter-spacing:.14em;font-size:12px;font-weight:700}.journey-dialog-heading h2{color:#2d615e;margin:7px 0 22px;font-size:30px}.journey-steps{grid-template-columns:repeat(4,1fr);gap:0;margin:0 0 28px;padding:0;list-style:none;display:grid}.journey-steps li{color:#9aaba8;place-items:center;gap:5px;font-size:11px;display:grid;position:relative}.journey-steps li:not(:last-child):after{content:"";background:#dde8e4;height:2px;position:absolute;top:14px;left:calc(50% + 18px);right:calc(18px - 50%)}.journey-steps li.is-active:not(:last-child):after{background:#91b9b2}.journey-steps span{z-index:1;color:#869894;background:#e4ece9;border-radius:50%;place-items:center;width:29px;height:29px;font-weight:800;display:grid;position:relative}.journey-steps li.is-active{color:#3f746e}.journey-steps li.is-active span{color:#fff;background:#4f8e87;box-shadow:0 5px 12px #417c7438}.journey-form{gap:18px;display:grid}.journey-form label{color:#506f6c;gap:8px;font-size:13px;font-weight:700;display:grid}.journey-form input,.journey-form textarea{color:#345a57;width:100%;font:inherit;background:#ffffffdb;border:1px solid #3869632b;border-radius:14px;outline:none;padding:13px 15px}.journey-form input:focus,.journey-form textarea:focus{border-color:#78ada6;box-shadow:0 0 0 4px #5e9b931f}.journey-form textarea{resize:vertical;min-height:118px}.journey-date-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.journey-city-suggestions{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.journey-city-suggestions button{color:#4f716d;cursor:pointer;text-align:left;background:#ffffffbf;border:1px solid #38696321;border-radius:16px;grid-template-columns:auto 1fr;align-items:center;gap:1px 7px;padding:12px;display:grid}.journey-city-suggestions button>span{color:#e66b75;grid-row:1/3}.journey-city-suggestions button small{color:#91a19e}.journey-city-suggestions button:hover,.journey-city-suggestions button.is-selected{background:#fff;border-color:#dc7c82;box-shadow:0 7px 18px #ad585d1f}.journey-dialog-actions{border-top:1px solid #3a68631c;justify-content:space-between;align-items:center;gap:10px;margin-top:23px;padding-top:18px;display:flex}.journey-dialog-actions button{color:#4c716d;cursor:pointer;font:inherit;background:#fff;border:1px solid #38686226;border-radius:999px;padding:11px 17px;font-weight:700}.journey-dialog-actions .is-primary{border:0;padding-inline:20px}.journey-dialog-actions button:disabled,.journey-upload-drop label.is-busy{cursor:wait;opacity:.58}.journey-upload-drop{text-align:center;background:linear-gradient(145deg,#e0f1eda1,#fff8e1b3);border:2px dashed #48847c4d;border-radius:24px;place-items:center;min-height:260px;padding:28px;display:grid}.journey-upload-drop>span{color:#e47a7d;font-size:42px}.journey-upload-drop h3{color:#376965;margin:5px 0;font-size:22px}.journey-upload-drop p{color:#728b87;max-width:480px;margin:0 0 18px;line-height:1.7}.journey-upload-drop label{padding:11px 22px;position:relative;overflow:hidden}.journey-upload-drop input{opacity:0;width:1px;height:1px;position:absolute}.journey-cover-step>p{color:#667f7b;line-height:1.7}.journey-local-previews{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px;display:grid}.journey-local-previews figure{background:#e6efeb;border:2px solid #ffffffdb;border-radius:17px;margin:0;position:relative;overflow:hidden;box-shadow:0 8px 20px #2d534d1a}.journey-local-previews img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.journey-local-previews figcaption{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1f4541c7;border-radius:11px;gap:1px;padding:6px 8px;display:grid;position:absolute;inset:auto 5px 5px}.journey-local-previews strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.journey-local-previews span{color:#ffffffc7;font-size:9px}.journey-local-previews figure.is-uploading{border-color:#e5ac72}.journey-local-previews figure.is-done{border-color:#78b69d}.journey-local-previews figure.is-error{border-color:#de7479}.journey-mini-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px;display:grid}.journey-mini-grid button{aspect-ratio:1;color:#718b86;cursor:pointer;background:#e6efeb;border:3px solid #0000;border-radius:17px;padding:0;position:relative;overflow:hidden}.journey-mini-grid button.is-selected{border-color:#e77a80;box-shadow:0 0 0 3px #e77a8024}.journey-mini-grid img{object-fit:cover;width:100%;height:100%}.journey-mini-grid button>span{place-items:center;width:100%;height:100%;padding:12px;display:grid}.journey-mini-grid small{color:#fff;background:#e66e76;border-radius:999px;padding:4px 8px;position:absolute;bottom:7px;right:7px}@media (max-width:980px){.journey-hero{grid-template-columns:1fr auto}.journey-stats{grid-area:2/1/auto/-1}.journey-map-layout{grid-template-columns:1fr;min-height:0}.journey-map-frame{min-height:560px}.journey-illustrated-map{min-height:540px}.journey-city-panel{min-height:220px}.journey-city-albums{grid-template-columns:repeat(2,1fr)}.journey-drafts{grid-template-columns:1fr}}@media (max-width:640px){.journey-hero{border-radius:24px;flex-direction:column;align-items:stretch;gap:18px;padding:24px;display:flex}.journey-hero h1{font-size:48px}.journey-stats{gap:6px}.journey-stats span{flex:1;min-width:0;padding:9px 6px;font-size:11px}.journey-stats strong{font-size:19px}.journey-primary,.journey-tabs{width:100%}.journey-tabs button{flex:1;padding-inline:8px}.journey-trash-toolbar{flex-direction:column;align-items:stretch}.journey-trash-toolbar button{width:100%}.journey-map-frame{border-radius:24px;min-height:480px}.journey-illustrated-map{min-height:410px}.journey-map-title{text-align:left;align-items:start;top:18px;left:16px;transform:none}.journey-map-title span{font-size:7px}.journey-map-title strong{letter-spacing:.02em;font-size:17px}.journey-china-stage{width:calc(100% - 6px);top:57%}.journey-illustrated-map .journey-map-legend{padding:7px 10px;font-size:10px;top:61px;left:12px;right:auto}.journey-pin-anchor{border-width:2px;width:17px;height:17px}.journey-pin-postcard{border-radius:10px 10px 10px 4px;grid-template-columns:31px auto;gap:5px;padding:4px 7px 4px 4px}.journey-pin-postcard>i,.journey-pin-postcard>img{border-radius:7px;width:31px;height:31px}.journey-pin-postcard strong{font-size:10px}.journey-pin-postcard small{font-size:7px}.journey-south-sea{width:54px;padding:3px;bottom:4%;right:2.5%}.journey-south-sea svg{height:61px}.journey-map-legend{top:12px;left:12px}.journey-fallback-copy{width:80%;top:70px}.journey-map-service-note{text-align:right;max-width:70%;bottom:7px;right:10px}.journey-city-panel{border-radius:24px;padding:22px 18px}.journey-city-albums{grid-template-columns:1fr}.journey-album-view{padding:20px}.journey-album-view header{flex-direction:column}.journey-album-actions{flex-wrap:wrap}.journey-album-grid{columns:2 130px}.journey-dialog-backdrop{place-items:end center;padding:0}.journey-dialog{border-radius:26px 26px 0 0;width:100%;max-height:94vh;padding:26px 18px 30px}.journey-date-row{grid-template-columns:1fr}.journey-city-suggestions{grid-template-columns:repeat(2,1fr)}.journey-mini-grid,.journey-local-previews{grid-template-columns:repeat(3,1fr)}.journey-dialog-actions{z-index:3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f8fbf7f2;margin-inline:-18px;padding:16px 18px 30px;position:sticky;bottom:-30px}.journey-dialog-actions button{max-width:58%}}@media (prefers-reduced-motion:reduce){.journey-primary,.journey-fallback-pin,.journey-map-marker,.journey-city-albums button{transition:none}}.journey-map-frame.journey-island-map{isolation:isolate;aspect-ratio:3/2;background:#84dbe2;border:3px solid #ffffffeb;border-radius:30px;align-self:start;width:100%;min-height:0;overflow:hidden;box-shadow:0 25px 55px #286c6933,inset 0 0 0 1px #4d928824}.journey-island-stage,.journey-island-art,.journey-island-vignette,.journey-island-map .journey-map-markers{position:absolute;inset:0}.journey-island-stage{overflow:hidden}.journey-island-art{z-index:0;object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.journey-island-vignette{z-index:1;pointer-events:none;background:linear-gradient(#fffada1f,#0000 24% 78%,#156a6a14),radial-gradient(circle at 50% 48%,#0000 55%,#2374721a 100%);box-shadow:inset 0 0 34px #ffffff2e}.journey-island-map .journey-map-title{z-index:12;color:#47736c;text-align:left;-webkit-backdrop-filter:blur(12px)saturate(1.08);backdrop-filter:blur(12px)saturate(1.08);background:#fffce8c7;border:1px solid #ffffffc2;border-radius:17px;gap:2px;width:max-content;max-width:calc(100% - 190px);padding:10px 15px 11px;display:grid;top:clamp(14px,2.4vw,27px);left:clamp(14px,2.5vw,29px);transform:none;box-shadow:0 11px 28px #376f6821}.journey-island-map .journey-map-title span{letter-spacing:.23em;font-size:clamp(6px,.7vw,9px)}.journey-island-map .journey-map-title strong{letter-spacing:.05em;font-size:clamp(14px,1.75vw,23px)}.journey-island-map .journey-map-markers{z-index:8}.journey-island-map .journey-pin-anchor{background:linear-gradient(145deg,#f78a8f,#de5968);border-color:#fffdf2;width:clamp(17px,1.85vw,23px);height:clamp(17px,1.85vw,23px);box-shadow:0 6px 15px #7f3b414d,0 0 0 2px #fff3}.journey-island-map .journey-pin-postcard{-webkit-backdrop-filter:blur(9px)saturate(1.08);backdrop-filter:blur(9px)saturate(1.08);background:#fffcedf0;border-color:#fffffffa;bottom:18px;box-shadow:0 12px 27px #345c4e3b}.journey-island-map .journey-memory-pin.is-below .journey-pin-postcard{transform-origin:top;top:18px;bottom:auto}.journey-island-map .journey-memory-pin:focus-visible .journey-pin-anchor{outline-offset:4px;outline:3px solid #fffce7f2}.journey-island-map .journey-map-legend{z-index:12;color:#456f68;background:#fffdeed1;border-color:#ffffffc7;padding:9px 13px;top:clamp(14px,2.4vw,27px);left:auto;right:clamp(14px,2.5vw,29px);box-shadow:0 10px 26px #2d646024}.journey-island-map .journey-map-service-note{z-index:12;color:#35655ebd;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fbfdef94;border:1px solid #ffffff8c;border-radius:999px;padding:5px 9px;line-height:1.2;bottom:11px;right:15px}@media (max-width:980px){.journey-map-frame.journey-island-map{min-height:0}}@media (max-width:640px){.journey-map-frame.journey-island-map{border-width:2px;border-radius:21px;min-height:0}.journey-island-map .journey-map-title{border-radius:11px;max-width:calc(100% - 118px);padding:6px 9px 7px;top:9px;left:9px}.journey-island-map .journey-map-title span{font-size:5px}.journey-island-map .journey-map-title strong{text-overflow:ellipsis;font-size:11px;overflow:hidden}.journey-island-map .journey-map-legend{padding:6px 8px;font-size:8px;top:9px;left:auto;right:9px}.journey-island-map .journey-pin-anchor{width:15px;height:15px}.journey-island-map .journey-pin-postcard{visibility:hidden;opacity:0}.journey-island-map .journey-memory-pin.is-selected .journey-pin-postcard,.journey-island-map .journey-memory-pin:focus-visible .journey-pin-postcard{visibility:visible;opacity:1}.journey-island-map .journey-map-service-note{display:none}}.journey-map-layout{grid-template-columns:minmax(0,1fr);gap:18px;min-height:0}.journey-map-viewport{z-index:1;touch-action:none;position:absolute;inset:0;overflow:hidden}.journey-map-viewport.is-zoomed{cursor:grab}.journey-map-viewport.is-dragging{cursor:grabbing}.journey-island-stage{transform-origin:0 0;will-change:transform;width:100%;height:100%}.journey-map-viewport:not(.is-dragging) .journey-island-stage{transition:transform .18s cubic-bezier(.2,.72,.32,1)}.journey-pin-visual{width:0;height:0;transform:scale(var(--journey-pin-scale,1));transform-origin:0 0;position:absolute;top:0;left:0}.journey-pin-nameplate{z-index:1;color:#416d66;white-space:nowrap;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#fffdefdb;border:1px solid #ffffffd1;border-radius:999px;min-width:max-content;padding:3px 7px;font-size:10px;font-weight:800;line-height:1.2;position:absolute;top:12px;left:0;transform:translate(-50%);box-shadow:0 4px 12px #2c5b4f26}.journey-island-map .journey-pin-postcard{visibility:hidden;opacity:0;transition:opacity .15s,visibility .15s,transform .18s,box-shadow .18s}.journey-island-map .journey-memory-pin:hover .journey-pin-postcard,.journey-island-map .journey-memory-pin:focus-visible .journey-pin-postcard,.journey-island-map .journey-memory-pin.is-selected .journey-pin-postcard{visibility:visible;opacity:1}.journey-map-controls{z-index:18;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdefdb;border:1px solid #ffffffd1;border-radius:999px;align-items:center;gap:4px;padding:5px;display:flex;position:absolute;bottom:clamp(12px,2vw,22px);left:clamp(12px,2vw,24px);box-shadow:0 10px 24px #285b5329}.journey-map-controls button{color:#3f6f68;cursor:pointer;min-width:32px;height:32px;font:inherit;background:#ffffffd1;border:0;border-radius:999px;place-items:center;padding:0 8px;font-size:18px;font-weight:800;display:grid}.journey-map-controls button:hover:not(:disabled){color:#d7626d;background:#fff4da}.journey-map-controls button:disabled{cursor:default;opacity:.38}.journey-map-controls output{color:#517871;text-align:center;min-width:48px;font-size:11px;font-weight:800}.journey-map-controls .journey-map-reset{padding-inline:11px;font-size:11px}.journey-city-panel{min-height:0;padding:24px}.journey-city-heading{justify-content:space-between;align-items:end;gap:20px;display:flex}.journey-city-heading h2{margin-bottom:3px}.journey-city-heading p{color:#78908d;margin:0;font-size:13px}.journey-city-heading>small{color:#86a09a;text-align:right;font-size:11px;line-height:1.6}.journey-album-filters{gap:8px;margin:20px 0 16px;padding-bottom:2px;display:flex;overflow-x:auto}.journey-album-filters button{color:#67837e;cursor:pointer;font:inherit;background:#ffffffb3;border:1px solid #3c6e6724;border-radius:999px;flex:none;padding:8px 13px;font-size:12px}.journey-album-filters button.is-active{color:#c85e68;background:#fff4e1;border-color:#de697352;font-weight:800;box-shadow:0 6px 16px #93504f1a}.journey-city-thumbnails{grid-template-columns:repeat(6,minmax(0,1fr));gap:11px;display:grid}.journey-city-thumbnails>button,.journey-photo-skeleton{aspect-ratio:1;background:#e5efea;border:2px solid #ffffffe6;border-radius:17px;padding:0;display:block;position:relative;overflow:hidden;box-shadow:0 8px 20px #2b574f1a}.journey-city-thumbnails>button{cursor:zoom-in}.journey-city-thumbnails>button:hover{z-index:2;transform:translateY(-3px);box-shadow:0 14px 28px #2b574f2e}.journey-city-thumbnails img{object-fit:cover;width:100%;height:100%;display:block}.journey-city-thumbnails button>span{color:#748d88;place-items:center;width:100%;height:100%;padding:10px;font-size:11px;display:grid}.journey-city-thumbnails button>small{color:#fff;text-overflow:ellipsis;white-space:nowrap;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#214641bd;border-radius:999px;padding:4px 7px;font-size:9px;position:absolute;inset:auto 6px 6px;overflow:hidden}.journey-city-thumbnails>p{color:#78908d;text-align:center;grid-column:1/-1;margin:18px 0}.journey-photo-skeleton{background:linear-gradient(100deg,#e4ece8 20%,#f6faf6 42%,#e4ece8 64%) 0 0/240% 100%;border:0;animation:1.3s linear infinite journey-photo-loading}@keyframes journey-photo-loading{to{background-position:-240% 0}}.journey-photo-viewer{z-index:1200;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#122725c2;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.journey-photo-viewer>section{background:#eef3ef;border:1px solid #ffffffb8;border-radius:25px;width:min(1100px,100%);max-height:calc(100vh - 48px);display:grid;position:relative;overflow:hidden;box-shadow:0 34px 90px #081c1a73}.journey-photo-viewer>section>img{object-fit:contain;background:#182725;width:100%;max-height:calc(100vh - 140px);display:block}.journey-photo-viewer footer{justify-content:space-between;align-items:center;gap:16px;padding:13px 18px;display:flex}.journey-photo-viewer footer div{gap:3px;min-width:0;display:grid}.journey-photo-viewer footer strong{color:#365f5b;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.journey-photo-viewer footer small{color:#829791}.journey-photo-viewer footer button{color:#4d716d;cursor:pointer;background:#fff;border:1px solid #39686329;border-radius:999px;flex:none;padding:9px 14px}.journey-drafts-workspace{min-height:330px;display:block}.journey-drafts-workspace>header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;display:flex}.journey-drafts-workspace>header h2{font-size:25px}.journey-drafts-workspace>header p{color:#78908d;margin:7px 0 0}.journey-drafts-workspace>header button{color:#c55e68;cursor:pointer;font:inherit;background:#fff4df;border:0;border-radius:999px;padding:10px 16px;font-weight:800}.journey-drafts-workspace .journey-draft-list{grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:visible}.journey-drafts-workspace .journey-draft-list button{flex:initial;grid-template-columns:72px minmax(0,1fr);align-items:center;min-width:0;display:grid}.journey-drafts-workspace .journey-draft-list img,.journey-drafts-workspace .journey-cover-placeholder{grid-row:1/4;width:72px;height:72px}.journey-empty-drafts{color:#79908c;text-align:center;place-items:center;gap:6px;min-height:190px;display:grid}.journey-empty-drafts>span{color:#e37b80;font-size:32px}.journey-file-preview{aspect-ratio:1;color:#59766f;letter-spacing:.08em;place-items:center;width:100%;font-size:22px;font-weight:900;display:grid}.journey-local-previews figure.is-converting,.journey-local-previews figure.is-hashing,.journey-local-previews figure.is-processing{border-color:#e5ac72}@media (max-width:980px){.journey-city-thumbnails{grid-template-columns:repeat(4,minmax(0,1fr))}.journey-drafts-workspace .journey-draft-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.journey-map-controls{bottom:8px;left:8px}.journey-map-controls button{min-width:28px;height:28px}.journey-map-controls output{min-width:38px;font-size:9px}.journey-map-controls .journey-map-reset{display:none}.journey-pin-nameplate{padding:2px 5px;font-size:7px;top:9px}.journey-city-heading{flex-direction:column;align-items:start;gap:6px}.journey-city-heading>small{text-align:left}.journey-city-thumbnails{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.journey-city-thumbnails>button,.journey-photo-skeleton{border-radius:12px}.journey-photo-viewer{padding:0}.journey-photo-viewer>section{border-radius:0;width:100%;max-height:100vh}.journey-photo-viewer>section>img{max-height:calc(100vh - 78px)}.journey-photo-viewer footer{padding:10px 12px}.journey-drafts-workspace>header{flex-direction:column;align-items:flex-start}.journey-drafts-workspace .journey-draft-list{grid-template-columns:1fr}}.journey-map-viewport{overscroll-behavior:contain}.journey-city-gallery-controls{justify-content:space-between;align-items:center;gap:12px;margin:18px 0 14px;display:flex}.journey-city-gallery-controls label{color:#718b86;align-items:center;gap:8px;min-width:0;font-size:11px;font-weight:800;display:flex}.journey-city-gallery-controls select{color:#4c716d;min-width:170px;max-width:330px;font:inherit;text-overflow:ellipsis;background:#ffffffd1;border:1px solid #3c6e6729;border-radius:999px;outline:none;padding:8px 34px 8px 12px;font-size:12px;overflow:hidden}.journey-city-pagination{flex:none;align-items:center;gap:7px;display:flex}.journey-city-pagination button{color:#567a75;cursor:pointer;font:inherit;background:#ffffffc2;border:1px solid #3c6e6724;border-radius:999px;padding:7px 11px;font-size:11px}.journey-city-pagination button:disabled{cursor:default;opacity:.38}.journey-city-pagination span{color:#78908d;text-align:center;min-width:42px;font-size:10px}@media (min-width:981px){html.journey-map-page-locked,body.journey-map-page-locked{height:100%;overflow:hidden}.journey-map-page-locked .app-shell,.journey-map-page-locked .side-nav{height:100dvh;min-height:0;overflow:hidden}.journey-map-page-locked .app-stage{grid-template-rows:auto minmax(0,1fr) auto;height:100dvh;min-height:0;display:grid;overflow:hidden}.journey-map-page-locked .page-content{width:100%;min-height:0;padding-top:12px;padding-bottom:8px;overflow:hidden}.journey-map-page-locked .app-compliance-footer{padding-block:3px 8px}.journey-workspace.is-map-mode{flex-direction:column;gap:9px;height:100%;min-height:0;display:flex;overflow:hidden}.journey-workspace.is-map-mode .journey-hero{border-radius:21px;flex:none;gap:18px;margin:0;padding:12px 20px}.journey-workspace.is-map-mode .journey-hero h1{margin:2px 0 3px;font-size:clamp(30px,3vw,40px)}.journey-workspace.is-map-mode .journey-hero p{font-size:12px}.journey-workspace.is-map-mode .journey-stats span{border-radius:13px;min-width:67px;padding:7px 9px;font-size:10px}.journey-workspace.is-map-mode .journey-stats strong{font-size:17px}.journey-workspace.is-map-mode .journey-primary{padding:10px 16px;font-size:12px}.journey-workspace.is-map-mode .journey-tabs{flex:none;margin:0;padding:4px}.journey-workspace.is-map-mode .journey-tabs button{padding:7px 14px;font-size:12px}.journey-workspace.is-map-mode .journey-message{flex:none;margin:0;padding:7px 12px;font-size:11px}.journey-workspace.is-map-mode .journey-map-layout{flex:auto;grid-template-rows:minmax(260px,1fr) clamp(142px,19vh,184px);grid-template-columns:minmax(0,1fr);gap:9px;min-height:0;margin:0;display:grid;overflow:hidden}.journey-workspace.is-map-mode .journey-map-frame.journey-island-map{aspect-ratio:3/2;place-self:center;width:auto;max-width:100%;height:100%;max-height:100%}.journey-workspace.is-map-mode .journey-city-panel{border-radius:22px;grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(205px,.72fr) minmax(0,2.28fr);gap:8px 18px;height:100%;min-height:0;padding:12px 16px;display:grid;overflow:hidden}.journey-workspace.is-map-mode .journey-city-panel>.journey-empty-city{grid-area:1/1/-1/-1}.journey-workspace.is-map-mode .journey-city-heading{border-right:1px solid #3769631c;grid-row:1/3;min-width:0;padding-right:16px;display:block}.journey-workspace.is-map-mode .journey-city-heading h2{margin:3px 0 1px;font-size:30px}.journey-workspace.is-map-mode .journey-city-heading p{font-size:11px}.journey-workspace.is-map-mode .journey-city-heading>small{text-align:left;margin-top:7px;font-size:9px;line-height:1.45;display:block}.journey-workspace.is-map-mode .journey-city-gallery-controls{grid-column:2;margin:0}.journey-workspace.is-map-mode .journey-city-gallery-controls select{max-width:min(300px,30vw);padding-block:6px}.journey-workspace.is-map-mode .journey-city-pagination button{padding-block:5px}.journey-workspace.is-map-mode .journey-city-thumbnails{grid-column:2;grid-template-columns:repeat(8,minmax(0,1fr));gap:7px;min-height:0;display:grid;overflow:hidden}.journey-workspace.is-map-mode .journey-city-thumbnails>button,.journey-workspace.is-map-mode .journey-photo-skeleton{aspect-ratio:auto;border-radius:12px;width:100%;height:100%;min-height:0}.journey-workspace.is-map-mode .journey-city-thumbnails button>small{max-width:calc(100% - 8px);padding:3px 5px;font-size:8px;inset:auto 4px 4px}.journey-map-page-locked .journey-album-view{z-index:1100;margin:0;position:fixed;inset:6vh 5vw;overflow:auto;box-shadow:0 32px 90px #11332f57}}@media (max-width:640px){.journey-city-gallery-controls{flex-direction:column;align-items:stretch}.journey-city-gallery-controls label{justify-content:space-between}.journey-city-gallery-controls select{flex:1;min-width:0}.journey-city-pagination{justify-content:flex-end}}.module-card,.roadmap-card,.timeline-card,.real-photo-card,.photo-placeholder,.admin-card{content-visibility:auto;contain-intrinsic-size:auto 280px}html.performance-lite .app-shell *,html.performance-lite .poster-login-page *{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}html.performance-lite .app-shell,html.performance-lite .poster-login-page{background-attachment:scroll!important}html.performance-lite .app-shell *,html.performance-lite .app-shell :before,html.performance-lite .app-shell :after,html.performance-lite .poster-login-page *,html.performance-lite .poster-login-page :before,html.performance-lite .poster-login-page :after{transition-duration:80ms!important;animation:none!important}html.performance-lite .app-shell .side-nav,html.performance-lite .app-shell .top-bar,html.performance-lite .app-shell .mobile-nav,html.performance-lite .app-shell .welcome-panel,html.performance-lite .app-shell .quick-grid article,html.performance-lite .app-shell .module-card,html.performance-lite .app-shell .roadmap-card,html.performance-lite .app-shell .page-intro,html.performance-lite .app-shell .play-hero,html.performance-lite .app-shell .play-panel,html.performance-lite .app-shell .journey-hero,html.performance-lite .app-shell .journey-city-panel{background-color:#f7fbf6f0}html.page-is-hidden *,html.page-is-hidden :before,html.page-is-hidden :after{animation-play-state:paused!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!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}
