:root{--ink: #2b2420;--ink-2: #4d433c;--ink-3: #5b5048;--line: #d6cbb8;--paper: #f4f1ec;--serif: "Noto Serif TC", serif;--sans: "Noto Sans TC", sans-serif}*{box-sizing:border-box}body{margin:0;font-family:var(--sans);color:var(--ink);background:#fff}a{color:var(--ink)}a:hover{opacity:.75}img{max-width:100%;display:block}button,input,textarea{font:inherit;color:inherit}.site{background:#fff;min-height:100vh}.wrap{max-width:1200px;margin:0 auto;padding-left:24px;padding-right:24px}.section{padding-top:48px;padding-bottom:56px}.muted{color:var(--ink-2)}.small{font-size:14px}.empty{padding:24px 0}.mt{margin-top:48px}.placeholder{background:var(--photo);display:flex;align-items:center;justify-content:center;color:var(--ink-3);font-size:15px;text-align:center;padding:16px}.masthead{padding-top:32px;display:flex;flex-direction:column;align-items:center;gap:20px}.brand{text-decoration:none;text-align:center}.brand-name{display:block;font-family:var(--serif);font-weight:300;font-size:38px;letter-spacing:.12em;padding-left:.12em}.mainnav{width:100%;display:flex;flex-wrap:wrap;justify-content:center;gap:0 36px;font-size:15px;letter-spacing:.04em;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:4px 0}.mainnav a{text-decoration:none;padding:12px 0}.mainnav a.active{color:var(--accent)}.pills{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px}.pills-left{justify-content:flex-start;margin:16px 0}.pill{min-height:44px;min-width:44px;padding:8px 16px;font-size:14px;cursor:pointer;border:1px solid var(--accent);background:transparent;color:var(--accent)}.pill[aria-pressed=true]{background:var(--accent);color:#fff}.hero{padding-top:40px;padding-bottom:48px;display:flex;flex-wrap:wrap;gap:40px;align-items:flex-end}.hero-photo{flex:3 1 560px;min-width:0;aspect-ratio:3 / 2;object-fit:cover}.hero-text{flex:2 1 320px;min-width:0;display:flex;flex-direction:column;gap:20px;padding-bottom:8px}.almanac{margin:0;font-size:14px;color:var(--ink-3)}.hero-title{margin:0;font-family:var(--serif);font-weight:500;font-size:clamp(32px,4vw,44px);line-height:1.45;white-space:pre-line}.lead{margin:0;font-size:16px;line-height:2;color:var(--ink-2)}.link-line{align-self:flex-start;display:inline-block;text-decoration:none;border-bottom:1px solid var(--ink);padding:10px 0;font-size:16px}.split{display:flex;flex-wrap:wrap;gap:40px}.split-side{flex:1 1 280px;min-width:0}.split-main{flex:3 1 560px;min-width:0}.h2{margin:8px 0 0;font-family:var(--serif);font-weight:500;font-size:32px;letter-spacing:.04em}.h3{margin:0 0 8px;font-family:var(--serif);font-weight:500;font-size:22px}.body{margin-top:16px;font-size:15px;line-height:1.9}.section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px}.menu-list{list-style:none;margin:0;padding:0}.menu-item{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;padding:20px 0;border-bottom:1px solid var(--line)}.thumb{width:88px;height:88px;flex:0 0 88px;object-fit:cover}.menu-text{flex:1 1 240px;min-width:0}.menu-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.menu-name{font-family:var(--serif);font-size:21px;font-weight:500}.menu-desc{display:block;margin-top:4px;font-size:15px;line-height:1.7;color:var(--ink-3)}.menu-price{font-family:var(--serif);font-size:17px}.tag{font-size:13px;color:var(--accent)}.btn,.btn-line{min-height:44px;padding:10px 20px;font-size:14px;cursor:pointer;border:1px solid var(--ink)}.btn{background:var(--ink);color:#fff}.btn-line{background:transparent;color:var(--ink)}.btn:disabled,.btn-line:disabled{background:var(--line);border-color:var(--line);color:var(--ink-2);cursor:not-allowed}.total{text-align:right;font-family:var(--serif);font-size:20px}.qty{display:flex;align-items:center;gap:12px}.btn-qty{width:44px;height:44px;border:1px solid var(--line);background:transparent;cursor:pointer;font-size:18px}.band{background:var(--band);color:var(--paper);margin-top:40px}.band a{color:var(--paper)}.band .post-meta{color:var(--on-band)}.band .post-excerpt{color:#f4f1eccc}.post-grid{margin-top:32px;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:40px}.post-card{text-decoration:none;display:flex;flex-direction:column;gap:14px}.post-photo{aspect-ratio:4 / 5;object-fit:cover;width:100%}.post-meta{font-size:13px;color:var(--accent)}.post-title{font-family:var(--serif);font-size:22px;font-weight:500;line-height:1.5}.post-excerpt{font-size:15px;line-height:1.9;color:var(--ink-2)}.article{max-width:760px}.article-title{font-family:var(--serif);font-weight:500;font-size:clamp(28px,4vw,40px);line-height:1.4;margin:12px 0 24px}.article-photo{margin:24px 0;width:100%}.article-body{font-size:17px;line-height:2.1;color:var(--ink-2);white-space:pre-line}.form{display:flex;flex-direction:column;gap:16px}.form label{display:flex;flex-direction:column;gap:6px;font-size:14px}.form input:not([type=radio]):not([type=checkbox]):not([type=file]),.form textarea,.form select{padding:12px;border:1px solid var(--line);background:#ffffffb3;font-size:16px;min-height:44px}.form fieldset{border:1px solid var(--line);padding:12px 16px;display:flex;flex-wrap:wrap;gap:8px 20px}.form legend{font-size:14px;padding:0 4px}.radio{flex-direction:row!important;align-items:center;gap:8px!important;min-height:44px;display:inline-flex!important}.radio input{width:20px;height:20px;accent-color:var(--accent)}.form.inline{flex-direction:row;flex-wrap:wrap;align-items:flex-end}.notice{margin-top:32px;padding:24px;background:var(--photo)}.error{color:#9b1c1c}.next-bake{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 20px;margin-top:24px;padding:14px 18px;border-left:0;border-top:2px solid var(--accent);background:var(--photo);font-size:15px}.next-bake strong{font-family:var(--serif);font-size:19px;font-weight:500;color:var(--accent)}.next-bake.is-closed strong{color:var(--ink)}.next-bake-link{margin-left:auto}.split-side .next-bake{flex-direction:column;gap:4px}.nav-cart{display:inline-flex;align-items:center;gap:6px}.cart-count{min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--accent);color:#fff;font-size:13px;line-height:22px;text-align:center;letter-spacing:0}.stock{font-size:13px;color:var(--accent);font-weight:500}.menu-details{margin-top:6px;font-size:14px;color:var(--ink-2)}.menu-details summary{cursor:pointer;min-height:32px;display:inline-flex;align-items:center;color:var(--accent)}.menu-details dl{margin:4px 0 0;display:grid;gap:2px}.menu-details dl div{display:flex;gap:12px}.menu-details dt{color:var(--ink-3);min-width:3.5em}.menu-details dd{margin:0}.menu-unavailable{font-size:14px;color:var(--ink-3);min-width:120px;text-align:center}.btn-text{background:none;border:0;padding:8px 4px;min-height:44px;color:var(--accent);text-decoration:underline;cursor:pointer;font-size:14px}.thumb-sm{width:56px;height:56px;flex-basis:56px}.cart-item{gap:12px 18px}.radio-block{align-items:flex-start!important}.radio-block input{margin-top:3px}.hint{display:block;font-size:14px;color:var(--ink-3);margin-top:2px}.submit-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding-top:8px;border-top:1px solid var(--line)}.submit-row .total{margin:0}.menu-details a{color:var(--accent)}.mentioned{margin:40px 0 24px;padding:20px 24px;background:var(--photo)}.mentioned ul{list-style:none;margin:0;padding:0}.mentioned li{display:flex;flex-wrap:wrap;gap:4px 16px;align-items:baseline;padding:8px 0;font-size:17px}.mentioned a{color:var(--accent);font-family:var(--serif)}.product-row:target{background:var(--photo)}.thanks{font-family:var(--serif);font-size:18px;line-height:1.9;margin:0 0 24px}.steps{list-style:none;padding:0;margin:0 0 24px;display:flex;flex-wrap:wrap;gap:8px}.steps li{padding:6px 12px;border:1px solid var(--line);color:var(--ink-3);font-size:14px}.steps li.is-done{border-color:var(--accent);color:var(--accent)}.steps li[aria-current=step]{background:var(--accent);color:#fff}.order-facts p{margin:6px 0}.order-facts strong{display:inline-block;min-width:5em;font-weight:500;color:var(--ink-3)}.bank{line-height:2}.keep-link{margin-top:32px}.admin-card{border:1px solid var(--line);background:#ffffff80;padding:20px;margin:16px 0}.admin-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:12px 0;border-bottom:1px solid var(--line)}.photo-field{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.photo-field .thumb{width:96px;height:96px}.prep-table{width:100%;border-collapse:collapse;margin-top:8px}.prep-table th,.prep-table td{text-align:left;padding:8px 4px;border-bottom:1px solid var(--line)}.prep-table td.num{text-align:right;font-family:var(--serif);font-size:18px}.stat-row{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0}.stat{border:1px solid var(--line);padding:12px 16px;min-width:120px}.stat strong{display:block;font-family:var(--serif);font-size:26px;font-weight:500}.footer{padding-top:48px;padding-bottom:48px;display:flex;flex-wrap:wrap;gap:20px 48px;justify-content:space-between;align-items:center;font-size:14px;border-top:1px solid var(--line);margin-top:40px}.footer-brand{font-family:var(--serif);font-size:20px;letter-spacing:.12em}.footer-nav{display:flex;flex-wrap:wrap;gap:0 24px}.footer-nav a{padding:10px 0}@media (max-width: 600px){.masthead{padding-top:20px;gap:12px}.brand-name{font-size:28px}.mainnav{gap:0 16px;font-size:15px}.hero{padding-top:24px;gap:20px}.hero{padding-bottom:8px}.hero-photo{order:2;aspect-ratio:2 / 1}.hero-photo.placeholder{display:none}.split{gap:16px}.hero-photo,.split-main,.split-side{flex-basis:100%}.section{padding-top:32px}.next-bake-link{margin-left:0}.product-row,.cart-item{display:grid;grid-template-columns:72px 1fr auto;gap:8px 14px;align-items:center}.product-row{grid-template-areas:"thumb text text" "thumb price action"}.cart-item{grid-template-areas:"thumb text price" "thumb qty remove"}.product-row .thumb,.cart-item .thumb{grid-area:thumb;width:72px;height:72px;align-self:start}.product-row .menu-text,.cart-item .menu-text{grid-area:text}.product-row .menu-price,.cart-item .menu-price{grid-area:price}.product-row>.btn-line,.product-row>.menu-unavailable{grid-area:action}.cart-item .qty{grid-area:qty}.cart-item .btn-text{grid-area:remove;justify-self:end}}
