/* Admin startup and panel recovery: never collapse the active view. */
body.admin-page #admin-dashboard .admin-welcome:has(#admin-status.error){display:flex!important;flex:0 0 auto!important;min-height:44px!important;height:auto!important;padding:8px!important;margin:0!important}
body.admin-page #admin-dashboard .admin-welcome:has(#admin-status.error) h1{display:none!important}
body.admin-page #admin-status.error{display:block!important;color:#792d17!important;background:#ffedca!important;padding:9px!important;font:600 14px/1.45 system-ui!important;overflow-wrap:anywhere!important}
body.admin-page #admin-dashboard #admin-pos-panel:not([hidden]){display:flex!important;flex-direction:column!important;position:relative!important;height:auto!important;min-height:320px!important;overflow:visible!important;gap:6px!important}
body.admin-page #admin-dashboard #admin-pos-panel .pos-menu-viewport{display:block!important;flex:0 0 auto!important;height:clamp(240px,52dvh,640px)!important;min-height:240px!important;overflow-y:auto!important;overflow-x:hidden!important}
body.admin-page #admin-dashboard #admin-pos-panel .pos-menu-track{display:flex!important;flex-flow:column nowrap!important;height:100%!important;min-height:0!important;width:100%!important}
body.admin-page #admin-dashboard #admin-pos-panel .pos-page{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;flex:0 0 100%!important;height:100%!important;min-height:100%!important;width:100%!important;max-width:100%!important;min-width:0!important}
body.admin-page #admin-dashboard #admin-pos-panel #pos-category-icons{display:flex!important;height:68px!important;min-height:68px!important;flex:0 0 auto!important;overflow-x:auto!important}
body.admin-page #admin-dashboard #admin-pos-panel .pos-bottom-bar{position:relative!important;flex:0 0 auto!important;margin:0!important}
body.admin-page #admin-login-card{max-width:min(500px,100%)!important;box-sizing:border-box!important}
body.admin-page dialog[open]{max-width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important;overflow:auto!important;box-sizing:border-box!important}

