:root{--paper:#faf3e5;--cream:#fffaf0;--ink:#5d4937;--muted:#a18c74;--red:#b95e49;--red-dark:#994936;--line:#ded0b9;--green:#7c8868;--wood:#cfaa7c;font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif;color:var(--ink);background:#eee6d5;font-synthesis:none;-webkit-tap-highlight-color:transparent}
*{box-sizing:border-box}body{margin:0;min-height:100dvh;background-image:radial-gradient(#cdbfa63b .8px,transparent .8px);background-size:12px 12px}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none;touch-action:manipulation}button:disabled{cursor:default;opacity:.5}button:focus-visible,[tabindex]:focus-visible{outline:3px solid #a4794d;outline-offset:4px}button svg{vertical-align:middle;flex-shrink:0}button{user-select:none;-webkit-user-select:none}h1,h2,h3,p{margin:0}svg{display:block;width:100%;height:100%}button>svg{width:auto;height:auto}button:active:not(:disabled){transform:translateY(1px)}.desktop-brand{position:fixed;left:max(38px,calc(50vw - 570px));top:15%;width:180px}.brand-stamp{display:grid;place-content:center;width:76px;height:76px;border:2px solid var(--red);border-radius:20px 20px 20px 3px;color:var(--red);font-family:serif;font-size:27px;font-weight:900;letter-spacing:4px;line-height:1.1;transform:rotate(-6deg)}.desktop-brand p{font-family:Georgia,serif;font-size:23px;line-height:1.3;margin:30px 0 25px;letter-spacing:1px}.side-line{display:block;background:#c4b398;width:32px;height:1px;margin-bottom:20px}.desktop-brand small{font-size:12px;line-height:2.1;letter-spacing:2px;color:#9d8a71}.desktop-note{position:fixed;right:max(40px,calc(50vw - 540px));bottom:16%;width:140px;transform:rotate(4deg);text-align:center}.desktop-note>span{font-size:10px;letter-spacing:2px}.desktop-note p{font-size:21px;margin:8px 0;font-weight:800}.note-flower{font-size:63px;color:var(--red);line-height:1.2}.desktop-note small{font-size:13px;line-height:1.9;letter-spacing:4px}.desktop-note b{display:block;font-size:9px;letter-spacing:3px;margin-top:24px;font-weight:400}#app{max-width:460px;min-height:100dvh;margin:auto;background:var(--paper);box-shadow:0 0 60px #6c503b14;position:relative;isolation:isolate}.cover-app{overflow:hidden}.game-app{padding-bottom:84px}#app:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.045' filter='url(%23n)'/%3E%3C/svg%3E");z-index:-1}.home-screen{padding:24px 26px 20px;min-height:100dvh;display:flex;flex-direction:column;align-items:center}.home-top{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:26px}.tiny-mark{font-family:Georgia,serif;font-size:10px;letter-spacing:2.8px;color:#958066}.sound-button{width:34px;height:34px;display:grid;place-items:center;border:1px solid #dbcdb5;border-radius:50%;color:#927c61;flex-shrink:0}.sound-button svg{width:18px;height:18px}.home-title{position:relative;text-align:center;margin-top:2px;width:100%}.home-title>p{font-size:11px;letter-spacing:5px;color:#8f7a60;margin-bottom:15px}.home-title h1{font-family:"STKaiti","KaiTi","Microsoft YaHei",serif;font-size:61px;font-weight:900;letter-spacing:3px;line-height:1.15;color:#5e4a36;white-space:nowrap;transform:rotate(-3deg);position:relative}.home-title h1 span{color:var(--red)}.home-title h1 i{font-family:serif;font-size:13px;position:absolute;top:3px;font-style:normal;letter-spacing:0}.title-underline{height:5px;width:200px;border-bottom:2px solid #be9f78;border-radius:50%;margin:9px auto 0;transform:rotate(-3deg)}.little-flower{position:absolute;color:var(--red);font-size:27px;line-height:1}.flower-left{left:-6px;top:30px;transform:rotate(-20deg)}.flower-right{right:-4px;top:90px;font-size:19px}.home-subtitle{font-size:13px;letter-spacing:3px;margin-top:22px;color:#90785e}.cover-scene{position:relative;width:calc(100% + 24px);height:290px;flex-shrink:0;margin:17px 0 6px}.cover-cow{position:absolute;width:210px;height:220px;animation:cow-sway 4s ease-in-out infinite}.cow-left{left:-2px;top:25px;transform:rotate(-9deg)}.cow-right{right:-2px;top:35px;transform:rotate(9deg);animation-delay:-2s}.cow-left svg{transform:rotate(-8deg)}.cow-right svg{transform:rotate(8deg)}.small-speech{position:absolute;right:5px;top:6px;z-index:1;background:var(--cream);border:1.5px solid #b8a080;border-radius:20px 20px 20px 0;padding:7px 12px;font-size:10px;transform:rotate(7deg)}.scene-spark{position:absolute;color:#b99b64}.spark-one{left:32px;top:10px;font-size:27px;transform:rotate(12deg)}.spark-two{right:22px;top:120px;font-size:24px}.cover-grocery{position:absolute;display:block;width:75px;height:90px;bottom:0;z-index:1}.grocery-one{left:13px;transform:rotate(-15deg)}.grocery-two{right:7px;transform:rotate(15deg)}.start-button{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);z-index:2;background:var(--red);color:#fff3dc;border:2px solid #9a4e3b;box-shadow:0 6px 0 #8f4938,0 9px 15px #82533318;border-radius:50px;padding:16px 26px;white-space:nowrap;font-size:18px;font-weight:800;letter-spacing:3px;display:flex;align-items:center;gap:20px}.start-button:active:not(:disabled){transform:translate(-50%,4px);box-shadow:0 2px 0 #8f4938}.home-awning{position:relative;border:1.5px solid #bda480;background:#f5e7cf;border-radius:8px 8px 16px 16px;width:100%;margin:0 0 24px;box-shadow:0 5px 0 #e7d9bf}.awning-stripes{height:28px;background:repeating-linear-gradient(90deg,#b96953 0,#b96953 25px,#f7e9cf 25px,#f7e9cf 50px);border-radius:6px 6px 0 0;border-bottom:1px solid #936c4b}.awning-frill{height:11px;background:radial-gradient(ellipse at 50% 0,#b96953 68%,transparent 72%) 0 0 / 50px 12px repeat-x;position:relative}.awning-frill:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0,#f7e9cf 68%,transparent 72%) 25px 0 / 50px 12px repeat-x}.shop-sign{text-align:center;padding-top:10px}.shop-sign>span{font-family:Georgia,serif;font-size:9px;letter-spacing:2px;display:block;color:#a38a67}.shop-sign b{font-size:13px;letter-spacing:2px;display:block;margin-top:7px}.store-window{display:flex;align-items:center;justify-content:center;gap:16px;padding:18px 10px}.store-window>span{width:64px;display:flex;flex-direction:column;align-items:center;gap:7px;font-size:27px;line-height:1;color:#9f7653}.store-window svg{height:29px;width:29px}.store-window small{font-size:10px;color:#9d8567;letter-spacing:1px}.store-window i{font-size:18px;color:#c5b18e;font-style:normal}.home-footer{font-size:10px;letter-spacing:2px;color:#9e876c;margin-top:auto}.home-footer>span{color:var(--red);margin:0 5px}.save-note{font-size:10px;color:#ab957a;text-align:center;margin:14px 0 6px;line-height:1.8}.game-header{height:76px;display:flex;align-items:center;padding:12px 20px;gap:10px;border-bottom:1px solid #e2d5bf;background:#fbf5e9;position:relative;z-index:3}.mini-logo{display:flex;flex-direction:column;text-align:center;line-height:1.1;color:var(--red);border:1.5px solid #bc7159;border-radius:9px 9px 9px 2px;padding:5px 7px;transform:rotate(-4deg);margin-right:auto;flex-shrink:0}.mini-logo span{font-size:16px;font-weight:900;letter-spacing:2px}.mini-logo small{font-size:10px;letter-spacing:4px;margin-left:2px;margin-top:3px}.balance{display:flex;align-items:center;gap:6px;border:1px solid #e3ceb0;background:#fff6df;padding:7px 11px;border-radius:30px;font-family:Georgia,serif;font-weight:bold;font-size:17px;white-space:nowrap}.coin-icon{display:inline-grid;place-content:center;width:19px;height:19px;background:#e7ba60;border:1.5px solid #bc8e40;border-radius:50%;font-family:serif;color:#fff3c8;font-size:12px;font-weight:bold;line-height:1;flex-shrink:0}.checkout-top{display:flex;gap:6px;align-items:center;background:var(--red);color:#fff4e3;padding:10px 12px;border-radius:10px;font-size:12px;font-weight:700;white-space:nowrap}.shop-intro{display:flex;position:relative;align-items:center;padding:23px 20px 14px;overflow:hidden;min-height:124px}.eyebrow,.section-kicker{font-size:8px;letter-spacing:2px;color:#ab9474}.shop-intro h1{font-size:24px;letter-spacing:1px;margin:8px 0;font-weight:900}.shop-intro h1 span{color:var(--red)}.shop-intro p{font-size:11px;color:#9b8266;letter-spacing:.5px}.shop-host{position:absolute;right:9px;bottom:-13px;width:103px;height:113px;transform:rotate(8deg);z-index:-1}.shop-awning{margin:0 12px;position:relative;z-index:1}.shop-awning .awning-stripes{height:23px}.shelf-area{margin:0 13px 0;padding:15px 12px 6px;background:#ead8b8;border:1px solid #c6a880;border-top:0;border-radius:0 0 12px 12px;box-shadow:inset 0 3px 12px #8b64331c}.shelf-heading{display:flex;align-items:center;justify-content:space-between;margin:0 1px 13px}.shelf-heading>span{font-family:serif;font-size:14px;font-weight:bold;letter-spacing:3px}.shelf-heading small{font-size:9px;color:#9d825d;letter-spacing:1px}.category-tabs{display:flex;gap:5px;margin-bottom:14px}.category-tabs button{flex:1;white-space:nowrap;padding:7px 1px;font-size:10px;border-radius:20px;color:#90724e;transition:.2s}.category-tabs .selected{background:#795e42;color:#fff0d9;box-shadow:0 2px 3px #624b3b18}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:9px;row-gap:18px}.product-card{background:#fff5e1;border:1px solid #d7be93;border-radius:6px 6px 3px 3px;padding:12px 6px 8px;position:relative;min-width:0;box-shadow:0 5px 0 #b99767,0 7px 0 #a88456;transition:background .15s}.product-card:hover{background:#fffaf0}.peg{position:absolute;width:7px;height:7px;border-radius:50%;background:#b9a17c;box-shadow:inset 0 1px 1px #705b3a;top:6px;left:calc(50% - 3px)}.product-illustration{display:block;height:105px;width:100%;transition:transform .2s}.product-card:hover .product-illustration{transform:translateY(-4px) rotate(-3deg)}.product-name{display:block;font-size:11px;letter-spacing:.2px;margin:2px -4px 6px;white-space:nowrap}.price{display:flex;align-items:center;gap:4px;font-family:Georgia,serif;font-size:13px;font-weight:bold}.price .coin-icon{width:14px;height:14px;font-size:8px;border-width:1px}.price i{font-style:normal;margin-left:auto;display:grid;place-items:center;width:21px;height:21px;border:1px solid #ddc4a5;border-radius:50%;font-size:14px;font-family:system-ui;color:#a56c4d;background:#f8e8ce}.quantity-badge{position:absolute;right:-5px;top:-6px;border-radius:50%;background:var(--red);border:2px solid #f7e9cf;min-width:23px;height:23px;display:grid;place-content:center;color:#fff5dc;font-size:11px}.shelf-footnote{text-align:center;margin:19px 0 6px;color:#aa8d63;font-size:8px;letter-spacing:2px}.shelf-footnote span{margin-left:9px;color:#a27349}.shop-screen{padding-bottom:18px}.basket-dock{position:sticky;bottom:75px;z-index:4;background:#fff8eb;border-top:1px solid #d9c8aa;border-bottom:1px solid #e5d6be;display:flex;align-items:center;padding:12px 19px;gap:12px;box-shadow:0 -6px 20px #634a2a08}.basket-picture{position:relative;width:54px;height:46px;flex-shrink:0;color:#9d7650;background:#efe1c7;border:1px solid #d4b88d;border-radius:9px;display:grid;place-items:center}.basket-picture svg{width:38px;height:38px}.basket-count{position:absolute;right:-6px;top:-7px;background:var(--red);border:2px solid #fff9eb;min-width:21px;height:21px;border-radius:50%;font-size:10px;color:#fff7e6;display:grid;place-content:center}.basket-summary{text-align:left;flex:1;padding:0}.basket-summary b{font-size:11px;display:block;font-weight:700;margin-bottom:5px;white-space:nowrap}.basket-summary>span{font-size:9px;color:#a38c6f}.basket-total>small{display:block;font-size:9px;color:#9b8364;margin-bottom:3px;text-align:right}.basket-total>b{display:flex;align-items:center;gap:5px;font-family:Georgia,serif;font-size:20px;color:#a45b3e}.basket-total .coin-icon{width:16px;height:16px;font-size:9px}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);max-width:460px;width:100%;height:calc(75px + env(safe-area-inset-bottom));background:#fbf5e9;z-index:5;border-top:1px solid #e1d1b9;display:flex;padding:8px 10px calc(8px + env(safe-area-inset-bottom));box-shadow:0 -4px 18px #6f502a08}.bottom-nav button{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#ad977b;position:relative;border-radius:12px}.bottom-nav button>svg{width:23px;height:23px}.bottom-nav button>span{font-size:10px;position:relative}.bottom-nav button.active{color:var(--red);background:#f3e6d4}.bottom-nav button.active:before{content:"";width:18px;height:3px;background:var(--red);position:absolute;top:-8px;border-radius:0 0 3px 3px}.bottom-nav i{position:absolute;right:-14px;top:-5px;font-size:8px;background:var(--red);color:var(--cream);border-radius:9px;padding:1px 4px;font-style:normal}.bag-screen,.ice-screen{padding:25px 22px 18px}.bag-screen h1,.ice-screen h1{font-size:29px;margin:9px 0;letter-spacing:2px}.bag-screen h1>span,.ice-screen h1>span{font-weight:400;color:var(--red);margin-left:8px}.section-description{font-size:11px;letter-spacing:1px;color:#9d856b;line-height:1.8}.bag-ticket{display:flex;align-items:center;gap:12px;background:#f1e5ce;border:1px solid #ddc8a7;border-radius:10px;padding:15px;margin:23px 0 20px;position:relative}.bag-ticket>span{width:29px;height:29px;color:#a97652}.bag-ticket b{font-size:13px;display:block;letter-spacing:1px;margin-bottom:5px}.bag-ticket small{font-size:9px;color:#a18b6c}.bag-ticket i{font-style:normal;color:#ac7954;margin-left:auto;font-size:24px}.inventory-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.inventory-card{text-align:left;background:#fffaef;border:1px solid #e1cfb5;border-radius:13px;padding:8px 13px 13px;position:relative;overflow:hidden}.inventory-art{display:block;height:143px}.inventory-card>b{display:block;font-size:12px;margin-bottom:6px;letter-spacing:1px}.inventory-card>small{display:block;font-size:9px;color:#a08a6d}.inventory-bottom{display:flex;justify-content:space-between;margin-top:15px;font-size:10px}.inventory-bottom>span:first-child{color:#ab977b}.inventory-bottom>span:last-child{display:flex;gap:5px;color:var(--red)}.mini-progress{position:absolute;bottom:0;left:0;width:100%;height:3px;background:#e8dbc5}.mini-progress i{height:100%;display:block;background:#a6b58d}.empty-bag{text-align:center;padding:30px 0 20px}.empty-bag>div{width:190px;height:190px;margin:auto;opacity:.9}.empty-bag h2{font-size:17px;margin:12px 0}.empty-bag p{font-size:11px;line-height:2;color:#a48c70;margin-bottom:24px}.primary-button{border:1px solid #a15540;background:var(--red);color:#fff4df;border-radius:12px;padding:15px 20px;display:inline-flex;align-items:center;justify-content:center;gap:14px;font-size:13px;font-weight:700;letter-spacing:1px;box-shadow:0 3px 0 #964a37}.wide{width:100%}.customer-row{display:flex;align-items:center;margin:13px 0 8px;min-height:111px;gap:8px}.customer-art{width:94px;height:110px;flex-shrink:0}.customer-speech{border:1px solid #d4bf9e;border-radius:16px 16px 16px 2px;background:#fff8ea;position:relative;flex:1;padding:13px 12px}.customer-speech small{font-size:8px;color:#ac9272;letter-spacing:1px;display:block;margin-bottom:6px}.customer-speech b{font-size:12px;font-weight:700;display:block;line-height:1.7}.customer-speech>span{font-size:9px;color:#a28a6b;display:block;margin-top:6px}.ice-machine{border:2px solid #9c7b5b;border-radius:18px 18px 10px 10px;background:#ecdfc6;position:relative;overflow:hidden;box-shadow:0 5px 0 #d4bf9c}.machine-top{height:42px;background:#adb69a;border-bottom:2px solid #9c7b5b;display:flex;justify-content:space-between;align-items:center;padding:0 20px}.machine-top span{font-size:12px;letter-spacing:4px;font-weight:700;color:#5b654d}.machine-top i{font-size:13px;font-style:normal;color:#b35f49}.machine-spout{position:absolute;top:40px;left:calc(50% - 18px);width:36px;height:29px;border:2px solid #9c7b5b;border-radius:0 0 7px 7px;background:#d0c5ac;z-index:2}.machine-spout:after{content:"";width:14px;height:7px;background:#8e7e66;position:absolute;left:9px;bottom:-6px;border-radius:0 0 4px 4px}.ice-stage{position:relative;height:254px;background:repeating-linear-gradient(0deg,#f5ebd8 0,#f5ebd8 29px,#e8dbc3 30px);margin:0 11px;border-left:1px solid #d5c4a6;border-right:1px solid #d5c4a6;overflow:hidden}.ice-guidance{position:absolute;top:21px;left:13px;color:#aa8d67;font-size:8px;display:flex;flex-direction:column;gap:5px;text-align:center}.ice-guidance i{font-style:normal;font-size:20px;color:#ae7c53}.target-line{position:absolute;left:18px;right:54px;border-top:1px dashed #be765b;z-index:2;pointer-events:none}.target-line>span{position:absolute;left:-4px;top:-16px;font-size:8px;color:#b97759;background:#f5ebd8;padding:2px 4px}.target-line:after{content:"";position:absolute;right:-4px;top:-4px;border-left:6px solid #be765b;border-top:4px solid transparent;border-bottom:4px solid transparent}#ice-art{position:absolute;width:200px;height:230px;left:calc(50% - 100px);bottom:6px;z-index:1}#cream-stream{position:absolute;left:calc(50% - 5px);top:30px;width:10px;height:116px;background:#e8c9a3;border-radius:5px;display:none;z-index:1;opacity:.65}.pouring #cream-stream{display:block;animation:stream .2s infinite}.height-meter{position:absolute;right:11px;top:21px;bottom:14px;width:30px;text-align:center}.height-meter>span{font-size:8px;color:#9b8261}.meter-track{height:155px;width:11px;border:1px solid #c9b08b;border-radius:20px;position:relative;overflow:visible;background:#e7d7bd;margin:8px auto}.meter-track>i{position:absolute;width:100%;bottom:0;background:#bf7c61;border-radius:20px;transition:height .06s}.meter-track>b{position:absolute;height:3px;left:-4px;width:17px;background:#7e8d66;border-radius:2px}.height-meter small{font-size:9px;color:#a67b55}.machine-base{height:28px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:#e3cdab;font-size:7px;letter-spacing:2px;color:#9f805a}.machine-base span:last-child{font-size:18px}.flavors{display:flex;gap:8px;margin:21px 0 16px}.flavors button{flex:1;background:#fff8e9;border:1px solid #dfcaab;border-radius:10px;padding:10px 7px;display:flex;align-items:center;justify-content:center;gap:6px;font-size:11px}.flavors button>i{width:15px;height:15px;border-radius:50%;background:var(--flavor);border:1px solid #b59270;box-shadow:inset 0 -2px 0 #0000000a}.flavors button.selected{border:1.5px solid #b96d53;background:#f7e6d4;color:#a15e42}.flavors button>span{font-size:9px}.flavors button:disabled{opacity:.75}.pour-button{width:100%;padding:15px;border:1px solid #9c503c;background:var(--red);color:#fff1d9;border-radius:12px;box-shadow:0 4px 0 #984935;display:flex;align-items:center;justify-content:center;gap:18px;font-size:15px;font-weight:700;touch-action:none}.pour-button span{font-size:9px;opacity:.7;font-weight:400;letter-spacing:1px}.pour-button.holding{transform:translateY(3px);background:#a3503d;box-shadow:0 1px 0 #984935}.serve-row{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:15px}.text-button{font-size:11px;color:#a58a6b;padding:12px 4px}.serve-button{background:#899873;color:#fff5df;border:1px solid #73835e;font-size:11px;padding:11px 12px;border-radius:9px;display:flex;align-items:center;gap:7px}.ice-tip{text-align:center;color:#ac9477;font-size:9px;margin-top:17px;letter-spacing:.7px}.ice-tip span{color:#bb8066}.ice-result{text-align:center;margin:0 0 17px}.ice-result b{display:block;font-size:12px;margin:9px 0;color:#7c8d63}.ice-result>span{font-size:12px;display:inline-flex;align-items:center;gap:5px;color:#aa6e45}.modal-open{overflow:hidden}.modal-backdrop{position:fixed;inset:0;z-index:20;background:#3d302a61;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:22px;animation:fade-in .18s ease}.modal-panel{background:#fcf5e7;border:2px solid #d0b893;border-radius:23px;width:100%;max-width:410px;padding:34px 24px 24px;max-height:calc(100dvh - 44px);overflow:auto;position:relative;box-shadow:0 14px 50px #362b2533;animation:modal-in .25s ease;scrollbar-width:thin;scrollbar-color:#d7c3a3 transparent}.modal-close{position:absolute;right:12px;top:12px;width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:#eee1cc;color:#a08463}.modal-panel h2{font-size:23px;margin:10px 0 12px;letter-spacing:1px}.modal-description{font-size:12px;line-height:1.9;color:#a08769;margin-bottom:15px}.modal-hint{text-align:center;font-size:9px;color:#ae9475;margin-top:16px;line-height:1.8}.cart-list{max-height:35dvh;overflow:auto;border-top:1px dashed #d9c4a5;border-bottom:1px dashed #d9c4a5;padding:4px 0}.cart-item{display:flex;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid #ede0cb}.cart-item:last-child{border:0}.cart-art{width:48px;height:58px;flex-shrink:0}.cart-item-name{flex:1}.cart-item-name>b{display:block;font-size:11px;letter-spacing:.5px;margin-bottom:6px}.cart-item-name small{font-size:9px;color:#a18a6d}.quantity-control{display:flex;align-items:center;gap:9px;font-size:12px}.quantity-control button{display:grid;place-items:center;width:28px;height:28px;border:1px solid #ddc8aa;border-radius:50%;background:#f7ead4}.receipt-total{display:flex;justify-content:space-between;align-items:center;margin:20px 0 10px}.receipt-total>span{font-size:12px}.receipt-total>b{font-family:Georgia,serif;display:flex;align-items:center;gap:8px;font-size:25px;color:#ac6346}.receipt-balance{font-size:10px;text-align:right;color:#a58c6d;margin-bottom:22px}.success-modal,.gift-modal{text-align:center;padding-top:34px}.success-icon{background:#e0e7cd;color:#7d8d65;width:65px;height:65px;margin:8px auto 25px;display:grid;place-items:center;border:1px solid #c2ccad;border-radius:50%}.success-icon>svg{width:34px;height:34px}.receipt-decoration{height:110px;display:flex;align-items:center;justify-content:center;margin:10px 0 20px;color:#a57650;position:relative}.receipt-decoration>svg{width:70px;height:70px}.receipt-decoration>span{position:absolute;right:calc(50% - 67px);top:5px;font-size:30px;color:var(--red);transform:rotate(15deg)}.welcome-cow{width:160px;height:155px;margin:-5px auto 13px}.gift-coins{font-family:Georgia,serif;font-size:39px;color:#a47238;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:15px 0 24px}.gift-coins .coin-icon{width:31px;height:31px;font-size:21px}.gift-coins small{flex-basis:100%;font:9px system-ui;letter-spacing:2px;color:#af9673;margin-top:5px}.use-modal{text-align:center}.use-modal h2{font-size:23px}.use-stage{position:relative;height:245px;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse,#efe2c7 0,#f3e8d3 50%,transparent 70%);touch-action:none;user-select:none;-webkit-user-select:none}.use-product{width:205px;height:220px;filter:drop-shadow(0 9px 8px #7f5b2e14);transition:transform .2s}.use-product.opened{transform:rotate(-5deg)}.open-tag{position:absolute;right:2px;top:11px;padding:5px 9px;font-size:9px;border:1px solid #d4bb91;background:#fff9e9;border-radius:5px;transform:rotate(9deg);z-index:1;color:#ab8058}.snack-pieces{position:absolute;bottom:0;display:flex;gap:9px;align-items:center;justify-content:center;width:100%;font-size:30px;color:#c79b52;text-shadow:1px 1px #9c743e}.snack-pieces>span{transform:rotate(calc(var(--n)*18deg - 20deg));animation:piece-in .3s}.use-hint{font-size:11px;color:#a08463;margin:12px 0 16px;line-height:1.8}.use-progress{height:6px;border-radius:10px;background:#e8dbc5;max-width:190px;margin:0 auto;overflow:hidden}.use-progress i{height:100%;background:#9cab82;border-radius:10px;display:block;transition:width .12s}.remaining-label{font-size:9px;color:#a68d6c;margin:7px 0 18px}.use-modal .primary-button{touch-action:none}.use-particles{position:absolute;inset:0;pointer-events:none;overflow:hidden}.heart-particle,.bubble-particle{position:absolute;top:65%;font-size:35px;color:#bb775d;animation:float-away .9s ease forwards}.bubble-particle{font-size:60px;color:#9bb5b2;text-shadow:2px 1px #fff}.steaming:before,.steaming:after{content:"〰";position:absolute;left:40%;top:9%;font-size:40px;transform:rotate(-90deg);color:#c6ad88;animation:steam .8s infinite;z-index:2}.steaming:after{left:52%;animation-delay:-.4s}.finished-art{position:relative;width:190px;height:190px;margin:10px auto}.finished-art>span{position:absolute;right:2px;top:0;color:var(--red);font-size:40px;animation:cow-sway 2s infinite}.finished-title{font-size:20px;margin:10px 0}.finished-art svg{width:100%;height:100%}#toast{position:fixed;left:50%;bottom:112px;transform:translate(-50%,12px);z-index:50;pointer-events:none;background:#62503feF;color:#fff4dc;border:1px solid #9e8360;border-radius:13px;padding:12px 18px;max-width:min(85vw,370px);width:max-content;text-align:center;opacity:0;transition:.2s;font-size:12px;line-height:1.7;box-shadow:0 4px 20px #3f302222}#toast.show{opacity:1;transform:translate(-50%,0)}.flying-product{position:fixed;z-index:15;width:60px;height:70px;pointer-events:none}
@keyframes cow-sway{0%,100%{translate:0 0;rotate:-2deg}50%{translate:0 -5px;rotate:2deg}}@keyframes modal-in{from{transform:translateY(15px) scale(.97);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes float-away{from{transform:translateY(0) scale(.6);opacity:.9}to{transform:translateY(-140px) scale(1.1);opacity:0}}@keyframes piece-in{from{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}@keyframes stream{0%{opacity:.7}100%{opacity:.45}}@keyframes steam{0%{translate:0 0;opacity:0}50%{opacity:.6}100%{translate:0 -25px;opacity:0}}
@media(min-width:800px){#app{border-left:1px solid #d9cab1;border-right:1px solid #d9cab1}.home-screen{padding-top:28px}.home-top{margin-bottom:32px}.cover-scene{margin-top:25px;margin-bottom:12px}.home-awning{margin-bottom:30px}.home-footer{margin-top:14px}.cover-app{min-height:max(850px,100dvh)}}
@media(max-width:1000px){.desktop-brand,.desktop-note{display:none}}
@media(max-width:460px){body{background:var(--paper)}#app{max-width:100%;box-shadow:none}.home-screen{padding:20px 23px 18px}.home-title h1{font-size:58px}.home-top{margin-bottom:23px}.cover-scene{height:270px}.cover-cow{width:195px;height:210px}.cover-cow.cow-left{left:-6px}.cover-cow.cow-right{right:-6px}.home-awning{margin-bottom:20px}.home-footer{margin-top:auto}.shop-intro h1{font-size:22px}.product-illustration{height:95px}.shop-host{right:0;width:94px}.shop-intro{padding-right:10px}.basket-dock{bottom:calc(75px + env(safe-area-inset-bottom))}.game-app{padding-bottom:calc(75px + env(safe-area-inset-bottom))}.home-screen{padding-top:calc(20px + env(safe-area-inset-top))}.game-header{height:calc(76px + env(safe-area-inset-top));padding-top:calc(12px + env(safe-area-inset-top))}}
@media(max-width:360px){.home-title h1{font-size:49px}.cover-cow{width:173px;height:191px}.cover-scene{height:250px}.start-button{padding:14px 20px;font-size:16px;gap:13px}.product-grid{gap:17px 6px}.product-illustration{height:81px}.shelf-area{padding:12px 8px 6px}.game-header{padding-left:14px;padding-right:14px;gap:7px}.balance{padding:7px 9px}.shop-intro h1{font-size:20px}.shop-intro p{font-size:10px}.shop-host{width:80px}.basket-dock{padding:12px;gap:9px}.basket-summary b{font-size:10px}.basket-summary>span{font-size:8px}.customer-speech b{font-size:10px}.bag-screen,.ice-screen{padding-left:17px;padding-right:17px}.flavors button{font-size:10px;padding:10px 4px}.modal-backdrop{padding:12px}.modal-panel{padding:33px 20px 23px}.home-title>p{letter-spacing:3px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* v02 小牛选择与喂食 */
.cow-mouth .mouth-open{display:none}.is-eating .cow-mouth .mouth-open{display:block}.is-eating .cow-mouth .mouth-closed{display:none}
.cow-companion{display:flex;align-items:center;position:relative;margin:19px 0 14px;padding:12px 12px 12px 5px;background:#f3e5cd;border:1px solid #d9c29d;border-radius:18px;min-height:118px;overflow:hidden}.companion-cow{width:100px;height:98px;flex-shrink:0;animation:cow-sway 4s ease-in-out infinite}.companion-copy{align-self:flex-start;margin:12px 0 0 4px}.companion-copy>span{font-size:9px;color:#aa8f6c;letter-spacing:2px}.companion-copy b{display:block;font-size:17px;letter-spacing:2px;margin:6px 0}.companion-copy i{font-style:normal;color:var(--red);margin-left:6px}.companion-copy p{font-size:9px;color:#a48b6c}.choose-cow-button{position:absolute;right:12px;top:14px;display:flex;align-items:center;gap:5px;border:1px solid #c59876;background:#fff8e9;border-radius:20px;padding:9px 11px;font-size:10px;color:#a36046}.companion-copy{padding-top:24px}.bag-screen .bag-ticket{margin-top:12px}.cow-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0 5px}.cow-option{border:1px solid #d8c3a2;border-radius:17px;background:#fff8e9;padding:7px 5px 17px;text-align:center}.cow-option.selected{border:2px solid #b57256;background:#f5e6d1}.cow-option-art{display:block;width:100%;height:142px}.cow-option>b{display:block;font-size:14px;letter-spacing:1px;margin:2px 0 8px}.cow-option>small{font-size:9px;color:#a28160}.feeding-scene{height:250px;position:relative;border-radius:15px;background:radial-gradient(ellipse at 50% 75%,#eddec1,transparent 70%);overflow:hidden}.feeding-cow{position:absolute;width:210px;height:210px;left:calc(50% - 105px);bottom:10px}.feeding-cow.is-eating{animation:cow-nibble .26s ease-in-out infinite alternate}.feeding-speech{position:absolute;top:3px;right:1px;background:#fff8e9;border:1px solid #d8bc92;border-radius:18px 18px 18px 2px;padding:8px 12px;font-size:10px;color:#a17652;z-index:1;transform:rotate(4deg)}.feeding-bite{position:absolute;width:67px;height:72px;left:8px;bottom:17px;z-index:2;pointer-events:none;filter:drop-shadow(0 4px 3px #8b633b15)}.feeding-name{position:absolute;bottom:0;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:3px;color:#a7805e;white-space:nowrap}.feeding-hearts{position:absolute;right:16px;top:95px;color:#bb7e60;font-size:33px;transform:rotate(14deg)}.feeding-item{display:flex;align-items:center;text-align:left;gap:9px;margin:8px 0 1px;padding:5px 10px;background:#f4e8d3;border:1px dashed #ddc7a5;border-radius:10px}.feeding-item>span{display:block;width:36px;height:43px;flex-shrink:0}.feeding-item b{display:block;font-size:11px;letter-spacing:1px}.feeding-item small{display:block;font-size:8px;color:#aa9271;margin-top:4px}.feeding-item>i{margin-left:auto;font:14px Georgia,serif;color:#a4724b}.feeding-scene~.use-hint{margin:10px 0;font-size:10px}.feeding-scene~.remaining-label{margin-bottom:12px}.use-modal:has(.feeding-scene) .modal-description{margin-bottom:6px}.use-modal:has(.feeding-scene) .modal-hint{font-size:8px;margin-top:12px}.use-modal:has(.feeding-scene){padding-top:29px}.is-eating~.feeding-hearts{animation:float-away 1.1s ease infinite}.inventory-bottom>span:last-child{align-items:center;white-space:nowrap}
@keyframes cow-nibble{from{transform:translateY(0) rotate(-1deg)}to{transform:translateY(2px) rotate(1deg)}}
@media(max-width:360px){.companion-cow{width:80px;height:98px}.companion-copy{margin-left:3px}.companion-copy b{font-size:15px}.companion-copy p{font-size:8px}.choose-cow-button{right:9px;padding:8px 9px;font-size:9px}.cow-option-art{height:120px}.cow-option>small{font-size:8px}.feeding-cow{width:200px;height:200px;left:calc(50% - 100px)}.feeding-scene{height:230px}}

/* v04 颜色兑换与免费改名 */
.cow-picker-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:5px 0 15px}.cow-picker-tools .section-kicker{font-size:8px;letter-spacing:1.5px}.rename-cow-button{padding:9px 11px;border:1px solid #c89979;background:#fff9ed;border-radius:20px;font-size:10px;white-space:nowrap;color:#a36048}.cow-picker .cow-options{margin:16px 0 8px;gap:10px}.cow-picker .cow-option{padding:3px 6px 12px;position:relative;min-width:0}.cow-picker .cow-option-art{height:96px}.cow-picker .cow-option>b{font-size:13px;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cow-picker .cow-option>small{display:block;font-size:9px;letter-spacing:1px;color:#a58c6c}.cow-card-state{display:flex;align-items:center;justify-content:center;gap:4px;margin-top:9px;min-height:23px;font-size:9px;color:#a37e57}.cow-card-state .coin-icon{width:14px;height:14px;font-size:8px}.cow-option.locked{background:#f6ead8;border-style:dashed}.cow-option.locked .cow-card-state{color:#a36345;background:#eedcc2;border-radius:12px;padding:5px 6px}.cow-option.selected .cow-card-state{color:#a45f43}.cow-picker-footer{position:sticky;bottom:-24px;background:#fcf5e7;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:14px 0 4px;border-top:1px dashed #d9c4a5;margin-top:15px;z-index:3}.cow-picker-footer>span{font-size:10px;white-space:nowrap;color:#a38b68}.cow-picker-footer .primary-button{font-size:10px;padding:11px 13px;gap:7px;letter-spacing:.5px}.cow-name-form{text-align:left;background:#f2e4cd;border:1px solid #d6bd98;border-radius:12px;padding:12px;margin:10px 0 18px}.cow-name-form label{font-size:11px;display:block;margin-bottom:9px;line-height:1.7;overflow-wrap:anywhere}.cow-name-row{display:flex;gap:7px}.cow-name-row input{min-width:0;width:100%;flex:1;border:1px solid #d2b58e;border-radius:8px;padding:10px;background:#fff9ed;color:var(--ink);font-family:inherit;font-size:16px;outline-offset:2px}.name-save-button{background:var(--red);color:#fff5e5;border-radius:8px;padding:10px;font-size:10px;white-space:nowrap}.cow-name-form>small{display:block;font-size:8px;color:#a38a68;margin-top:9px;line-height:1.7}.cow-name-form>p{font-size:10px;color:#ad5641;margin-top:5px}.unlock-cow-modal{text-align:center}.unlock-cow-art{height:190px;width:190px;margin:4px auto}.unlock-cow-name{font-size:21px;letter-spacing:2px;margin-bottom:12px}.unlock-cow-modal .receipt-total{margin-top:10px}.companion-copy{min-width:0;flex:1}.companion-copy b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
@media(max-width:360px){.cow-picker .cow-option-art{height:86px}.cow-picker-tools .section-kicker{font-size:7px;letter-spacing:1px}.rename-cow-button{padding:8px 9px;font-size:9px}.cow-picker-footer>span{font-size:9px}.cow-picker-footer .primary-button{padding:11px 9px;font-size:9px}.cow-name-form{padding:10px}.cow-name-row{gap:5px}}

/* v05 圆滚滚牛牛的小家与衣柜 */
.companion-cow{padding:0;cursor:pointer;position:relative}.companion-cow:hover{filter:brightness(1.03)}.house-entry,.clothing-modal{text-align:center}.little-house-art{width:280px;max-width:100%;height:230px;margin:3px auto 10px}.clothing-preview{width:210px;height:210px;margin:2px auto 8px}.room-screen{padding:19px 21px 20px}.room-breadcrumb{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;gap:8px}.room-breadcrumb button{display:flex;align-items:center;gap:5px;padding:6px 0;font-size:10px;color:#a17e5c}.room-breadcrumb>span{font-size:7px;letter-spacing:1.5px;color:#b19a7b}.room-screen h1{font-size:27px;letter-spacing:2px;margin-bottom:9px;overflow-wrap:anywhere}.room-screen h1>span{font-weight:400;color:var(--red);margin-left:10px}.cow-room{height:303px;border:2px solid #c4a782;border-radius:90px 90px 17px 17px;overflow:hidden;position:relative;margin:21px 0 0;background:#f4e5cc;box-shadow:0 5px 0 #e3ceb0}.room-wall{position:absolute;inset:0 0 74px;background:radial-gradient(#d9c39d 1.1px,transparent 1.2px) 0 0/17px 17px;background-color:#f2e4cc}.room-window{position:absolute;top:47px;left:24px;width:60px;height:75px;border:5px solid #c5a07a;border-radius:30px 30px 4px 4px;background:#c3d7d8;box-shadow:0 4px 0 #e3c9a1;overflow:hidden}.room-window:before{content:"";position:absolute;left:9px;top:10px;width:17px;height:17px;border-radius:50%;background:#f9e6b3}.room-window:after{content:"";position:absolute;left:0;right:0;bottom:-14px;height:35px;border-radius:50%;background:#aebd97}.room-window>i{position:absolute;width:4px;top:0;bottom:0;left:23px;background:#f6e8cd;z-index:1}.room-window>b{position:absolute;height:4px;left:0;right:0;top:34px;background:#f6e8cd;z-index:1}.room-picture{position:absolute;right:26px;top:59px;width:52px;height:58px;display:grid;place-items:center;border:5px solid #c6a077;border-radius:6px;background:#fff3d6;box-shadow:0 3px 0 #dcc39f;color:#b97761;font-size:29px;transform:rotate(6deg)}.room-plant{position:absolute;right:20px;bottom:62px;height:73px;width:38px;z-index:1}.room-plant:before{content:"";position:absolute;bottom:0;width:33px;height:29px;left:2px;background:#c98d70;border-radius:3px 3px 13px 13px;border:1px solid #a67053}.room-plant:after{content:"";position:absolute;height:47px;bottom:27px;left:17px;width:3px;background:#8e9b6d}.room-plant>i,.room-plant>b{position:absolute;bottom:42px;width:20px;height:31px;background:#aaba8b;border:1px solid #8d9e6a;border-radius:80% 0 70% 0;transform:rotate(-30deg);left:0}.room-plant>b{transform:rotate(65deg);left:17px;bottom:46px}.room-floor{position:absolute;bottom:0;left:0;right:0;height:77px;border-top:3px solid #c7a783;background:repeating-linear-gradient(0deg,#ddbd96 0,#ddbd96 23px,#cfad83 24px,#ddbd96 25px)}.room-rug{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);width:231px;height:49px;border:3px solid #c49077;border-radius:50%;background:#dfb49b;box-shadow:inset 0 0 0 4px #eac7ac}.room-cow{width:225px;height:225px;position:absolute;bottom:22px;left:calc(50% - 112.5px);z-index:2;animation:cow-sway 4s ease-in-out infinite}.room-nameplate{position:absolute;left:50%;transform:translateX(-50%);bottom:6px;z-index:3;font-size:8px;letter-spacing:1px;color:#936d4f;background:#f5e4c5;border:1px solid #cfb08b;border-radius:9px;padding:3px 10px;white-space:nowrap;max-width:90%;overflow:hidden;text-overflow:ellipsis}.room-hello{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:16px 3px 14px}.room-hello b{font-size:12px;display:block;letter-spacing:1px}.room-hello small{font-size:8px;display:block;color:#a78d6c;margin-top:6px}.room-hello button{font-size:9px;display:flex;align-items:center;gap:4px;white-space:nowrap;border:1px solid #d3b895;border-radius:16px;padding:9px;color:#a47451;background:#fff7e8}.wardrobe-title{display:flex;justify-content:space-between;align-items:center;padding-top:17px;border-top:1px dashed #d5bd99;margin-top:2px}.wardrobe-title h2{font-size:20px;letter-spacing:2px;margin-top:7px}.wardrobe-title>span{font-size:10px;display:flex;align-items:center;gap:5px;color:#a8754d}.wardrobe-title .coin-icon{width:16px;height:16px;font-size:10px}.wardrobe-description{font-size:9px;color:#aa8e6c;margin:10px 0 16px;line-height:1.8}.clothing-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.clothing-card{min-width:0;text-align:center;background:#fff8e9;border:1px solid #dcc5a3;border-radius:14px;padding:10px 9px 12px}.clothing-card.equipped{border:2px solid #b5795b;background:#f3e2c9}.clothing-art{display:block;height:85px;width:90px;margin:0 auto 8px}.clothing-card>b{font-size:11px;letter-spacing:.5px;display:block;margin-bottom:10px}.clothing-state{display:flex;align-items:center;justify-content:center;gap:4px;font-size:8px;color:#a27c58;min-height:23px;background:#f1e4cf;border-radius:12px;padding:5px 2px;white-space:nowrap}.clothing-state .coin-icon{width:14px;height:14px;font-size:8px}.clothing-card.equipped .clothing-state{color:#a15b40;background:#ead3b5}.clothing-modal h2{font-size:21px;overflow-wrap:anywhere}.companion-copy p{font-size:8px}
@media(max-width:360px){.room-screen{padding-left:16px;padding-right:16px}.cow-room{height:285px}.room-cow{width:213px;height:213px;left:calc(50% - 106.5px)}.room-window{left:15px;width:53px;height:67px}.room-picture{right:19px;width:43px;height:51px}.room-plant{right:13px}.room-rug{width:211px}.room-screen h1{font-size:24px}.clothing-grid{gap:9px}.clothing-card{padding:8px 6px 10px}.clothing-card>b{font-size:10px}.clothing-state{font-size:7px}.room-breadcrumb>span{font-size:6px}}
