:root{--paper:#faf4e7;--ink:#443a2d;--muted:#91816b;--orange:#dd8b47;--green:#899263;--line:#b5a084;--cream:#f6dfb0}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#e9e2d4;font-family:'Noto Serif SC','Microsoft YaHei',serif;font-size:14px}body:before{content:'';position:fixed;inset:0;pointer-events:none;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%2375664c' filter='url(%23n)' opacity='.3' d='M0 0h160v160H0z'/%3E%3C/svg%3E");z-index:40}button,input,select,textarea{font:inherit}button{color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{opacity:.55;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #bd7137;outline-offset:3px}button{touch-action:manipulation}button:active{transform:translateY(2px)}#app{position:relative;max-width:480px;min-height:100dvh;margin:auto;background:var(--paper);box-shadow:0 0 70px #62503526;padding-bottom:94px;overflow:hidden}.topbar{display:flex;align-items:center;justify-content:space-between;padding:19px 19px 11px}.brand{position:relative;transform:rotate(-2deg)}.brand h1{font:34px 'Ma Shan Zheng','STKaiti','KaiTi',serif;margin:0;letter-spacing:-1px;color:#262b22}.brand-paw{position:absolute;right:10px;top:-12px;color:var(--orange);transform:rotate(20deg)}.ribbon{display:block;background:var(--orange);color:#fff8e8;clip-path:polygon(3% 0,99% 8%,95% 45%,100% 91%,0 100%,5% 52%,0 11%);text-align:center;margin-top:4px;font-size:9px;padding:2px 18px;letter-spacing:2px}.header-actions{display:flex;gap:8px}.icon-btn{border:1px solid #bdad93;background:#fbf5e9;border-radius:50%;width:35px;height:35px;font-size:23px;line-height:1}.wallet{display:flex;gap:7px;padding:5px 16px 12px}.wallet>span{display:flex;gap:5px;align-items:center;border:1.7px solid #7c725f;border-radius:14px 16px 13px 16px;padding:5px 8px;flex:1;background:#fff9eb;box-shadow:0 2px 0 #ccbaa12b;min-width:0}.wallet i{font-style:normal;color:#ce9b41;font-size:21px;line-height:1}.wallet b{font-family:Georgia,serif;font-size:17px}.wallet small{display:none}.wallet .fish-icon{color:#828b77}.wallet .heart-icon{color:#d78a64}.wallet .gem-icon{color:#8bafba}.statusline{display:flex;gap:10px;align-items:center;border-top:1px dashed #d9cbb4;padding:8px 17px 12px}.level{background:#f3d49e;border:1.5px solid #8f7853;transform:rotate(-5deg);padding:5px 7px;border-radius:8px;font:13px Georgia,serif}.level-info{flex:1}.level-info>span{display:block;font-size:11px;margin-bottom:4px}.level-info small{float:right;color:var(--muted);font:10px Georgia,serif}.meter{height:7px;background:#e9dfcc;border-radius:7px;overflow:hidden}.meter i{display:block;height:100%;width:0;background:var(--green);border-radius:7px;transition:width .4s}.open-label{font-size:11px;color:#737c52}.open-label i{display:inline-block;width:6px;height:6px;background:#899263;border-radius:50%;margin-right:5px;box-shadow:0 0 0 3px #89926319}.view{display:none}.view.active{display:block}.scene{position:relative;width:100%;aspect-ratio:2/2.8;background:#bca481 url('/assets/cafe.png') center center/cover;border-top:5px solid #796249;border-bottom:5px solid #796249;overflow:hidden;isolation:isolate}.sunlight{position:absolute;width:55%;height:80%;background:linear-gradient(130deg,#ffedaa33,transparent 65%);left:0;top:10%;pointer-events:none}.scene-top{position:absolute;top:14px;left:13px;right:13px;display:flex;justify-content:space-between;align-items:flex-start;z-index:9}.daily-tag{background:#fff8e8ed;border:1.5px solid #83745b;border-radius:12px 16px 12px 15px;padding:8px 12px;text-align:left;box-shadow:2px 3px 0 #493e3325}.daily-tag span{font-size:10px;color:#8f6e44;display:block}.daily-tag b{display:block;font-size:12px;font-weight:600;margin-top:3px}.daily-tag small{font-size:9px;color:#8a9461}.daily-gift{background:#fff4dbe8;border:1.5px solid #9b8156;border-radius:13px;padding:6px 8px;font-size:10px}.daily-gift>span{display:block;font-size:27px;color:#d38440;line-height:1}.scene-caption{position:absolute;top:24%;right:7%;font-size:10px;background:#fff7e4d9;padding:5px 9px;border-radius:3px;transform:rotate(3deg);z-index:1}.scene-caption small{display:block;font-size:8px;margin-top:3px}.scene-tools{position:absolute;right:10px;top:41%;z-index:15;display:flex;gap:9px;flex-direction:column}.scene-tool{position:relative;width:49px;padding:5px 0;border:2px solid #64563f;outline:2px solid #fff5de;border-radius:15px 12px 16px 13px;font-size:12px;box-shadow:2px 3px 0 #4c3b3930}.scene-tool>span{display:block;font-size:25px;line-height:1.1;margin-bottom:2px}.scene-tool b{display:block;font:10px Georgia;background:#fff2cb9c;border-radius:7px;margin:3px 5px 0;padding:2px}.scene-tool em{position:absolute;top:-7px;right:-5px;background:#d98646;color:white;border:1px solid #fff5de;border-radius:5px;font:8px Georgia;padding:2px}.gold{background:#e7bc6c}.green{background:#9da578;color:#fff8e9}.cream{background:#fff0d1}.floor-note{position:absolute;bottom:9px;left:0;right:0;text-align:center;font-size:9px;letter-spacing:1px;color:#443823b0;pointer-events:none}.table{position:absolute;width:26%;height:14%;z-index:4;pointer-events:none}.table-one{left:16%;top:58%}.table-two{left:52%;top:72%;width:25%}.table:before,.table:after{content:'';position:absolute;top:40%;width:10%;height:60%;background:#8b6845;border:2px solid #544430;border-radius:3px;left:13%;transform:rotate(4deg);box-shadow:5px 5px 8px #34231b25}.table:after{left:auto;right:14%;transform:rotate(-5deg)}.table-top{position:relative;height:63%;border-radius:50%;border:3px solid #645039;background:repeating-linear-gradient(4deg,#b78e5b 0 17px,#99784f 18px,#b18b58 20px);box-shadow:0 7px 0 #7d603f,0 9px 0 #534431,0 14px 12px #31201426;z-index:1;display:flex;align-items:center;justify-content:space-evenly}.table-top span{font-size:23px;transform:translateY(-7px)}.table-top i{font-style:normal;color:#ebc184;font-size:26px;transform:translateY(-12px);text-shadow:0 1px #42513a}.cat{position:absolute;width:22%;height:auto;background:none;padding:0;border:0;left:0;top:0;transition:left 2.5s linear,top 2.5s linear;transform:translate(-50%,-75%);z-index:5;filter:drop-shadow(2px 5px 1px #40271423)}.cat:active{transform:translate(-50%,-75%)}.cat svg{width:100%;display:block;overflow:visible}.cat .cat-body{transform-origin:50% 85%;animation:breathe 2.5s ease-in-out infinite}.cat.walking .cat-body{animation:walk .25s ease-in-out infinite alternate}.cat .tail{transform-origin:85px 82px;animation:tail 3s ease-in-out infinite}.cat .eye{animation:blink 6s infinite;transform-origin:50% 43%}.cat-name{font-size:8px;white-space:nowrap;position:absolute;bottom:-6px;left:50%;transform:translateX(-50%);background:#fff5ddc9;border-radius:7px;padding:1px 6px;letter-spacing:1px}.cat-bubble{position:absolute;left:58%;top:-12px;white-space:nowrap;background:#fff9e9;border:1.6px solid #685c45;border-radius:13px 12px 12px 2px;padding:4px 7px;font-size:17px;box-shadow:1px 2px 0 #4a3c3020}.cat-bubble.ready{background:#f8dfa0;animation:float 1.4s infinite}.event-card{position:absolute;bottom:38px;left:12px;right:12px;background:#fcf2dbed;border:1.5px solid #836c49;border-radius:12px;z-index:18;padding:10px;font-size:11px}.furniture{position:absolute;border:0;background:transparent;font-size:45px;padding:0;transform:translate(-50%,-50%);filter:drop-shadow(2px 5px 1px #55402b33);touch-action:none;z-index:6}.furniture:active{transform:translate(-50%,-50%)}.editing .furniture{outline:2px dashed #fff4c9;outline-offset:4px;border-radius:12px;cursor:grab}.order-strip{display:flex;align-items:center;justify-content:space-between;margin:13px 13px 0;padding:13px;border:1px solid #c8b394;border-radius:15px 12px 16px 12px;background:#fffbf1;box-shadow:0 3px 0 #e1d1b744;gap:10px}.tiny-title{font-size:9px;color:#a3825e;letter-spacing:2px}.order-strip h2{font-size:15px;margin:3px 0 4px;font-weight:600}.order-strip p{font-size:10px;color:#94836e;margin:0}.btn{border:1.5px solid #776047;border-radius:10px 12px 9px 11px;padding:9px 14px;font-weight:600;font-size:13px;box-shadow:0 2px 0 #705c4422;white-space:nowrap}.orange{background:var(--orange);color:#fff9ed}.btn.olive{background:var(--green);color:#fff9ed}.btn.light{background:#f6e7c9}.notice{display:flex;align-items:center;gap:9px;padding:9px 19px;color:#9a8666;font-size:10px}.notice p{margin:0;line-height:1.7}.notice>span{font-size:18px}.bottom-nav{position:fixed;bottom:19px;width:calc(100% - 22px);max-width:458px;z-index:30;background:#fcf5e7f7;backdrop-filter:blur(12px);border:1.5px solid #ab9675;box-shadow:0 4px 0 #cabc9f,0 0 0 4px #f8f0e1b0;display:flex;left:50%;transform:translateX(-50%);border-radius:18px 16px 19px 14px;padding:5px}.bottom-nav button{position:relative;flex:1;border:0;background:transparent;border-radius:12px;font-size:12px;padding:5px 2px}.bottom-nav button>span{display:block;font-size:26px;line-height:1.2;margin-bottom:3px}.bottom-nav button.selected{background:#ecd399;color:#654526}.bottom-nav button.selected:after{content:'';position:absolute;bottom:0;left:35%;right:35%;height:3px;background:#cc884b;border-radius:9px}.bottom-nav i{position:absolute;top:4px;right:22%;width:7px;height:7px;border-radius:50%;background:#d58750;display:none}.save-status{font:8px 'Noto Serif SC',serif;position:fixed;bottom:3px;left:50%;transform:translateX(-50%);color:#98836a;z-index:30;white-space:nowrap}#content-view{min-height:65vh;padding:12px 15px 20px}.page-head{display:flex;justify-content:space-between;align-items:center;padding:10px 1px 18px}.page-head h2{font:27px 'Ma Shan Zheng','KaiTi',serif;margin:3px 0}.page-head p{margin:5px 0 0;font-size:11px;color:#96846b}.page-head>span{font-size:40px;color:#b49b73}.subtabs{display:flex;gap:7px;margin:0 0 16px}.subtabs span{background:#ede5d4;border-radius:7px;padding:6px 11px;font-size:11px}.subtabs span.active{background:#8e976e;color:white}.card{border:1px solid #c8b292;border-radius:13px 16px 11px 13px;padding:14px;margin-bottom:11px;background:#fffbf0;box-shadow:0 3px 0 #c4ae8620}.card-top{display:flex;align-items:center;gap:10px;margin-bottom:10px}.avatar{width:55px;height:55px;flex-shrink:0;border-radius:50%;background:#f3e8cb;border:1px solid #c9b591;overflow:hidden}.avatar svg{width:100%;height:100%}.card h3{font-size:14px;margin:0 0 4px}.card small{font-size:10px;color:#97846b}.card .badge{margin-left:auto;font-size:10px;background:#efe9d7;border-radius:5px;padding:4px 7px;color:#7a8058}.recipe{display:flex;align-items:center;gap:10px;background:#f7edd9;border:1px dashed #d5bd96;border-radius:10px;padding:12px;margin-bottom:12px}.recipe .food{font-size:37px}.recipe strong{font-size:13px}.recipe p{font-size:10px;color:#947c5d;margin:4px 0}.card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.card-footer>span{font-size:11px;color:#aa8045}.empty{text-align:center;padding:35px 15px;color:#a48f71}.empty span{font-size:45px;display:block}.empty p{font-size:12px;line-height:2}.section-label{font-size:13px;margin:21px 0 12px;font-weight:600}.staff-art{width:105px;flex-shrink:0}.staff-card{display:flex;align-items:center;gap:15px}.staff-info{flex:1}.staff-info p{font-size:10px;color:#8a7a60;line-height:1.8}.staff-info .btn{font-size:11px;width:100%;padding:7px}.stats-row{display:flex;justify-content:space-between;margin:8px 0;font-size:10px}.shop-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.shop-card{margin:0;text-align:center;padding:15px 9px}.item-art{font-size:50px;display:block;padding:5px 0 15px}.shop-card p{font-size:10px;color:#988162;margin:4px 0 12px}.shop-card .btn{font-size:11px;width:100%;padding:7px}.task-progress{display:flex;gap:10px;align-items:center;font-size:11px;margin:13px 0}.task-progress .meter{flex:1}.task-card .card-footer>span{font-size:10px}.sign-box{background:#f1e1be;position:relative;overflow:hidden}.sign-box h3{font-size:18px}.sign-box p{font-size:11px;line-height:1.8}.sign-days{display:flex;gap:5px;margin:14px 0}.sign-days span{flex:1;text-align:center;border:1px solid #c6ad7e;border-radius:7px;padding:7px 0;background:#fffae8;font-size:10px}.sign-days span.done{background:#899263;color:white}.sign-days b{display:block;font-size:17px;padding-top:4px}.help-text{font-size:11px;line-height:1.9;color:#947e60}.setting-row{display:flex;justify-content:space-between;align-items:center;border-bottom:1px dashed #d8c8ac;padding:14px 0;font-size:12px}.setting-row:last-child{border:0}.setting-row a{color:#929961}.decor-preview{height:180px;border:1px solid #977851;border-radius:12px;overflow:hidden;background:url('/assets/cafe.png') center 60%/cover;position:relative;margin-bottom:15px}.decor-preview>span{position:absolute;bottom:13px;left:14px;background:#fff6e8de;border-radius:8px;padding:7px;font-size:11px}#toast{position:fixed;bottom:112px;left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;background:#453f30ee;color:#fff9e9;border:1px solid #ecdebe;padding:12px 19px;border-radius:13px;z-index:100;font-size:12px;max-width:90vw;width:max-content;transition:.25s}#toast.show{opacity:1;transform:translate(-50%,0)}dialog{border:1.5px solid #8e7858;border-radius:22px 18px 24px 18px;background:var(--paper);color:var(--ink);padding:20px;width:calc(100% - 30px);max-width:430px;box-shadow:0 20px 100px #30271e55}dialog::backdrop{background:#44392ca8;backdrop-filter:blur(3px)}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.modal-head small{font-size:8px;letter-spacing:2px;color:#988160}.modal-head h2{font:25px 'Ma Shan Zheng','KaiTi',serif;margin:6px 0 15px}.chat-messages{height:min(43dvh,330px);overflow-y:auto;padding:10px 0;display:flex;flex-direction:column;gap:12px}.chat-bubble{padding:12px;border-radius:3px 13px 13px 13px;border:1px solid #d4c5a8;background:#fffaf0;font-size:12px;line-height:1.9;align-self:flex-start;max-width:92%;white-space:pre-wrap}.chat-bubble.user{background:#e4e7d5;align-self:flex-end;border-radius:13px 3px 13px 13px}.chat-suggestions{display:flex;gap:8px;margin:12px 0}.chat-suggestions button{border:1px solid #c8b696;border-radius:12px;padding:5px 9px;background:transparent;font-size:10px}#chat-form{display:flex;gap:8px}#chat-input{width:100%;min-width:0;border:1px solid #bcab8e;padding:10px;border-radius:9px;background:#fffaf0;font-size:12px}.chat-note{font-size:9px;text-align:center;color:#a2927b;margin:12px 0 0}#welcome{text-align:center;padding:23px}.welcome-cat{width:150px;margin:0 auto -10px}#welcome h2{font:31px 'Ma Shan Zheng','KaiTi',serif;margin:14px 0}#welcome p{font-size:12px;line-height:2;color:#968166}.eyebrow{font:9px Georgia,serif;letter-spacing:2px;color:#9d895f}.welcome-steps{display:flex;gap:8px;justify-content:center;font-size:10px;padding:15px 0 20px}#welcome>.btn{width:85%;font-size:17px;padding:13px}#welcome>small{font-size:8px;display:block;margin:17px 0 0;color:#a18b6c}.desktop-note{display:none}.earn-float{position:absolute;font:bold 23px Georgia;color:#ffed9b;text-shadow:1px 2px #765030;z-index:22;pointer-events:none;animation:earn 1.5s forwards}.connection-error{background:#f9e5d3;padding:15px;border:1px solid #ca9269;border-radius:10px;margin:10px;line-height:1.8;font-size:12px}.editing-banner{position:absolute;bottom:30px;left:15px;right:15px;z-index:25;background:#fcf6e6ed;border:1px solid #827251;border-radius:12px;padding:10px;display:flex;justify-content:space-between;align-items:center;font-size:10px}.editing-banner .btn{padding:6px 12px;font-size:11px}@keyframes breathe{50%{transform:scale(1.018,.984)}}@keyframes walk{from{transform:rotate(-4deg) translateY(-2px)}to{transform:rotate(4deg) translateY(1px)}}@keyframes tail{50%{transform:rotate(10deg)}}@keyframes blink{0%,43%,47%,100%{transform:scaleY(1)}45%{transform:scaleY(.05)}}@keyframes float{50%{transform:translateY(-4px)}}@keyframes earn{to{transform:translateY(-90px);opacity:0}}@media(min-width:1000px){#app{margin-left:calc(50% + 20px);border-left:1px solid #d0c3ae;border-right:1px solid #d0c3ae}.bottom-nav,.save-status{left:calc(50% + 260px)}.desktop-note{display:block;position:fixed;top:22%;right:calc(50% + 80px);max-width:320px}.desktop-note h1{font:43px/1.5 'Ma Shan Zheng','KaiTi',serif;font-weight:400;margin:25px 0 20px}.desktop-note p{font-size:13px;line-height:2.1;color:#958269}.desktop-note small{font-size:9px;color:#aa977e}.note-cat{width:130px;transform:rotate(-6deg);margin-top:26px;margin-left:100px}#toast{left:calc(50% + 260px)}}@media(max-width:359px){.wallet{gap:4px;padding-left:10px;padding-right:10px}.wallet>span{padding:4px 6px}.wallet b{font-size:14px}.scene-tool{width:43px}.brand h1{font-size:30px}.btn{padding:8px 11px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

.scene-top{z-index:160}.scene-tools{z-index:160}.event-card{z-index:170}.editing-banner{z-index:180}.floor-note{z-index:150}
