:root{--ink:#163b30;--green:#22523f;--muted:#748176;--bg:#f4f5ef;--paper:#fffef9;--line:#dde3d8;--orange:#c7673c;--cream:#e7eccf;--shadow:0 16px 42px #183b300a}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:15px;line-height:1.65}button,input,select,textarea{font:inherit}button,a,input,select,textarea{ -webkit-tap-highlight-color:transparent}button{cursor:pointer;border:1px solid var(--line);border-radius:10px;padding:10px 18px;background:var(--paper);color:var(--ink);font-weight:600}button:hover{background:#e8eddf}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #c88e49;outline-offset:3px}input,select,textarea{border:1px solid var(--line);padding:12px;border-radius:10px;background:#fff;color:var(--ink);min-width:0}textarea{resize:vertical}h1,h2,h3,p{margin-top:0}h2{font-size:27px;line-height:1.35;letter-spacing:-.6px}h3{font-size:18px}small{font-size:12px}.topbar{height:100px;max-width:1280px;margin:auto;padding:0 48px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:21px}.brand small{display:block;font-size:9px;letter-spacing:2px;font-weight:500;line-height:1.3}.brand-mark{display:grid;place-items:center;background:var(--green);color:#fff;width:44px;height:44px;border-radius:14px;transform:rotate(-5deg);font-size:23px}nav{display:flex;align-items:center;gap:24px;font-size:13px}.pill{background:#e7ecd9;color:var(--green);border:1px solid #d4dfc4;padding:5px 12px;border-radius:40px;font-size:12px;white-space:nowrap}.pill.orange{color:#9f532e;background:#f8e8d9;border-color:#f0d8c0}.shell{max-width:1280px;padding:0 48px;margin:auto}.hero{display:flex;position:relative;overflow:hidden;background:var(--green);color:#f7fae9;border-radius:22px;min-height:340px;padding:44px 52px;justify-content:space-between}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;margin-bottom:14px}.hero .eyebrow{color:#d3dfbd}.hero h1{font-size:44px;line-height:1.4;letter-spacing:1px;font-weight:800;margin-bottom:15px}.hero-copy{font-size:14px;color:#d0ddc9;letter-spacing:1px}.hero-bottom{display:flex;align-items:center;gap:8px;font-size:12px;margin-top:30px;color:#e4ebd4}.live-dot{width:7px;height:7px;background:#d6df9f;border-radius:50%}.meal-art{position:relative;width:330px;flex-shrink:0;margin-left:20px;display:flex;justify-content:center;align-items:center}.plate{position:relative;border-radius:50%;width:240px;height:240px;background:#f6f1d7;box-shadow:0 0 0 15px #dfe6c5,0 0 0 17px #f8f7e955,15px 25px 25px #102d2225;transform:rotate(-12deg);display:grid;place-items:center}.rice{width:150px;height:155px;padding:27px 12px;border-radius:50%;background:#fffcef;color:var(--ink);text-align:center;font-size:18px;line-height:1.8;border:2px dashed #e0dcb7}.rice b{font-size:22px}.leaf{position:absolute;width:60px;height:30px;border-radius:0 80% 0 80%;background:#76a668;border:3px solid #5d8755}.l1{top:35px;left:7px;transform:rotate(20deg)}.l2{top:13px;left:45px;transform:rotate(65deg)}.tomato{position:absolute;bottom:25px;left:30px;background:#d77b48;width:46px;height:46px;border-radius:50%;border:6px solid #e9a370}.egg{position:absolute;top:100px;right:-5px;width:80px;height:58px;border-radius:50%;background:#fffde9;transform:rotate(35deg)}.egg:after{content:"";position:absolute;width:30px;height:30px;top:15px;left:23px;background:#ecb04d;border-radius:50%}.orbit{position:absolute;width:410px;height:410px;border:1px solid #ffffff1c;border-radius:50%}.art-caption{position:absolute;bottom:-12px;font-size:9px;letter-spacing:2px;color:#cddbbd}.notice{padding:16px 20px;background:#eeefdf;border:1px solid #e0e4cc;border-radius:12px;color:#647047;font-size:13px;margin:20px 0;line-height:1.8}.catalog-section{margin:42px 0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}.section-heading h2{margin:0}.section-heading .eyebrow{margin:0 0 7px;color:var(--muted)}.muted{color:var(--muted);font-size:13px}.search-wrap{display:flex;align-items:center;gap:12px;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:6px 8px 6px 18px;margin-bottom:24px}.search-wrap>span{font-size:28px}.search-wrap input{border:0;background:transparent;flex:1;padding:8px 0;outline-offset:0}.search-wrap button{background:var(--green);color:white;border:0;min-width:75px}.shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.shop-card,.product-card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:22px;text-align:left;display:flex;flex-direction:column;align-items:flex-start;gap:10px;box-shadow:var(--shadow);transition:transform .15s,border-color .15s}.shop-card:hover,.product-card:hover{transform:translateY(-3px);border-color:#a9bb95;background:var(--paper)}.shop-icon{display:grid;place-items:center;width:46px;height:46px;background:#e7eddc;border-radius:12px;font-size:20px;color:#315b44}.shop-card:nth-child(3n+2) .shop-icon{background:#f5e8d1;color:#a26935}.shop-card:nth-child(3n+3) .shop-icon{background:#e6eae8;color:#47625c}.shop-card h3,.product-card h3{margin:0;font-size:16px;line-height:1.55;min-height:50px;word-break:break-word}.shop-card .shop-meta{display:flex;justify-content:space-between;gap:12px;width:100%;font-size:12px;color:var(--muted);font-weight:400}.shop-foot{border-top:1px solid #e9ecdf;width:100%;padding-top:12px;margin-top:auto;display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:400;color:#809070}.price{color:var(--orange);font-size:20px;font-weight:700;letter-spacing:-.5px}.price small{font-size:11px;color:var(--muted);font-weight:400;margin-left:6px}.categories{display:flex;gap:8px;overflow:auto;margin:0 0 16px}.categories button{white-space:nowrap;font-size:12px;border-radius:30px;padding:6px 14px}.categories button.active{background:var(--green);color:#fff}.text-button{background:transparent;border:0;color:var(--green);font-size:13px}.empty{grid-column:1/-1;text-align:center;background:var(--paper);border:1px dashed var(--line);border-radius:14px;padding:55px 20px;color:var(--muted)}.pager{display:flex;justify-content:center;align-items:center;gap:25px;margin-top:26px}.pager[hidden],[hidden]{display:none!important}.how{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);gap:32px;padding:35px 0 50px}.how span{font-size:11px;letter-spacing:2px;color:var(--orange)}.how h3{margin:5px 0}.how p{font-size:13px;color:var(--muted);margin:0}footer{display:flex;justify-content:center;gap:25px;flex-wrap:wrap;padding:28px 30px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}dialog{width:min(660px,92vw);max-height:85vh;overflow:auto;border:1px solid var(--line);border-radius:18px;padding:30px;color:var(--ink);background:var(--paper);box-shadow:0 30px 100px #0003}dialog::backdrop{background:#14372677;backdrop-filter:blur(3px)}.dialog-close{float:right;font-size:25px;line-height:1;padding:2px 9px;border:0;background:transparent}.detail-row{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:12px 0;font-size:14px}.detail-row span{overflow-wrap:anywhere}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);max-width:90vw;background:var(--ink);color:white;padding:12px 24px;border-radius:12px;box-shadow:var(--shadow);z-index:20;font-size:14px}.admin-layout{max-width:1380px;margin:0 auto;padding:15px 40px 50px}.admin-nav{display:flex;gap:10px;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:26px;overflow:auto}.admin-nav button{white-space:nowrap}.admin-nav button.active,.primary{background:var(--green);color:#fff}.panel{background:var(--paper);padding:26px;border:1px solid var(--line);border-radius:14px;margin-bottom:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label{display:flex;flex-direction:column;gap:6px;font-size:13px}.form-grid .wide{grid-column:1/-1}.form-grid label.check{flex-direction:row;align-items:center}.form-grid textarea{min-height:90px}.login-panel{max-width:440px;margin:60px auto}.login-panel input{width:100%;margin-bottom:15px}.checks{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.check-item{padding:16px;border:1px solid var(--line);border-radius:10px;font-size:14px;background:#f8f9f2}.check-item span{display:block;font-size:12px;color:var(--muted)}.toolbar{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px}.toolbar input{flex:1;min-width:180px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:13px 10px;vertical-align:top}th{color:var(--muted);font-weight:500;white-space:nowrap}td input{width:100px;padding:7px}td input.name-input{width:150px}td button{font-size:12px;white-space:nowrap}.mono{font-family:ui-monospace,Consolas,monospace;font-size:12px;width:100%;min-height:160px}.order-card{margin-bottom:16px}.order-title{display:flex;justify-content:space-between;gap:15px}.order-card h3{font-size:16px;margin-bottom:8px}.order-items{padding-left:20px;font-size:13px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.actions button{font-size:12px}.danger{color:#a5402b;border-color:#dbb29f}.error-box{color:#a5402b;background:#f9e9df}.summary-number{font-size:38px;font-weight:800;line-height:1.2}.hint{font-size:12px;color:var(--muted);line-height:1.7}.checkbox-line{display:flex;gap:8px;align-items:center;margin:16px 0;font-size:13px}@media(prefers-reduced-motion:reduce){*{transition:none!important}}@media(max-width:900px){.shop-grid{grid-template-columns:repeat(2,1fr)}.meal-art{width:250px}.plate{width:200px;height:200px}.hero{padding:36px}.hero h1{font-size:36px}.rice{width:140px;height:140px}.topbar{padding:0 28px}.shell{padding:0 28px}}@media(max-width:600px){body{font-size:14px}.topbar{height:78px;padding:0 18px}.brand{font-size:18px}.brand-mark{width:36px;height:36px;font-size:20px}nav{gap:10px;font-size:11px}.shell{padding:0 16px}.hero{padding:28px 24px;min-height:305px;border-radius:16px}.hero h1{font-size:31px}.hero .eyebrow{font-size:9px;letter-spacing:1px}.hero-copy{font-size:11px}.hero-bottom{font-size:10px;max-width:240px}.meal-art{position:absolute;right:-70px;bottom:18px;width:200px;opacity:.16;pointer-events:none}.art-caption{display:none}.hero>div:first-child{position:relative;z-index:1}.section-heading{align-items:flex-end}.section-heading h2{font-size:23px}.section-heading .muted{font-size:11px;text-align:right}.section-heading .eyebrow{font-size:9px}.shop-grid{gap:10px}.shop-card,.product-card{padding:15px 13px;border-radius:12px;gap:8px}.shop-card h3,.product-card h3{font-size:13px;min-height:60px}.shop-icon{width:36px;height:36px;font-size:17px}.shop-meta{flex-wrap:wrap;gap:3px!important;font-size:10px!important}.shop-foot{font-size:10px}.price{font-size:16px}.price small{display:block;margin:0;font-size:10px}.notice{font-size:11px;padding:12px 14px;margin:14px 0}.catalog-section{margin:28px 0}.search-wrap{padding-left:12px;gap:8px;margin-bottom:18px}.search-wrap input{font-size:12px;min-width:0}.search-wrap button{min-width:55px;font-size:12px;padding:8px}.how{gap:15px;padding:24px 0}.how h3{font-size:15px}.how p{font-size:11px}.how span{font-size:10px}footer{gap:12px;padding:22px 18px;font-size:10px}.admin-layout{padding:10px 16px 40px}.form-grid,.checks{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.panel{padding:18px}.order-title{flex-direction:column;gap:4px}dialog{padding:22px}.pager{gap:16px}.pager button{padding:8px 12px}}
body{padding-bottom:85px}.web-cart-bar{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);width:min(650px,calc(100% - 32px));display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--green);color:#fff;border:0;border-radius:16px;padding:18px 24px;box-shadow:0 8px 35px #173f3233;z-index:4}.web-cart-bar:hover{background:#173f32}.web-cart-bar b{background:#e7dfaf;color:var(--ink);border-radius:30px;padding:2px 8px;margin-left:8px}.web-cart-bar #cart-preview{font-size:13px;font-weight:400}.select-options{border:1px solid var(--line);border-radius:12px;padding:12px;margin:18px 0}.select-options legend{font-size:13px;padding:0 7px}.option-radio{display:flex;gap:9px;align-items:center;padding:8px 0;font-size:13px}.option-radio span:last-child{margin-left:auto}.quantity-input{display:flex;align-items:center;gap:15px;font-size:13px;margin:15px 0}.quantity-input input{width:90px}.selection-line{padding:15px 0;border-bottom:1px solid var(--line)}.selection-line h3{font-size:15px;margin:0}.selection-line p{margin:7px 0}.selection-row{display:flex;justify-content:space-between;align-items:center;gap:10px}.selection-row>span{color:var(--orange);font-weight:700}.selection-row small{display:block;font-size:11px;font-weight:400;color:var(--muted)}.stepper{display:flex;align-items:center;gap:10px}.stepper button{padding:5px 12px;font-size:13px}.selection-bill{margin:16px 0}.selection-bill .price{font-size:20px}#copy-text{margin-top:20px;min-height:180px}#product-form>label:first-child{display:block}#edit-name{display:block;width:100%;margin-top:8px}@media(max-width:600px){.web-cart-bar{padding:15px;font-size:12px;bottom:12px}.web-cart-bar #cart-preview{font-size:11px}.selection-row{flex-wrap:wrap;gap:12px}.stepper{margin-left:auto}.selection-bill .price{font-size:16px}.option-radio{flex-wrap:wrap}}
button.primary:hover,button.primary:focus-visible{background:#173f32;color:#fff}button.primary:disabled{background:#657e70;color:#fff;opacity:1}#cart-dialog .actions{position:sticky;bottom:-22px;background:var(--paper);padding:12px 0;margin-bottom:0}
