/* Hospitality alpha 27.53 - production UI refinement */
:root{--h-radius:14px;--h-radius-lg:20px;--h-border:#dfe6e3;--h-shadow:0 18px 55px rgba(15,40,35,.14);--h-focus:0 0 0 3px rgba(15,76,67,.16)}
.h-btn,.h-ghost,.h-icon,.h-link-button{transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease,opacity .15s ease}
.h-btn{min-height:44px;border:1px solid transparent;border-radius:12px;font-weight:750;padding:.72rem 1.05rem;box-shadow:0 4px 12px rgba(15,76,67,.10)}
.h-btn:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(15,76,67,.16)}
.h-btn-alt{background:#fff!important;color:#174c43!important;border-color:#b9cbc6!important}.h-btn-soft{background:#eef6f3!important;color:#174c43!important;border-color:#d2e4de!important}
.h-btn:disabled,.h-ghost:disabled{opacity:.46;box-shadow:none;cursor:not-allowed;transform:none}
.h-input,select.h-input,textarea.h-input{min-height:44px;border:1px solid #cbd8d4;border-radius:11px;background:#fff;padding:.72rem .82rem;box-shadow:inset 0 1px 1px rgba(0,0,0,.02)}
.h-input:focus{outline:none;border-color:#377b6d;box-shadow:var(--h-focus)} textarea.h-input{min-height:96px;resize:vertical}
.h-sheet-backdrop{padding:clamp(12px,3vw,36px);background:rgba(8,24,21,.48);backdrop-filter:blur(4px)}
.h-sheet,.h-client-modal{border-radius:var(--h-radius-lg)!important;box-shadow:var(--h-shadow)!important;border:1px solid rgba(255,255,255,.72);overflow:hidden}
.h-sheet-head,.h-modal-head,.h-cart-header{padding:24px 26px 18px!important;border-bottom:1px solid #e7eeeb}.h-sheet-body{padding:24px 26px!important}.h-sheet-foot,.h-modal-foot{padding:18px 26px 24px!important;border-top:1px solid #e7eeeb;gap:10px}
.h-card{border-radius:var(--h-radius)!important;border:1px solid var(--h-border)!important;box-shadow:0 5px 18px rgba(18,54,47,.055)}
.h-takeaway-lookup-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.h-takeaway-phone{display:grid;gap:6px;margin-top:16px}.h-takeaway-phone small{color:#60716d}.h-takeaway-payment-required{margin-bottom:12px}
.h-account-kpis>div{border:1px solid var(--h-border);border-radius:12px;padding:14px;background:#fbfdfc}.h-account-order{border:1px solid var(--h-border);border-radius:12px;padding:14px;margin-bottom:10px;background:#fff}
.h-footer{font-size:.82rem;color:#73827e;padding:24px;text-align:center}
@media(max-width:700px){.h-sheet-backdrop{padding:8px}.h-sheet,.h-client-modal{border-radius:16px!important}.h-sheet-head,.h-modal-head,.h-cart-header,.h-sheet-body,.h-sheet-foot,.h-modal-foot{padding-left:16px!important;padding-right:16px!important}.h-takeaway-lookup-fields{grid-template-columns:1fr}.h-btn{min-height:48px}.h-payment-grid{grid-template-columns:1fr!important}}
/* alpha27.55 · product finish and shared-account UX */
:root{--h-radius:18px;--h-radius-lg:26px;--h-space-1:6px;--h-space-2:10px;--h-space-3:16px;--h-space-4:24px;--h-space-5:32px}
.h-sheet-backdrop{padding:clamp(12px,3vw,32px)!important;align-items:center!important;background:rgba(7,16,29,.64)!important;backdrop-filter:blur(8px)}
.h-sheet.h-client-modal{width:min(760px,100%)!important;max-height:calc(100dvh - 32px);border-radius:var(--h-radius-lg)!important;box-shadow:0 28px 80px rgba(5,16,29,.28)!important;overflow:hidden;background:#fff!important;border:1px solid rgba(15,40,65,.1)!important}
.h-sheet-head{padding:24px 26px 18px!important;border-bottom:1px solid #e8eef3;gap:18px}.h-sheet-body{padding:24px 26px!important;overflow:auto}.h-sheet-foot{padding:18px 26px 24px!important;border-top:1px solid #e8eef3;gap:12px}
.h-btn,.h-ghost,.h-icon,.h-filter-pills button,.h-pay-mode{min-height:44px;border-radius:14px;font-weight:750;letter-spacing:-.01em;transition:transform .12s ease,box-shadow .12s ease,background .12s ease,border-color .12s ease}.h-btn:not(:disabled):hover,.h-ghost:not(:disabled):hover,.h-pay-mode:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(14,50,72,.12)}
.h-btn:focus-visible,.h-ghost:focus-visible,.h-icon:focus-visible,.h-input:focus-visible,select:focus-visible{outline:3px solid rgba(21,128,101,.22);outline-offset:2px}.h-btn:disabled,.h-ghost:disabled{opacity:.48;cursor:not-allowed;box-shadow:none}
.h-input,.h-account-pay input,.h-unit-picker select{min-height:46px;border:1px solid #cbd8e2!important;border-radius:13px!important;background:#fff!important;color:#102a3c!important;padding:10px 12px!important;box-shadow:inset 0 1px 1px rgba(15,40,65,.03)}
.h-account-kpis{gap:12px!important;margin-bottom:20px}.h-account-kpis>div{padding:16px!important;border-radius:16px!important;background:#f6f9fb!important;border:1px solid #e2eaf0}.h-account-kpis strong{font-size:1.25rem}
.h-account-orders{display:grid;gap:14px}.h-account-order-detail{display:block!important;padding:0!important;border:1px solid #dde7ee!important;border-radius:18px!important;overflow:hidden;background:#fff!important}.h-account-order-detail>header{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px 17px;background:#f7fafb;border-bottom:1px solid #e5edf2}.h-account-order-detail header div{display:grid;gap:3px}.h-account-consumptions{display:grid}.h-account-consumption{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:14px 17px;border-top:1px solid #edf2f5}.h-account-consumption:first-child{border-top:0}.h-account-consumption.is-paid{opacity:.62;background:#fafcfc}.h-account-consumption-main{display:grid;gap:3px}.h-account-consumption-main small{color:#647787}.h-unit-picker{display:flex;align-items:center;gap:8px;font-size:.82rem;font-weight:700}.h-unit-picker select{min-width:66px;min-height:40px!important;padding:6px 8px!important}
.h-account-pay{margin-top:20px;padding:18px;border-radius:20px;background:#f7faf9;border:1px solid #dbe9e4}.h-account-pay-mode{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}.h-pay-mode{border:1px solid #c9d9d4;background:#fff;color:#214638;padding:10px 12px;cursor:pointer}.h-pay-mode.is-active{background:#123f34;color:#fff;border-color:#123f34;box-shadow:0 6px 16px rgba(18,63,52,.15)}.h-selection-summary{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:13px 14px;margin-bottom:14px;border-radius:14px;background:#eaf5f1;color:#173d33}.h-selection-summary strong{font-size:1.15rem}
.h-workbar{padding:14px clamp(16px,3vw,30px)!important;box-shadow:0 6px 24px rgba(5,20,34,.08)}.h-role-hero{border-radius:24px!important;padding:clamp(20px,3vw,32px)!important}.h-staff-orders-head{position:sticky;top:72px;z-index:8;background:rgba(246,249,250,.94);backdrop-filter:blur(10px);padding:14px 0!important}.h-ops-grid{gap:16px!important}.h-ops-card,.h-order-card{border-radius:20px!important;box-shadow:0 8px 26px rgba(10,37,53,.07)!important}.h-filter-pills{gap:8px!important}.h-filter-code{min-width:220px}.h-filter-code input{min-height:40px;border-radius:12px;border:1px solid #cbd8e2;padding:8px 10px}
@media(max-width:680px){.h-sheet-backdrop{padding:0!important;align-items:flex-end!important}.h-sheet.h-client-modal{max-height:94dvh;border-radius:24px 24px 0 0!important}.h-sheet-head,.h-sheet-body,.h-sheet-foot{padding-left:18px!important;padding-right:18px!important}.h-account-pay-mode{grid-template-columns:1fr}.h-account-consumption{grid-template-columns:minmax(0,1fr) auto}.h-unit-picker{grid-column:1/-1;justify-content:space-between}.h-payment-grid{grid-template-columns:1fr!important}.h-staff-orders-head{top:62px}.h-filter-code{width:100%}}

/* 27.56 external-audit UX hardening: consistent finished-product surfaces */
body[data-hospitality-surface]{background:#f4f7f6;color:#172622}
body[data-hospitality-surface] .h-main{padding-bottom:48px}
.h-toolbar{gap:18px!important;align-items:flex-start!important;margin-bottom:22px!important}.h-toolbar h1{letter-spacing:-.035em}.h-toolbar .h-muted{max-width:72ch;line-height:1.5}
.h-actions{gap:10px!important;align-items:center!important}.h-actions>.h-btn,.h-actions>.h-ghost{white-space:nowrap}
.h-card{background:#fff!important}.h-table-wrap{overflow:auto;border-radius:20px!important}.h-table{min-width:720px}.h-table th{position:sticky;top:0;background:#f7faf9;z-index:1;color:#52645f;font-size:.76rem;text-transform:uppercase;letter-spacing:.04em}.h-table td,.h-table th{padding:13px 15px!important}
.h-list-controls{padding:14px!important;background:#fff;border:1px solid #dfe8e5;border-radius:18px;box-shadow:0 5px 18px rgba(18,54,47,.045);margin-bottom:16px!important;gap:10px!important}.h-list-controls label{font-weight:700;color:#415650}.h-list-controls .h-input{margin-top:5px}
.h-empty{min-height:120px;display:grid;place-items:center;padding:26px!important;border:1px dashed #ccd9d5;border-radius:18px;background:#fafcfb;color:#687b75;text-align:center}
.h-tag{font-weight:800!important;letter-spacing:.01em}.h-inline-info{border-radius:14px!important;line-height:1.48!important}
.h-order-card,.h-ops-card{border:1px solid #dce7e3!important;background:#fff!important}.h-order-card:hover,.h-ops-card:hover{box-shadow:0 12px 32px rgba(10,37,53,.10)!important}.h-order-card .h-card-head,.h-ops-card .h-card-head{gap:12px}
.h-filter-pills{padding:6px;background:#eaf0ee;border-radius:16px}.h-filter-pills button{border:0!important;background:transparent!important;color:#405650!important;padding:9px 13px!important;box-shadow:none!important}.h-filter-pills button.active,.h-filter-pills button.is-active{background:#fff!important;color:#123f34!important;box-shadow:0 3px 10px rgba(18,63,52,.10)!important}
.h-workbar{border-bottom:1px solid rgba(15,76,67,.10)!important}.h-role-hero{background:linear-gradient(135deg,#123f34,#1b6555)!important;color:#fff!important;box-shadow:0 16px 40px rgba(18,63,52,.16)!important}.h-role-hero .h-muted{color:rgba(255,255,255,.78)!important}
.h-modal-backdrop,.h-sheet-backdrop{overscroll-behavior:contain}.h-modal,.h-sheet{scrollbar-gutter:stable}.h-modal-head h2,.h-sheet-head h2{letter-spacing:-.025em}.h-modal-foot,.h-sheet-foot{background:#fbfcfc}
.h-ticket-preview,.h-document-preview{border:1px solid #dbe5e1!important;border-radius:18px!important;background:#f6f9f8!important;padding:14px!important}.h-ticket-preview iframe,.h-document-preview iframe{border:0!important;border-radius:12px!important;background:#fff!important;box-shadow:0 4px 16px rgba(15,40,35,.08)}
.h-check{border-radius:14px;padding:10px 12px}.h-check:has(input:focus-visible){outline:3px solid rgba(21,128,101,.18)}
@media(max-width:900px){.h-toolbar{flex-direction:column!important}.h-toolbar>.h-actions{width:100%;overflow-x:auto;padding-bottom:3px}.h-list-controls{grid-template-columns:1fr 1fr!important}.h-table{min-width:640px}}
@media(max-width:600px){body[data-hospitality-surface] .h-main{padding-left:14px!important;padding-right:14px!important}.h-list-controls{grid-template-columns:1fr!important}.h-toolbar>.h-actions{display:grid!important;grid-template-columns:1fr 1fr;overflow:visible}.h-toolbar>.h-actions>.h-btn,.h-toolbar>.h-actions>.h-ghost{width:100%;white-space:normal}.h-card{border-radius:18px!important}.h-table-wrap{margin-left:-4px;margin-right:-4px}.h-role-hero{border-radius:20px!important}.h-filter-pills{overflow-x:auto;flex-wrap:nowrap!important}.h-filter-pills button{flex:0 0 auto}.h-modal-foot,.h-sheet-foot{position:sticky;bottom:0;z-index:2}.h-modal-foot>.h-btn,.h-sheet-foot>.h-btn{min-height:50px}}

/* alpha27.65 · hospitality product-polish layer */
body[data-hospitality-surface] .h-main{max-width:1480px;margin:0 auto;width:100%}
.h-takeaway-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:20px;padding:clamp(24px,4vw,42px);border-radius:30px;background:radial-gradient(circle at 85% 20%,rgba(255,255,255,.18),transparent 32%),linear-gradient(135deg,#123f34 0%,#1d6c59 55%,#2f8b6f 100%);color:#fff;box-shadow:0 22px 55px rgba(18,63,52,.2);overflow:hidden}.h-takeaway-hero h1{margin:.25rem 0 .5rem;font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.05em}.h-takeaway-hero p{max-width:700px;color:rgba(255,255,255,.82);font-size:1.03rem;line-height:1.6}.h-takeaway-hero .h-kicker{color:#bdebdc}.h-takeaway-hero .h-btn-alt{background:#fff!important;color:#123f34!important;border-color:#fff!important}.h-takeaway-kpis .h-card{position:relative;overflow:hidden;padding:20px!important}.h-takeaway-kpis .h-card:after{content:"";position:absolute;width:70px;height:70px;border-radius:50%;right:-20px;top:-20px;background:rgba(31,126,99,.08)}.h-takeaway-kpis .h-stat{font-size:2rem;margin:.25rem 0}.h-takeaway-kpis small{color:#6a7b76}.h-takeaway-panels{margin-top:18px}.h-takeaway-public-card,.h-takeaway-ops-card{padding:24px!important}.h-takeaway-flow{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.h-takeaway-flow span,.h-takeaway-status-row span{padding:9px 12px;border-radius:999px;background:#eef7f3;color:#1d5b49;font-size:.82rem;font-weight:800}.h-takeaway-status-row{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.h-takeaway-status-row b{font-size:1rem}.h-finance-table tbody tr{transition:background .12s ease}.h-finance-table tbody tr:hover{background:#f7fbf9}.h-reconciliation-state{display:inline-flex;align-items:center;gap:5px;padding:7px 10px;border-radius:999px;font-weight:750;background:#fff3df;color:#84550a}.h-reconciliation-state.is-done{background:#e7f6ef;color:#176344}.h-reconciliation-state.is-alert{box-shadow:inset 0 0 0 1px rgba(132,85,10,.1)}.h-payment-state{display:inline-flex;padding:7px 10px;border-radius:999px;background:#fff3df;color:#84550a;font-weight:750}.h-payment-state.is-paid{background:#e7f6ef;color:#176344}.h-order-card{position:relative;overflow:hidden}.h-order-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#d8e5e0}.h-order-card:has(.h-payment-state.is-paid):before{background:#2b8a68}
@media(max-width:760px){.h-takeaway-hero{align-items:flex-start;flex-direction:column;border-radius:24px}.h-takeaway-hero .h-actions{width:100%;display:grid!important;grid-template-columns:1fr}.h-takeaway-hero .h-actions>*{width:100%;text-align:center}.h-takeaway-kpis{grid-template-columns:1fr 1fr!important}}
@media(max-width:460px){.h-takeaway-kpis{grid-template-columns:1fr!important}.h-takeaway-flow{display:grid}.h-takeaway-flow span{border-radius:12px}}
.h-cash-sale-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:2px}.h-cash-sale-details label{display:grid;gap:6px;color:#32443b;font-size:.86rem;font-weight:750}.h-cash-sale-details .h-inline-info{grid-column:1/-1;margin:0}
@media(max-width:600px){.h-cash-sale-details{grid-template-columns:1fr}}
