/* Compact application layout. Keep content readable and let long panels scroll. */
.app-shell{height:100dvh;min-height:0;overflow:hidden}
.topbar{height:44px;min-height:44px;padding:0 20px;flex-shrink:0}
.topbar-right{gap:16px}.topbar .icon-button{padding:5px}
.currency-label .header-date{display:inline-block;margin-left:8px;padding-left:8px;border-left:1px solid #e1eae6;font-size:10px;color:#83988e;font-weight:400;white-space:nowrap}
@media(max-width:600px){.topbar-right{gap:6px}.currency-label .header-date{margin-left:5px;padding-left:5px;font-size:9px}.topbar .breadcrumb{min-width:0;overflow:hidden;white-space:nowrap}.topbar .breadcrumb strong{overflow:hidden;text-overflow:ellipsis}.topbar-right{flex-shrink:0}}
.main-content{max-width:none;padding:14px 20px 10px;min-width:0;min-height:0;overflow:auto}
.app-footer{min-height:24px;padding:6px 20px;font-size:8px;flex-shrink:0}
.page-heading{margin:0 0 14px;min-height:30px;gap:12px}
.page-heading h1{font-size:19px;letter-spacing:-.35px;line-height:1.3;margin:0;font-weight:600}
.page-heading .button{padding:8px 12px;font-size:11px}
.pos-heading{min-height:26px;margin-bottom:10px}
.pos-heading h1{font-size:18px}
.date-chip{display:flex;background:transparent;border:0;border-radius:0;padding:0;font-size:10px;gap:6px;white-space:nowrap}
.date-chip svg{width:13px;height:13px}
.demo-banner{padding:6px 10px;margin-bottom:10px;font-size:9px;border-radius:5px;flex-shrink:0}
.pos-main{display:flex;flex-direction:column;overflow:hidden}
.pos-main>.page-heading{flex-shrink:0}
.stats-grid{gap:12px;margin-bottom:14px}
.stat-card{padding:11px 13px;align-items:center;gap:10px;border-radius:8px}
.stat-icon{width:30px;height:30px;border-radius:9px}
.stat-icon svg{width:18px;height:18px}
.stat-label{font-size:10px}
.stat-card strong{font-size:19px;margin:3px 0 0;line-height:1.2}
.stat-card small{display:none}
.workspace{flex:1;min-height:0;align-items:stretch;gap:16px}
.catalog-panel{display:flex;flex-direction:column;min-height:0}
.panel-heading{margin-bottom:10px;min-height:25px;flex-shrink:0}
.panel-heading h2{font-size:13px}
.search-row{margin-bottom:10px;flex-shrink:0}
.search-field input{padding:10px 0;font-size:11px}
.scan-button{padding:7px 11px}
.category-tabs{padding-bottom:10px;flex-shrink:0}
.category-tab{padding:7px 10px;font-size:10px}
.product-grid{flex:1;min-height:0;overflow:auto;align-content:start;grid-auto-rows:max-content;gap:10px;padding:3px 4px 5px 2px;scrollbar-width:thin;scrollbar-color:#c7ded8 transparent}
.product-picture{aspect-ratio:1.5;max-height:120px}
.product-info{padding:8px 5px 4px}
.product-info h3{font-size:12px}
.product-bottom{margin-top:8px}
.product-bottom strong{font-size:12px}
.catalog-footer{margin:9px 0 0;font-size:8px;flex-shrink:0}
.sale-panel{position:static;display:flex;flex-direction:column;min-height:0;border-radius:9px}
.sale-heading{padding:12px 14px;flex-shrink:0}
.cart-heading{gap:8px}.cart-icon{width:29px;height:29px;border-radius:8px}
.cart-heading h2{font-size:12px}.cart-heading div>span{display:none}
.customer-row{margin:9px 14px;padding:7px 9px;flex-shrink:0}
.customer-row div>span{display:none}
.cart-label{margin:4px 15px 0;padding-bottom:7px;flex-shrink:0}
.cart-lines{flex:1;min-height:0;max-height:none;overflow:auto;padding:0 14px;scrollbar-width:thin}
.cart-line{padding:8px 0}
.cart-line-right{gap:5px}
.empty-cart{flex:1;min-height:0;overflow:auto;padding:18px 12px}
.empty-cart>span{width:42px;height:42px;margin-bottom:9px}
.empty-cart svg{width:21px;height:21px}
.empty-cart h3{margin-bottom:5px}
.checkout-form{padding:0 14px 10px;flex-shrink:0}
.totals{padding-top:10px;margin-top:7px}
.totals>div.total-row{font-size:14px;margin:10px 0 12px}
.payment-options{gap:6px;margin-bottom:10px}
.payment-options legend{margin-bottom:6px}
.payment-option>span{flex-direction:row;justify-content:center;gap:5px;padding:8px 3px;font-size:8px}
.payment-option svg{width:16px;height:16px}
.amount-input input{padding:7px 10px}
.received-row>label{margin-bottom:5px}
.change-line{margin:7px 0 9px}
.checkout-actions{margin-top:10px}
.pay-button{padding:11px 10px}
.checkout-note{margin-top:8px}
.data-panel{padding:18px}
.table th,.table td{padding:12px 10px}
.main-content:has(>.data-panel:not(.editor):not(.receipt)){display:flex;flex-direction:column;overflow:hidden}
.main-content>.data-panel:not(.editor):not(.receipt){min-height:0;overflow:auto;flex:1}
.editor{max-width:900px}
.editor label{margin:12px 0 6px}
.editor .form-actions{margin-top:18px}
.form-actions{flex-wrap:wrap}
.receipt-header{margin-bottom:18px}
.receipt-header h1{font-size:20px;margin:10px 0}
.auth-card{width:100%;max-width:440px;padding:22px 26px;margin:12px auto}
.auth-card h1{font-size:22px;margin:0 0 8px;letter-spacing:-.45px}
.auth-card .eyebrow{display:none}
.auth-card .muted{font-size:11px;margin:0 0 14px}
.auth-card label{margin:12px 0 6px;font-size:11px}
.auth-card input{padding:9px 11px}
.auth-card button{margin-top:18px;padding:10px 14px}
.auth-footer{margin-top:15px!important}
.registration-card{max-width:820px}
.registration-card form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 26px}
.registration-group{border:0;min-width:0;margin:0;padding:0}
.registration-group+.registration-group{padding-left:26px;border-left:1px solid var(--line)}
.registration-step{margin:0 0 12px;padding:0;border:0}
.registration-step h2{font-size:12px}
.registration-card form>.validation,.registration-card form>button{grid-column:1/-1}
.registration-card form>button{justify-self:end;width:auto;min-width:190px}
.registration-card .field-hint{font-size:10px;margin-bottom:0}
.sidebar{padding-top:20px}
.brand{font-size:21px}.brand-icon svg{width:23px;height:25px}
.store-switch{margin-top:18px;margin-bottom:18px;padding:9px 8px}
.store-icon{padding:6px}
.nav-caption{margin-bottom:7px}
.nav-item{padding:10px 13px;margin:2px 0;font-size:11px}
.next-caption{margin-top:18px}
.sidebar-bottom{padding-top:16px}
.help-card{padding:10px 9px}
.user-card{padding-top:12px}
.business-mode{padding:9px 4px}
@media(min-width:761px) and (max-height:650px){
.stat-card{padding:6px 10px}.stat-card strong{font-size:16px}
.stat-label{font-size:9px}.stat-icon{width:24px;height:24px}
.main-content{padding-top:10px}
.demo-banner{margin-bottom:7px}
.page-heading{margin-bottom:8px}
.stats-grid{margin-bottom:10px}
.customer-row{display:none}
.sale-heading{padding:8px 12px}.cart-icon{width:25px;height:25px}
.cart-label,.checkout-note,.payment-options legend{display:none}
.totals{padding-top:6px;margin-top:5px}.totals>div.total-row{margin:7px 0 9px}
.payment-option>span{padding:6px 3px}
.sidebar .store-switch{margin-top:13px;margin-bottom:13px}
.sidebar .nav-item{padding:8px 12px}
.sidebar .help-card{display:none}
}
@media(min-width:761px) and (max-height:540px){
.pos-main{overflow:auto}.workspace{flex:none;min-height:420px}
}
@media(max-width:1000px) and (min-width:761px){
.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.stat-card{padding:10px 9px;gap:7px}
.stat-icon{display:none}
.stat-card strong{font-size:17px}
.registration-card form{gap:0 18px}
.registration-group+.registration-group{padding-left:18px}
}
@media(max-width:760px){
.app-shell{height:auto;min-height:100dvh;overflow:visible}
.topbar{height:44px;min-height:44px;padding:0 12px}
.breadcrumb{min-width:0;gap:7px}
.breadcrumb strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.main-content{padding:12px;overflow:visible}
.pos-main{overflow:visible}
.demo-banner{flex-direction:row;align-items:center;gap:8px;font-size:8px;margin-bottom:9px}
.demo-banner>span{min-width:0}
.demo-banner>a{white-space:normal;text-align:right}
.page-heading{margin-bottom:12px;align-items:center}
.page-heading h1{font-size:18px}
.pos-heading{min-height:24px;margin-bottom:10px}
.pos-heading h1{font-size:17px}
.date-chip{display:flex;font-size:9px}
.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:13px}
.stat-card{padding:10px 11px}
.stat-card strong{font-size:18px}
.workspace{display:grid;grid-template-columns:1fr;flex:none;gap:12px}
.catalog-panel{min-height:auto}
.product-grid{flex:none;max-height:50dvh;min-height:180px;overflow:auto}
.product-picture{aspect-ratio:1.5;max-height:120px}
.sale-panel{min-height:auto;margin-top:0}
.cart-lines{flex:none;max-height:220px}
.empty-cart{min-height:130px;flex:none}
.app-footer{padding:8px 12px;font-size:8px}
.main-content:has(>.data-panel:not(.editor):not(.receipt)){overflow:visible}
.main-content>.data-panel:not(.editor):not(.receipt){flex:none;max-height:65dvh}
.auth-card{max-width:540px;margin:0 auto;padding:20px}
.registration-card form{grid-template-columns:1fr;gap:18px}
.registration-group+.registration-group{padding:18px 0 0;border-left:0;border-top:1px solid var(--line)}
.registration-card form>button{width:100%;margin-top:0}
.registration-step{margin-bottom:9px}
.auth-card h1{font-size:21px}
}
@media print{
.app-shell{height:auto;overflow:visible}
.main-content,.main-content:has(>.data-panel:not(.editor):not(.receipt)){overflow:visible;display:block;padding:0}
.data-panel{max-height:none!important;overflow:visible!important}
}

