:root{--accent:#000000;--accent-deep:#1c1c1c;--accent-soft:#f7f7f7;--warm:#006aff;--ink:#1c1c1c}body{background:#f7f7f7;color:var(--ink);padding-bottom:84px}.site-head{height:76px;background:#fff;border-bottom:1px solid #d8d8d8;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(16px,4vw,56px);gap:16px}.brand{display:flex;align-items:center;gap:11px;color:var(--ink);min-width:0}.brand>span:last-child{display:grid;line-height:1.25}.brand strong{font-size:15px}.brand small{font-size:11px;color:#5a5a5a}.brand-mark{width:39px;height:39px;border-radius:50%;background:#f7f7f7;color:#000000;display:grid;place-items:center;font-size:23px;position:relative;flex:none}.brand-mark small{position:absolute;font-size:10px;right:4px;bottom:3px}.head-module{display:grid;text-align:center;gap:1px}.head-module span,.eyebrow{font-size:10px;letter-spacing:.13em;color:#7a8780;font-weight:700}.head-module strong{font-size:14px}.suite-link{min-height:44px;display:flex;align-items:center;gap:6px;color:#000000;font-weight:650}.flow-nav{display:flex;justify-content:center;gap:clamp(14px,5vw,62px);background:#fff;border-bottom:1px solid #ebebeb;padding:0 12px}.flow-nav a{min-height:48px;display:flex;align-items:center;color:#5a5a5a;font-size:13px;font-weight:650;border-bottom:2px solid transparent;white-space:nowrap}.flow-nav a:hover{color:#000000;border-color:#000000}.app-main{width:min(1120px,100%);padding:36px clamp(16px,4vw,48px) 110px;margin:auto}.intro{max-width:690px;margin:0 0 28px}.intro>span{color:#006aff;font-size:10px;letter-spacing:.15em;font-weight:800}.intro h1{font-family:var(--font-display);font-size:clamp(30px,5vw,48px);font-weight:500;letter-spacing:-.035em;margin:8px 0 10px;color:#1c1c1c}.intro p{color:#5a5a5a;font-size:15px;margin:0}.choice-row,.category-row,.cat-row{display:flex;align-items:center;gap:8px;overflow:auto;scrollbar-width:none;margin:22px 0}.choice-row button,.chip{min-height:44px;padding:0 17px;border:1px solid #d7dfda;background:#fff;border-radius:999px;color:#52615a;font:600 14px inherit;cursor:pointer;white-space:nowrap}.choice-row button[aria-pressed="true"],.chip.is-active{background:#000000;color:white;border-color:#000000}.dish-list,.menu-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.dish{display:grid;grid-template-columns:112px minmax(0,1fr);background:#fff;border:1px solid #d8d8d8;border-radius:12px;overflow:hidden;min-width:0;box-shadow:0 2px 8px #142b2a08}.dish-photo{min-height:168px;background:radial-gradient(ellipse at 46% 46%,#d79b57 0 18%,#f0d7a8 19% 31%,#7e9c70 32% 43%,#ded0b1 44% 58%,#8fa796 59% 100%);display:grid;place-items:center;position:relative}.dish-photo span{font-size:43px;filter:drop-shadow(0 3px 2px #2334)}.dish-copy{padding:16px;min-width:0}.dish-copy>small,.cart-line small{color:#006aff;font-size:10px;letter-spacing:.12em;font-weight:750}.dish h2,.cart-line h2{font:600 17px/1.25 var(--font-display);margin:5px 0}.dish p{color:#5a5a5a;font-size:13px;margin:0;line-height:1.45}.dish-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:15px}.dish-bottom strong{font-size:15px}.dish-bottom .btn{font-size:13px;padding:0 12px}.order-rail{position:sticky;bottom:68px;background:#1c1c1c;color:#fff;border-radius:12px;padding:14px 18px;display:flex;align-items:center;gap:18px;margin-top:24px;box-shadow:0 8px 24px #142b2a22;z-index:2}.order-rail span{flex:1;color:#d8e4de;font-size:12px;font-weight:700;letter-spacing:.08em}.order-rail strong{font-size:18px}.order-rail .btn{background:#ebebeb;color:#1c1c1c}.checkout-grid,.pay-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr);gap:20px;align-items:start}.paper,.status-paper,.sent-card,.result{background:#fff;border:1px solid #d8d8d8;border-radius:14px;padding:clamp(18px,3vw,30px);box-shadow:0 4px 18px #142b2a08}.paper h2{font:600 21px var(--font-display);margin:0 0 18px}.back{display:inline-flex;align-items:center;min-height:44px;margin-bottom:16px;font-size:14px;font-weight:650}.cart-line{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #ebebeb;padding:18px 0}.cart-line h2{margin:5px 0}.quantity{display:flex;align-items:center;gap:11px;flex:none}.quantity button{width:44px;height:44px;border:1px solid #d8d8d8;border-radius:50%;background:#fff;color:#000000;font-size:23px;cursor:pointer}.quantity span{min-width:20px;text-align:center;font-weight:700}.field{display:flex;flex-direction:column;gap:7px;margin:18px 0}.field span,.field label{font-weight:650;font-size:13px}.field textarea,.field input,.field select{min-height:46px;width:100%;border:1px solid #d8d8d8;border-radius:8px;padding:10px 12px;font:inherit;color:#1c1c1c;background:white}.field textarea{min-height:86px;resize:vertical}.sum{display:grid;grid-template-columns:1fr auto;gap:10px;padding:18px 0;margin:8px 0 16px;border-top:1px solid #ebebeb}.sum>*:nth-last-child(-n+2){padding-top:12px;border-top:1px solid #ebebeb;color:#1c1c1c;font-size:17px}.hint{color:#5a5a5a;font-size:13px}.btn--block{width:100%;min-height:48px}.totals{position:sticky;top:16px}.totals .field{margin:12px 0}.simple-line{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #ebebeb;font-size:14px}.status-paper{max-width:760px}.status-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.status-top h2,.sent-card>h2{font:600 26px var(--font-display);margin:7px 0 0}.timeline{list-style:none;display:flex;gap:0;padding:30px 0;margin:0}.timeline li{flex:1;display:grid;justify-items:center;align-content:start;gap:10px;color:#87918a;font-size:13px;text-align:center;position:relative}.timeline li:before{content:"";height:2px;position:absolute;background:#d8d8d8;left:0;right:50%;top:20px;z-index:0}.timeline li:after{content:"";height:2px;position:absolute;background:#d8d8d8;left:50%;right:0;top:20px;z-index:0}.timeline li:first-child:before,.timeline li:last-child:after{display:none}.timeline li.done:before,.timeline li.done:after{background:#000000}.timeline i{font-style:normal;width:40px;height:40px;border:2px solid #d8d8d8;border-radius:50%;background:white;display:grid;place-items:center;z-index:1}.timeline .done i{background:#000000;border-color:#000000;color:#fff}.timeline .done span{color:#000000;font-weight:700}.action-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.action-row>*{min-height:44px}.order-id{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#f7f7f7;padding:14px;border-radius:9px;margin-bottom:22px}.order-id span{font-size:11px;letter-spacing:.1em;color:#77837c;font-weight:700}.order-id strong{font-size:19px}.order-id i{font-size:11px;color:#006aff;font-style:normal}.methods{display:grid;gap:10px;margin:14px 0 20px}.method{display:flex;align-items:center;gap:14px;text-align:left;min-height:68px;padding:12px 14px;background:#fff;border:1px solid #d8d8d8;border-radius:9px;cursor:pointer;color:#1c1c1c}.method.selected{border-color:#000000;box-shadow:0 0 0 2px #17645d20}.method>i{font-size:22px;color:#000000;font-style:normal}.method>span:nth-child(2){display:grid;gap:3px;flex:1}.method small{font-size:12px;color:#5a5a5a}.radio{width:18px;height:18px;border:1px solid #aebbb1;border-radius:50%}.selected .radio{border:5px solid #000000}.pay-form{max-width:560px;margin:auto}.secure-mark{font-size:27px;color:#000000}.outcomes{border:1px solid #d8d8d8;border-radius:8px;padding:12px 16px;margin:18px 0}.outcomes legend{font-size:13px;font-weight:700;padding:0 4px}.outcomes label{min-height:44px;display:flex;gap:9px;align-items:center;font-size:14px}.outcomes input{width:18px;height:18px;accent-color:#000000}.center{text-align:center;margin:14px auto 0}.result{max-width:640px}.result-icon,.big-check{width:50px;height:50px;display:grid;place-items:center;border-radius:50%;font-size:25px;margin-bottom:16px;background:#e7f5ec;color:#000000}.is-error .result-icon{background:#fce8e6;color:#a62c25}.result h2{font:600 25px var(--font-display);margin:8px 0}.result>p{color:#5a5a5a}.text-link{display:inline-flex;align-items:center;padding:10px}.table-nav{display:flex;align-items:center;gap:18px;margin-bottom:20px}.table-nav span:nth-child(2){font-weight:800;font-size:12px;letter-spacing:.1em;color:#000000}.table-nav span:last-child{margin-left:auto;color:#5a5a5a;font-size:13px}.cat-row{justify-content:flex-start}.allergens{font-size:12px!important;margin-top:6px!important}.sticky-cta{position:sticky;bottom:68px;margin-top:20px;z-index:4}.sent-card{max-width:680px}.sent-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.tools-demo{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid #ebebeb;padding-top:16px;margin-top:20px}.tools-demo>span{font-size:12px;color:#5a5a5a}.loading{padding:40px;text-align:center;color:#5a5a5a}button:focus-visible,a:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #006aff;outline-offset:2px}@media(max-width:760px){.site-head{height:64px;padding:0 14px}.head-module{display:none}.suite-link{font-size:13px}.flow-nav{justify-content:flex-start;gap:22px;overflow:auto}.flow-nav a{font-size:12px}.app-main{padding:24px 16px 104px}.intro{margin-bottom:20px}.intro h1{font-size:34px}.dish-list,.menu-list{grid-template-columns:1fr;gap:11px}.dish{grid-template-columns:86px minmax(0,1fr)}.dish-photo{min-height:150px}.dish-copy{padding:12px}.dish h2{font-size:16px}.dish p{font-size:13px}.checkout-grid,.pay-layout{grid-template-columns:1fr}.totals{position:static}.order-rail{bottom:66px;padding:11px 12px;gap:10px}.order-rail span{font-size:10px}.order-rail strong{font-size:15px}.order-rail .btn{padding:0 11px;font-size:13px}.timeline{padding:24px 0}.timeline li{font-size:11px}.timeline i{width:36px;height:36px}.timeline li:before,.timeline li:after{top:18px}.order-id{flex-wrap:wrap}.order-id span{width:100%}.action-row{display:grid;grid-template-columns:1fr}.action-row>*{width:100%;justify-content:center}.tools-demo{align-items:stretch;flex-direction:column}.tools-demo .btn{text-align:center}.table-nav{gap:10px;font-size:13px}}@media(max-width:380px){.brand strong{font-size:13px}.brand-mark{width:34px;height:34px}.suite-link{font-size:12px}.flow-nav{gap:14px}.flow-nav a{font-size:11px}.intro h1{font-size:30px}.dish{grid-template-columns:70px minmax(0,1fr)}.dish-photo{min-height:154px}.dish-copy{padding:10px}.dish-bottom .btn{padding:0 8px;font-size:12px}.paper,.status-paper,.sent-card,.result{padding:16px}.quantity{gap:6px}.quantity button{width:44px;height:44px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.menu-list{grid-template-columns:1fr}.menu-list .dish{display:block}


/* Table ordering refresh */
.module-relationship{display:grid;grid-template-columns:auto minmax(190px,.55fr) minmax(0,1fr);align-items:center;gap:12px 16px;margin:0 0 18px;padding:13px 16px;border:1px solid #d8d8d8;border-radius:12px;background:#fff}
.module-relationship__kind{display:inline-flex;align-items:center;min-height:25px;padding:0 9px;border-radius:999px;background:#eef3f8;color:#344054;font-size:10px;font-weight:800;letter-spacing:.09em}
.module-relationship__main{display:grid;gap:2px}
.module-relationship__main>span{color:#667085;font-size:11px}
.module-relationship__main>a{width:max-content;color:#1c1c1c;font-size:14px;font-weight:750}
.module-relationship__main>a span{color:#006aff}
.module-relationship>p{margin:0;color:#5a5a5a;font-size:12px;line-height:1.45}
.order-progress{display:flex;align-items:center;gap:8px;margin:0 0 27px;padding:0;list-style:none}
.order-progress__step{display:flex;align-items:center;gap:8px;min-height:38px;padding:0 12px;border:1px solid #e3e5e8;border-radius:999px;background:#fff;color:#667085;font-size:12px}
.order-progress__step>span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#f1f2f4;color:#667085;font-size:10px;font-weight:800}
.order-progress__step.is-current{border-color:#171717;color:#171717;box-shadow:0 0 0 2px #1717170b}
.order-progress__step.is-current>span,.order-progress__step.is-done>span{background:#171717;color:#fff}
.order-progress__step.is-done{color:#344054}
.menu-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.dish{grid-template-columns:minmax(145px,.72fr) minmax(0,1.28fr);min-height:222px}
.dish-photo{display:block;width:100%;height:100%;min-height:222px;object-fit:cover;background:#e8e7e2}
.dish-photo--water{position:relative;display:grid;place-items:center;overflow:hidden;background:linear-gradient(155deg,#f4f8f9,#dce7ea 54%,#b9d0d7)}
.dish-photo--water:before{content:"";width:38px;height:115px;border:2px solid #86aeb9;border-radius:12px 12px 10px 10px;background:linear-gradient(180deg,transparent 22%,#a8d5e1 23% 100%);box-shadow:inset 0 0 0 5px #ffffff73}
.dish-photo--water:after{content:"";position:absolute;top:calc(50% - 68px);left:calc(50% - 9px);width:18px;height:13px;border:2px solid #86aeb9;border-bottom:0;border-radius:5px 5px 0 0}
.dish-copy{display:flex;flex-direction:column;justify-content:flex-start;gap:4px}
.dish-copy>small{margin-bottom:3px}
.dish-copy h2{font-size:19px}
.dish-copy .allergens{margin-top:4px!important}
.dish-bottom{margin-top:auto;padding-top:12px}
.cart-line__product,.simple-line__product{display:flex;align-items:center;gap:13px;min-width:0}
.cart-line__product>div{min-width:0}
.cart-line__photo{width:66px;height:66px;flex:0 0 66px;border-radius:9px;object-fit:cover;background:#f2f1ed}
.cart-line .quantity{margin-left:auto}
.simple-line__product{font-size:14px}
.simple-line__photo{width:42px;height:42px;flex:0 0 42px;border-radius:7px;object-fit:cover;background:#f2f1ed}
.sent-card{border-top:3px solid #171717}
@media(max-width:760px){
 .module-relationship{grid-template-columns:auto 1fr;gap:7px 11px;margin-bottom:14px;padding:11px 12px}
 .module-relationship__kind{grid-column:1;grid-row:1}
 .module-relationship__main{grid-column:2;grid-row:1}
 .module-relationship>p{grid-column:1/-1;font-size:11px}
 .order-progress{gap:6px;margin-bottom:21px}
 .order-progress__step{flex:1;justify-content:center;gap:6px;min-height:36px;padding:0 7px;font-size:11px}
 .menu-list{grid-template-columns:1fr;gap:12px}
 .dish{grid-template-columns:minmax(112px,.68fr) minmax(0,1.32fr);min-height:196px}
 .dish-photo{min-height:196px}
 .dish-copy{padding:13px}
 .dish-copy h2{font-size:17px}
 .dish-bottom{gap:7px}
 .cart-line__photo{width:58px;height:58px;flex-basis:58px}
}
@media(max-width:380px){
 .order-progress__step{gap:4px;padding-inline:5px;font-size:10px}
 .dish{grid-template-columns:minmax(92px,.62fr) minmax(0,1.38fr)}
 .dish-photo{min-height:190px}
 .dish-copy{padding:10px}
 .dish-bottom .quantity{gap:5px}
}

/* Keep table-order product cards compact even with the shared module theme. */
.app-main .menu-list .dish{display:grid;grid-template-columns:minmax(140px,.68fr) minmax(0,1.32fr);align-items:stretch}
.app-main .menu-list .dish-photo{height:100%;min-height:210px}
.app-main .menu-list .dish-copy{min-width:0}
@media(max-width:760px){.app-main .menu-list .dish{grid-template-columns:minmax(108px,.66fr) minmax(0,1.34fr)}.app-main .menu-list .dish-photo{min-height:190px}}
@media(max-width:380px){.app-main .menu-list .dish{grid-template-columns:minmax(92px,.6fr) minmax(0,1.4fr)}.app-main .menu-list .dish-photo{min-height:184px}}

/* Keep the order action after the products so it never covers a dish. */
.sticky-cta{position:static;margin:20px 0 0;z-index:auto}
@media(max-width:760px){
 .app-main .menu-list .dish-photo{min-height:144px}
 .app-main .menu-list .dish{min-height:144px}
}
@media(max-width:380px){
 .app-main .menu-list .dish-photo{min-height:138px}
 .app-main .menu-list .dish{min-height:138px}
}