/* Hospitality alpha27.108 · public/staff mobile polish and payment/document ownership */
body[data-hospitality-surface="public"] .h-public-navline{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}
body[data-hospitality-surface="public"] .h-nav-order{min-width:0;flex:1 1 auto}
body[data-hospitality-surface="public"] .h-nav-order-count{display:inline-grid!important;place-items:center!important;min-width:28px!important;height:28px!important;padding:0 8px!important;border-radius:999px!important;line-height:1!important;white-space:nowrap!important;overflow:visible!important;flex:0 0 auto!important}
body[data-hospitality-surface="public"] .h-menu-view-picker-nav{position:relative;flex:0 0 auto}
body[data-hospitality-surface="public"] .h-menu-view-picker-nav .h-menu-view-trigger{min-width:92px!important;min-height:48px!important;padding:8px 11px!important;border-color:rgba(255,255,255,.42)!important;background:rgba(255,255,255,.16)!important;color:#fff!important;box-shadow:none!important;backdrop-filter:blur(10px)}
body[data-hospitality-surface="public"] .h-menu-view-picker-nav .h-view-current{font-weight:800;font-size:12px}
body[data-hospitality-surface="public"] .h-menu-view-picker-nav .h-view-icon{font-size:18px;line-height:1}
body[data-hospitality-surface="public"] .h-menu-view-picker-nav .h-menu-view-popover{top:calc(100% + 9px);right:0}
body[data-hospitality-surface="public"] .h-menu-topbar{display:block!important;padding-right:10px!important}
body[data-hospitality-surface="public"] .h-category-tabs{width:100%!important}
body[data-hospitality-surface="public"] .h-service-context--choose .h-actions .h-btn{background:#fff!important;color:#0f4c43!important;border:1px solid rgba(15,76,67,.18)!important}
body[data-hospitality-surface="public"] .h-service-context--choose .h-actions .h-btn:hover{background:#eef7f2!important}
body[data-hospitality-surface="public"] .h-service-context--choose #choose-takeaway{background:#f3f7f4!important;color:#0f4c43!important;opacity:1!important}
body[data-hospitality-surface="public"] .h-service-context--choose #choose-takeaway:disabled{color:#6f7c76!important;background:#edf0ee!important;opacity:.72!important}
/* Compact product route */
body[data-hospitality-surface="public"] .h-product-sheet{max-height:min(88dvh,760px)!important}
body[data-hospitality-surface="public"] .h-product-sheet-media{height:clamp(105px,19dvh,170px)!important;min-height:105px!important}
body[data-hospitality-surface="public"] .h-product-sheet .h-sheet-head{padding:11px 16px 8px!important}
body[data-hospitality-surface="public"] .h-product-sheet .h-sheet-head h2{font-size:clamp(22px,6.4vw,29px)!important}
body[data-hospitality-surface="public"] .h-product-sheet .h-sheet-body{padding:8px 16px!important}
body[data-hospitality-surface="public"] .h-product-sheet .h-product-description{font-size:14px!important;margin-bottom:8px!important}
body[data-hospitality-surface="public"] .h-product-sheet .h-product-quantity{display:grid!important;grid-template-columns:auto minmax(90px,150px)!important;align-items:center!important;gap:12px!important;margin:7px 0!important}
body[data-hospitality-surface="public"] .h-product-sheet .h-product-quantity .h-input{min-height:44px!important;padding:8px 12px!important}
body[data-hospitality-surface="public"] .h-product-sheet .h-notes-details{margin-top:7px!important}
body[data-hospitality-surface="public"] .h-product-sheet .h-notes-details summary{padding:8px 0!important}
body[data-hospitality-surface="public"] .h-product-sheet .h-notes-details .h-input{min-height:46px!important}
body[data-hospitality-surface="public"] .h-product-sheet-foot{padding-top:9px!important}
/* Payment methods share one visual family; icons distinguish rails. */
body[data-hospitality-surface="public"] .h-payment-grid .h-payment-method{display:grid!important;grid-template-columns:42px 1fr!important;align-items:center!important;gap:12px!important;min-height:66px!important;padding:10px 14px!important;background:#fff!important;color:#0f4c43!important;border:1px solid #cfe0d6!important;box-shadow:0 7px 20px rgba(15,76,67,.06)!important;text-align:left!important}
body[data-hospitality-surface="public"] .h-payment-grid .h-payment-method:not(:disabled):active{transform:translateY(1px)}
body[data-hospitality-surface="public"] .h-payment-grid .h-payment-method:disabled{background:#eef2ef!important;color:#728078!important;border-color:#dce4df!important;opacity:1!important;box-shadow:none!important}
body[data-hospitality-surface="public"] .h-payment-method-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#eaf5ef;color:#0f4c43;font-weight:900;font-size:17px}
body[data-hospitality-surface="public"] .h-payment-method:disabled .h-payment-method-icon{background:#e3e8e5;color:#819087}
body[data-hospitality-surface="public"] .h-payment-method small{display:block!important;margin-top:2px!important;color:inherit!important;opacity:.72!important}
body[data-hospitality-surface="public"] .h-payment-prerequisite{margin:12px 0 9px;padding:10px 12px;border-radius:13px;background:#fff7e6;color:#79520a;border:1px solid #efd39b;font-size:13px;font-weight:750}
body[data-hospitality-surface="public"] .h-payment-prerequisite.is-ready{background:#edf8f2;color:#155b3d;border-color:#c4e3d2}
body[data-hospitality-surface="public"] .h-payment-progress-card{display:grid;grid-template-columns:30px 1fr;gap:11px;align-items:center;margin-top:12px;padding:13px 14px;border-radius:15px;background:#edf7f2;border:1px solid #c9e2d4;color:#144d37}
body[data-hospitality-surface="public"] .h-payment-progress-card[hidden]{display:none!important}
body[data-hospitality-surface="public"] .h-payment-progress-card strong,body[data-hospitality-surface="public"] .h-payment-progress-card small{display:block}
body[data-hospitality-surface="public"] .h-payment-progress-card small{margin-top:2px;opacity:.76}
body[data-hospitality-surface="public"] .h-payment-spinner{width:26px;height:26px;border:3px solid rgba(15,76,67,.18);border-top-color:#0f4c43;border-radius:50%;animation:hspin .8s linear infinite}
@keyframes hspin{to{transform:rotate(360deg)}}
/* Staff payment methods: same family, never online card. */
body[data-hospitality-surface="staff"] .h-staff-payment-choices{display:grid!important;gap:10px!important}
body[data-hospitality-surface="staff"] .h-payment-choice{display:grid!important;grid-template-columns:42px 1fr!important;align-items:center!important;gap:12px!important;background:#fff!important;color:#173f30!important;border:1px solid #cfe0d6!important;border-radius:16px!important;box-shadow:0 7px 18px rgba(15,76,67,.05)!important}
body[data-hospitality-surface="staff"] .h-payment-choice>span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#eaf5ef;color:#0f4c43;font-weight:900}
body[data-hospitality-surface="staff"] .h-payment-choice.is-unavailable{background:#f0f3f1!important;color:#6f7d76!important;border-color:#dde5e0!important;opacity:1!important}
/* Stronger mobile contrast for ticket/document surfaces. */
body[data-hospitality-surface="public"] .h-ticket-preview,body[data-hospitality-surface="public"] .h-document-result{color:#123b2c!important}
body[data-hospitality-surface="public"] .h-ticket-preview strong,body[data-hospitality-surface="public"] .h-document-result strong{color:#0b3326!important}
@media(max-width:760px){
  body[data-hospitality-surface="public"] .h-menu-view-picker-nav .h-menu-view-trigger{min-width:48px!important;width:48px!important;padding:7px!important;justify-content:center!important}
  body[data-hospitality-surface="public"] .h-menu-view-picker-nav .h-view-current,body[data-hospitality-surface="public"] .h-menu-view-picker-nav .h-menu-view-trigger>span:last-child{display:none!important}
  body[data-hospitality-surface="public"] .h-product-sheet{height:auto!important;max-height:90dvh!important}
  body[data-hospitality-surface="public"] .h-product-sheet-media{height:132px!important}
  body[data-hospitality-surface="public"] .h-product-sheet .h-sheet-body{max-height:calc(90dvh - 310px)!important}
  body[data-hospitality-surface="public"] .h-product-sheet-foot{grid-template-columns:1fr!important}
  body[data-hospitality-surface="public"] .h-nav-order-count{min-width:26px!important;height:26px!important;padding:0 7px!important;font-size:12px!important}
}