.category-search{display:flex;gap:8px;align-items:center;flex-shrink:0;margin-bottom:12px}.category-search .search-field{max-width:420px}.category-search .button,.category-search>button{padding:9px 12px;font-size:11px}.stock-pill.inactive{background:#f0f2f2;color:#8b9896}.editor select{width:100%}.field-link{display:inline-block;font-size:10px;color:var(--teal-dark);margin-top:8px}.category-notice{padding:10px 12px;margin-bottom:12px;border:1px solid #d7ebe5;background:#eef8f4;border-radius:7px;color:#5b8f7e;font-size:12px;line-height:1.6}.category-notice a{color:var(--teal-dark);font-weight:600}.editor button:disabled{opacity:.5}.category-search~.data-panel td small{white-space:normal;max-width:500px;line-height:1.5}
@media(max-width:480px){.category-search{flex-wrap:wrap}.category-search .search-field{flex-basis:100%}.category-search~.data-panel td small{max-width:200px}}
/* Product creation and editing */
.product-page-title{display:flex;align-items:center;gap:8px}.product-page-title .icon-button{font-size:18px;padding:3px 7px}.product-editor{max-width:1100px;width:100%}.product-create-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:16px;align-items:start}.product-editor-main{display:flex;flex-direction:column;gap:12px;min-width:0}.product-form-section{padding:16px 18px}.product-section-heading{display:flex;align-items:center;gap:9px;margin-bottom:6px}.product-section-icon{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:#edf8f4;color:var(--teal)}.product-section-icon svg{width:17px;height:17px}.product-section-heading h2{font-size:12px}.product-section-heading p{margin:4px 0 0;color:#91a29d;font-size:10px}.product-editor .form-grid{gap:0 16px}.product-editor .full-width{grid-column:1/-1}.product-editor label{font-size:11px;margin:12px 0 6px}.product-editor input:not([type=checkbox]),.product-editor select{padding:9px 11px;font-size:12px}.required-mark{color:#6ba89a;font-size:11px}.category-field-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.category-field-heading .field-link{margin-top:6px}.product-price-input{display:flex;align-items:center;border:1px solid #dde5e5;border-radius:7px;background:white;padding-left:11px;color:#8ea39c}.product-editor .product-price-input input{border:0;min-width:0;flex:1}.product-price-input:focus-within{outline:2px solid var(--teal)}.product-field-note{display:block;margin-top:5px;color:#9aa9a4;font-size:9px}.product-editor .product-active-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #e7eeee;border-radius:9px;background:white;margin:0;padding:12px 17px;cursor:pointer}.product-active-row strong{font-size:11px;font-weight:550;display:block}.product-active-row small{display:block;font-size:10px;color:#93a59e;margin-top:4px}.product-switch{appearance:none;width:34px;height:20px;border:0;padding:0;background:#dce5e2;border-radius:20px;position:relative;flex-shrink:0;cursor:pointer}.product-switch::after{content:'';position:absolute;width:14px;height:14px;top:3px;left:3px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #244c3920;transition:transform .15s}.product-switch:checked{background:var(--teal)}.product-switch:checked::after{transform:translateX(14px)}.product-preview-panel{padding:15px;min-width:0}.preview-caption h2{font-size:12px}.preview-caption>span{display:block;font-size:9px;color:#9aaba5;margin-top:5px}.product-preview-image{position:relative;aspect-ratio:1.4;background:#edf4ef;border-radius:7px;overflow:hidden;margin-top:15px}.product-preview-image img{width:100%;height:100%;object-fit:contain}.product-preview-image .stock-tag{font-size:8px;top:8px;left:8px}.product-preview-details{padding:12px 2px 4px}.product-preview-details h3{font-size:14px;line-height:1.4;font-weight:600;margin:6px 0;overflow-wrap:anywhere}.product-preview-details .product-category{font-size:10px}.product-preview-details .product-code{display:block;font-size:10px;overflow-wrap:anywhere}.product-preview-details>strong{display:block;font-size:20px;letter-spacing:-.4px;margin:16px 0 12px}.product-preview-note{font-size:9px;color:#a2b1aa;line-height:1.6;border-top:1px solid var(--line);padding-top:10px;margin:14px 0 0}.product-form-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #e3ebe7;padding-top:14px;margin-top:16px}.product-form-footer>span{font-size:9px;color:#95a89f;max-width:250px;line-height:1.6}.product-save-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.product-save-actions button,.product-save-actions .button{padding:10px 12px;font-size:11px}.product-editor>.validation:not(:empty){margin-bottom:12px}
@media(max-width:1000px){.product-create-layout{grid-template-columns:1fr}.product-preview-panel{display:none}.product-form-footer{align-items:flex-start;flex-direction:column}.product-save-actions{width:100%;justify-content:flex-end}}
@media(max-width:600px){.product-form-section{padding:14px}.product-editor .form-grid{grid-template-columns:1fr}.product-form-footer>span{max-width:none}.product-save-actions{display:grid;grid-template-columns:1fr 1fr}.product-save-actions>button:last-child{grid-column:1/-1}.product-save-actions .button{text-align:center}.category-field-heading{gap:6px}.category-field-heading .field-link{font-size:9px}}
.product-photo-section{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 18px}.product-photo-section>div{min-width:0;flex:1}.product-photo-section h2{font-size:12px}.product-photo-section p{font-size:10px;color:#91a29d;margin:5px 0 10px}.product-editor .product-photo-section input[type=file]{font-size:11px;padding:8px;max-width:100%}.product-photo-section>img{width:85px;height:85px;object-fit:cover;background:#f1f7f3;border-radius:8px;flex-shrink:0}.product-photo-section input::file-selector-button{border:0;border-radius:5px;background:#e8f5f1;color:#369586;padding:7px 10px;font:inherit;margin-right:8px;cursor:pointer}.product-preview-image img,.product-picture img,.cart-thumb{object-fit:cover}.product-table-identity{display:flex;gap:10px;align-items:center}.product-table-identity>img{width:38px;height:42px;object-fit:cover;border-radius:6px;background:#f0f5f2}
@media(max-width:480px){.product-photo-section{padding:14px}.product-photo-section>img{width:60px;height:65px}}
.inventory-actions{display:flex;gap:8px;align-items:center}.inventory-summary{display:flex;gap:12px;margin-bottom:12px;flex-shrink:0;flex-wrap:wrap}.inventory-summary a{display:flex;align-items:center;gap:9px;border:1px solid #e4ece8;background:white;border-radius:7px;padding:10px 14px;color:#82968e;font-size:10px}.inventory-summary strong{font-size:18px;color:#35988f}.inventory-mode-switch{margin:12px 0 4px!important;background:#f8fbf9!important}.editor input:read-only{background:#f4f7f5;color:#83978e}.editor input:disabled{background:#f4f7f5;color:#a7b4ad}.editor .full-width{grid-column:1/-1}
@media(max-width:600px){.inventory-actions{flex-wrap:wrap;justify-content:flex-end}.inventory-actions .button{font-size:10px;padding:8px}.inventory-summary{gap:6px}.inventory-summary a{padding:8px;font-size:9px;gap:6px}.inventory-summary strong{font-size:15px}.inventory-mode-switch small{max-width:210px}}
/* Minimal category table */
.category-total{font-size:12px;font-weight:400;color:#97a7a2;margin-left:7px}.category-minimal-search{gap:8px;margin-bottom:12px}.category-minimal-search .search-field{max-width:350px}.category-minimal-search .category-search-submit{background:transparent;border:1px solid #e0e8e4;color:#758f85;font-size:11px;padding:9px 13px}.category-reset{color:#94a69e;font-size:11px;padding:7px}.category-table-panel{display:flex;flex-direction:column;padding:0;border-radius:8px;box-shadow:none}.category-table-scroll{overflow:auto;min-height:0;flex:1}.category-table{font-size:12px;white-space:normal}.category-table th{position:sticky;top:0;background:#fbfcfc;font-size:10px;letter-spacing:0;text-transform:none;padding:0 18px;font-weight:500}.category-table td{padding:13px 18px;border-bottom:1px solid #f0f3f1}.category-table tbody tr:last-child td{border-bottom:0}.category-table td strong{font-weight:500}.category-table td small{max-width:520px;white-space:normal;font-size:10px;line-height:1.5;color:#9aa9a3;margin-top:4px;overflow-wrap:anywhere}.category-table tbody tr:hover{background:#fafcfb}.category-table .sort-header{display:flex;align-items:center;gap:7px;padding:13px 0;color:#91a19a;white-space:nowrap}.sort-header>span{font-size:11px;color:#bac7bf}.category-table .sort-header.is-sorted{color:#428c7c}.sort-header.is-sorted>span{color:#428c7c}.category-table .category-number{text-align:right;width:130px;font-variant-numeric:tabular-nums}.category-number .sort-header{justify-content:flex-end}.category-state{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:#668e7d;white-space:nowrap}.category-state>span{width:5px;height:5px;border-radius:50%;background:#71b69b}.category-state.is-inactive{color:#a1aca5}.category-state.is-inactive>span{background:#c6cec8}.category-edit-cell{text-align:right;width:85px}.category-table .category-edit{font-size:11px;color:#88a098}.category-table .category-edit:hover{color:var(--teal-dark)}.category-table-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 17px;border-top:1px solid #edf1ee;font-size:10px;color:#95a79d;flex-shrink:0}.category-pagination{display:flex;align-items:center;gap:4px}.category-pagination>a,.category-pagination>span{display:grid;place-items:center;min-width:27px;height:27px;border-radius:5px;color:#899e93;font-size:11px;font-variant-numeric:tabular-nums}.category-pagination>a:hover{background:#f1f7f4;color:#388e7b}.category-pagination .page-current{background:#eaf5ef;color:#388e7b;font-weight:600}.category-pagination .page-disabled{color:#d2dbd4}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:600px){.category-table th{padding:0 11px}.category-table td{padding:11px}.category-table .category-number{width:90px}.category-table-footer{padding:10px;flex-wrap:wrap}.category-pagination{gap:2px}.category-table td small{max-width:190px}.category-edit-cell{width:55px}}
/* Keep the application shell stable during navigation and form submissions. */
.navigation-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:100;background:linear-gradient(90deg,transparent 0%,#39a6a4 35%,#8dd2c1 65%,transparent 100%);background-size:45% 100%;background-repeat:no-repeat;opacity:0;pointer-events:none}.is-navigating .navigation-progress{opacity:1;animation:thanpos-progress 1.3s linear infinite}.is-navigating{cursor:progress}#main h1:focus,#main .validation-summary-errors:focus{outline:none}.product-save-actions button:disabled,.form-actions button:disabled{opacity:.55;cursor:progress}@keyframes thanpos-progress{from{background-position:-85% 0}to{background-position:185% 0}}@media(prefers-reduced-motion:reduce){.is-navigating .navigation-progress{animation:none;background:var(--teal)}}
/* Common minimal table design: categories, products, inventory and sales. */
.app-table{min-width:520px}.app-table .table-nowrap{white-space:nowrap}.table-stock-low{color:#b89662}.table-entry{color:#549b80}.app-table-panel .product-table-identity>img{width:30px;height:34px;border-radius:5px}.app-table .inventory-actions{gap:12px}.app-table th,.app-table td{vertical-align:middle}.app-table .category-number{min-width:85px;width:auto}.app-table-panel .category-table-scroll{scrollbar-width:thin;scrollbar-color:#ccddd4 transparent}.category-minimal-search select{padding:9px 10px;font-size:11px;border-color:#e3ebe6;color:#7e9489}.app-table .category-edit-cell{white-space:nowrap}.receipt-table{min-width:0}.receipt-table th{position:static}.receipt-table th,.receipt-table td{padding-left:10px;padding-right:10px}@media print{.app-table{min-width:0}.app-table th{position:static}.category-table-footer{display:none}}
/* Search results update without replacing the focused input. */
.live-search-enabled form.category-search:has(input[type=search]) .category-search-submit{display:none}.live-search-loading .search-field::after{content:'';display:block;flex-shrink:0;width:12px;height:12px;border:2px solid #dbeae4;border-top-color:var(--teal);border-radius:50%;animation:thanpos-search-spin .7s linear infinite}.live-search-loading .search-field{border-color:#b7d8ca}@keyframes thanpos-search-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.live-search-loading .search-field::after{animation:none;border-color:var(--teal)}}
.category-product-filters{flex-wrap:wrap}.category-product-filters .category-filter{min-width:150px;max-width:230px}.category-product-filters .search-field{min-width:150px}@media(max-width:760px){.category-product-filters .search-field{flex-basis:100%;max-width:none}.category-product-filters select{min-width:0!important;flex:1;max-width:none!important}}
/* iOS-inspired notifications in the application's teal palette. */
.ios-toast-region{position:fixed;top:56px;right:18px;z-index:1000;width:min(380px,calc(100vw - 28px));display:flex;flex-direction:column;gap:9px;pointer-events:none;max-height:calc(100dvh - 76px);overflow:auto;padding:2px 4px 12px;scrollbar-width:none}.ios-toast{display:flex;gap:11px;align-items:flex-start;pointer-events:auto;padding:14px 13px;border-radius:18px;background:rgba(250,254,252,.9);border:1px solid rgba(255,255,255,.85);box-shadow:0 5px 18px #244b3b0c,0 14px 40px #244b3b12,inset 0 0 0 1px #6c9f8510;backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%);color:#344d43;animation:thanpos-toast-in .25s cubic-bezier(.2,.8,.2,1);transition:opacity .18s,transform .18s}.ios-toast.is-leaving{opacity:0;transform:translateY(-8px) scale(.97)}.ios-toast-icon{display:grid;place-items:center;width:30px;height:30px;flex-shrink:0;border-radius:10px;background:#e2f3ec;color:#399c83;margin-top:1px}.ios-toast-icon svg{width:17px;height:17px;stroke-width:2}.ios-toast-content{flex:1;min-width:0}.ios-toast-content strong{display:block;font-size:12px;font-weight:650;letter-spacing:-.1px;margin:1px 0 4px}.ios-toast-content p{margin:0;font-size:11px;color:#7a8d83;line-height:1.6;overflow-wrap:anywhere}.ios-toast-close{padding:0;width:23px;height:23px;flex-shrink:0;display:grid;place-items:center;background:#e6eee980;color:#91a299;border-radius:50%;font-size:17px;line-height:1}.ios-toast-close:hover{background:#dce9e2;color:#587b67}.ios-toast-error .ios-toast-icon{background:#f8eae7;color:#c47b70}.ios-toast-warning .ios-toast-icon{background:#fbf0db;color:#bd9954}.ios-toast-info .ios-toast-icon{background:#e5f1f0;color:#499f9b}.toast-validation-summary{display:none}.input-validation-error{border-color:#cf9a8c!important}@keyframes thanpos-toast-in{from{opacity:0;transform:translateY(-10px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:760px){.ios-toast-region{top:calc(51px + env(safe-area-inset-top,0px));right:10px;width:calc(100vw - 20px);max-width:420px}.ios-toast{padding:13px 12px;border-radius:17px}.ios-toast-content p{font-size:12px}}@media(prefers-reduced-motion:reduce){.ios-toast{animation:none;transition:none}}@media print{.ios-toast-region,.navigation-progress{display:none!important}}

/* Purchasing: compact forms and the shared minimal table design. */
.purchasing-editor{max-width:none;width:100%;min-width:0;flex-shrink:0;font-size:12px}
.main-content:has(>.purchasing-editor){display:block;overflow:auto}
.main-content:has(>.purchasing-editor)>.app-table-panel{max-height:none;overflow:visible;flex:none}
.purchasing-editor .form-grid{gap:12px 20px;margin-bottom:16px}
.purchasing-editor .form-grid>label{display:flex;flex-direction:column;gap:7px;margin:0;font-size:11px;min-width:0}
.purchasing-editor .form-grid>.check-label{flex-direction:row;align-items:center}
.purchasing-editor input:not([type=checkbox]),.purchasing-editor select{padding:9px 10px;font-size:12px;min-width:0}
.purchasing-editor [hidden]{display:none!important}
.purchasing-editor h2,.purchasing-section-heading h2{margin:0;font-size:13px;font-weight:600}
.purchasing-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 12px;flex-shrink:0}
.purchasing-section-heading:first-child{margin-top:0}
.purchasing-section-heading label{font-size:11px;max-width:280px}
.purchasing-section-heading .button{font-size:11px;padding:8px 11px}
.purchasing-lines{min-width:640px}
.purchasing-lines td:first-child{width:45%}
.purchasing-lines input[type=number]{min-width:100px;max-width:155px}
.purchasing-lines select{min-width:220px}
.purchasing-total{display:flex;justify-content:flex-end;align-items:center;gap:18px;margin:14px 0;font-size:12px;color:#819a93}
.purchasing-total strong{font-size:19px;color:#365b50;font-variant-numeric:tabular-nums}
.purchasing-editor .inventory-summary{margin:14px 0;flex-wrap:wrap}
.inventory-summary>span{font-size:11px;color:#819a93;display:inline-flex;align-items:center;gap:8px}
.purchasing-receipt-detail{margin:12px 0 18px}
.purchasing-receipt-detail summary{color:var(--teal-dark);cursor:pointer;font-size:12px;padding:9px 0}
@media(max-width:760px){.purchasing-section-heading{align-items:flex-start;flex-wrap:wrap}.purchasing-editor .form-grid{grid-template-columns:1fr}.purchasing-editor .form-actions{flex-wrap:wrap}.page-heading:has(+.purchasing-editor){flex-wrap:wrap}}
[data-goods-receipt] .purchasing-lines th:first-child,[data-goods-receipt] .purchasing-lines td:first-child{width:1%;min-width:0;white-space:nowrap;padding-left:8px;padding-right:8px;text-align:center}
[data-goods-receipt] .purchasing-lines td:nth-child(2){width:auto}
[data-goods-receipt] .purchasing-lines input[type=checkbox]{width:17px;height:17px;accent-color:var(--teal);cursor:pointer}
[data-goods-receipt] .purchasing-lines input[readonly]{background:#f3f7f6;color:#91a29b;cursor:default}
.table-stock-out{color:#bd8472}
.page-heading>.inventory-actions{flex-wrap:wrap;justify-content:flex-end}
/* Supplier account filters share the compact table toolbar. */
.supplier-payment-filters{flex-wrap:wrap;align-items:flex-end;gap:10px}
.supplier-payment-filters .search-field{min-width:180px;flex:1;max-width:300px;margin:0}
.supplier-payment-filters .supplier-filter-field{display:flex;flex-direction:column;gap:5px;min-width:130px;max-width:240px;font-size:10px;color:#83988d;margin:0}
.supplier-payment-filters .supplier-filter-field input,.supplier-payment-filters .supplier-filter-field select{padding:9px 10px;font-size:11px;min-height:35px;width:100%}
.supplier-payment-filters .category-reset{align-self:flex-end;margin-bottom:4px}
@media(max-width:760px){.supplier-payment-filters .search-field{flex-basis:100%;max-width:none}.supplier-payment-filters .supplier-filter-field{flex:1 1 140px;max-width:none}}
.pos-customer-select{flex:1;min-width:0}.pos-customer-select label{display:block;font-size:9px;color:#91a29a;margin-bottom:4px}.pos-customer-select select{width:100%;padding:5px 6px;font-size:11px;background:transparent}
@media print{.sale-customer-assignment{display:none!important}}
/* Configured payment choices share the compact application controls. */
.payment-fields{min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}
.payment-fields label.payment-method-label,.payment-fields label.payment-transfer-label{display:flex;flex-direction:column;gap:6px;font-size:11px;margin:0;min-width:0}
.payment-fields select{width:100%;font-size:12px;padding:9px 10px}
.checkout-form .payment-fields{display:block}
.checkout-form .payment-options{grid-template-columns:repeat(auto-fit,minmax(75px,1fr))}
.checkout-form .payment-option{min-width:0}.checkout-form .payment-option>span{overflow-wrap:anywhere}
.checkout-form .payment-transfer-label{margin:0 0 10px!important;font-size:10px!important}
.checkout-form .payment-fields select{padding:7px 8px;font-size:11px}
@media(max-width:600px){.payment-fields{grid-template-columns:1fr}}
.pos-delivery:empty{display:none}.pos-delivery{margin:0 0 8px}.pos-delivery .check-label{display:flex;align-items:center;gap:7px;font-size:11px;color:#658377}.pos-delivery small{margin-left:auto;font-size:9px;color:#94a69c}.pos-delivery input{accent-color:var(--teal)}
.receipt-breakdown{display:grid;gap:9px;margin:16px 12px;font-size:12px;color:#82988b}.receipt-breakdown>div{display:flex;justify-content:space-between;gap:16px}.receipt-breakdown strong{font-weight:500;color:#4a6658}
.main-content>.purchasing-editor+.purchasing-editor{margin-top:12px}
.settings-intro{margin:0 0 18px;color:#81948f;font-size:12px;line-height:1.5}
.settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
.settings-card{display:flex;flex-direction:column;min-width:0;background:var(--surface);border:1px solid #e4eeeb;border-radius:14px;overflow:hidden;box-shadow:0 3px 12px #244c3904;transition:border-color .18s,box-shadow .18s}
.settings-card:hover{border-color:#b5dcd5;box-shadow:0 6px 20px #244c390a}
.settings-card-link{display:flex;flex:1;flex-direction:column;align-items:flex-start;min-height:215px;padding:22px;color:var(--ink)}
.settings-card-link:focus-visible,.settings-card-secondary:focus-visible{outline-offset:-4px}
.settings-card-icon{display:grid;place-items:center;width:40px;height:40px;margin-bottom:16px;border-radius:12px;background:#eaf7f3;color:var(--teal-dark)}
.settings-card-icon svg{width:21px;height:21px}
.settings-icon-blue{background:#edf4fc;color:#6a91b6}.settings-icon-lilac{background:#f2effb;color:#9b86bb}.settings-icon-peach{background:#fff3e9;color:#c79a6b}
.settings-card h2{font-size:14px;font-weight:600;margin:0 0 8px;line-height:1.4}
.settings-card p{font-size:12px;line-height:1.65;color:#83958f;margin:0 0 20px;max-width:34ch}
.settings-card-action{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;margin-top:auto;color:var(--teal-dark);font-size:11px;font-weight:600}
.settings-card-action>span{font-size:18px;font-weight:400}
.settings-card-secondary{display:flex;align-items:center;gap:7px;border-top:1px solid #edf2f0;padding:11px 22px;color:#6f8980;font-size:11px;background:#fafcfb}
.settings-card-secondary svg{width:14px;height:14px}.settings-card-secondary:hover{color:var(--teal-dark);background:#f0f9f6}
@media(max-width:1150px){.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.settings-grid{grid-template-columns:minmax(0,1fr);gap:12px}.settings-card-link{min-height:190px;padding:18px}.settings-card-secondary{padding:11px 18px}}
@media(prefers-reduced-motion:reduce){.settings-card{transition:none}}
.inventory-entry-editor{overflow:visible}
.product-picker{position:relative;min-width:0}
.product-picker-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:11px 12px;background:#fff;color:var(--ink);border:1px solid #dde5e5;border-radius:7px;text-align:left;font-size:12px;box-shadow:none}
.product-picker-trigger>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.product-picker-trigger>span:last-child{color:var(--teal-dark);font-size:18px;line-height:1}
.product-picker-trigger[aria-expanded=true]{border-color:var(--teal)}
.product-picker-trigger:disabled{opacity:.6}
.product-picker-popup{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:15;padding:8px;background:#fff;border:1px solid #dceae5;border-radius:10px;box-shadow:0 12px 30px #214e3d1c}
.editor .product-picker-search{display:block;width:100%;padding:9px 10px;font-size:12px;background:#f7faf9;border-color:#e3ece8}
.product-picker-results{max-height:min(260px,40vh);overflow-y:auto;overscroll-behavior:contain;margin-top:7px}
.product-picker-option{padding:10px;border-radius:6px;font-size:12px;color:#526d62;line-height:1.5;overflow-wrap:anywhere;cursor:pointer}
.product-picker-option:hover,.product-picker-option.is-active{background:#eff8f5;color:var(--teal-dark)}
.product-picker-option[aria-selected=true]{font-weight:600;background:#e8f6f1;color:var(--teal-dark)}
.product-picker-status{padding:9px 10px 3px;font-size:10px;color:#83988e;line-height:1.5}
.sale-panel .customer-row{display:flex!important}.sale-panel .customer-row[hidden]{display:none!important}.sale-panel{overflow-y:auto}
.pos-customer-select{min-width:0}.pos-customer-select .product-picker-trigger>span:first-child{display:block}
.transfer-cards{border:0;padding:0;margin:0 0 10px;display:grid;grid-template-columns:repeat(auto-fit,minmax(78px,1fr));gap:6px;min-width:0;max-height:135px;overflow-y:auto}
.transfer-cards legend{font-size:10px;color:#83988e;margin-bottom:7px}
.transfer-card{position:relative;margin:0;cursor:pointer;min-width:0}.transfer-card input{position:absolute;opacity:0;width:1px;height:1px}
.transfer-card>span{display:flex;align-items:center;justify-content:center;min-height:28px;padding:4px 6px;border:1px solid #dce9e4;background:#fbfdfc;border-radius:6px;font-size:9px;color:#789184;text-align:center;overflow-wrap:anywhere}
.transfer-card input:checked+span{background:#eaf7f2;border-color:#80bdac;color:#388c72}.transfer-card input:focus-visible+span{outline:2px solid var(--teal-dark)}
.pos-options{margin:7px 0}.pos-options button{padding:4px 0;background:transparent;font-size:10px}
.cart-price-label{display:flex;align-items:center;gap:4px;font-size:9px;color:#8b9d92;margin-top:5px;cursor:default}.cart-price-input{display:block;width:100%;max-width:125px;margin-top:3px;padding:5px 7px;font-size:11px}.cart-price-input:disabled{cursor:default;opacity:.78;background:#f7faf8}.cart-price-label.is-editing{color:var(--teal-dark)}.cart-price-label.is-editing .cart-price-input{border-color:#8bc6b7;background:#fff;opacity:1}.cart-price-cancel{width:22px;height:22px;padding:0;border:1px solid #e5ece8;border-radius:5px;background:#fff;color:#9aaba4;font-size:15px;line-height:1;cursor:pointer}.cart-price-cancel:hover,.cart-price-cancel:focus-visible{border-color:#d9a9a9;color:#b86868;background:#fff7f7}
#sale-options-dialog h2{font-size:16px;margin-top:0}#sale-options-form label{display:block;margin-top:14px;font-size:12px;color:#789184}#sale-options-form input[type=number]{display:block;width:100%;margin-top:7px}#sale-options-form .check-label{display:flex;gap:8px;align-items:center}
.product-price-stack{display:flex;align-items:flex-start;flex-direction:column;gap:3px;min-width:0}
.product-price-stack del{color:#9aaba3;font-size:10px;font-weight:400}
.promotion-label{display:inline-block;padding:3px 6px;background:#eaf7ef;color:#4f9b73;font-size:9px;border-radius:4px;line-height:1.2}
.cart-promotion{display:block;font-size:9px;color:#569b7a;line-height:1.4;margin-top:3px;overflow-wrap:anywhere}
.cart-original{display:block;font-size:9px;color:#a3b0a9;margin-top:2px}
.totals .promotion-savings{color:#5a9b7a;font-size:10px}.promotion-savings small{display:block;color:#95a99e;font-size:8px;margin-top:3px}
.receipt-savings{margin:16px 12px;padding:12px;background:#eff8f2;border-radius:8px;color:#5d9274;font-size:12px;line-height:1.6}.receipt-savings small{display:block;font-size:10px;color:#859f8f}
.table td small.receipt-promotion{color:#569b7a}.product-promotion-link{display:block;margin-top:7px}
.catalog-picker-floating{position:fixed;right:auto;top:0;z-index:60}
.catalog-picker-floating .product-picker-search{display:block;width:100%;padding:9px 10px;font-size:12px;background:#f7faf9;border-color:#e3ece8;color:var(--ink)}
.catalog-picker-floating .product-picker-results{white-space:normal}
.category-search>.product-picker{flex:0 1 230px;min-width:150px;max-width:280px}
.category-search .product-picker-trigger,.supplier-filter-field .product-picker-trigger{padding:9px 10px;font-size:11px;min-height:35px}
.supplier-filter-field .product-picker{width:100%}
.purchasing-lines .product-picker{min-width:180px;max-width:350px}
.purchasing-lines .product-picker-trigger{padding:8px 10px;font-size:11px}
.pos-customer-select .product-picker-trigger{padding:5px 6px;font-size:11px;background:transparent}
.sale-heading-actions{display:flex;align-items:center;gap:4px;min-width:0}
.sale-quick-action{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:28px;height:28px;padding:4px 6px;border:1px solid #e4eeea;border-radius:7px;background:#fbfdfc;color:#71958a;font-size:8px;cursor:pointer}
.sale-quick-action svg{width:14px;height:14px;flex:none}.sale-quick-action:hover,.sale-quick-action:focus-visible{border-color:#9bcfc2;background:#eef9f5;color:#398e7f}.sale-quick-action.is-active{background:#eaf7f2;border-color:#8bc6b7;color:#398e7f}
@media(max-width:600px){.sale-heading-actions{gap:2px}.sale-quick-action{padding:4px;min-width:25px}.sale-quick-action span{display:none}.sale-status{padding:4px 5px}}
@media(max-width:600px){.category-search>.product-picker{flex:1 1 150px;max-width:none}.catalog-picker-floating .product-picker-search{font-size:16px}}
.navigation-loading{position:fixed;inset:0;z-index:90;display:grid;place-items:center;background:rgba(244,250,248,.58);backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:opacity .16s ease}.navigation-loading[hidden]{display:none}.navigation-loading.is-visible{opacity:1;pointer-events:auto}.navigation-loading-card{display:flex;flex-direction:column;align-items:center;gap:7px;min-width:190px;padding:22px 26px;border:1px solid rgba(216,233,227,.95);border-radius:16px;background:rgba(255,255,255,.92);box-shadow:0 18px 55px rgba(39,86,76,.14);color:#315e55}.navigation-loading-card strong{font-size:12px;font-weight:650}.navigation-loading-card small{font-size:10px;color:#8aa09a}.navigation-spinner{width:23px;height:23px;border:2px solid #dceee8;border-top-color:#39a6a4;border-radius:50%;animation:navigation-spin .7s linear infinite}@keyframes navigation-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.navigation-loading{transition:none}.navigation-spinner{animation:none;border-top-color:#39a6a4}}

.report-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:0 0 18px}.report-card{display:flex;align-items:center;gap:10px;min-width:0;padding:13px;border:1px solid #e8efed;border-radius:11px;background:#fff;color:var(--ink);box-shadow:0 3px 12px #25443b05;transition:border-color .15s,transform .15s}.report-card:hover,.report-card.selected{border-color:#91cfc1;transform:translateY(-1px)}.report-card.selected{background:#f4fbf8}.report-card-icon{display:grid;place-items:center;flex:0 0 31px;width:31px;height:31px;border-radius:9px;background:#e7f5f1;color:#3d9d91}.report-card-icon svg{width:16px;height:16px}.report-card span:nth-child(2){min-width:0;display:grid;gap:3px}.report-card strong{font-size:10px;font-weight:650}.report-card small{font-size:8px;color:#8b9e98;line-height:1.35}.report-card-arrow{margin-left:auto;color:#96aba5;font-size:14px}.report-filters{display:flex;align-items:flex-end;gap:9px;margin-bottom:14px;padding:12px 14px;border:1px solid #e7efec;border-radius:10px;background:#fbfdfc}.report-filters label{display:grid;gap:5px;color:#7f958d;font-size:9px}.report-filters input{padding:8px 9px;border:1px solid #e0ebe7;border-radius:6px;background:#fff;font-size:10px}.report-filters .button{padding:9px 13px;font-size:10px}.report-summary{display:flex;gap:10px;margin-bottom:14px}.report-summary>div{display:grid;gap:5px;min-width:130px;padding:12px 14px;border:1px solid #e7efec;border-radius:9px;background:#fff}.report-summary small{font-size:8px;color:#8ca099}.report-summary strong{font-size:14px;color:#315e55}.report-table-panel{overflow:auto}.report-table-panel .app-table{min-width:760px}.report-table-panel .app-table th,.report-table-panel .app-table td{white-space:nowrap}.movement-in{color:#398f76;font-weight:650}.movement-out{color:#b56e65;font-weight:650}@media(max-width:1000px){.report-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.report-cards{grid-template-columns:1fr}.report-filters{flex-wrap:wrap}.report-filters label{flex:1;min-width:130px}.report-filters .button{width:100%}.report-summary{overflow:auto}.report-summary>div{min-width:115px}.report-summary strong{font-size:12px}}

/* Reportes: navegación compacta y tabla prioritaria. */
.main-content:has(>.report-table-panel){display:block!important;overflow:visible!important}.report-cards{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-bottom:12px}.report-card{gap:7px;padding:8px 9px;border-radius:8px;min-height:48px}.report-card-icon{flex-basis:24px;width:24px;height:24px;border-radius:7px}.report-card-icon svg{width:13px;height:13px}.report-card strong{font-size:9px}.report-card small{font-size:7px;line-height:1.2}.report-card-arrow{font-size:11px}.report-filters{margin-bottom:10px;padding:9px 11px}.report-summary{margin-bottom:10px}.report-summary>div{padding:9px 11px;min-width:110px}.report-summary strong{font-size:12px}.report-table-panel{display:block!important;min-height:300px;max-height:none!important;overflow:auto!important;padding:14px!important}.report-table-panel .app-table{min-width:760px;margin:0}@media(max-width:1200px){.report-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.report-cards{display:flex;overflow-x:auto;padding-bottom:4px}.report-card{flex:0 0 155px}.report-table-panel{min-height:260px}}
.report-detail-heading{margin:0 0 18px}.report-back-link{display:inline-flex;margin-bottom:16px;color:#429b8e;font-size:10px;font-weight:600}.report-detail-heading h1{margin:4px 0 5px;font-size:24px}.report-detail-heading p{margin:0;color:#8b9e98;font-size:10px}

/* Tablas de reportes con el mismo desplazamiento que las tablas de proveedores. */
.report-table-panel{display:block!important;width:100%;max-width:100%;overflow-x:auto!important;overflow-y:visible!important;scrollbar-width:thin;scrollbar-color:#c9ddd5 transparent}.report-table-panel .app-table{display:table;width:max-content;min-width:100%;table-layout:auto}.report-table-panel::-webkit-scrollbar{height:8px}.report-table-panel::-webkit-scrollbar-thumb{background:#c9ddd5;border-radius:8px}.report-table-panel::-webkit-scrollbar-track{background:transparent}
/* Estructura idéntica a las tablas de proveedores. */
.report-table-panel{display:flex!important;flex-direction:column;padding:0!important;overflow:hidden!important}.report-table-panel .category-table-scroll{display:block;min-width:0;min-height:0;flex:1;overflow:auto;scrollbar-width:thin;scrollbar-color:#ccddd4 transparent}.report-table-panel .category-table{min-width:760px;width:100%;white-space:normal}.report-table-panel .category-table th{position:sticky;top:0;background:#fbfcfc}.report-table-panel .category-table td,.report-table-panel .category-table th{vertical-align:middle}
.report-table-panel{height:calc(100dvh - 290px);min-height:390px;max-height:none!important}.report-table-panel .category-table-footer{flex-shrink:0}.report-footer-caption{color:#a4b2ac}@media(max-width:760px){.report-table-panel{height:auto;min-height:360px;max-height:none!important}}

/* Detalle de reporte alineado con el listado de proveedores. */
.report-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px;min-height:42px}.report-detail-heading h1{font-size:26px;letter-spacing:-.6px;margin:0 0 4px;font-weight:650}.report-detail-heading p{margin:0;color:#8b9e98;font-size:10px}.report-detail-heading .report-back-link{margin:0;padding:9px 12px;border:1px solid #e1ebe7;border-radius:7px;color:#6f9188;background:#fff;font-size:10px;white-space:nowrap}.report-filters{display:flex;align-items:flex-end;gap:8px;margin-bottom:14px;padding:0;border:0;background:transparent}.report-filters label{display:grid;gap:5px;color:#7f958d;font-size:9px}.report-filters input{min-height:35px}.report-filters .button{min-height:35px}.report-table-panel{height:calc(100dvh - 235px);min-height:450px}
@media(max-width:760px){.report-detail-heading{align-items:flex-start;flex-direction:column;gap:8px}.report-detail-heading h1{font-size:22px}.report-detail-heading .report-back-link{align-self:flex-start}.report-filters{flex-wrap:wrap}.report-filters label{flex:1;min-width:130px}.report-filters .button{width:auto}}
.report-filters select{min-height:35px;padding:8px 9px;border:1px solid #e0ebe7;border-radius:6px;background:#fff;color:#5d7770;font-size:10px}.report-filters .button.secondary{background:#fff;color:#6f9188;border:1px solid #dce9e4;white-space:nowrap}

/* Cards de reportes: más visibles y agradables en la portada. */
.report-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:8px}.report-card{position:relative;gap:13px;min-height:86px;padding:16px 17px;border:1px solid #e4eeea;border-radius:14px;background:linear-gradient(145deg,#fff 0%,#fbfefd 100%);box-shadow:0 5px 18px rgba(34,83,70,.06);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.report-card::after{content:"";position:absolute;left:17px;right:17px;bottom:0;height:2px;border-radius:2px;background:transparent;transition:background .18s ease}.report-card:hover{border-color:#9bcfc4;box-shadow:0 10px 26px rgba(34,83,70,.11);transform:translateY(-3px)}.report-card:hover::after,.report-card.selected::after{background:var(--teal)}.report-card.selected{border-color:#78bfb2;background:linear-gradient(145deg,#f7fcfa 0%,#edf8f4 100%);box-shadow:0 8px 24px rgba(55,150,132,.12);transform:none}.report-card-icon{flex-basis:40px;width:40px;height:40px;border-radius:12px;background:#e3f4ef;color:#32998c;box-shadow:inset 0 0 0 1px #ccebe2}.report-card-icon svg{width:20px;height:20px}.report-card strong{font-size:12px;letter-spacing:-.1px}.report-card small{font-size:9px;line-height:1.45;color:#82978f}.report-card-arrow{font-size:17px;color:#8eaaa1;transition:transform .18s ease,color .18s ease}.report-card:hover .report-card-arrow{color:var(--teal);transform:translateX(3px)}
@media(max-width:1100px){.report-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.report-cards{display:grid;grid-template-columns:1fr;gap:10px}.report-card{min-height:74px;padding:14px 15px}}

/* Iconos visibles y centrados dentro del cuadrado verde de cada reporte. */
.report-card-icon{display:grid;place-items:center;flex:0 0 40px;overflow:hidden}
.report-card-icon svg{display:block;width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

/* Configuración: tarjetas de administración con identidad propia. */
.settings-page-heading{margin-bottom:6px}.settings-page-heading p{margin:5px 0 0;color:#81948f;font-size:11px}.settings-intro{display:none}.settings-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:8px 0 20px}.settings-card{border-color:#e3e9f0;background:linear-gradient(145deg,#fff 0%,#fbfcff 100%);box-shadow:0 5px 18px rgba(48,67,91,.06);border-radius:16px}.settings-card:hover{border-color:#b7c8dc;box-shadow:0 10px 25px rgba(48,67,91,.11)}.settings-card-link{min-height:205px;padding:22px}.settings-card-icon{width:43px;height:43px;margin-bottom:15px;border-radius:13px;background:#eaf3fb;color:#4f86b4;box-shadow:inset 0 0 0 1px #d7e8f5}.settings-card-icon svg{display:block;width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.settings-icon-blue{background:#edf1fb;color:#7180ba;box-shadow:inset 0 0 0 1px #dfe3f4}.settings-icon-lilac{background:#f3effb;color:#987db7;box-shadow:inset 0 0 0 1px #e7def4}.settings-icon-peach{background:#fff3e9;color:#c58e64;box-shadow:inset 0 0 0 1px #f6e3d0}.settings-card h2{font-size:14px}.settings-card-action{color:#5f81a5}.settings-card-action>span{font-size:17px}.settings-card-secondary{border-top-color:#edf1f4;background:#fafcff;color:#7890a4}.settings-card-secondary svg{display:block;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}@media(max-width:1150px){.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.settings-grid{grid-template-columns:1fr}}

/* Configuración compacta: más opciones visibles en una sola pantalla. */
.settings-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:5px 0 14px}.settings-card{border-radius:12px}.settings-card-link{min-height:148px;padding:15px 16px}.settings-card-icon{width:34px;height:34px;margin-bottom:10px;border-radius:10px}.settings-card-icon svg{width:17px;height:17px}.settings-card h2{font-size:12px;margin-bottom:5px}.settings-card p{font-size:10px;line-height:1.4;margin-bottom:10px}.settings-card-action{font-size:9px}.settings-card-action>span{font-size:14px}.settings-card-secondary{padding:8px 16px;font-size:9px}.settings-card-secondary svg{width:12px;height:12px}@media(max-width:1150px){.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.settings-grid{grid-template-columns:1fr;gap:9px}.settings-card-link{min-height:130px;padding:14px}}

/* Cierres de inventario */
.inventory-closure-heading{margin-bottom:16px}.inventory-closure-heading p{margin:5px 0 0;color:#81948f;font-size:11px}.closure-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);gap:14px}.closure-editor,.closure-history{min-width:0;padding:16px;border:1px solid #e4eeeb;border-radius:13px;background:#fff}.closure-editor .panel-heading,.closure-history .panel-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}.closure-editor h2,.closure-history h2{margin:0;font-size:14px}.closure-editor .panel-heading p,.closure-history .panel-heading p{margin:4px 0 0;color:#8a9c96;font-size:10px}.closure-toolbar{display:flex;align-items:end;gap:12px;margin-bottom:12px}.closure-toolbar label{display:grid;gap:5px;min-width:230px;color:#78918a;font-size:10px}.closure-toolbar input{min-height:33px;padding:7px 9px;border:1px solid #e0ebe7;border-radius:7px;font-size:11px}.closure-hint{padding-bottom:8px;color:#9aaba5;font-size:10px}.closure-table-scroll{max-height:calc(100dvh - 385px);overflow:auto}.closure-table{min-width:560px}.closure-table th,.closure-table td{padding:9px 10px}.closure-table td small{display:block;margin-top:3px;color:#91a29c;font-size:9px}.closure-count{width:100px;padding:7px 8px;border:1px solid #dce9e4;border-radius:6px;text-align:right}.closure-difference{font-weight:650;color:#5b8f80}.closure-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:13px}.closure-history{min-height:250px}.closure-history .category-table{min-width:500px}.closure-history td,.closure-history th{padding:10px}.closure-history .empty-state{padding:25px 8px}@media(max-width:980px){.closure-layout{grid-template-columns:1fr}.closure-table-scroll{max-height:none}}@media(max-width:600px){.closure-toolbar{align-items:stretch;flex-direction:column;gap:7px}.closure-toolbar label{min-width:0}.closure-actions{justify-content:stretch}.closure-actions .button{flex:1}}

/* Usuarios, turnos y caja */
.user-heading{margin-bottom:16px}.user-heading p{margin:5px 0 0;color:#81948f;font-size:11px}.user-table-panel{min-height:300px}.user-table-panel td small{display:block;margin-top:3px;color:#91a29c;font-size:9px}.user-role{display:inline-flex;padding:5px 9px;border-radius:7px;background:#eef4fb;color:#6583a4;font-size:10px}.user-form{padding:18px;max-width:900px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.form-grid label,.shift-card label{display:grid;gap:5px;color:#78918a;font-size:10px}.form-grid input,.form-grid select,.shift-card input{min-height:35px;padding:8px 10px;border:1px solid #dfeae6;border-radius:7px;background:#fff;font-size:11px}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.user-shortcuts{display:grid;grid-template-columns:minmax(220px,330px);margin-top:14px}.user-shortcuts .settings-card{display:grid;gap:7px;padding:15px;border:1px solid #e2ebf0;border-radius:12px;background:#fbfdff;color:#54718c}.user-shortcuts small{color:#879ba8;font-size:10px}.user-shortcuts span{font-size:10px;font-weight:600}.shift-card{padding:18px;margin-bottom:14px}.shift-card h2{margin:7px 0 4px;font-size:16px}.shift-card p{margin:0 0 14px;color:#83958f;font-size:11px}.shift-card form{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.shift-card form label{min-width:210px}.shift-card form .button{min-height:35px}.shift-open{display:flex;align-items:center;justify-content:space-between;gap:18px;border-color:#b9ded1;background:#f8fdfb}.shift-open form{justify-content:flex-end}.shift-history{padding:0;overflow:hidden}.shift-history .panel-heading{padding:16px 18px;border-bottom:1px solid #edf2f0}.shift-history h2{margin:0;font-size:14px}@media(max-width:700px){.form-grid{grid-template-columns:1fr}.shift-open{display:block}.shift-open form{justify-content:flex-start;margin-top:14px}.user-heading{align-items:flex-start;gap:10px;flex-direction:column}}

/* Cierre profesional y gastos */
.cash-summary{margin:14px 0;padding:17px;border:1px solid #e2ece8;border-radius:14px;background:linear-gradient(145deg,#fbfefd,#f5faf8)}.cash-summary-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:13px}.cash-summary-heading h2{margin:3px 0 0;font-size:16px}.cash-summary-heading small{color:#91a39d;font-size:10px}.cash-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.cash-summary-grid article{display:grid;gap:4px;padding:11px 12px;border:1px solid #e2eee9;border-radius:10px;background:#fff}.cash-summary-grid small{color:#78928a;font-size:9px}.cash-summary-grid strong{color:#315e55;font-size:16px}.cash-summary-grid span{color:#9aa9a4;font-size:8px;line-height:1.35}.cash-methods{margin-top:14px;padding-top:12px;border-top:1px solid #e4eeea}.cash-methods h3{margin:0 0 8px;color:#6f8880;font-size:10px;font-weight:650}.cash-methods>div{display:flex;flex-wrap:wrap;gap:7px}.cash-methods span{display:flex;align-items:center;gap:9px;padding:7px 10px;border:1px solid #e1ece8;border-radius:8px;background:#fff;font-size:9px;color:#6d8880}.cash-methods span strong{color:#315e55}.cash-methods em{color:#9aa9a4;font-size:9px}.expense-heading p{margin:5px 0 0;color:#81948f;font-size:11px}.expense-form{display:flex;align-items:flex-start;align-content:flex-start;gap:10px;flex-wrap:wrap;padding:16px;margin-bottom:14px;flex:0 0 auto!important;height:max-content}.main-content>.expense-form{flex:0 0 auto!important;align-self:stretch}.expense-form .form-grid{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));flex:1}.expense-form .button{min-height:35px;margin-top:21px}.expense-table{display:flex;flex-direction:column;padding:0;overflow:hidden;min-height:0;flex:1 1 auto!important;border-radius:8px;box-shadow:none}.expense-table .category-table-scroll{display:block;min-height:0;flex:1;overflow:auto}.expense-table .category-table-footer{margin-top:auto}.expense-table .panel-heading{padding:15px 18px;border-bottom:1px solid #edf2f0}.expense-table h2{margin:0;font-size:14px}.expense-table .table-caption{margin:4px 0 0;color:#9aa9a3;font-size:10px}.expense-table .category-number{min-width:110px}.expense-table .table-sort-hint{color:#bac7bf;font-size:11px;margin-left:4px}.expense-table .category-table-footer{padding:14px 17px}.expense-filters{display:flex;align-items:flex-end;gap:9px;flex-wrap:wrap;margin:0 0 14px}.expense-filters label{display:grid;gap:5px;color:#7f958d;font-size:9px}.expense-filters input,.expense-filters select{min-height:35px;padding:8px 9px;border:1px solid #e0ebe7;border-radius:6px;background:#fff;font-size:10px}.expense-filters label:nth-child(3){min-width:190px}.expense-filters .category-search-submit{min-height:35px}.expense-filters .category-reset{margin-bottom:8px}@media(max-width:600px){.expense-filters label{flex:1;min-width:130px}.expense-filters label:nth-child(3){min-width:180px}.expense-filters .category-search-submit{width:auto}}@media(max-width:900px){.cash-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.expense-form .form-grid{grid-template-columns:repeat(2,minmax(130px,1fr))}}@media(max-width:600px){.cash-summary-heading{align-items:flex-start;flex-direction:column}.cash-summary-grid{grid-template-columns:1fr}.expense-form .form-grid{grid-template-columns:1fr}.expense-form .button{width:100%}}
.expense-category-form{display:flex;align-items:end;gap:10px;padding:16px;margin-bottom:14px}.expense-category-form label{display:grid;gap:5px;min-width:280px;color:#78918a;font-size:10px}.expense-category-form input{min-height:35px;padding:8px 10px;border:1px solid #dfeae6;border-radius:7px;font-size:11px}@media(max-width:600px){.expense-category-form{align-items:stretch;flex-direction:column}.expense-category-form label{min-width:0}.expense-category-form .button{width:100%}}

/* Report cards: wider layout so every card shows its complete text. */
.report-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.report-card{min-width:0;min-height:86px}.report-card small{white-space:normal;overflow:visible;text-overflow:clip}@media(max-width:760px){.report-cards{grid-template-columns:1fr;display:grid;overflow:visible}.report-card{min-height:74px}}

/* Report cards: larger presentation */
.report-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.report-card{min-height:124px;padding:23px 24px;gap:16px;border-radius:15px}.report-card-icon{flex-basis:50px;width:50px;height:50px;border-radius:14px}.report-card-icon svg{width:25px;height:25px}.report-card strong{font-size:15px}.report-card small{font-size:11px;line-height:1.5}.report-card-arrow{font-size:22px}@media(max-width:760px){.report-cards{grid-template-columns:1fr;gap:12px}.report-card{min-height:96px;padding:18px}.report-card strong{font-size:13px}.report-card small{font-size:10px}}

/* Reportes en dos secciones verticales */
.report-cards{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:column;grid-template-rows:repeat(6,minmax(0,auto));align-items:stretch}@media(max-width:760px){.report-cards{grid-auto-flow:row;grid-template-rows:none}}

/* Reportes: cuatro tarjetas por fila en escritorio */
.report-cards{grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:none!important;grid-auto-flow:row!important;gap:14px!important}
@media(max-width:1000px){.report-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){.report-cards{grid-template-columns:1fr!important;display:grid!important}}

/* Los accesos de reportes se presentan en tres columnas */
.report-cards{grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media(max-width:900px){.report-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){.report-cards{grid-template-columns:1fr!important}}

.report-group{margin:0 0 18px}.report-group-heading{display:flex;align-items:center;margin:0 0 8px}.report-group-heading h2{margin:0;color:#587b72;font-size:12px;font-weight:650;letter-spacing:.02em}.report-group-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.report-group-cards .report-card{min-width:0}
@media(max-width:900px){.report-group-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.report-group-cards{grid-template-columns:1fr}}

/* Corrección final: las opciones de cada categoría quedan realmente en línea de 3 */
.report-cards .report-group-cards{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-flow:row!important;align-items:stretch;width:100%}
@media(max-width:900px){.report-cards .report-group-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){.report-cards .report-group-cards{grid-template-columns:1fr!important}}

/* El contenedor general agrupa secciones; solo las cards internas forman la cuadrícula */
.report-cards{display:block!important;width:100%!important}
.report-group{display:block!important;width:100%!important}
.report-group-cards .report-card{width:100%;min-width:0;overflow:hidden}
.report-group-cards .report-card span:nth-child(2){min-width:0;overflow:hidden}
.report-group-cards .report-card strong,.report-group-cards .report-card small{overflow-wrap:anywhere}

/* Cards de reportes compactas */
.report-group-cards{gap:10px!important}
.report-group-cards .report-card{min-height:72px!important;padding:10px 12px!important;gap:9px!important;border-radius:10px!important}
.report-group-cards .report-card-icon{flex-basis:30px!important;width:30px!important;height:30px!important;border-radius:9px!important}
.report-group-cards .report-card-icon svg{width:16px!important;height:16px!important}
.report-group-cards .report-card strong{font-size:11px!important;line-height:1.2!important}
.report-group-cards .report-card small{font-size:8px!important;line-height:1.25!important}
.report-group-cards .report-card-arrow{font-size:14px!important}
/* Turnos: composición tipo panel de ventas */
.shift-open{min-height:118px;padding:24px}
.cash-summary-body{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(300px,.85fr);gap:20px;align-items:stretch}
.cash-summary-body .cash-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;height:100%}
.cash-summary-body .cash-summary-grid article{min-height:112px;padding:16px}
.cash-summary-body .cash-methods{margin:0;border:1px solid #e2eee9;border-radius:12px;background:#fff;padding:20px;justify-content:flex-start}
.cash-summary-body .cash-methods h3{font-size:12px;margin-bottom:14px}
.cash-summary-body .cash-methods>div{display:grid;gap:9px}
.cash-summary-body .cash-methods span{justify-content:space-between;padding:12px 13px;font-size:10px}
@media(max-width:900px){.cash-summary-body{grid-template-columns:1fr}.cash-summary-body .cash-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cash-summary-body .cash-methods{padding:14px 0 0;border:0;border-top:1px solid #e4eeea}.shift-open{min-height:0}}
@media(max-width:600px){.cash-summary-body .cash-summary-grid{grid-template-columns:1fr}}
/* Tarjeta de turno abierto: lectura amplia */
.shift-open{min-height:180px!important;padding:28px 32px!important;align-items:center!important;gap:32px!important}
.shift-open>div{flex:1;min-width:0}
.shift-open h2{font-size:24px!important;margin:12px 0 7px!important}
.shift-open p{font-size:14px!important;line-height:1.5!important;margin:0!important}
.shift-open form{display:flex;align-items:flex-end;gap:16px;flex:0 0 auto}
.shift-open form label{min-width:290px!important;font-size:12px!important;gap:7px!important}
.shift-open form input{min-height:48px!important;font-size:15px!important;padding:10px 13px!important}
.shift-open form .button{min-height:48px!important;padding:0 24px!important;font-size:14px!important;white-space:nowrap}
@media(max-width:900px){.shift-open{min-height:0!important;padding:22px!important;display:block!important}.shift-open form{margin-top:20px;flex-wrap:wrap}.shift-open form label{flex:1;min-width:220px!important}}
@media(max-width:600px){.shift-open form label{min-width:100%!important}.shift-open form .button{width:100%}}

/* Turno abierto: desglose visible por medio de pago y control de diferencias */
.shift-open{align-items:flex-start!important}
.shift-open-main{flex:1 1 auto!important;min-width:0}
.shift-open-side{flex:0 0 min(460px,42%);display:grid;gap:8px;align-content:start}
.shift-open-side form{display:flex;align-items:flex-end;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.shift-open-side form label{min-width:190px!important}
.shift-payment-breakdown{display:grid;grid-template-columns:repeat(4,minmax(100px,1fr));gap:8px;margin-top:14px}
.shift-payment-breakdown>div{display:grid;gap:3px;padding:9px 11px;border:1px solid #dfebe7;border-radius:9px;background:#fff}
.shift-payment-breakdown small,.shift-balance-hint{color:#81948f;font-size:10px}
.shift-payment-breakdown strong{color:#155f68;font-size:14px}
.shift-payment-total{border-color:#b8ddd3!important;background:#f1faf7!important}
.shift-balance-hint{line-height:1.4}
@media(max-width:1050px){.shift-open{display:grid!important;grid-template-columns:1fr;gap:14px}.shift-open-side{width:100%;max-width:none}.shift-payment-breakdown{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:600px){.shift-payment-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))}.shift-open-side form{justify-content:flex-start}}

/* Turnos: resumen a la izquierda y apertura/cierre en columna derecha */
.turnos-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,410px);gap:16px;align-items:start}
.turnos-layout>.shift-card{grid-column:2;grid-row:1}
.turnos-layout>.cash-summary,.turnos-layout>.shift-movements,.turnos-layout>.shift-history{grid-column:1}
.turnos-layout>.cash-summary{grid-row:1}
.turnos-layout>.shift-movements{grid-row:2}
.turnos-layout>.shift-history{grid-row:3}
.turnos-layout .shift-open{display:block!important;min-height:0!important;padding:18px!important}
.turnos-layout .shift-open-main,.turnos-layout .shift-open-side{width:100%;max-width:none}
.turnos-layout .shift-open-side{margin-top:16px}
.turnos-layout .shift-payment-breakdown{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:13px}
.turnos-layout .shift-payment-breakdown strong{font-size:13px}
.turnos-layout .cash-summary-body{display:block}
.turnos-layout .cash-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
.turnos-layout .cash-summary-grid article{min-width:0}
@media(max-width:1050px){.turnos-layout{grid-template-columns:1fr}.turnos-layout>.shift-card,.turnos-layout>.cash-summary,.turnos-layout>.shift-movements,.turnos-layout>.shift-history{grid-column:1;grid-row:auto}}

.turnos-tabs{display:flex;gap:6px;margin:0 0 14px;padding:4px;border:1px solid #dfebe7;border-radius:11px;background:#f5faf8;width:max-content;max-width:100%;overflow:auto}
.turnos-tabs button{border:0;border-radius:8px;padding:9px 14px;background:transparent;color:#78928a;font:inherit;font-size:11px;white-space:nowrap;cursor:pointer}
.turnos-tabs button.is-active{background:#fff;color:#157f83;box-shadow:0 1px 4px #dbe8e4;font-weight:650}
.turnos-layout.is-tab-detail>[data-turnos-panel="summary"],.turnos-layout.is-tab-detail>[data-turnos-panel="history"],.turnos-layout.is-tab-history>[data-turnos-panel="summary"],.turnos-layout.is-tab-history>[data-turnos-panel="detail"]{display:none!important}
.turnos-layout.is-tab-detail>[data-turnos-panel="detail"],.turnos-layout.is-tab-history>[data-turnos-panel="history"]{grid-column:1 / -1!important;grid-row:1!important}
@media(max-width:600px){.turnos-tabs{width:100%}.turnos-tabs button{flex:1;padding:8px 9px;font-size:10px}}
/* Turnos compacto con scroll cuando el contenido supera la pantalla */
.shift-open{min-height:112px!important;padding:18px 22px!important;gap:20px!important}
.shift-open h2{font-size:19px!important;margin:7px 0 4px!important}
.shift-open p{font-size:11px!important;line-height:1.35!important}
.shift-open form{gap:10px}
.shift-open form label{min-width:210px!important;font-size:10px!important;gap:5px!important}
.shift-open form input{min-height:38px!important;font-size:12px!important;padding:8px 10px!important}
.shift-open form .button{min-height:38px!important;padding:0 16px!important;font-size:11px!important}
.cash-summary{padding:14px!important;margin:12px 0!important;max-height:calc(100dvh - 260px);overflow:auto}
.cash-summary-heading{margin-bottom:10px!important}
.cash-summary-heading h2{font-size:14px!important}
.cash-summary-heading small{font-size:9px!important}
.cash-summary-body{gap:12px!important}
.cash-summary-body .cash-summary-grid{gap:8px!important}
.cash-summary-body .cash-summary-grid article{min-height:82px;padding:11px!important}
.cash-summary-grid small{font-size:8px!important}
.cash-summary-grid strong{font-size:14px!important}
.cash-summary-grid span{font-size:7px!important}
.cash-summary-body .cash-methods{padding:14px!important}
.cash-summary-body .cash-methods h3{font-size:10px!important;margin-bottom:9px!important}
.cash-summary-body .cash-methods span{padding:8px 10px!important;font-size:9px!important}
@media(max-width:900px){.cash-summary{max-height:calc(100dvh - 220px)}.shift-open{padding:16px!important}.shift-open form{margin-top:12px}}
.shift-movements{padding:0;margin:12px 0;overflow:hidden}.shift-movements .panel-heading{padding:15px 18px;border-bottom:1px solid #edf2f0}.shift-movements .panel-heading h2{margin:0;font-size:14px}.shift-movements .panel-heading p{margin:4px 0 0;color:#8a9c96;font-size:10px}.shift-movements .category-table-scroll{max-height:330px;overflow:auto}.movement-direction{font-size:10px;font-weight:650}.movement-direction.in{color:#398f76}.movement-direction.out{color:#b56e65}

.shift-admin-actions{position:relative;display:inline-block}.shift-admin-actions summary{cursor:pointer;color:var(--teal);font-size:10px;list-style:none}.shift-admin-actions summary::-webkit-details-marker{display:none}.shift-admin-actions form{display:grid;gap:7px;min-width:220px;padding:12px;position:absolute;right:0;top:24px;z-index:5;border:1px solid #dcebe5;border-radius:10px;background:#fff;box-shadow:0 12px 28px #244b3b1c}.shift-admin-actions label{display:grid;gap:3px;color:#78918a;font-size:9px}.shift-admin-actions input{min-height:30px;padding:6px 8px;border:1px solid #dfeae6;border-radius:6px;font-size:10px}.shift-admin-actions .button{min-height:29px;font-size:10px}.text-danger-button{border:0;background:none;color:#bd766d;font-size:10px;cursor:pointer;padding:3px;text-align:left}

.turnos-layout:not(.is-tab-detail):not(.is-tab-history)>[data-turnos-panel=detail],.turnos-layout:not(.is-tab-detail):not(.is-tab-history)>[data-turnos-panel=history]{display:none!important}

.shift-admin-actions[open]{display:block;min-width:230px}.shift-admin-actions[open] form{position:static;margin-top:8px}.shift-admin-actions[open] summary{margin-bottom:6px}.shift-history .category-table td:last-child{min-width:250px}

.shift-admin-actions[open]{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(420px,calc(100vw - 32px));padding:16px;border:1px solid #dcebe5;border-radius:14px;background:#fff;box-shadow:0 18px 60px #244b3b35;z-index:1000}.shift-admin-actions[open]::before{content:'';position:fixed;inset:-100vh;z-index:-1;background:#183c3028}.shift-admin-actions[open] form{min-width:0}.shift-admin-actions[open] summary{font-size:12px;font-weight:650;margin-bottom:10px}

.sidebar-section{margin:0 0 8px}.sidebar-section summary{display:flex;align-items:center;justify-content:space-between;padding:7px 12px;color:#88a098;font-size:9px;font-weight:700;letter-spacing:.14em;cursor:pointer;list-style:none}.sidebar-section summary::-webkit-details-marker{display:none}.sidebar-section summary span{font-size:13px;letter-spacing:0;transition:transform .18s}.sidebar-section:not([open]) summary span{transform:rotate(-90deg)}.sidebar-section nav{display:grid;gap:2px}.sidebar-section:not([open]) nav{display:none}.sidebar-section .nav-item{margin:0}

.sidebar-search{display:flex;align-items:center;gap:8px;margin:12px 10px 14px;padding:8px 10px;border:1px solid #dcebe6;border-radius:9px;background:#f8fcfa;color:#92aaa1}.sidebar-search svg{width:15px;height:15px;flex:none}.sidebar-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#46645b;font-size:10px}.sidebar-search input::placeholder{color:#9db0a9}.sidebar-section summary{color:#6f8f85;padding:8px 12px}.sidebar-section .nav-item{border-radius:8px;padding:9px 12px;color:#668078;font-size:11px}.sidebar-section .nav-item:hover{background:#edf8f3;color:#258e83}.sidebar-section .nav-item.active{background:#e3f5ee;color:#218d82;box-shadow:inset 3px 0 0 #3cae9e}.sidebar-section .nav-item svg{width:16px;height:16px}.sidebar-section .nav-dot{margin-left:auto}

.sidebar-section summary{color:#e5fbf7;font-weight:750;text-shadow:0 1px 1px #267f7d55}.sidebar-section summary span{color:#d5f3ed}.sidebar-section .nav-item{color:#effbf8;text-shadow:0 1px 1px #267f7d40}.sidebar-section .nav-item svg{color:#d4f3ed}.sidebar-section .nav-item:hover{background:#ffffff2b;color:#fff}.sidebar-section .nav-item.active{background:#e8faf4;color:#177e78;text-shadow:none;box-shadow:inset 3px 0 0 #b8eee0}.sidebar-search{background:#fff;border-color:#fff}.sidebar-search input{color:#46645b}.sidebar-section:not([open]) summary{color:#e5fbf7}

.sidebar{background:linear-gradient(180deg,#42aaa9 0%,#319b9d 100%);box-shadow:10px 0 30px #176c6d24}.sidebar .brand{letter-spacing:-.04em;text-shadow:0 2px 8px #146b6d30}.store-switch{margin:14px 10px 16px;padding:11px;border:1px solid #ffffff38;border-radius:14px;background:#ffffff16;box-shadow:inset 0 1px #ffffff25}.sidebar-search{height:42px;margin:0 10px 18px;border-radius:13px;box-shadow:0 8px 20px #176c6d18}.sidebar-section{margin:0 6px 9px;padding:3px 4px;border-radius:13px}.sidebar-section[open]{background:#ffffff0d}.sidebar-section summary{padding:9px 11px;font-size:9px;letter-spacing:.16em}.sidebar-section nav{gap:3px;padding:2px 0 5px}.sidebar-section .nav-item{min-height:38px;padding:9px 12px;border-radius:10px;gap:11px;transition:background .18s,transform .18s,color .18s}.sidebar-section .nav-item:hover{transform:translateX(2px);background:#ffffff20}.sidebar-section .nav-item.active{transform:none;background:#e7faf5;color:#167c78;box-shadow:0 5px 14px #176c6d1f,inset 3px 0 #b8eee0}.sidebar-section .nav-item svg{opacity:.88}.sidebar-section .nav-item.active svg{color:#269b91}.sidebar-section summary span{opacity:.8}.sidebar-bottom{padding:10px 10px 14px}.business-mode{border-radius:10px;background:#ffffff12;padding:8px 10px}.user-card{border:1px solid #ffffff2c;border-radius:13px;background:#ffffff12;padding:9px 10px}

.sidebar-section .nav-item::after{content:'';width:5px;height:5px;border-radius:50%;background:#b8eee0;opacity:0;transform:scale(.4);transition:opacity .18s,transform .18s;margin-left:auto}.sidebar-section .nav-item:hover::after{opacity:.8;transform:scale(1)}.sidebar-section .nav-item.active::after{opacity:1;transform:scale(1);background:#39a6a4}.sidebar-section .nav-item svg{transition:transform .18s}.sidebar-section .nav-item:hover svg{transform:scale(1.12) translateY(-1px)}.floating-menu-toggle{width:34px;height:34px;left:12px;bottom:14px;border-radius:10px}.floating-menu-toggle svg{width:16px;height:16px}.menu-closed .floating-menu-toggle{left:12px}

.sispos-brand{gap:7px;letter-spacing:-.06em}.sispos-brand .brand-icon{width:31px;height:31px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(145deg,#e5faf3,#a9e3d4);color:#208f85;box-shadow:0 5px 14px #176c6d28,inset 0 1px #fff9}.sispos-mark svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.sispos-brand .brand-light{font-weight:400;color:#e8fffa}.sispos-brand:hover .sispos-mark{transform:rotate(-5deg) scale(1.05)}.sispos-mark{transition:transform .2s}

.sispos-brand{padding:0 8px}.sispos-logo{display:block;width:194px;height:auto;object-fit:contain;object-position:left center}.sispos-brand:hover{filter:brightness(1.06)}

.sispos-brand{min-height:42px;padding:0 10px;justify-content:flex-start}.sispos-logo{width:148px;height:42px;object-fit:contain;object-position:left center}

.sispos-brand{align-items:center;padding-top:0;margin-top:-5px;gap:9px}.sispos-logo{width:166px;height:46px}.brand-user-name{max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#eafff9;font-size:10px;font-weight:600;letter-spacing:0;text-shadow:0 1px 2px #176c6d55}
.sispos-logo{width:154px}.brand-user-name{max-width:48px}
.sispos-brand{width:100%;min-width:0}.sispos-logo{width:140px;flex:0 1 140px}.brand-user-name{flex:1;min-width:0;max-width:none;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;line-height:1.15}

/* Marca y usuario: el nombre queda en una línea propia para que nunca se apile
   carácter por carácter junto al logotipo. */
.sispos-brand{display:flex;flex-wrap:wrap;align-items:center;gap:3px 8px;padding:0 8px;}
.sispos-brand .sispos-logo{width:150px;height:40px;flex:0 0 150px;object-fit:contain;object-position:left center;}
.sispos-brand .brand-user-name{display:block;flex:1 0 100%;width:100%;max-width:100%;min-width:0;padding:5px 9px;border:1px solid #ffffff30;border-radius:8px;background:#ffffff12;color:#f0fffc;font-size:11px;font-weight:650;line-height:1.2;white-space:normal;overflow:visible;overflow-wrap:anywhere;text-shadow:0 1px 2px #176c6d55;}

/* Accesos rápidos del header */
.header-quick-actions{display:flex;align-items:center;gap:5px;margin-right:10px}
.header-quick-actions a{display:grid;place-items:center;width:31px;height:31px;border:1px solid #dcebe6;border-radius:9px;background:#fff;color:#72938b;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}
.header-quick-actions a:hover{background:#e8f7f2;border-color:#b9e2d8;color:#208f85;transform:translateY(-1px);box-shadow:0 5px 12px #176c6d18}
.header-quick-actions a:focus-visible{outline:2px solid #58b9aa;outline-offset:2px}
.header-quick-actions svg{width:15px;height:15px}
@media(max-width:900px){.header-quick-actions{gap:3px;margin-right:5px}.header-quick-actions a{width:28px;height:28px;border-radius:8px}.header-quick-actions svg{width:14px;height:14px}}
@media(max-width:700px){.header-quick-actions{display:none}}

/* Permisos: selector de usuario y módulos agrupados */
.permissions-layout-modern{display:grid;grid-template-columns:260px minmax(0,1fr);gap:16px;align-items:start}
.permissions-layout-modern .data-panel{padding:20px}
.permissions-section-title{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid #edf3f0}
.permissions-section-title h2{margin:3px 0 0;font-size:18px;color:#163c3b}.permissions-count{display:grid;place-items:center;min-width:27px;height:27px;border-radius:9px;background:#e5f6f1;color:#218f85;font-size:11px;font-weight:700}
.permissions-help{margin:13px 0 16px;color:#8ba09a;font-size:11px;line-height:1.45}.permissions-user-list{display:grid;gap:6px}
.permission-user{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid transparent;border-radius:10px;color:#3d625b;text-decoration:none;transition:background .18s,border-color .18s,transform .18s}.permission-user:hover{background:#f0faf6;border-color:#d5ebe4;transform:translateX(2px)}.permission-user.selected{background:#e5f7f1;border-color:#b9e3d7;box-shadow:inset 3px 0 #37a99b}.permission-user .avatar{width:32px;height:32px;flex:none;font-size:12px}.permission-user-info{display:grid;min-width:0;flex:1}.permission-user-info strong{font-size:12px;color:#193f3b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.permission-user-info small{margin-top:3px;color:#8da29c;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.permission-user-access{display:grid;place-items:center;min-width:22px;height:22px;border-radius:7px;background:#f3f8f6;color:#70918a;font-size:9px;font-weight:700}.permission-user.selected .permission-user-access{background:#cceee4;color:#1c887f}
.permissions-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px;padding-bottom:17px;border-bottom:1px solid #edf3f0}.permissions-panel-header h2{margin:4px 0 3px;font-size:22px;color:#163c3b}.permissions-panel-header p{margin:0;color:#8ba09a;font-size:11px}.permissions-status{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid #d8ece5;border-radius:8px;color:#639087;font-size:10px;white-space:nowrap}.permissions-status .status-dot{width:6px;height:6px}
.permission-groups{display:grid;gap:18px}.permission-group{padding:15px;border:1px solid #e4efeb;border-radius:13px;background:#fbfefd}.permission-group-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.permission-group-heading h3{margin:0;color:#275b54;font-size:13px}.permission-group-heading p{margin:4px 0 0;color:#91a59f;font-size:10px}.permission-group-heading>span{color:#7d9a92;font-size:10px;font-weight:700;white-space:nowrap}.permissions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.permission-card{position:relative;display:flex;align-items:center;gap:9px;min-height:54px;padding:9px 10px;border:1px solid #e2eeea;border-radius:10px;background:#fff;cursor:pointer;transition:border-color .18s,background .18s,box-shadow .18s}.permission-card:hover{border-color:#abdcd0;background:#f8fdfb}.permission-card:has(input:checked){border-color:#9bd6c9;background:#effaf6;box-shadow:0 3px 10px #277f6d12}.permission-card input{position:absolute;left:10px;top:50%;width:1px;height:1px;margin:-1px;opacity:0;pointer-events:none;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.permission-card-icon{display:grid;place-items:center;width:29px;height:29px;flex:none;border-radius:8px;background:#e5f6f1;color:#2b9e91}.permission-card-icon svg{width:15px;height:15px}.permission-card-copy{display:grid;gap:2px;min-width:0;flex:1}.permission-card-copy strong{color:#315a54;font-size:11px;font-weight:650}.permission-card-copy small{color:#9aaea8;font-size:9px}.permission-check{display:grid;place-items:center;width:18px;height:18px;border:1px solid #d7e7e2;border-radius:5px;color:transparent;font-size:11px;font-weight:800}.permission-card:has(input:checked) .permission-check{border-color:#48aa9b;background:#48aa9b;color:#fff}.permissions-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px;padding-top:15px;border-top:1px solid #edf3f0}.permissions-actions small{color:#94a8a2;font-size:9px}.permissions-actions .button{min-width:145px}.permissions-empty{display:grid;place-items:center;gap:7px;min-height:220px;color:#77938b;text-align:center}.permissions-empty .avatar{width:40px;height:40px}.permissions-empty strong{color:#315a54;font-size:13px}.permissions-empty small{font-size:10px}
@media(max-width:600px){.permissions-layout-modern{grid-template-columns:1fr}.permissions-users{order:0}.permissions-panel{order:1}.permissions-user-list{grid-template-columns:repeat(2,minmax(0,1fr))}.permissions-status{display:none}}
@media(max-width:560px){.permissions-user-list,.permissions-grid{grid-template-columns:1fr}.permissions-panel-header{margin-bottom:16px}.permissions-panel-header h2{font-size:19px}.permission-group{padding:12px}.permissions-actions{align-items:stretch;flex-direction:column}.permissions-actions .button{width:100%}}

.permission-card-disabled{opacity:.52;cursor:not-allowed;background:#f5f8f7}.permission-card-disabled .permission-card-icon{background:#edf1ef;color:#91a29d}.permission-card-disabled:hover{border-color:#e2eeea;background:#f5f8f7;transform:none}

.restaurant-layout{display:grid;grid-template-columns:minmax(290px,360px) minmax(0,1fr);gap:18px;align-items:start}.restaurant-form-card{padding:18px}.restaurant-form{display:grid;gap:12px;margin-top:14px}.restaurant-form label,.restaurant-order-form label{display:grid;gap:5px;color:#78918a;font-size:10px}.restaurant-form input,.restaurant-order-form input,.restaurant-order-form select,.restaurant-order-form textarea,.restaurant-order-actions select{width:100%;min-height:36px;padding:8px 10px;border:1px solid #dfeae6;border-radius:8px;background:#fff;color:#31564e;font:inherit;resize:vertical}.restaurant-form .button{justify-self:start}.restaurant-orders-layout{grid-template-columns:minmax(290px,360px) minmax(0,1fr)}.restaurant-order-form{display:grid;gap:12px;margin-top:14px}.restaurant-order-inline{display:grid;grid-template-columns:100px minmax(0,1fr);gap:9px}.restaurant-order-list{display:grid;gap:10px;min-width:0}.restaurant-order-list>.panel-heading{padding:2px 3px}.restaurant-order-card{padding:15px}.restaurant-order-card-head{display:flex;align-items:start;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid #edf2f0}.restaurant-order-card-head strong{display:block;color:#173d3a;font-size:15px}.restaurant-order-card-head small{display:block;margin-top:4px;color:#91a39d;font-size:10px}.restaurant-order-card ul{display:grid;gap:7px;margin:12px 0;padding:0;list-style:none;color:#42625b;font-size:12px}.restaurant-order-card li small{display:block;margin:3px 0 0 24px;color:#8aa099;font-size:10px}.restaurant-order-actions form{display:flex;justify-content:flex-end;gap:8px;align-items:center}.restaurant-order-actions select{width:auto;min-width:145px}.button-muted{background:#edf7f3;color:#258c83;box-shadow:none}.category-state.is-inactive{background:#fff3e9;color:#b27745}@media(max-width:850px){.restaurant-layout,.restaurant-orders-layout{grid-template-columns:1fr}.restaurant-form-card{padding:15px}.restaurant-order-actions form{justify-content:flex-start;flex-wrap:wrap}}
.restaurant-add-line{display:grid;grid-template-columns:minmax(145px,1.2fr) 70px minmax(120px,1fr) 32px auto;gap:6px;align-items:center;margin:0 0 12px;padding-top:11px;border-top:1px dashed #e3eeea}.restaurant-add-line select,.restaurant-add-line input{min-width:0;min-height:32px;padding:6px 8px;border:1px solid #dfeae6;border-radius:7px;background:#fff;color:#31564e;font:inherit;font-size:10px}.restaurant-add-line .category-edit{white-space:nowrap}.comanda-add-line-modifiers{width:32px;height:32px;padding:7px;color:#2b9085;background:#eef8f5;border-color:#d2e9e2}.comanda-add-line-modifiers svg{width:15px;height:15px}@media(max-width:700px){.restaurant-add-line{grid-template-columns:1fr 70px}.restaurant-add-line input[name="note"]{grid-column:1/-1}.restaurant-add-line .category-edit{grid-column:1/-1;justify-self:start}}
.kitchen-heading{align-items:center}.kitchen-heading p{margin:5px 0 0;color:#849a93;font-size:11px}.kitchen-heading-actions{display:flex;align-items:center;gap:14px}.kitchen-board{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:12px;align-items:start;overflow-x:auto;padding-bottom:12px}.kitchen-column{min-height:430px;border:1px solid #e0ece8;border-radius:14px;background:#f7fbf9;overflow:hidden}.kitchen-column>header{display:flex;align-items:center;justify-content:space-between;padding:13px 14px;border-bottom:1px solid #e2eee9;background:#fff}.kitchen-column>header>div{display:flex;align-items:center;gap:7px}.kitchen-column h2{margin:0;color:#315b54;font-size:12px}.kitchen-column>header strong{display:grid;place-items:center;min-width:23px;height:23px;border-radius:8px;background:#e8f4f0;color:#5f8a80;font-size:10px}.kitchen-status-dot{width:7px;height:7px;border-radius:50%;background:#65b59e}.kitchen-column-en-preparación .kitchen-status-dot{background:#e0ad59}.kitchen-column-lista .kitchen-status-dot{background:#5b9ed0}.kitchen-column-entregada .kitchen-status-dot{background:#9a83ca}.kitchen-column-body{display:grid;gap:10px;padding:10px}.kitchen-empty{padding:24px 8px;color:#9aada7;font-size:10px;text-align:center}.kitchen-ticket{padding:12px;border:1px solid #e1ece8;border-radius:11px;background:#fff;box-shadow:0 5px 14px #2d6e5b0b}.kitchen-ticket-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.kitchen-ticket-head strong{color:#173f3b;font-size:14px}.kitchen-ticket-head time{color:#8ba19a;font-size:10px}.kitchen-ticket>small{display:block;margin-top:4px;color:#91a49e;font-size:9px}.kitchen-ticket ul{display:grid;gap:6px;margin:12px 0;padding:0;list-style:none;color:#48665f;font-size:11px}.kitchen-ticket li em{display:block;margin:2px 0 0 20px;color:#9aaca6;font-size:9px;font-style:normal}.kitchen-next{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:32px;padding:7px 9px;border:0;border-radius:7px;background:#e5f6f0;color:#238c80;font-size:10px;font-weight:700;cursor:pointer}.kitchen-next:hover{background:#cceee4}.kitchen-next span{font-size:15px}@media(max-width:1050px){.kitchen-board{grid-template-columns:repeat(4,235px)}}@media(max-width:700px){.kitchen-heading{align-items:flex-start;gap:10px;flex-direction:column}.kitchen-heading-actions{width:100%;justify-content:space-between}.kitchen-board{grid-template-columns:repeat(4,235px)}}
.kitchen-delivered-row{padding:0;border:1px solid #e1ece8;border-radius:10px;background:#fff;box-shadow:0 4px 12px #2d6e5b08}.kitchen-delivered-row button{display:flex;align-items:center;gap:9px;width:100%;padding:10px;border:0;background:transparent;color:#315b54;text-align:left;cursor:pointer}.kitchen-delivered-row button:hover{background:#f0faf6}.kitchen-delivered-row button>span:nth-child(2){display:grid;gap:3px;min-width:0;flex:1}.kitchen-delivered-row strong{font-size:11px}.kitchen-delivered-row small{color:#91a49e;font-size:9px}.kitchen-row-chevron{color:#2b9a8e;font-size:16px}
.kitchen-ticket-head>div>small{display:block;margin-top:2px;color:#8ca19a;font-size:9px}.kitchen-ticket-age{display:inline-flex;margin-top:8px;padding:4px 7px;border-radius:6px;background:#fff6e6;color:#a97932;font-size:9px;font-weight:700}.kitchen-status-action{border:1px solid transparent!important;font-weight:700}.kitchen-status-pendiente{background:#fff6e6!important;border-color:#f0d79e!important;color:#a8782e!important}.kitchen-status-en-preparación{background:#fff0e5!important;border-color:#efc49d!important;color:#b4672b!important}.kitchen-status-lista{background:#e8f3ff!important;border-color:#bdd8f0!important;color:#3978a6!important}.kitchen-status-entregada{background:#f0eaff!important;border-color:#d1c1ee!important;color:#7456a6!important}.kitchen-status-cerrada{background:#e5f6f0!important;border-color:#b9e2d5!important;color:#258b7e!important}.kitchen-dialog-status button.is-current{opacity:.72}
.kitchen-order-place{display:flex;align-items:center;gap:7px;min-width:0}.kitchen-place-icon{display:inline-grid;place-items:center;width:25px;height:25px;flex:none;border-radius:7px;background:#e5f6f1;color:#29978c}.kitchen-place-icon svg{width:14px;height:14px}.kitchen-ticket-actions{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px;align-items:center}.kitchen-details{min-height:32px;padding:7px 9px;border:1px solid #dcebe5;border-radius:7px;background:#fff;color:#568078;font-size:10px;font-weight:650;cursor:pointer}.kitchen-details:hover{background:#f0faf6;color:#238c80}.kitchen-order-dialog{width:min(560px,calc(100vw - 28px));padding:0;border:1px solid #dbeae5;border-radius:16px;background:#fff;color:#31564e;box-shadow:0 24px 80px #183f3435}.kitchen-order-dialog::backdrop{background:#183f3438;backdrop-filter:blur(2px)}.kitchen-dialog-head{display:flex;justify-content:space-between;gap:16px;padding:19px 20px;border-bottom:1px solid #e9f1ee}.kitchen-dialog-head h2{display:flex;align-items:center;gap:8px;margin:6px 0 3px;color:#173f3b;font-size:20px}.kitchen-dialog-head p{margin:0;color:#8ca099;font-size:10px}.kitchen-dialog-close{width:29px;height:29px;border:0;border-radius:8px;background:#eff7f4;color:#6c8e85;font-size:20px;cursor:pointer}.kitchen-dialog-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:15px 20px;background:#f8fcfa}.kitchen-dialog-meta span{display:grid;gap:3px}.kitchen-dialog-meta small,.kitchen-dialog-status>small{color:#91a49e;font-size:9px}.kitchen-dialog-meta strong{color:#315b54;font-size:11px}.kitchen-dialog-lines{padding:17px 20px}.kitchen-dialog-lines h3{margin:0 0 10px;color:#315b54;font-size:13px}.kitchen-dialog-lines ul{display:grid;gap:9px;margin:0;padding:0;list-style:none}.kitchen-dialog-lines li{padding-bottom:8px;border-bottom:1px solid #edf3f0;color:#42645c;font-size:12px}.kitchen-dialog-lines li small{display:block;margin:4px 0 0 22px;color:#8ea29b;font-size:10px}.kitchen-general-note{margin:13px 0 0;padding:9px 10px;border-radius:8px;background:#fff9ec;color:#9a7946;font-size:10px}.kitchen-dialog-status{padding:0 20px 20px}.kitchen-dialog-status>div{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.kitchen-dialog-status form{margin:0}.kitchen-dialog-status button{padding:8px 10px;border:1px solid #dcebe5;border-radius:8px;background:#fff;color:#568078;font-size:10px;cursor:pointer}.kitchen-dialog-status button:hover{background:#e8f7f2;color:#228c80}.kitchen-dialog-status button.is-current{border-color:#6bbcae;background:#e5f7f1;color:#218a80;cursor:default}@media(max-width:560px){.kitchen-dialog-meta{grid-template-columns:1fr 1fr}.kitchen-dialog-meta span:last-child{grid-column:1/-1}}
/* Cobro de comanda: conserva el panel POS y deja claro el pedido que se está cobrando. */
.restaurant-checkout-workspace { position: relative; }
.restaurant-checkout-banner { grid-column: 1 / -1; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.75rem 1rem; border:1px solid rgba(56,169,166,.28); border-radius:14px; background:linear-gradient(110deg,#eefaf8,#fff); margin-bottom:.7rem; }
.restaurant-checkout-banner > div { display:flex; align-items:baseline; gap:.8rem; flex-wrap:wrap; }
.restaurant-checkout-banner strong { font-size:1.05rem; color:#173b46; }
.restaurant-checkout-banner small { color:#6b8790; }
.restaurant-checkout-banner .eyebrow { margin:0; }
.restaurant-order-actions { display:flex; align-items:center; gap:.5rem; flex-wrap:wrap; }
.cashier-board .cashier-order-card { min-height:0; }
.cashier-order-footer { display:flex; align-items:center; justify-content:space-between; gap:.6rem; margin-top:auto; padding-top:.75rem; }
.kitchen-status-badge { display:inline-flex; align-items:center; border-radius:999px; padding:.3rem .55rem; font-size:.76rem; color:#236e70; background:#e8f6f3; }
.cashier-order-card .button { padding:.45rem .7rem; font-size:.8rem; }
.complementos-heading{align-items:flex-start}.complementos-actions{display:flex;gap:8px;flex-wrap:wrap}.complementos-table-panel{min-height:420px}.complementos-table-panel .panel-heading{padding:15px 18px;border-bottom:1px solid #edf2f0}.complementos-table-panel .table-caption{margin:4px 0 0;color:#9aa9a3;font-size:10px}.complementos-table-panel .table-sort-hint{color:#a3b2ab;font-size:10px}.complement-modal{width:min(460px,calc(100vw - 32px));padding:20px;border:0;border-radius:18px;box-shadow:0 20px 70px #244b3b30}.complement-modal::backdrop{background:#173d3a70;backdrop-filter:blur(8px)}.complement-modal .muted{margin:3px 0 16px}.complement-modal .form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.complement-modal .validation-summary{margin-top:8px}.complement-modal .restaurant-order-form{margin-top:0}@media(max-width:600px){.complementos-heading{display:block}.complementos-actions{margin-top:14px}.complementos-actions .button{flex:1}.complementos-table-panel{min-height:360px}}
.complementos-table-panel .category-edit{display:inline-flex;align-items:center;justify-content:center;padding:7px 11px;border:0;border-radius:7px;background:var(--teal);color:#fff!important;font-size:11px;white-space:nowrap}.complementos-table-panel .category-edit:hover{background:var(--teal-dark);color:#fff!important}.ios-toggle-row{display:inline-flex!important;align-items:center;gap:8px!important;width:max-content;color:#526f66!important;font-size:11px!important;cursor:pointer}.ios-toggle-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.ios-toggle{position:relative;display:inline-block;width:38px;height:22px;flex:0 0 38px;border-radius:999px;background:#d8e3df;box-shadow:inset 0 0 0 1px #c8d6d0;transition:background .18s ease}.ios-toggle::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #31564e30;transition:transform .18s ease}.ios-toggle-row:has(.ios-toggle-input:checked) .ios-toggle{background:#42aaa1;box-shadow:inset 0 0 0 1px #32968e}.ios-toggle-row:has(.ios-toggle-input:checked) .ios-toggle::after{transform:translateX(16px)}
.complement-modal form.is-processing{opacity:.72;pointer-events:none}.complement-spinner{display:inline-block;width:12px;height:12px;margin-right:5px;vertical-align:-2px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:complement-spin .7s linear infinite}@keyframes complement-spin{to{transform:rotate(360deg)}}
.complement-modal{box-sizing:border-box;overflow-x:hidden;overflow-y:auto;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);margin:auto;background:rgba(242,250,247,.9);border:1px solid rgba(61,170,164,.22);box-shadow:0 20px 70px rgba(36,75,59,.16),0 4px 18px rgba(36,75,59,.08);backdrop-filter:blur(14px)}.complement-modal::backdrop{background:rgba(236,246,242,.42);backdrop-filter:blur(5px)}body:has(.complement-modal[open]) .main-content{overflow:hidden}.complement-modal>*{max-width:100%;min-width:0}.complement-modal form,.complement-modal label,.complement-modal input,.complement-modal select{box-sizing:border-box;min-width:0;max-width:100%}.complement-modal .form-actions{flex-wrap:wrap}.complement-modal .form-actions .button{max-width:100%}
.complement-option-list{display:flex;flex-wrap:wrap;gap:5px;max-width:520px}.complement-option-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border:1px solid #dcebe5;border-radius:999px;background:#f7fbf9;color:#42685e;font-size:10px;white-space:nowrap}.complement-mini-action{border:0;background:transparent;color:#2d9b91;font-size:10px;padding:1px 3px;cursor:pointer}.complement-mini-action:hover{color:#176e68}.complement-mini-action.is-danger,.category-edit.is-danger{color:#c87575!important}.complement-mini-action.is-danger:hover,.category-edit.is-danger:hover{color:#ad4d4d!important}.complement-row-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.inline-action-form{display:inline-flex;margin:0}.inline-action-form button{font:inherit;cursor:pointer}.complementos-table-panel .category-edit:disabled,.complement-mini-action:disabled{opacity:.55;cursor:wait}
.action-icon-button{width:30px!important;height:30px!important;padding:0!important}.action-icon-button svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.complement-mini-action svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.complement-mini-action{display:inline-grid;place-items:center}.complement-row-actions{align-items:center}
.recipe-select-form{display:flex;align-items:end;gap:16px;padding:0 18px 16px}.recipe-select-form .search-field{max-width:420px;flex:1}.recipe-select-form .table-sort-hint{padding-bottom:10px}.recipe-layout{display:grid;grid-template-columns:minmax(260px,330px) minmax(0,1fr);gap:14px;align-items:stretch}.recipe-form-card,.recipe-lines-panel{min-width:0}.recipe-form-card .panel-heading,.recipe-lines-panel .panel-heading{padding:15px 18px;border-bottom:1px solid #edf2f0}.recipe-form{padding:15px 18px}.recipe-form .button{display:inline-flex;align-items:center;gap:6px}.recipe-button-icon{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.recipe-empty{margin-top:14px}.recipe-lines-panel{min-height:360px}.recipe-lines-panel .category-table-scroll{min-height:180px}@media(max-width:860px){.recipe-layout{grid-template-columns:1fr}.recipe-select-form{display:block}.recipe-select-form .table-sort-hint{display:block;margin-top:8px}}
.recipe-selector{padding:0;min-height:150px;overflow:visible}.recipe-selector .panel-heading{padding:22px 24px 12px}.recipe-selector .panel-heading h2{font-size:18px;line-height:1.3;color:#173d3a}.recipe-selector .panel-heading .table-caption{font-size:12px;line-height:1.5;margin-top:6px}.recipe-select-form{padding:4px 24px 24px;align-items:center}.recipe-select-form .search-field{max-width:560px;gap:7px}.recipe-select-form .search-field>span{font-size:12px;color:#56766c;font-weight:600}.recipe-select-form select{min-height:42px;padding:10px 13px;font-size:13px;border-radius:9px;background:#fff}.recipe-select-form .table-sort-hint{font-size:11px;padding-bottom:0;line-height:1.4}@media(max-width:600px){.recipe-selector .panel-heading{padding:18px 16px 10px}.recipe-select-form{padding:4px 16px 18px;display:block}.recipe-select-form .table-sort-hint{display:block;margin-top:9px}}
.recipe-heading{gap:24px}.recipe-header-select{display:flex;align-items:flex-end;margin-left:auto;min-width:260px}.recipe-header-select label{display:flex;flex-direction:column;gap:6px;width:100%;font-size:11px;color:#56766c;font-weight:600}.recipe-header-select select{width:100%;min-height:42px;padding:10px 13px;border:1px solid #dce8e3;border-radius:9px;background:#fff;color:#274c44;font:inherit;font-size:13px;box-shadow:0 3px 12px #214c3d0b}.recipe-header-select select:focus{outline:2px solid #73c5b5;outline-offset:1px}@media(max-width:700px){.recipe-heading{display:flex;flex-direction:column;align-items:stretch;gap:12px}.recipe-header-select{margin-left:0;min-width:0;width:100%}}
.complementos-table-panel .category-edit.is-danger{background:#d9363e!important;color:#fff!important}.complementos-table-panel .category-edit.is-danger:hover{background:#b4232b!important;color:#fff!important}.complement-option-chip .complement-mini-action.is-danger{color:#d9363e!important}.complement-option-chip .complement-mini-action.is-danger:hover{color:#b4232b!important}
.restaurant-layout .category-table .category-edit{display:inline-flex;align-items:center;justify-content:center;padding:7px 11px;border:0;border-radius:7px;background:var(--teal);color:#fff!important;font-size:11px;white-space:nowrap}.restaurant-layout .category-table .category-edit:hover{background:var(--teal-dark);color:#fff!important}.complementos-table-panel .action-icon-button{color:#fff!important}.complementos-table-panel .action-icon-button svg{stroke:#fff!important}.complementos-table-panel .action-icon-button.is-danger{background:#d9363e!important;color:#fff!important}.complementos-table-panel .action-icon-button.is-danger:hover{background:#b4232b!important}
.restaurant-catalog-heading{align-items:flex-start}.catalog-switch-link{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.catalog-switch-link svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.recipe-heading .catalog-switch-link{margin-left:auto;align-self:flex-end}@media(max-width:700px){.restaurant-catalog-heading{display:flex;flex-direction:column}.recipe-heading .catalog-switch-link{margin-left:0;align-self:stretch;justify-content:center}}
.mesas-heading{align-items:flex-start}.mesas-orders-button{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.mesas-orders-button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.mesas-table-panel{min-height:360px}.mesas-form-card .panel-heading{padding:15px 18px;border-bottom:1px solid #edf2f0}.mesas-form-card .recipe-button-icon{width:14px;height:14px}.mesas-table-panel .category-edit{display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:7px;background:var(--teal);color:#fff!important}.mesas-table-panel .category-edit:hover{background:var(--teal-dark);color:#fff!important}.mesas-table-panel .category-edit.is-danger{background:#d9363e!important}.mesas-table-panel .category-edit.is-danger:hover{background:#b4232b!important}@media(max-width:600px){.mesas-heading{display:flex;flex-direction:column;gap:12px}.mesas-orders-button{align-self:stretch;justify-content:center}}
.catalog-switch-link{background:#f1f5f3!important;border:1px solid #e2ebe7!important;border-radius:10px!important;color:#58746c!important;padding:10px 15px!important;font-size:12px!important;font-weight:500;box-shadow:0 1px 2px #244c3910}.catalog-switch-link:hover{background:#e7f0ec!important;border-color:#cfe1da!important;color:#2e8174!important}.catalog-switch-link svg{color:#6d9187;stroke:currentColor}
.mesas-orders-button{background:#f1f5f3!important;border:1px solid #e2ebe7!important;border-radius:10px!important;color:#58746c!important;padding:10px 15px!important;font-size:12px!important;font-weight:500;box-shadow:0 1px 2px #244c3910}.mesas-orders-button:hover{background:#e7f0ec!important;border-color:#cfe1da!important;color:#2e8174!important}
.mesas-heading-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.mesas-space-button{display:inline-flex;align-items:center;gap:7px}.mesas-space-button svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.mesas-space-button:hover{background:#e7f0ec!important}@media(max-width:700px){.mesas-heading-actions{margin-left:0;width:100%;flex-wrap:wrap}.mesas-heading-actions>a,.mesas-heading-actions>button{flex:1;justify-content:center}}
.mesa-save-feedback{display:block;margin-top:12px;padding:10px 12px;border:1px solid #f3b8b8;border-radius:10px;background:#fff4f4;color:#a12626;font-size:.86rem;line-height:1.35}
.comandas-heading{align-items:flex-start}.comandas-heading>div:first-child p{margin:5px 0 0;color:#81948f;font-size:11px}.comandas-heading-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.comandas-action{display:inline-flex;align-items:center;gap:7px}.comandas-action svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.comandas-layout{grid-template-columns:minmax(380px,430px) minmax(0,1fr);align-items:start}.comandas-form-card{padding:0;overflow:hidden}.comandas-form-card .panel-heading,.comandas-table-panel>.panel-heading{padding:15px 18px;border-bottom:1px solid #edf2f0}.comandas-form-card .restaurant-order-form{padding:0 18px 18px}.comandas-form-card .validation-summary{margin:0 18px 18px}.comandas-modifiers{display:grid;gap:9px;padding:11px 12px;border:1px solid #e2eee9;border-radius:10px;background:#f8fcfa}.comandas-modifiers>label{display:grid;gap:5px}.comandas-modifiers small{color:#91a49e;font-size:9px;font-weight:400}.comandas-table-panel{padding:0;min-height:420px;overflow:hidden}.comandas-table-panel>.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.comandas-table-panel .table-sort-hint{padding-top:8px;color:#9aaba5;font-size:10px;white-space:nowrap}.comandas-list{display:grid;gap:10px;padding:14px 18px 18px}.comanda-card{padding:14px;border:1px solid #e1ece8;border-radius:12px;background:#fff;box-shadow:0 4px 14px #244c3910}.comanda-card:hover{border-color:#c6e2d9;box-shadow:0 7px 20px #244c3918}.comanda-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid #edf3f0}.comanda-status-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px;margin-left:auto}.comanda-status-actions form{margin:0}.comanda-status-actions .comanda-card-icon{width:28px;height:28px;padding:5px}.comanda-card-icon{width:30px;height:30px;padding:6px;background:#eef8f5;color:#2b9085;border:1px solid #d2e9e2}.comanda-card-icon.delete{background:#fff1f1;color:#cf3d48;border-color:#efc4c7}.comanda-card-icon svg{width:15px;height:15px}.comanda-edit-dialog{width:min(420px,calc(100vw - 32px))}.comanda-edit-dialog .restaurant-order-form{max-height:calc(100dvh - 150px);overflow:auto}.comanda-edit-lines{display:grid;gap:8px}.comanda-edit-line{display:grid;grid-template-columns:minmax(0,1fr) 78px minmax(0,1fr) 30px;gap:7px;align-items:end;padding:9px;border:1px solid #e2eee9;border-radius:9px;background:#f8fcfa}.comanda-edit-line label{display:grid;gap:5px;color:#78918a;font-size:10px}.comanda-edit-line select,.comanda-edit-line input{width:100%;min-height:34px;padding:7px 8px;border:1px solid #dfeae6;border-radius:7px;background:#fff;color:#31564e;font:inherit;font-size:11px}.comanda-edit-remove{display:grid;place-items:center;width:30px;height:34px;padding:0;background:#fff1f1;color:#d33e48;border-color:#efbfc3}.comanda-edit-remove svg,.comanda-edit-add svg{width:14px;height:14px}.comanda-edit-add{display:inline-flex;align-items:center;gap:6px;justify-self:start;padding:8px 11px;font-size:10px}.comanda-destination{display:flex;align-items:center;gap:9px;min-width:0}.comanda-place-icon{display:grid;place-items:center;width:31px;height:31px;flex:none;border-radius:9px;background:#e6f5f0;color:#2d9a8e}.comanda-place-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.comanda-destination strong{display:block;color:#173f3b;font-size:14px}.comanda-destination small{display:block;margin-top:3px;color:#91a49e;font-size:10px}.comanda-status{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:650;white-space:nowrap;background:#eef5f2;color:#628279}.comanda-status.pendiente{background:#fff6e6;color:#a8782e}.comanda-status.en-preparación{background:#fff0e5;color:#b4672b}.comanda-status.lista{background:#e8f3ff;color:#3978a6}.comanda-status.entregada{background:#f0eaff;color:#7456a6}.comanda-meta{margin-top:9px;color:#849a93;font-size:10px}.comanda-lines{display:grid;gap:6px;margin:11px 0;padding:0;list-style:none;color:#42645c;font-size:11px}.comanda-lines li small{display:block;margin:3px 0 0 22px;color:#91a49e;font-size:9px}.comanda-card .restaurant-add-line{margin-top:9px}.comanda-footer{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-top:12px;padding-top:11px;border-top:1px solid #edf3f0}.comanda-charge{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;font-size:10px}.comanda-charge svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.comanda-status-form{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin:0}.comanda-status-form select{width:auto;min-width:125px;min-height:31px;padding:6px 8px;font-size:10px}.comanda-status-form .category-edit{display:inline-flex;align-items:center;gap:5px;padding:7px 10px}.comanda-status-form .recipe-button-icon{width:13px;height:13px}.comandas-empty{margin:14px 18px}@media(max-width:850px){.comandas-heading{display:flex;flex-direction:column;gap:11px}.comandas-heading-actions{margin-left:0;width:100%;flex-wrap:wrap}.comandas-heading-actions>a{flex:1;justify-content:center}.comandas-layout{grid-template-columns:1fr}}@media(max-width:600px){.comandas-table-panel>.panel-heading{display:block}.comandas-table-panel .table-sort-hint{display:block;padding-top:6px}.comandas-list{padding:12px}.comanda-card-head{align-items:flex-start;flex-direction:column}.comanda-footer{align-items:stretch;flex-direction:column}.comanda-status-form{justify-content:stretch}.comanda-status-form select{flex:1}.comanda-status-form .category-edit{white-space:nowrap}}
.comandas-modifiers select[multiple]{min-height:74px;padding:5px 7px}.comandas-modifiers select[multiple] option{padding:5px 6px;border-radius:5px}.comandas-modifiers select[multiple] option:checked{background:#dff4ed;color:#237f73}
.comandas-modifier-trigger{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:36px;border:1px dashed #b9dcd2;background:#f4fbf8;color:#2d8e82}.comandas-modifier-trigger svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.comanda-modifiers-dialog{width:min(520px,calc(100vw - 32px));max-height:min(720px,calc(100dvh - 32px));overflow:auto}.comanda-modifiers-dialog .comandas-modifiers{margin-top:12px}.comanda-modifiers-dialog .form-actions{margin-top:14px}
.comanda-input-lines{display:grid;gap:8px}.comanda-input-line{display:grid;grid-template-columns:minmax(0,1fr) 78px 30px;gap:7px;align-items:end;padding:9px;border:1px solid #e2eee9;border-radius:9px;background:#f8fcfa}.comanda-input-line label{display:grid;gap:5px;color:#78918a;font-size:10px}.comanda-input-line select,.comanda-input-line input{width:100%;min-height:34px;padding:7px 8px;border:1px solid #dfeae6;border-radius:7px;background:#fff;color:#31564e;font:inherit;font-size:11px}.comanda-remove-line{width:30px;height:34px;padding:0;background:#fff2f2;color:#c33b43;border:1px solid #f0caca}.comandas-add-product{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:34px;padding:7px 10px;font-size:10px}.comandas-add-product svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}@media(max-width:600px){.comanda-input-line{grid-template-columns:minmax(0,1fr) 70px 30px}}
.comanda-selection-summary{display:grid;gap:6px;padding:8px 10px;border:1px solid #d9ebe4;border-radius:8px;background:#f4fbf8;color:#668b81;font-size:10px}.comanda-selection-summary>span{font-weight:650}.comanda-selection-summary>div{display:flex;flex-wrap:wrap;gap:5px}.comanda-complement-chip{display:inline-flex;padding:4px 7px;border-radius:999px;background:#e1f3ed;color:#287e72;font-size:9px}.comandas-preview-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:34px}.comandas-preview-button svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.comanda-preview-dialog{width:min(390px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto}.comanda-receipt{margin-top:12px;padding:20px 18px;border:1px dashed #cbded6;border-radius:8px;background:#fffef9;color:#3e5c54;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.comanda-receipt-brand{text-align:center;color:#258d81;font-family:inherit;font-size:18px;font-weight:800;letter-spacing:.08em}.comanda-receipt-meta{display:grid;gap:3px;margin-top:14px;text-align:center;font-size:10px}.comanda-receipt-meta strong{font-size:13px;color:#244f47}.comanda-receipt-meta span{color:#8a9c95}.comanda-receipt-divider{margin:13px 0;border-top:1px dashed #cbded6}.comanda-receipt-lines{display:grid;gap:8px;margin:0;padding:0;list-style:none;font-size:11px}.comanda-receipt-lines li{display:flex;gap:7px}.comanda-receipt-lines b{color:#236e66}.comanda-receipt-complements,.comanda-receipt-note{margin:11px 0 0;color:#708b83;font-size:9px;line-height:1.45}.comanda-receipt-footer{margin:14px 0 0;text-align:center;color:#8ca099;font-size:9px}@media(max-width:600px){.comanda-input-line{grid-template-columns:minmax(0,1fr) 76px 30px}.comanda-input-line label:first-child{grid-column:1/-1}.comanda-input-line label:nth-child(2){grid-column:1/2}}
.comandas-action{background:#f1f5f3!important;border:1px solid #e2ebe7!important;border-radius:10px!important;color:#58746c!important;padding:10px 15px!important;font-size:12px!important;font-weight:500;box-shadow:0 1px 2px #244c3910}.comandas-action:hover{background:#e7f0ec!important;border-color:#cfe1da!important;color:#2e8174!important}.comandas-action svg{color:#6d9187;stroke:currentColor}
.comanda-input-line{grid-template-columns:minmax(0,1fr) 105px 30px!important;align-items:end}.comanda-input-line label:first-child,.comanda-input-line label:nth-child(2){grid-column:auto!important}.comanda-input-line label:nth-child(2){min-width:0}.comanda-input-line .comanda-remove-line{grid-column:auto!important}

/* Comandas: las dos secciones comparten la altura de la pantalla y cada una
   desplaza internamente su contenido cuando hay más información. */
.comandas-layout{height:calc(100dvh - 190px);min-height:500px;align-items:stretch}
/* La vista de comandas trabaja como un panel de operación: el documento no
   debe desplazarse; cada columna administra su propio contenido. */
body:has(.comandas-layout){overflow:hidden}
body:has(.comandas-layout) .main-content{overflow:hidden;min-height:0}
.comandas-form-card,.comandas-table-panel{height:100%;min-height:0;display:flex;flex-direction:column}
.comandas-form-card .restaurant-order-form{min-height:0;overflow:auto;overscroll-behavior:contain}
.comanda-input-lines{height:142px;max-height:142px;min-height:142px!important;flex:none;overflow-y:auto;overflow-x:hidden;align-content:start;padding-right:3px;overscroll-behavior:contain}
.comandas-table-panel .comandas-list{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;align-content:start;overscroll-behavior:contain}
.comanda-input-line{grid-template-columns:minmax(0,1fr) 82px minmax(69px,auto)!important}.comanda-line-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px;grid-column:3/-1}
.comanda-line-modifiers{width:34px;height:34px;min-height:34px;padding:7px;border:1px solid #cfe5df;background:#eef8f5;color:#268f84;white-space:nowrap}.comanda-line-modifiers svg,.comanda-remove-line svg{width:15px;height:15px}.comanda-remove-line{display:grid;place-items:center;width:30px;height:34px;padding:0;background:#fff1f1;color:#d33e48;border-color:#efbfc3}.comanda-complement-chip{border:1px solid #c9e6dd;cursor:pointer}.comanda-complement-chip:hover{background:#ffecee;border-color:#e9aeb5;color:#bd3a47}
.comanda-line-complements{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:5px;min-width:0;padding-top:1px}
.comanda-line-complements[hidden]{display:none}
.comanda-line-complements .comanda-complement-chip{font-size:9px}
@media(max-width:850px){.comandas-layout{height:auto;min-height:0}.comandas-form-card,.comandas-table-panel{height:auto}.comandas-form-card .restaurant-order-form{overflow:visible}.comandas-table-panel .comandas-list{max-height:calc(100dvh - 330px);min-height:180px}}
@media(max-width:600px){.comanda-input-line{grid-template-columns:minmax(0,1fr) 76px 30px!important}.comanda-line-actions{grid-column:2/-1;justify-content:flex-start}.comanda-line-complements{grid-column:1/-1}}



.comanda-submit-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:stretch;margin-top:2px}.comanda-submit-actions .comandas-preview-button,.comanda-submit-actions .comanda-submit-button{width:100%;min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:7px}.comanda-submit-actions .comanda-submit-button svg{width:14px;height:14px}
@media(max-width:420px){.comanda-submit-actions{grid-template-columns:1fr}.comanda-submit-actions .comandas-preview-button{order:1}.comanda-submit-actions .comanda-submit-button{order:2}}

/* El control del menú siempre queda fuera de la barra lateral cuando está abierta. */
.floating-menu-toggle{left:236px;z-index:40}
.menu-closed .floating-menu-toggle{left:12px}
@media(max-width:1250px){.floating-menu-toggle{left:212px}}
@media(max-width:1000px){.floating-menu-toggle{left:192px}}
@media(max-width:760px){.floating-menu-toggle{left:236px}.menu-closed .floating-menu-toggle{left:12px}}
@media(max-width:760px){body:has(.sidebar.open) .floating-menu-toggle{left:236px!important}}

.sedes-layout{grid-template-columns:minmax(300px,380px) minmax(0,1fr);height:calc(100dvh - 175px);min-height:420px}
.sedes-layout .comandas-table-panel{min-width:0}
.sedes-layout .comandas-form-card{min-width:0}
.sedes-layout .comandas-form-card .panel-heading{padding:15px 18px;border-bottom:1px solid #edf2f0}
.sedes-layout .comandas-table-panel{min-height:420px}
.sedes-layout .panel-heading{align-items:center}
.sedes-layout .panel-heading h2{display:flex;align-items:center;gap:7px}
.sede-summary{display:grid;gap:3px;text-align:right;color:#91a49e;font-size:10px;white-space:nowrap}
.sede-summary strong{color:#267f75;font-size:14px}
.sede-form{display:grid;gap:10px;padding:16px 18px 20px;overflow:auto}
.sede-form label{display:grid;gap:5px;color:#78918a;font-size:10px}
.sede-form input,.sede-form select{width:100%;box-sizing:border-box;min-height:36px;padding:8px 10px;border:1px solid #dfeae6;border-radius:8px;background:#fff;color:#31564e;font:inherit;font-size:11px}
.sede-form small{color:#96a8a1;font-size:9px}
.sede-slug-preview{display:grid;gap:4px;padding:10px 11px;border:1px dashed #cfe4dc;border-radius:8px;background:#f6fbf9;color:#78918a;font-size:10px}
.sede-slug-preview strong{color:#267f75;font-size:11px;font-weight:600;overflow-wrap:anywhere}
.sede-slug-preview small{color:#96a8a1;font-size:9px}
.sedes-table-panel{min-height:420px}
.sede-host{color:#5e8177;font-size:11px;overflow-wrap:anywhere}
.sede-user-list{display:flex;flex-wrap:wrap;gap:5px}
.sede-user-list span{display:inline-flex;padding:4px 7px;border-radius:999px;background:#eef8f5;color:#398478;font-size:10px}
.site-modal-form{margin-top:0}
.sede-form .primary-button{justify-self:stretch;margin-top:5px}
.table-toggle{margin:0 auto!important;justify-content:center}
.table-toggle .ios-toggle{width:34px;height:20px;flex-basis:34px}
.table-toggle .ios-toggle::after{width:14px;height:14px}
.table-toggle:has(.ios-toggle-input:checked) .ios-toggle::after{transform:translateX(14px)}
.permission-toggle{width:34px;height:20px;flex:0 0 34px}
.permission-toggle::after{width:14px;height:14px}
.permission-card:has(.ios-toggle-input:checked) .permission-toggle{background:#42aaa1;box-shadow:inset 0 0 0 1px #32968e}
.permission-card:has(.ios-toggle-input:checked) .permission-toggle::after{transform:translateX(14px)}
.permission-card-disabled .permission-toggle{background:#d8e3df;box-shadow:inset 0 0 0 1px #c8d6d0}
.cashier-receipt-button{display:inline-flex;align-items:center;gap:6px}
.cashier-receipt-button svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:850px){.sedes-layout{height:auto;min-height:0}.sedes-layout .comandas-table-panel{min-height:360px}.sede-form{overflow:visible}}
@media(max-width:600px){.sedes-layout .panel-heading{display:block}.sede-summary{text-align:left;margin-top:8px}.sedes-layout .category-table-scroll{overflow-x:auto}}
.ingredients-table-panel{min-height:420px}.ingredient-modal-form{margin-top:0;width:min(100%,520px)}.ingredient-modal-form .restaurant-order-inline{grid-template-columns:minmax(170px,1.35fr) minmax(130px,1fr);align-items:end}.ingredient-modal-form select{min-height:40px;padding:9px 11px;font-size:12px;appearance:auto;-webkit-appearance:auto;pointer-events:auto;cursor:pointer;background-color:#fff;color:#31564e;position:relative;z-index:1}@media(max-width:520px){.ingredient-modal-form .restaurant-order-inline{grid-template-columns:1fr}.ingredient-modal-form select{width:100%}}

#new-ingredient-dialog{top:16px;bottom:auto;left:50%;right:auto;transform:translateX(-50%);}

.cashier-order-footer{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:6px;margin-top:10px;padding-top:8px;border-top:1px solid #edf3f0}.cashier-order-footer .button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:29px;padding:6px 9px;border-radius:7px;font-size:10px;line-height:1;white-space:nowrap}.cashier-order-footer .cashier-receipt-button{flex:0 0 auto}.cashier-order-footer .kitchen-status-badge{margin-left:auto;padding:4px 7px;font-size:9px}.cashier-order-footer>.muted{margin-left:auto;font-size:9px}@media(max-width:520px){.cashier-order-footer .kitchen-status-badge,.cashier-order-footer>.muted{margin-left:0}.cashier-order-footer .button{flex:1 1 auto}}

.comanda-transfer-dialog{width:min(360px,calc(100vw - 32px));padding:18px}.comanda-transfer-dialog .restaurant-order-form{margin-top:10px}.comanda-transfer-dialog .form-actions{margin-top:14px}.comanda-card-icon.transfer{color:#3d9288;background:#eef8f5}.comanda-card-icon.transfer:hover{background:#dff2ec;color:#27796f}

.comanda-status-actions{flex:0 0 auto;min-width:max-content}.comanda-card-icon.transfer{display:inline-flex!important;visibility:visible!important;opacity:1!important}.comanda-card-icon.transfer svg{display:block;width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.9}

.restaurant-menu-heading{align-items:center}.restaurant-menu-heading>.button{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;font-size:11px}.restaurant-menu-heading>.button svg{width:14px;height:14px}.restaurant-menu-filters{padding:12px 16px;margin-bottom:14px}.menu-filter-label{margin-bottom:8px;color:#78918a;font-size:10px;font-weight:650;text-transform:uppercase;letter-spacing:.08em}.menu-category-chips{display:flex;flex-wrap:wrap;gap:7px}.menu-category-chip{display:inline-flex;align-items:center;min-height:30px;padding:6px 11px;border:1px solid #dcebe5;border-radius:999px;background:#fff;color:#63847b;font-size:10px;text-decoration:none}.menu-category-chip:hover,.menu-category-chip.is-active{border-color:#8bcbbd;background:#e8f7f2;color:#218579}.restaurant-menu-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.restaurant-menu-card{overflow:hidden;border:1px solid #e1ece8;border-radius:12px;background:#fff;box-shadow:0 4px 14px #244c3910}.restaurant-menu-card.is-unavailable{opacity:.68}.restaurant-menu-image{position:relative;aspect-ratio:1.35;background:#eef6f2;overflow:hidden}.restaurant-menu-image img{width:100%;height:100%;object-fit:cover}.restaurant-menu-status{position:absolute;top:8px;right:8px;padding:4px 7px;border-radius:999px;background:#e5f6f0;color:#258b7e;font-size:9px;font-weight:650}.restaurant-menu-card.is-unavailable .restaurant-menu-status{background:#fff1f1;color:#bb4c55}.restaurant-menu-card-body{padding:11px}.restaurant-menu-category{color:#2b9789;font-size:9px}.restaurant-menu-card h2{margin:4px 0 0;color:#173f3b;font-size:14px}.restaurant-menu-description{min-height:28px;margin:5px 0 10px;color:#8ca19a;font-size:10px;line-height:1.4}.restaurant-menu-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.restaurant-menu-card-footer strong{color:#205e56;font-size:14px}.restaurant-menu-card-footer .category-edit{padding:6px 8px;font-size:9px}@media(max-width:1050px){.restaurant-menu-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.restaurant-menu-heading{align-items:flex-start;gap:10px}.restaurant-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:450px){.restaurant-menu-grid{grid-template-columns:1fr}}

body:has(.restaurant-menu-heading) .main-content{overflow:auto!important;min-height:0}.restaurant-menu-filters{overflow-x:auto;scrollbar-width:thin;scrollbar-color:#c7ded5 transparent}.restaurant-menu-filters .menu-category-chips{flex-wrap:nowrap;min-width:max-content}.restaurant-menu-heading,.restaurant-menu-grid{flex-shrink:0}

/* Carta pública para clientes sin sesión */
.public-menu-page{min-height:100vh;background:#f5faf8;color:#173b38;padding:clamp(20px,4vw,48px)}
.public-menu-shell{max-width:1180px;margin:0 auto}
.public-menu-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}
.public-menu-header h1{margin:5px 0 6px;font-size:clamp(28px,4vw,42px);letter-spacing:-.035em}
.public-menu-header p{margin:0;color:#6e8b87;font-size:16px}
.public-menu-login{color:#248f8d;text-decoration:none;font-weight:600;white-space:nowrap}
.public-menu-login span{font-size:20px;margin-left:5px}
.public-menu-categories{display:flex;gap:9px;overflow-x:auto;padding:4px 0 20px;scrollbar-width:thin}
.public-menu-category{border:1px solid #d7e8e4;background:#fff;border-radius:999px;color:#557570;padding:9px 16px;text-decoration:none;white-space:nowrap;font-size:14px}
.public-menu-category.is-active{background:#39a6a4;border-color:#39a6a4;color:#fff}
.public-menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}
.public-menu-card{background:#fff;border:1px solid #deece8;border-radius:18px;overflow:hidden;box-shadow:0 8px 24px rgba(30,92,83,.06);transition:transform .18s ease,box-shadow .18s ease}
.public-menu-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(30,92,83,.12)}
.public-menu-card.is-sold-out{opacity:.7}
.public-menu-image{height:170px;background:#eaf6f2;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}
.public-menu-image img{width:100%;height:100%;object-fit:cover}
.public-menu-badge{position:absolute;top:12px;right:12px;background:#fff0ef;color:#c7534f;border:1px solid #f2c9c6;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:700}
.public-menu-card-body{padding:14px 16px 16px}
.public-menu-card-category{font-size:12px;color:#2b9b97;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.public-menu-card h2{font-size:18px;margin:6px 0 14px;color:#173b38}
.public-menu-card-footer{display:flex;align-items:center;justify-content:space-between;gap:10px}
.public-menu-card-footer strong{font-size:18px;color:#176e6c}
.public-menu-card-footer span{font-size:12px;color:#78948f}
.public-menu-empty{background:#fff;border:1px solid #deece8;border-radius:18px;padding:52px 24px;text-align:center;color:#6e8b87}
.public-menu-empty h2{margin:0 0 8px;color:#173b38}
.public-menu-footer{margin-top:34px;color:#8aa39f;font-size:13px;text-align:center}
.public-menu-settings-card{max-width:860px}
.public-menu-settings-copy{display:flex;align-items:flex-start;gap:16px}
.public-menu-settings-copy h2{margin:0 0 6px}
.public-menu-settings-copy p{margin:0;color:#718d88;line-height:1.55}
@media (max-width:650px){.public-menu-page{padding:20px 14px}.public-menu-header{display:block}.public-menu-login{display:inline-block;margin-top:15px}.public-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.public-menu-image{height:125px}.public-menu-card-body{padding:12px}.public-menu-card h2{font-size:16px}.public-menu-card-footer strong{font-size:15px}}
.comanda-order-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:2px 0 12px}
.kitchen-ticket-meta{display:flex;align-items:center;gap:8px;margin:8px 0 5px;color:#78948f;font-size:12px}
.kitchen-priority{border-radius:999px;padding:4px 8px;font-weight:700}.priority-0{background:#edf5f2;color:#4f7770}.priority-1{background:#fff4dc;color:#a46c15}.priority-2{background:#ffe6e4;color:#b64540}
.kitchen-stations{display:flex;gap:5px;flex-wrap:wrap;margin:3px 0 8px}.kitchen-stations span{background:#e7f5f1;color:#268f88;border-radius:999px;padding:3px 7px;font-size:11px;font-weight:600}
.kitchen-ticket-actions{flex-wrap:wrap}.kitchen-print-button{border-color:#d8e9e5;color:#4c7770}.kitchen-dialog-print{display:flex;justify-content:flex-end;margin:14px 0}
@media(max-width:620px){.comanda-order-options{grid-template-columns:1fr}}
.comanda-input-line{grid-template-columns:minmax(0,1fr) 105px 82px minmax(69px,auto)!important}.comanda-input-line .comanda-line-actions{grid-column:4/-1}.comanda-input-line .comanda-remove-line{grid-column:auto}
@media(max-width:600px){.comanda-input-line{grid-template-columns:minmax(0,1fr) 76px 76px 30px!important}.comanda-input-line label:first-child{grid-column:1/-1}.comanda-input-line .comanda-line-actions{grid-column:3/-1}}
