:root{--bg:#f6f7f9;--surface:#fff;--surface-soft:#eef6f1;--text:#263238;--muted:#69767d;--border:#d8dee3;--accent:#18736d;--accent-strong:#0f5955;--warning:#9a6511;--warning-bg:#fff4d9;--danger:#b42318;--danger-bg:#fee4e2;--success:#087443;--success-bg:#dcfae6;--shadow:0 14px 40px #19273414;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:6px;min-height:40px;padding:10px 14px}button:hover{background:var(--accent-strong)}button:disabled{cursor:not-allowed;opacity:.6}input,select,textarea{border:1px solid var(--border);width:100%;color:var(--text);background:#fff;border-radius:6px;padding:9px 10px}textarea{resize:vertical}h1,h2,p{margin:0}h1{font-size:30px;line-height:1.18}h2{font-size:17px}small{color:var(--muted);margin-top:3px;display:block}code{border:1px solid var(--border);color:#344054;background:#f7fafc;border-radius:5px;padding:4px 7px}#root,.app-shell{min-height:100vh}.app-nav{background:var(--surface);border-bottom:1px solid var(--border);z-index:10;padding:12px 26px;position:sticky;top:0;box-shadow:0 8px 24px #1927340d}.app-nav nav{flex-wrap:wrap;gap:10px;display:flex}.app-nav a{border:1px solid var(--border);color:var(--text);border-radius:6px;padding:10px 12px;text-decoration:none}.app-nav a:hover{background:var(--surface-soft);color:var(--accent-strong);border-color:#9bd4c9}.app-main{min-width:0;padding:26px}.page-section{gap:20px;display:grid}.page-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.page-heading p{color:var(--muted);margin-top:6px}.active-center{color:var(--accent-strong);white-space:nowrap;background:#e7f8f4;border:1px solid #9bd4c9;border-radius:999px;padding:7px 12px}.control-band,.panel{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:8px}.control-band{grid-template-columns:1.2fr repeat(3,minmax(150px,.7fr)) minmax(260px,auto);align-items:end;gap:14px;padding:16px;display:grid}label{color:var(--muted);gap:6px;font-size:13px;display:grid}.metrics-grid{grid-template-columns:repeat(4,minmax(130px,1fr));gap:12px;display:grid}.metric-card{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:15px}.metric-card span,.metric-card small{color:var(--muted)}.metric-card strong{margin:8px 0 2px;font-size:28px;display:block}.metric-card-action{gap:8px;display:grid}.metric-card-action button{justify-self:end}.dashboard-metrics{align-items:stretch}.dashboard-client-search{align-content:center;display:grid}.split-layout{grid-template-columns:minmax(0,1fr) 320px;gap:16px;display:grid}.panel{min-width:0;padding:16px}.panel.wide{min-width:0}.panel-heading{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.panel-heading span{color:var(--muted);font-size:13px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}.data-table{table-layout:fixed;min-width:980px}.appointments-data-table .col-client{width:210px}.appointments-data-table .col-phone{width:160px}.appointments-data-table .col-service{width:240px}.appointments-data-table .col-date{width:120px}.appointments-data-table .col-time{width:115px}.appointments-data-table .col-validation{width:260px}.appointments-data-table .col-action{width:190px}th,td{text-align:left;vertical-align:middle;border-bottom:1px solid #e4e9ee;padding:9px 10px}th{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:700}.badge{border:1px solid var(--border);color:var(--muted);white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:12px;line-height:1;display:inline-flex}.badge-success{background:var(--success-bg);color:var(--success);border-color:#abefc6}.badge-warning{background:var(--warning-bg);color:var(--warning);border-color:#fedf89}.badge-danger{background:var(--danger-bg);color:var(--danger);border-color:#fecdca}.badge-stack{flex-wrap:wrap;align-items:center;gap:6px;min-height:0;display:flex}.truncate{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.nowrap{white-space:nowrap}.table-action{white-space:nowrap;min-height:34px;padding:7px 10px}.table-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.empty-state,.error-banner{border-radius:8px;padding:14px}.empty-state{border:1px dashed var(--border);color:var(--muted)}.error-banner{background:var(--danger-bg);color:var(--danger);border:1px solid #fecdca}.flow-list{color:var(--muted);gap:12px;margin:0;padding-left:20px;display:grid}.sidebar-panel{align-content:start;gap:8px;display:grid}.template-tab{border:1px solid var(--border);color:var(--text);text-align:left;background:#f8fafc;justify-items:start;gap:3px;display:grid}.template-tab:hover,.template-tab.active{background:var(--surface-soft);color:var(--accent-strong);border-color:#9bd4c9}.template-tab span{color:var(--muted);font-size:12px}.form-stack,.settings-grid{gap:14px;display:grid}.form-grid{grid-template-columns:repeat(4,minmax(180px,1fr));gap:14px;margin-bottom:18px;display:grid}.inline-check{color:var(--text);align-items:center;gap:9px;display:flex}.inline-check input{width:auto}.template-tools{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:16px;margin-top:18px;padding-top:18px;display:grid}.variable-list{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.preview-box{border:1px solid var(--border);background:#f8fafc;border-radius:8px;min-height:92px;margin-top:10px;padding:12px;line-height:1.5}fieldset{border:1px solid var(--border);border-radius:8px;margin:0;padding:14px}legend{color:var(--muted);padding:0 6px}.state-grid{grid-template-columns:repeat(3,minmax(180px,1fr));gap:8px;display:grid}.access-denied{text-align:center;align-content:center;justify-items:center;gap:14px;min-height:100vh;padding:20px;display:grid}.button-row{flex-wrap:wrap;gap:10px;display:flex}.control-actions{justify-content:flex-end;align-self:end}.reminder-actions{justify-content:flex-end;align-items:center}.tabs-row{border-bottom:1px solid var(--border);gap:8px;margin:-2px 0 14px;padding-bottom:10px;display:flex}.tab-button{border:1px solid var(--border);color:var(--text);background:#f8fafc}.tab-button.active,.tab-button:hover{background:var(--surface-soft);color:var(--accent-strong);border-color:#9bd4c9}.pagination{justify-content:flex-end;align-items:center;gap:12px;margin-top:14px;display:flex}.pagination button{min-height:34px;padding:7px 10px}.pagination span,.muted{color:var(--muted)}.modal-backdrop{z-index:50;background:#1018206b;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{box-shadow:var(--shadow);background:#fff;border-radius:8px;gap:12px;width:100%;max-width:420px;padding:20px;display:grid}.modal-large{max-width:760px}.modal-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.detail-grid div{border:1px solid var(--border);border-radius:8px;padding:10px}.detail-grid dt{color:var(--muted);text-transform:uppercase;margin-bottom:4px;font-size:12px;font-weight:700}.detail-grid dd{overflow-wrap:anywhere;margin:0}.detail-full{grid-column:1/-1}.preserve-text{white-space:pre-wrap}.compact-table{min-width:0}.history-filters{grid-template-columns:repeat(6,minmax(130px,1fr)) auto}.logs-table{min-width:1320px}.logs-table th:first-child,.logs-table td:first-child{width:190px}.logs-table th:nth-child(2),.logs-table td:nth-child(2){width:180px}.logs-table th:nth-child(8),.logs-table td:nth-child(8){width:280px}.logs-table th:nth-child(9),.logs-table td:nth-child(9){width:90px}.history-detail-grid{max-height:72vh;padding-right:4px;overflow-y:auto}.blacklist-form{grid-template-columns:minmax(180px,240px) minmax(220px,1fr) auto;align-items:end}.blacklist-table{margin-top:14px}@media (width<=1100px){.metrics-grid{grid-template-columns:repeat(3,1fr)}.control-band,.split-layout,.template-tools,.form-grid{grid-template-columns:1fr}}@media (width<=760px){.app-shell{grid-template-columns:1fr}.app-nav{position:static}.app-nav nav{grid-template-columns:repeat(2,1fr);display:grid}.app-main{padding:18px}.page-heading{display:grid}.metrics-grid,.state-grid,.detail-grid{grid-template-columns:1fr}}.secondary-button{border:1px solid var(--border);color:var(--text);background:#f8fafc}.secondary-button:hover{background:var(--surface-soft);color:var(--accent-strong);border-color:#9bd4c9}.success-banner{background:var(--success-bg);color:var(--success);border:1px solid #abefc6;border-radius:8px;padding:14px}.treatment-filters{grid-template-columns:minmax(260px,1.5fr) minmax(180px,.8fr) minmax(170px,.7fr) auto auto}.treatments-table{min-width:1260px}.treatments-table th:first-child,.treatments-table td:first-child,.treatments-table th:nth-child(2),.treatments-table td:nth-child(2){width:240px}.treatments-table th:nth-child(3),.treatments-table td:nth-child(3){width:210px}.treatments-table th:nth-child(4),.treatments-table td:nth-child(4){width:160px}.treatments-table th:nth-child(5),.treatments-table td:nth-child(5){width:260px}.treatments-table th:nth-child(6),.treatments-table td:nth-child(6),.treatments-table th:nth-child(7),.treatments-table td:nth-child(7){width:130px}.treatment-description{max-width:250px}.empty-table-message{color:var(--muted);text-align:center;padding:24px}.treatment-modal{max-height:90vh;overflow-y:auto}.treatment-notification-field{color:var(--text);font-weight:600}.treatment-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.treatment-reference-grid{margin-top:4px}@media (width<=1100px){.treatment-filters{grid-template-columns:1fr}}.history-time-stack{gap:3px;display:grid}.history-time-stack strong{font-size:13px}.history-time-stack small{white-space:normal;margin:0}.centers-table{min-width:980px}.centers-table th:first-child,.centers-table td:first-child{width:230px}.centers-table th:nth-child(2),.centers-table td:nth-child(2){width:260px}.centers-table th:nth-child(3),.centers-table td:nth-child(3){width:420px}.centers-table input,.centers-table textarea{width:100%}.centers-table textarea{resize:vertical;white-space:pre-wrap}.center-id-reference{color:var(--muted);overflow-wrap:anywhere;margin-top:5px;display:block}.center-template-help{margin-top:18px}.center-template-help h2{margin-top:0}
