
.pricing-table-wrap{overflow:auto}.pricing-table{width:100%;border-collapse:collapse}.pricing-table th,.pricing-table td{padding:12px 8px;text-align:right;border-bottom:1px solid #e1e7ec}.pricing-table th:first-child,.pricing-table td:first-child{text-align:left}.pricing-table th{font-size:12px;color:#627585;background:#f5f7f9}.pricing-table small{display:block;color:#627585}.pricing-table button,.pricing-adjustments button{padding:4px 10px}.pricing-adjustments>div{display:flex;gap:12px;align-items:center;padding:12px 0;color:#37802a}.pricing-adjustments span{flex:1}.pricing-summary{background:#f5f8fa;padding:18px;margin-top:16px;border-radius:12px}.pricing-summary>div{display:flex;justify-content:space-between;gap:16px;padding:6px 0}.discount-value{color:#37802a}.pricing-grand{font-size:20px;border-top:1px solid #dce4eb;margin-top:8px}#pricing-dialog{width:min(700px,95vw);border:1px solid #dce4eb;border-radius:18px;padding:24px}#pricing-dialog::backdrop{background:#001f3f55;backdrop-filter:blur(3px)}.pricing-fields{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px}.pricing-fields label{display:grid;gap:8px}.pricing-fields input,.pricing-fields select{width:100%;min-width:0;padding:12px;border:1px solid #ccdbe7;border-radius:9px}.pricing-preview{display:flex;justify-content:space-between;background:#f4f7f8;padding:14px;margin-top:18px;border-radius:10px}#pricing-percentages{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-bottom:18px}#pricing-percentages button{padding:8px}#pricing-dialog [hidden]{display:none!important}#pricing-dialog .primary{background:#00a078;color:white;border:0;padding:12px 24px}@media(max-width:600px){.pricing-fields{grid-template-columns:1fr}.pricing-table th,.pricing-table td{padding:8px 4px;font-size:12px}}

/* Controles del estado de cuenta y sus ventanas de edición. */
#folio-list button,#pricing-dialog button,#save-guests{
 appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;
 min-height:40px;padding:10px 16px;border:1px solid #cbdceb;border-radius:10px;
 background:#fff;color:#003366;line-height:1.2;font-family:inherit;font-size:14px;font-weight:600;
 box-shadow:0 2px 5px #001f3f08;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s;
}
#folio-list button:hover,#pricing-dialog button:hover,#save-guests:hover{background:#e8f1fa;border-color:#7fa8ce}
#folio-list button:focus-visible,#pricing-dialog button:focus-visible,#save-guests:focus-visible{outline:3px solid #8cbbe0;outline-offset:3px}
#folio-list button:disabled,#pricing-dialog button:disabled{opacity:.55;cursor:wait;box-shadow:none}
#folio-list [data-price-item],#folio-list [data-price-discount]{width:40px;height:40px;min-width:40px;padding:0;background:#edf4fb;color:#2f6599;border-color:#d7e5f1;font-size:24px;line-height:1;box-shadow:none}
#folio-list [data-price-item]:hover,#folio-list [data-price-discount]:hover{background:#dcebf8;border-color:#8aafd0}
#folio-list #add-discount{margin-top:16px;min-height:44px;padding:11px 18px;background:linear-gradient(135deg,#2f6599,#003366);border-color:#2f6599;color:white}
#folio-list #add-discount:hover{background:linear-gradient(135deg,#275987,#002b57)}
#pricing-dialog .dialog-head button{width:36px;height:36px;min-height:36px;padding:0;border-color:transparent;background:#f1f5f8;font-size:22px;box-shadow:none}
#pricing-dialog .dialog-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;flex-wrap:wrap;margin-top:20px}
#pricing-dialog .dialog-actions .primary{min-width:120px;min-height:44px;background:#00a078;border:1px solid #00936f;color:white;padding:12px 24px}
#pricing-dialog .dialog-actions .primary:hover{background:#008b68}
#pricing-dialog #pricing-remove{margin-right:auto;border-color:#f0cabb;background:#fff5f0;color:#b44423}
#pricing-dialog #pricing-remove:hover{background:#fae5da}
#pricing-percentages button{padding:9px 6px;min-height:38px;background:#f5f9fd;box-shadow:none}
#save-guests{margin-top:12px}#save-guests svg{width:18px;height:18px}

/* The account remains neutral; payments and outstanding balance carry meaning. */
.pricing-summary .pricing-paid{color:#245f99;background:#eaf2fb;border-radius:9px;padding:10px 12px;margin-top:10px}
.pricing-summary .pricing-balance{align-items:center;padding:14px 12px;margin-top:8px;border:1px solid;border-left-width:4px;border-radius:9px;font-weight:700}
.pricing-summary .pricing-balance.is-due{color:#b34222;background:#fff0e9;border-color:#f1c9ba;border-left-color:#d85a30}
.pricing-summary .pricing-balance.is-settled{color:#28713a;background:#edf7ee;border-color:#c6e3cc;border-left-color:#419657}
.pricing-summary .pricing-credit{color:#245f99;padding:10px 12px}
.pricing-summary b{font-variant-numeric:tabular-nums;white-space:nowrap}
