
:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#243c34;background:#f5f6f2;font-size:16px;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer;border:0;background:transparent;color:inherit;border-radius:8px;padding:10px 14px;font-weight:600}button:hover{filter:brightness(.94);background-color:#edf2ed}button:focus-visible,input:focus-visible{outline:3px solid #96b89c;outline-offset:2px}button:disabled{opacity:.5;cursor:wait}aside{position:fixed;inset:0 auto 0 0;width:235px;background:#173e31;color:#e8eee6;padding:34px 22px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;font-size:35px;color:#f6f5e9;text-decoration:none}.brand span{font-size:23px;font-weight:750;letter-spacing:2px}.brand small{font-size:9px;letter-spacing:1.8px;margin-top:6px;color:#b9cbba}.nav-label{font-size:11px;letter-spacing:1.7px;margin:56px 12px 15px;color:#a1b8a9}nav{display:grid;gap:8px}nav button{text-align:left;color:#c9d8cf;font-size:15px;padding:15px 14px}nav button.active{background:#dce8ce;color:#173e31}nav button:hover{background:#315743;color:white}.aside-bottom{margin-top:auto;font-size:12px;color:#c1d1c5}.aside-bottom small{margin:10px 0 0 14px;color:#9fb5a7}.dot{display:inline-block;width:6px;height:6px;background:#b9d794;border-radius:50%;margin-right:5px}main{margin-left:235px;padding:0 38px 48px;max-width:1700px}header{height:83px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dfe5dc;font-size:13px;color:#718078}.badge{border:1px solid #d9e1d6;border-radius:30px;padding:8px 12px;font-size:10px;letter-spacing:1px;color:#355846}.notice{background:#f0ecde;color:#776640;padding:11px 16px;border-radius:8px;font-size:12px;margin-top:22px}.title{display:flex;justify-content:space-between;align-items:center;margin:28px 0 25px;gap:15px}h1{font-size:30px;letter-spacing:-1px;margin:0 0 8px;font-weight:650}.title p{margin:0;color:#748178;font-size:14px}h2{font-size:16px;margin:0 0 18px;font-weight:650}h3{font-size:14px}.sale-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,1fr);gap:24px}article{background:#fff;border:1px solid #e1e6dd;border-radius:13px;padding:23px;margin-bottom:22px;box-shadow:0 3px 6px #243c3403}.card-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.card-head h2{margin-bottom:14px}.muted{color:#839087;font-size:12px}label{display:block;font-size:13px;font-weight:550;margin-top:17px}input{width:100%;margin-top:8px;padding:11px 12px;border:1px solid #dbe2d8;border-radius:7px;background:#fff;color:#203e31;min-width:0;font-size:14px}input::placeholder{color:#a0a89f}input[type=checkbox]{width:17px;height:17px;margin:0;accent-color:#28573e}.search{margin:0 0 15px;color:#64756a}.search input{background:#fafbf8}.product{display:flex;align-items:center;gap:12px;padding:17px 0;border-top:1px solid #eef0eb}.product-icon{width:43px;height:47px;background:#ede9dc;color:#8b7350;border-radius:9px;display:grid;place-items:center;font-size:25px}.product-name{flex:1;font-size:14px}.product-price{text-align:right;font-size:14px}small{display:block;font-size:11px;font-weight:400;color:#8a958b;margin-top:6px}.add{border:1px solid #d9e4d2;color:#2a5339;background:#f2f6ec;padding:7px 11px;font-size:20px}.tag{display:inline-block;background:#edf3e7;border-radius:5px;color:#517246;padding:5px 9px;font-size:11px;font-weight:600}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}.payment-title{margin-top:28px;padding-top:23px;border-top:1px solid #edf0e9}.payment{display:flex;align-items:center;gap:13px;background:#f6f8f2;border:1px solid #e1e7d9;padding:13px;border-radius:8px;font-size:14px}.check{display:flex;align-items:center;gap:9px;font-size:12px;line-height:1.5}.summary{margin-top:24px;padding-top:17px;border-top:1px solid #e7ebe3}.summary>div{display:flex;justify-content:space-between;gap:15px;margin-bottom:14px;font-size:13px}.summary b{font-weight:550}.summary .total{border-top:1px dashed #dce4d6;margin-top:18px;padding-top:18px;align-items:center;font-size:15px}.total strong{font-size:25px;letter-spacing:-.7px}.primary{background:#28573e;color:#fff;padding:13px 19px;font-size:14px}.primary:hover{background:#1c4730}.wide{width:100%}.fine{font-size:11px;color:#8a9489;text-align:center;line-height:1.6}.empty{text-align:center;padding:35px 20px;color:#8b978b;font-size:13px}.empty span{display:block;font-size:27px;margin-bottom:15px;color:#9eb19b}.empty strong{display:block;color:#5e7560;font-size:15px}.empty p{margin-bottom:0}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}th{background:#f7f9f3;color:#7c8d7b;font-size:11px;font-weight:500;padding:13px 10px;white-space:nowrap}td{border-bottom:1px solid #edf0e9;padding:17px 10px}td strong{font-size:13px}td b{white-space:nowrap}.qty{width:65px;margin:0;padding:8px}.remove{color:#939c90;font-size:22px;padding:5px}.outline{border:1px solid #d9e3d3;font-size:12px;color:#386044;white-space:nowrap}.success,.error{padding:12px 16px;border-radius:8px;font-size:14px;margin-top:15px}.success{background:#e8f1e2;color:#3a642e}.error{background:#faeae5;color:#9a3d28}.error:empty{display:none}dialog{border:1px solid #dce5d5;border-radius:15px;padding:28px;width:min(720px,94vw);max-height:90vh;color:#243c34}dialog::backdrop{background:#16352970;backdrop-filter:blur(3px)}dialog .card-head button{font-size:23px}dialog h2{margin:0}dialog .notice{margin-top:12px}.receipt p{font-size:14px;line-height:1.7}.receipt .fine{font-size:11px}#message:empty{display:none}@media(min-width:1450px){main{padding-left:55px;padding-right:55px}.sale-grid{grid-template-columns:1.5fr 1fr}}@media(max-width:1120px){aside{width:195px;padding:30px 15px}main{margin-left:195px;padding:0 22px 30px}.sale-grid{grid-template-columns:1fr}.product-price{margin-left:auto}.brand span{font-size:19px}.cart-card{min-height:180px}}@media(max-width:650px){aside{position:static;width:100%;padding:20px}.brand{font-size:26px}.nav-label,.aside-bottom{display:none}nav{display:flex;margin-top:22px;gap:3px}nav button{font-size:12px;padding:11px}main{margin:0;padding:0 15px 25px}header{height:55px}.badge{display:none}h1{font-size:26px}.title{align-items:flex-start}.title p{line-height:1.6}.title .primary{font-size:12px;white-space:nowrap}article{padding:17px}.product-icon{display:none}.product-name{font-size:13px}.product-price{font-size:13px}.field-row{grid-template-columns:1fr}.notice{line-height:1.6}dialog{padding:19px}}@media print{body>*:not(dialog){display:none!important}dialog{position:static;display:block;border:0;max-height:none;width:100%;padding:0}dialog:not([open]){display:none}dialog button{display:none!important}dialog::backdrop{background:none}.receipt{font-size:12px}.notice{border:1px solid #aaa}table{font-size:11px}}
.customer-picker{border-bottom:1px solid #e2e8dd;padding-bottom:16px;margin-bottom:18px}.customer-picker label:first-child{margin-top:0}select{font:inherit;font-size:14px;width:100%;border:1px solid #dbe2d8;border-radius:7px;padding:11px 9px;margin:8px 0 12px;color:#203e31;background:#fff}select:focus-visible{outline:3px solid #96b89c}input[readonly]{background:#f5f7f1;color:#58715b}.customer-actions{display:flex;flex-wrap:wrap;gap:7px}.customer-picker .fine{text-align:left}select:disabled{opacity:.65}@media(max-width:650px){nav{flex-wrap:wrap}nav button{flex:1 1 40%}}
.category-tabs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0 8px}.category-tabs button{border:1px solid #dbe4d4;text-align:left;padding:15px}.category-tabs button[aria-pressed=true]{background:#edf4e6;border-color:#49704a;color:#244e31}.category-tabs small{font-size:12px}.additional-fields{margin-top:24px;border-top:1px solid #e1e7db;padding-top:15px}.additional-fields summary{cursor:pointer;font-size:14px;font-weight:600}.additional-fields .fine{text-align:left}.category-tabs button:disabled{cursor:wait}

.profile-row{border:1px solid #dce3dd;border-radius:12px;padding:16px;margin:16px 0}.profile-check{display:flex;align-items:center;gap:10px;margin:14px 0}.profile-check input{width:auto;flex:none}.additional-fields textarea{width:100%;min-height:90px}.additional-fields>button{margin:12px 0}

.rut-panel{background:#f0f6ef;border:1px solid #c9dbc8;border-radius:12px;padding:16px;margin:16px 0 22px}.rut-panel input[type=file]{background:white;max-width:100%;font-size:13px}.rut-panel #rut-status{font-size:14px;color:#24513a}.rut-panel td{white-space:normal;overflow-wrap:anywhere}.rut-panel ul{padding-left:20px}.rut-panel summary{cursor:pointer;font-size:14px}.rut-panel table{font-size:12px}

.item-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.catalog-stats{display:flex;gap:22px;flex-wrap:wrap;margin:0 0 22px;color:#6b806e;font-size:13px}.catalog-stats strong{color:#244e31;font-size:22px;margin-right:5px}.catalog-filters{display:grid;grid-template-columns:2fr 1.3fr 1.3fr .7fr;gap:14px;align-items:start}.bulk-group{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:#f5f8f1;padding:12px;margin-bottom:15px;border-radius:8px;font-size:12px}.bulk-group label{margin:0;display:flex;gap:8px;align-items:center}.bulk-group select{width:190px;margin:0}.catalog-pager{display:flex;gap:15px;align-items:center;justify-content:space-between;padding-top:18px;font-size:12px;color:#607864}.catalog-pager>div{display:flex;gap:12px;align-items:center}.item-group{color:#54724b}.group-directory>div{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #e4eadd;padding:14px 0}.group-directory{margin-top:22px}.group-directory strong{font-size:14px}#group-form .item-actions{margin-top:16px}@media(max-width:850px){.catalog-filters{grid-template-columns:1fr 1fr}.catalog-pager{align-items:flex-start;flex-direction:column}.title:has(.item-actions){flex-wrap:wrap}}@media(max-width:500px){.catalog-filters{grid-template-columns:1fr}.bulk-group label{width:100%}.catalog-pager>div{gap:6px}.catalog-pager button{padding:9px}}

.group-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.group-tile{position:relative;aspect-ratio:1;border:1px solid #dce3d7;background:#fff;border-radius:16px;overflow:hidden}.group-tile.chosen{border:2px solid #47724e;background:#f0f5e9}.group-open{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:30px 12px 15px}.group-open strong{font-size:16px;overflow-wrap:anywhere;line-height:1.2}.group-open img{width:55%;height:50%;object-fit:contain;border-radius:8px}.group-drawing{font-size:42px;line-height:1.2}.group-drawing:empty{display:none}.group-pencil{position:absolute;top:5px;right:5px;background:transparent;border:1px solid transparent;font-size:22px;padding:3px 9px}.new-group-tile{background:#e8eae6;border:2px dashed #cbd0c5;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#72806d}.new-group-tile>span{font-size:66px;font-weight:300;line-height:1}.new-group-tile small{color:#65745e;font-size:13px}.organize-legacy{font-size:12px;text-decoration:underline;margin-bottom:16px}#image-preview img{width:100px;height:100px;object-fit:contain;margin:12px 0}.group-items-editor{border-top:1px solid #dce3d7;margin-top:24px;padding-top:16px}.group-item-list>div,.existing-row{display:flex;gap:12px;justify-content:space-between;align-items:center;border-bottom:1px solid #e4e9df;padding:14px 0;font-size:14px}@media(min-width:1400px){.group-tiles{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:650px){.group-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.group-open strong{font-size:14px}}

dialog.tile-dialog{width:min(1180px,94vw)}.item-tile{background:#edf0ed}.item-tile .group-drawing{font-size:24px;color:#95a097}.tile-dialog .group-tiles{margin-top:20px}.item-tile .group-open strong{overflow-wrap:anywhere}

.sale-groups{min-height:40vh;margin-bottom:24px}.checkout-card{max-width:850px;margin:auto}.customer-match{display:flex;width:100%;gap:20px;text-align:left;border-bottom:1px solid #dbe2d8;border-radius:0;padding:15px}.customer-match span{overflow-wrap:anywhere}#customer-matches{max-height:300px;overflow:auto}.selected-customer{background:#edf3e7;border-radius:10px;padding:15px;margin:20px 0}.tile-dialog #close{font-size:15px}

.digital-tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:18px 0}.digital-tiles button{min-height:90px;border:2px solid #dbe2d8;background:#f0f3ee}.digital-tiles button[aria-pressed="true"]{border-color:#28573e;background:#dce8ce}

.ingredient-search{display:flex;align-items:end;gap:12px}.ingredient-search label{flex:1}.ingredient-search button{height:43px;font-size:24px}#chosen-ingredients{max-height:280px;overflow:auto}

.group-tile[aria-pressed="true"]{background:#dce8ce;border:2px solid #28573e}
.compact-tiles{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.compact-tiles .group-tile{aspect-ratio:auto;min-height:120px;padding:14px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:8px}.compact-tiles .new-group-tile>span{font-size:38px}.compact-tiles label.group-tile:has(input:checked){border:2px solid #28573e;background:#dce8ce}.compact-tiles label.group-tile input{width:auto}
.loyalty-type-tiles{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.loyalty-type-tiles .group-tile{aspect-ratio:auto;min-height:230px;height:auto;overflow:visible;padding:22px 18px;gap:12px}.loyalty-type-tiles .group-tile small{font-size:14px;line-height:1.45;color:#52604f;white-space:normal;overflow-wrap:anywhere}.loyalty-type-tiles .group-tile strong{line-height:1.3}.loyalty-type-tiles .new-group-tile>span{font-size:48px}

.continue-sale{margin-top:24px;position:sticky;bottom:0}.kitchen-option{margin:24px 0;padding:16px;border:1px solid #dbe2d8;border-radius:10px}.kitchen-ticket{margin-top:30px;border-top:3px solid #222;padding-top:20px;color:#000}.kitchen-ticket h2{font-size:24px}.kitchen-line{border-bottom:2px solid #333;padding:15px 0;break-inside:avoid}.kitchen-line h3{font-size:21px;margin:0 0 10px}.kitchen-variant,.kitchen-line li{font-size:18px;font-weight:700}.kitchen-note{white-space:pre-wrap;overflow-wrap:anywhere;font-size:18px}.handwritten-note{overflow:hidden;min-height:80px}@media print{.kitchen-ticket{break-before:page;margin:0;border:0}.kitchen-ticket h2{font-size:24px}.kitchen-line h3{font-size:21px}}
.purchase-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:22px}.purchase-stats article{margin:0}.purchase-stats strong{display:block;font-size:25px;margin-top:10px}.purchase-line{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:10px;border-bottom:1px solid #dbe2d8;padding:12px 0}.purchase-line>div{grid-column:1/-1;display:flex;align-items:center;gap:15px;justify-content:flex-end}.purchase-line input{min-width:0}#purchase-fields{border:0;padding:0;margin:0;min-width:0}#purchase-fields textarea,.purchase-cancel textarea{width:100%;min-height:70px;font:inherit;border:1px solid #dbe2d8;border-radius:7px;padding:10px}.purchase-notes{white-space:pre-wrap}.purchase-cancel{margin-top:24px}.purchase-cancel summary{cursor:pointer}#purchase-discard{margin-top:12px}@media(max-width:650px){.purchase-stats{grid-template-columns:1fr}.purchase-line{grid-template-columns:1fr 1fr}}@media print{.purchase-cancel{display:none}}
.stats-tabs,.stats-actions{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin:20px 0}.stat-card{background:#fff;border:1px solid #dbe6df;border-radius:14px;padding:22px;display:flex;flex-direction:column;gap:10px}.stat-card strong{font-size:25px;color:#164d35}.stat-card small{color:#617268}.stats-controls{margin-bottom:18px}#stats-body article{margin:20px 0}#stats-body td{vertical-align:top}#stats-body th{white-space:nowrap}.entry-line{padding:16px;border:1px solid #dbe6df;border-radius:10px;margin:12px 0}#stats-body p,#stats-body li{line-height:1.7}#stats-body a{color:#17623f}

.group-pencil{background:transparent;border:1px solid #829687;box-shadow:none;transition:background-color .15s,border-color .15s,box-shadow .15s;color:#28573e}.group-pencil:hover,.group-pencil:focus-visible{background:rgba(220,232,206,.88);border-color:#28573e;box-shadow:0 0 0 2px rgba(40,87,62,.18);filter:none}.group-pencil:active{background:#c7dcbc;border-color:#173e31;box-shadow:inset 0 1px 3px #173e3130}
.group-copy{position:absolute;top:7px;right:48px;z-index:2;background:transparent;border:1px solid #829687;color:#28573e;box-shadow:none;border-radius:6px;font-size:17px;line-height:1;padding:6px 7px;opacity:.78;transition:background-color .15s,border-color .15s,box-shadow .15s,transform .15s,opacity .15s}.group-copy:hover,.group-copy:focus-visible{background:rgba(220,232,206,.88);border-color:#28573e;box-shadow:0 0 0 2px rgba(40,87,62,.18);opacity:1;transform:scale(1.08)}
/* Análisis comercial: mismo verde y superficies del resto del POS. */
.period-shortcuts,.analysis-shortcuts,.analysis-pagination{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:12px 0 20px}.period-shortcuts button{padding:9px 12px;font-size:12px}.analysis-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;align-items:end;margin:16px 0}.analysis-fields input,.analysis-fields select{width:100%;min-width:0}.analysis-controls p{margin:12px 0}.analysis-pagination{justify-content:space-between;margin-top:20px}.analysis-bars{display:grid;gap:10px;margin:20px 0}.analysis-bar{display:grid;grid-template-columns:minmax(90px,160px) minmax(80px,1fr) minmax(90px,160px);gap:14px;align-items:center;font-size:13px}.analysis-bar b{text-align:right;overflow-wrap:anywhere}.analysis-bar meter{width:100%;height:18px;border:0;border-radius:8px;background:#e8eee8}.analysis-bar meter::-webkit-meter-bar{background:#e8eee8;border:0;border-radius:8px}.analysis-bar meter::-webkit-meter-optimum-value{background:#28573e;border-radius:8px}.analysis-bar meter::-moz-meter-bar{background:#28573e}.analysis-bar.negative{color:#963b32}.analysis-bar.negative meter::-webkit-meter-optimum-value{background:#b05a4c}.analysis-bar.negative meter::-moz-meter-bar{background:#b05a4c}.activity-map{min-width:1100px}.activity-map td,.activity-map th{padding:5px!important;text-align:center}.activity-map th:first-child{text-align:left}.heat-cell{width:100%;min-width:38px;min-height:38px;border:1px solid #dbe6df;border-radius:6px;padding:5px;font-size:12px}.heat-cell.level-0{background:#f3f5f1;color:#6e7c70}.heat-cell.level-1{background:#deead7;color:#173e31}.heat-cell.level-2{background:#a9c39b;color:#173e31}.heat-cell.level-3{background:#5a8966;color:#fff}.heat-cell.level-4{background:#1b4b36;color:#fff}.heat-cell.pending{background:#f6ebd3;color:#765a1c}.heat-cell.loss{background:#f0d8d3;color:#852f26}.heat-cell:focus-visible{outline:3px solid #315d3b;outline-offset:2px}.stat-card strong{overflow-wrap:anywhere}#analysis-results .stat-card strong{font-size:21px}#analysis-results details{margin:18px 0}#analysis-results summary{cursor:pointer;color:#28573e;font-weight:600}#analysis-results table{font-size:13px}#analysis-results td{max-width:230px;overflow-wrap:anywhere}
@media(max-width:650px){.analysis-fields{grid-template-columns:1fr}.analysis-bar{grid-template-columns:90px minmax(50px,1fr) 100px;gap:8px;font-size:12px}.analysis-pagination{justify-content:flex-start}.period-shortcuts{gap:5px}}
@media print{.analysis-controls,.analysis-shortcuts,.analysis-pagination,.period-shortcuts{display:none}.activity-map{min-width:0}.heat-cell{min-width:0;font-size:9px}.analysis-bars{break-inside:avoid}}
.analysis-fields label{margin:0}.analysis-controls .analysis-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.analysis-controls .analysis-fields label:first-child{grid-column:span 2}.ranking-product{font-size:inherit;padding:0;text-align:left;color:#28573e;line-height:1.5;text-decoration:underline;text-underline-offset:3px}.activity-map{min-width:0}.activity-map th{min-width:48px}.activity-map th:first-child{min-width:95px}@media(max-width:650px){.analysis-controls .analysis-fields{grid-template-columns:1fr 1fr}.analysis-controls .analysis-fields label:first-child{grid-column:1/-1}.analysis-controls .analysis-fields label:nth-child(3){grid-column:1/-1}}
.stats-sections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 24px}.stats-section{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:9px;min-height:110px;text-align:left;padding:22px 24px;background:#fff;border:2px solid #dce5d8;border-radius:14px;transition:background-color .15s,border-color .15s}.stats-section strong{font-size:25px;font-weight:650;color:#173e31}.stats-section span{font-size:13px;line-height:1.4;color:#687e6e}.stats-section:hover{background:#edf3e7;border-color:#779a79}.stats-section.selected{background:#173e31;border-color:#173e31}.stats-section.selected strong{color:#fff}.stats-section.selected span{color:#dce8ce}.stats-section:focus-visible{outline:3px solid #96b89c;outline-offset:3px}.stats-tabs[hidden]{display:none}@media(max-width:650px){.stats-sections{gap:8px}.stats-section{padding:14px 10px;min-height:94px;gap:6px}.stats-section strong{font-size:19px}.stats-section span{font-size:11px}}@media print{.stats-sections{display:none}}

[hidden]{display:none!important}.auth-card{max-width:520px;margin:40px auto}.permissions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.permissions-grid .profile-check{align-items:start}header{gap:12px}header .badge{margin-left:auto}
.auth-tabs{display:flex;gap:12px;margin-bottom:24px}.auth-tabs button{flex:1}.remember-options{border:1px solid #d6dfd9;border-radius:12px;padding:14px;margin:18px 0}.remember-options legend{font-weight:600;padding:0 6px}.remember-options .profile-check{margin:10px 0}.auth-card .outline.wide{margin-top:12px}.auth-card{margin:24px auto}.auth-card input[readonly]{background:#f2f5f3}

 .tile-delete{position:absolute;bottom:6px;right:7px;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:4px;border:0!important;border-radius:0;background:transparent!important;color:#7c8483;box-shadow:none!important;z-index:2;transition:color .15s,transform .15s}
.tile-delete:not(:disabled):hover,.tile-delete:not(:disabled):focus-visible{color:#b32929;transform:scale(1.2)}
.tile-delete:disabled{opacity:.45;cursor:default;transform:none;color:#7c8483}
.form-delete{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:5px;border:0!important;background:transparent!important;color:#7c8483;box-shadow:none!important;cursor:pointer;transition:color .15s,transform .15s}
.form-delete:hover,.form-delete:focus-visible{color:#b32929;transform:scale(1.2)}
.group-tile:has(.tile-delete){padding-bottom:28px}
.group-tile strong,.group-tile small{white-space:normal;overflow-wrap:anywhere;text-wrap:balance}.group-open{min-height:0}.permission-library .group-tiles{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.permission-library .group-tile{aspect-ratio:auto;min-height:172px;padding:17px 14px;overflow:visible}.permission-library .group-tile small{max-width:100%;font-size:13px;line-height:1.35;text-align:center}.permission-library .group-tile>span{flex:0 0 auto}.permission-library .permission-icon{display:flex;align-items:center;justify-content:center;height:52px;color:#52735a}.permission-library .permission-icon svg{width:46px;height:46px}.permission-library .group-tile[aria-pressed="true"] .permission-icon{color:#244e31}.permission-library .group-tile[aria-pressed="true"] .permission-icon:not(:has(svg)){font-size:38px;font-weight:700}
.nav-option-tile:has(.nav-option-actions){padding-bottom:68px}.nav-option-tile:has(.nav-option-actions) .group-open{height:calc(100% - 58px)}.nav-option-actions{position:absolute;bottom:9px;left:9px;right:9px;display:grid;gap:5px}.nav-option-actions button{min-height:25px;padding:4px 7px;font-size:11px;line-height:1.15}.nav-disable{border:0;background:transparent;color:#667269}.nav-disable:hover,.nav-disable:focus-visible{color:#a12a2a;text-decoration:underline}

.permissions-grid[hidden]{display:none}
.gid-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.gid-summary span{background:#f0f5ec;border:1px solid #d8e4d4;border-radius:10px;padding:15px;text-align:center;font-size:12px}.gid-summary strong{display:block;color:#244e31;font-size:24px;margin-bottom:5px}#gid-back{margin-top:12px}@media(max-width:500px){.gid-summary{grid-template-columns:1fr}}
.gid-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:16px 0 28px}.gid-actions button{min-height:92px;text-align:left;border:1px solid #d8e4d4;background:#f5f8f1;padding:16px}.gid-actions button:hover{border-color:#487250;background:#e8f1e2}.gid-actions strong{display:block;font-size:15px;color:#244e31}.gid-actions small{line-height:1.4}
.gid-decision{margin:24px 0;padding-top:18px;border-top:1px solid #dce5d8}.gid-action-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.gid-action-tabs button{text-align:left;min-height:105px;border:2px solid #dce5d8;background:#fff;padding:15px}.gid-action-tabs button[aria-pressed="true"]{border-color:#28573e;background:#e8f1e2;box-shadow:0 0 0 2px #28573e22}.gid-action-tabs strong{display:block;color:#244e31;font-size:14px}.gid-action-tabs small{line-height:1.45}

.sale-counter{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:5px 28px 5px 0}.sale-counter button{border:0;background:transparent;font-size:20px;padding:3px 8px}.sale-counter output{font-weight:700;font-size:17px}

.sale-tile-wrapper{min-width:0;align-self:start}.sale-tile-wrapper>.group-tile{width:100%}.sale-tile-wrapper>.sale-counter{margin-top:6px;padding:3px 0;min-height:38px}.sale-counter button:hover{background:#e8eee6}.sale-counter output{min-width:24px;text-align:center}

.cart-quantity{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.cart-quantity button{min-width:32px;height:34px;padding:3px 8px;font-size:20px;border:1px solid #dce3d7;background:#f3f5f1}.cart-quantity .qty{width:66px;text-align:center}.cart-quantity button:not(:disabled):hover{background:#dce8ce}

input.unit-display,input.unit-display:read-only{background:#fff!important;border:0;border-bottom:1px solid #b8c1b6;border-radius:0;box-shadow:none;cursor:default}.unit-picker-button{width:180px;aspect-ratio:auto;min-height:100px;padding:12px;margin:10px 0 18px;gap:5px}.unit-picker-button>span{font-size:28px}.unit-picker-button small{text-align:center}.group-open[data-unit][aria-pressed="true"]{background:#e4eddd}

/* Los registros creados comparten el crema; los controles de creación siguen grises. */
:root{--record-tile-cream:#f6f5e9}
.group-tile:not(.new-group-tile),.group-tile.new-group-tile[aria-pressed="true"]{background:var(--record-tile-cream)}
.group-tile:not(.new-group-tile)>.group-open{background:transparent}
.group-tile:not(.new-group-tile)>.group-open:hover{background:#efeddb}
.group-tile:not(.new-group-tile).chosen,.group-tile:not(.new-group-tile)[aria-pressed="true"]{background:var(--record-tile-cream);border-color:#47724e}
.group-open[data-unit][aria-pressed="true"]{background:var(--record-tile-cream);box-shadow:inset 0 0 0 2px #47724e}
.cash-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.cash-actions button{white-space:normal}.cash-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:20px 0}.cash-summary>div{background:#f0f5ec;border:1px solid #d8e4d4;border-radius:10px;padding:15px}.cash-summary span,.cash-summary strong{display:block}.cash-summary span{font-size:12px;color:#617268;margin-bottom:7px}.cash-summary strong{font-size:21px;color:#164d35}.cash-difference{font-weight:700;color:#28573e}#cash-open-form textarea,#cash-close-form textarea{width:100%;min-height:70px;font:inherit;border:1px solid #dbe2d8;border-radius:7px;padding:10px}@media(max-width:500px){.cash-actions{grid-template-columns:1fr}}
.cash-total{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#edf4e6;border:1px solid #cdddc8;border-radius:10px;padding:15px;margin:15px 0}.cash-total strong{font-size:22px;color:#164d35}.cash-denominations .cash-quantity{width:90px;margin:0;padding:8px;text-align:center}.cash-denominations td:nth-child(n+2),.cash-denominations th:nth-child(n+2){text-align:center}.cash-denominations td:first-child{white-space:nowrap}
.slip-actions{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.cash-slip{max-width:560px;margin:auto}@media print{.slip-actions,.cash-slip .cash-actions{display:none!important}.cash-slip{max-width:none}}
.delivery-panel{margin:24px 0;padding:17px;border:1px solid #d8e4d4;border-radius:12px;background:#f8faf6}.delivery-panel h3{margin:0}.delivery-channels{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.delivery-channels>div{border:1px solid #dce5d8;border-radius:10px;background:#fff;padding:14px}.delivery-channels strong{display:block;margin-bottom:4px}.delivery-channels select{margin:10px 0}.delivery-channels .check{margin:15px 0 0}.delivery-settings{margin-top:18px;border-top:1px solid #dce5d8;padding-top:16px}.delivery-settings textarea{width:100%;min-height:78px;margin-top:8px;padding:10px 12px;border:1px solid #dbe2d8;border-radius:7px;font:inherit;color:#203e31;resize:vertical}.delivery-settings label small{margin-top:5px}@media(max-width:500px){.delivery-channels{grid-template-columns:1fr}.delivery-panel .card-head{align-items:flex-start}.delivery-panel .card-head .outline{padding:8px;font-size:12px}}
/* Cámaras: inventario visual y revisión humana. */
.camera-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 24px}.camera-tabs button{border:1px solid #dce5d8;background:#fff;padding:18px;text-align:left;display:grid;gap:6px}.camera-tabs strong{font-size:17px}.camera-tabs small{font-size:12px;font-weight:400;color:#718078}.camera-tabs .selected{background:#173e31;color:#fff;border-color:#173e31}.camera-tabs .selected small{color:#dce8ce}.camera-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.camera-metrics article{display:grid;gap:9px}.camera-metrics span{font-size:13px;color:#667b6e}.camera-metrics strong{font-size:32px;font-weight:600}.camera-metrics small{font-size:12px;color:#718078}.camera-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.camera-head{align-items:flex-start}.camera-head h2{margin-bottom:8px}.camera-info{background:#eff4ea;border:1px solid #dce5d8;border-radius:9px;padding:14px 16px;margin:16px 0;color:#48624f;font-size:13px;line-height:1.65}.camera-filters{display:grid;grid-template-columns:minmax(180px,1fr) minmax(150px,220px) auto;gap:16px;align-items:end;margin:20px 0}.camera-filters label{margin:0}.camera-filters select{width:100%}.camera-state{display:inline-block;padding:5px 9px;border-radius:20px;font-size:11px;font-weight:650;line-height:1.4;background:#edf0ed;color:#5f7066}.camera-state.pending{background:#f5eddb;color:#806327}.camera-state.approved{background:#e7f0df;color:#3e6639}.camera-state.rejected{background:#efefed;color:#697269}#cameras-workspace td small{display:block;color:#718078;font-size:11px;margin-top:5px;line-height:1.4}.camera-pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:20px;font-size:12px}.camera-pagination span{margin-right:auto}.camera-empty{text-align:center;padding:42px 18px}.camera-empty>span{font-size:36px;color:#91a98f;display:block;margin-bottom:18px}.camera-empty h2{margin-bottom:12px}.camera-empty p{color:#718078;font-size:14px;max-width:460px;margin:auto;line-height:1.6}.camera-device-grid,.camera-example-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}.camera-device{border:1px solid #dde5d8;border-radius:12px;padding:20px;display:grid;grid-template-columns:48px 1fr;gap:16px;align-items:start}.camera-device h3{font-size:17px;margin:0 0 8px}.camera-device p{margin:6px 0 12px}.camera-device>button{grid-column:1/-1}.camera-device-icon{background:#edf3e7;color:#426448;border-radius:12px;padding:8px;text-align:center;font-size:26px}.camera-dialog{width:min(820px,calc(100% - 28px));max-height:90vh;padding:26px;border-radius:15px}.camera-dialog .card-head h2{margin-bottom:0;font-size:21px}.camera-dialog textarea{width:100%;min-height:85px;border:1px solid #d8e0d4;border-radius:7px;padding:11px;font:inherit;resize:vertical;margin-top:8px}.camera-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.camera-form-grid label{min-width:0}.camera-dialog select{width:100%;max-width:100%}.camera-capture{padding:18px;background:#f4f6f0;border-radius:10px;margin:20px 0}.camera-capture video,.camera-capture img{width:100%;max-height:320px;object-fit:contain;background:#182b23;border-radius:8px;margin-bottom:14px}.camera-capture [hidden]{display:none}.camera-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px}.camera-evidence{width:100%;height:230px;object-fit:contain;background:#edf1e9;border-radius:10px}.camera-no-image{height:180px;display:grid;place-items:center;background:#f2f4ed;border-radius:10px;color:#81907f;font-size:13px}.camera-history{margin-top:24px;border-top:1px solid #dce5d8;padding-top:18px;font-size:13px}.camera-history summary{cursor:pointer}.camera-history p{border-left:2px solid #d6e2ce;padding-left:12px;line-height:1.7}.camera-proposal{border:1px solid #aac49a;background:#f1f6ec;border-radius:10px;padding:20px;margin-top:20px}.camera-proposal p{font-size:13px;line-height:1.6}.camera-balance{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.camera-balance div{padding:14px 10px;background:#fff;border-radius:8px;font-size:12px}.camera-balance strong{display:block;font-size:23px;margin-top:7px;overflow-wrap:anywhere}.camera-example{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:10px;border:1px solid #dce5d8;background:#fafbf7;padding:22px}.camera-example strong{font-size:18px}.camera-example small{font-weight:400;color:#718078}.camera-capabilities p{display:grid;grid-template-columns:190px 1fr;gap:20px;border-bottom:1px solid #edf0e9;padding-bottom:18px;font-size:13px;line-height:1.7}.camera-dialog [role=alert]{line-height:1.5}.camera-dialog .wide{margin-top:14px}
@media(max-width:1000px){.camera-tabs{grid-template-columns:1fr 1fr}.camera-head{flex-direction:column}.camera-device-grid{grid-template-columns:1fr}}
@media(max-width:650px){.camera-tabs{gap:8px}.camera-tabs button{padding:14px 12px}.camera-tabs strong{font-size:15px}.camera-tabs small{font-size:11px}.camera-metrics{gap:8px}.camera-metrics article{padding:14px 10px;gap:7px}.camera-metrics small{display:none}.camera-metrics strong{font-size:27px}.camera-metrics span{font-size:11px}.camera-filters{grid-template-columns:1fr 1fr;gap:10px}.camera-filters label:first-child{grid-column:1/-1}.camera-form-grid,.camera-review-grid,.camera-example-grid{grid-template-columns:1fr}.camera-dialog{padding:18px}.camera-capabilities p{grid-template-columns:1fr;gap:8px}.camera-balance strong{font-size:18px}.camera-pagination{flex-wrap:wrap}}
.camera-live{background:#172d23;border-radius:12px;min-height:260px;display:grid;place-items:center;margin-top:22px;overflow:hidden}.camera-live img{width:100%;max-height:440px;object-fit:contain}.camera-live p{color:#d9e6d2;font-size:13px;padding:12px 20px;text-align:center}.camera-device>.camera-actions{grid-column:1/-1}.camera-dialog details{margin-top:20px;font-size:13px}.camera-dialog details summary{cursor:pointer}
.sale-cash-tools{background:#f1f5ec}.sale-cash-tools h2{margin-bottom:6px}.sale-cash-tools p{font-size:13px;color:#526c59;margin:0 0 12px}.sale-cash-tools .cash-actions{margin-bottom:0;flex-wrap:wrap}@media print{.delivery-panel{display:none!important}}
.data-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:20px 0;font-size:13px}.data-pagination span{color:#526c59}@media print{.data-pagination{display:none!important}}

/* Local continuity: persistent status and compact essential navigation. */
.continuity-banner{position:relative;background:#f0f6f2;border:1px solid #c9dcd1;border-radius:9px;margin:8px 0}.continuity-summary{width:100%;min-height:44px;display:flex;align-items:center;gap:8px;padding:8px 11px;text-align:left;font-size:13px;border-radius:inherit}.continuity-indicator{flex:none;width:7px;height:7px;border-radius:50%;background:#397955}.continuity-caption{flex:1;min-width:0;line-height:18px;font-weight:600}.continuity-more{flex:none;font-size:12px;color:#386044;white-space:nowrap}.continuity-review{flex:none;font-size:11px;line-height:18px;padding:1px 7px;border-radius:12px;background:#f4e5b7;color:#765812;white-space:nowrap}.continuity-banner.has-review{background:#fff9e9;border-color:#dfd0a6}.continuity-banner.has-review .continuity-indicator{background:#a47a20}.continuity-banner.is-unavailable{background:#fcf0eb;border-color:#e4c3b7}.continuity-banner.is-unavailable .continuity-indicator{background:#a84c35}
.continuity-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.lite-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.lite-menu button{padding:24px;font-size:18px;text-align:left}.lite-mode .tile-image{display:none}.purchase-images{border-top:1px solid #ddd;margin-top:18px;padding-top:12px}.lite-mode *{animation:none!important;transition:none!important}
@media(max-width:700px){.continuity-summary{font-size:12px;padding:7px 9px;gap:6px}.continuity-caption{max-height:36px;overflow:hidden}.lite-menu{grid-template-columns:1fr}.continuity-actions button{flex:1}}
@media print{.continuity-banner,.purchase-images{display:none!important}}

.lite-mode .group-pencil,.lite-mode .group-copy,.lite-mode .tile-delete,.lite-mode #new-group,.lite-mode #tile-new,.lite-mode #organize-legacy,.lite-mode .group-open img{display:none!important}



.purchase-images li{display:flex;align-items:center;gap:12px;margin:10px 0}.purchase-images img{object-fit:contain;border:1px solid #ddd;border-radius:6px}

.billing-panel{border:2px solid #d9b577;background:#fffaf0}.billing-mode h2{margin-bottom:14px}.billing-mode p{line-height:1.6}.non-fiscal-notice{font-weight:700;border:2px solid #805411;padding:12px;color:#513400;background:#fff6dd;overflow-wrap:anywhere}@media print{.non-fiscal-notice{color:#000;background:#fff;border:2px solid #000;font-size:12px;break-inside:avoid}}

/* Nómina */
.payroll-tabs{display:flex;gap:7px;overflow-x:auto;margin:-8px 0 22px;padding:7px 0}.payroll-tabs button{border:1px solid #dbe3d8;background:#fff;white-space:nowrap;font-size:14px}.payroll-tabs button[aria-selected=true]{background:#28573e;color:#fff;border-color:#28573e}.payroll-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.payroll-metrics article{margin:0;padding:19px}.payroll-metrics small{margin:0 0 12px;font-size:12px}.payroll-metrics strong{display:block;font-size:21px;line-height:1.2}.payroll-next{display:flex;align-items:center;justify-content:space-between;gap:20px;border-left:5px solid #96b89c}.payroll-next h2{margin-bottom:7px}.payroll-next p{margin:0;color:#64756a}.payroll-actions{display:flex;gap:8px;flex-wrap:wrap}.payroll-status{display:inline-block;padding:5px 9px;border-radius:15px;background:#f0ecde;color:#776640;font-size:12px}.payroll-status.approved{background:#e8f1e2;color:#3a642e}.payroll-event-grid{display:grid;grid-template-columns:1.2fr 1.1fr .7fr 1fr;gap:12px;align-items:end}.payroll-event-grid label{margin:0}.payroll-event-grid .payroll-note{grid-column:span 3}.payroll-events{border-top:1px solid #edf0e9;margin-top:20px}.payroll-events>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 4px;border-bottom:1px solid #edf0e9;font-size:13px}.payroll-events button{font-size:20px;color:#9a3d28}.payroll-approve{margin-top:18px}.payroll-legal{line-height:1.55}.payroll-legal.notice{font-size:13px}
@media(max-width:900px){.payroll-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-event-grid{grid-template-columns:1fr 1fr}.payroll-event-grid .payroll-note{grid-column:span 1}}
@media(max-width:650px){.payroll-metrics{grid-template-columns:1fr 1fr;gap:8px}.payroll-metrics article{padding:14px}.payroll-metrics strong{font-size:16px}.payroll-next{align-items:stretch;flex-direction:column}.payroll-event-grid{grid-template-columns:1fr}.payroll-event-grid .payroll-note{grid-column:auto}.payroll-tabs{margin-top:-2px}.payroll-tabs button{font-size:13px;padding:9px 11px}}
.payroll-rates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;margin-bottom:18px}.payroll-receipt td:last-child{text-align:right}.payroll-receipt h3{font-size:20px;border-top:1px solid #dfe5dc;padding-top:16px}@media(max-width:650px){.payroll-rates{grid-template-columns:1fr}}@media print{.payroll-receipt{display:block}.payroll-receipt table{font-size:13px}}
.payroll-advanced-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:20px}.payroll-advanced-grid article{min-width:0}.payroll-attendance-form,.payroll-loan-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px;margin:20px 0}.payroll-attendance-form label,.payroll-loan-form label{margin:0}.payroll-attendance-form .payroll-note{grid-column:span 2}.payroll-variance{background:#fff5e5}.payroll-advanced-grid input[type=file]{margin:12px 8px 12px 0}@media(max-width:1050px){.payroll-advanced-grid{grid-template-columns:1fr}.payroll-attendance-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.payroll-attendance-form,.payroll-loan-form{grid-template-columns:1fr}.payroll-attendance-form .payroll-note{grid-column:auto}}
.payroll-electronic-banner{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;margin-bottom:16px;border:2px solid #c99838;border-radius:14px;background:#fff9e8}.payroll-electronic-banner p{margin:5px 0 0}.payroll-connector{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.payroll-connector span{padding:14px;border-radius:10px;background:#eef3ed;font-size:13px}.payroll-xml{max-height:62vh;overflow:auto;white-space:pre-wrap;word-break:break-word;background:#17221d;color:#e8f4eb;padding:16px;border-radius:10px;font-size:12px}.payroll-status.connection_pending{background:#fff0cf;color:#7b5414}.payroll-status.validated{background:#dff2e2;color:#245a32}.payroll-status.rejected{background:#f9dddd;color:#812d2d}@media(max-width:750px){.payroll-electronic-banner{align-items:flex-start;flex-direction:column}.payroll-connector{grid-template-columns:1fr 1fr}}

.gid-reading-complete{text-align:center;padding:34px 18px 18px}.gid-reading-complete h2{font-size:24px;margin:18px 0 8px}.gid-reading-complete>p{color:#64756a;line-height:1.6}.gid-ok{width:82px;height:82px;margin:auto;border-radius:50%;display:grid;place-items:center;background:#2f704b;color:#fff;font-size:48px;font-weight:750;box-shadow:0 0 0 10px #e8f1e2;animation:gid-ok-in .35s ease-out}.gid-complete-note{max-width:560px;margin:18px auto;padding:13px 16px;border-radius:9px;background:#f0ecde;color:#776640!important}.gid-complete-note.success{background:#e8f1e2;color:#3a642e!important}.gid-reading-complete .primary{margin-top:14px}@keyframes gid-ok-in{from{transform:scale(.65);opacity:0}to{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.gid-ok{animation:none}}
.gid-catalog-guide{margin:18px 0;padding:18px;border:1px solid #cfdccd;border-left:5px solid #2f704b;border-radius:10px;background:#f7f9f3}.gid-catalog-guide h3{margin:0 0 12px}.gid-catalog-guide ol{margin:0 0 14px;padding-left:22px;line-height:1.55}.gid-catalog-guide li+li{margin-top:7px}.gid-catalog-guide code{background:#e7eee4;padding:2px 5px;border-radius:4px}.gid-guide-table{margin:14px 0;background:#fff}.gid-guide-table table{min-width:1550px;font-size:12px}.gid-guide-table th{white-space:nowrap;background:#e7eee4}.gid-guide-table td:empty{background:#fff4db}.gid-guide-table td,.gid-guide-table th{padding:8px}
.gid-editor-dialog{width:calc(100vw - 28px);height:calc(100vh - 28px);max-height:none;padding:22px}.gid-editor{height:100%;display:flex;flex-direction:column;min-height:0}.gid-editor .card-head p{margin:5px 0 0;color:#718078;font-size:13px}.gid-paste-message{display:flex;justify-content:space-between;align-items:center;gap:18px;background:#173e31;color:#fff;border-radius:10px;padding:15px 18px;margin:16px 0 8px}.gid-paste-message strong{font-size:14px;letter-spacing:.3px}.gid-paste-message span{font-size:12px;color:#dce8ce}.gid-price-help{text-align:left;margin:8px 0}.gid-grid-toolbar{display:flex;align-items:center;gap:10px;margin:10px 0}.gid-grid-toolbar span{margin-left:auto;font-size:12px;color:#718078}.gid-catalog-grid{overflow:auto;flex:1;border:1px solid #dce5d8;border-radius:10px;background:#fff}.gid-catalog-grid table{min-width:2200px}.gid-catalog-grid th{position:sticky;top:0;z-index:1;background:#eef3e9}.gid-catalog-grid td{padding:4px;border-right:1px solid #edf0e9}.gid-catalog-grid input{margin:0;padding:8px;min-width:125px;border-radius:4px}.gid-catalog-grid th:nth-child(2),.gid-catalog-grid th:nth-child(4),.gid-catalog-grid th:nth-child(6),.gid-catalog-grid th:nth-child(11),.gid-catalog-grid th:nth-child(13){background:#dfeadb}.gid-row-number{position:sticky;left:0;background:#f7f9f3;text-align:center;color:#718078;min-width:38px}.gid-remove-row{color:#a13d2d;font-size:20px;padding:5px 9px}.gid-editor>#gid-process-grid{margin-top:12px}@media(max-width:650px){.gid-editor-dialog{width:100vw;height:100vh;padding:12px}.gid-paste-message{align-items:flex-start;flex-direction:column}.gid-catalog-grid table{min-width:2100px}}
.gid-product-grid table{min-width:2350px}.gid-recipe-cell{min-width:570px;vertical-align:top}.gid-recipe-builder{display:grid;gap:5px}.gid-recipe-list{display:grid;gap:5px}.gid-ingredient-line{display:grid;grid-template-columns:minmax(150px,1.4fr) 90px 90px 110px 32px;gap:5px;align-items:center;background:#f4f7f1;border-radius:6px;padding:4px}.gid-ingredient-line input{min-width:0!important;width:100%}.gid-ingredient-line button{padding:5px;color:#a13d2d;font-size:18px}.gid-recipe-actions{display:flex;align-items:center;gap:8px}.gid-recipe-actions button{padding:7px 10px}.gid-recipe-actions small{margin:0}.gid-recipe-count{color:#426448}.gid-recipe-cell>textarea[hidden]{display:none}
:root{--table-cream:#f4f1e5}
.table-actions,.table-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.table-toolbar{margin-bottom:22px}.table-toolbar label{margin:0;min-width:150px}.table-toolbar #table-sync{font-size:12px;color:#52604f}.table-actions button,.tables-dialog button,.dining-table button{min-height:44px}.dining-table{min-height:210px;aspect-ratio:auto;background:var(--table-cream)}.dining-table .group-open{padding:25px 10px 18px}.dining-table.occupied{border:2px solid #47724e;background:#eaf0e3}.dining-table.dirty{background:#f3eddb}.dining-table.disabled{background:#e8eae6;color:#65745e}.dining-table.round{border-radius:35px}.table-plan{position:relative;min-height:750px;width:1050px;max-width:none;margin-bottom:24px}.table-plan .dining-table{position:absolute;width:135px;min-height:90px;height:auto}.table-plan .dining-table .group-open{gap:3px;padding:20px 6px 10px}.table-plan .dining-table .group-open strong{font-size:14px}.table-plan .dining-table small{font-size:10px;margin:0}.table-plan .dining-table .tag{padding:3px;font-size:10px}.table-service-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:22px}.table-service-grid article{min-width:0}.table-service-grid td{padding:12px 8px}.table-service-grid .group-tiles{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.table-service-grid .group-tile{min-height:120px}.table-cancelled{opacity:.65;text-decoration:line-through}.table-close{margin:25px 0 16px;padding-top:15px;border-top:1px solid #dce3d7}.kitchen-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:18px}.kitchen-board .kitchen-line{border-top:1px solid #dce3d7;padding:12px 0}.kitchen-board .kitchen-line button{display:block;background:#28573e;color:white;margin-top:10px;min-height:44px}.tables-dialog textarea{width:100%;min-height:75px;font:inherit;border:1px solid #dbe2d8;border-radius:7px;padding:10px}.tables-dialog .check{margin:15px 0;min-height:35px}.tables-dialog .check input{width:20px;height:20px;margin:0}.table-balance{font-size:20px}.table-print p{overflow-wrap:anywhere}.tables-dialog .billing-mode{margin:16px 0}.table-service-grid details{margin-top:20px}
@media(max-width:1000px){.table-service-grid{grid-template-columns:1fr}.table-toolbar{align-items:stretch}.table-plan{transform-origin:top left}}
@media print{body:has(.tables-dialog[open]) main,body:has(.tables-dialog[open]) aside{display:none!important}.tables-dialog[open]{position:absolute;inset:0;border:0;width:100%;max-height:none;overflow:visible}.tables-dialog[open] .card-head,.tables-dialog[open] button,.tables-dialog[open] #table-form-error{display:none!important}.table-print{display:block}}

@media(max-width:650px){#content:has(#table-board) .title,#content:has(.table-service-grid) .title,#content:has(.kitchen-board) .title{flex-direction:column}#content:has(#table-board) .title .table-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.table-service-grid .table-actions{gap:8px}.table-service-grid .table-actions button{white-space:normal}.table-service-grid th,.table-service-grid td{font-size:12px}}

/* Vision teaching canvas follows the source aspect ratio. */
#camera-panel canvas[data-canvas]{display:block;max-width:100%;height:auto;touch-action:none;cursor:crosshair;border:2px solid #18bf9b;margin:12px 0} #camera-panel details{margin:18px 0} #camera-panel details summary{cursor:pointer;font-weight:700;margin:12px 0} #camera-panel details textarea{display:block;width:100%;box-sizing:border-box} #camera-panel details pre{white-space:pre-wrap;overflow-wrap:anywhere} #camera-panel [data-zone-tools][hidden],#camera-panel [data-object-tools][hidden],#camera-panel [data-editor][hidden]{display:none}

.vision-studio canvas{display:block;max-width:100%;height:auto;touch-action:none;cursor:crosshair;border:2px solid #18bf9b;margin:12px 0}.vision-studio details{margin:24px 0}.vision-studio summary{cursor:pointer;font-weight:700;margin:16px 0}.vision-studio label{display:block;margin:14px 0}.vision-studio textarea{display:block;width:100%;padding:12px;box-sizing:border-box;font:inherit;border:1px solid #cfdccd;border-radius:8px}.vision-studio button{margin:4px}.vision-studio pre{white-space:pre-wrap;overflow-wrap:anywhere}.vision-studio [hidden]{display:none!important}

.vision-library{border:1px solid #cfdccd;padding:18px;border-radius:12px;margin:20px 0}.vision-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.vision-library-card{display:flex;flex-direction:column;gap:6px;text-align:left;border:1px solid #cfdccd;border-radius:10px;padding:10px;background:white;color:#173f35;cursor:pointer}.vision-library-card img{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#122720}.vision-library-card:hover{border-color:#18bf9b}.vision-library [role=alert]{color:#a42525}

.vision-case-canvas{display:block;width:100%;height:auto;touch-action:none}


.vision-boundary-canvas{position:relative;width:100%;max-width:960px}.vision-boundary-image{display:block;width:100%;height:auto}.vision-boundary-overlay{position:absolute;inset:0;width:100%;height:100%}.vision-boundary-draw{cursor:crosshair;touch-action:none}.vision-boundary-event{display:block;margin:8px 0}.camera-dialog fieldset img{width:100%;height:auto;max-width:960px}

.camera-fds-tabs{grid-column:1/-1}.camera-fds-tabs [aria-selected="true"]{background:#173e31;color:#fff}
.cancelled-sale{opacity:.66}.cancelled-sale td{text-decoration:none}.cancelled-notice{background:#fbe5e3;border-color:#b44;color:#741f1f}

.user-permissions summary{cursor:pointer;color:#355748}.user-permissions ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px 20px;list-style:none;padding:12px 0 0;font-size:13px;line-height:1.5}
