:root{--ink:#4b3026;--brown:#67442f;--paper:#faf7f0;--cream:#f0e8d9;--yellow:#f2c56e;--muted:#8b796a;--line:#e9dfd0;--green:#376047;font-family:'Segoe UI','Microsoft YaHei',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:90px}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #be8942;outline-offset:4px}button{color:inherit}input,textarea{min-width:0}h1,h2,h3,p{margin-top:0}button{border:0}img{max-width:100%}.wrap{max-width:1190px;margin:0 auto;padding-left:32px;padding-right:32px}.site-header{height:96px;max-width:1280px;padding:0 48px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;align-items:center;gap:13px;font-weight:750;font-size:21px;white-space:nowrap}.brand small{display:block;font-size:8px;letter-spacing:1.4px;margin-top:6px;font-weight:500}.brand-seal{border:2px solid var(--brown);border-radius:50%;width:57px;height:57px;display:flex;align-items:center;justify-content:center;flex-direction:column;font-family:serif;font-size:21px;transform:rotate(-7deg);color:var(--brown)}.brand-seal small{font-size:7px;letter-spacing:2px;margin-top:1px}.site-header nav{display:flex;align-items:center;gap:30px;font-size:13px}.cart-trigger{background:var(--brown);color:white;padding:12px 17px;border-radius:7px;min-height:44px}.cart-trigger span{border-left:1px solid #ffffff4a;padding-left:11px;margin-left:9px;font-size:12px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;min-height:565px;padding-top:38px;padding-bottom:45px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:var(--muted)}.eyebrow i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#b68b44;margin-right:7px}.hero h1{font-family:Georgia,'Songti SC','SimSun',serif;font-size:58px;line-height:1.35;letter-spacing:1px;font-weight:800;margin:25px 0 18px}.hero h1 span{position:relative;white-space:nowrap}.hero h1 span:after{content:'';position:absolute;bottom:2px;height:9px;background:var(--yellow);width:92%;left:0;z-index:-1;border-radius:50%}.hero p{color:var(--muted);font-size:14px;line-height:1.9}.hero-actions{display:flex;gap:17px;align-items:center;margin-top:28px;flex-wrap:wrap}.button{border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:48px;padding:14px 22px;font-weight:650;font-size:14px;transition:background .2s,transform .2s}.button:active{transform:translateY(1px)}.primary{background:var(--brown);color:#fffaf0}.primary:hover{background:#4e3021}.pickup-hint{font-size:10px;color:var(--muted)}.hero-note{margin-top:34px;display:flex;gap:12px;align-items:center;font-size:12px}.hero-note span{font-family:serif;font-style:italic}.hero-note small{color:var(--muted);font-size:10px;border-left:1px solid #cfbaa0;padding-left:12px}.hero-art{position:relative}.hero-art img{display:block;width:100%}.art-caption{display:block;text-align:center;font-size:9px;color:#967f66;margin-top:5px}.round-stamp{position:absolute;right:-4px;top:22px;transform:rotate(12deg);border:1px dashed #927249;border-radius:50%;width:102px;height:102px;text-align:center;display:flex;flex-direction:column;justify-content:center;font-size:13px;letter-spacing:2px;background:#f9f0db}.round-stamp b{font-family:serif;font-size:18px;margin:3px 0}.round-stamp small{font-size:6px;letter-spacing:1px}.promise-strip{display:flex;justify-content:center;gap:100px;background:var(--cream);padding:19px 20px;font-size:11px;letter-spacing:2px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.menu-section{padding-top:64px;padding-bottom:54px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:30px}h2{font-family:Georgia,'SimSun',serif;font-size:31px;line-height:1.4;margin:12px 0 0}.section-heading p{font-size:12px;color:var(--muted);margin:0 0 5px}.menu-toolbar{display:flex;justify-content:space-between;gap:20px;margin-bottom:27px}.categories{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none}.category{white-space:nowrap;min-height:44px;border:1px solid var(--line);border-radius:7px;padding:11px 15px;background:transparent;font-size:12px}.category.active{background:var(--brown);border-color:var(--brown);color:#fff}.search-box{display:flex;gap:8px;align-items:center;border:1px solid var(--line);padding:0 13px;border-radius:7px;width:215px;flex-shrink:0;background:#fffaf3}.search-box span{font-size:24px;color:var(--muted)}.search-box input{border:0;background:transparent;width:100%;font-size:11px;height:44px;outline-offset:0}.menu-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.product-card{border:1px solid var(--line);background:#fffdf8;border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.product-visual{height:157px;position:relative;background:#f2e9d9;display:flex;justify-content:center;align-items:center;overflow:hidden}.product-visual:after{content:'示意插画';position:absolute;bottom:8px;right:10px;font-size:8px;color:#8b796a}.product-visual svg{height:138px;width:155px}.product-card[data-category=fruit] .product-visual{background:#ececdd}.product-card[data-category=coffee] .product-visual{background:#e8dfd5}.product-card[data-category=waffle] .product-visual{background:#f6ead3}.product-card[data-category=egg] .product-visual{background:#ece7dc}.card-badge{position:absolute;top:11px;left:11px;font-size:9px;background:#fffaf0d9;border:1px solid #e2d1b5;padding:4px 7px;border-radius:4px}.product-body{padding:16px;display:flex;flex-direction:column;flex:1}.product-body .category-label{font-size:9px;color:var(--muted);letter-spacing:1px}.product-body h3{font-size:16px;line-height:1.4;margin:7px 0 5px}.product-body p{font-size:10px;color:var(--muted);margin:0 0 18px;line-height:1.6}.card-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:auto}.price{font-size:16px;font-weight:750}.price small{font-weight:400;font-size:10px;color:var(--muted);margin-left:3px}.add-button{min-width:44px;min-height:44px;border-radius:50%;background:#f3e6ce;font-size:24px;color:var(--brown)}.add-button:hover{background:var(--yellow)}.menu-footnote{text-align:center;color:var(--muted);font-size:11px;margin:28px 0 0}.visit-section{border-top:1px solid var(--line);padding-top:43px;padding-bottom:46px;display:grid;grid-template-columns:1fr 1fr;gap:70px}.visit-section h2{font-size:29px;margin-bottom:18px}.visit-section p{font-size:12px;color:var(--muted);line-height:1.9;overflow-wrap:anywhere}.visit-info{padding-top:10px}.visit-info>div{display:grid;grid-template-columns:90px 1fr;gap:16px;border-bottom:1px solid var(--line);padding:18px 0;font-size:12px}.visit-info span{color:var(--muted)}.visit-info strong{font-weight:500;overflow-wrap:anywhere}.visit-info p{font-size:10px;margin-top:16px}.text-link{font-size:12px;text-decoration:underline}footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:25px;padding-bottom:25px;font-size:12px}footer small{display:block;font-size:7px;letter-spacing:1.4px;margin-top:6px}footer>span:last-child{color:var(--muted);font-size:10px}.mobile-cart{display:none}dialog{border:1px solid var(--line);border-radius:18px;padding:28px;width:min(480px,calc(100% - 28px));max-height:90dvh;color:var(--ink);background:var(--paper);box-shadow:0 15px 90px #35231340;overscroll-behavior:contain}dialog::backdrop{background:#38271977;backdrop-filter:blur(3px)}body:has(dialog[open]){overflow:hidden}.close{background:#f0e5d3;border-radius:50%;width:40px;height:40px;font-size:25px;position:absolute;right:17px;top:17px;z-index:1}.detail-visual{height:155px;display:flex;justify-content:center;background:var(--cream);border-radius:12px;margin:-4px -4px 20px}.detail-visual svg{height:150px;width:170px}.product-dialog h2{font-family:inherit;font-size:23px;margin:5px 0 10px}.subtle{font-size:11px;color:var(--muted);line-height:1.8}.option-label{font-size:13px;font-weight:650;display:block;margin:22px 0 12px}.size-options{display:flex;gap:10px}.option{position:relative;flex:1}.option input{position:absolute;opacity:0}.option span{display:block;border:1px solid var(--line);border-radius:8px;padding:13px;font-size:13px;text-align:center}.option input:checked+span{border-color:var(--brown);background:#eee1c9;color:var(--brown);font-weight:650}.option input:focus-visible+span{outline:3px solid #be8942}.topping-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.topping-option{min-height:44px;display:flex;gap:6px;align-items:center;font-size:12px;border:1px solid var(--line);padding:8px;border-radius:7px}.topping-option input{accent-color:var(--brown);width:17px;height:17px}.topping-option:has(:checked){background:#eee1c9;border-color:#99785a}.topping-option small{margin-left:auto;color:var(--muted)}.dialog-bottom{display:flex;gap:12px;align-items:center;margin-top:25px}.dialog-bottom>.button{flex:1;padding-left:10px;padding-right:10px;gap:8px}.stepper{display:flex;align-items:center;justify-content:center;border:1px solid #d6c9b4;border-radius:7px;overflow:hidden}.stepper button{width:39px;min-height:44px;background:transparent;font-size:19px}.stepper input{width:38px;height:44px;text-align:center;border:0;background:transparent;color:var(--ink);appearance:textfield;font-size:14px}.stepper input::-webkit-inner-spin-button{appearance:none}.cart-dialog{width:min(490px,calc(100% - 20px))}.cart-dialog h2{margin:10px 0 24px}.cart-line{padding:17px 0;border-top:1px solid var(--line)}.cart-line-top{display:flex;gap:10px;justify-content:space-between;font-size:13px;line-height:1.6}.cart-line-top strong{white-space:nowrap}.cart-line-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.cart-line-bottom .stepper button{min-height:40px}.cart-line-bottom .stepper input{height:40px}.remove{background:transparent;color:var(--muted);font-size:12px;min-height:44px;padding:0 10px}.cart-summary{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:22px;margin-top:20px}.cart-summary strong{font-size:27px}.field{display:block;font-size:12px;margin:18px 0}.field>span{color:#ad6640}.field input,.field textarea{display:block;background:#fffdf8;border:1px solid #dbcebb;border-radius:7px;padding:12px;width:100%;margin-top:8px;color:var(--ink);min-height:46px}.order-disclaimer{padding:12px;background:#f1e8d6;font-size:11px;color:#7d694e;border-radius:7px;line-height:1.7}.whatsapp{background:var(--green);color:white;width:100%;margin-top:10px;font-size:14px}.clear-cart{background:transparent;color:var(--muted);font-size:11px;min-height:44px;display:block;margin:5px auto 0}.upsell{background:#f7edda;padding:13px;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px}.upsell button{background:#e9ce9a;border-radius:6px;padding:10px;white-space:nowrap;min-height:44px}.empty{text-align:center;padding:35px 12px;color:var(--muted);line-height:1.9;font-size:13px}.form-error{color:#ad4133;font-size:12px;line-height:1.7;min-height:0;margin:10px 0 0}.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:var(--brown);color:white;padding:13px 22px;border-radius:9px;box-shadow:0 4px 20px #0002;opacity:0;pointer-events:none;transition:opacity .2s;font-size:13px;z-index:10;max-width:90%;text-align:center}.toast.show{opacity:1}[hidden]{display:none!important}@media(min-width:1300px){.hero{min-height:600px}.hero h1{font-size:63px}}@media(max-width:1020px){.site-header{padding:0 28px}.menu-toolbar{flex-direction:column}.search-box{width:100%}.hero h1{font-size:47px}.hero-actions{gap:12px}.hero{gap:10px;min-height:510px}.menu-grid{grid-template-columns:repeat(3,1fr)}.promise-strip{gap:50px}.round-stamp{width:85px;height:85px;right:0}}@media(max-width:700px){.wrap{padding-left:20px;padding-right:20px}.site-header{height:78px;padding:0 20px;gap:8px}.brand{font-size:16px;gap:9px}.brand-seal{width:43px;height:43px;font-size:18px}.brand small{font-size:6px;letter-spacing:.7px}.brand-seal small{font-size:6px}.site-header nav{gap:12px;font-size:11px}.nav-menu,.cart-trigger{display:none}.hero{grid-template-columns:1fr;gap:0;padding-top:33px;padding-bottom:29px;min-height:0}.hero h1{font-size:43px;margin-top:20px;margin-bottom:16px;line-height:1.3}.hero p{font-size:13px}.hero-art{width:90%;max-width:420px;margin:10px auto 0}.hero-copy{position:relative}.hero-actions{margin-top:20px}.hero-note{margin-top:23px}.round-stamp{width:79px;height:79px;font-size:10px;top:10px}.round-stamp b{font-size:15px}.round-stamp small{font-size:5px}.promise-strip{gap:0;justify-content:space-around;font-size:9px;letter-spacing:0;padding:16px 5px}.menu-section{padding-top:35px;padding-bottom:34px}.section-heading{display:block;margin-bottom:22px}.section-heading h2{font-size:26px;margin:9px 0}.section-heading p{font-size:11px}.eyebrow{font-size:9px;letter-spacing:1.6px}.menu-toolbar{gap:12px;margin-bottom:20px}.categories{margin-right:-20px;padding-right:20px}.category{padding:10px 13px;font-size:11px}.search-box input{font-size:12px}.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.product-visual{height:135px}.product-visual svg{height:120px;width:130px}.product-body{padding:12px}.product-body h3{font-size:14px}.product-body p{font-size:9px;margin-bottom:10px}.product-body .category-label{font-size:8px}.price{font-size:14px}.price small{font-size:9px}.add-button{min-width:42px;min-height:44px;font-size:23px}.card-badge{font-size:8px;top:8px;left:8px}.menu-footnote{font-size:9px;line-height:1.7}.visit-section{grid-template-columns:1fr;gap:10px;padding-top:30px;padding-bottom:28px}.visit-section h2{font-size:26px}.visit-info{padding-top:0}footer{padding-bottom:110px;font-size:11px}.mobile-cart{display:flex;align-items:center;justify-content:space-between;position:fixed;bottom:calc(13px + env(safe-area-inset-bottom));left:16px;right:16px;z-index:3;border-radius:10px;padding:16px 19px;background:var(--brown);color:white;box-shadow:0 5px 25px #52301940;min-height:58px;font-size:13px}.mobile-cart b{background:#ffffff26;font-size:11px;padding:3px 7px;border-radius:5px;margin-left:6px}.mobile-cart strong{font-size:15px}.toast{bottom:95px}dialog{padding:23px;max-height:88dvh}.cart-dialog{padding:23px 20px}.dialog-bottom{gap:8px}.dialog-bottom .button{font-size:12px}.hero-art .art-caption{font-size:8px}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*{transition:none!important}}@media(max-width:360px){.site-header{padding:0 14px}.brand{font-size:14px}.hero h1{font-size:37px}.wrap{padding-left:16px;padding-right:16px}.product-body{padding:9px}.price{font-size:13px}.topping-options{grid-template-columns:1fr}.dialog-bottom{flex-wrap:wrap}.dialog-bottom .button{min-width:160px}}
:root .categories{max-width:100%}
@media(max-width:700px){.categories{margin-right:0;padding-right:0}}
.product-visual img{width:100%;height:100%;object-fit:cover}.product-visual:has(img):after{display:none}.detail-visual img{height:100%;width:100%;object-fit:contain;border-radius:10px}.image-kind-label{position:absolute;bottom:7px;right:8px;font-size:8px;background:#fff9eddb;padding:3px 6px;border-radius:4px;color:#795d42}.detail-visual{position:relative}.draft-history{margin-top:22px;border-top:1px solid #e9dfd0;padding-top:16px;font-size:12px}.draft-history summary{cursor:pointer;min-height:44px;padding:12px 0}.draft-history article{padding:12px 0;border-top:1px solid #e9dfd0;font-size:11px;line-height:1.8}.draft-history article p{margin:5px 0;font-size:10px;color:#8b796a}.product-body .description{white-space:pre-wrap;overflow-wrap:anywhere}#cart-price-notice:empty{display:none}

.menu-sync{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px;color:var(--muted);font-size:12px}.menu-sync button{padding:10px 14px;min-height:44px;border:1px solid var(--line);border-radius:7px;background:var(--cream);flex-shrink:0}.menu-sync .error{color:#a04432}@media(max-width:600px){.menu-sync{font-size:10px;align-items:flex-start}.menu-sync button{font-size:11px}}
