/* Operational admin controls share the storefront's mint / cream palette. */
.admin-dialog{width:min(850px,94vw);max-height:90dvh;padding:0;border:1px solid #d7e3da;border-radius:18px;background:#fffdf8;color:#173e39;box-shadow:0 24px 100px #163c3966;overflow:auto}
.admin-dialog::backdrop{background:#173e3977;backdrop-filter:blur(3px)}
.admin-dialog form{padding:24px;display:grid;gap:16px}.admin-dialog header,.admin-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-dialog h2{margin:0;font-size:24px}.admin-dialog header button{border:0;background:none;font-size:30px;color:inherit;cursor:pointer}.admin-dialog label{margin:0;display:grid;gap:7px;font-weight:600}.admin-dialog input,.admin-dialog select,.admin-dialog textarea{box-sizing:border-box;width:100%;min-width:0;min-height:44px;font:inherit;padding:10px 12px;color:inherit;background:white;border:1px solid #ccd9d3;border-radius:9px}.admin-dialog input[readonly]{background:#eff3ef}.admin-dialog .editor-active{display:flex;align-items:center;gap:8px}.admin-dialog input[type=checkbox]{width:20px;min-height:20px;accent-color:#159879}.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.editor-help{font-size:13px;color:#596e66;margin:0}.editor-error{color:#b5282c;background:#fff0ee;padding:12px;border-radius:8px}.editor-image{max-width:220px;max-height:180px;object-fit:contain}.admin-dialog [hidden],.admin-content [hidden]{display:none!important}.admin-dialog textarea,.specifications p{white-space:pre-wrap}.admin-dialog footer{position:sticky;bottom:-24px;background:#fffdf8;padding:14px 0;border-top:1px solid #e3e8df;justify-content:flex-end}.admin-dialog .table-scroll{overflow-x:auto}.admin-range{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin:20px 0}.admin-range label{display:grid;gap:5px;min-width:130px}.admin-range input,.admin-range select{min-height:42px;padding:8px;border:1px solid #cfded5;background:#fff;border-radius:8px;font:inherit;color:inherit}.admin-range .btn{min-height:42px}.admin-definition{font-size:13px;color:#526d62}.admin-result-count{font-size:13px;color:#5b6e64;padding:4px 0}.admin-content td small{display:block;color:#597267}.admin-content [role=button]{cursor:pointer}.admin-content [role=button]:hover{background:#edf7ef}.table-product{display:flex;align-items:center;gap:10px;min-width:180px}.table-product .product-photo{width:48px;height:48px;object-fit:contain}.revenue-bars{display:flex;align-items:flex-end;gap:20px;overflow-x:auto;padding:30px 12px 12px;min-height:230px}.revenue-bars>div{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:7px;min-width:120px}.revenue-bars span{display:block;width:48px;min-height:3px;border-radius:8px 8px 0 0;background:linear-gradient(#91d7b1,#159879)}.revenue-bars small{white-space:nowrap}.calendar-grid button{min-height:46px;border:0;background:#f4f7ef;border-radius:8px;color:#254d41;cursor:pointer}.calendar-grid button.has-bookings{background:#d4efdc;font-weight:700;outline:1px solid #85c9a6}.calendar-grid button small{display:block;color:#087d61;font-size:10px}.appointment-columns{grid-template-columns:minmax(240px,310px) minmax(0,1fr)}.appointment-row select{max-width:180px}.settings-form{max-width:760px}.admin-content{min-width:0}.admin-content .table-scroll{overflow-x:auto}.admin-content .btn:disabled{opacity:.5;cursor:wait}.specifications{padding:20px 0}
@media(max-width:700px){.admin-dialog form{padding:16px}.editor-grid{grid-template-columns:1fr}.admin-dialog h2{font-size:20px}.admin-dialog footer{bottom:-16px}.admin-range{display:grid;grid-template-columns:1fr 1fr}.admin-range label{min-width:0}.admin-range input,.admin-range select{width:100%;min-width:0}.appointment-columns{display:block}.appointment-row{flex-wrap:wrap}.admin-page-head{gap:12px;flex-wrap:wrap}.metric-grid{grid-template-columns:1fr 1fr}.metric-card b{overflow-wrap:anywhere}.admin-dialog{max-height:92dvh}.admin-toolbar{flex-wrap:wrap}}

.admin-content .calendar-card{display:block}.admin-dialog input[type=file]{height:auto}.admin-dialog .table-scroll table{min-width:570px}
@media(max-width:700px){.admin-dialog input,.admin-dialog select,.admin-dialog textarea{font-size:16px}.admin-content .appointment-row{display:flex}.admin-content .appointment-row>div{flex:1;min-width:130px}}