/* Every section must have natural height, not a zero-height flex remainder. */
html:has(body.admin-page){height:auto!important;min-height:100%!important;overflow-y:auto!important}
body.admin-page{height:auto!important;min-height:100dvh!important;overflow-y:auto!important;display:block!important}
body.admin-page main.admin-shell{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;padding:6px 8px 76px!important;display:block!important}
body.admin-page #admin-dashboard:not([hidden]){height:auto!important;min-height:0!important;max-height:none!important;display:block!important;overflow:visible!important;gap:0!important;margin:0!important;padding:0!important}
body.admin-page #admin-dashboard>.admin-panel:not([hidden]):not(#admin-pos-panel){display:block!important;flex:none!important;height:auto!important;min-height:120px!important;max-height:none!important;overflow:visible!important;position:relative!important;inset:auto!important;margin:6px 0!important;padding:10px!important}
body.admin-page #admin-dashboard>#admin-pos-panel:not([hidden]){margin:0!important;padding:8px!important;min-height:0!important;gap:5px!important;inset:auto!important;transform:none!important}
body.admin-page #admin-dashboard #admin-orders-panel>.admin-table-wrap{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;flex:none!important}
body.admin-page #admin-dashboard>.admin-welcome{margin:0!important;padding:0!important;min-height:0!important;height:auto!important}
body.admin-page #admin-dashboard>.admin-welcome:has(#admin-status.error){display:flex!important;gap:6px!important;padding:5px!important;align-items:center!important}
body.admin-page #admin-status.error{font:600 12px/1.35 system-ui!important;margin:0!important;padding:6px!important}
body.admin-page #admin-refresh{padding:5px 8px!important;min-height:30px!important;font-size:11px!important;white-space:nowrap!important}
body.admin-page #admin-dashboard>#payment-alert-banner:not([hidden]){display:block!important;max-height:none!important;min-height:0!important;height:auto!important;padding:6px 8px!important;margin:0 0 5px!important;font:600 11px/1.3 system-ui!important}
body.admin-page #admin-dashboard #admin-pos-panel .pos-topline{margin:0!important;padding:0!important;min-height:28px!important;gap:5px!important;align-items:center!important}
body.admin-page #admin-dashboard #admin-pos-panel .pos-topline h2{font:700 18px/1.2 system-ui!important;margin:0!important}
body.admin-page #admin-dashboard #admin-pos-panel #pos-refresh{min-height:28px!important;padding:4px 8px!important;font-size:11px!important}
body.admin-page #admin-dashboard #admin-pos-panel #pos-category-icons{height:56px!important;min-height:56px!important;max-height:56px!important;padding:2px 0!important;gap:5px!important}
body.admin-page #admin-dashboard #admin-pos-panel #pos-category-icons button{display:flex!important;flex:0 0 74px!important;width:74px!important;min-width:64px!important;max-width:90px!important;min-height:48px!important;height:48px!important;max-height:48px!important;border:1px solid #97734f!important;padding:4px!important;border-radius:9px!important;font:600 11px/1.15 system-ui!important;background:#d5b18c!important;color:#302319!important;box-shadow:none!important}
body.admin-page #admin-dashboard #admin-pos-panel #pos-category-icons button.active{background:#425a3d!important;color:#fff4df!important}
body.admin-page #admin-dashboard #admin-pos-panel #pos-category-icons button b{font-size:18px!important;line-height:18px!important;color:inherit!important}
body.admin-page #admin-dashboard #admin-pos-panel #pos-category-icons button span{color:inherit!important;font:inherit!important}
body.admin-page #admin-dashboard #admin-pos-panel .pos-toolbar{display:flex!important;flex-wrap:wrap!important;gap:4px!important;min-height:0!important;height:auto!important;margin:0!important;padding:0!important}
body.admin-page #admin-dashboard #admin-pos-panel .pos-search-label{flex:1 1 100%!important;gap:0!important;font-size:0!important;margin:0!important}
body.admin-page #admin-dashboard #admin-pos-panel #pos-search{height:34px!important;min-height:34px!important;padding:5px 8px!important;font:13px system-ui!important;width:100%!important}
body.admin-page #admin-dashboard #admin-pos-panel .pos-paging{display:flex!important;align-items:center!important;gap:4px!important;width:100%!important;margin:0!important;min-height:28px!important}
body.admin-page #admin-dashboard #admin-pos-panel .pos-paging span{font-size:10px!important;flex:1!important}
body.admin-page #admin-dashboard #admin-pos-panel .pos-paging button{height:28px!important;min-height:28px!important;min-width:30px!important;padding:2px 8px!important;font-size:16px!important}
@media(max-width:760px){body.admin-page .admin-topbar{height:46px!important;min-height:46px!important;padding:4px 10px!important}body.admin-page .admin-brand{gap:7px!important}body.admin-page .admin-brand small{display:none!important}body.admin-page .admin-brand b{font:700 15px/1.2 system-ui!important}body.admin-page .admin-brand .admin-mark{width:34px!important;height:34px!important;flex-basis:34px!important}}

body.admin-page.pos-mode main.admin-shell{position:static!important;inset:auto!important;margin:0!important;display:block!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;padding:6px 8px 76px!important}
body.admin-page #admin-dashboard>.admin-panel:not([hidden]) .panel-heading{margin:0 0 8px!important;min-height:0!important;gap:6px!important;align-items:center!important}
body.admin-page #admin-dashboard>.admin-panel:not([hidden]) .panel-heading h2{font:700 20px/1.25 system-ui!important;margin:0!important}
body.admin-page #admin-dashboard>.admin-panel:not([hidden]) .panel-heading button{min-height:30px!important;padding:5px 8px!important;font-size:11px!important}
body.admin-page #admin-dashboard #admin-pos-panel .admin-kicker{display:none!important}

/* Keep navigation above the selling panel in every mobile orientation. */
@media(max-width:1100px),(pointer:coarse){
body.admin-page #admin-dashboard>.admin-app-nav{position:fixed!important;inset:auto 0 0!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;z-index:2000!important;isolation:isolate!important;box-sizing:border-box!important;height:calc(62px + env(safe-area-inset-bottom))!important;padding:4px 5px calc(4px + env(safe-area-inset-bottom))!important;background:#3e281d!important;margin:0!important;transform:none!important}
body.admin-page #admin-dashboard[data-role="employee"]>.admin-app-nav{grid-template-columns:repeat(3,minmax(0,1fr))!important}
body.admin-page #admin-dashboard>.admin-app-nav>button{display:flex!important;flex-direction:column!important;justify-content:center!important;min-width:0!important;min-height:48px!important;padding:3px 1px!important;gap:2px!important;color:#fff0d2!important;font:600 10px/1.1 system-ui!important}
body.admin-page #admin-dashboard>.admin-app-nav>button[hidden]{display:none!important}
body.admin-page #admin-dashboard>.admin-app-nav>button span{font-size:22px!important;height:24px!important;line-height:24px!important}
body.admin-page #admin-dashboard>.admin-app-nav>button small{font:600 10px/1.1 system-ui!important;color:inherit!important}
body.admin-page #admin-dashboard>#admin-pos-panel:not([hidden]){z-index:0!important;isolation:isolate!important}
body.admin-page main.admin-shell,body.admin-page.pos-mode main.admin-shell{padding-bottom:calc(90px + env(safe-area-inset-bottom))!important}
body.admin-page #admin-dashboard #admin-pos-panel .pos-menu-viewport{height:clamp(220px,calc(100dvh - 310px),620px)!important;min-height:220px!important}
}

