/* Identidad compartida con la terminal TPV. Las reglas visuales no se aplican a impresión. */
:root{--app-blue:#589ce8;--app-blue-dark:#2468aa;--app-blue-soft:#eaf3ff;--app-sand:#fae9bf;--app-sand-soft:#fff8e9;--app-ink:#203e5c;--app-muted:#60778e;--app-border:#c9dced;--app-radius:10px;--app-shadow:0 3px 14px #244e7510}
.app-icon{width:22px;height:22px;flex:none;vertical-align:middle;pointer-events:none}
.app-control-label{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.app-icon-control{position:relative!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:0!important;min-width:42px!important;min-height:42px!important;padding:9px!important;line-height:1!important;flex-shrink:0;text-decoration:none}
.app-icon-control>.fi{font-size:19px;line-height:1;border-radius:3px;width:25px;height:19px}
.app-icon-control.dropdown-toggle::after{display:none}
.app-tooltip{position:fixed;z-index:20000;pointer-events:none;max-width:min(300px,90vw);padding:7px 11px;border:1px solid #d6e5f6;border-radius:7px;background:#163b60;color:#fff;font:500 12px/1.4 Arial,sans-serif;box-shadow:0 4px 16px #18344f25}
.app-tooltip[hidden]{display:none}
@media screen{
html[data-app-area] body{--bs-primary:#347dc1;--bs-primary-rgb:52,125,193;--bs-body-color:var(--app-ink);--bs-border-color:var(--app-border);--bs-link-color:#2468aa;--bs-link-hover-color:#184c7e}
html[data-app-area]:not([data-app-area=carta]):not([data-app-area=tpv]) body{background:#e6f0fc!important;color:var(--app-ink)!important;font-family:Arial,Helvetica,sans-serif}
html[data-app-area] .navbar{background:var(--app-blue)!important;color:#fff!important;border-bottom:4px solid #d3e7fa;padding:7px 14px!important;min-height:62px;box-shadow:0 3px 10px #315d8820!important;--bs-navbar-color:#fff;--bs-navbar-hover-color:#fff;--bs-navbar-active-color:#fff;--bs-navbar-brand-color:#fff;--bs-navbar-brand-hover-color:#fff;--bs-navbar-toggler-border-color:#ffffff70}
html[data-app-area] .navbar .navbar-brand{font-size:1.05rem!important;font-weight:700;line-height:1.3;min-width:0;max-width:min(45vw,440px);white-space:normal;margin-right:14px;color:#fff!important}
html[data-app-area] .navbar-brand .text-primary,html[data-app-area] .navbar-brand .text-warning{color:#fff0c7!important}
html[data-app-area] .navbar>.container,html[data-app-area] .navbar>.container-fluid{max-width:none;gap:8px;padding:0!important;flex-wrap:wrap}
html[data-app-area] .navbar .d-flex{gap:6px!important;min-width:0;flex-wrap:wrap}
html[data-app-area] .navbar .btn,html[data-app-area] .navbar .nav-link{background:#ffffff1f!important;border:1px solid #ffffff50!important;color:#fff!important;box-shadow:none!important;border-radius:8px;font-weight:600}
html[data-app-area] .navbar .btn:hover,html[data-app-area] .navbar .nav-link:hover,html[data-app-area] .navbar .nav-link.active{background:#fff0ce!important;border-color:#fff0ce!important;color:#264e73!important}
html[data-app-area] .navbar .navbar-nav{gap:6px;align-items:center}
html[data-app-area] .navbar .navbar-toggler{min-width:42px;min-height:42px;padding:5px 8px}
html[data-app-area] .dropdown-menu{background:#f7fbff;color:var(--app-ink);border:1px solid var(--app-border);border-radius:10px;box-shadow:0 10px 28px #244e7526;padding:6px;z-index:1100;min-width:165px}
html[data-app-area] .dropdown-item{border-radius:5px;padding:8px 12px;color:var(--app-ink);font-size:.87rem}
html[data-app-area] .dropdown-item:hover,html[data-app-area] .dropdown-item:focus{background:#e1efff}
html[data-app-area] .dropdown-item.active{background:#d9eaff;color:#205889}
html[data-app-area] .btn{border-radius:7px;min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:5px;font-size:.875rem;transition:background-color .12s,border-color .12s,box-shadow .12s;touch-action:manipulation}
html[data-app-area] .btn-primary{--bs-btn-bg:#347dc1;--bs-btn-border-color:#347dc1;--bs-btn-hover-bg:#2869a6;--bs-btn-hover-border-color:#2869a6;--bs-btn-active-bg:#20598e}
html[data-app-area] .btn-dark{--bs-btn-bg:#3b6c9c;--bs-btn-border-color:#3b6c9c;--bs-btn-hover-bg:#2e5a86}
html[data-app-area] .btn-warning{--bs-btn-bg:#f6d595;--bs-btn-border-color:#e5c17d;--bs-btn-color:#63451e;--bs-btn-hover-bg:#efc578;--bs-btn-hover-border-color:#d9ad5d}
html[data-app-area] .btn-outline-primary{--bs-btn-color:#286aa7;--bs-btn-border-color:#9dc0e3;--bs-btn-hover-bg:#347dc1;--bs-btn-hover-border-color:#347dc1}
html[data-app-area] .btn-outline-secondary{--bs-btn-color:#496780;--bs-btn-border-color:#b6cbdd;--bs-btn-hover-bg:#567d9e;--bs-btn-hover-border-color:#567d9e}
html[data-app-area] .form-control,html[data-app-area] .form-select{border-color:#c4d7e9;border-radius:7px;min-height:39px;font-size:.9rem;color:var(--app-ink)}
html[data-app-area] .form-control:focus,html[data-app-area] .form-select:focus{border-color:var(--app-blue);box-shadow:0 0 0 3px #589ce829}
html[data-app-area] .form-label{font-size:.8rem;margin-bottom:5px;color:#4e6880}
html[data-app-area] .input-group-text{background:#edf4fc!important;color:#54799a!important;border-color:#c4d7e9}
html[data-app-area] .modal-content{border:1px solid var(--app-border)!important;border-radius:12px!important;box-shadow:0 15px 50px #254b7226!important}
html[data-app-area] .modal-header{border-bottom:1px solid #bed7ed;background:#e4f0ff;color:var(--app-ink)}
html[data-app-area] .modal-header.bg-dark,html[data-app-area] .modal-header.bg-primary{background:var(--app-blue)!important;color:white!important}
html[data-app-area] .modal-footer{background:#f5f9ff;border-top-color:#d8e5f1;padding:10px 16px}
html[data-app-area] .modal-body{padding:18px}
html[data-app-area] .badge{font-weight:600;border-radius:5px}
html[data-app-area] .alert{border-radius:8px;font-size:.9rem;box-shadow:none!important}
html[data-app-area] .table{--bs-table-color:var(--app-ink);--bs-table-border-color:#d9e4ee;--bs-table-striped-bg:#f1f7fe;--bs-table-hover-bg:#e9f3ff;vertical-align:middle;font-size:.875rem}
html[data-app-area] .table>thead,html[data-app-area] .table>thead.table-dark{--bs-table-bg:#dcecff;--bs-table-color:#315d82;--bs-table-border-color:#bcd4eb;font-weight:600}
html[data-app-area] .table>thead th{font-size:.77rem;white-space:nowrap;padding:11px 10px;letter-spacing:.02em}
html[data-app-area] .table>tbody>tr>td{padding:9px 10px}
html[data-app-area] td .app-icon-control{min-height:36px!important;min-width:36px!important;padding:7px!important}
html[data-app-area] td .app-icon{width:19px;height:19px}
html[data-app-area] .table-responsive{border-radius:8px}
html[data-app-area] :focus-visible{outline:3px solid #1c5c94;outline-offset:3px}
html[data-app-area] .text-muted{color:#647c92!important}
html[data-app-area=admin] .container{max-width:1540px;width:100%;padding-left:22px;padding-right:22px}
html[data-app-area=admin] body>.container,html[data-app-area=admin] body>.container-fluid{padding-top:6px!important}
html[data-app-area=admin] .navbar.mb-4{margin-bottom:16px!important}
html[data-app-area=admin] .card{border:1px solid #cddff0!important;border-radius:var(--app-radius)!important;box-shadow:var(--app-shadow)!important;overflow:visible}
html[data-app-area=admin] .card.p-4{padding:18px!important}
html[data-app-area=admin] .card-header{background:#e5f0ff;border-bottom:1px solid #c7dbef;border-radius:9px 9px 0 0!important;padding:12px 16px!important}
html[data-app-area=admin] .card-header.bg-primary{background:var(--app-blue)!important}
html[data-app-area=admin] .card-body.p-4{padding:18px!important}
html[data-app-area=admin] h2{font-size:1.45rem}html[data-app-area=admin] h3{font-size:1.3rem}html[data-app-area=admin] h4{font-size:1.14rem}
html[data-app-area=admin] .row.g-4{--bs-gutter-x:1rem;--bs-gutter-y:1rem}
html[data-app-area=admin] .card-menu-option{position:relative;background:#f9fcff!important;overflow:hidden;border-top:3px solid #91bdeb!important}
html[data-app-area=admin] .card-menu-option:nth-child(even){background:var(--app-sand-soft)!important}
html[data-app-area=admin] .card-menu-option:hover{transform:translateY(-2px);box-shadow:0 6px 20px #244e751a!important}
html[data-app-area=admin] .card-menu-option>.fs-1{font-size:1.6rem!important;margin-bottom:10px!important}
html[data-app-area=admin] .card-menu-option h5{font-size:1rem}
html[data-app-area=admin] .card-menu-option p{font-size:.8rem;margin-bottom:9px;line-height:1.45}
html[data-app-area=admin] .card-menu-option .d-grid{display:flex!important;gap:7px!important;margin-top:5px!important}
html[data-app-area=admin] .card-menu-option a.btn{min-height:40px!important;min-width:44px!important;background:#e4effb;color:#2a669d;border-color:#afcdeb}
html[data-app-area=admin] .card-menu-option a.btn:hover{background:#cfe3f9}
html[data-app-area=admin] .header-logo-panel{max-height:48px}
html[data-app-area=admin] .card-menu-option .app-icon{width:22px;height:22px}
html[data-app-page=cocina] body,html[data-app-page=camarero] body{color:var(--app-ink)!important;background:#e3effd!important}
html[data-app-page=cocina] .card.bg-secondary,html[data-app-page=camarero] .card.bg-secondary{background:var(--app-sand-soft)!important;color:var(--app-ink)!important;border-left:4px solid #e2bc75!important}
html[data-app-page=cocina] .card .text-white,html[data-app-page=cocina] .card .text-light,html[data-app-page=camarero] .card .text-white{color:var(--app-ink)!important}
html[data-app-page=cocina] .text-white-50,html[data-app-page=camarero] .text-white-50{color:var(--app-muted)!important}
html[data-app-page=camarero] .card .text-warning{color:#8c642a!important}
html[data-app-page=cocina] .card .btn-outline-light{color:#3b6c9c!important;border-color:#8fb4d7!important}
html[data-app-page=cocina] .modal-content.bg-dark{background:#f8fbff!important;color:var(--app-ink)!important}
html[data-app-area=acceso] body{min-height:100dvh;background:linear-gradient(145deg,#c7dff9,#e9f3ff 55%,#fae9bf)!important;color:var(--app-ink)!important}
html[data-app-area=acceso] .card{border:1px solid #c2d7ec!important;box-shadow:0 12px 40px #3465931a!important;border-radius:14px!important}
html[data-app-area=acceso] .login-card{max-width:400px}
html[data-app-area=acceso] .card::before{content:'';display:block;height:5px;background:linear-gradient(90deg,var(--app-blue) 72%,#ebc780 72%);position:absolute;top:0;left:0;right:0;border-radius:14px 14px 0 0}
html[data-app-area=publico] body{background:#e9f3ff!important;color:var(--app-ink)!important}
html[data-app-area=publico] .lang-card{background:#f9fcff;border:1px solid #c8daed;border-top:6px solid var(--app-blue);color:var(--app-ink);box-shadow:0 12px 40px #315e871c;border-radius:14px;padding:26px;max-width:430px}
html[data-app-area=publico] .lang-card .text-white-50{color:var(--app-muted)!important}
html[data-app-area=publico] .btn-lang{background:#e4f0ff;color:#315c82;border-color:#c7ddef;border-radius:8px;font-size:1rem;padding:11px 16px}
html[data-app-area=publico] .btn-lang:hover{background:var(--app-blue);color:white;border-color:var(--app-blue);transform:translateY(-1px);box-shadow:none}
html[data-app-area=publico] .hero-section{background:#317bbd;color:#fff;padding:45px 16px;border-bottom:7px solid #f1d59e}
html[data-app-area=publico] .hero-section .text-white-50{color:#e0edfc!important}
html[data-app-area=publico] .hero-section h1{max-width:1000px;margin-left:auto;margin-right:auto}
html[data-app-area=publico] footer.bg-dark{background:#3877ad!important;color:#e5effa!important}
html[data-app-area=publico] .card{border-color:#ccdeee;border-radius:12px!important;box-shadow:var(--app-shadow)!important}
html[data-app-area=carta] .header-bg{background:#589ce8;color:#fff;border-bottom:5px solid var(--app-sand);border-radius:0 0 16px 16px;padding-top:20px!important;padding-bottom:20px!important}
html[data-app-area=carta] .accordion-item{border:1px solid #ccdeed;border-radius:10px!important;overflow:hidden;margin-bottom:10px;box-shadow:0 2px 8px #294e7410}
html[data-app-area=carta] .accordion-button{padding:15px 18px;font-size:1.05rem;background:#f6faff;color:#315979}
html[data-app-area=carta] .accordion-button:not(.collapsed){background:var(--app-sand-soft);color:#684b20;box-shadow:inset 0 -1px 0 #ecdbb7}
html[data-app-area=carta] .product-card-clickable{border-radius:9px!important;border-color:#d5e3ef!important}
html[data-app-area=carta] .img-producto{border-radius:8px}
html[data-app-area=carta] .section-page{padding:32px 0}
html[data-app-area=tpv] .terminal .action-rail .app-icon-control,html[data-app-area=tpv] .terminal .bottom-bar .app-icon-control{flex-direction:row;min-height:52px!important;width:100%;padding:12px!important}
html[data-app-area=tpv] .action-rail .app-icon{width:30px;height:30px}
html[data-app-area=tpv] .bottom-bar .app-icon{width:26px;height:26px}
html[data-app-area=tpv] .action-rail .exit-action{color:#ad4a40}
html[data-app-area=tpv] .action-rail .exit-action .app-icon{width:33px;height:33px}
@media(min-width:1200px){html[data-app-page=panel] .row:has(>.col-md-6 .card-menu-option)>.col-md-6{width:25%}}
@media(max-width:767px){
 html[data-app-area=admin] .container{padding-left:12px;padding-right:12px}
 html[data-app-area] .navbar{padding:6px 10px!important;min-height:58px}
 html[data-app-area] .navbar .navbar-brand{font-size:.9rem!important;max-width:42vw;margin-right:3px}
 html[data-app-area] .navbar .d-flex{gap:4px!important}
 html[data-app-area] .navbar .navbar-nav{flex-direction:row;flex-wrap:wrap;justify-content:flex-start;padding-top:8px}
 html[data-app-area] .navbar .navbar-collapse .d-flex{padding-top:7px}
 html[data-app-area] .app-icon-control{min-width:40px!important;min-height:40px!important;padding:8px!important}
 html[data-app-area] .navbar .app-icon{width:21px;height:21px}
 html[data-app-area=admin] .card.p-4{padding:14px!important}
 html[data-app-area=admin] .card-menu-option>.fs-1{font-size:1.4rem!important;margin-bottom:7px!important}
 html[data-app-area=admin] .card-menu-option h5{font-size:.95rem}
 html[data-app-area=admin] .table>tbody>tr>td{padding:8px}
 html[data-app-area] .btn{min-height:40px}
 html[data-app-area] .modal-dialog{margin:10px}
 html[data-app-area=publico] .hero-section{padding:32px 12px}
 html[data-app-area=carta] .header-bg{padding-top:16px!important;padding-bottom:16px!important}
}
@media(prefers-reduced-motion:reduce){html[data-app-area] *,html[data-app-area] *::before,html[data-app-area] *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
}
@media print{.app-tooltip{display:none!important}.app-control-label{position:static!important;width:auto!important;height:auto!important;margin:0!important;clip:auto!important;white-space:normal!important;overflow:visible!important}.app-icon-control>.app-icon{display:none}}
@media screen{.app-quick-nav{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-right:auto}html[data-app-area] .navbar .app-icon-control.active{background:#fff0ce!important;border-color:#fff0ce!important;color:#264e73!important}html[data-app-page=panel] .row:has(.card-menu-option){margin-bottom:22px}html[data-app-area=admin] .container.py-5{padding-top:12px!important;padding-bottom:24px!important}@media(max-width:767px){.app-quick-nav{gap:4px;order:3;flex-basis:100%}.app-quick-nav .app-icon-control{min-width:40px!important}}}
@media screen{html[data-app-area] .navbar .btn,html[data-app-area] .navbar .nav-link{background:#eaf3ff!important;border-color:#cee0f3!important;color:#285f91!important}html[data-app-area=admin] .row:has(.card-menu-option)>div:nth-child(even) .card-menu-option{background:var(--app-sand-soft)!important;border-top-color:#e4c388!important}html[data-app-area=admin] .card .text-warning:not(.badge){color:#946a24!important}}
@media screen{html[data-app-area=admin] .table td:has(>.app-icon-control){white-space:nowrap}html[data-app-area=admin] .table td:has(>.app-icon-control) .d-inline{white-space:nowrap}}
@media screen{.ticket-print-header{display:none}}@media screen and (max-width:575px){html[data-app-page=panel] .navbar a[href^="importar_ia.php"]{display:none!important}html[data-app-page=panel] body>.container>.row.g-3>.col-md-4{width:33.333333%}html[data-app-page=panel] body>.container>.row.g-3 .card{padding:10px!important}html[data-app-page=panel] body>.container>.row.g-3 .card .rounded-circle{display:none!important}html[data-app-page=panel] body>.container>.row.g-3 .card .text-uppercase{font-size:9px!important;letter-spacing:0}html[data-app-page=panel] body>.container>.row.g-3 .card h3{font-size:1.15rem}html[data-app-page=panel] body>.container>.row.g-3 .card h3 small{font-size:10px!important}html[data-app-page=panel] .row:has(.card-menu-option)>.col-md-6{width:50%}html[data-app-page=panel] .card-menu-option h5{font-size:.85rem}html[data-app-page=panel] .card-menu-option p{font-size:.74rem}}