body.admin-page #admin-dashboard #admin-accounts-panel #employee-form-message:not(:empty){display:block!important;position:static!important;padding:9px!important;margin:6px 0!important;border:1px solid #526b42!important;border-radius:8px!important;background:#e1e9cd!important;color:#263e22!important;font:600 13px/1.4 system-ui!important;overflow-wrap:anywhere!important}
body.admin-page #admin-dashboard #admin-accounts-panel #employee-form-message.error{background:#ffebd3!important;color:#7b2517!important;border-color:#af5845!important}
body.admin-page #admin-dashboard #admin-accounts-panel #admin-employee-form button[type=submit]{pointer-events:auto!important;position:relative!important;z-index:1!important;min-height:42px!important}

body.admin-page #admin-dashboard #admin-pos-panel #pos-open-cart{height:auto!important;min-height:42px!important;white-space:normal!important;max-width:100%!important;font:700 12px/1.25 system-ui!important;padding:7px 10px!important;overflow:visible!important}
body.admin-page #admin-dashboard #admin-pos-panel .pos-bottom-bar{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(120px,1fr)!important;min-height:54px!important;height:auto!important;overflow:visible!important}
body.admin-page dialog.pos-dialog[open]{inset:0!important;margin:auto!important;width:min(560px,calc(100vw - 20px))!important;max-width:calc(100vw - 20px)!important;max-height:calc(100dvh - 24px)!important;padding:0!important;overflow:auto!important;transform:none!important}
body.admin-page dialog.pos-dialog form{padding:14px!important;box-sizing:border-box!important;min-width:0!important}
body.admin-page dialog.pos-dialog .pos-dialog-actions{position:static!important;display:flex!important;flex-wrap:wrap!important;gap:6px!important;bottom:auto!important;padding:10px 0!important;margin:0!important;height:auto!important;overflow:visible!important}
body.admin-page dialog.pos-dialog .pos-dialog-actions button{flex:1 1 120px!important;min-width:0!important;min-height:44px!important;height:auto!important;white-space:normal!important;padding:9px!important;line-height:1.3!important}
body.admin-page dialog.pos-dialog .pos-checkout-grid{grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr))!important}
#admin-offline-orders article{display:grid;gap:5px;padding:10px;margin-bottom:8px;border:1px solid #846748;border-radius:10px;background:#dec19c;color:#302317}#admin-offline-orders button{min-height:40px;padding:7px;background:#425a3d;color:#fff4df;border-radius:8px}#admin-offline-orders span,#admin-offline-orders small{display:block;font:12px/1.4 system-ui}

@media(max-width:1100px),(pointer:coarse){
body.admin-page #admin-dashboard #admin-pos-panel:not([hidden]) .pos-bottom-bar{position:fixed!important;inset:auto 8px calc(66px + env(safe-area-inset-bottom)) 8px!important;width:auto!important;max-width:none!important;z-index:1900!important;isolation:isolate!important;box-sizing:border-box!important;padding:6px 8px!important;min-height:56px!important;margin:0!important;background:#e3c59b!important;box-shadow:0 -3px 10px #30231733!important}
body.admin-page #admin-dashboard #admin-pos-panel:not([hidden]){padding-bottom:76px!important}
body.admin-page #admin-dashboard #admin-pos-panel #pos-open-cart{min-height:44px!important;line-height:1.3!important;white-space:normal!important}
body.admin-page #admin-dashboard #admin-pos-panel .pos-menu-viewport{height:clamp(200px,calc(100dvh - 390px),540px)!important;min-height:200px!important}
}
