*{box-sizing:border-box}body{margin:0;color:#24333e;font:13px "Helvetica Neue",Helvetica,Arial,sans-serif;background:#fff}.top{height:35px;background:#619fa3;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 20px 0 10px}.brand{display:flex;align-items:center;gap:8px;font-weight:bold}.logo{display:inline-flex;width:27px;height:27px;border-radius:50%;background:white;color:#5a9da0;align-items:center;justify-content:center;font-size:18px}.banner{height:auto;max-width:min(56vw,680px);margin-left:auto;margin-right:18px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:4px;background:#fff0c1;color:#805f0c;padding:5px 10px;font-size:10px;line-height:1.25}.workspace{display:flex;height:calc(100vh - 35px)}.rail{width:60px;flex:none;background:#30454e;display:flex;flex-direction:column}.rail button{background:transparent;border:0;color:#fff;height:35px;font-size:17px}.rail .selected{background:#50646c;border-left:4px solid #6db6b8}.rail-bottom{margin-top:auto;text-align:center;color:#fff;padding:15px}main{position:relative;flex:1;min-width:0;overflow:hidden}.toolbar{height:46px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #dee4e6;padding:4px 10px}.tools-left,.tools-center,.tools-right{display:flex;align-items:center;gap:3px}.toolbar button{height:34px;border:1px solid #dfe6e8;border-radius:6px;background:#f8fafb;color:#40535c;padding:0 10px;white-space:nowrap}.toolbar button.active{background:#61a0a3;color:#fff;font-weight:bold}.toolbar #today{background:#fff;border-color:#81aaad;color:#578d91}.gap{width:8px}.notice{position:absolute;bottom:5px;left:10px;z-index:2;color:#526d70;font-size:11px;background:#fffffff0;padding:5px}.agenda-area{height:calc(100% - 46px);overflow:hidden}.grid-header{display:flex;height:101px;border-bottom:1px solid #d4d8da}.week-number{width:85px;flex:none;text-align:center;padding-top:14px;color:#999}.day-headings{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));flex:1}.day-heading{text-align:center;border-left:1px solid #dedfe1;padding:14px 0;color:#687b82;font-size:12px}.day-heading strong{display:block;color:#1d2e39;font-size:14px}.day-heading small{display:block;color:#a5c854;margin-top:26px}.scroll-area{height:calc(100% - 101px);overflow:auto;display:flex}.hours{width:85px;flex:none;background:#e8f4f2}.hour{height:80px;border-bottom:1px solid #e1eeee;text-align:center;color:#809195;padding-top:14px}.grid{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));min-width:650px;flex:1}.day{position:relative;background:repeating-linear-gradient(to bottom,transparent 0,transparent 39px,#eaeaea 39px,#eaeaea 40px,transparent 40px,transparent 79px,#e4e4e4 79px,#e4e4e4 80px),linear-gradient(to bottom,#efefef 0,#efefef 80px,#f8f8f8 80px,#f8f8f8 480px,#efefef 480px,#efefef 960px);border-left:1px solid #bbb;min-height:960px}.event{position:absolute;left:3px;right:24px;background:#b9dced;border:0;border-left:5px solid #afd23d;border-radius:3px;text-align:left;padding:2px 5px;color:#18232a;overflow:hidden;font-size:12px;cursor:pointer}.event span{display:block;border-radius:7px;background:white;border:1px solid #a8c6cc;font-size:10px;width:max-content;padding:0 5px}.event strong{display:block}.new-appointment{position:absolute;right:22px;bottom:22px;border:0;background:#639fa2;color:#fff;padding:12px 16px;border-radius:22px;box-shadow:0 3px 10px #0002;cursor:pointer}.list-view{padding:30px}.list-item{padding:12px;border-bottom:1px solid #eee}dialog{border:0;border-radius:8px;box-shadow:0 10px 40px #0003;width:min(440px,95vw);padding:24px}dialog::backdrop{background:#10272b66}.dialog-head{display:flex;justify-content:space-between;align-items:center}.dialog-head h2{margin:0}.dialog-head button{border:0;background:none;font-size:24px}form p{color:#6d7b80}form label{display:grid;gap:6px;margin-top:14px;font-weight:bold}form input{padding:10px;border:1px solid #cbd9dc;border-radius:4px;font:inherit}form .save{background:#619fa3;color:white;border:0;padding:11px 20px;border-radius:4px;cursor:pointer}.error{color:#b33333;min-height:1em}@media(max-width:1100px){.tools-right{display:none}.toolbar{justify-content:flex-start}.tools-center{margin-left:auto}.rail{width:48px}}@media(max-width:650px){.tools-left,.top-user,.tools-center #period{display:none}.week-number,.hours{width:58px}.day-headings{overflow:hidden}.notice{max-width:65%}}
.day-headings,.grid{grid-template-columns:repeat(var(--days,5),minmax(130px,1fr))}.grid{min-width:calc(var(--days,5)*130px)}#calendar-view{height:34px;border:1px solid #dfe6e8;border-radius:6px;background:#f8fafb;color:#40535c;padding:0 8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1100px){.tools-right{display:flex}.tools-right button{display:none}}
.appointment-dialog{width:min(1180px,calc(100vw - 32px));max-height:92vh;overflow:auto}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.form-grid label{min-width:0}.form-grid input,.form-grid select,.form-grid textarea{width:100%;min-width:0;padding:10px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}.form-grid .wide{grid-column:1/-1}.form-grid .check-field{display:flex;align-items:center;gap:8px}.form-grid .check-field input{width:auto}.form-note{font-size:12px;color:#718187}
.service-line{overflow-x:auto;margin:8px 0 12px}.service-line table{width:100%;border-collapse:collapse}.service-line th{text-align:left;text-transform:uppercase;color:#60777e;font-size:11px;padding:10px;border-bottom:1px solid #d6e1e2}.service-line td{padding:6px 8px;border-bottom:1px solid #e7ebec}.appointment-service-empty-row td{padding:20px;text-align:center;color:#94a3b8}.service-line td:first-child{width:65%}.service-line input,.service-line select{width:100%;min-width:100px;padding:9px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}.service-line .form-note{margin:8px 0}
.appointment-service-add{display:grid;grid-template-columns:minmax(180px,1fr) auto;align-items:end;gap:8px;margin:8px 0 12px}.appointment-service-add label{grid-column:1/-1;margin-bottom:-5px}.appointment-service-add button{white-space:nowrap}.service-line td:first-child{width:auto}.service-line td:last-child{width:1%;white-space:nowrap}.appointment-service-total{text-align:right;font-weight:700;margin:12px 4px;color:#334f56}
@media(max-width:560px){.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}}
[hidden]{display:none!important}.people-view{position:absolute;inset:0;overflow:auto;background:#fff;padding:0 10px 24px}.people-tabs{height:42px;display:flex;gap:6px;border-bottom:1px solid #dfe5e7}.people-tabs button{min-width:110px;border:0;border-bottom:3px solid transparent;background:white;color:#52656d;font-weight:bold}.people-tabs button.active{border-color:#63a1a4;color:#578f92}.people-toolbar{min-height:56px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 10px;border-bottom:1px solid #e4e9eb}.people-toolbar>button{min-height:34px;border:1px solid #d8e1e3;border-radius:5px;background:#f8fafb;color:#43575e;padding:0 10px}.people-toolbar .save,.people-search button{background:#619fa3;color:#fff;border:0}.people-search{display:flex;flex:1;min-width:250px;max-width:560px;margin:0}.people-search input{flex:1;min-width:0;height:34px;border:1px solid #cad7da;border-radius:5px 0 0 5px;padding:0 10px}.people-search button{height:34px;border-radius:0 5px 5px 0;padding:0 12px}.people-count{margin-left:auto;color:#76878c;white-space:nowrap}.people-toolbar button.active{background:#e1f0ef;color:#4a888a;border-color:#89b7b8}.people-table{width:100%;border-collapse:collapse;color:#31444c}.people-table th{text-transform:uppercase;text-align:left;background:#f1f7f6;color:#60777e;padding:13px 10px;border-bottom:1px solid #d6e1e2;font-size:11px}.people-table td{padding:13px 10px;border-bottom:1px solid #e7ebec;vertical-align:middle}.people-table tbody tr:hover,.person-card:hover{background:#f7fbfa}.people-actions{display:flex;gap:5px;justify-content:flex-end}.people-actions button{border:1px solid #d7e2e3;border-radius:5px;background:#fff;color:#4d777b;padding:6px 8px;white-space:nowrap}.people-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;padding:16px}.person-card{padding:16px;border:1px solid #e1e8e9;border-radius:9px;box-shadow:0 2px 8px #152d3510}.person-card h3{margin:0 0 6px;color:#263a43}.person-card small{color:#7d8b90}.person-card p{margin:10px 0;color:#62747a}.empty-state{margin:34px auto;max-width:600px;text-align:center;color:#64767b;padding:34px}.empty-state strong{font-size:18px;color:#354b52}.empty-state button{border:0;border-radius:5px;background:#619fa3;color:white;padding:10px 15px}.person-detail{position:fixed;inset:0 0 0 auto;margin:0;width:min(460px,96vw);height:100vh;max-height:100vh;border-radius:0;padding:24px}.person-detail #person-detail-next{padding:14px;border-radius:8px;background:#eff6f5;color:#49666b}
@media(max-width:820px){.people-table th:nth-child(3),.people-table td:nth-child(3),.people-table th:nth-child(5),.people-table td:nth-child(5),.people-table th:nth-child(6),.people-table td:nth-child(6){display:none}.people-search{order:2;flex-basis:100%;max-width:none}.people-count{margin-left:0}}
.appointment-tabs{display:flex;gap:5px;overflow:auto;border-bottom:1px solid #dce5e6;margin:10px 0 16px}.appointment-tabs button{flex:none;border:0;border-bottom:3px solid transparent;background:#fff;color:#61747a;padding:11px 14px;font-weight:bold}.appointment-tabs button.active{border-color:#61a0a3;color:#528e91}.appointment-panel>h3{color:#5a747b;font-size:12px;letter-spacing:.04em}.followup-quick-add{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:14px 0}.followup-quick-add button,.followup-remove{border:1px solid #d6e1e3;border-radius:5px;background:#f8fbfb;color:#48666b;padding:7px 10px}.followup-list{display:grid;gap:12px}.followup-row{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:0 12px;padding:14px;border:1px solid #dfe8e9;border-radius:7px;background:#fbfdfd}.followup-row label{min-width:0}.followup-row input,.followup-row select,.followup-row textarea{width:100%;padding:9px;border:1px solid #cbd9dc;border-radius:4px;background:white;color:inherit;font:inherit}.followup-row-head{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center}.followup-message{grid-column:1/-1}.followup-row>p{grid-column:1/-1;margin:2px 0 0}.reminder-preview{display:flex;gap:12px;flex-wrap:wrap;padding:14px;border:1px solid #e0e7e8;border-radius:6px;background:#f8fbfb;color:#536a70}.reminder-preview span{color:#78878b}@media(max-width:560px){.followup-row{grid-template-columns:1fr 1fr}.followup-row label:nth-of-type(3){grid-column:1/-1}}
.appointment-detail-trace{margin-top:14px;padding-top:10px;border-top:1px solid #dce5e6;color:#526a70}.appointment-detail-trace summary{cursor:pointer;font-weight:700}.appointment-detail-trace[open] summary{margin-bottom:10px}
.detail-followups{padding:10px 12px;border-radius:6px;background:#f2f8f7;color:#536a70}.detail-followups ul{margin:8px 0 0;padding-left:20px}.detail-followups li+li{margin-top:6px}
.recurrence-banner{display:grid;gap:5px;margin-bottom:12px;padding:16px;border-radius:8px;background:#eaf5f4;color:#528e91}.recurrence-banner strong{font-size:15px}.recurrence-banner span{color:#61777b}.recurrence-controls{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));align-items:end;gap:0 12px;padding:12px;border:1px solid #e1e8e9;border-radius:8px}.recurrence-controls label{min-width:0}.recurrence-controls input,.recurrence-controls select{width:100%;padding:10px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}.recurrence-weekdays{margin-top:14px;padding:14px;border:1px solid #e1e8e9;border-radius:8px}.recurrence-weekdays>strong{font-size:12px;color:#60777e}.weekday-options{display:flex;gap:8px;flex-wrap:wrap}.weekday-options label{display:flex;align-items:center;gap:6px;border:1px solid #dce5e6;border-radius:5px;padding:8px 10px}.weekday-options input{margin:0}.recurrence-help{margin-top:14px;padding:12px;border-radius:6px;background:#fff8e9;color:#7c6a38;font-size:12px}@media(max-width:560px){.recurrence-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}
.groups-toolbar{display:flex;align-items:center;gap:18px;padding:12px 10px;border-bottom:1px solid #e4e9eb;color:#63777d}.groups-toolbar button{min-height:34px}.groups-table td:first-child{font-weight:600;color:#314b52}.group-editor{padding:24px;max-width:920px}.group-editor form{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px}.group-editor-head{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid #e2e8e9}.group-editor-head h2{margin:5px 0;color:#31464e}.group-editor-head small,.group-editor h3{color:#607a80;font-size:12px;letter-spacing:.04em}.group-editor-head p{margin:0;color:#60777d;font-size:13px}.group-editor-head>div:last-child{display:flex;gap:8px}.group-editor label{display:grid;gap:6px;color:#536970;font-size:13px}.group-editor input,.group-editor textarea,.group-editor select{width:100%;padding:10px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}.group-editor h3{grid-column:1/-1;margin:12px 0 2px;padding-top:10px;border-top:1px solid #e8eded}.group-participant-picker{display:flex;align-items:end;gap:8px}.group-participant-picker label{flex:1}.group-participant-picker button,.group-editor-head button{min-height:36px;border:1px solid #d8e1e3;border-radius:5px;background:#f8fafb;color:#43575e;padding:0 12px}.group-editor #group-occupancy,.group-editor #group-no-participants,.group-editor #group-participant-list,.group-editor .form-note,.group-editor .error{grid-column:1/-1;margin:0}.group-editor #group-occupancy{color:#568c8e;font-weight:600}.group-editor #group-participant-list{padding-left:22px}.group-editor #group-participant-list button{margin-left:8px;border:0;background:transparent;color:#7d6262;cursor:pointer}.group-editor .form-note{margin-top:8px}
@media(max-width:600px){.group-editor{padding:16px}.group-editor form{grid-template-columns:1fr}.group-editor-head,.group-editor h3,.group-editor #group-occupancy,.group-editor #group-no-participants,.group-editor #group-participant-list,.group-editor .form-note,.group-editor .error{grid-column:1}.group-editor-head{align-items:flex-start;gap:12px;flex-direction:column}}
.products-view{position:absolute;inset:0;overflow:auto;background:#fff;padding:0 10px 24px}.module-tabs,.product-form-tabs{height:42px;display:flex;gap:6px;border-bottom:1px solid #dfe5e7}.module-tabs button,.product-form-tabs button{min-width:104px;border:0;border-bottom:3px solid transparent;background:#fff;color:#52656d;font-weight:bold;padding:0 12px}.module-tabs button.active,.product-form-tabs button.active{border-color:#63a1a4;color:#578f92}.products-toolbar{min-height:56px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 10px;border-bottom:1px solid #e4e9eb}.products-toolbar>button,.products-toolbar select{min-height:34px;border:1px solid #d8e1e3;border-radius:5px;background:#f8fafb;color:#43575e;padding:0 10px}.products-toolbar .save,.product-search button{background:#619fa3;color:#fff;border:0}.product-search{display:flex;flex:1;min-width:230px;max-width:560px;margin:0}.product-search input{flex:1;min-width:0;height:34px;border:1px solid #cad7da;border-radius:5px 0 0 5px;padding:0 10px}.product-search button{height:34px;border-radius:0 5px 5px 0;padding:0 12px}.product-state-filter{display:flex;align-items:center;gap:8px;margin:0;color:#52656d;font-weight:normal}.products-count{margin-left:auto;color:#76878c;white-space:nowrap}.inventory-summary{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px;padding:14px 10px}.inventory-card{border:1px solid #e1e8e9;border-radius:7px;padding:12px;background:#fbfdfd;color:#62747a}.inventory-card strong{display:block;font-size:18px;color:#354b52;margin-top:4px}.inventory-card small{color:#829196}.products-table td:first-child{font-weight:600;color:#314b52}.product-status{display:inline-block;padding:4px 8px;border-radius:12px;background:#eef4f4;color:#526d70;font-size:11px}.product-dialog{width:min(880px,96vw);max-height:92vh;overflow:auto}.product-dialog .dialog-head small{color:#607a80;letter-spacing:.04em}.product-dialog .dialog-head h2{margin:4px 0}.product-summary{padding:12px;background:#f2f7f6;border-radius:6px;color:#4b676d}.product-form-tabs{margin:12px 0}.product-form-panel{padding:4px 2px 12px}.product-form-panel h3{margin:16px 0 8px;padding-top:8px;border-top:1px solid #e8eded;color:#607a80;font-size:12px;letter-spacing:.04em}.product-form-panel label,.category-dialog label{display:grid;gap:6px;margin:10px 0;color:#536970;font-size:13px}.product-dialog input,.product-dialog select,.product-dialog textarea,.category-dialog input,.category-dialog select,.category-dialog textarea{width:100%;padding:10px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}.product-form-panel .product-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.product-form-panel label.product-check{display:flex;align-items:center;gap:8px}.product-check input{width:auto}.product-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.product-form-actions button{min-height:36px;border:1px solid #d8e1e3;border-radius:5px;background:#f8fafb;color:#43575e;padding:0 14px}.product-form-actions .save{background:#619fa3;color:#fff;border:0}.category-dialog{width:min(560px,95vw)}.category-dialog .form-note{font-size:12px;color:#718187;margin:6px 0}.product-dialog .error,.category-dialog .error{color:#b33333;min-height:1em}
@media(max-width:650px){.inventory-summary{grid-template-columns:repeat(2,minmax(120px,1fr))}.product-form-panel .product-fields{grid-template-columns:1fr}.product-search{order:2;flex-basis:100%;max-width:none}}
.entities-view{position:absolute;inset:0;overflow:auto;background:#fff;padding:22px 26px 34px}.entity-page-title{margin:4px 0;color:#344d55;font-size:22px}.entity-page-subtitle{margin:0 0 16px;color:#788a8e}.entities-toolbar{min-height:56px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 0;border-bottom:1px solid #e4e9eb}.entities-toolbar>button,.entities-toolbar select{min-height:34px;border:1px solid #d8e1e3;border-radius:5px;background:#f8fafb;color:#43575e;padding:0 10px}.entities-toolbar>.save,.entity-search button{background:#619fa3;color:#fff;border:0}.entity-search{display:flex;flex:1;min-width:220px;max-width:520px;margin:0}.entity-search input{flex:1;min-width:0;height:34px;border:1px solid #cad7da;border-radius:5px 0 0 5px;padding:0 10px}.entity-search button{height:34px;border-radius:0 5px 5px 0;padding:0 12px}.entity-filter{display:flex;align-items:center;gap:8px;margin:0;color:#52656d;font-weight:normal}.entities-count{margin-left:auto;color:#76878c;white-space:nowrap}.entities-table{margin-top:8px}.entity-editor{max-width:1050px;margin:0 auto;padding:0 10px 28px}.entity-editor-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0 18px}.entity-editor-head small{color:#75878b;letter-spacing:.04em}.entity-editor-head h2{margin:6px 0;color:#344d55}.entity-editor-head>div:last-child{display:flex;gap:8px}.entity-editor-head button{min-height:36px;padding:0 15px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fafb;color:#43575e}.entity-editor-head button.save{background:#619fa3;border:0;color:white}.entity-tabs{height:40px;display:flex;border-bottom:1px solid #dfe5e7;margin-bottom:12px}.entity-tabs button{min-width:100px;border:0;border-bottom:3px solid #63a1a4;background:white;color:#578f92;font-weight:bold}.entity-editor h3{margin:22px 0 10px;padding:0 0 8px;border-bottom:1px solid #e6ebec;color:#627b80;font-size:12px;letter-spacing:.04em}.entity-types{display:flex;gap:8px;flex-wrap:wrap}.entity-types label{display:block;margin:0;cursor:pointer}.entity-types input{position:absolute;opacity:0;pointer-events:none}.entity-types span{display:block;padding:9px 12px;border:1px solid #d3dfe1;border-radius:5px;color:#52656d;background:#fff}.entity-types input:checked+span{border-color:#69a3a5;background:#edf6f5;color:#477f82}.entity-editor .entity-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.entity-editor label{display:grid;gap:6px;margin:10px 0;color:#536970;font-size:13px}.entity-editor input,.entity-editor select,.entity-editor textarea{width:100%;min-height:38px;padding:9px 10px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}.entity-editor .entity-observations{display:block;max-width:100%;margin-top:0}.entity-editor .entity-observations textarea{min-height:90px}.entity-editor .form-note{margin:8px 0;color:#75858a;font-size:12px}.entity-editor .error{min-height:1em;color:#b33333}@media(max-width:720px){.entities-view{padding:14px 10px}.entities-table{min-width:750px}.entity-editor .entity-fields{grid-template-columns:1fr}.entity-editor-head{align-items:flex-start}.entity-editor-head>div:last-child{flex:none}}
.bonuses-view{position:absolute;inset:0;overflow:auto;background:#fff;padding:0 10px 28px}
.bonus-tabs{position:sticky;top:0;background:#fff;z-index:1}
.bonuses-toolbar{min-height:56px;display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:8px 10px;border-bottom:1px solid #e4e9eb}
.bonuses-toolbar>button,.bonuses-toolbar select,.bonuses-toolbar input{min-height:34px;border:1px solid #d8e1e3;border-radius:5px;background:#f8fafb;color:#43575e;padding:0 10px}
.bonuses-toolbar .save,.bonus-search button{background:#619fa3;color:#fff;border:0}
.bonus-search{display:flex;flex:1;min-width:220px;max-width:500px;margin:0}
.bonus-search input{flex:1;min-width:0;height:34px;border:1px solid #cad7da;border-radius:5px 0 0 5px;padding:0 10px}
.bonus-search button{height:34px;border-radius:0 5px 5px 0;padding:0 12px}
.bonus-period{display:flex;align-items:center;gap:8px;margin:0;color:#52656d;font-weight:normal}
.bonus-summary{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;padding:14px 10px}
.bonuses-table{margin-top:6px}.bonuses-table td:first-child{font-weight:600;color:#314b52}
.bonus-consumption-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 10px 0}.bonus-consumption-heading h2{margin:6px 0;color:#344d55}.bonus-consumption-heading p{margin:5px 0;color:#75878b}.bonus-consumption-heading>button{min-height:34px;padding:0 12px;border:1px solid #d8e1e3;border-radius:5px;background:#f8fafb;color:#43575e}
.bonus-consumption-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:14px 10px;color:#65787d}.bonus-consumption-summary>span{display:flex;flex-direction:column;justify-content:center;gap:5px;min-height:66px;padding:10px 14px;border:1px solid #e1e8e9;border-left:4px solid #64a1a4;border-radius:5px;background:#fff;box-shadow:0 2px 7px #20383d0d}.bonus-consumption-summary>span:nth-child(2){border-left-color:#3199b4}.bonus-consumption-summary>span:nth-child(3){border-left-color:#e9a01c}.bonus-consumption-summary>span:nth-child(4){border-left-color:#3f9d67}.bonus-consumption-summary strong{color:#354b52;font-size:22px}.consumption-actions-cell{width:132px}.consumption-actions-cell:empty::after{content:""}
#bonus-consumption-dialog{width:min(520px,94vw);border:1px solid #dce5e6;border-radius:8px;padding:22px;box-shadow:0 18px 56px #20383d40}#bonus-consumption-dialog form>label{display:grid;gap:6px;margin:14px 0;color:#536970;font-size:13px}#bonus-consumption-dialog select{min-height:38px;padding:8px;border:1px solid #cbd9dc;border-radius:4px;background:white;color:inherit;font:inherit}#bonus-consumption-dialog .dialog-head h2{margin:5px 0;color:#344d55}#bonus-consumption-dialog .form-note{color:#75858a;font-size:12px}#bonus-consumption-dialog .error{min-height:1em;color:#b33333}
.bonus-code-search{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;margin:12px 0}.bonus-code-search label{display:grid;gap:6px;color:#536970;font-size:13px}.bonus-code-search input{min-height:38px;padding:8px;border:1px solid #cbd9dc;border-radius:4px;font:inherit}.bonus-code-search>button{min-height:38px;padding:0 14px;border:1px solid #cbd9dc;border-radius:4px;background:#f8fafb;color:#43575e;font:inherit}.bonus-code-search>p{grid-column:1/-1;min-height:1em;margin:0;color:#647a80;font-size:12px}.bonus-selected-detail{margin:12px 0;padding:12px;border:1px solid #e1e8e9;border-radius:5px;background:#f8fafb;color:#536970;font-size:12px}.bonus-selected-detail p{margin:7px 0 0;line-height:1.5}.bonuses-table td:first-child strong,.bonuses-table td:first-child small{display:block}.bonuses-table td:first-child small{margin-top:4px;color:#75858a;font-size:11px}
.bonus-dialog{width:min(720px,96vw);max-height:92vh;overflow:auto}.bonus-dialog .dialog-head{position:sticky;top:-24px;background:#fff;padding:8px 0;z-index:1}
.bonus-dialog h3{margin:20px 0 8px;padding-bottom:7px;border-bottom:1px solid #e6ebec;color:#627b80;font-size:12px;letter-spacing:.04em}
.bonus-dialog label{display:grid;gap:6px;margin:11px 0;color:#536970;font-size:13px}.bonus-dialog input,.bonus-dialog select{min-height:38px;padding:9px 10px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}
.bonus-dialog label.bonus-check{display:flex;align-items:center;gap:8px}.bonus-dialog .bonus-check input{width:auto;min-height:0}
.bonus-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 14px}.bonus-service-picker{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}.bonus-service-picker label{margin:0}.bonus-service-picker>button{height:38px;border:1px solid #d8e1e3;border-radius:5px;background:#f8fafb;color:#43575e;padding:0 10px}
.selected-services{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.selected-service{display:flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid #d5e2e3;border-radius:15px;background:#f2f8f7;color:#526b70;font-size:12px}.selected-service button{border:0;background:transparent;color:#765a5a;font-size:16px;cursor:pointer}
.bonus-person-mode{display:flex;gap:8px}.bonus-person-mode label{display:block;margin:0}.bonus-person-mode input{position:absolute;opacity:0}.bonus-person-mode span{display:block;padding:9px 14px;border:1px solid #d3dfe1;border-radius:5px;color:#52656d}.bonus-person-mode input:checked+span{border-color:#69a3a5;background:#edf6f5;color:#477f82}
.bonus-shared-people{margin:12px 0;padding:12px;border:1px solid #d7e3e3;border-radius:7px;background:#f8fbfa}.bonus-shared-people h4{margin:0 0 6px;color:#425b61;font-size:14px}.bonus-shared-picker{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.bonus-shared-picker label{margin:4px 0}.bonus-shared-picker>button{height:38px;margin-bottom:0;border:1px solid #d8e1e3;border-radius:5px;background:#f8fafb;color:#43575e;padding:0 10px}.bonus-shared-person-list{display:grid;gap:6px;margin-top:8px}.bonus-shared-person{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 9px;border-radius:5px;background:#edf6f5;color:#43575e;font-size:13px}.bonus-shared-person button{border:0;background:transparent;color:#765a5a;cursor:pointer}
.bonus-dialog .form-note{margin:7px 0;color:#75858a;font-size:12px}.bonus-dialog .error{min-height:1em;color:#b33333}
@media(max-width:720px){.bonus-summary{grid-template-columns:repeat(2,minmax(130px,1fr))}.bonus-fields,.bonus-service-picker,.bonus-shared-picker{grid-template-columns:1fr}.bonus-consumption-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.bonus-search{order:2;flex-basis:100%;max-width:none}}
.billing-view{position:absolute;inset:0;overflow:auto;background:#fff;padding:0 10px 30px}
.billing-module-tabs{position:sticky;top:0;z-index:2;overflow-x:auto;white-space:nowrap;background:#fff}
.billing-module-tabs button{flex:none;min-width:max-content}
.billing-module-tabs button{height:34px;min-height:34px;margin-top:9px}
.billing-toolbar{min-height:58px;display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:9px 10px;border-bottom:1px solid #e4e9eb}
.billing-toolbar>button,.billing-toolbar input{height:35px;border:1px solid #d8e1e3;border-radius:5px;background:#f8fafb;color:#43575e;padding:0 10px}
.billing-toolbar>.save,.billing-search button{background:#619fa3;color:#fff;border:0}
.billing-search{display:flex;flex:1;min-width:220px;max-width:520px;margin:0}
.billing-search input{flex:1;min-width:0;border-radius:5px 0 0 5px}
.billing-search button{height:35px;border-radius:0 5px 5px 0;padding:0 12px}
.billing-period{display:flex;align-items:center;gap:8px;margin:0;color:#52656d;font-weight:normal}
.billing-period select,.invoice-list-toolbar>button{height:35px;padding:0 9px;border:1px solid #d8e1e3;border-radius:5px;background:#f8fafb;color:#43575e}
.invoice-table{margin-top:8px;min-width:760px}.invoice-row{cursor:pointer}.invoice-row:hover{background:#f3f8f7}.invoice-view-button.active{border-color:#619fa3;background:#eaf4f3;color:#477f82;font-weight:700}.invoice-select-all{display:flex;align-items:center;gap:5px;color:#52656d;font-size:12px}.invoice-kpis{align-items:stretch}.invoice-kpi{display:flex;flex-direction:column;align-items:flex-start;gap:5px;width:100%;border:1px solid #e1e8e9;text-align:left;color:inherit;cursor:pointer}.invoice-kpi:hover,.invoice-kpi:focus-visible{border-color:#619fa3;background:#f4f9f8}.invoice-card-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;padding:12px}.invoice-list-card{display:grid;grid-template-columns:auto 1fr;gap:8px 12px;align-items:center;padding:14px;border:1px solid #dce5e6;border-radius:7px;background:#fff;color:#43575e}.invoice-list-card>strong,.invoice-list-card>b,.invoice-list-card>span,.invoice-list-card>button{grid-column:2}.invoice-list-card>strong{color:#385d61}.invoice-list-card>b{font-size:19px}.invoice-list-card>button{justify-self:start}
.pending-invoice-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:16px 10px 8px}.pending-invoice-heading h2{margin:0 0 5px;color:#344d55;font-size:20px}.pending-invoice-heading p{margin:0;color:#718187;font-size:13px}.demo-badge{flex:none;padding:5px 9px;border-radius:4px;background:#edf6f5;color:#477f82;font-size:11px;font-weight:700;letter-spacing:.04em}
.pending-invoice-filters{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:10px;padding:10px;border-bottom:1px solid #e4e9eb}.pending-invoice-filters label{display:grid;gap:5px;margin:0;color:#52656d;font-size:12px}.pending-invoice-filters input,.pending-invoice-filters select{min-width:0;height:35px;border:1px solid #d8e1e3;border-radius:5px;background:#f8fafb;color:#43575e;padding:0 8px}.pending-invoice-table-wrap{overflow-x:auto}.pending-invoice-summary{display:flex;gap:18px;flex-wrap:wrap;padding:14px 10px;color:#52656d;font-size:13px}.pending-invoice-summary strong{color:#344d55}.pending-invoice-summary span:last-child{color:#718187}
.billing-summary{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:10px;padding:15px 10px}
.invoice-editor{width:100%;max-width:none;margin:0;padding:4px 12px 30px}
.invoice-editor-meta{display:flex;align-items:center;gap:9px 22px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid #e2e8e9;color:#74868b;font-size:11px;letter-spacing:.04em}.invoice-editor-meta strong{color:#435960;font-weight:600;letter-spacing:0}
.invoice-readiness{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;margin:12px 0;padding:10px 12px;border:1px solid #e3e8e9;border-radius:6px;background:#f7f9f9;color:#63747a;font-size:12px}.invoice-readiness strong{color:#435960}
.invoice-save-button:disabled{opacity:.48;cursor:not-allowed}
.invoice-editor-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0 18px;border-bottom:1px solid #e2e8e9}
.invoice-editor-head small{color:#75878b;letter-spacing:.04em}.invoice-editor-head h2{margin:6px 0;color:#344d55}.invoice-editor-head p{margin:0;color:#718187;font-size:12px}
.invoice-editor-head>div:last-child{display:flex;gap:8px;flex:none}.invoice-editor-head button,.invoice-editor-footer button{min-height:36px;padding:0 13px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fafb;color:#43575e}
.invoice-editor-head button.save,.invoice-editor-footer button.save{background:#619fa3;border:0;color:white}
.invoice-tabs{display:flex;gap:3px;overflow-x:auto;white-space:nowrap;border-bottom:1px solid #dfe5e7;margin-bottom:16px}
.invoice-tabs button{flex:none;min-height:40px;padding:0 12px;border:0;border-bottom:3px solid transparent;background:white;color:#52656d;font-weight:bold}
.invoice-tabs button.active{border-color:#63a1a4;color:#578f92}
.invoice-tab-warning{margin-left:5px;color:#bd6057;font-size:11px;line-height:1}
.invoice-tab-warning[hidden]{display:none}
.invoice-panel{max-width:none;padding:0 6px 14px}.invoice-panel h3{margin:21px 0 10px;padding:0 0 8px;border-bottom:1px solid #e6ebec;color:#627b80;font-size:12px;letter-spacing:.04em}
.invoice-data-panel{padding:0 6px 14px}.invoice-data-grid,.invoice-data-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.invoice-data-card,.invoice-data-summary-card{min-width:0;padding:18px;border:1px solid #dce5e6;border-radius:10px;background:#fff;box-shadow:0 4px 12px rgba(44,69,75,.05)}.invoice-data-card h3,.invoice-data-summary-card h3{margin:0 0 14px;padding:0;border:0;color:#5c8e91;font-size:12px;letter-spacing:.04em}.invoice-data-card>label{margin:10px 0 14px}.invoice-data-card .invoice-recipient-notice{margin:12px 0;padding:12px 14px;border:1px solid #dce7e9;border-radius:8px;background:#f3f8f9;color:#58888d}.invoice-check-strip{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;margin:10px 0;padding:12px 14px;border:1px solid #e0e8e9;border-radius:8px;background:#f4f8f8}.invoice-check-strip-source{background:#edf7ef;border-color:#d9e9dd}.invoice-check-strip .invoice-check{margin:0}.invoice-data-summary{margin-top:16px}.invoice-data-summary-card{min-height:125px;padding:18px 20px;background:linear-gradient(120deg,#fff,#f1f7f7);border-left:4px solid #63a1a4}.invoice-data-summary-card.recipient{background:linear-gradient(120deg,#fff,#f2f8f3);border-left-color:#76bf89}.invoice-data-summary-card h3{margin-bottom:12px}.invoice-data-summary-card strong{color:#344d55;font-size:16px}.invoice-data-summary-card #invoice-recipient-summary{color:#536970;font-size:13px;line-height:1.6}
.invoice-data-card .invoice-check-strip .invoice-check{display:flex;align-items:center;gap:8px;color:#536970;font-size:13px}.invoice-data-card .invoice-check-strip input[type=checkbox]{flex:none;width:16px;height:16px;min-height:0;margin:0;padding:0}
.invoice-panel>label{display:grid;gap:6px;margin:11px 0;color:#536970;font-size:13px}
.invoice-person-picker{position:relative;min-width:0}
.invoice-person-options{position:absolute;z-index:30;top:calc(100% + 2px);right:0;left:0;display:grid;max-height:230px;overflow:auto;overscroll-behavior:contain;padding:5px;border:1px solid #cbd9dc;border-radius:5px;background:#fff;box-shadow:0 8px 24px #19343b26}
.invoice-person-options[hidden]{display:none}
.invoice-person-option{min-height:36px;padding:8px 10px;border:0;border-radius:3px;background:#fff;color:#334951;text-align:left;font:inherit}
.invoice-person-option:hover,.invoice-person-option:focus-visible{background:#eaf2f3;outline:none}
.invoice-person-option[aria-selected="true"]{font-weight:700;color:#1d696e}
.appointment-person-picker{position:relative;max-width:352px;min-width:0}.appointment-person-picker>input{width:100%}.appointment-person-source{position:absolute!important;width:1px!important;height:1px!important;min-height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.appointment-person-options{position:absolute;z-index:40;top:calc(100% + 4px);left:-1px;width:384px;max-width:calc(100vw - 32px);display:grid;max-height:230px;overflow:auto;overscroll-behavior:contain;padding:5px;border:1px solid #cbd9dc;border-radius:5px;background:#fff;box-shadow:0 8px 24px #19343b26}.appointment-person-options[hidden],.appointment-person-help[hidden]{display:none}.appointment-person-option{min-height:36px;padding:8px 10px;border:0;border-radius:3px;background:#fff;color:#334951;text-align:left;font:inherit}.appointment-person-option:hover,.appointment-person-option:focus-visible{background:#eaf2f3;outline:none}.appointment-person-option[aria-selected="true"]{font-weight:700;color:#1d696e}.appointment-person-help{position:absolute;z-index:40;top:calc(100% + 4px);left:-1px;width:384px;max-width:calc(100vw - 32px);min-height:184px;margin:0;padding:10px 14px;border:1px solid #cbd9dc;border-radius:5px;background:#fff;color:#687b80;box-shadow:0 8px 24px #19343b26;font-size:12px;line-height:1.45}.appointment-person-help strong{display:block;margin:0 0 8px;color:#40535c}.appointment-person-help-fields{margin-top:5px}.appointment-person-help>p{margin:9px 0 0}
.appointment-person-control{display:grid;grid-template-columns:384px 30px;gap:6px;width:max-content;max-width:100%;align-items:center}.appointment-person-picker{position:relative;width:384px;max-width:100%;height:32px;border:1px solid #cbd9dc;border-radius:4px;background:#fff}.appointment-person-trigger{display:grid;grid-template-columns:minmax(0,1fr) 31px;height:30px}.appointment-person-trigger>input{width:100%;min-width:0;height:30px!important;padding:4px 8px!important;border:0!important;border-radius:4px 0 0 4px!important;background:transparent!important;color:inherit;font:inherit}.appointment-person-trigger>button{width:31px;height:30px;padding:0;border:0;border-left:1px solid #e0e7e8;border-radius:0 4px 4px 0;background:#fff;color:#54686e}.appointment-person-popup{position:absolute;z-index:40;top:34px;left:-1px;display:flex;flex-direction:column;width:384px;max-width:calc(100vw - 32px);height:228px;overflow:hidden;padding:6px 6px 0;border:1px solid #cbd9dc;border-radius:4px;background:#fff;box-shadow:0 8px 24px #19343b26}.appointment-person-popup[hidden]{display:none}.appointment-person-popup>input{flex:none;width:100%;height:30px!important;min-height:30px!important;padding:4px 8px!important;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}.appointment-person-help{position:static;flex:1;min-height:0;margin:6px 0 0;padding:0;border:0;border-radius:0;background:#fff;color:#687b80;box-shadow:none;font-size:12px;line-height:1.45}.appointment-person-help strong{display:block;margin:0 0 8px;color:#40535c}.appointment-person-help-fields{display:grid;gap:4px;margin-top:5px}.appointment-person-help>p{margin:9px 0 0}.appointment-person-options{position:static;flex:1;width:auto;max-width:none;max-height:none;margin:6px 0 0;padding:5px;border:0;border-top:1px solid #edf0f1;border-radius:0;background:#fff;box-shadow:none}.appointment-person-options[hidden]{display:none}.appointment-person-add{display:flex;width:30px;height:30px;align-items:center;justify-content:center;padding:0;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:#067454}.appointment-person-add svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.appointment-person-add:hover,.appointment-person-add:focus-visible,.appointment-person-trigger>button:hover,.appointment-person-trigger>button:focus-visible{background:#edf5f5;outline-color:#72aeb1}
.invoice-person-empty{margin:0;padding:10px;color:#687b80;font-size:13px}
.invoice-panel>label.invoice-check{display:flex;align-items:center;gap:8px}.invoice-panel>label.invoice-check input{width:auto;min-height:0}
.invoice-panel input:not([type="checkbox"]):not([type="radio"]),.invoice-panel select,.invoice-panel textarea{width:100%;min-height:38px;padding:9px 10px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}
.invoice-panel input[type="checkbox"],.invoice-panel input[type="radio"]{width:16px;height:16px;min-height:0;margin:0;padding:0;flex:none;accent-color:#619fa3}
.invoice-panel textarea{min-height:84px;resize:vertical}.invoice-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}
.invoice-fields label{display:grid;gap:6px;margin:10px 0;color:#536970;font-size:13px}.invoice-fields label.invoice-check{display:flex;align-items:center;gap:8px}.invoice-fields label.invoice-check input{width:auto;min-height:0}
.invoice-empty-panel{padding:20px;border:1px dashed #d6e1e2;border-radius:7px;background:#fbfdfd;color:#6c7e83}
.invoice-empty-panel h3{margin-top:0}.invoice-total{margin:18px 0;padding:14px;border-radius:6px;background:#eff6f5;color:#385d61;font-size:18px;font-weight:bold}
.invoice-editor-footer{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding-top:18px;border-top:1px solid #e5ebec}
.invoice-editor .form-note{color:#718187;font-size:12px}.invoice-editor .error{color:#b33333;min-height:1em}
.expense-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 16px;max-width:1000px}.expense-form-grid label,#expense-form>label{display:grid;gap:6px;margin:11px 0;color:#536970;font-size:13px}.expense-form-grid input,.expense-form-grid select,#expense-form>label textarea{width:100%;min-height:38px;padding:9px 10px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}#expense-form h3{margin:21px 0 10px;padding:0 0 8px;border-bottom:1px solid #e6ebec;color:#627b80;font-size:12px;letter-spacing:.04em}
.invoice-book-view{padding:12px 6px 24px}.invoice-book-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:18px 0}.invoice-book-filters label{display:grid;gap:5px;color:#536970;font-size:13px}.invoice-book-filters input,.invoice-book-filters select{min-height:38px;padding:8px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}.invoice-book-reconciliation{display:flex;gap:12px;align-items:center;margin:14px 0;padding:13px 15px;border:1px solid #dce8e8;border-radius:5px;background:#f7fbfb;color:#52656d}.invoice-book-reconciliation strong{color:#385d61}.invoice-book-summary{margin:14px 0}
@media(max-width:720px){.billing-summary,.invoice-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-search{order:2;flex-basis:100%;max-width:none}.invoice-editor{padding:4px 8px 24px}.invoice-editor-head{align-items:flex-start}.invoice-editor-head>div:last-child{flex:none}}
@media(max-width:720px){.expense-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.invoice-book-reconciliation{align-items:flex-start;flex-direction:column;gap:5px}.invoice-book-filters label{min-width:min(100%,180px)}}
@media(max-width:720px){.invoice-list-toolbar{align-items:stretch}.invoice-list-toolbar .billing-search{flex-basis:100%;max-width:none}.invoice-list-toolbar .billing-period{flex-wrap:wrap}.invoice-card-list{grid-template-columns:1fr}}
@media(max-width:500px){.billing-summary,.invoice-fields,.expense-form-grid{grid-template-columns:1fr}.invoice-editor-head{display:block}.invoice-editor-head>div:last-child{margin-top:12px}}
.staff-view{position:absolute;inset:0;overflow:auto;background:#fff;padding:0 10px 28px}.staff-tabs{height:42px;display:flex;gap:6px;border-bottom:1px solid #dfe5e7}.staff-tabs button{min-width:130px;border:0;border-bottom:3px solid transparent;background:#fff;color:#52656d;font-weight:bold}.staff-tabs button.active{border-color:#63a1a4;color:#578f92}.staff-tabs button:disabled{opacity:.55}.shift-planner{padding:12px 10px 24px}.shift-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.shift-heading small{color:#72858a;letter-spacing:.08em}.shift-heading h2{margin:4px 0;color:#344d55}.shift-heading p{margin:0;color:#718187}.shift-heading-actions{display:flex;gap:8px}.shift-heading-actions button,.shift-toolbar button{min-height:34px;border:1px solid #d8e1e3;border-radius:5px;background:#fff;color:#43575e;padding:0 11px}.shift-heading-actions .save{background:#619fa3;color:white;border:0}.shift-toolbar{display:flex;align-items:center;gap:8px;margin-top:18px;padding:10px 0;border-block:1px solid #e5ebec;color:#445b62}.shift-toolbar>strong{min-width:180px;text-align:center}.shift-toolbar #current-shift-week{margin-left:4px}.shift-view-toggle{display:flex;gap:4px;margin-left:auto}.shift-view-toggle button{min-width:68px}.shift-view-toggle button.active{background:#e1f0ef;color:#4a888a;border-color:#89b7b8}.shift-legend{display:flex;flex-wrap:wrap;gap:8px;padding:14px 0}.shift-legend-item{display:grid;gap:2px;min-width:115px;padding:8px 10px;border:1px solid #dce6e7;border-radius:6px;background:#f8fbfb;color:#3f5e64}.shift-legend-item small{color:#718187}.shift-status{min-height:20px;margin:0;color:#4b777b;font-size:13px}.shift-grid-wrap{overflow:auto;border:1px solid #dfe7e8;border-radius:6px}.shift-table{width:100%;min-width:880px;border-collapse:collapse;color:#344b52}.shift-table th,.shift-table td{padding:10px 8px;border-bottom:1px solid #e5ebec;border-right:1px solid #edf1f2;text-align:center}.shift-table thead th{background:#f2f7f6;color:#60777e;text-transform:uppercase;font-size:11px}.shift-table tbody th{text-align:left;min-width:135px;background:#fbfdfd}.shift-table tbody tr:last-child>*{border-bottom:0}.shift-table th:last-child,.shift-table td:last-child{border-right:0}.shift-table td{min-width:90px}.shift-hours-total{font-weight:700;white-space:nowrap}.shift-cell{display:grid;gap:3px;align-content:center;white-space:pre-line;width:100%;min-height:54px;padding:6px 4px;border:0;border-radius:5px;font:inherit;font-size:12px;cursor:pointer}.shift-empty{background:#f8fafb;color:#7b8b90}.shift-morning{background:#e4f2f1;color:#376a6b}.shift-evening{background:#eaf0fb;color:#52688f}.shift-split{background:#f6eee1;color:#886738}.shift-off{background:#f1f3f4;color:#69777c}.shift-dialog{width:min(520px,95vw);border:0;border-radius:10px;padding:18px 20px;box-shadow:0 16px 48px #102a3340}.shift-dialog::backdrop{background:#132a3155}.shift-dialog .dialog-head{display:flex;justify-content:space-between;align-items:flex-start}.shift-dialog .dialog-head h2{margin:4px 0 12px;color:#344d55}.shift-dialog .dialog-head small{color:#718187;letter-spacing:.04em}.shift-dialog .dialog-head button{border:0;background:transparent;color:#52656d;font-size:22px}.shift-dialog label{display:grid;gap:6px;margin:12px 0;color:#52656d;font-size:13px}.shift-dialog input,.shift-dialog select,.shift-dialog textarea{width:100%;padding:9px;border:1px solid #cad7da;border-radius:5px;background:#fff;color:inherit;font:inherit}.shift-preview{padding:10px;border-radius:6px;background:#f2f7f6;color:#4b676d}.shift-dialog .product-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.shift-dialog .product-form-actions button{min-height:36px;padding:0 13px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fafb;color:#43575e}.shift-dialog .product-form-actions button.save{background:#619fa3;border:0;color:white}.shift-dialog .error{color:#b33333;min-height:1em}
@media(max-width:700px){.shift-heading{align-items:flex-start;flex-direction:column}.shift-toolbar{flex-wrap:wrap}.shift-view-toggle{margin-left:auto}.shift-legend-item{flex:1 1 130px}}
.shift-heading-actions{flex-wrap:wrap;justify-content:flex-end}.shift-cycle-dialog{max-height:92vh;overflow:auto}.shift-cycle-dialog h3{margin:12px 0;color:#344d55}.shift-cycle-list{display:grid;gap:8px;margin:6px 0 16px}.shift-cycle-item{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid #dfe7e8;border-radius:6px;color:#43575e}.shift-cycle-item span{margin-left:auto;color:#718187;font-size:12px}.shift-cycle-item button{border:1px solid #d8e1e3;border-radius:5px;background:white;padding:6px 8px;color:#7e4e4e}.cycle-pattern-tools{display:grid;gap:8px;margin:12px 0 8px;color:#52656d}.cycle-palette{display:flex;flex-wrap:wrap;gap:6px}.cycle-palette-choice{border:1px solid #d8e1e3;border-radius:5px;padding:7px 9px}.cycle-palette-choice[aria-pressed="true"]{outline:2px solid #438b8d;outline-offset:1px}.cycle-pattern{display:grid;grid-template-columns:repeat(auto-fit,minmax(64px,1fr));gap:6px;margin:8px 0}.cycle-position{min-height:40px;border:1px solid #d8e1e3;border-radius:5px}.cycle-date-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cycle-employee{display:grid;gap:10px;margin:12px 0;border:1px solid #dce5e6;border-radius:6px;padding:10px}.cycle-employee label{margin:0}.cycle-employee label:last-child{grid-template-columns:1fr 90px;align-items:center}.cycle-employee input[type="number"]{width:90px}.cycle-overwrite{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center}.cycle-overwrite input{width:auto!important}.shift-heading-actions button:disabled{opacity:.5;cursor:not-allowed}
.shift-config-tabs{display:flex;gap:4px;margin:0 -2px 14px;border-bottom:1px solid #e3eaeb;overflow-x:auto}.shift-config-tabs button{flex:0 0 auto;min-height:38px;padding:0 12px;border:0;border-bottom:3px solid transparent;background:#fff;color:#61767c;font:inherit;font-size:13px}.shift-config-tabs button[aria-selected=true]{border-color:#619fa3;color:#3f777b;font-weight:700}.shift-config-panel[hidden]{display:none}.shift-config-panel{max-height:70vh;overflow:auto}.shift-rules-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 14px}.shift-rules-form>label:not(.shift-rule-check){align-content:start}.shift-rules-form label.shift-rule-check{display:flex;grid-column:1/-1;align-items:center;gap:8px;margin:7px 0 0;color:#435b62;font-weight:600}.shift-rules-form label.shift-rule-check input{flex:0 0 auto;width:auto;margin:0;accent-color:#619fa3}.shift-rules-note,.shift-rules-form>.shift-status,.shift-rules-form>.error,.shift-rules-form>.product-form-actions{grid-column:1/-1}.shift-rules-note{margin:4px 0;color:#718187;font-size:12px;line-height:1.45}.shift-rules-form .product-form-actions{flex-wrap:wrap}.shift-rule-warnings{margin-top:14px;padding:12px 14px;border:1px solid #e1e8e9;border-radius:6px;background:#fbfdfd}.shift-rule-warnings:empty{display:none}.shift-rule-warnings h3{margin:0 0 8px;color:#526970;font-size:13px}.shift-rule-warnings .form-note{margin:0;color:#718187;font-size:12px}.shift-rule-warning{margin:6px 0;padding:8px 10px;border-left:3px solid #d29a45;border-radius:3px;background:#fff9ee;color:#72571f;font-size:12px;line-height:1.4}.shift-cycle-dialog{width:min(760px,95vw)}
@media(max-width:620px){.shift-rules-form{grid-template-columns:1fr}.shift-rules-form>.shift-rule-check,.shift-rules-note,.shift-rules-form>.shift-status,.shift-rules-form>.error,.shift-rules-form>.product-form-actions{grid-column:1}.shift-config-tabs button{padding:0 8px;font-size:12px}}
@media(max-width:700px){.cycle-date-grid{grid-template-columns:1fr}.shift-cycle-item{align-items:flex-start;flex-wrap:wrap}.shift-cycle-item span{margin-left:0;width:100%}}
.absence-planner{padding:12px 10px 24px}.absence-legend{display:flex;flex-wrap:wrap;gap:14px;padding:14px 2px;color:#53666d;font-size:12px}.absence-legend-item{display:flex;align-items:center;gap:6px}.absence-legend-item::before,.absence-swatch{display:inline-block;width:10px;height:10px;border-radius:3px;background:var(--absence-color);content:""}.absence-table{min-width:1020px}.absence-table td{height:88px;min-width:110px;vertical-align:top;text-align:left;padding:6px}.absence-cell{cursor:pointer}.absence-cell.outside-month{background:#f7f9f9;color:#a4afb2}.absence-chip,.absence-holiday-chip{display:block;width:100%;margin:2px 0;padding:5px 6px;border:0;border-left:4px solid var(--absence-color,#87979b);border-radius:4px;background:color-mix(in srgb,var(--absence-color,#87979b) 13%,white);color:#3d5359;text-align:left;font-size:11px;white-space:normal}.absence-chip{cursor:pointer}.absence-holiday-chip{--absence-color:#647781;font-weight:600}.absence-duration-toggle{display:flex;gap:6px;margin:12px 0}.absence-duration-toggle button{min-height:34px;padding:0 12px;border:1px solid #d8e1e3;border-radius:5px;background:#fff;color:#52656d}.absence-duration-toggle button.active{border-color:#70a7a9;background:#e2f0ef;color:#367b7d}.absence-flags{display:grid;gap:8px;margin:12px 0;padding:10px;border:1px solid #e1e8e9;border-radius:6px}.absence-flags label,.absence-type-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px!important;margin:2px 0!important}.absence-flags input,.absence-type-check input{width:auto!important}.absence-settings-dialog{max-height:90vh;overflow:auto}.absence-settings-dialog .module-tabs{display:flex;gap:6px;margin:8px 0 12px;border-bottom:1px solid #dfe5e7}.absence-settings-dialog .module-tabs button{padding:9px 12px;border:0;border-bottom:2px solid transparent;background:#fff;color:#53666d}.absence-settings-dialog .module-tabs button.active{border-color:#619fa3;color:#437c7e}.absence-type-form,.absence-holiday-form{display:grid;gap:8px;padding:12px;border:1px solid #dfe7e8;border-radius:7px}.absence-type-form label,.absence-holiday-form label{margin:0}.absence-type-form .absence-type-check{display:flex!important}.absence-swatch{flex:0 0 10px}.holiday-toolbar{display:flex;justify-content:center;align-items:center;gap:14px;margin:12px}.holiday-toolbar button{border:1px solid #d8e1e3;border-radius:5px;background:white;padding:6px 10px}.absence-holiday-form{grid-template-columns:1fr 1.3fr 1fr auto;align-items:end}.absence-holiday-form button{min-height:38px;border:0;border-radius:5px;background:#619fa3;color:white;padding:0 10px}
@media(max-width:700px){.absence-holiday-form{grid-template-columns:1fr 1fr}.absence-holiday-form button{grid-column:1/-1}}
.clock-view{padding:12px 10px 24px}.clock-toolbar{display:flex;align-items:end;gap:12px;margin:16px 0;padding:10px 0;border-block:1px solid #e5ebec}.clock-toolbar label{display:grid;gap:5px;color:#586b72;font-size:12px}.clock-toolbar select,.clock-toolbar input{min-height:36px;padding:6px 9px;border:1px solid #d6e0e2;border-radius:5px;background:white;color:#40555c}.clock-summary{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:12px;margin:16px 0}.clock-summary section{display:grid;gap:8px;align-content:center;min-height:92px;padding:14px;border-radius:7px;background:#f5f8f8;border-left:4px solid #74aeb0}.clock-summary section small{color:#657a80;font-size:11px;letter-spacing:.06em}.clock-summary section strong{color:#34525a;font-size:21px}.clock-summary section:first-child strong{font-size:16px}.clock-summary button{justify-self:start;min-height:34px;border:0;border-radius:5px;background:#619fa3;color:white;padding:0 12px}.clock-summary button.clock-stop{background:#bd7640}.clock-table{min-width:900px}.clock-table td{padding:10px 8px;border-bottom:1px solid #e7edef;color:#43575e}.clock-table .table-action{border:1px solid #d9e2e3;border-radius:4px;background:white;color:#7e4e4e;padding:5px 8px}.clock-view .empty-state{margin:0 0 10px}.clock-view .empty-state[hidden]{display:none}
@media(max-width:850px){.clock-summary{grid-template-columns:1fr 1fr}.clock-summary section:first-child{grid-column:1/-1}}
.invoice-line-picker{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:12px 0}
.invoice-appointment-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:14px 0}.invoice-appointment-filters label{display:grid;gap:6px;color:#536970;font-size:13px}.invoice-appointment-filters input,.invoice-appointment-filters select{width:100%;min-height:38px;padding:9px 10px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}.invoice-appointment-select-all{margin:12px 0}.invoice-appointments-table{min-width:820px}.invoice-appointments-table td:first-child,.invoice-appointments-table th:first-child{width:40px;text-align:center}.invoice-appointments-table input[type=checkbox]{width:18px;height:18px;min-height:0}
.invoice-line-picker label{display:grid;flex:1;min-width:180px;gap:6px;margin:0;color:#536970;font-size:13px}
.invoice-line-picker input,.invoice-line-picker select{width:100%;min-height:38px;padding:9px 10px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}
.invoice-line-picker button,.invoice-line-row button{min-height:36px;padding:0 12px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fafb;color:#43575e}
.invoice-line-list{display:grid;gap:7px;margin:12px 0 20px}
.invoice-line-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid #e1e8e9;border-radius:6px;background:#fbfdfd;color:#52656d}
.invoice-line-row span{min-width:0;overflow-wrap:anywhere}.invoice-tax-breakdown{padding:14px;border-radius:6px;background:#f4f8f7;color:#50666b;font-weight:600}
.invoice-history ol{display:grid;gap:9px;padding-left:22px;color:#52656d}.invoice-history li{padding:9px 12px;border:1px solid #e1e8e9;border-radius:6px;background:#fbfdfd}.invoice-history li span{color:#718187;font-size:12px}
.recurring-view-toggle{display:flex;gap:4px;margin-left:auto}.recurring-view-toggle button{min-height:32px;padding:0 10px;border:1px solid #d8e1e3;border-radius:4px;background:#fff;color:#52656d}.recurring-view-toggle button[aria-pressed="true"]{border-color:#79aeb0;background:#edf6f5;color:#315b60;font-weight:700}
.recurring-inline-check{display:flex;align-items:center;gap:8px;margin:12px 0;color:#536970;font-size:13px}.recurring-inline-check input{width:auto;margin:0}
.recurring-total-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0;padding:14px;border-radius:6px;background:#f4f8f7;color:#50666b}.recurring-total-row output{font-size:16px;font-weight:700}
.recurring-receipt-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}.recurring-receipt-options label{display:flex;align-items:flex-start;gap:9px;margin:0;padding:12px;border:1px solid #e1e8e9;border-radius:6px;color:#52656d}.recurring-receipt-options input{margin-top:2px}.recurring-receipt-options span{display:grid;gap:4px}.recurring-receipt-options small{color:#718187;font-size:11px}
.recurring-cards{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;margin:14px 8px}.recurring-cards:not([hidden]){display:grid}.recurring-card{display:grid;gap:7px;padding:14px;border:1px solid #e1e8e9;border-radius:7px;background:#fff;color:#43575e;text-align:left}.recurring-card strong{color:#344d55}.recurring-card small{color:#718187}
@media(max-width:600px){.recurring-receipt-options{grid-template-columns:1fr}.recurring-view-toggle{margin-left:0}.recurring-total-row{align-items:flex-start;flex-direction:column}}
@media(max-width:520px){.invoice-line-picker{align-items:stretch}.invoice-line-picker label{flex-basis:100%}.invoice-line-row{align-items:flex-start}}
.whatsapp-view{position:absolute;inset:0;overflow:auto;background:#fff;padding:12px 12px 24px}
.whatsapp-connect-card{min-height:258px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:22px;border:1px solid #e4e9eb;border-radius:16px;box-shadow:0 8px 24px #23383d12;text-align:center}
.whatsapp-connect-icon{display:grid;place-items:center;width:54px;height:54px;margin-bottom:12px;border-radius:50%;background:#edf5f4;color:#70a7a8;font-size:25px}
.whatsapp-connect-card h2{margin:2px 0 8px;color:#283b43;font-size:16px}
.whatsapp-connect-card>p{max-width:390px;margin:0 0 10px;color:#6c7c81;line-height:1.55}
.whatsapp-connect-card button{min-height:36px;padding:0 13px;border:0;border-radius:6px;background:#619fa3;color:#fff}
.whatsapp-connect-card .whatsapp-local-note{margin:9px 0 0;color:#88969a;font-size:11px}
.whatsapp-connection-dialog{width:min(460px,94vw);border:1px solid #dce5e6;border-radius:8px;padding:20px;box-shadow:0 18px 56px #20383d40}
.whatsapp-connection-dialog::backdrop{background:#20383d55}
.whatsapp-connection-dialog .dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.whatsapp-connection-dialog h2{margin:3px 0;color:#344d55}
.whatsapp-connection-dialog .dialog-head button{border:0;background:transparent;color:#52656d;font-size:22px}
.whatsapp-connection-dialog p{color:#586d73;line-height:1.55}
.whatsapp-connection-dialog .product-form-actions{display:flex;justify-content:flex-end}
.whatsapp-connection-dialog .product-form-actions button{min-height:36px;padding:0 14px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fafb;color:#43575e}
@media(max-width:560px){.whatsapp-connect-card{min-height:230px;padding:18px}.whatsapp-connect-card>p{max-width:320px}}
.messages-view{position:absolute;inset:0;display:flex;overflow:hidden;background:#fff}
.messages-view[hidden]{display:none}
.messages-sidebar{position:relative;display:flex;flex:0 0 340px;flex-direction:column;min-width:285px;border-right:1px solid #e1e6e8;background:#fff}
.messages-toolbar{display:flex;gap:8px;padding:12px 12px 8px}
.messages-toolbar button{height:34px;border:1px solid #dce4e5;border-radius:6px;background:#f8fafb;color:#50646a}
.messages-toolbar .save{flex:1;border:0;background:#619fa3;color:#fff}
.messages-search{display:flex;margin:4px 12px 8px}
.messages-search input{width:100%;height:34px;border:1px solid #dbe3e5;border-radius:18px;background:#f8fafb;padding:0 13px;color:#40555c;font:inherit}
.messages-filters{display:flex;gap:5px;padding:0 12px 9px;border-bottom:1px solid #e8edef}
.messages-filters button{min-height:28px;padding:0 10px;border:1px solid #e1e7e8;border-radius:16px;background:#f7f9f9;color:#52656d;font-size:12px;white-space:nowrap}
.messages-filters button.active{border-color:#8db6b7;background:#e6f1f0;color:#4a8486}
.messages-list{display:flex;flex:1;flex-direction:column;overflow:auto}
.messages-list[hidden]{display:none}
.message-conversation{display:flex;flex-direction:column;gap:5px;width:100%;padding:12px;border:0;border-bottom:1px solid #edf0f1;background:#fff;color:#485d64;text-align:left;cursor:pointer}
.message-conversation:hover,.message-conversation.selected{background:#edf5f4}
.message-conversation-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.message-conversation-head strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.message-conversation-head small{flex:none;color:#76868a;font-size:11px}
.message-conversation-preview{overflow:hidden;color:#718187;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.messages-list-empty{display:flex;flex-direction:column;align-items:center;gap:7px;margin:auto;padding:18px;text-align:center;color:#66777c}
.messages-list-empty[hidden]{display:none}
.messages-list-empty>span,.messages-thread-empty>div>span{color:#83aaab;font-size:22px}
.messages-list-empty strong{font-size:14px;color:#4b5e64}
.messages-list-empty p{max-width:260px;margin:0;color:#77858a;line-height:1.45}
.messages-list-empty button{min-height:34px;margin-top:4px;padding:0 12px;border:0;border-radius:5px;background:#619fa3;color:#fff}
.messages-thread-empty{display:grid;flex:1;place-items:center;min-width:0;padding:24px;text-align:center}
.messages-thread-empty>div{max-width:370px}
.messages-thread-empty h2{margin:10px 0 6px;color:#485b61;font-size:15px}
.messages-thread-empty p{margin:0;color:#77858a;line-height:1.5}
.messages-thread{display:flex;flex:1;flex-direction:column;min-width:0;overflow:hidden;background:#f9fbfb}
.messages-thread[hidden]{display:none}
.messages-thread-header{padding:15px 20px;border-bottom:1px solid #e1e8e9;background:#fff}
.messages-thread-header small{color:#789093;font-size:10px;letter-spacing:.04em}
.messages-thread-header h2{margin:4px 0;color:#3f565e;font-size:17px}
.messages-thread-header p{margin:0;color:#74858a;font-size:12px}
.messages-thread-history{display:flex;flex:1;flex-direction:column;gap:10px;overflow:auto;padding:18px}
.messages-history-empty{margin:auto;color:#78878b;font-size:13px}
.team-message{max-width:min(78%,620px);align-self:flex-start;padding:10px 12px;border:1px solid #e2e8e9;border-radius:8px;background:#fff;color:#455b62;overflow-wrap:anywhere}
.team-message.own{align-self:flex-end;border-color:#d5e9e7;background:#edf7f5}
.team-message-head{display:flex;justify-content:space-between;gap:20px;color:#50686e;font-size:11px}
.team-message-head time{color:#819095;font-size:10px}
.team-message p{margin:7px 0 0;white-space:pre-wrap;font-size:13px;line-height:1.45}
.team-message-compose{display:grid;gap:8px;padding:12px 16px;border-top:1px solid #e1e8e9;background:#fff}
.team-message-compose label{color:#50666d;font-size:12px;font-weight:600}
.team-message-compose textarea{width:100%;resize:vertical;border:1px solid #d4dfe1;border-radius:6px;padding:9px;color:#43585f;font:inherit}
.team-message-compose .form-note,.team-message-compose .error{margin:0;font-size:11px}
.team-message-compose button{justify-self:end;min-height:34px;padding:0 14px;border:0;border-radius:5px;background:#619fa3;color:#fff}
.team-message-users{display:grid;gap:4px;margin:8px 0;max-height:220px;overflow:auto}
.team-message-user{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:9px 10px;border:1px solid #e2e8e9;border-radius:5px;background:#fff;color:#465b62;text-align:left;cursor:pointer}
.team-message-user:hover{border-color:#9bbfc0;background:#f1f7f6}
.team-message-user small{color:#75868b;font-size:11px}
.team-message-dialog{width:min(540px,95vw);max-height:90vh;overflow:auto;border:1px solid #dce5e6;border-radius:8px;padding:20px;box-shadow:0 18px 56px #20383d40}
.team-message-dialog::backdrop{background:#20383d55}
.team-message-dialog .dialog-head{display:flex;align-items:center;justify-content:space-between;gap:14px}
.team-message-dialog .dialog-head h2{margin:2px 0 14px;color:#344d55;font-size:18px}
.team-message-dialog .dialog-head button{border:0;background:transparent;color:#52656d;font-size:22px}
.messages-alerts-dialog form{display:grid;gap:14px}.messages-alerts-option{display:flex;align-items:flex-start;gap:10px;padding:13px;border:1px solid #e1e8e9;border-radius:6px;color:#50646a}.messages-alerts-option input{margin:3px 0 0;accent-color:#619fa3}.messages-alerts-option span{display:grid;gap:7px}.messages-alerts-option strong{font-size:13px}.messages-alerts-option small{color:#738287;font-size:12px;line-height:1.5}.messages-alerts-privacy{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid #e0e8e8;border-radius:6px;background:#f4f8f8;color:#6b7c81}.messages-alerts-privacy>span{flex:none;color:#728e91}.messages-alerts-privacy p{margin:0;font-size:11px;line-height:1.5}.messages-alerts-privacy strong{color:#56696f}.messages-alerts-dialog .form-note,.messages-alerts-dialog .error{margin:0;font-size:11px;line-height:1.5}.messages-alerts-dialog .form-note{color:#728287}.messages-alerts-dialog .dialog-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:12px;border-top:1px solid #e5ebeb}.messages-alerts-dialog .dialog-actions button{min-height:34px;padding:0 12px;border:1px solid #d8e1e2;border-radius:5px;background:#fff;color:#52666d}.messages-alerts-dialog .dialog-actions .save{border:0;background:#619fa3;color:#fff}
.team-message-modes{display:flex;gap:8px;border-bottom:1px solid #e0e7e8}
.team-message-modes button{min-height:40px;padding:0 12px;border:0;border-bottom:3px solid transparent;background:#fff;color:#53666d}
.team-message-modes button.active{border-color:#63a1a4;color:#4a8486;font-weight:600}
.team-message-panel{padding:12px 2px 4px}
.team-message-panel>label:not(.messages-search){display:grid;gap:6px;margin:10px 0;color:#536970;font-size:13px}
.team-message-panel input:not([type=search]),.team-message-panel select{width:100%;min-height:38px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;padding:8px;color:inherit;font:inherit}
.team-message-panel select[multiple]{min-height:72px}
.messages-no-users,.team-message-note{margin:12px 2px;color:#6f8085;line-height:1.5}
.team-message-note{padding:10px;border-radius:5px;background:#f5f8f8;font-size:12px}
.team-message-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:12px;border-top:1px solid #e7ecec}
.team-message-actions button{min-height:36px;padding:0 13px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fafb;color:#43575e}
.team-message-actions button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:640px){.messages-sidebar{flex-basis:100%;min-width:0}.messages-thread-empty{display:none}.messages-filters{gap:4px;padding-inline:8px}.messages-filters button{padding-inline:8px}}
.agenda-notes-dialog{width:min(760px,96vw);max-height:92vh;overflow:auto;border:1px solid #dce5e6;border-radius:8px;padding:20px;box-shadow:0 18px 56px #20383d40;color:#465c63}
.agenda-notes-dialog::backdrop{background:#20383d55}
.agenda-notes-dialog .dialog-head{display:flex;align-items:center;justify-content:space-between;gap:14px}
.agenda-notes-dialog .dialog-head small{color:#789093;font-size:10px;letter-spacing:.05em}
.agenda-notes-dialog .dialog-head h2{margin:3px 0 12px;color:#344d55;font-size:19px}
.agenda-notes-dialog .dialog-head button,.agenda-note-editor-heading button{border:0;background:transparent;color:#52656d;font-size:21px;cursor:pointer}
.notes-toolbar{display:flex;align-items:center;gap:14px;padding:8px 0 12px;border-bottom:1px solid #e5ebec;color:#60747a;font-size:13px}
.notes-toolbar>.save{min-height:34px;padding:0 12px;border:0;border-radius:5px;background:#619fa3;color:#fff}
.notes-toolbar>label{display:flex;align-items:center;gap:6px;margin-left:auto;font-size:12px}
.agenda-notes-dialog>.form-note{font-size:11px}
.agenda-notes-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;max-height:42vh;overflow:auto;padding:10px 1px}
.agenda-note-card{min-width:0;padding:12px;border:1px solid #e1e8e9;border-left:4px solid #95babb;border-radius:6px;background:#fff}
.agenda-note-card.pinned{border-left-color:#d5ae55}
.agenda-note-card.priority-info{border-left-color:#79a9c6}
.agenda-note-card.priority-warning{border-left-color:#d6a451}
.agenda-note-card.priority-critical{border-left-color:#c36d6d}
.agenda-note-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.agenda-note-card h3{margin:0;color:#3e565d;font-size:14px;overflow-wrap:anywhere}
.agenda-note-category{flex:none;padding:3px 6px;border-radius:10px;background:#edf3f3;color:#60777c;font-size:10px}
.agenda-note-card>p{margin:9px 0;color:#667a80;font-size:12px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}
.agenda-note-card .agenda-note-meta{color:#819095;font-size:10px}
.agenda-note-actions{display:flex;gap:7px;margin-top:10px}
.agenda-note-actions button,.agenda-note-editor-heading button{min-height:29px;padding:0 9px;border:1px solid #d8e2e3;border-radius:4px;background:#f8fafb;color:#52676d;font-size:11px}
.agenda-notes-empty{margin:0;padding:24px 12px;text-align:center;color:#74858a;font-size:13px}
.agenda-notes-empty[hidden]{display:none}
.agenda-note-editor{margin-top:14px;padding-top:13px;border-top:1px solid #e3e9ea}
.agenda-note-editor[hidden]{display:none}
.agenda-note-editor-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.agenda-note-editor-heading h3{margin:0;color:#435a61;font-size:15px}
#agenda-note-form{display:grid;gap:10px}
#agenda-note-form>label:not(.agenda-note-switch){display:grid;gap:5px;color:#536970;font-size:12px}
#agenda-note-form input:not([type=checkbox]),#agenda-note-form textarea,#agenda-note-form select{width:100%;min-height:36px;border:1px solid #d1dcde;border-radius:4px;background:#fff;padding:7px;color:#43585f;font:inherit}
#agenda-note-form textarea{resize:vertical}
.agenda-note-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.agenda-note-fields>label{display:grid;gap:5px;color:#536970;font-size:12px}
.agenda-note-switch{display:flex;align-items:center;gap:8px;color:#536970;font-size:12px}
.agenda-note-switch input,.agenda-note-reminder-options input{width:auto!important;min-height:0!important}
.agenda-note-reminder-panel{display:grid;gap:10px;margin:0;padding:12px;border:1px solid #e0e7e8;border-radius:5px;background:#fafcfc}
.agenda-note-reminder-panel[hidden]{display:none}
.agenda-note-reminder-panel>legend,.agenda-note-reminder-options>legend{padding:0 5px;color:#536970;font-size:12px}
.agenda-note-reminder-options{display:flex;flex-wrap:wrap;gap:12px;margin:0;padding:9px;border:1px solid #e2e8e9;border-radius:4px}
.agenda-note-reminder-options>label{display:flex;align-items:center;gap:5px;color:#60747a;font-size:11px}
.agenda-note-reminder-panel .form-note{margin:0;font-size:11px}
#agenda-note-recipients{min-height:75px!important}
#agenda-note-form .product-form-actions{display:flex;justify-content:flex-end}
#agenda-note-form .product-form-actions button{min-height:35px;padding:0 13px;border:0;border-radius:5px;background:#619fa3;color:#fff}
@media(max-width:600px){.agenda-notes-dialog{padding:14px}.agenda-note-fields{grid-template-columns:1fr}.notes-toolbar{flex-wrap:wrap}.notes-toolbar>label{margin-left:0}.agenda-notes-list{grid-template-columns:1fr}}
.marketing-view{position:absolute;inset:0;overflow:auto;background:#fff;padding:18px 22px;color:#465c63}
.marketing-view[hidden]{display:none}
.marketing-tabs{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid #e2e8e9;white-space:nowrap}
.marketing-tabs button{min-height:40px;padding:0 13px;border:0;border-bottom:3px solid transparent;background:#fff;color:#62757a;font:inherit;font-size:13px}
.marketing-tabs button.active{border-color:#63a1a4;color:#4a8486;font-weight:600}
.marketing-toolbar{display:flex;align-items:center;gap:10px;margin:18px 0 12px}
.marketing-toolbar>button,.marketing-readonly-empty button{min-height:36px;padding:0 13px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fafb;color:#43575e}
.marketing-toolbar>.save{border:0;background:#619fa3;color:#fff}
.marketing-search{margin-left:auto}
.marketing-search input{width:min(280px,35vw);height:36px;border:1px solid #dbe3e5;border-radius:5px;padding:0 11px;font:inherit}
.marketing-view .people-table{width:100%;border-collapse:collapse;background:white;font-size:13px}
.marketing-view .people-table th,.marketing-view .people-table td{padding:11px 9px;border-bottom:1px solid #e8edef;text-align:left;white-space:nowrap}
.marketing-view .people-table th{color:#718187;font-size:11px;font-weight:600}
.marketing-code-table td:nth-child(3){font-weight:600;color:#3c555c}
.marketing-code-table td button{padding:5px 8px;border:1px solid #dce5e6;border-radius:4px;background:#fff;color:#52666d}
.marketing-view .empty-state,.marketing-readonly-empty{display:flex;min-height:180px;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1px solid #e6ebec;border-radius:6px;color:#62757a;text-align:center}
.marketing-view .empty-state p,.marketing-readonly-empty p{max-width:520px;margin:0;color:#7a898d;line-height:1.5}
.marketing-view .empty-state .save{min-height:34px;padding:0 12px;border:0;border-radius:5px;background:#619fa3;color:#fff}
.marketing-section-heading{margin:20px 0 14px}
.marketing-section-heading h2{margin:0 0 5px;color:#425a61;font-size:18px}
.marketing-section-heading h2 small{padding:3px 7px;border-radius:10px;background:#edf3f3;color:#668084;font-size:11px;font-weight:500}
.marketing-section-heading p{margin:0;color:#79888d}
.marketing-readonly-empty{padding:22px}
.marketing-readonly-empty strong{color:#52686e;font-size:14px}
.marketing-readonly-empty label{display:grid;gap:6px;width:min(420px,100%);margin-top:12px;text-align:left}
.marketing-readonly-empty input{height:36px;border:1px solid #dbe3e5;border-radius:4px;padding:0 10px}
.marketing-points-status{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border:1px solid #e5ebeb;border-radius:9px;background:#f5f8f8}.marketing-points-status>div{display:grid;gap:5px}.marketing-points-status strong{color:#53666c;font-size:13px}.marketing-points-status span{color:#78888d;font-size:12px}.marketing-points-membership-note{margin:10px 0;padding:11px 14px;border-radius:6px;background:#edf5f4;color:#63787c;font-size:12px}.marketing-points-switch{position:relative;display:inline-flex;width:48px;height:28px;flex:0 0 auto;align-items:center;cursor:pointer}.marketing-points-switch input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.marketing-points-switch>span[aria-hidden=true]{width:48px;height:26px;border:1px solid #cbd6d8;border-radius:20px;background:#e6ebec;transition:background .15s,border-color .15s}.marketing-points-switch>span[aria-hidden=true]::after{content:"";display:block;width:18px;height:18px;margin:3px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #243d4430;transition:transform .15s}.marketing-points-switch input:checked+span[aria-hidden=true]{border-color:#5b9a9e;background:#5b9a9e}.marketing-points-switch input:checked+span[aria-hidden=true]::after{transform:translateX(21px)}.marketing-points-switch input:focus-visible+span[aria-hidden=true]{outline:2px solid #398d91;outline-offset:2px}.marketing-points-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}.marketing-points-card{display:grid;gap:12px;min-width:0;margin:0;padding:16px;border:1px solid #e1e9ea;border-radius:9px;background:#fff}.marketing-points-card legend{padding:0 6px;color:#52676d;font-size:14px;font-weight:650}.marketing-points-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:10px}.marketing-points-fields label,.marketing-points-conditional{display:grid;gap:6px;color:#6a7d82;font-size:11px}.marketing-points-fields input,.marketing-points-fields select,.marketing-points-conditional input{width:100%;min-height:36px;padding:6px 8px;border:1px solid #d2dddf;border-radius:5px;background:#fff;color:#43575e;font:inherit;font-size:12px}.marketing-points-example{margin:0;padding:10px 12px;border-radius:5px;background:#f7f9f9;color:#64777c;font-size:12px}.marketing-points-help{padding-top:9px;border-top:1px solid #edf0f0;color:#78888d;font-size:11px}.marketing-points-help summary{cursor:pointer}.marketing-points-help p{margin:8px 0 0;line-height:1.5}.marketing-points-choice-list{display:grid;gap:7px}.marketing-points-choice{display:flex;align-items:flex-start;gap:9px;padding:11px;border:1px solid #e2e8e9;border-radius:6px;background:#fff;color:#52676d;cursor:pointer}.marketing-points-choice:has(input:checked){border-color:#83afb1;background:#edf5f4}.marketing-points-choice input{margin:2px 0 0;accent-color:#619fa3}.marketing-points-choice span{display:grid;gap:4px}.marketing-points-choice strong{font-size:12px}.marketing-points-choice small{color:#77888c;font-size:10px;line-height:1.4}.marketing-points-warning,.marketing-points-info{margin:0;padding:10px 11px;border-radius:5px;font-size:11px;line-height:1.45}.marketing-points-warning{background:#fff7e8;color:#866c40}.marketing-points-info{background:#eff6f6;color:#6f8286}.marketing-points-card-intro{margin:0;color:#718187;font-size:11px;line-height:1.45}.marketing-points-conditional{max-width:220px}.marketing-points-option-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 17px;border:1px solid #e1e9ea;border-radius:9px;background:#fff}.marketing-points-option-card--wide{grid-column:1/-1}.marketing-points-option-card>div{display:grid;gap:5px}.marketing-points-option-card strong{color:#53676c;font-size:13px}.marketing-points-option-card p{margin:0;color:#77878b;font-size:11px;line-height:1.45}.marketing-points-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding:12px 0;border-top:1px solid #e4ebec}.marketing-points-footer p{flex:1 1 280px;margin:0;color:#748388;font-size:11px}.marketing-points-footer button{min-height:36px;padding:0 12px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fafb;color:#43575e;font:inherit;font-size:12px}.marketing-points-footer button.save{border:0;background:#619fa3;color:#fff}.marketing-points-footer button:disabled,.marketing-points-form :disabled{opacity:.6;cursor:not-allowed}
.marketing-campaign-quotas{display:grid;gap:9px;margin:14px 0;padding:15px;border:1px solid #e5ebeb;border-radius:6px;background:#fafcfc;color:#687a7f;font-size:13px}
.marketing-campaign-list{display:grid;gap:10px;margin:14px 0}.marketing-campaign-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 16px;align-items:center;padding:14px 16px;border:1px solid #e2e9ea;border-radius:6px;background:#fff}.marketing-campaign-card h3{margin:0;color:#415a61;font-size:15px}.marketing-campaign-card p,.marketing-campaign-card small{grid-column:1;color:#718187;font-size:12px}.marketing-campaign-card p{margin:0}.marketing-campaign-card button{grid-column:2;grid-row:1/4}.marketing-campaign-composer{margin:18px 0;padding:18px;border:1px solid #e1e8e9;border-radius:7px;background:#fff}.campaign-composer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.campaign-composer-head small{color:#789095;font-size:10px;letter-spacing:.07em}.campaign-composer-head h3{margin:4px 0;color:#40585f;font-size:18px}.campaign-composer-head p{margin:0 0 14px;color:#77868a;font-size:13px}.campaign-step-tabs{display:flex;gap:8px;margin:12px 0 18px;border-bottom:1px solid #e5ebeb}.campaign-step-tabs button{padding:9px 12px;border:0;border-bottom:2px solid transparent;background:transparent;color:#687a7f}.campaign-step-tabs button.active{border-color:#398d91;color:#28777b;font-weight:650}.marketing-campaign-composer [data-campaign-step]:not([hidden]){display:grid;gap:12px}.marketing-campaign-composer label{display:grid;gap:6px;color:#51676e;font-size:12px}.marketing-campaign-composer input:not([type=checkbox]):not([type=radio]),.marketing-campaign-composer select,.marketing-campaign-composer textarea{width:100%;min-height:36px;padding:7px 9px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:#43575e;font:inherit}.marketing-campaign-composer textarea{resize:vertical}.campaign-condition-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:#52686e;font-size:13px}.campaign-condition-head select{max-width:210px}.campaign-condition-list{display:grid;gap:8px}.campaign-condition-row{display:grid;grid-template-columns:minmax(190px,1fr) minmax(160px,1fr) auto;gap:8px;align-items:center}.campaign-exclusions,.campaign-schedule{display:grid;gap:9px;margin:4px 0;padding:13px;border:1px solid #e4eaea;border-radius:5px}.campaign-exclusions legend,.campaign-schedule legend{padding:0 5px;color:#536970;font-size:12px;font-weight:650}.marketing-campaign-composer .campaign-exclusions label,.marketing-campaign-composer .campaign-schedule label{display:flex;align-items:center;gap:8px}.campaign-exclusions input[type=number]{max-width:90px}.campaign-audience-summary,.campaign-review-summary,.campaign-preview{padding:14px;border:1px solid #e2e9ea;border-radius:5px;background:#f8fbfb;color:#566c72}.campaign-audience-summary strong{color:#3d5c61}.campaign-audience-summary p{margin:7px 0;color:#61767b;font-size:12px}.campaign-audience-summary small{color:#7b898d}.campaign-message-tools{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.campaign-message-tools label{min-width:180px}.campaign-message-tools span{padding:9px;color:#728287;font-size:12px}.campaign-preview strong{color:#50666c;font-size:12px}.campaign-preview p{font-weight:600}.campaign-preview div{white-space:pre-wrap;color:#465e64}.campaign-preview small{display:block;margin-top:12px;color:#7b898d}.campaign-schedule label span{margin-left:auto;color:#76858a;font-size:11px}.campaign-composer-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:15px}.campaign-composer-actions [hidden]{display:none}@media(max-width:700px){.marketing-campaign-card{grid-template-columns:1fr}.marketing-campaign-card button{grid-column:1;grid-row:auto;justify-self:start}.campaign-composer-head{display:grid}.campaign-condition-row{grid-template-columns:1fr}.campaign-step-tabs{overflow-x:auto}.campaign-step-tabs button{white-space:nowrap}.campaign-schedule label{align-items:flex-start;flex-wrap:wrap}.campaign-schedule label span{margin-left:0}}
.marketing-code-dialog{width:min(620px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto;border:1px solid #dce5e6;border-radius:8px;padding:9px 11px 11px;box-shadow:0 18px 56px #20383d40}
@media(max-width:700px){.marketing-notice-fields{grid-template-columns:1fr}.marketing-notice-fields .notice-wide{grid-column:1}.marketing-notice-fields fieldset{grid-template-columns:1fr}.marketing-notice-fields .notice-recipient-columns{grid-template-columns:1fr}.notice-estimate{align-items:flex-start;flex-direction:column}.marketing-notice-card{grid-template-columns:1fr}.marketing-notice-card button{grid-column:1;grid-row:auto;justify-self:start}}
.marketing-notice-dialog{width:min(760px,95vw)}.marketing-notice-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:8px}.marketing-notice-fields>label{display:grid;gap:6px;color:#51676e;font-size:12px}.marketing-notice-fields input:not([type=checkbox]),.marketing-notice-fields select{width:100%;min-height:36px;padding:7px 9px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:#43575e;font:inherit}.marketing-notice-fields .notice-wide{grid-column:1/-1}.marketing-notice-fields fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:0;padding:13px;border:1px solid #e4eaea;border-radius:5px}.marketing-notice-fields fieldset legend{padding:0 5px;color:#536970;font-size:12px;font-weight:650}.marketing-notice-fields fieldset label{display:grid;gap:6px;color:#51676e;font-size:12px}.marketing-notice-fields .notice-recipient-columns{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:16px}.notice-recipient-columns>div{display:grid;align-content:start;gap:9px}.notice-recipient-columns label,.marketing-notice-fields .notice-time-window>label,.marketing-notice-fields .notice-active{display:flex;align-items:center;gap:8px}.notice-consent-note{margin:0;padding:10px 12px;border-left:3px solid #cca15e;background:#fffaf0;color:#75613d;font-size:12px}.notice-time-window>div{display:flex;align-items:center;gap:8px}.marketing-notice-fields .notice-time-window input[type=number]{max-width:90px}.notice-estimate{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px;border:1px solid #e2e9ea;border-radius:5px;background:#f8fbfb;color:#566c72}.notice-estimate p{margin:0;font-size:12px}.marketing-notice-fields .notice-active{justify-content:flex-start}.notice-active small{color:#77868a}.marketing-notice-list{display:grid;gap:10px;margin:14px 0}.marketing-notice-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 16px;align-items:center;padding:14px 16px;border:1px solid #e2e9ea;border-radius:6px;background:#fff}.marketing-notice-card h3{margin:0;color:#415a61;font-size:15px}.marketing-notice-card p,.marketing-notice-card small{grid-column:1;margin:0;color:#718187;font-size:12px}.marketing-notice-card button{grid-column:2;grid-row:1/4}
.membership-modality-dialog{width:min(760px,95vw)}
.marketing-notice-dialog{width:min(760px,95vw)}.marketing-notice-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:8px}.marketing-notice-fields>label{display:grid;gap:6px;color:#51676e;font-size:12px}.marketing-notice-fields input:not([type=checkbox]),.marketing-notice-fields select{width:100%;min-height:36px;padding:7px 9px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:#43575e;font:inherit}.marketing-notice-fields .notice-wide{grid-column:1/-1}.marketing-notice-fields fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:0;padding:13px;border:1px solid #e4eaea;border-radius:5px}.marketing-notice-fields fieldset legend{padding:0 5px;color:#536970;font-size:12px;font-weight:650}.marketing-notice-fields fieldset label{display:grid;gap:6px;color:#51676e;font-size:12px}.marketing-notice-fields .notice-recipient-columns{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:16px}.notice-recipient-columns>div{display:grid;align-content:start;gap:9px}.notice-recipient-columns label,.marketing-notice-fields .notice-time-window>label,.marketing-notice-fields .notice-active{display:flex;align-items:center;gap:8px}.notice-consent-note{margin:0;padding:10px 12px;border-left:3px solid #cca15e;background:#fffaf0;color:#75613d;font-size:12px}.notice-time-window>div{display:flex;align-items:center;gap:8px}.marketing-notice-fields .notice-time-window input[type=number]{max-width:90px}.notice-estimate{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px;border:1px solid #e2e9ea;border-radius:5px;background:#f8fbfb;color:#566c72}.notice-estimate p{margin:0;font-size:12px}.marketing-notice-fields .notice-active{justify-content:flex-start}.notice-active small{color:#77868a}.marketing-notice-list{display:grid;gap:10px;margin:14px 0}.marketing-notice-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 16px;align-items:center;padding:14px 16px;border:1px solid #e2e9ea;border-radius:6px;background:#fff}.marketing-notice-card h3{margin:0;color:#415a61;font-size:15px}.marketing-notice-card p,.marketing-notice-card small{grid-column:1;margin:0;color:#718187;font-size:12px}.marketing-notice-card button{grid-column:2;grid-row:1/4}
.marketing-code-dialog::backdrop{background:#20383d55}
.marketing-code-dialog .dialog-head{display:flex;align-items:center;justify-content:space-between;gap:14px}
.marketing-code-dialog .dialog-head h2{margin:3px 0 15px;color:#344d55;font-size:18px}
.marketing-code-dialog .dialog-head small{color:#7a898d;font-size:10px;letter-spacing:.08em}
.marketing-code-dialog .dialog-head button{border:0;background:transparent;color:#52656d;font-size:22px}
.marketing-code-body{padding:13px 15px 12px;border:1px solid #e1e9ea;border-radius:15px;background:#f7f9f9}.marketing-code-intro{display:flex;align-items:center;gap:12px;margin:2px 0 13px;padding:10px;border:1px solid #e0e9e8;border-radius:9px;background:#edf5f4}
.marketing-code-intro>span{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#e1eeee;color:#4b898b;font-weight:700}
.marketing-code-intro div{display:grid;gap:3px}.marketing-code-intro strong{color:#4d6268;font-size:13px}.marketing-code-intro small{color:#829095}
.marketing-code-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.marketing-code-fields label{display:grid;gap:5px;color:#536970;font-size:12px}.marketing-code-fields .marketing-code-wide{grid-column:1/-1}
.marketing-code-fields input,.marketing-code-fields select{width:100%;min-height:36px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;padding:7px;color:#43575e;font:inherit}
.marketing-code-fields input:disabled{background:#f4f6f6;color:#89969a}
.marketing-code-switches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0;color:#536970;font-size:12px}
.marketing-code-switches label{display:flex;align-items:center;gap:7px;min-height:36px;padding:7px 10px;border:1px solid #e0e8e8;border-radius:7px;background:#fff}
.marketing-code-dialog .product-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}
.marketing-code-dialog .product-form-actions button{min-height:36px;padding:0 14px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fafb;color:#43575e}
.marketing-code-dialog .product-form-actions .save{border:0;background:#619fa3;color:#fff}
.membership-modality-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-bottom:13px}
.membership-modality-fields label,.membership-conditional-fields label{display:grid;gap:5px;color:#536970;font-size:12px}
.membership-modality-fields input,.membership-modality-fields select,.membership-modality-fields textarea,.membership-conditional-fields input,.membership-conditional-fields select,.membership-conditional-fields textarea{width:100%;min-height:36px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;padding:7px;color:#43575e;font:inherit}
.membership-modality-fields textarea,.membership-conditional-fields textarea{resize:vertical}
.membership-wide-field{grid-column:1/-1}
.membership-modality-dialog h3{margin:16px 0 8px;color:#4b6269;font-size:13px}
.membership-benefit-card{padding:12px;border:1px solid #e2e9ea;border-radius:6px;background:#fbfcfc}
.membership-switch{display:flex;align-items:flex-start;gap:9px;margin:6px 0;color:#536970;font-size:13px}
.membership-switch input{margin-top:2px}
.membership-switch>span:not(.membership-switch-placeholder),.membership-disabled-option>span{display:grid;gap:3px}
.membership-switch strong,.membership-disabled-option strong{color:#4c6268;font-size:12px}
.membership-switch small,.membership-disabled-option small{color:#7a898d;font-size:11px;line-height:1.45}
.membership-disabled-option{opacity:.55}
.membership-switch-placeholder{width:13px;height:13px;flex:none;border:1px solid #b9c7c9;border-radius:3px}
.membership-conditional-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0 12px 22px}
.membership-conditional-fields[hidden]{display:none}
.membership-policy-options{display:grid;gap:8px;margin:0;padding:0;border:0}
.membership-policy-options>label{display:flex;align-items:flex-start;gap:9px;padding:10px;border:1px solid #dce5e6;border-radius:5px;color:#536970}
.membership-policy-options>label:has(input:checked){border-color:#79aeb0;background:#f4f9f9}
.membership-policy-options input{margin-top:2px}
.membership-policy-options span{display:grid;gap:3px}
.membership-policy-options strong{font-size:12px;color:#4c6268}
.membership-policy-options small{font-size:11px;color:#7a898d;line-height:1.45}
.membership-availability{margin:14px 0 8px;padding:10px;border:1px solid #e2e9ea;border-radius:5px}
.membership-modality-table td:nth-child(2){font-weight:600;color:#3c555c}
.membership-modality-table td button{padding:5px 8px;border:1px solid #dce5e6;border-radius:4px;background:#fff;color:#52666d}
.membership-modality-table td:nth-child(6){white-space:normal;min-width:190px}
@media(max-width:760px){.marketing-view{padding:12px}.marketing-toolbar{flex-wrap:wrap}.marketing-search{margin-left:0}.marketing-search input{width:100%}.marketing-points-grid{grid-template-columns:1fr}.marketing-code-fields,.membership-modality-fields,.membership-conditional-fields{grid-template-columns:1fr}.membership-wide-field{grid-column:auto}.marketing-view .people-table{display:block;overflow-x:auto}}
.rail button{display:grid;width:100%;place-items:center;padding:0;cursor:pointer;color:#f5f8f8;transition:background-color .15s ease,color .15s ease}
.rail button:hover{background:#405861;color:#fff}
.rail button:focus-visible{outline:2px solid #a8dadd;outline-offset:-3px}
.rail button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rail .rail-bottom{margin-top:auto;width:100%;padding:0;text-align:center;color:#fff}
.centers-view{position:absolute;inset:0;display:flex;flex-direction:column;overflow:auto;background:#fff;padding:8px;color:#465c63}
.centers-view[hidden]{display:none}
.centers-heading{display:grid;grid-template-columns:171px 198px minmax(0,1fr) 64px;align-items:center;column-gap:10px;height:50px;flex:0 0 50px;margin:0 10px 8px 11px}
.centers-heading h1{grid-column:1;display:flex;align-items:center;gap:8px;margin:0;color:#40575e;font-size:16px;font-weight:600;line-height:1.2;white-space:nowrap}
.centers-title-icon,.centers-summary-icon{display:grid;flex:0 0 34px;place-items:center;width:34px;height:34px;border-radius:9px;background:#619fa3;color:#fff}
.centers-title-icon svg,.centers-summary-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.centers-actions{grid-column:2;display:flex;gap:6px;margin:0}
.centers-actions #new-room{width:89px}
.centers-actions #new-center{width:103px}
.centers-toolbar{grid-column:3;display:flex;align-items:center;gap:10px;min-width:0;margin:0;padding:0;border:0}
.centers-search-field{position:relative;flex:1;min-width:0}
.centers-search-field>svg{position:absolute;top:50%;left:10px;width:16px;height:16px;transform:translateY(-50%);fill:none;stroke:#667d82;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.centers-toolbar input{width:100%;min-width:0;height:30px;padding:0 10px 0 32px;border:1px solid #d4dfe1;border-radius:5px;background:#fff;color:#43575e;font:inherit;font-size:12px}
.centers-result-count{display:flex;flex:0 0 120px;align-items:center;justify-content:center;gap:7px;height:32px;border:1px solid #dce5e6;border-radius:16px;background:#fff;color:#657a80;font-size:12px;white-space:nowrap}
.centers-result-count svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.centers-result-count span{font-size:12px}
.centers-heading>button{grid-column:4;min-height:28px;padding:0 10px;border:1px solid #d6e1e2;border-radius:5px;background:#fff;color:#43575e;font:inherit;font-size:12px}
.centers-actions button{height:28px;min-height:28px;padding:0 8px;border:1px solid #d6e1e2;border-radius:5px;background:#fff;color:#43575e;font:inherit;font-size:12px;white-space:nowrap}
.centers-actions .save{border-color:#619fa3;background:#619fa3;color:#fff}
.centers-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:8px;flex:1;min-height:0;margin:0}
.centers-sidebar,.center-summary,.rooms-section{border:1px solid #e3e9ea;border-radius:6px;background:#fff}
.centers-sidebar{display:flex;flex-direction:column;gap:5px;min-height:0;padding:12px;border-radius:14px;background:#f4f7f7}
.centers-list-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.centers-list-heading h2{margin:0;color:#53686f;font-size:10px;font-weight:600;letter-spacing:.08em}
.center-summary h2{margin:0;color:#4a6067;font-size:15px}
.centers-list-heading>span{color:#819095;font-size:12px}
.centers-sidebar>#centers-list{min-height:0;overflow:auto}
.centers-sidebar-footer{min-height:66px;margin-top:auto;padding:10px;border:1px solid #e4e9e9;border-radius:10px;background:#fff;color:#60767c;font-size:11px}
.centers-sidebar-footer>div{display:flex;align-items:center;justify-content:space-between;gap:6px}
.centers-sidebar-footer strong{color:#40575e;font-size:11px}
.centers-sidebar-footer p{margin:6px 0 0;color:#829195;font-size:10px}
.center-choice{position:relative;display:grid;width:100%;gap:5px;margin-top:8px;padding:11px 38px 11px 12px;border:1px solid #e5ebec;border-radius:11px;background:#fff;color:#536970;text-align:left;box-shadow:0 2px 5px #23404a0a}
.center-choice.active{border-color:#83b0b1;background:#e9f3f2;box-shadow:0 0 0 2px #82b0b033}
.center-choice-all{background:#f7fafb}
.center-choice-icon{position:absolute;top:13px;left:12px;display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#dceceb;color:#4f8f94}
.center-choice-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.center-choice-all strong,.center-choice-all small{margin-left:40px}
.center-choice:not(.center-choice-all) strong{margin-left:30px}
.center-choice:not(.center-choice-all)>small{margin-left:12px}
.center-choice strong{font-size:13px}.center-choice small{color:#839195}
.center-choice-status{justify-self:start;margin-left:12px;padding:3px 6px;border-radius:10px;background:#fff0dd;color:#d76708;font-size:10px}
.center-choice-count{position:absolute;top:50%;right:9px;display:grid;place-items:center;width:25px;height:25px;transform:translateY(-50%);border-radius:50%;background:#619fa3;color:#fff;font-size:11px;font-weight:600}
.centers-detail-content{display:flex;flex-direction:column;gap:8.8px;min-width:0;min-height:0;padding:10px;border:1px solid #dce5e6;border-radius:14px;background:#f4f7f7}
.center-summary{display:flex;flex:0 0 54px;align-items:center;gap:14px;min-height:54px;padding:0 11px;border:1px solid #e6ebec;border-radius:12px;background:#fff}
.centers-summary-icon{flex-basis:36px;width:36px;height:36px;border-radius:9px;background:#619fa3}
.center-summary-copy{display:flex;flex:1;flex-wrap:wrap;align-items:center;gap:4px 12px;min-width:0}
.center-summary-title{display:flex;align-items:center;gap:9px;min-width:0}
.center-summary h2{font-size:16px;line-height:20px}.center-summary-title>span{padding:4px 9px;border-radius:14px;background:#e8f3f2;color:#4e7c7e;font-size:11px;white-space:nowrap}
.center-summary-title p{margin:0;color:#536970;font-size:12px;line-height:16px}
.center-summary>p{margin:4px 0 0;color:#7a898d;font-size:12px;line-height:16px}
.center-summary-copy>button{min-height:25px;padding:0 8px;border:1px solid #d6e1e2;border-radius:5px;background:#fff;color:#43575e;font:inherit;font-size:11px}
.center-summary:not(.all-centers){height:auto;flex:0 0 auto;min-height:54px;align-items:flex-start;padding:10px 11px}
.center-summary:not(.all-centers) .center-summary-copy{align-items:flex-start}
.center-summary:not(.all-centers) .center-summary-title{flex-wrap:wrap}
.center-summary:not(.all-centers) .center-summary-title p{flex-basis:100%}
.center-summary.all-centers dl,.center-summary.all-centers .center-summary-copy>button{display:none}
.center-summary dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 14px}
.center-summary dl>div{padding:10px;border-radius:5px;background:#f7f9f9}
.center-summary dt{color:#819095;font-size:10px}.center-summary dd{margin:5px 0 0;color:#52666d;font-weight:600}
.center-summary>button:disabled,.centers-actions button:disabled,.rooms-section button:disabled{opacity:.55;cursor:not-allowed}
.rooms-section{flex:1;min-height:0;overflow:auto;padding:0}
.rooms-section .centers-list-heading{margin-bottom:10px}
.rooms-section .centers-list-heading p{margin:4px 0 0;color:#839095;font-size:12px}
.rooms-section .people-table{width:100%;border-collapse:collapse;font-size:13px}
.rooms-section .people-table{table-layout:fixed}
.rooms-section .people-table th,.rooms-section .people-table td{padding:10px 8px;border-bottom:1px solid #e8edef;text-align:left;white-space:nowrap}
.rooms-section .people-table tbody td{padding-top:14px;padding-bottom:14px}
.rooms-section .people-table tbody tr{background:#f3f7f7}
.rooms-section .people-table th{background:#eef5f5;color:#687a80;font-size:11px;font-weight:600;text-transform:none}
.rooms-section .people-table th:first-child,.rooms-section .people-table td:first-child{width:14.5%}
.rooms-section .people-table th:nth-child(2){width:25%}.rooms-section .people-table th:nth-child(3){width:16%}.rooms-section .people-table th:nth-child(4){width:14%}.rooms-section .people-table th:nth-child(5){width:13%}.rooms-section .people-table th:nth-child(6){width:11%}.rooms-section .people-table th:nth-child(7){width:6.5%}
.rooms-section .people-table th:first-child{padding-left:66px}
.rooms-section .people-table td:first-child{padding-left:72px}
.rooms-section .people-table th:nth-child(2),.rooms-section .people-table td:nth-child(2){padding-left:0}
.room-row-actions{display:flex;align-items:center;gap:5px}
.room-row-actions button{display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid transparent;border-radius:6px;cursor:pointer}
.room-row-actions svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.room-row-edit{background:#e5f0ff;color:#3177c5}.room-row-delete{background:#ffeded;color:#c84848}
.room-name-cell{white-space:normal!important}
.room-name-main,.room-center-name{display:flex;align-items:center;gap:8px;color:#3e5860}
.room-name-main strong{font-size:13px;font-weight:600}.room-name-cell>small{display:block;margin:4px 0 0 18px;color:#71858a;font-size:11px}
.room-color-dot{display:inline-block;flex:0 0 9px;width:9px;height:9px;border-radius:50%}
.room-center-name .room-color-dot{width:8px;height:8px;border-radius:2px}
.room-status-badge{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border:1px solid #e1e8e9;border-radius:14px;background:#f5f8f8;color:#63777d;font-size:11px}
.room-status-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:#99aaae}
.room-status-badge.warning{border:0;background:#fff0dd;color:#ce6a0c}.room-status-badge.warning:before{background:#e88723}
.room-status-badge.positive{background:#fff;color:#5c7378}
.centers-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;flex:0 0 52px;margin:0}
.centers-metrics article{display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-rows:auto auto;align-content:center;align-items:center;column-gap:8px;min-height:52px;padding:6px 10px;border:1px solid #e2e9ea;border-left:3px solid #d3e5e4;border-radius:8px;background:#fff}
.centers-metric-icon{grid-row:1/3;display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#e8f4f1;color:#08755e;font-size:17px}
.centers-metrics article strong{color:#3e5960;font-size:15px;line-height:1.15}
.centers-metrics article small{color:#77878c;font-size:10px}
.centers-metrics article.warning{border-left-color:#ef8a23}.centers-metrics article.warning .centers-metric-icon{background:#fff2df;color:#dc710b}
.centers-schedule-warning{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px;flex:0 0 34px;margin:0;padding:5px 12px;border-radius:10px;background:#fff2df;color:#d76708;font-size:12px}
.centers-schedule-warning>span:first-child:before{content:"⚠";margin-right:8px}
.centers-schedule-warning[hidden]{display:none}
.centers-schedule-warning button{border:0;background:transparent;color:#d76708;font:inherit;font-weight:600;cursor:pointer}
.centers-room-filters{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:28px;flex:0 0 28px;margin:0}
.center-room-group-filters{display:flex;align-items:center;gap:6px;min-width:0;overflow-x:auto;margin:0;padding:0;border:0}
.center-room-group-filters .center-room-group-label{flex:0 0 auto;margin-right:3px;color:#60777e;font-size:12px}
.center-room-group-filters .center-room-group-label:before{content:"◈";margin-right:6px;color:#71878c}
.centers-room-filters button{min-height:28px;padding:4px 9px;border:1px solid #dce5e6;border-radius:16px;background:#fff;color:#64777d;font:inherit;font-size:11px;line-height:18px;white-space:nowrap;cursor:pointer}
.center-room-group-filters button[aria-pressed="true"],.centers-room-filter-toggles button.active{border-color:#619fa3;background:#619fa3;color:#fff}
.center-room-group-filters button small{margin-left:4px;font-size:10px}
.center-room-group-filter{display:inline-flex;flex:0 0 auto;align-items:center;gap:4px}
.center-room-group-filters .center-room-group-action{min-height:24px;padding:2px 7px;background:#fff;color:#586b70}
.center-room-group-filters .center-room-group-action.danger{color:#a9463c}
.center-room-group-filters .center-room-group-add{border-style:solid;background:#fff;color:#477f82}
.centers-room-filter-toggles{display:flex;flex:0 0 auto;align-items:center;gap:6px}
.centers-room-filters button:focus-visible,.centers-toolbar input:focus-visible{outline:2px solid #4e9296;outline-offset:2px}
.center-room-group-filters button:focus-visible{outline:2px solid #4e9296;outline-offset:2px}
.center-room-group-dialog{width:min(520px,95vw)}
.delete-center-room-group-dialog{width:min(460px,95vw)}
.delete-center-room-group-dialog>p{color:#596c71;line-height:1.5}
.delete-center-room-group-dialog .save{background:#a94b43!important}
.delete-room-dialog{width:min(460px,95vw)}
.delete-room-dialog>p{color:#596c71;line-height:1.5}
.delete-room-dialog .save{background:#a94b43!important}
.centers-room-status{position:fixed;right:24px;bottom:20px;z-index:40;max-width:min(420px,calc(100vw - 36px));margin:0;padding:12px 18px;border:1px solid #dce5e6;border-radius:8px;background:#34484f;color:#fff;font-size:13px;box-shadow:0 6px 22px #1c303833}
.centers-room-status[hidden]{display:none}
.centers-detail-content>.form-note{display:none}
.services-view{position:absolute;inset:0;overflow:auto;background:#fff;padding:22px;color:#465c63}
.services-view[hidden]{display:none}
.services-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}
.services-heading small{color:#819095;font-size:10px;letter-spacing:.08em}
.services-heading h1{margin:4px 0;color:#40575e;font-size:21px}
.services-heading p{margin:0;color:#7d8b8f}
.services-heading button{min-height:36px;padding:0 13px;border:0;border-radius:5px;background:#619fa3;color:#fff}
.services-toolbar{display:flex;align-items:end;gap:14px;flex-wrap:wrap;margin:14px 0;padding:10px 0;border-block:1px solid #e5ebec}
.services-toolbar label{display:grid;gap:5px;color:#536970;font-size:12px}
.services-toolbar input,.services-toolbar select{min-height:36px;min-width:180px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;padding:7px;color:#43575e;font:inherit}
.services-toolbar .products-count{margin-left:auto}
.services-summary{display:flex;gap:14px;align-items:center;margin:12px 0;color:#60777e;font-size:12px}
.services-summary strong{color:#435c63;font-size:14px}
.services-table{width:100%;border-collapse:collapse;font-size:13px}
.services-table th,.services-table td{padding:10px 8px;border-bottom:1px solid #e8edef;text-align:left;white-space:nowrap}
.services-table th{color:#7a898e;font-size:11px}
.services-table td button{padding:5px 8px;border:1px solid #dce5e6;border-radius:4px;background:#fff;color:#52666d}
.service-color-dot{display:inline-block;width:9px;height:9px;margin-right:8px;border-radius:50%;vertical-align:1px}
.service-dialog{width:min(700px,95vw);max-height:92vh;overflow:auto}
.service-dialog h3{margin:17px 0 10px;padding-bottom:7px;border-bottom:1px solid #e6ebec;color:#627b80;font-size:12px;letter-spacing:.04em}
.service-dialog output{display:flex;align-items:center;min-height:36px;padding:7px;border:1px solid #dce5e6;border-radius:4px;background:#f7f9f9;color:#43575e;font:inherit}
.service-dialog .service-tabs{margin:8px 0 14px}
.service-area-tabs{margin:0 0 12px}
.service-tariff-prices{display:grid;gap:10px;margin:12px 0}
.service-tariff-price-row{display:grid;grid-template-columns:minmax(130px,1fr) minmax(130px,1fr) minmax(100px,.7fr);align-items:end;gap:12px;padding:12px;border:1px solid #e0e7e8;border-radius:6px;background:#fbfdfd}
.service-tariff-price-row strong{align-self:center;color:#3e5960;font-size:13px}
.service-tariff-price-row label{display:grid;gap:5px;color:#536970;font-size:12px}
.service-tariff-price-row input{width:100%;min-height:36px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;padding:7px;color:#43575e;font:inherit}
.service-followup-templates{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:12px 0}
.service-followup-templates button{border:1px solid #d6e1e3;border-radius:5px;background:#f8fbfb;color:#48666b;padding:7px 10px}
.room-service-options{display:grid;gap:6px}
.room-service-option{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:8px;padding:7px 9px;border:1px solid #e0e7e8;border-radius:5px;background:#fbfdfd}
.room-service-option input{width:auto!important}
@media(max-width:720px){.services-view{padding:12px}.services-heading{align-items:flex-start;flex-direction:column}.services-toolbar{align-items:stretch}.services-toolbar label,.services-toolbar input,.services-toolbar select{width:100%}.services-toolbar .products-count{margin-left:0}.services-view .people-table{display:block;overflow-x:auto}.services-summary{align-items:flex-start;flex-direction:column}.service-tariff-price-row{grid-template-columns:1fr}.service-area-tabs{overflow:auto}}
.center-dialog{width:min(700px,95vw);max-height:92vh;overflow:auto;border:1px solid #dce5e6;border-radius:8px;padding:20px;box-shadow:0 18px 56px #20383d40}
.center-dialog::backdrop{background:#20383d55}
.center-dialog .dialog-head{display:flex;align-items:center;justify-content:space-between;gap:14px}
.center-dialog .dialog-head h2{margin:3px 0 14px;color:#344d55;font-size:18px}
.center-dialog .dialog-head small{color:#829095;font-size:10px;letter-spacing:.07em}
.center-dialog .dialog-head button{border:0;background:transparent;color:#52656d;font-size:22px}
.center-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.center-fields label{display:grid;gap:5px;color:#536970;font-size:12px}
.center-fields input,.center-fields select,.center-fields textarea{width:100%;min-height:36px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;padding:7px;color:#43575e;font:inherit}
.center-fields input[type=color]{padding:3px}
.center-wide{grid-column:1/-1}
.center-dialog .product-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}
.center-dialog .product-form-actions button{min-height:36px;padding:0 14px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fafb;color:#43575e}
.center-dialog .product-form-actions .save{border:0;background:#619fa3;color:#fff}
.room-tabs{display:flex;gap:6px;margin:8px 0 12px;border-bottom:1px solid #dfe5e7;overflow:auto}
.room-tabs button{flex:none;padding:9px 12px;border:0;border-bottom:2px solid transparent;background:#fff;color:#53666d}
.room-tabs button.active{border-color:#619fa3;color:#437c7e}
.room-panel>p:first-child{color:#64777d;line-height:1.45}
.room-schedule-days{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.room-day{padding:9px;border:1px solid #e4e9ea;border-radius:5px}
.room-day-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}
.room-day-heading strong{color:#52666d;font-size:12px}
.room-day-heading button,.room-time-slot button{border:0;background:transparent;color:#56898b;font-size:11px}
.room-day-slots{display:grid;gap:6px}
.room-time-slot{display:flex;align-items:center;gap:7px}
.room-time-slot input{min-width:0;flex:1;height:32px;border:1px solid #d3dfe1;border-radius:4px;padding:4px;font:inherit}
.room-time-slot span{color:#839195;font-size:11px}
.room-service-option{display:flex;align-items:center;gap:9px;padding:12px;border:1px solid #e4e9ea;border-radius:5px;color:#536970;font-size:13px}
.room-service-option input{width:auto}
@media(max-width:720px){.centers-view{padding:12px}.centers-heading{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto;gap:10px;height:auto;flex:0 0 auto;margin:0 0 12px}.centers-heading h1{grid-column:1;grid-row:1}.centers-actions{grid-column:1/-1;grid-row:2;flex-wrap:wrap;margin:0}.centers-toolbar{grid-column:1/-1;grid-row:3;padding:0}.centers-heading>button{grid-column:2;grid-row:1}.centers-layout{grid-template-columns:1fr;flex:0 0 auto}.centers-detail-content{padding:10px 0}.centers-metrics{grid-template-columns:repeat(2,minmax(0,1fr));flex:0 0 auto}.centers-metrics article{min-height:52px}.centers-room-filters{align-items:flex-start;flex:0 0 auto;flex-direction:column}.center-room-group-filters{width:100%;flex-wrap:wrap;overflow:visible}.centers-room-filter-toggles{flex-wrap:wrap}.center-summary dl{grid-template-columns:repeat(2,minmax(0,1fr))}.rooms-section{min-height:240px}.rooms-section .people-table{display:block;overflow-x:auto}.center-fields{grid-template-columns:1fr}.center-wide{grid-column:auto}}
.statistics-view{position:absolute;inset:0;overflow:auto;background:#f8f9fb;padding:24px 12px 22px;color:#465c63}
.statistics-view[hidden]{display:none}
.statistics-top-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:15px}
.statistics-top-cards article{display:grid;gap:8px;min-height:102px;padding:17px 20px;background:#f5f4fc;border-left:5px solid #6773df;border-radius:5px;box-shadow:0 3px 10px #25343b12}
.statistics-report-panel{padding:16px;background:#fff;border-radius:5px;box-shadow:0 3px 12px #25343b1a}
.statistics-report-panel>.statistics-heading{margin:0 0 14px}
.statistics-top-cards article small{color:#758188;font-size:13px}
.statistics-top-cards article strong{color:#273746;font-size:30px}
.statistics-top-cards .blue{background:#f0f4ff;border-color:#3b73dd}.statistics-top-cards .blue strong{color:#2565cf}
.statistics-top-cards .green{background:#f0f8f5;border-color:#219772}.statistics-top-cards .green strong{color:#198b68}
.statistics-top-cards .red{background:#fff3f4;border-color:#e24856}.statistics-top-cards .red strong{color:#d93648}
.statistics-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:6px 0 15px}
.statistics-heading h1{margin:0;font-size:21px;font-weight:500}
.statistics-report-controls{display:flex;gap:9px;align-items:center}
.statistics-report-controls select,.statistics-filters select{min-height:38px;min-width:min(390px,40vw);border:1px solid #d7dfe3;border-radius:5px;background:#fff;padding:0 12px;color:#53656c;font:inherit}
.statistics-report-controls button{min-height:38px;border:1px solid #d7dfe3;border-radius:5px;background:#fff;padding:0 12px;color:#53656c;font:inherit}
.statistics-filters{display:flex;align-items:end;gap:12px;margin:14px 0 16px}
.statistics-filters label{display:grid;gap:5px;color:#62757a}
.statistics-filters select{min-width:260px}
.travel-report-period{margin:4px 0 14px;color:#62757a;line-height:1.5}
.travel-empty{display:grid;gap:5px}
.travel-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
.travel-method-note{line-height:1.55}
.detail-travel-section{margin:14px 0;padding:14px;border:1px solid #e1e8ea;border-radius:6px;background:#f8fafb}
.detail-travel-section h3{margin:0 0 10px;font-size:15px}
.detail-travel-section>label{display:block;margin-bottom:5px;color:#62757a}
.detail-travel-section>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.detail-travel-section input{width:130px;min-height:38px;padding:0 9px;border:1px solid #cbd7db;border-radius:5px;font:inherit}
.detail-travel-section .form-note{margin:8px 0 0}
.statistics-filters p{margin:0;padding:10px 12px;border-radius:5px;background:#f0f4f5;color:#68797d}
.statistics-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:12px 0}
.statistics-kpis.statistics-occupancy-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
.occupancy-filters{align-items:flex-start;flex-wrap:wrap}
.occupancy-export-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 14px}.occupancy-export-actions button{min-height:36px;padding:0 12px;border:1px solid #b7cccf;border-radius:5px;background:#fff;color:#426d71;font:inherit}.occupancy-export-actions button:hover{border-color:#619fa3;color:#345f63}
.occupancy-filters label{min-width:190px}
.occupancy-filters select:not([multiple]){min-width:190px}
.occupancy-filters select[multiple]{min-width:230px;min-height:96px;padding:6px}
.occupancy-all-professionals{justify-self:start;min-height:30px;border:1px solid #d7dfe3;border-radius:4px;background:#fff;padding:3px 9px;color:#52656d;font:inherit;font-size:12px}
.occupancy-custom-range{display:flex;align-items:end;gap:10px}
.occupancy-custom-range[hidden]{display:none}
.occupancy-custom-range label{display:grid;gap:5px;color:#62757a}
.occupancy-custom-range input{min-height:38px;border:1px solid #d7dfe3;border-radius:5px;padding:0 9px;color:#52656d;font:inherit}
.statistics-occupancy-kpis article{display:flex;flex-direction:column;justify-content:flex-start;gap:5px}
.statistics-occupancy-kpis article span{color:#74848a;font-size:11px;line-height:1.4}
.occupancy-table-heading{margin:20px 0 8px;color:#43575e;font-size:15px;font-weight:500}
.occupancy-table table{min-width:760px}
.occupancy-table td:not(:first-child){font-variant-numeric:tabular-nums}
.occupancy-method-note{max-width:1000px;line-height:1.5}
.statistics-kpis article{min-height:86px;padding:15px;background:#fff;border-radius:5px;border-left:5px solid #8fa2a9;box-shadow:0 3px 10px #25343b12}
.statistics-kpis small{display:block;margin-bottom:7px;color:#74848a}
.statistics-kpis strong{color:#40565e;font-size:23px}
.statistics-kpis .teal{border-color:#1ba798}.statistics-kpis .orange{border-color:#efa42c}.statistics-kpis .blue{border-color:#4475df}
.statistics-chart-card,.statistics-table-card,.statistics-pending{margin:14px 0;padding:16px;background:#fff;border-radius:5px;box-shadow:0 3px 10px #25343b0d}
.statistics-chart-card h2,.statistics-table-card h2{margin:0 0 14px;font-size:16px;font-weight:500}
.statistics-bars{display:grid;grid-template-columns:repeat(12,minmax(28px,1fr));align-items:end;gap:8px;min-height:192px;padding:12px 4px 0;border-bottom:1px solid #d6dfe2;background:repeating-linear-gradient(to bottom,transparent 0,transparent 39px,#e9edef 40px)}
.statistics-bar-month{display:flex;min-width:0;height:175px;flex-direction:column;justify-content:end;align-items:center;gap:5px;color:#728087;font-size:11px}
.statistics-bar-month strong{font-size:11px;font-weight:500}
.statistics-bar{width:min(28px,75%);min-height:2px;border-radius:3px 3px 0 0;background:#4776dd}
.statistics-income-bars{display:grid;grid-template-columns:repeat(12,minmax(28px,1fr));align-items:end;gap:8px;min-height:192px;padding:12px 4px 0;border-bottom:1px solid #d6dfe2;background:repeating-linear-gradient(to bottom,transparent 0,transparent 39px,#e9edef 40px)}
.statistics-income-month{display:flex;min-width:0;height:175px;flex-direction:column;justify-content:end;align-items:center;gap:7px;color:#728087;font-size:11px}
.statistics-income-pair{display:flex;height:150px;align-items:end;gap:3px}
.statistics-income-bar{display:block;width:10px;min-height:2px;border-radius:3px 3px 0 0}
.statistics-income-bar.previous-year,.statistics-legend-key i.previous-year{background:#aeb8bd}
.statistics-income-bar.current-year,.statistics-legend-key i.current-year{background:#4776dd}
.commission-statistics-bar{background:#1ba798}
.statistics-cumulative-chart{position:relative;min-height:210px;overflow:hidden}
.statistics-cumulative-chart svg{display:block;width:100%;height:auto;min-height:210px}
.statistics-cumulative-grid{stroke:#e5eaec;stroke-width:1}
.statistics-cumulative-area.previous-year{fill:#aeb8bd;fill-opacity:.18}
.statistics-cumulative-area.current-year{fill:#4776dd;fill-opacity:.16}
.statistics-cumulative-line{fill:none;stroke-width:2}
.statistics-cumulative-line.previous-year{stroke:#89979d}
.statistics-cumulative-line.current-year{stroke:#4776dd}
.statistics-cumulative-month{fill:#728087;font-size:10px}
.statistics-cumulative-empty{position:absolute;top:38%;left:50%;margin:0;padding:8px 12px;transform:translate(-50%,-50%);border-radius:4px;background:#ffffffd9;color:#65777d;font-size:12px;text-align:center}
.statistics-monthly-invoice-chart{position:relative;min-height:210px;overflow:hidden}
.statistics-monthly-invoice-chart svg{display:block;width:100%;height:auto;min-height:210px}
.statistics-invoice-count-bar{fill:#4776dd}
.statistics-ticket-mean-line{fill:none;stroke:#f0a328;stroke-width:2}
.statistics-ticket-mean-point{fill:#f0a328;stroke:#fff;stroke-width:1}
.statistics-invoice-empty{position:absolute;top:38%;left:50%;margin:0;padding:8px 12px;transform:translate(-50%,-50%);border-radius:4px;background:#ffffffd9;color:#65777d;font-size:12px;text-align:center}
.statistics-legend-key i.invoice-count-key{background:#4776dd}
.statistics-legend-key i.ticket-mean-key{background:#f0a328;border-radius:50%}
.statistics-help-dialog{width:min(620px,calc(100vw - 32px));max-height:calc(100vh - 32px);padding:0;border:0;border-radius:8px;box-shadow:0 18px 60px #17282f45;color:#35474e}
.statistics-help-dialog::backdrop{background:#1c2c32a6}
.statistics-help-dialog>header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #e6ecee}
.statistics-help-dialog h2{margin:0;font-size:20px;font-weight:500}
.statistics-help-dialog>header button{border:0;background:transparent;font-size:24px;color:#697a80}
.statistics-help-content{padding:8px 22px 16px}
.statistics-help-content h3{margin:14px 0 5px;font-size:14px;font-weight:600}
.statistics-help-content p{margin:0;color:#64777e;font-size:13px;line-height:1.55}
.statistics-help-dialog>footer{display:flex;justify-content:flex-end;padding:12px 22px;border-top:1px solid #e6ecee}
.statistics-bar.absence{background:#e34b57}.statistics-bar.cancel{background:#f0a328}.statistics-chart-legend{display:flex;justify-content:center;gap:20px;padding-top:13px;color:#64777e;font-size:12px}
.statistics-legend-key{display:inline-flex;align-items:center;gap:6px}.statistics-legend-key i{width:10px;height:10px;border-radius:2px;background:#4776dd}.statistics-legend-key .absence{background:#e34b57}.statistics-legend-key .cancel{background:#f0a328}
.statistics-table-card{overflow-x:auto}.statistics-table-card table{width:100%;border-collapse:collapse;font-size:12px}.statistics-table-card th,.statistics-table-card td{padding:9px 8px;border-bottom:1px solid #e8edef;text-align:right;white-space:nowrap}.statistics-table-card th:first-child,.statistics-table-card td:first-child{text-align:left}.statistics-table-card th{color:#76858a;font-size:10px}
.statistics-pending{padding:22px;color:#64777e;line-height:1.5}.statistics-pending strong{display:block;margin-bottom:5px;color:#435b62}
.debt-statistics-controls{display:grid;grid-template-columns:1.5fr 1.5fr 1fr 1fr 1fr;align-items:end;gap:12px;margin:0 0 16px}.debt-statistics-controls label{min-width:0;font-size:12px}.debt-statistics-controls select{width:100%;min-width:0}.debt-statistics-controls #statistics-center-filter{margin:0}.debt-statistics-empty{display:grid;min-height:145px;align-content:center;justify-items:center;gap:7px;padding:22px;border-radius:5px;background:#fff;box-shadow:0 3px 10px #25343b12;text-align:center}.debt-statistics-note{line-height:1.5}
.profit-statistics-kpis .red{border-color:#df5c67}.profit-statistics-kpis .teal{border-color:#1ba798}.profit-statistics-kpis article small,.profit-statistics-kpis article strong,.profit-statistics-kpis article span{display:block}.profit-statistics-kpis article strong{margin-top:4px}.profit-statistics-kpis article span{margin-top:6px;color:#74848a;font-size:11px;line-height:1.4}.profit-statistics-chart-card svg{display:block;width:100%;height:auto;min-height:190px;overflow:visible}.profit-grid-line{stroke:#e8edef;stroke-width:1}.profit-axis-label,.profit-month-label{fill:#738289;font:11px Arial,sans-serif}.profit-bar.income{fill:#4776dd}.profit-bar.expense{fill:#e56870}.profit-line{fill:none;stroke:#19a38f;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.profit-area{stroke:none;opacity:.22}.profit-area.positive{fill:#1ba798}.profit-area.negative{fill:#e56870}.profit-statistics-legend{padding-top:4px}.profit-legend-mark.income{background:#4776dd}.profit-legend-mark.expense{background:#e56870}.profit-legend-mark.profit{background:#1ba798}.profit-statistics-table{margin-top:14px}.profit-statistics-table table{min-width:650px}.profit-statistics-table th,.profit-statistics-table td{text-align:right!important}.profit-statistics-table th:first-child,.profit-statistics-table td:first-child{text-align:left!important}.profit-total-row{font-weight:700;background:#f6f8f9}.profit-statistics-note{line-height:1.5}.profit-statistics-empty{min-height:150px;margin:0}
.specialist-income-kpis article small,.specialist-income-kpis article strong,.specialist-income-kpis article span{display:block}.specialist-income-kpis article strong{margin-top:4px}.specialist-income-kpis article span{margin-top:6px;color:#74848a;font-size:11px;line-height:1.4}.specialist-income-month-chart{display:grid;grid-template-columns:repeat(12,minmax(30px,1fr));align-items:end;gap:8px;min-height:175px;overflow-x:auto;padding:10px 4px 0;border-bottom:1px solid #d6dfe2;background:repeating-linear-gradient(to bottom,transparent 0,transparent 34px,#e9edef 35px)}.specialist-income-month{display:flex;min-width:30px;height:165px;flex-direction:column;justify-content:end;align-items:center;gap:6px;color:#728087;font-size:11px}.specialist-income-stack{display:flex;width:100%;height:135px;flex-direction:column-reverse;align-items:stretch;justify-content:flex-start;overflow:hidden;border-radius:4px 4px 0 0}.specialist-income-stack i{display:block;flex:0 0 auto;width:100%;min-height:2px}.specialist-income-legend{max-height:100px;overflow:auto}.specialist-income-table table{min-width:860px}.specialist-income-table th,.specialist-income-table td{text-align:right!important}.specialist-income-table th:first-child,.specialist-income-table td:first-child{text-align:left!important}.specialist-income-share{display:flex;justify-content:space-between;gap:12px;color:#52656d;font-size:12px}.specialist-income-share strong{color:#43575e;text-align:right}.specialist-income-note{grid-column:1/-1;line-height:1.5}
.series-statistics-kpis{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr))}.series-statistics-kpis article small,.series-statistics-kpis article strong,.series-statistics-kpis article span{display:block}.series-statistics-kpis article strong{margin-top:4px}.series-statistics-kpis article span{margin-top:6px;color:#74848a;font-size:11px;line-height:1.4}.series-statistics-month-chart{display:grid;grid-template-columns:repeat(12,minmax(30px,1fr));align-items:end;gap:8px;min-height:175px;overflow-x:auto;padding:10px 4px 0;border-bottom:1px solid #d6dfe2;background:repeating-linear-gradient(to bottom,transparent 0,transparent 34px,#e9edef 35px)}.series-statistics-month{display:flex;min-width:30px;height:165px;flex-direction:column;justify-content:end;align-items:center;gap:6px;color:#728087;font-size:11px}.series-statistics-stack{display:flex;width:100%;height:135px;flex-direction:column-reverse;align-items:stretch;justify-content:flex-start;overflow:hidden;border-radius:4px 4px 0 0}.series-statistics-stack i{display:block;flex:0 0 auto;width:100%;min-height:2px}.series-statistics-legend{max-height:100px;overflow:auto}.series-statistics-table table{min-width:900px}.series-statistics-table th,.series-statistics-table td{text-align:right!important}.series-statistics-table th:first-child,.series-statistics-table td:first-child{text-align:left!important}.statistics-series-share{display:flex;justify-content:space-between;gap:12px;color:#52656d;font-size:12px}.statistics-series-share strong{color:#43575e;text-align:right}.series-statistics-note{grid-column:1/-1;line-height:1.5}
.service-statistics-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.service-statistics-chart{min-height:210px}.service-statistics-empty{min-height:145px;display:grid;place-items:center;padding:22px;border:1px dashed #d6dfe2;border-radius:4px;color:#7a898e;text-align:center;line-height:1.5;background:linear-gradient(180deg,#fbfcfc,#fff)}.service-statistics-note{margin:14px 0}
.product-statistics-view{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.product-statistics-kpis,.product-statistics-material-kpis,.expense-statistics-kpis,.product-statistics-section-title,.product-statistics-note{grid-column:1/-1}.product-statistics-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.expense-statistics-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.product-statistics-material-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.product-statistics-kpis article small,.product-statistics-material-kpis article small,.product-statistics-kpis article strong,.product-statistics-material-kpis article strong,.product-statistics-kpis article span,.product-statistics-material-kpis article span{display:block}.product-statistics-kpis article strong,.product-statistics-material-kpis article strong{margin-top:4px}.product-statistics-kpis article span,.product-statistics-material-kpis article span{margin-top:6px;color:#74848a;font-size:11px;line-height:1.4}.product-statistics-chart{min-width:0;margin:0}.product-statistics-view .product-statistics-bars{grid-template-columns:repeat(12,minmax(20px,1fr));gap:4px;min-height:160px}.product-statistics-view .product-statistics-bars .statistics-bar-month{height:145px;font-size:10px}.product-statistics-view .product-statistics-bars .statistics-bar-month strong{font-size:10px}.product-statistics-section-title{margin:10px 0 0;color:#435b62;font-size:17px;font-weight:500}.product-statistics-ranking{display:grid;gap:11px;padding:4px 0}.product-statistics-rank-row{display:grid;grid-template-columns:minmax(110px,1.1fr) minmax(80px,2fr) minmax(64px,.6fr);align-items:center;gap:10px;font-size:12px}.product-statistics-rank-row>span{overflow:hidden;color:#52656d;text-overflow:ellipsis;white-space:nowrap}.product-statistics-rank-row>strong{text-align:right;color:#43575e}.product-statistics-rank-track{height:12px;overflow:hidden;border-radius:8px;background:#edf1f2}.product-statistics-rank-track i{display:block;height:100%;min-width:2px;border-radius:8px;background:#4776dd}.product-statistics-note{margin:0;line-height:1.5}@media(max-width:900px){.product-statistics-kpis,.expense-statistics-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.product-statistics-material-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.product-statistics-view{grid-template-columns:1fr}.product-statistics-view .product-statistics-kpis,.product-statistics-view .product-statistics-material-kpis,.product-statistics-view .expense-statistics-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.product-statistics-view .product-statistics-bars{grid-template-columns:repeat(6,minmax(28px,1fr));row-gap:8px}}
.bonus-statistics-shell{position:relative;overflow:hidden;padding:14px 12px 18px;border-radius:8px;background:#f1f6f7;box-shadow:0 3px 12px #25343b12}
.bonus-statistics-controls{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding:8px 12px 10px;border-radius:8px;background:#fff}
.bonus-statistics-controls>label,.bonus-statistics-custom>label{display:grid;gap:5px;color:#62757a;font-size:12px}
.bonus-statistics-controls select,.bonus-statistics-custom input{min-height:38px;min-width:min(250px,38vw);border:1px solid #d7dfe3;border-radius:5px;background:#fff;padding:0 12px;color:#53656c;font:inherit}
.bonus-statistics-actions{display:flex;align-items:center;gap:8px;margin-left:auto}
.bonus-statistics-actions button,.bonus-statistics-filter-panel button{min-height:34px;border:1px solid #d7dfe3;border-radius:5px;background:#fff;padding:0 12px;color:#53656c;font:inherit}
.bonus-statistics-actions button:disabled{opacity:.65;cursor:not-allowed}
.bonus-statistics-custom{display:flex;gap:10px;padding:12px}
.bonus-statistics-period-note{margin:8px 14px 14px;color:#7a898e;font-size:12px}
.bonus-statistics-tabs{display:flex;align-items:center;gap:4px;overflow-x:auto;padding:0 2px;border-bottom:1px solid #dce5e7}
.bonus-statistics-tabs button{flex:0 0 auto;min-height:40px;padding:0 13px;border:0;border-bottom:2px solid transparent;background:transparent;color:#61777d;font:inherit;white-space:nowrap}
.bonus-statistics-tabs button.selected{border-bottom-color:#68a7a7;color:#4d999c;font-weight:600}
.bonus-statistics-empty{display:grid;justify-items:center;align-content:center;gap:8px;min-height:180px;margin:14px 0 0;padding:28px 20px;border-radius:5px;background:#fff;box-shadow:0 3px 10px #25343b12;color:#556b71;text-align:center}
.bonus-statistics-empty-icon{color:#9baeb2;font-size:27px;line-height:1}
.bonus-statistics-empty strong{font-size:15px}
.bonus-statistics-empty p{margin:0;color:#718087;line-height:1.5}
.bonus-statistics-note{margin:12px 4px 0}
.bonus-statistics-save-dialog{width:min(480px,calc(100vw - 32px));max-width:none;border:1px solid #d6e0e2;border-radius:8px;padding:0;box-shadow:0 16px 48px #17282d40;color:#455c63}.bonus-statistics-save-dialog::backdrop{background:#15242966}.bonus-statistics-save-form{display:grid;gap:12px;padding:22px}.bonus-statistics-save-form h2{margin:0;font-size:18px}.bonus-statistics-save-form p{margin:0;color:#697d82;line-height:1.5}.bonus-statistics-save-form label{display:grid;gap:6px;font-size:13px}.bonus-statistics-save-form input{min-height:38px;padding:7px 10px;border:1px solid #cbd9dc;border-radius:5px;font:inherit}.bonus-statistics-save-form .dialog-actions{display:flex;justify-content:flex-end;gap:8px}
.bonus-statistics-overlay{position:fixed;inset:0;z-index:30;border:0;background:#19252b55}
.bonus-statistics-filter-panel{position:fixed;inset:0 0 0 auto;z-index:31;display:flex;width:min(430px,96vw);flex-direction:column;overflow:auto;background:#fff;box-shadow:-8px 0 26px #16272d2b;color:#52656b}
.bonus-statistics-filter-panel>header{position:sticky;top:0;z-index:1;display:flex;min-height:52px;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid #e4eaec;background:#fff}
.bonus-statistics-filter-panel>header strong{font-size:15px;font-weight:500}
.bonus-statistics-filter-panel>header button{border:0;font-size:23px}
.bonus-statistics-filter-panel>section{padding:12px 18px;border-bottom:1px solid #edf0f1}
.bonus-statistics-filter-panel h3{margin:0 0 8px;color:#6c999b;font-size:11px;letter-spacing:.03em}
.bonus-statistics-filter-panel p{margin:0 0 12px;color:#79888d;font-size:11px;line-height:1.45}
.bonus-statistics-filter-field{display:grid;gap:5px;margin:10px 0;color:#66777d;font-size:11px}
.bonus-statistics-filter-field select,.bonus-statistics-filter-panel input[type=number]{min-height:34px;min-width:0;border:1px solid #d9e0e2;border-radius:5px;background:#fff;padding:0 9px;color:#53656c;font:inherit}
.bonus-statistics-filter-panel fieldset{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0;padding:0;border:0}
.bonus-statistics-filter-panel fieldset.bonus-statistics-range{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center}
.bonus-statistics-filter-panel fieldset.bonus-statistics-range legend{grid-column:1/-1}
.bonus-statistics-filter-panel legend{width:100%;margin-bottom:5px;color:#66777d;font-size:11px}
.bonus-statistics-check{display:inline-flex;align-items:center;gap:5px;color:#52656b;font-size:11px}
.bonus-statistics-check input{accent-color:#69a8a8}
.bonus-statistics-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;color:#52656b}
.bonus-statistics-toggle span{display:grid;gap:3px}.bonus-statistics-toggle strong{font-size:11px;font-weight:500}.bonus-statistics-toggle small{color:#7b898e;font-size:10px}
.bonus-statistics-toggle input{accent-color:#69a8a8}
.bonus-statistics-filter-panel>footer{position:sticky;bottom:0;display:flex;justify-content:flex-start;gap:8px;margin-top:auto;padding:12px 18px;border-top:1px solid #e7ecee;background:#fff}
.bonus-statistics-filter-panel>footer .primary{border-color:#68a5a7;background:#68a5a7;color:#fff}
@media(max-width:900px){.statistics-top-cards,.statistics-kpis,.statistics-kpis.statistics-occupancy-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.statistics-heading{align-items:flex-start;flex-direction:column}.statistics-report-controls{width:100%}.statistics-report-controls select{min-width:0;flex:1}.statistics-bars,.statistics-income-bars{gap:3px}.statistics-bar-month,.statistics-income-month{font-size:9px}}
@media(max-width:600px){.statistics-view{padding:12px}.statistics-top-cards,.statistics-kpis,.statistics-kpis.statistics-occupancy-kpis{grid-template-columns:1fr 1fr;gap:8px}.statistics-top-cards article{padding:12px;min-height:78px}.statistics-top-cards article strong{font-size:24px}.statistics-filters{align-items:stretch;flex-direction:column}.statistics-filters select{width:100%;min-width:0}.occupancy-custom-range{align-items:stretch;flex-direction:column}.occupancy-custom-range input{width:100%}.statistics-bars,.statistics-income-bars{grid-template-columns:repeat(6,minmax(28px,1fr));row-gap:12px}.statistics-bar-month,.statistics-income-month{height:100px}.statistics-income-pair{height:76px}.statistics-income-bar{width:8px}.statistics-cumulative-chart,.statistics-cumulative-chart svg{min-height:190px}.statistics-cumulative-empty{width:85%}}
.people-stats-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
.people-stats-kpis article span{display:block;margin-top:6px;color:#879397;font-size:11px;line-height:1.35}
.people-insight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}
.people-insight-grid>.statistics-chart-card,.people-insight-grid>.statistics-table-card{min-width:0;margin:0}
.people-insight-grid .statistics-bars{min-height:155px}
.people-insight-grid .statistics-bar-month{height:138px}
.people-insight-grid .statistics-bar-month strong{color:#8b59d0}
.people-insight-grid .statistics-table-card p{color:#75858a;line-height:1.5}
.people-insight-grid .statistics-table-card ul{margin:8px 0;padding-left:18px;color:#60757b;line-height:1.8}
.people-return-bars{display:grid;gap:12px;margin:18px 0}
.people-return-row{display:grid;grid-template-columns:92px minmax(40px,1fr) 24px;align-items:center;gap:9px;color:#718087;font-size:11px}
.people-return-row strong{text-align:right;color:#40565e}
.people-return-track{height:12px;overflow:hidden;border-radius:6px;background:#eef1f3}
.people-return-track i{display:block;height:100%;border-radius:6px;background:#29a7a0}
.product-inventory-view{padding-bottom:24px}
.product-warehouses-view{min-height:calc(100% - 42px);padding:14px 10px 24px}.warehouse-layout{display:grid;grid-template-columns:minmax(250px,34%) minmax(0,1fr);gap:12px;min-height:620px}.warehouse-tree,.warehouse-detail{border:1px solid #e1e8e9;border-radius:8px;background:#fff;padding:14px;min-width:0}.warehouse-tree-head,.warehouse-detail-head,.warehouse-stock-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.warehouse-tree-head span,.warehouse-detail-head span{padding:4px 9px;border-radius:14px;background:#edf6f5;color:#4d888b;font-size:12px}.warehouse-center{width:100%;margin:12px 0;padding:10px;text-align:left;border:1px solid #d8e1e3;border-radius:5px;background:#f8fafb;color:#43575e}.warehouse-row{display:grid;width:100%;gap:4px;margin:5px 0;padding:10px;text-align:left;border:0;border-radius:5px;background:#fff;color:#344b52}.warehouse-row.active{background:#edf6f5}.warehouse-row small{color:#7b8d91}.warehouse-tree>.form-note{margin-top:18px;font-size:12px;color:#76888c}.warehouse-editor h2{margin:4px 0 14px;color:#344b52;font-size:18px}.warehouse-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px}.warehouse-fields label{display:grid;gap:6px;margin:8px 0;color:#536970;font-size:13px}.warehouse-fields label:has(textarea){grid-column:1/-1}.warehouse-fields input,.warehouse-fields textarea,.warehouse-location-form input,.warehouse-location-form select{width:100%;min-height:36px;border:1px solid #cbd9dc;border-radius:4px;padding:8px;color:#43575e;font:inherit}.warehouse-actions{display:flex;align-items:center;gap:8px;margin:10px 0 16px}.warehouse-actions button,.warehouse-location-row button,.warehouse-location-form button,.warehouse-stock-head button{min-height:34px;padding:0 12px;border:1px solid #d8e1e3;border-radius:5px;background:#f8fafb;color:#43575e}.warehouse-actions button.save{border:0;background:#619fa3;color:#fff}.warehouse-active{display:flex;align-items:center;gap:6px;margin-right:auto;color:#536970;font-size:13px}.warehouse-section{margin-top:16px;padding-top:12px;border-top:1px solid #e3eaeb}.warehouse-section h3{margin:2px 0 10px;color:#526970;font-size:15px}.warehouse-location-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:6px 0;padding:9px;border-radius:5px;background:#f6f9f9;color:#536970;font-size:13px}.warehouse-location-form{display:grid;grid-template-columns:minmax(160px,1fr) minmax(90px,.55fr) minmax(120px,.6fr) auto;gap:8px;margin-top:10px}.warehouse-stock-head{margin-bottom:8px}.warehouse-stock-head h3{margin:0}.warehouse-stock-head button:disabled{opacity:.5;cursor:not-allowed}
.product-inventory-view>.products-toolbar>label:not(.product-search){display:flex;align-items:center;gap:8px;color:#52656d;font-size:12px}
.product-inventory-view>.products-toolbar select{min-width:150px}
.product-inventory-view>.products-toolbar input[type=checkbox]{margin:0}
.product-inventory-view>.products-toolbar button{min-height:34px;border:1px solid #d8e1e3;border-radius:5px;background:#f8fafb;color:#43575e;padding:0 10px}
.product-inventory-view>.products-toolbar button.save{border:0;background:#619fa3;color:#fff}
.products-table td{vertical-align:top}
.inventory-product-code{color:#829196;font-size:11px}
.inventory-movements{margin-top:24px;padding-top:12px;border-top:1px solid #e3eaeb}
.inventory-movements h3{margin:4px 0 12px;color:#526970;font-size:15px}
.inventory-dialog{width:min(820px,96vw);max-height:92vh;overflow:auto;border:1px solid #dce5e6;border-radius:8px;padding:20px;box-shadow:0 18px 56px #20383d40}
.inventory-dialog::backdrop{background:#20383d55}
.inventory-dialog .dialog-head{display:flex;align-items:center;justify-content:space-between;gap:14px}
.inventory-dialog .dialog-head small{color:#71868b;font-size:10px;letter-spacing:.08em}
.inventory-dialog .dialog-head h2{margin:4px 0 14px;color:#40575e;font-size:19px}
.inventory-dialog .dialog-head button{border:0;background:transparent;color:#52656d;font-size:22px}
.inventory-dialog label{display:grid;gap:6px;margin:10px 0;color:#536970;font-size:13px}
.inventory-dialog input,.inventory-dialog select{min-height:36px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;padding:8px;color:#43575e;font:inherit}
.purchase-order-lines{display:grid;gap:10px}.purchase-order-line{display:grid;grid-template-columns:minmax(180px,2fr) repeat(2,minmax(110px,1fr)) auto;align-items:end;gap:10px;padding:10px;border:1px solid #e3eaeb;border-radius:6px}.purchase-order-line label{margin:0}.purchase-order-line button{min-height:36px}.purchase-order-line-total{grid-column:1/-1;color:#60767c;font-size:12px}
.purchase-order-detail-dialog{width:min(1040px,96vw)}.purchase-order-detail-dialog h3{margin:18px 0 8px;color:#526970;font-size:14px}.purchase-order-totals{display:grid;grid-template-columns:repeat(4,minmax(100px,1fr));gap:10px}.purchase-order-totals>div{display:grid;gap:4px;padding:10px;background:#f2f6f6;border-radius:5px}.purchase-order-totals small{color:#71868b;font-size:11px}.purchase-order-totals strong{color:#40575e;font-size:15px}.purchase-order-events{display:grid;gap:9px;padding-left:24px;color:#536970}.purchase-order-events li small{display:block;color:#849599;font-size:11px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.purchase-order-filters{display:flex;align-items:flex-end;gap:8px;flex:1;flex-wrap:wrap;min-width:min(100%,320px)}.purchase-order-filters>label:not(.visually-hidden){display:grid;gap:3px;color:#65777c;font-size:11px}.purchase-order-filters input,.purchase-order-filters select{min-height:34px;border:1px solid #d8e1e3;border-radius:5px;background:#fff;color:#43575e;padding:0 9px;font:inherit}.purchase-order-filters input{flex:1;min-width:170px}.purchase-order-filters select{min-width:125px}
.inventory-count-table-wrap{overflow-x:auto;margin-top:12px}
.inventory-count-table-wrap table{width:100%;border-collapse:collapse}
.inventory-count-table-wrap th,.inventory-count-table-wrap td{padding:9px 8px;border-bottom:1px solid #e8edef;text-align:left;white-space:nowrap}
.inventory-count-table-wrap th{color:#718187;font-size:11px}
.inventory-count-table-wrap input{width:110px}
.inventory-adjust-dialog{width:min(540px,95vw)}
.inventory-adjust-dialog .product-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
.inventory-adjust-dialog .product-form-actions button{min-height:36px;border:1px solid #d8e1e3;border-radius:5px;background:#f8fafb;padding:0 13px;color:#43575e}
.inventory-adjust-dialog .product-form-actions .save{border:0;background:#619fa3;color:#fff}
@media(max-width:700px){.product-inventory-view>.products-toolbar{align-items:stretch;flex-direction:column}.product-inventory-view>.products-toolbar>label:not(.product-search){align-items:flex-start;flex-direction:column}.product-inventory-view>.products-toolbar select{width:100%}.inventory-dialog{padding:13px}.inventory-summary{grid-template-columns:repeat(2,minmax(120px,1fr))}.warehouse-layout{grid-template-columns:1fr}.warehouse-fields{grid-template-columns:1fr}.warehouse-location-form{grid-template-columns:1fr 1fr}.warehouse-location-form button{grid-column:1/-1}.purchase-order-line{grid-template-columns:1fr 1fr}.purchase-order-line label:first-child,.purchase-order-line-total{grid-column:1/-1}.purchase-order-totals{grid-template-columns:repeat(2,minmax(120px,1fr))}}
@media(max-width:900px){.people-stats-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.people-insight-grid{grid-template-columns:1fr}}
#person-dialog{width:min(780px,95vw);max-height:92vh;overflow:auto}
#person-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
#person-form .dialog-head,#person-form .form-note,#person-form .error,#person-form>.save,#person-form .person-form-actions{grid-column:1/-1}
#person-form .person-form-actions{display:flex;justify-content:flex-end;gap:8px}
#person-form #person-additional-fields{display:contents}
#person-form #person-additional-fields[hidden]{display:none}
.person-phone-country-field{position:relative;display:grid;align-content:end;gap:6px;min-width:0}
.person-phone-country-field>label{color:#536970;font-size:12px}
#person-phone-country-button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:38px;padding:9px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:#334951;text-align:left;font:inherit}
.person-phone-country-label{display:inline-flex;align-items:center;gap:8px;min-width:0}
.person-phone-country-flag{display:inline-flex;align-items:center;gap:3px;flex:0 0 auto}
.person-phone-country-flag img{display:block;width:18px;height:14px;object-fit:cover;border:1px solid #d7dfe0;border-radius:2px}
.person-phone-country-popup{position:absolute;z-index:20;top:100%;right:0;left:0;display:grid;gap:6px;padding:8px;border:1px solid #cbd9dc;border-radius:5px;background:#fff;box-shadow:0 8px 24px #19343b26}
.person-phone-country-popup[hidden]{display:none}
#person-phone-country-search{width:100%;min-height:36px;padding:8px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}
#person-phone-country-options{display:grid;max-height:240px;overflow:auto;overscroll-behavior:contain}
.person-phone-country-option{min-height:34px;padding:7px 9px;border:0;border-radius:3px;background:#fff;color:#334951;text-align:left;font:inherit}
.person-phone-country-option:hover,.person-phone-country-option:focus-visible{background:#eaf2f3;outline:none}
.person-phone-country-option[aria-selected="true"]{font-weight:700;color:#1d696e}
.person-phone-country-empty{margin:0;padding:10px;color:#687b80;font-size:13px}
#person-form label{min-width:0}
#person-form input,#person-form select{width:100%;min-height:38px;padding:9px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}
.people-filter-panel{padding:14px 18px;border-bottom:1px solid #e3eaeb;background:#f8fbfb}
.people-filter-panel form{display:grid;gap:12px}
.people-filter-groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:14px}
.people-filter-group{min-width:0;padding:10px 12px;border:1px solid #e1e9e9;border-radius:6px;background:#fff}
.people-filter-group h3{margin:0 0 10px;color:#61777d;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.people-filter-fields{display:grid;grid-template-columns:1fr;gap:8px}
.people-filter-panel label{min-width:0;color:#536970;font-size:12px}
.people-filter-panel input:not([type=checkbox]){width:100%;min-height:36px;padding:8px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}
.people-filter-panel .people-filter-check{display:flex;align-items:center;gap:8px;min-height:36px}
.people-filter-panel .people-filter-check input{margin:0}
.people-filter-panel .people-filter-note{margin:0;font-weight:normal}
.people-filter-actions{display:flex;justify-content:flex-end;gap:8px;grid-column:1/-1;margin-top:12px}
.people-filter-actions button{min-height:34px;padding:0 12px;border:1px solid #d8e1e3;border-radius:5px;background:#fff;color:#43575e}
.people-filter-actions button.save{border:0;background:#619fa3;color:#fff}
@media(max-width:900px){.people-filter-groups{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){#person-form{grid-template-columns:1fr}.people-filter-groups{grid-template-columns:1fr}}
.person-profile-view{position:absolute;inset:0;overflow:auto;background:#fff;padding:0 18px 30px;color:#31444c}.person-profile-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 8px 16px;border-bottom:1px solid #e2e9ea}.person-profile-head small{color:#72888d;letter-spacing:.06em}.person-profile-head h2{margin:5px 0;color:#293e46}.person-profile-head p{margin:0;color:#718188}.person-profile-head>div:last-child{display:flex;gap:8px;flex-wrap:wrap}.person-profile-head button{min-height:36px;padding:0 12px;border:1px solid #d8e1e3;border-radius:5px;background:#fff;color:#43575e}.person-profile-head button.save{background:#619fa3;color:#fff;border:0}.person-profile-tabs{display:flex;gap:4px;overflow:auto;border-bottom:1px solid #dfe5e7;white-space:nowrap}.person-profile-tabs button{height:42px;padding:0 12px;border:0;border-bottom:3px solid transparent;background:white;color:#52656d}.person-profile-tabs button.active{border-color:#63a1a4;color:#578f92;font-weight:bold}.person-profile-content{max-width:1200px;margin:18px auto}.person-profile-card{margin-bottom:16px;padding:18px;border:1px solid #e1e8e9;border-radius:8px;background:#fff}.person-profile-card h3,.person-profile-content>h3{margin:0 0 14px;color:#405a62}.person-profile-fields{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:0 20px;margin:0}.person-profile-fields>div{padding:10px 0;border-bottom:1px solid #edf0f1;min-width:0}.person-profile-fields dt{font-size:12px;color:#77888d}.person-profile-fields dd{margin:4px 0 0;overflow-wrap:anywhere;color:#334951}.person-profile-appointments{margin-top:12px}.person-consent{display:flex!important;align-items:center;gap:8px}.person-consent input{width:auto!important;min-height:auto!important}.person-observations{grid-column:1/-1}.person-observations textarea{width:100%;padding:9px;border:1px solid #cbd9dc;border-radius:4px;font:inherit}@media(max-width:700px){.person-profile-head{align-items:flex-start;flex-direction:column}.person-profile-fields{grid-template-columns:repeat(2,minmax(120px,1fr))}}
.person-records-heading,.person-record-item,.person-record-actions,.person-record-form-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.person-records-heading h3{margin:0}.person-records-heading button,.person-record-actions button,.person-record-form-actions button{min-height:34px;padding:0 11px;border:1px solid #d8e1e3;border-radius:5px;background:#fff;color:#43575e}.person-record-list{display:grid;gap:10px;margin-top:12px}.person-record-item{align-items:flex-start;padding:12px;border:1px solid #e7edef;border-radius:6px;background:#fbfdfd}.person-record-item p{margin:5px 0 0;color:#52656d;overflow-wrap:anywhere}.person-record-badges{flex:0 0 auto}.person-record-badges span{padding:4px 8px;border-radius:12px;background:#e6f3f1;color:#437779;font-size:12px}.person-record-actions{justify-content:flex-end;flex-wrap:wrap}.person-record-form{margin-top:16px;padding:16px;border:1px solid #dce7e8;border-radius:7px;background:#f8fbfb}.person-record-form h4{margin:0 0 12px;color:#405a62}.person-record-grid{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:12px}.person-record-grid label{display:grid;gap:6px;color:#536970}.person-record-grid input,.person-record-grid select,.person-record-grid textarea{width:100%;min-height:38px;padding:8px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;font:inherit;color:#334951}.person-record-grid label:has(textarea){grid-column:1/-1}.person-record-form-actions{justify-content:flex-end;margin-top:12px}.person-record-form-actions .save{border:0;background:#619fa3;color:#fff}.person-record-form .error{margin:8px 0 0}@media(max-width:700px){.person-record-item{align-items:flex-start;flex-direction:column}.person-record-actions{justify-content:flex-start}.person-record-grid{grid-template-columns:repeat(2,minmax(120px,1fr))}}@media(max-width:480px){.person-record-grid{grid-template-columns:1fr}}
.person-family-card>p{margin:0 0 14px;color:#52656d}.person-family-card>strong{display:block;margin-bottom:10px;color:#334951}.person-family-members{display:grid;gap:8px;margin:12px 0}.person-family-member{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid #e7edef;border-radius:6px;background:#fbfdfd}.person-family-member>span{margin-left:auto;color:#52656d}.person-family-member button{min-height:32px;padding:0 10px;border:1px solid #d8e1e3;border-radius:5px;background:#fff;color:#43575e}.person-family-responsible{display:flex!important;grid-column:1/-1;align-items:center;gap:8px}.person-family-responsible input{width:auto!important;min-height:auto!important}.person-family-form{margin-top:16px;padding:16px;border:1px solid #dce7e8;border-radius:7px;background:#f8fbfb}.person-family-form h4{margin:0 0 12px;color:#405a62}.person-family-form .error{margin:8px 0 0}.person-family-form button:disabled{opacity:.55;cursor:not-allowed}@media(max-width:600px){.person-family-member{align-items:flex-start;flex-direction:column}.person-family-member>span{margin-left:0}}
.person-clinical-form{max-width:1100px;margin:0 auto;padding:20px;border:1px solid #e1e8e9;border-radius:8px}.person-clinical-form h3{color:#405a62}.person-clinical-form label{display:grid;gap:7px;color:#536970}.person-clinical-form textarea{width:100%;padding:10px;border:1px solid #cbd9dc;border-radius:4px;resize:vertical;font:inherit;color:#334951}.person-health-alerts{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:8px;margin:12px 0 20px}.person-health-alerts label{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid #e1e8e9;border-radius:5px;background:#f8fbfb}.person-health-alerts input{margin:0}.person-clinical-actions{display:flex;justify-content:flex-end;margin-top:16px}.person-clinical-actions button{min-height:38px;padding:0 14px;border:0;border-radius:5px;background:#619fa3;color:#fff}.person-health-banner{padding:14px 16px;margin:0 0 16px;border-left:4px solid #d28b39;border-radius:5px;background:#fff7e9;color:#6d501f}.person-health-banner p{margin:6px 0 0}@media(max-width:720px){.person-health-alerts{grid-template-columns:repeat(2,minmax(125px,1fr))}}
.clinical-editor-toolbar{display:flex;align-items:center;gap:5px;flex-wrap:wrap;padding:7px;border:1px solid #dbe3e4;border-bottom:0;border-radius:5px 5px 0 0;background:#f7f9f9}.clinical-editor-toolbar button{min-width:32px;height:30px;padding:0 8px;border:1px solid #d8e1e3;border-radius:4px;background:#fff;color:#43575e}.clinical-editor-toolbar button:first-child{font-weight:700}.clinical-editor-toolbar button:nth-child(2){font-style:italic}.clinical-editor-toolbar button:nth-child(3){text-decoration:underline}.clinical-editor-toolbar select{height:30px;max-width:130px;border:1px solid #d8e1e3;border-radius:4px;background:#fff;color:#43575e}.clinical-editor-toolbar input[type=color]{width:32px;height:30px;padding:3px;border:1px solid #d8e1e3;border-radius:4px;background:#fff}.clinical-editor-label{display:grid!important;gap:0!important}.clinical-editor{min-height:220px;padding:12px;border:1px solid #cbd9dc;border-radius:0 0 5px 5px;background:#fff;color:#334951;line-height:1.55;outline-color:#619fa3;overflow-wrap:anywhere}.clinical-editor:empty:before{content:'Escribe o dicta el texto…';color:#9aa7aa}.clinical-editor h2,.clinical-editor h3{margin:10px 0;color:#405a62}.clinical-editor ul,.clinical-editor ol{padding-left:24px}
.slot-dialog{width:min(360px,92vw);padding:20px}.slot-dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.slot-dialog-head h2{margin:0;font-size:20px}.slot-dialog-head p{margin:5px 0;color:#718187}.slot-dialog-head>button{border:0;background:none;font-size:24px;color:#52676c}.slot-availability{padding:10px 12px;border-radius:6px;background:#e7f5ef;color:#28765d}.slot-availability.occupied{background:#fff0ed;color:#a53e31}.slot-dialog>button{width:100%;margin-top:8px;padding:11px;border:1px solid #d6e1e3;border-radius:5px;background:#f8fbfb;color:#48666b}.slot-dialog>button.save{border:0;background:#619fa3;color:white}.slot-dialog>button:disabled{opacity:.55;cursor:not-allowed}
.slot-close-picker{position:relative;margin-top:8px}.slot-close-picker>#slot-close-toggle{width:100%;padding:11px;border:1px solid #d6e1e3;border-radius:5px;background:#f8fbfb;color:#48666b}.slot-close-picker [role="menu"]{position:absolute;z-index:3;right:0;left:0;top:calc(100% + 3px);display:grid;padding:5px;background:#fff;border:1px solid #d6e1e3;border-radius:5px;box-shadow:0 8px 24px #19343b26}.slot-close-picker [role="menu"][hidden]{display:none}.slot-close-picker [role="menu"] button{padding:10px;text-align:left;border:0;border-radius:4px;background:#fff;color:#48666b}.slot-close-picker [role="menu"] button:hover{background:#edf5f5}.calendar-time-override{display:flex;flex-direction:column;justify-content:center;gap:3px;border:1px dashed #62777b!important}.calendar-time-override.closed{background:#7b888c!important;color:#fff}.calendar-time-override.opened{background:#4c9873!important;color:#fff}.calendar-time-override span,.calendar-time-override strong{color:inherit}.slot-close-dates-dialog form>label{display:grid;gap:5px;margin:12px 0;color:#52676c}.slot-close-dates-dialog input{padding:9px;border:1px solid #d3dfe0;border-radius:4px;font:inherit}
.calendar-settings-dialog h3{margin:16px 0 8px;color:#48666b}.calendar-settings-check{display:flex;align-items:center;gap:9px;margin:12px 0;font-weight:600}.calendar-settings-check input{width:18px;height:18px;accent-color:#427b80}
.appointment-overlap-warning{margin:12px 0;padding:10px 12px;border-left:4px solid #c58b25;background:#fff8e8;color:#68490e;border-radius:4px}
.calendar-event-dialog{width:min(680px,95vw);max-height:92vh;overflow:auto}.calendar-event-dialog .dialog-head{margin-bottom:10px}.calendar-event-dialog .dialog-head small,.calendar-event-detail .dialog-head small{color:#71858a;letter-spacing:.05em}.calendar-event-dialog .dialog-head h2,.calendar-event-detail .dialog-head h2{margin:5px 0}.calendar-event-dialog .form-note,.calendar-event-detail .form-note{color:#718187;font-size:12px}.calendar-event-detail{width:min(520px,95vw)}.calendar-event{border-left-color:#759328}.slot-dialog #slot-new-event{background:#fff;color:#52676d}
.calendar-event-dialog [data-calendar-event-panel] label{display:grid;gap:6px;margin:10px 0;color:#536970}.calendar-event-dialog fieldset{display:flex;flex-wrap:wrap;gap:10px;border:1px solid #dce5e6;border-radius:5px}.calendar-event-dialog fieldset label{display:flex!important;align-items:center;gap:4px}
.calendar-event-type-dialog{width:min(520px,95vw);max-height:90vh;overflow:auto}.calendar-event-type-dialog label{display:grid;gap:6px;margin:12px 0;color:#536970}.calendar-event-type-preview{display:flex;align-items:center;gap:12px;margin:16px 0;padding:10px;border:1px solid #dce5e6;border-radius:5px;color:#718187}.calendar-event-type-preview strong{padding:5px 9px;border-left:4px solid #b5d439;border-radius:3px;color:#314348}
.calendar-class-dialog{width:min(760px,95vw);max-height:92vh;overflow:auto}.calendar-class-dialog .dialog-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.calendar-class-dialog .dialog-head h2,.calendar-class-detail .dialog-head h2{margin:5px 0}.calendar-class-dialog .dialog-head small,.calendar-class-detail .dialog-head small{color:#71858a;letter-spacing:.05em}.calendar-class-dialog .form-note,.calendar-class-detail .form-note{color:#718187;font-size:12px}.calendar-class-tabs{display:flex;gap:4px;margin:12px 0;border-bottom:1px solid #dce5e6}.calendar-class-tabs button{padding:9px 12px;border:0;border-bottom:2px solid transparent;background:transparent;color:#52676d}.calendar-class-tabs button.active{border-color:#619fa3;color:#315b60;font-weight:600}.calendar-class-dialog [data-calendar-class-panel] label,.calendar-class-detail label{display:grid;gap:6px;margin:10px 0;color:#536970}.calendar-class-online{display:flex!important;align-items:center;gap:8px}.calendar-class-dialog fieldset{display:flex;flex-wrap:wrap;gap:10px;border:1px solid #dce5e6;border-radius:5px}.calendar-class-dialog fieldset label{display:flex!important;align-items:center;gap:4px}.calendar-class-detail{width:min(560px,95vw);max-height:90vh;overflow:auto}.calendar-class-attendee-list{padding-left:20px}.calendar-class-attendee-list li{display:flex;justify-content:space-between;gap:12px;margin:6px 0}.calendar-class-attendee-list button{border:1px solid #d6e1e3;border-radius:4px;background:#fff;padding:4px 8px;color:#52676d}.calendar-class{border-left-color:#d5e0aa}.slot-dialog #slot-new-class{background:#fff;color:#52676d}
.tools-left{position:relative}.calendar-group-picker{position:relative}.calendar-group-picker>button{white-space:nowrap}.calendar-group-picker>div{position:absolute;top:calc(100% + 5px);left:0;z-index:30;min-width:210px;padding:8px;background:#fff;border:1px solid #d8e2e4;border-radius:6px;box-shadow:0 8px 24px #10272b24}.calendar-group-picker>div[hidden]{display:none}.calendar-group-picker strong{display:block;padding:7px 9px;color:#73868a;font-size:10px;letter-spacing:.05em}.calendar-group-picker [role=menuitemradio]{display:block;width:100%;padding:9px;border:0;border-radius:4px;background:#fff;color:#40545a;text-align:left}.calendar-group-picker [role=menuitemradio]:hover,.calendar-group-picker [role=menuitemradio][aria-checked=true]{background:#edf5f5;color:#315b60}.day-headings,.grid{grid-template-columns:repeat(var(--columns,var(--days,5)),minmax(130px,1fr))}.grid{min-width:calc(var(--columns,var(--days,5))*130px)}
.list-view-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.list-view-heading h2{margin:0;font-size:18px}.appointment-list-scroll{max-height:calc(100vh - 190px);overflow:auto;border:1px solid #e2e8ea;border-radius:7px}.appointment-list-table{width:100%;min-width:900px;border-collapse:separate;border-spacing:0;font-size:13px}.appointment-list-table th{position:sticky;top:0;z-index:1;background:#f5f8f8;color:#62757c;text-align:left;text-transform:uppercase;font-size:10px;letter-spacing:.04em;font-weight:700;padding:11px 9px;border-bottom:1px solid #dce4e6;white-space:nowrap}.appointment-list-table td{padding:9px;border-bottom:1px solid #edf0f1;vertical-align:middle}.appointment-list-row{color:#334155;cursor:pointer}.appointment-list-row:hover{background:#f6faf9}.appointment-list-row:focus{outline:2px solid #619fa3;outline-offset:-2px}.appointment-list-row:last-child td{border-bottom:0}.appointment-list-actions{width:72px}.appointment-list-actions .table-action{min-width:42px}.appointment-list-when,.appointment-list-subject,.appointment-list-professional{min-width:135px}.appointment-list-when strong,.appointment-list-when span,.appointment-list-subject strong,.appointment-list-subject span,.appointment-list-professional strong,.appointment-list-professional span{display:block}.appointment-list-when span,.appointment-list-subject span,.appointment-list-professional span{color:#74848a;font-size:11px;margin-top:4px}.appointment-list-type,.appointment-list-status{display:inline-block;padding:4px 7px;border-radius:12px;background:#edf4f4;color:#48696c;font-size:11px;white-space:nowrap}.appointment-list-type.is-event{background:#eef1ff;color:#505a99}.appointment-list-type.is-class{background:#f3edfb;color:#714e94}.appointment-list-type.is-block{background:#fff1e7;color:#965b2f}.appointment-list-status.is-closed{background:#fff0ef;color:#a34841}.appointment-list-empty td{text-align:center;color:#75858b;padding:28px}.appointment-list-table th:nth-child(1){width:75px}.appointment-list-table th:nth-child(2){width:190px}.appointment-list-table th:nth-child(5),.appointment-list-table th:nth-child(6){width:110px}
.month-agenda-view{height:100%;display:flex;flex-direction:column;min-width:0;overflow:auto;background:#fff}.month-weekdays,.month-days{display:grid;grid-template-columns:52px repeat(7,minmax(105px,1fr))}.month-weekdays{position:sticky;top:0;z-index:2;flex:none;height:38px;background:#f5f8f8;border-bottom:1px solid #d7e0e1;color:#6e8086;text-align:center;align-items:center;text-transform:uppercase;font-size:11px;font-weight:bold}.month-weekdays span:first-child{color:#9ba8ab;font-size:10px}.month-days{grid-template-rows:repeat(var(--weeks,5),minmax(108px,1fr));flex:1;min-height:0}.month-week-number{display:flex;align-items:flex-start;justify-content:center;padding-top:9px;border-right:1px solid #e4e9ea;border-bottom:1px solid #dce3e4;color:#9ca8ab;font-size:10px}.month-day{min-width:0;min-height:108px;padding:5px 4px;border-right:1px solid #e0e5e6;border-bottom:1px solid #d5ddde;background:#fff;overflow:hidden}.month-day.is-other-month{background:#fafbfb}.month-day.is-other-month .month-day-number{color:#b1babc}.month-day.is-today{background:#f2f9f8}.month-day-number{display:flex;align-items:center;justify-content:center;width:26px;height:26px;margin:0 0 3px;border:0;border-radius:50%;background:transparent;color:#354950;font:inherit;font-weight:bold;cursor:pointer}.month-day-number:hover{background:#d9eeee;color:#28777c}.month-day.is-today .month-day-number{background:#63a4a6;color:white}.month-event{display:block;width:100%;margin:2px 0;padding:3px 5px;overflow:hidden;border:0;border-left:3px solid #9fca3b;border-radius:2px;background:#d8edf5;color:#2f4148;text-align:left;text-overflow:ellipsis;white-space:nowrap;font:11px Arial,sans-serif;cursor:pointer}.month-event.is-event,.month-event.is-class{border-left-color:var(--month-event-color,#63a0a3);background:color-mix(in srgb,var(--month-event-color,#63a0a3) 18%,white)}.month-event.is-override{border-left-color:#7b888c;background:#edf0f0;color:#657276;cursor:default}.month-more{display:block;padding:3px 5px;color:#66898c;font-size:10px}.month-agenda-view[hidden]{display:none}@media(max-width:850px){.month-weekdays,.month-days{grid-template-columns:38px repeat(7,minmax(82px,1fr))}.month-day{min-height:96px;padding:3px}.month-event{font-size:10px;padding:3px}}
.daily-agenda-view{height:100%;overflow:auto;background:#fff;padding:0 0 24px;display:grid;grid-template-columns:76px minmax(0,1fr);align-content:start}.daily-agenda-view[hidden]{display:none}.daily-agenda-date{position:sticky;top:0;align-self:start;display:flex;flex-direction:column;align-items:center;gap:4px;min-height:88px;padding:12px 4px;border-right:1px solid #d9e1e2;border-bottom:1px solid #d9e1e2;background:#f7f9f9;color:#526b70;text-align:center}.daily-agenda-date strong{text-transform:capitalize;font-size:12px}.daily-agenda-date span{font-size:14px;font-weight:bold;color:#2d4148}.daily-agenda-content{min-width:0}.daily-agenda-group{display:grid;grid-template-columns:84px minmax(0,1fr);min-height:88px;border-bottom:1px solid #d9e1e2}.daily-agenda-group-name{padding:10px 6px;color:#5d8c90;text-align:center;font-size:11px;overflow-wrap:anywhere}.daily-agenda-cards{display:grid;align-content:start;gap:6px;padding:8px 12px}.daily-agenda-card{display:grid;grid-template-columns:minmax(220px,1fr) minmax(160px,1.2fr);gap:10px;align-items:start;width:100%;padding:7px 10px;border:1px solid #d9e1e2;border-left:4px solid #a8cb3d;border-radius:7px;background:#fff;color:#35474d;text-align:left;box-shadow:0 1px 2px #0000000d;font:13px "Helvetica Neue",Helvetica,Arial,sans-serif;cursor:pointer}.daily-agenda-card:hover{background:#f8fbfb;box-shadow:0 2px 6px #00000015}.daily-agenda-card.is-event,.daily-agenda-card.is-class{border-left-color:var(--daily-event-color,#61a0a3)}.daily-agenda-card.is-override{border-left:4px dashed #7d8b8e;background:#f3f5f5;cursor:default}.daily-agenda-info{display:flex;min-width:0;flex-direction:column;gap:4px;overflow:hidden}.daily-agenda-status{display:inline-flex;align-items:center;width:fit-content;max-width:100%;padding:2px 7px;border-radius:4px;background:#edf5f2;color:#4d7671;font-size:11px;font-weight:bold;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.daily-agenda-time,.daily-agenda-person,.daily-agenda-room,.daily-agenda-service{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#3b5057;font-size:12px}.daily-agenda-reason{display:flex;min-width:0;flex-direction:column;gap:5px;border-left:1px solid #e1e6e7;padding-left:10px}.daily-agenda-reason strong{font-size:12px;font-weight:normal;color:#52666c}.daily-agenda-reason span{font-size:12px;color:#718087;overflow-wrap:anywhere}.daily-agenda-empty{margin:0;padding:20px;color:#78888c;text-align:center}@media(max-width:720px){.daily-agenda-view{grid-template-columns:55px minmax(0,1fr)}.daily-agenda-group{grid-template-columns:58px minmax(0,1fr)}.daily-agenda-cards{padding:6px}.daily-agenda-card{grid-template-columns:1fr;gap:6px}.daily-agenda-reason{border-left:0;border-top:1px solid #e1e6e7;padding:6px 0 0}}
.shift-table.is-month{min-width:calc(235px + var(--shift-days,30)*54px + 92px);table-layout:fixed}.shift-table.is-month thead th.shift-month-day,.shift-table.is-month tbody td:not(:first-child):not(:last-child){width:54px;min-width:54px;padding:5px 2px}.shift-table.is-month thead th.shift-month-day{height:44px;text-transform:none}.shift-month-weekday,.shift-month-day-number{display:block;line-height:1.2}.shift-month-weekday{color:#89999e;font-size:10px;font-weight:normal;text-transform:uppercase}.shift-month-day-number{margin-top:3px;color:#334a51;font-size:12px}.shift-table.is-month .shift-month-weekend{background:#f1f5f5}.shift-table.is-month .shift-month-today .shift-month-day-number{display:inline-block;min-width:21px;padding:3px;border-radius:50%;background:#619fa3;color:white}
.shift-table.is-month{min-width:calc(235px + var(--shift-days,30)*47px + 92px)}.shift-table.is-month thead th.shift-month-day,.shift-table.is-month tbody td:not(:first-child):not(:last-child){width:47px;min-width:47px}
.labels-view{height:100%;overflow:auto;padding:24px 28px;background:#fff}.labels-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}.labels-heading small{color:#66868a;font-size:10px;font-weight:700;letter-spacing:.08em}.labels-heading h1{margin:5px 0;color:#35474d;font-size:23px}.labels-heading p{margin:0;color:#75858a;font-size:13px}.labels-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}.label-search{display:flex;align-items:center;gap:8px;color:#536970;font-size:12px}.label-search input{min-width:220px;padding:9px;border:1px solid #d9e2e3;border-radius:5px}.label-scope-filters{display:flex;gap:4px;flex-wrap:wrap}.label-scope-filters button{padding:8px 11px;border:1px solid #dce5e6;border-radius:5px;background:#fff;color:#586d72}.label-scope-filters button.active{border-color:#79aeb0;background:#edf6f5;color:#315b60;font-weight:700}.label-scope-filters span{margin-left:4px;color:#829195}.labels-table{width:100%}.label-actions{display:flex;gap:6px;white-space:nowrap}.label-actions button{padding:5px 8px;border:1px solid #d6e0e1;border-radius:4px;background:#fff;color:#496166}.label-chip{display:inline-flex;align-items:center;max-width:100%;padding:5px 12px;border-left:4px solid var(--label-color,#ff8a5b);border-radius:999px;background:color-mix(in srgb,var(--label-color,#ff8a5b) 17%,white);color:#3f5054;font-size:12px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.label-chip.is-empty{opacity:.6}.person-label-chip{margin:2px 4px 2px 0;padding:3px 8px;font-size:10px}.person-label-chip.is-unconfigured{border-left-color:#aab6b8;background:#f1f3f3;color:#58676a}.label-dialog{width:min(520px,94vw);max-height:92vh;overflow:auto}.label-dialog form{display:grid;gap:12px}.label-preview-panel{display:flex;min-height:90px;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:14px;border:1px solid #dce5e6;border-radius:9px;background:#f7f9f9;color:#77868a;font-size:12px}.label-dialog form>label{display:grid;gap:6px;color:#536970;font-size:13px}.label-dialog input[type=text]{padding:9px;border:1px solid #d9e2e3;border-radius:5px}.label-dialog input[type=color]{width:64px;height:38px;padding:2px;border:1px solid #d9e2e3;border-radius:5px;background:white}.label-scope-choice{margin:0;padding:12px;border:1px solid #dce5e6;border-radius:7px}.label-scope-choice legend{padding:0 5px;color:#536970;font-size:13px;font-weight:700}.label-scope-choice p{margin:0 0 10px;color:#78878b;font-size:12px}.label-scope-choice>div{display:flex;gap:5px;flex-wrap:wrap}.label-scope-choice label{position:relative}.label-scope-choice input{position:absolute;opacity:0}.label-scope-choice label span{display:block;padding:7px 10px;border:1px solid #d9e2e3;border-radius:5px;color:#586d72;font-size:12px;cursor:pointer}.label-scope-choice input:checked+span{border-color:#79aeb0;background:#edf6f5;color:#315b60;font-weight:700}.label-scope-choice input:focus-visible+span{outline:2px solid #315b60;outline-offset:2px}
.product-name-labels{display:flex;flex-direction:column;align-items:flex-start;gap:5px}.product-label-chip,.appointment-list-label{margin:2px 4px 2px 0;padding:3px 8px;font-size:10px}.appointment-list-labels{display:flex;gap:3px;flex-wrap:wrap;margin-top:4px}
.users-view{position:absolute;inset:0;overflow:auto;background:#fff;padding:0 18px 28px}.users-tabs{height:43px;display:flex;align-items:stretch;gap:8px;overflow:auto;border-bottom:1px solid #e1e7e8;white-space:nowrap}.users-tabs button{padding:0 12px;border:0;border-bottom:3px solid transparent;background:#fff;color:#546a70;font-size:13px;font-weight:700}.users-tabs button.active{border-color:#619fa3;color:#4c898d}.users-tabs button:disabled{color:#9aa6a9}.users-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 8px 14px}.users-heading small{color:#6e858a;font-size:10px;font-weight:700;letter-spacing:.08em}.users-heading h1{margin:4px 0;color:#344d55;font-size:22px}.users-heading p{margin:0;color:#78878b;font-size:13px}.users-heading>div:last-child{display:flex;gap:8px}.users-heading button,.users-toolbar button{min-height:34px;padding:0 12px;border:1px solid #d9e2e3;border-radius:5px;background:#fff;color:#43575e}.users-heading button.save{border:0;background:#619fa3;color:white}.users-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:4px 8px 16px}.users-summary section{display:grid;gap:4px;padding:12px 14px;border:1px solid #e1e8e9;border-radius:6px;background:#fbfdfd}.users-summary small{color:#73868b;font-size:10px;font-weight:700;letter-spacing:.06em}.users-summary strong{color:#344d55;font-size:20px}.users-summary span{color:#7a898d;font-size:12px}.users-toolbar{display:flex;align-items:end;gap:8px;flex-wrap:wrap;padding:10px 8px;border-block:1px solid #e6ebec}.users-toolbar label{display:grid;gap:5px;min-width:min(340px,100%);flex:1;color:#586d72;font-size:12px}.users-toolbar input{height:35px;padding:0 10px;border:1px solid #d6e0e2;border-radius:5px;font:inherit}.users-toolbar button[aria-pressed=true]{border-color:#79aeb0;background:#edf6f5;color:#315b60;font-weight:700}.users-grid-wrap{overflow:auto;margin:14px 8px;border:1px solid #e2e8e9;border-radius:5px}.users-table{width:100%;min-width:850px}.users-table th{padding:10px 8px;background:#f6f8f8;color:#78898d;font-size:10px;letter-spacing:.04em;text-align:left}.users-table td{padding:11px 8px;border-bottom:1px solid #edf0f1;color:#43575e;font-size:12px;vertical-align:middle}.users-table td:first-child strong,.users-table td:nth-child(2) span,.users-table td:nth-child(3) strong{display:block}.users-table td small{display:block;margin-top:4px;color:#839196;font-size:11px}.users-table .table-action{padding:5px 9px;border:1px solid #d8e1e2;border-radius:4px;background:#fff;color:#50676d}.users-view>.empty-state{margin:14px 8px}.user-dialog{width:min(650px,95vw);max-height:92vh;overflow:auto;border:0;border-radius:10px;padding:20px;box-shadow:0 16px 48px #102a3340}.user-dialog::backdrop{background:#132a3155}.user-dialog .dialog-head{display:flex;align-items:flex-start;justify-content:space-between}.user-dialog .dialog-head h2{margin:4px 0 14px;color:#344d55}.user-dialog .dialog-head small{color:#718187;font-size:10px;letter-spacing:.06em}.user-dialog .dialog-head>button{border:0;background:transparent;color:#52656d;font-size:22px}.user-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.user-fields label{display:grid;gap:5px;margin:8px 0;color:#536970;font-size:12px}.user-fields input,.user-fields select{width:100%;min-height:36px;padding:7px 9px;border:1px solid #cad7da;border-radius:5px;background:#fff;color:#40555c;font:inherit}.user-flags{display:flex;gap:18px;flex-wrap:wrap;margin:10px 0;color:#536970;font-size:12px}.user-flags label{display:flex;align-items:center;gap:7px}.user-dialog .form-note{margin:12px 0;color:#77868a;font-size:12px}.user-dialog .error{min-height:1em;color:#b33333}.user-dialog .product-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.user-dialog .product-form-actions button{min-height:36px;padding:0 13px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fafb;color:#43575e}.user-dialog .product-form-actions button.save{border:0;background:#619fa3;color:white}@media(max-width:720px){.users-view{padding:0 8px 20px}.users-heading{align-items:flex-start;flex-direction:column}.users-summary{grid-template-columns:1fr}.user-fields{grid-template-columns:1fr}}
.day-heading .day-heading-team{margin-top:0;margin-bottom:5px;color:#6d8588;font-size:10px;line-height:1.2;font-weight:700;letter-spacing:.03em}
.day-heading.is-today strong{position:relative;top:-5px;display:inline-block;padding:5px 16px;border-radius:16px;background:#619fa3;color:#fff;line-height:18px}
.day-heading.is-today>small:not(.day-heading-team){margin-top:21px}
.daily-agenda-group-heading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;padding:8px 5px;border-right:1px solid #e0e6e7;text-align:center}
.daily-agenda-group-heading .daily-agenda-group-name{padding:0;color:#526a70;font-weight:700}
.daily-agenda-team-name{color:#6d8588;font-size:10px;font-weight:700;line-height:1.2;overflow-wrap:anywhere}
.daily-agenda-empty{align-self:center}
.permission-admin-layout{display:grid;grid-template-columns:minmax(210px,270px) minmax(0,1fr);gap:14px;padding:14px 8px;align-items:start}
.permission-groups-list{display:grid;gap:7px}
.permission-group-card{display:grid;gap:4px;width:100%;padding:11px;border:1px solid #e0e7e8;border-radius:6px;background:#fff;color:#43575e;text-align:left}
.permission-group-card:hover,.permission-group-card.active{border-color:#75a9ab;background:#f2f8f7}
.permission-group-card strong{font-size:13px}.permission-group-card small,.permission-group-card span{color:#75858a;font-size:11px}
.permission-group-form{display:grid;gap:12px;min-width:0}.permission-group-form[hidden]{display:none}
.permission-group-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}
.permission-group-fields label{display:grid;gap:5px;color:#536970;font-size:12px}
.permission-group-fields label:first-child{grid-column:1/-1}
.permission-group-fields input,.permission-group-fields select{height:36px;padding:0 9px;border:1px solid #cad7da;border-radius:5px;background:#fff;color:#40555c;font:inherit}
.permission-legend{display:flex;gap:18px;margin:0;padding:10px;border-block:1px solid #e5ebec;color:#5e7378;font-size:12px}
.permission-matrix{display:grid;border:1px solid #e0e7e8;border-radius:6px;overflow:hidden}
.permission-module-row{display:grid;grid-template-columns:minmax(190px,1.1fr) minmax(180px,1fr);gap:10px;padding:9px 11px;border-bottom:1px solid #e9eeee;align-items:center}
.permission-module-row.is-child{padding-left:28px;background:#fbfcfc}
.permission-module-row:last-child{border-bottom:0}
.permission-module-heading{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:5px;align-items:center}
.permission-module-heading strong{color:#3f555c;font-size:12px}
.permission-module-heading button{padding:4px 6px;border:1px solid #dbe4e5;border-radius:4px;background:#fff;color:#697e82;font-size:10px;white-space:nowrap}
.permission-module-actions{display:flex;gap:14px;flex-wrap:wrap}
.permission-action{display:flex;align-items:center;gap:6px;color:#536970;font-size:12px}
.permission-action input{accent-color:#619fa3}
.permission-form-actions{display:flex;justify-content:flex-end;gap:8px}
.permission-form-actions button{min-height:36px;padding:0 12px;border:1px solid #d6e1e2;border-radius:5px;background:#fff;color:#43575e}
.permission-form-actions button.save{border:0;background:#619fa3;color:white}
.permission-form-actions #delete-permission-group{margin-right:auto;color:#9b514b}
#permission-groups-notice{padding:0 8px 14px}
@media(max-width:850px){.permission-admin-layout{grid-template-columns:1fr}.permission-groups-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}
@media(max-width:560px){.permission-group-fields{grid-template-columns:1fr}.permission-group-fields label:first-child{grid-column:auto}.permission-module-row{grid-template-columns:1fr;gap:8px}}
.activity-toolbar label{min-width:130px}.activity-toolbar label:first-child{min-width:min(260px,100%)}.activity-table{min-width:1050px}
.security-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,300px);gap:16px;padding:0 8px;align-items:start}.security-policy-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.9fr);gap:14px}.security-policy-form>div,.security-notice{padding:16px;border:1px solid #e1e8e9;border-radius:6px;background:#fbfdfd}.security-policy-form h2,.security-users-heading{margin:0 0 12px;color:#344d55;font-size:16px}.security-choice{display:flex;gap:10px;align-items:flex-start;padding:11px 8px;border-top:1px solid #e9eeee;color:#43575e;cursor:pointer}.security-choice input{margin-top:3px;accent-color:#619fa3}.security-choice span{display:grid;gap:4px}.security-choice strong{font-size:13px}.security-choice small,.security-application p,.security-notice{color:#77878b;font-size:12px;line-height:1.5}.security-fields{display:grid;gap:12px}.security-fields label{display:grid;gap:5px;color:#586d72;font-size:12px}.security-fields select{height:36px;padding:0 9px;border:1px solid #cad7da;border-radius:5px;background:#fff;color:#40555c;font:inherit}.security-application>.save{min-height:36px;margin-top:12px;padding:0 13px;border:0;border-radius:5px;background:#619fa3;color:#fff}.security-users-heading{margin:22px 8px 0}.security-users-table{min-width:620px}.security-notice{margin:0}
@media(max-width:850px){.security-layout,.security-policy-form{grid-template-columns:1fr}}
.user-service-scope{margin:12px 0;padding:12px;border:1px solid #e0e8e9;border-radius:6px}.user-service-scope legend{padding:0 6px;color:#405960;font-size:13px;font-weight:700}.user-service-scope>.form-note{margin:4px 0 10px}.user-service-toolbar{display:flex;align-items:end;gap:7px;flex-wrap:wrap}.user-service-toolbar label{display:grid;flex:1;min-width:180px;gap:5px;color:#536970;font-size:12px}.user-service-toolbar input{min-height:34px;padding:6px 8px;border:1px solid #cad7da;border-radius:5px;font:inherit}.user-service-toolbar button{min-height:34px;padding:0 10px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fafb;color:#43575e;font:inherit;font-size:12px}.user-service-toolbar button:disabled{opacity:.55}.user-service-options{display:grid;gap:8px;max-height:230px;overflow:auto}.user-service-group{border:1px solid #e4ebec;border-radius:5px}.user-service-specialty{display:flex;align-items:center;gap:8px;padding:9px;background:#f7fafa;color:#405960;font-size:12px}.user-service-specialty small{margin-left:auto;color:#829195;font-weight:400}.user-service-option{display:flex;align-items:center;gap:8px;padding:8px 12px;border-top:1px solid #edf1f2;color:#536970;font-size:12px}.user-service-option input,.user-service-specialty input{accent-color:#619fa3}
.user-location-scope{margin:12px 0;padding:12px;border:1px solid #e0e8e9;border-radius:6px}.user-location-scope legend{padding:0 6px;color:#405960;font-size:13px;font-weight:700}.user-location-toolbar{display:flex;gap:7px;flex-wrap:wrap}.user-location-toolbar button{min-height:34px;padding:0 10px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fafb;color:#43575e;font:inherit;font-size:12px}.user-location-toolbar button:disabled{opacity:.55}.user-location-options{display:grid;gap:7px;max-height:230px;overflow:auto}.user-location-center{border:1px solid #e4ebec;border-radius:5px}.user-location-center summary{list-style:none;cursor:pointer}.user-location-center summary::-webkit-details-marker{display:none}.user-location-center-check{display:flex;align-items:center;gap:8px;padding:9px;background:#f7fafa;color:#405960;font-size:12px}.user-location-center-check small{margin-left:auto;color:#829195;font-weight:400}.user-location-room-list{padding-left:18px}.user-location-room{display:flex;align-items:center;gap:8px;padding:8px 12px;border-top:1px solid #edf1f2;color:#536970;font-size:12px}.user-location-scope input{accent-color:#619fa3}
.user-weekly-schedule{margin:12px 0;padding:12px;border:1px solid #e0e8e9;border-radius:6px}.user-weekly-schedule legend{padding:0 6px;color:#405960;font-size:13px;font-weight:700}.user-schedule-source{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}.user-schedule-source label{display:flex;align-items:flex-start;gap:8px;padding:10px;border:1px solid #e1e8e9;border-radius:5px;color:#43575e;cursor:pointer}.user-schedule-source input{margin-top:3px;accent-color:#619fa3}.user-schedule-source span{display:grid;gap:4px}.user-schedule-source strong{font-size:12px}.user-schedule-source small{color:#7c898d;font-size:11px}.user-schedule-total{display:flex;align-items:center;justify-content:space-between;margin:8px 0;padding:9px;background:#f7fafa;color:#536970;font-size:12px}.user-weekly-schedule-days{display:grid;gap:6px;max-height:260px;overflow:auto}.user-weekly-day{border:1px solid #e4ebec;border-radius:5px}.user-weekly-day-heading{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:#f7fafa;color:#405960;font-size:12px}.user-weekly-day-heading button{min-height:28px;padding:0 8px;border:1px solid #d6e1e2;border-radius:4px;background:#fff;color:#536970;font:inherit;font-size:11px}.user-weekly-slot{display:grid;grid-template-columns:1fr 1fr auto auto;align-items:end;gap:8px;padding:8px;border-top:1px solid #edf1f2}.user-weekly-slot label{display:grid;gap:4px;color:#77868a;font-size:10px}.user-weekly-slot input{height:32px;padding:4px 6px;border:1px solid #cad7da;border-radius:4px;background:white;color:#40555c;font:inherit}.user-weekly-slot>span{padding-bottom:8px;color:#718187;font-size:11px;white-space:nowrap}.user-weekly-slot>button{min-height:30px;padding:0 8px;border:1px solid #e6d9d7;border-radius:4px;background:#fff;color:#9b514b;font:inherit;font-size:11px}
.online-booking-view{max-width:1120px;margin:0 auto;padding:28px 32px;color:#405960}.online-booking-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:25px}.online-booking-heading small{color:#829095;font-size:11px;letter-spacing:.08em}.online-booking-heading h1{margin:5px 0;font-size:25px;font-weight:500}.online-booking-heading p{margin:0;color:#7c898d;font-size:13px}.online-booking-status{padding:8px 11px;border:1px solid #eadfc0;border-radius:5px;background:#fffaf0;color:#856d37;font-size:11px}.online-booking-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.online-booking-cards article{display:flex;min-height:150px;flex-direction:column;align-items:flex-start;padding:16px;border:1px solid #e3e9ea;border-radius:7px;background:#fff}.online-booking-cards article>small{color:#879498;font-size:10px;letter-spacing:.06em}.online-booking-cards article>strong{margin:9px 0 2px;color:#394f57;font-size:28px;font-weight:500}.online-booking-cards article>span,.online-booking-cards article>p{margin:0;color:#7c898d;font-size:11px}.online-booking-cards article>button{margin-top:auto;padding:8px 0 0;border:0;background:none;color:#43888d;font:inherit;font-size:11px;cursor:pointer}.online-booking-readiness{margin-top:18px;padding:18px 20px;border:1px solid #e3e9ea;border-radius:7px;background:#fff}.online-booking-readiness h2{margin:0 0 12px;font-size:15px;font-weight:500}.online-booking-readiness ul{display:grid;gap:8px;margin:0 0 16px;padding-left:20px;color:#607278;font-size:12px}.online-booking-readiness .form-note{margin:0;color:#879498;font-size:11px}@media(max-width:850px){.online-booking-view{padding:20px 16px}.online-booking-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.online-booking-heading{align-items:flex-start;flex-direction:column}}
.user-online-booking{margin:12px 0;padding:12px;border:1px solid #e0e8e9;border-radius:6px}.user-online-booking legend{padding:0 6px;color:#405960;font-size:13px;font-weight:700}.user-online-enabled{display:flex;align-items:flex-start;gap:9px;padding:10px;border:1px solid #e4ebec;border-radius:5px;background:#f7fafa;color:#43575e;cursor:pointer}.user-online-enabled input{margin-top:3px;accent-color:#619fa3}.user-online-enabled span{display:grid;gap:4px}.user-online-enabled strong{font-size:12px}.user-online-enabled small{color:#7c898d;font-size:11px}.user-online-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}.user-online-fields label,.user-online-cancellation label{display:grid;gap:5px;color:#536970;font-size:11px}.user-online-fields input,.user-online-cancellation input[type=number]{height:34px;padding:5px 8px;border:1px solid #cad7da;border-radius:5px;color:#40555c;font:inherit}.user-online-days{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0;color:#536970;font-size:11px}.user-online-days strong{width:100%;color:#405960}.user-online-days label{display:flex;align-items:center;gap:5px}.user-online-days input{accent-color:#619fa3}.user-online-interval-heading{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:9px;background:#f7fafa;color:#405960;font-size:11px}.user-online-interval-heading strong{margin-right:auto}.user-online-interval-heading span{color:#7c898d}.user-online-interval-heading button{min-height:28px;padding:0 8px;border:1px solid #d6e1e2;border-radius:4px;background:#fff;color:#536970;font:inherit;font-size:10px}.user-online-days-list{display:grid;gap:6px;max-height:360px;overflow:auto;margin-top:8px}.user-online-day{border:1px solid #e4ebec;border-radius:5px}.user-online-day-heading{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:#f7fafa;color:#405960;font-size:11px}.user-online-day-heading button,.user-online-add-interval{min-height:27px;padding:0 8px;border:1px solid #d6e1e2;border-radius:4px;background:#fff;color:#536970;font:inherit;font-size:10px}.user-online-interval{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:8px;padding:8px;border-top:1px solid #edf1f2}.user-online-interval label{display:grid;gap:4px;color:#77868a;font-size:10px}.user-online-interval input{height:31px;padding:4px 6px;border:1px solid #cad7da;border-radius:4px;color:#40555c;font:inherit}.user-online-interval>button{min-height:28px;padding:0 7px;border:1px solid #e6d9d7;border-radius:4px;background:#fff;color:#9b514b;font:inherit;font-size:10px}.user-online-add-interval{margin:8px}.user-online-slot-preview{padding:8px;border-top:1px solid #edf1f2;color:#536970;font-size:10px}.user-online-slot-preview>strong{display:block;margin-bottom:6px}.user-online-slots{display:flex;flex-wrap:wrap;gap:4px}.user-online-slots label{display:flex;align-items:center;gap:3px;padding:4px 6px;border:1px solid #e4ebec;border-radius:4px}.user-online-slots input,.user-online-payment input,.user-online-cancellation input[type=checkbox]{accent-color:#619fa3}.user-online-payment,.user-online-cancellation{margin:12px 0;padding:10px;border:1px solid #e4ebec;border-radius:5px}.user-online-payment legend,.user-online-cancellation legend{padding:0 5px;color:#405960;font-size:11px;font-weight:700}.user-online-payment>label,.user-online-cancellation>label{display:flex;align-items:center;gap:7px;padding:7px 0;color:#536970;font-size:11px}.user-online-cancellation label:has(input[type=number]){display:grid;max-width:220px}.user-online-booking .form-note{font-size:10px}
.service-online-toggle{display:flex;align-items:center;gap:8px;margin:12px 0;padding:10px;border:1px solid #e3e9ea;border-radius:5px;background:#f7fafa;color:#50666d;font-size:12px}.service-online-toggle input{accent-color:#619fa3}
.online-availability-preview{margin-top:18px;padding:18px 20px;border:1px solid #e3e9ea;border-radius:7px;background:#fff}.online-availability-preview h2{margin:0 0 6px;font-size:15px;font-weight:500}.online-availability-preview>p{color:#738287;font-size:11px}.online-availability-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.online-availability-filters label{display:grid;gap:5px;color:#536970;font-size:11px}.online-availability-filters input,.online-availability-filters select{height:36px;padding:5px 8px;border:1px solid #cad7da;border-radius:5px;background:#fff;color:#40555c;font:inherit}.online-availability-filters select:disabled{background:#f4f6f6;color:#9aa5a8}.online-availability-slots{display:flex;flex-wrap:wrap;gap:7px}.online-availability-slot{padding:7px 9px;border:1px solid #cfe0dc;border-radius:5px;background:#f3faf7;color:#426e61;font:inherit;font-size:11px;cursor:pointer}.online-availability-slot:hover,.online-availability-slot:focus-visible{border-color:#619fa3;background:#e8f4f1;outline:2px solid #b8d7d2;outline-offset:1px}@media(max-width:850px){.online-availability-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
\n.online-global-policy{margin-top:22px;padding:18px;border:1px solid #e1e8e9;border-radius:7px;background:#fff}.online-global-policy h2{margin:0 0 6px;color:#344d55;font-size:17px;font-weight:500}.online-global-policy>p{margin:0 0 14px;color:#7c898d;font-size:12px}.online-policy-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end}.online-policy-fields>label,.online-policy-terms{display:grid;gap:6px;color:#536970;font-size:12px}.online-policy-fields input[type=number],.online-policy-fields select,.online-policy-terms textarea{width:100%;padding:8px;border:1px solid #cad7da;border-radius:5px;background:#fff;color:#40555c;font:inherit}.online-policy-fields input[type=number],.online-policy-fields select{height:36px}.online-policy-fields select{padding:0 8px}.online-policy-check{display:flex!important;align-items:center;gap:8px;min-height:36px}.online-policy-check input{accent-color:#619fa3}.online-policy-terms{margin-top:13px}.online-policy-terms textarea{resize:vertical}.online-policy-actions{display:flex;align-items:center;gap:12px;margin-top:12px}.online-policy-actions .save{min-height:36px;padding:0 13px;border:0;border-radius:5px;background:#619fa3;color:#fff}.online-policy-actions .form-note{margin:0}
@media(max-width:700px){.online-policy-fields{grid-template-columns:1fr}}

.online-portal-brand{margin-top:22px;padding:18px;border:1px solid #e1e8e9;border-radius:7px;background:#fff}.online-portal-brand h2{margin:0 0 6px;color:#344d55;font-size:17px;font-weight:500}.online-portal-brand>p,.online-portal-brand .form-note{color:#7c898d;font-size:11px;line-height:1.45}.online-portal-brand>p{margin:0 0 14px}.online-portal-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.online-portal-fields>label{display:grid;gap:6px;color:#536970;font-size:12px}.online-portal-fields small{color:#879498;font-size:10px}.online-portal-fields input[type=text],.online-portal-fields input[type=url]{height:36px;padding:0 9px;border:1px solid #cad7da;border-radius:5px;background:#fff;color:#40555c;font:inherit}.online-portal-fields input[type=color]{width:56px;height:36px;padding:3px;border:1px solid #cad7da;border-radius:5px;background:#fff}.online-portal-fields input[type=file]{max-width:100%;color:#536970;font:inherit;font-size:11px}.online-portal-fields input:disabled{background:#f4f7f7;color:#75858a}.online-portal-preview-layout{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr);gap:12px;margin-top:15px}.online-portal-preview,.online-portal-address{min-height:128px;padding:14px;border:1px solid #e3e9ea;border-radius:6px;background:#fbfdfd}.online-portal-preview>small,.online-portal-address>strong{color:#879498;font-size:10px;letter-spacing:.05em}.online-portal-preview-brand{display:flex;align-items:center;gap:10px;min-height:46px;margin-top:9px}.online-portal-preview-brand img{max-width:140px;max-height:42px;object-fit:contain}.online-portal-preview-brand strong{color:#405960;font-size:13px}.online-portal-preview>p{margin:5px 0 8px;color:#536970;font-size:12px}.online-portal-preview>button{min-height:32px;padding:0 14px;border:0;border-radius:4px;color:#fff;font:inherit;font-size:11px}.online-portal-address{display:flex;flex-direction:column;gap:9px}.online-portal-address output{overflow-wrap:anywhere;color:#405960;font-size:13px}.online-portal-address .form-note{margin:0}.online-portal-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:13px}.online-portal-actions button{min-height:36px;padding:0 12px;border:1px solid #d6e1e2;border-radius:5px;background:#fff;color:#536970;font:inherit;font-size:12px}.online-portal-actions button.save{border:0;background:#619fa3;color:#fff}.online-portal-actions .form-note{margin:0}.online-portal-brand form>p:last-child{margin:10px 0 0}
@media(max-width:700px){.online-portal-fields,.online-portal-preview-layout{grid-template-columns:1fr}}
.appointment-copy-status{color:#7b5332;font-size:12px;font-weight:600;white-space:nowrap}.toolbar #cancel-appointment-copy{border-color:#d4b79c;color:#7b5332;background:#fffaf4}
.attendance-certificate-dialog{width:min(720px,94vw);max-height:92vh;overflow:auto;border:0;border-radius:10px;padding:24px;box-shadow:0 16px 48px #102a3340}.attendance-certificate-dialog::backdrop{background:#132a3155}.attendance-certificate-document{max-width:650px;margin:auto;padding:26px;border:1px solid #dce5e6;background:#fff;color:#33484f}.attendance-certificate-document header{text-align:center}.attendance-certificate-document header small{color:#718187;font-size:10px;letter-spacing:.08em}.attendance-certificate-document h2{margin:10px 0;color:#344d55}.attendance-certificate-document header p{color:#697a80;font-size:12px}.attendance-certificate-document hr{border:0;border-top:1px solid #dce5e6;margin:22px 0}.attendance-certificate-document dl{display:grid;grid-template-columns:minmax(130px,190px) 1fr;gap:8px 16px;margin:20px 0}.attendance-certificate-document dt{color:#708087;font-size:12px}.attendance-certificate-document dd{margin:0;color:#33484f;font-weight:600}.attendance-certificate-notice{margin-top:28px;padding:12px;background:#f5f7f7;color:#65767b;font-size:12px}.attendance-certificate-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.attendance-certificate-actions button{min-height:36px;padding:0 13px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fafb;color:#43575e}.attendance-certificate-actions button.save{border:0;background:#619fa3;color:#fff}@media print{body *{visibility:hidden!important}#attendance-certificate-dialog[open],#attendance-certificate-dialog[open] *{visibility:visible!important}#attendance-certificate-dialog[open]{position:fixed!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important}#attendance-certificate-dialog[open]::backdrop{display:none}.attendance-certificate-document{max-width:none;border:0;padding:24mm 20mm}.attendance-certificate-actions{display:none!important}}
.calendar-period-picker{position:relative;z-index:10}.calendar-period-popover{position:absolute;z-index:30;top:calc(100% + 6px);left:50%;width:270px;transform:translateX(-50%);padding:10px;border:1px solid #dce4e6;border-radius:7px;background:#fff;box-shadow:0 8px 24px #20383d2b;color:#40555c}.calendar-period-popover[hidden]{display:none}.calendar-period-picker-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.calendar-period-picker-heading strong{color:#344d55;font-size:13px}.toolbar .calendar-period-picker-heading button{width:30px;height:28px;padding:0;border:0;background:transparent;color:#58767b;font-size:20px}.calendar-period-picker-weekdays,.calendar-period-picker-days [role="row"]{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center}.calendar-period-picker-days{display:grid;grid-template-columns:1fr}.calendar-period-picker-weekdays{margin-bottom:3px;color:#7d8b8f;font-size:10px;font-weight:600}.calendar-period-picker-weekdays span{padding:5px 0}.calendar-period-picker-days [role="gridcell"]{display:grid;place-items:center;height:32px}.toolbar .calendar-period-picker-day{width:28px;height:28px;padding:0;border:1px solid transparent;border-radius:50%;background:transparent;color:#40555c;font-size:11px}.toolbar .calendar-period-picker-day:hover{background:#edf5f5}.toolbar .calendar-period-picker-day.outside-month{color:#a4afb2}.toolbar .calendar-period-picker-day.today{border-color:#69a0a3}.toolbar .calendar-period-picker-day.selected{background:#619fa3;color:#fff;font-weight:700}.toolbar .calendar-period-picker-day:focus-visible{outline:2px solid #315f64;outline-offset:1px}
.relocation-list{display:grid;gap:9px}.relocation-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:13px 15px;border:1px solid #dfe7e9;border-radius:7px;background:#fff}.relocation-card-details{display:grid;gap:4px;min-width:0}.relocation-card-details strong{color:#344e56;font-size:14px}.relocation-card-details span{color:#687b80;font-size:12px}.relocation-status{padding:5px 9px;border-radius:12px;background:#fff2d9;color:#8a6117;font-size:11px;font-weight:700;white-space:nowrap}.relocation-empty{padding:14px;border:1px dashed #cbd8da;border-radius:6px;color:#687b80}@media(max-width:650px){.relocation-card{grid-template-columns:minmax(0,1fr) auto}.relocation-card-details{grid-column:1/-1}}
.waiting-list-entries{display:grid;gap:9px;margin-top:14px}.waiting-list-entry{grid-template-columns:minmax(0,1fr) auto}.waiting-list-state{display:flex;align-items:center;gap:8px;color:#687b80;font-size:12px}.waiting-list-state select{max-width:190px}.waiting-list-entry select{min-width:130px}
#waiting-list-view #new-waiting-list-entry{margin:4px 0 8px;padding:8px 12px;border:0;border-radius:5px;background:#619fa3;color:#fff;font:inherit;font-weight:600;cursor:pointer}#waiting-list-dialog{width:min(880px,95vw)}
.waiting-list-dialog{position:fixed;inset:0 0 0 auto;margin:0;width:min(500px,100vw);height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;padding:0;border:0;border-radius:0;background:#f4f7f8;color:#344d55;box-shadow:-8px 0 24px #18303920;overflow:auto}.waiting-list-dialog::backdrop{background:#162b3155}.waiting-list-heading{display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:0 16px;background:#fff;border-bottom:1px solid #dce5e7}.waiting-list-heading h2{margin:0;font-size:15px;font-weight:600}.waiting-list-heading span{margin-left:7px;color:#75868b;font-size:11px}.waiting-list-heading button{width:32px;height:32px;border:0;background:transparent;color:#73868b;font-size:24px;cursor:pointer}.waiting-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;background:#fff}.waiting-list-toolbar [role=group]{display:flex;gap:5px}.waiting-list-toolbar [role=group] button,.waiting-list-toolbar>#new-waiting-list-entry{min-height:32px;padding:0 11px;border:1px solid #d8e1e3;border-radius:16px;background:#fff;color:#596e74;font:inherit;font-size:11px;cursor:pointer}.waiting-list-toolbar [role=group] button[aria-pressed=true]{border-color:#6da1a5;background:#eaf3f3;color:#315c60;font-weight:700}.waiting-list-toolbar>#new-waiting-list-entry{border:0;border-radius:5px;background:#619fa3;color:#fff;font-size:12px;font-weight:600}.waiting-list-sort-label{margin:0;padding:0 14px 10px;text-align:right;color:#718287;font-size:10px}.waiting-list-status:empty{display:none}.waiting-list-entries{display:grid;gap:8px;padding:0 12px}.waiting-list-entry{grid-template-columns:minmax(0,1fr) auto;padding:12px 10px;background:#fff}.waiting-list-entry .relocation-card-details strong{font-size:13px}.waiting-list-entry .relocation-card-details span{line-height:1.4}.waiting-list-empty{margin:0;padding:14px 12px;border:1px solid #e2e9ea;border-radius:6px;background:#fff;text-align:center;color:#63777d;font-size:12px}.waiting-list-demo-note{margin:14px 12px;color:#879498;font-size:10px}
.waiting-list-form-dialog{width:min(880px,95vw);max-height:90vh;overflow:auto;border:0;border-radius:9px;padding:0;box-shadow:0 16px 48px #102a3340;color:#43575e}.waiting-list-form-dialog::backdrop{background:#132a3155}.waiting-list-form-dialog form>header{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:0 16px;border-bottom:1px solid #e3e9ea;background:#fff}.waiting-list-form-dialog form>header h2{margin:0;font-size:15px}.waiting-list-form-dialog form>header button{border:0;background:transparent;color:#65777c;font-size:23px}.waiting-list-form-content{display:grid;gap:10px;padding:12px;background:#fff}.waiting-list-form-content>section{display:grid;grid-template-columns:125px repeat(3,minmax(0,1fr));align-items:center;gap:8px;padding:10px 12px;border-radius:6px;background:#f4f8f8}.waiting-list-form-content>section h3{grid-row:span 2;margin:0;color:#445b61;font-size:12px}.waiting-list-form-content>section:nth-child(3),.waiting-list-form-content>section:nth-child(4){grid-template-columns:125px repeat(2,minmax(0,1fr))}.waiting-list-form-content label{display:grid;gap:4px;color:#617379;font-size:10px}.waiting-list-form-content input,.waiting-list-form-content select,.waiting-list-form-content textarea{width:100%;min-height:34px;padding:6px 9px;border:1px solid #d4dfe1;border-radius:5px;background:#fff;color:#41575d;font:inherit;font-size:12px}.waiting-list-form-content textarea{resize:vertical}.waiting-list-form-content #waiting-list-person-search{grid-column:2}.waiting-list-person-results{grid-column:2/-1;display:grid;max-height:140px;overflow:auto;border:1px solid #dce5e7;border-radius:5px;background:#fff}.waiting-list-person-results[hidden]{display:none}.waiting-list-person-results button{padding:8px 10px;border:0;border-bottom:1px solid #edf1f2;background:#fff;text-align:left;color:#41575d;font:inherit;font-size:12px;cursor:pointer}.waiting-list-person-results button:hover{background:#edf5f5}.waiting-list-person-results p{margin:0;padding:8px;color:#718187;font-size:11px}.waiting-list-inline-fields{grid-column:2/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.waiting-list-form-notice{margin:0;padding:4px 2px;color:#6f8589;font-size:10px}.waiting-list-form-dialog form>footer{display:flex;justify-content:flex-end;gap:8px;padding:0 14px 14px}.waiting-list-form-dialog form>footer button{min-height:34px;padding:0 13px;border:1px solid #d6e1e2;border-radius:5px;background:#fff;color:#43575e}.waiting-list-form-dialog form>footer button.save{border:0;background:#619fa3;color:#fff}.waiting-list-form-dialog form>footer button:disabled{opacity:.55;cursor:not-allowed}@media(max-width:650px){.waiting-list-dialog{width:100vw}.waiting-list-toolbar{align-items:flex-start;flex-direction:column}.waiting-list-form-content>section,.waiting-list-form-content>section:nth-child(3),.waiting-list-form-content>section:nth-child(4){grid-template-columns:1fr}.waiting-list-form-content>section h3{grid-row:auto}.waiting-list-form-content #waiting-list-person-search,.waiting-list-person-results,.waiting-list-inline-fields{grid-column:1}}
.waiting-room-entries{display:grid;gap:9px}.waiting-room-entry{grid-template-columns:minmax(0,1fr) auto}.waiting-room-actions{display:flex;align-items:center;gap:10px}.waiting-room-actions select{min-width:140px;padding:7px;border:1px solid #d6e0e2;border-radius:5px;background:#fff;color:#40555c;font:inherit}
.waiting-room-dialog{position:fixed;inset:0 0 0 auto;margin:0;width:min(500px,100vw);height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;padding:0;border:0;border-radius:0;background:#f4f7f8;color:#344d55;box-shadow:-8px 0 24px #18303920;overflow:auto}.waiting-room-dialog::backdrop{background:#162b3155}.waiting-room-heading{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:0 16px;background:#fff;border-bottom:1px solid #dce5e7}.waiting-room-heading h2{margin:0;font-size:15px;font-weight:600}.waiting-room-heading button{width:32px;height:32px;border:0;background:transparent;color:#73868b;font-size:24px;cursor:pointer}.waiting-room-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 124px;gap:6px;padding:12px;background:#fff}.waiting-room-toolbar input,.waiting-room-toolbar select{width:100%;height:34px;padding:0 10px;border:1px solid #d4dfe1;border-radius:5px;background:#fff;color:#41575d;font:inherit;font-size:12px}.waiting-room-entries{padding:0 12px}.waiting-room-entry{grid-template-columns:minmax(0,1fr) auto;padding:12px 10px;background:#fff}.waiting-room-empty{margin:0;padding:2px 12px;color:#657a80;font-size:13px}.waiting-room-status:empty{display:none}.waiting-room-demo-note{margin:16px 12px;color:#829196;font-size:10px}@media(max-width:520px){.waiting-room-dialog{width:100vw}.waiting-room-toolbar{grid-template-columns:minmax(0,1fr) 112px}}
.available-calendar-dialog{width:min(720px,94vw);max-height:88vh;overflow:auto;border:0;border-radius:10px;padding:20px;box-shadow:0 16px 48px #102a3340}.available-calendar-dialog::backdrop{background:#132a3155}.available-calendar-dialog .slot-dialog-head{position:sticky;top:-20px;z-index:1;margin:-20px -20px 8px;padding:20px;background:#fff;border-bottom:1px solid #edf1f2}.available-calendar-dialog .form-note{color:#718187;font-size:12px}.available-calendar-slots{display:grid;gap:6px;max-height:min(58vh,580px);overflow:auto}.available-calendar-slot{display:grid;grid-template-columns:minmax(190px,1fr) minmax(140px,.8fr) auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid #e2e9ea;border-radius:6px;background:#fff;color:#43575e;font-size:12px}.available-calendar-slot strong{font-size:12px}.available-calendar-slot .text-action{padding:7px 10px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fbfb;color:#43888d;font:inherit;cursor:pointer}.available-calendar-dialog .product-form-actions{display:flex;justify-content:flex-end;margin-top:14px}@media(max-width:600px){.available-calendar-slot{grid-template-columns:1fr auto;gap:5px}.available-calendar-slot>span{grid-column:1}.available-calendar-slot .text-action{grid-column:2;grid-row:1/3}}
.people-print-area{display:none}
@media print{@page{margin:14mm}body.printing-people-list *{visibility:hidden!important}body.printing-people-list #people-print-area{display:block!important;visibility:visible!important;position:fixed!important;inset:0!important;z-index:99999!important;overflow:visible!important;background:#fff!important;color:#24343a!important;padding:0!important}body.printing-people-list #people-print-area *{visibility:visible!important}.people-print-area h1{margin:0 0 5px;font-size:18pt;color:#24343a}.people-print-generated{margin:0 0 14px;color:#64767b;font-size:9pt}.people-print-table{width:100%;border-collapse:collapse;font-size:9pt}.people-print-table th,.people-print-table td{padding:7px 6px;border:1px solid #cbd5d8;text-align:left;vertical-align:top}.people-print-table th{background:#eef3f3!important;color:#3e555c!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.people-print-table tbody tr:nth-child(even){background:#f8fafa!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}
@media print{body.printing-person-summary *{visibility:hidden!important}body.printing-person-summary #person-profile-print-area{display:block!important;visibility:visible!important;position:fixed!important;inset:0!important;z-index:99999!important;overflow:visible!important;background:#fff!important;color:#24343a!important;padding:0!important}body.printing-person-summary #person-profile-print-area *{visibility:visible!important}body.printing-person-summary #person-profile-print-area h1{margin:0 0 5px;font-size:18pt;color:#24343a}body.printing-person-summary #person-profile-print-area h2{margin:16px 0 8px;font-size:13pt;color:#405a62}}
.person-merge-dialog{width:min(640px,94vw);max-height:90vh;overflow:auto;border:0;border-radius:10px;padding:22px;box-shadow:0 16px 48px #102a3340;color:#43575e}.person-merge-dialog::backdrop{background:#132a3155}.person-merge-dialog .dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.person-merge-dialog .dialog-head small{color:#71858a;font-size:10px;letter-spacing:.08em}.person-merge-dialog .dialog-head h2{margin:4px 0 12px;color:#344d55}.person-merge-dialog .dialog-head>button{border:0;background:none;color:#52676c;font-size:24px}.person-merge-dialog form>p{color:#718187;font-size:12px;line-height:1.5}.person-merge-dialog form>label{display:grid;gap:6px;margin:12px 0;color:#536970;font-size:12px}.person-merge-dialog select{min-height:38px;padding:6px 9px;border:1px solid #cad7da;border-radius:5px;background:#fff;color:#40555c;font:inherit}.person-merge-preview{margin:14px 0;padding:12px;border:1px solid #e1e8e9;border-radius:6px;background:#f8fbfb;font-size:12px}.person-merge-preview p{margin:0 0 8px}.person-merge-preview p:last-child{margin-bottom:0}.person-merge-dialog .product-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.person-merge-dialog .product-form-actions button,.person-merge-dialog #undo-person-merge{min-height:36px;padding:0 12px;border:1px solid #d6e1e2;border-radius:5px;background:#fff;color:#43575e}.person-merge-dialog .product-form-actions .save{border:0;background:#619fa3;color:#fff}.person-merge-dialog button:disabled{opacity:.55;cursor:not-allowed}@media(max-width:600px){.person-merge-dialog{padding:16px}.person-merge-dialog .product-form-actions{justify-content:stretch}.person-merge-dialog .product-form-actions button{flex:1}}

.person-merge-steps{display:flex;align-items:center;justify-content:center;gap:0;margin:8px 0 22px;padding:0;list-style:none;color:#8a989c;font-size:12px}.person-merge-steps li{display:flex;align-items:center;gap:7px}.person-merge-steps li+li::before{content:"";width:38px;height:1px;margin:0 12px;background:#d9e2e3}.person-merge-steps li>span{display:grid;width:26px;height:26px;place-items:center;border-radius:50%;background:#eef2f2;color:#718187;font-weight:700}.person-merge-steps li[aria-current=step]{color:#405960;font-weight:700}.person-merge-steps li[aria-current=step]>span,.person-merge-steps li.is-complete>span{background:#619fa3;color:#fff}.person-merge-keep-choice{display:grid;gap:9px;margin:16px 0}.person-merge-keep-option{display:flex;align-items:center;gap:10px;padding:13px;border:1px solid #dfe7e8;border-radius:6px;background:#fff;color:#43575e;cursor:pointer}.person-merge-keep-option:has(input:checked){border-color:#619fa3;background:#f3f9f8}.person-merge-keep-option input{accent-color:#619fa3}.person-merge-panel[hidden]{display:none}
.appointment-professional-picker{min-width:0;margin:12px 0;padding:12px;border:1px solid #dfe7e9;border-radius:6px;background:#fff}.appointment-professional-picker legend{padding:0 5px;color:#536970;font-size:12px;font-weight:700}.appointment-additional-professionals-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:7px}.appointment-professional-choice{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border:1px solid #e1e8e9;border-radius:5px;background:#fbfcfc;color:#43575e;font-size:12px;cursor:pointer}.appointment-professional-choice input{margin:1px 0 0;accent-color:#619fa3}.appointment-professional-choice small{display:block;margin-top:3px;color:#8a6a38;font-size:10px}.appointment-professional-empty{padding:8px;color:#718187;font-size:12px}
.activity-view-tabs,.activity-range{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:10px 8px;color:#5b7075;font-size:12px}.activity-view-tabs button,.activity-range button{min-height:32px;padding:0 11px;border:1px solid #d9e2e3;border-radius:5px;background:#fff;color:#43575e;font:inherit;cursor:pointer}.activity-view-tabs button[aria-pressed="true"],.activity-range button:hover{border-color:#79aeb0;background:#edf6f5;color:#315b60;font-weight:700}.activity-range>span{margin-right:6px;font-weight:700}.activity-toolbar .activity-failed-filter{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:7px;min-width:auto;flex:0 0 auto;padding:0 8px}.activity-toolbar .activity-failed-filter input{width:16px;height:16px;accent-color:#619fa3}.activity-table{min-width:1120px}.activity-table td:nth-child(6){min-width:250px;max-width:390px;white-space:normal}.activity-timeline{display:grid;gap:8px;margin:14px 8px}.activity-event{display:grid;grid-template-columns:160px minmax(160px,.8fr) minmax(130px,.5fr) minmax(220px,1.4fr) auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid #e1e8e9;border-radius:6px;background:#fff;color:#43575e;font-size:12px}.activity-event time,.activity-event small{color:#718187}.activity-event strong{color:#344d55}.activity-event p{margin:0}.activity-load-more{display:flex;justify-content:space-between;align-items:center;margin:8px 8px 14px;color:#77878b;font-size:12px}.activity-load-more button{min-height:34px;padding:0 12px;border:1px solid #d9e2e3;border-radius:5px;background:#fff;color:#43575e}.activity-load-more button[hidden]{display:none}
@media(max-width:850px){.activity-event{grid-template-columns:1fr 1fr}.activity-event p{grid-column:1/-1}.activity-event small{grid-column:1/-1}}
@media print{@page{margin:14mm}body.printing-activity .top,body.printing-activity .banner,body.printing-activity .rail,body.printing-activity .users-tabs,body.printing-activity #users-view>section:not(#activity-panel){display:none!important}body.printing-activity .workspace,body.printing-activity .workspace main,body.printing-activity #users-view,body.printing-activity #activity-panel{position:static!important;display:block!important;inset:auto!important;overflow:visible!important;width:auto!important;height:auto!important;padding:0!important;background:#fff!important;color:#24343a!important}body.printing-activity #activity-panel>*:not(.activity-page-heading):not(.users-heading):not(.activity-table-wrap):not(.activity-timeline){display:none!important}body.printing-activity .activity-table-wrap{display:block!important;overflow:visible!important;margin:0!important;border:0!important}body.printing-activity .activity-table{min-width:0!important;table-layout:fixed;font-size:8pt!important}body.printing-activity .activity-table th,body.printing-activity .activity-table td{padding:5px 4px;font-size:8pt!important;overflow-wrap:anywhere}body.printing-activity .activity-table th{background:#eef3f3!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.activity-view-tabs,.activity-range,.activity-toolbar,.activity-load-more,#activity-status{display:none!important}}
.notification-log-notice{margin:4px 8px 12px;padding:10px 12px;border:1px solid #dbe8e8;border-radius:5px;background:#f5f9f9;color:#62777d;font-size:12px;line-height:1.45}.notification-log-toolbar{display:flex;align-items:end;gap:9px;flex-wrap:wrap;padding:10px 8px;border-block:1px solid #e6ebec}.notification-log-toolbar label{display:grid;gap:5px;min-width:150px;flex:1;color:#586d72;font-size:12px}.notification-log-toolbar input:not([type=checkbox]),.notification-log-toolbar select{height:35px;padding:0 9px;border:1px solid #d6e0e2;border-radius:5px;background:#fff;color:#43575e;font:inherit}.notification-log-toolbar .notification-failed-filter{display:flex;align-items:center;gap:7px;min-width:auto;flex:0 0 auto;padding:0 8px}.notification-failed-filter input{width:16px;height:16px;accent-color:#619fa3}.notification-log-summary{display:flex;justify-content:flex-end;margin:10px 8px;color:#77878b;font-size:12px}.notification-log-table{min-width:850px}.notification-log-table td:nth-child(4){min-width:220px}.notification-log-table-wrap[hidden]{display:none}
@media print{@page{margin:14mm}body.printing-notifications .top,body.printing-notifications .banner,body.printing-notifications .rail,body.printing-notifications .users-tabs,body.printing-notifications #users-view>section:not(#notifications-panel){display:none!important}body.printing-notifications .workspace,body.printing-notifications .workspace main,body.printing-notifications #users-view,body.printing-notifications #notifications-panel{position:static!important;display:block!important;inset:auto!important;overflow:visible!important;width:auto!important;height:auto!important;padding:0!important;background:#fff!important;color:#24343a!important}body.printing-notifications #notifications-panel>*:not(.users-heading):not(.notification-log-notice):not(.notification-log-summary):not(.notification-log-table-wrap):not(#notification-log-empty){display:none!important}body.printing-notifications .notification-log-table-wrap{display:block!important;overflow:visible!important;margin:0!important;border:0!important}body.printing-notifications .notification-log-table{min-width:0!important;table-layout:fixed;font-size:8pt!important}body.printing-notifications .notification-log-table th,body.printing-notifications .notification-log-table td{padding:5px 4px;font-size:8pt!important;overflow-wrap:anywhere}body.printing-notifications .notification-log-table th{background:#eef3f3!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}
.external-appointments-dialog{position:fixed;inset:35px 0 0 auto;box-sizing:border-box;width:min(500px,100vw);height:calc(100vh - 35px);max-height:none;margin:0;padding:0;overflow:auto;border:0;border-radius:8px 0 0 8px;background:#fff;color:#212529;box-shadow:-6px 0 24px #102a3326}.external-appointments-dialog::backdrop{background:#132a3155}.external-appointments-heading{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;height:48px;min-height:48px;padding:0 13px;background:#fff;border-bottom:1px solid #dce5e7}.external-appointments-heading h2{margin:0;color:#212529;font-size:16px;font-weight:600}.external-appointments-heading button{display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;background:transparent;color:#73868b;font-size:22px;cursor:pointer}.external-appointments-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:13px 13px 0;padding:8px;border:1px solid #e3e9ea;border-radius:10px;background:#f5f8f9}.external-appointments-tabs button{position:relative;display:flex;align-items:center;gap:10px;min-width:0;height:60px;padding:0 12px;border:1px solid #e1e6e8;border-radius:14px;background:#fff;color:#27343a;text-align:left;font:inherit;cursor:pointer}.external-appointments-tabs button.active{border:2px solid #52b6b9;background:#e5f3f3}.external-appointments-tabs button[data-external-kind="Domicilio"].active{border-color:#ff780e;background:#fff0e4}.external-appointment-icon{display:grid;flex:0 0 36px;place-items:center;width:36px;height:36px}.external-appointment-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.external-appointment-icon-video{color:#38a9ae}.external-appointment-icon-home{border-radius:10px;background:#fff0e4;color:#ff780e}.external-appointment-copy{display:grid;gap:3px;min-width:0}.external-appointment-copy strong{font-size:14px;line-height:17px;font-weight:700}.external-appointment-copy>span{color:#687b80;font-size:12px;line-height:15px}.external-appointments-dialog .relocation-list{max-height:calc(100% - 200px);overflow:auto;margin:14px 13px 0;padding:0}.external-appointments-empty{display:grid;place-items:center;box-sizing:border-box;min-height:46px;margin:0;padding:0 12px;border:1px dashed #d5e0e1;border-radius:9px;background:#f6f9fa;color:#75868b;font-size:12px;text-align:center}.external-appointments-dialog .relocation-card{margin-bottom:8px}.external-appointments-demo-note{display:none}@media(max-width:560px){.external-appointments-dialog{inset-block-start:35px;width:100vw;border-radius:0}.external-appointments-tabs{margin-inline:10px;gap:6px}.external-appointments-tabs button{gap:10px;padding-inline:8px}.external-appointment-copy strong{font-size:12px}}
.external-appointments-dialog .text-action{padding:7px 10px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fbfb;color:#43888d;font:inherit;font-size:11px;cursor:pointer}
.appointment-row-actions{position:relative;display:inline-block;margin-left:3px;vertical-align:middle}.appointment-row-actions-toggle{display:grid;place-items:center;width:28px;height:28px;border:1px solid #d9e2e3;border-radius:4px;background:#fff;color:#526970;cursor:pointer;font-weight:700}.appointment-row-actions-toggle::after{content:"⋮";font-size:17px;line-height:1}.appointment-row-actions-toggle:focus-visible,.appointment-row-actions-menu button:focus-visible{outline:2px solid #619fa3;outline-offset:1px}.appointment-row-actions-menu{position:absolute;top:calc(100% + 3px);left:0;z-index:20;display:grid;min-width:204px;padding:4px 0;border:1px solid #dce4e6;border-radius:6px;background:#fff;box-shadow:0 8px 24px #263b441f}.appointment-row-actions-menu[hidden]{display:none}.appointment-row-actions-menu button{width:100%;height:30px;min-height:30px;padding:5px 9px;border:0;border-radius:3px;background:transparent;color:#344a52;text-align:left;font:inherit;white-space:nowrap;cursor:pointer}.appointment-row-actions-menu button:hover:not(:disabled){background:#f1f6f6}.appointment-row-actions-menu button:disabled{color:#99a5a8;cursor:not-allowed}
.appointment-trace-list{display:grid;gap:9px;margin:12px 0}.appointment-trace-entry{padding:12px 14px;border:1px solid #dfe8e9;border-radius:6px;background:#fff;color:#43575e}.appointment-trace-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}.appointment-trace-heading strong{color:#344d55}.appointment-trace-heading time,.appointment-trace-entry>span{color:#718187;font-size:12px}.appointment-trace-entry p{margin:8px 0 0;font-size:13px}.appointment-trace-empty{padding:16px;border:1px dashed #d3dfe1;border-radius:6px;color:#61747a}.appointment-trace-empty p{margin:6px 0 0;font-size:13px}@media(max-width:560px){.appointment-trace-heading{align-items:flex-start;flex-direction:column;gap:4px}}
.available-calendar-filters{display:grid;grid-template-columns:minmax(160px,1.2fr) minmax(130px,1fr) minmax(100px,.6fr);gap:10px;margin:12px 0}.available-calendar-filters label{display:grid;gap:5px;color:#536970;font-size:12px}.available-calendar-filters input,.available-calendar-filters select{height:36px;min-width:0;padding:0 9px;border:1px solid #d6e0e2;border-radius:5px;background:#fff;color:#43575e;font:inherit}.available-calendar-filters input[type=number]{width:100%}@media(max-width:560px){.available-calendar-filters{grid-template-columns:1fr 1fr}.available-calendar-filters label:first-child{grid-column:1/-1}}

.user-schedule-seasons{margin-top:12px;padding-top:10px;border-top:1px solid #e7eded}.user-season-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#405960;font-size:12px}.user-season-heading button,.user-season-row button{min-height:28px;padding:0 8px;border:1px solid #d6e1e2;border-radius:4px;background:#fff;color:#536970;font:inherit;font-size:10px;cursor:pointer}.user-weekly-seasons-list{display:grid;gap:6px;margin-top:8px}.user-season-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px;border:1px solid #e4ebec;border-radius:5px;background:#fff}.user-season-row>div:first-child{display:grid;gap:3px}.user-season-row strong{color:#405960;font-size:11px}.user-season-row small{color:#748388;font-size:10px}.user-season-row>div:last-child{display:flex;gap:5px}.user-season-row button:last-child{border-color:#eadfdd;color:#99544e}.user-season-editor{margin-top:10px;padding:10px;border:1px solid #cbdedd;border-radius:5px;background:#fbfdfd}.user-season-editor h4{margin:0 0 8px;color:#405960;font-size:12px}.user-season-fields{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:8px}.user-season-fields label{display:grid;gap:4px;color:#68797e;font-size:10px}.user-season-fields input{height:32px;padding:4px 6px;border:1px solid #cad7da;border-radius:4px;background:#fff;color:#40555c;font:inherit}.user-season-editor .product-form-actions{margin-top:8px}@media(max-width:620px){.user-season-fields{grid-template-columns:1fr}.user-season-row{align-items:flex-start;flex-direction:column}.user-season-row>div:last-child{width:100%}}
.statistics-kpis.statistics-appointment-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}
.statistics-professional-month-chart,.statistics-incidents-month-chart{display:grid;grid-template-columns:repeat(12,minmax(32px,1fr));align-items:end;gap:8px;overflow-x:auto;padding:12px 4px 0;border-bottom:1px solid #d6dfe2;background:repeating-linear-gradient(to bottom,transparent 0,transparent 35px,#e9edef 36px)}
.statistics-professional-month{display:flex;min-width:32px;height:190px;flex-direction:column;justify-content:end;align-items:center;gap:7px;color:#728087;font-size:11px}
.statistics-professional-stack{display:flex;width:100%;height:150px;flex-direction:column-reverse;align-items:stretch;justify-content:flex-start;overflow:hidden;border-radius:4px 4px 0 0}
.statistics-professional-segment{display:block;flex:0 0 auto;width:100%;min-height:2px}
.statistics-professional-legend{max-height:120px;overflow:auto}
.statistics-monthly-appointment-table .statistics-table-scroll,.statistics-table-scroll{overflow:auto}
.statistics-monthly-appointment-table table{min-width:980px}
.statistics-monthly-appointment-table th:first-child,.statistics-monthly-appointment-table td:first-child{position:sticky;left:0;background:#fff;text-align:left}
.statistics-monthly-appointment-table thead th{position:sticky;top:0;background:#f4f7f8;z-index:1}
.statistics-monthly-appointment-table thead th:first-child{z-index:2}
.statistics-monthly-appointment-table tbody tr:last-child{font-weight:700;background:#f4f7f8}
.statistics-monthly-appointment-table tbody tr:last-child th:first-child{background:#f4f7f8}
.statistics-monthly-appointment-table td,.statistics-monthly-appointment-table th{min-width:52px;padding:9px 7px;text-align:center;white-space:nowrap}
.statistics-monthly-appointment-table td:nth-last-child(-n+2){font-weight:600}
.statistics-monthly-appointment-table .form-note{margin:12px 0 0}
.statistics-incidents-month-chart{min-height:150px}
.statistics-incident-month{display:flex;min-width:32px;height:145px;flex-direction:column;justify-content:end;align-items:center;gap:7px;color:#728087;font-size:11px}
.statistics-incident-month-bars{display:flex;width:100%;height:112px;align-items:end;justify-content:center;gap:3px}
.statistics-incident-bar{display:block;width:min(11px,28%);min-height:2px;border-radius:3px 3px 0 0}
.statistics-incident-bar.absence,.statistics-professional-incident-bar.absence,.statistics-legend-key i.absence{background:#20a59a}
.statistics-incident-bar.annulled,.statistics-professional-incident-bar.annulled,.statistics-legend-key i.annulled{background:#ef9b35}
.statistics-incident-bar.canceled,.statistics-professional-incident-bar.canceled,.statistics-legend-key i.canceled{background:#d85c70}
.statistics-professional-incidents,.statistics-professional-rates{display:grid;gap:10px}
.statistics-professional-incident-row,.statistics-professional-rate-row{display:grid;grid-template-columns:minmax(110px,190px) minmax(100px,1fr) 54px;align-items:center;gap:10px;min-height:28px}
.statistics-professional-incident-row>span,.statistics-professional-rate-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#52656d}
.statistics-professional-incident-bars{display:flex;height:18px;align-items:center;overflow:hidden;border-radius:4px;background:#f1f4f5}
.statistics-professional-incident-bar{display:block;height:100%;min-width:2px}
.statistics-professional-incident-row>strong,.statistics-professional-rate-row>strong{text-align:right;color:#43575e;font-size:12px}
.statistics-professional-rate-track{height:12px;overflow:hidden;border-radius:8px;background:#edf1f2}
.statistics-professional-rate-track i{display:block;height:100%;min-width:2px;border-radius:8px;background:#d85c70}
@media(max-width:900px){.statistics-kpis.statistics-appointment-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.statistics-professional-month-chart,.statistics-incidents-month-chart{grid-template-columns:repeat(12,minmax(34px,1fr));gap:5px}.statistics-professional-incident-row,.statistics-professional-rate-row{grid-template-columns:minmax(85px,120px) minmax(70px,1fr) 46px;gap:7px}.statistics-monthly-appointment-table table{min-width:900px}}
@media(max-width:600px){.statistics-kpis.statistics-appointment-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:380px){.statistics-kpis.statistics-appointment-kpis{grid-template-columns:1fr}}
.calendar-center-filter{margin:0}.toolbar .calendar-center-filter select{height:34px;min-width:130px;max-width:190px;border:1px solid #dfe6e8;border-radius:6px;background:#f8fafb;color:#40535c;padding:0 8px}

@media(max-width:1100px){main{display:flex;flex-direction:column}.toolbar{height:auto;min-height:46px;flex:0 0 auto;flex-wrap:wrap;justify-content:space-between;overflow:visible;row-gap:4px}.tools-right{display:flex;flex:0 0 100%;justify-content:flex-end;flex-wrap:wrap}.tools-right button{display:block}.agenda-area{height:auto;flex:1;min-height:0}}
.product-medicine-search{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0}.product-medicine-search .form-note{margin:0}.product-medicine-search button{min-height:34px;padding:0 12px;border:1px solid #d8e1e3;border-radius:5px;background:#f8fafb;color:#718187}.product-medicine-flags{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 12px;margin:8px 0;padding:8px 12px;border:1px solid #e1e8e9;border-radius:5px}.product-medicine-flags legend{padding:0 5px;color:#607a80;font-size:12px;font-weight:bold}.product-medicine-flags label.product-check{margin:5px 0}@media(max-width:650px){.product-medicine-flags{grid-template-columns:1fr}.product-medicine-search{align-items:flex-start;flex-direction:column}}
.supplier-section{margin:12px 0;padding:10px 12px;border:1px solid #e0e8e9;border-radius:6px}.supplier-section>legend,.supplier-days>legend{padding:0 5px;color:#607a80;font-size:12px;font-weight:bold}.supplier-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.supplier-fields label{min-width:0}.supplier-fields input,.supplier-fields select,.supplier-fields textarea{width:100%;min-width:0}.supplier-fields textarea{border:1px solid #cbd9dc;border-radius:4px;background:#fff;padding:8px;color:#43575e;font:inherit}.supplier-fields .supplier-wide{grid-column:1/-1}.inventory-dialog label.supplier-check{display:flex;align-items:center;gap:8px}.supplier-check input{min-height:0}.supplier-days{display:flex;grid-column:1/-1;flex-wrap:wrap;gap:4px 12px;margin:6px 0 12px;padding:8px 10px;border:1px solid #e0e8e9;border-radius:5px}.inventory-dialog .supplier-days label{display:flex;align-items:center;gap:5px;margin:3px 0}.supplier-days input{min-height:0}@media(max-width:640px){.supplier-fields{grid-template-columns:1fr}.supplier-fields .supplier-wide,.supplier-days{grid-column:auto}}
.cash-statistics-shell{display:grid;gap:12px;margin-top:14px}
.cash-statistics-controls{display:flex;align-items:end;flex-wrap:wrap;gap:8px;padding:10px 12px;border-radius:6px;background:#fff;box-shadow:0 3px 10px #25343b0d}
.cash-statistics-controls>button{min-height:36px;padding:0 13px;border:1px solid #d7dfe3;border-radius:5px;background:#fff;color:#53656c;font:inherit;cursor:pointer}
.cash-statistics-controls>button.selected{border-color:#7aaeb0;background:#edf7f7;color:#3e7f82}
.cash-statistics-date{display:grid;gap:4px;min-width:145px;margin-left:4px;color:#62757a;font-size:12px}
.cash-statistics-date input{min-height:36px;width:100%;padding:0 8px;border:1px solid #d7dfe3;border-radius:5px;background:#fff;color:#53656c;font:inherit}
.cash-statistics-empty{display:grid;justify-items:center;align-content:center;gap:8px;min-height:190px;padding:28px 20px;border-radius:5px;background:#fff;box-shadow:0 3px 10px #25343b12;color:#52666d;text-align:center}
.cash-statistics-empty[hidden]{display:none}
.cash-statistics-empty strong{font-size:15px;font-weight:600}
.cash-statistics-empty p{max-width:620px;margin:0;color:#718087;line-height:1.55}
.cash-statistics-note{margin:0 4px;color:#78878b;font-size:12px;line-height:1.5}
.appointment-list-payment-status{display:block;margin-top:4px;color:#718187;font-size:11px}.appointment-list-payment-status.is-paid{color:#267857}.appointment-list-payment-status.is-partial{color:#9a6a13}
.appointment-payment-dialog{width:min(720px,calc(100vw - 28px));max-height:calc(100vh - 32px);overflow:auto;padding:22px;border:1px solid #dce5e7;border-radius:10px;box-shadow:0 16px 48px #102a3340;color:#43575e}.appointment-payment-dialog::backdrop{background:#132a3155}.appointment-payment-dialog .dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.appointment-payment-dialog .dialog-head h2{margin:4px 0 14px;color:#344d55}.appointment-payment-dialog .dialog-head>button{border:0;background:none;color:#52676c;font-size:24px}.appointment-payment-dialog h3{margin:16px 0 8px;color:#405860;font-size:13px}.appointment-payment-summary>p{margin:0 0 12px}.appointment-payment-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.appointment-payment-totals>div,.cash-statistics-summary article{display:grid;gap:6px;padding:12px;border:1px solid #e3eaeb;border-radius:6px;background:#f8fbfb}.appointment-payment-totals span,.cash-statistics-summary small{color:#718187;font-size:10px;letter-spacing:.04em}.appointment-payment-totals strong,.cash-statistics-summary strong{color:#334c54;font-size:18px}.appointment-payment-dialog progress{width:100%;height:9px;margin:12px 0;accent-color:#619fa3}.appointment-payment-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.appointment-payment-fields label{display:grid;gap:5px;color:#536970;font-size:12px}.appointment-payment-fields input,.appointment-payment-fields select{min-height:38px;padding:6px 9px;border:1px solid #cad7da;border-radius:5px;background:#fff;color:#40555c;font:inherit}.appointment-payment-dialog form>button,.appointment-payment-dialog>button{min-height:36px;margin-top:10px;padding:0 13px;border:1px solid #d6e1e2;border-radius:5px;background:#fff;color:#43575e}.appointment-payment-dialog form>button.save{border:0;background:#619fa3;color:#fff}.appointment-payment-dialog button:disabled{opacity:.5;cursor:not-allowed}.appointment-payment-history{margin-top:18px}.appointment-payment-history-row{display:grid;grid-template-columns:1fr 1fr 1.4fr 1fr;gap:8px;padding:9px 10px;border-top:1px solid #e6ecee;color:#536970;font-size:12px}.appointment-payment-history-row span:last-child{text-align:right;font-weight:700}.appointment-payment-history-row:first-child{border-top:0}.appointment-payment-history-row:nth-child(even){background:#f8fbfb}.cash-statistics-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.cash-statistics-methods{display:flex;flex-wrap:wrap;gap:8px}.cash-statistics-methods span{padding:7px 10px;border-radius:15px;background:#edf5f5;color:#48646a;font-size:12px}.cash-statistics-table-wrap{overflow:auto;border-radius:6px;background:#fff;box-shadow:0 3px 10px #25343b12}.cash-statistics-table{min-width:720px}
@media(max-width:640px){.cash-statistics-controls{align-items:stretch}.cash-statistics-controls>button{flex:1 1 calc(50% - 8px)}.cash-statistics-date{flex:1 1 calc(50% - 8px);min-width:120px;margin-left:0}}
@media(max-width:600px){.appointment-payment-dialog{padding:16px}.appointment-payment-totals,.cash-statistics-summary{grid-template-columns:1fr}.appointment-payment-fields{grid-template-columns:1fr}.appointment-payment-history-row{grid-template-columns:1fr 1fr}.appointment-payment-history-row span:nth-child(3){grid-column:1}.appointment-payment-history-row span:last-child{text-align:left}}
.expense-statistics-kpis article small,.expense-statistics-kpis article strong,.expense-statistics-kpis article span{display:block}.expense-statistics-kpis article strong{margin-top:4px}.expense-statistics-kpis article span{margin-top:6px;color:#74848a;font-size:11px;line-height:1.4}
.member-statistics-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.member-statistics-kpis article small,.member-statistics-kpis article strong,.member-statistics-kpis article span{display:block}.member-statistics-kpis article strong{margin-top:4px}.member-statistics-kpis article span{margin-top:6px;color:#74848a;font-size:11px;line-height:1.4}.member-statistics-note{line-height:1.5}@media(max-width:900px){.member-statistics-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.member-statistics-kpis{grid-template-columns:1fr 1fr}}
.entity-statistics-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.entity-statistics-kpis article small,.entity-statistics-kpis article strong,.entity-statistics-kpis article span{display:block}.entity-statistics-kpis article strong{margin-top:4px}.entity-statistics-kpis article span{margin-top:6px;color:#74848a;font-size:11px;line-height:1.4}.entity-statistics-note{line-height:1.5}@media(max-width:900px){.entity-statistics-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
.tag-statistics-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.tag-statistics-kpis article small,.tag-statistics-kpis article strong,.tag-statistics-kpis article span{display:block}.tag-statistics-kpis article strong{margin-top:4px}.tag-statistics-kpis article span{margin-top:6px;color:#74848a;font-size:11px;line-height:1.4}.tag-statistics-note{line-height:1.5}@media(max-width:900px){.tag-statistics-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:500px){.invoice-appointment-filters{grid-template-columns:1fr}}
.cash-register-view{max-width:1500px;margin:0 auto;padding-bottom:28px}.cash-register-tabs{display:flex;gap:8px;padding:12px 0;border-bottom:1px solid #dce4e5}.cash-register-tabs button{padding:9px 15px;border:0;border-radius:5px;background:#edf2f3;color:#52666d}.cash-register-tabs button.active{background:#477f82;color:#fff}.cash-register-status{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0;padding:18px;border:1px solid #d9e2e4;border-radius:8px;background:#fff}.cash-register-status>.cash-register-state-info{display:grid;gap:5px}.cash-register-status small{color:#718187;font-size:11px;font-weight:700;letter-spacing:.06em}.cash-register-status strong{font-size:20px;color:#344d55}.cash-register-status span{color:#718187;font-size:13px}.cash-opening-form,.cash-register-toolbar,.cash-open-actions,.cash-dialog-actions,.cash-movement-types{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin:14px 0}.cash-opening-form label,.cash-register-toolbar label,.cash-register-dialog form>label{display:grid;gap:6px;color:#536970;font-size:13px}.cash-opening-form input,.cash-register-toolbar input,.cash-register-toolbar select,.cash-register-dialog input,.cash-register-dialog select,.cash-register-dialog textarea{min-height:38px;padding:8px 10px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}.cash-opening-form .error{width:100%;margin:0}.cash-open-actions{align-items:center;justify-content:flex-end}.cash-register-breakdown,.cash-register-summary-card{display:flex;flex-wrap:wrap;gap:8px 18px;margin:14px 0;padding:14px;border:1px solid #dce4e5;border-radius:6px;background:#f7f9f9;color:#52666d}.cash-register-summary-card{justify-content:space-between}.cash-register-toolbar{align-items:end;justify-content:flex-end}.cash-register-totals{margin:12px 0;padding:12px;border-top:1px solid #dce4e5;color:#536970;font-size:13px}.cash-register-dialog{width:min(540px,calc(100% - 28px));max-height:85vh;overflow:auto;padding:20px;border:0;border-radius:8px;box-shadow:0 12px 48px #0003}.cash-register-dialog::backdrop{background:#1a292c66}.cash-register-dialog .dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.cash-register-dialog .dialog-head h2{margin:0;font-size:20px}.cash-register-dialog form{display:grid;gap:14px}.cash-register-dialog form>label{display:grid}.cash-movement-types{align-items:center;margin:0}.cash-movement-types label{display:flex;align-items:center;gap:7px;color:#536970}.cash-dialog-actions{justify-content:flex-end;margin:4px 0 0}.cash-close-difference{min-height:20px;margin:0;color:#435b62;font-weight:700}.cash-register-view .empty-state{margin:12px 0;padding:18px;text-align:center}.cash-register-view .empty-state strong,.cash-register-view .empty-state span{display:block}.cash-register-view .empty-state span{margin-top:4px;color:#718187;font-size:13px}.cash-register-view .invoice-table{min-width:820px}@media(max-width:700px){.cash-register-status{align-items:flex-start;flex-direction:column}.cash-open-actions{justify-content:flex-start}.cash-register-toolbar{justify-content:flex-start}.cash-register-totals{line-height:1.7}}
@media(min-width:1200px){.cash-register-view{max-width:none;margin:0;padding:0 28px 28px 13px}.cash-register-view>.pending-invoice-heading{display:none}.cash-register-tabs{box-sizing:border-box;height:83px;min-height:83px;margin:0;padding:20px 0 12px;border:0}.cash-register-tabs button{box-sizing:border-box;display:flex;flex:0 0 306px;align-items:center;justify-content:flex-start;gap:10px;width:306px;height:51px;min-height:51px;padding:7px 14px;border:1px solid #dce4e5;border-radius:10px;background:#f7f9f9;color:#52666d;text-align:left}.cash-register-tabs button.active{border:2px solid #5f9ea0;background:#e7f3f3;color:#1f2937}.cash-register-tab-icon{width:20px;height:20px;flex:0 0 20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.cash-register-tab-copy{display:grid;min-width:0;gap:1px;text-align:left}.cash-register-tab-copy strong{font-size:14px;font-weight:500;line-height:18px}.cash-register-tab-copy small{color:#718187;font-size:12px;line-height:14px}.cash-register-status{min-height:66px;margin:0 0 18px;padding:12px 16px}}
@media(max-width:700px){.cash-register-status{align-items:flex-start;flex-direction:column}.cash-open-actions{justify-content:flex-start}.cash-register-toolbar{justify-content:flex-start}.cash-register-totals{line-height:1.7}}
.clinical-session-dialog{width:min(1080px,calc(100vw - 28px));max-width:none;max-height:min(92vh,980px);overflow:auto;padding:20px;border:1px solid #dce5e6;border-radius:12px;box-shadow:0 22px 70px #18343b40;color:#31474e}.clinical-session-dialog::backdrop{background:#18343b66}.clinical-session-dialog>.dialog-head{align-items:flex-start}.clinical-session-dialog .dialog-head h2{margin:3px 0 4px}.clinical-session-dialog .dialog-head small{color:#698187;letter-spacing:.08em}.clinical-session-context{margin:0!important}.clinical-session-tabs{display:flex;gap:5px;overflow:auto;margin:12px 0 16px;border-bottom:1px solid #dce5e6;white-space:nowrap}.clinical-session-tabs button{height:42px;padding:0 14px;border:0;border-bottom:3px solid transparent;background:#fff;color:#52666c}.clinical-session-tabs button.active{border-color:#64a1a4;color:#416e72;font-weight:700}.clinical-session-panel{display:grid;gap:16px}.clinical-session-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.clinical-session-fields label{display:grid;gap:6px;color:#445a60}.clinical-session-fields textarea{width:100%;min-height:66px;padding:9px;border:1px solid #cbd9dc;border-radius:5px;font:inherit;resize:vertical}.clinical-session-dialog .clinical-editor{min-height:150px}.clinical-session-incomplete{display:flex;align-items:center;gap:8px;margin:14px 0 5px;font-weight:600}.clinical-session-incomplete input{width:auto;min-height:auto}.clinical-session-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:12px}.clinical-session-actions button{min-height:38px;padding:0 13px;border:1px solid #d3dfe1;border-radius:5px;background:#fff;color:#455c63}.clinical-session-actions button.save{border:0;background:#619fa3;color:white}.clinical-odontogram-tools{display:grid;grid-template-columns:1fr 1fr;gap:14px}.clinical-odontogram-tools>div{display:grid;align-content:start;gap:8px}.clinical-odontogram-tools strong{font-size:12px;letter-spacing:.04em;color:#61777d}.clinical-tool-list{display:flex;gap:6px;flex-wrap:wrap}.clinical-tool-list button,.clinical-odontogram-arch button{min-height:32px;padding:4px 9px;border:1px solid #d7e1e2;border-radius:5px;background:#fff;color:#435b61}.clinical-tool-list button.active,.clinical-odontogram-arch button.active{border-color:#5d979a;background:#e9f3f3;color:#376d70}.clinical-odontogram-arch{display:flex;justify-content:center;gap:8px;margin-top:14px}.clinical-odontogram-map{display:grid;gap:10px;overflow:auto;padding:18px 4px;border:1px solid #e2e9ea;border-radius:7px;background:#fbfcfc}.clinical-tooth-row{display:flex;justify-content:center;gap:5px;min-width:max-content}.clinical-tooth-row button{position:relative;min-width:34px;height:38px;border:1px solid #cad8da;border-radius:8px 8px 12px 12px;background:#fff;color:#425a60}.clinical-tooth-row button:nth-child(9){margin-left:14px}.clinical-tooth-row button.has-finding{border-color:#cf7d5c;background:#fff2ec;color:#a54d30;font-weight:700}.clinical-session-timeline{overflow:auto}.clinical-session-timeline h3{margin:0 0 12px;color:#435c62}.clinical-session-timeline table{min-width:680px}.clinical-session-timeline .people-table td,.clinical-session-timeline .people-table th{padding:9px 10px}@media(max-width:680px){.clinical-session-dialog{padding:14px}.clinical-session-fields,.clinical-odontogram-tools{grid-template-columns:1fr}.clinical-session-actions{justify-content:stretch}.clinical-session-actions button{flex:1}}
.clinical-session-previous-dialog{width:min(760px,calc(100vw - 30px));max-width:none;max-height:min(82vh,760px);overflow:auto;padding:20px;border:1px solid #dce5e6;border-radius:10px;box-shadow:0 20px 60px #18343b40;color:#31474e}.clinical-session-previous-dialog::backdrop{background:#18343b66}.clinical-session-previous-dialog>.dialog-head{align-items:flex-start}.clinical-session-previous-dialog .dialog-head h2{margin:3px 0}.clinical-session-previous-dialog .dialog-head small{color:#698187;letter-spacing:.08em}.clinical-session-previous-tabs{display:flex;gap:5px;overflow:auto;margin:12px 0 16px;border-bottom:1px solid #dce5e6;white-space:nowrap}.clinical-session-previous-tabs button{height:40px;padding:0 13px;border:0;border-bottom:3px solid transparent;background:#fff;color:#52666c}.clinical-session-previous-tabs button.active{border-color:#64a1a4;color:#416e72;font-weight:700}.clinical-session-previous-table-wrap{overflow:auto}.clinical-session-previous-table-wrap table{min-width:500px}.clinical-session-previous-table-wrap td.empty-state{text-align:center;color:#72868b;padding:22px}.clinical-session-previous-table-wrap td button{border:0;padding:0;background:none;color:#426e73;text-align:left;text-decoration:underline;cursor:pointer}.clinical-session-previous-detail{display:grid;gap:12px}.clinical-session-previous-detail h3,.clinical-session-previous-detail h4{margin:0;color:#435c62}.clinical-session-previous-detail section{display:grid;gap:6px}.clinical-session-previous-copy{min-height:34px;padding:9px 11px;border:1px solid #e0e8e9;border-radius:5px;background:#fbfcfc;overflow-wrap:anywhere}.clinical-session-previous-copy:empty::after{content:'—';color:#91a0a4}
.clinical-session-upcoming-dialog{width:min(620px,calc(100vw - 30px));max-width:none;max-height:min(82vh,760px);overflow:auto;padding:20px;border:1px solid #dce5e6;border-radius:10px;box-shadow:0 20px 60px #18343b40;color:#31474e}.clinical-session-upcoming-dialog::backdrop{background:#18343b66}.clinical-session-upcoming-dialog>.dialog-head{align-items:flex-start}.clinical-session-upcoming-dialog .dialog-head h2{margin:3px 0}.clinical-session-upcoming-dialog .dialog-head small{color:#698187;letter-spacing:.08em}.clinical-session-upcoming-actions{display:flex;justify-content:flex-end;gap:8px;margin:12px 0}.clinical-session-upcoming-summary{margin:12px 0;color:#52666c;font-weight:700}.clinical-session-upcoming-next{margin:7px 0 0;font-weight:400}.clinical-session-upcoming-list{display:grid;gap:16px}.clinical-session-upcoming-month{display:grid;gap:8px}.clinical-session-upcoming-month h3{margin:0;padding:8px 0;border-bottom:1px solid #dce5e6;color:#52666c;font-size:.9rem;text-transform:capitalize}.clinical-session-upcoming-card{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid #e0e8e9;border-radius:7px;background:#fff}.clinical-session-upcoming-date{display:grid;justify-items:center;gap:2px;color:#52666c}.clinical-session-upcoming-date strong{font-size:1.25rem}.clinical-session-upcoming-date span{text-transform:capitalize}.clinical-session-upcoming-detail{display:grid;gap:4px;min-width:0}.clinical-session-upcoming-detail strong{color:#344f56}.clinical-session-upcoming-detail span{overflow-wrap:anywhere;color:#657b80;font-size:.9rem}.clinical-session-upcoming-today{padding:4px 8px;border-radius:12px;background:#e8f4f2;color:#426e73;font-size:.8rem;font-weight:700}@media print{body.printing-clinical-upcoming>*{visibility:hidden!important}body.printing-clinical-upcoming #clinical-session-upcoming-dialog{position:static!important;display:block!important;visibility:visible!important;width:auto!important;max-width:none!important;max-height:none!important;overflow:visible!important;border:0!important;box-shadow:none!important}body.printing-clinical-upcoming #clinical-session-upcoming-dialog *{visibility:visible!important}body.printing-clinical-upcoming #clinical-session-upcoming-dialog::backdrop{display:none}}
.clinical-tooth-row--primary button:nth-child(6){margin-left:14px}
.clinical-editor-toolbar button[data-local-dictation]{font-weight:600}.clinical-editor-toolbar button[data-local-dictation][aria-pressed="true"]{border-color:#b65d51;background:#fff0ed;color:#9a3d32}.clinical-dictation-status{margin:5px 0 0;font-size:12px;line-height:1.45;color:#60757b}
.clinical-background-summary{margin:2px 0 0!important;color:#7a4f3c;font-size:12px;font-weight:600}.clinical-background-dialog{width:min(760px,calc(100vw - 28px));max-width:none;max-height:min(88vh,900px);overflow:auto;padding:20px;border:1px solid #dce5e6;border-radius:10px;box-shadow:0 22px 70px #18343b40;color:#31474e}.clinical-background-dialog::backdrop{background:#18343b66}.clinical-background-dialog>.dialog-head{align-items:center}.clinical-background-dialog .dialog-head h2{margin:0}.clinical-background-dialog .dialog-head>button{min-width:34px;height:34px;border:0;border-radius:5px;background:transparent;color:#53676d;font-size:22px}.clinical-background-content{display:grid;gap:15px}.clinical-background-heading h3{margin:0 0 5px;color:#415d63}.clinical-background-heading p{margin:0;color:#6e8187;font-size:13px}.clinical-background-alerts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.clinical-background-alert{display:flex;align-items:center;gap:8px;min-height:40px;padding:8px 10px;border:1px solid #e0e7e8;border-radius:6px;background:#fff;color:#425a60;text-align:left}.clinical-background-alert[aria-pressed="true"]{border-color:#659da0;background:#edf5f5;color:#315f63}.clinical-background-alert-mark{font-size:15px;line-height:1}.clinical-background-alert-label{font-weight:600}.clinical-background-alert--critical{border-left:3px solid #c25f55}.clinical-background-alert--important{border-left:3px solid #d59a3b}.clinical-background-alert--notice{border-left:3px solid #6b9da0}.clinical-background-custom{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.clinical-background-custom label,.clinical-background-fields label{display:grid;gap:6px;color:#445a60}.clinical-background-custom input,.clinical-background-fields textarea{width:100%;padding:9px;border:1px solid #cbd9dc;border-radius:5px;background:#fff;color:inherit;font:inherit}.clinical-background-custom-actions{display:flex;gap:6px}.clinical-background-custom-trigger button,.clinical-background-custom-actions button,.clinical-background-custom-item button{min-height:38px;padding:0 12px;border:1px solid #d3dfe1;border-radius:5px;background:#fff;color:#455c63}.clinical-background-custom-list{display:grid;gap:6px}.clinical-background-custom-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;border-radius:5px;background:#f4f8f8}.clinical-background-custom-item button{min-height:28px;padding:0 8px}.clinical-background-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.clinical-background-fields textarea{resize:vertical}.clinical-background-actions{display:flex;justify-content:flex-end}.clinical-background-actions .save{min-height:38px;padding:0 13px;border:0;border-radius:5px;background:#619fa3;color:#fff}@media(max-width:760px){.clinical-background-alerts{grid-template-columns:repeat(2,minmax(0,1fr))}.clinical-background-fields{grid-template-columns:1fr}}
.product-tpv-view{display:grid;gap:20px}.tpv-layout{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(420px,1.35fr);gap:18px;align-items:start}.tpv-add-panel,.tpv-ticket-panel,.tpv-sales-history{padding:18px;border:1px solid #dce5e7;border-radius:9px;background:#fff}.tpv-add-panel h2,.tpv-ticket-panel h2,.tpv-sales-history h2{margin:0 0 8px;color:#3d555d;font-size:18px}.tpv-code-form,.tpv-search-form{display:grid;grid-template-columns:minmax(0,1fr) 100px;gap:10px;align-items:end;margin-top:14px}.tpv-code-form{grid-template-columns:minmax(0,1fr) 90px auto}.tpv-code-form label,.tpv-search-form label,.tpv-warehouse-field,.tpv-payment-fields>label{display:grid;gap:6px;color:#52676d;font-size:13px}.tpv-code-form input,.tpv-search-form input,.tpv-warehouse-field select,.tpv-payment-fields select,.tpv-lines-table input{min-width:0;min-height:38px;padding:7px 9px;border:1px solid #d6e0e2;border-radius:5px;background:#fff;color:#344b52;font:inherit}.tpv-code-form button,.tpv-search-form button,.tpv-ticket-head button,.tpv-product-result button,.tpv-lines-table button{min-height:38px;padding:0 11px;border:1px solid #d3dfe1;border-radius:5px;background:#fff;color:#455c63;font:inherit}.tpv-code-form .save,.tpv-ticket-panel>.save{border:0;background:#619fa3;color:#fff}.tpv-product-results{display:grid;gap:7px;margin-top:12px}.tpv-product-result,.tpv-sale-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:10px;border:1px solid #e4ebec;border-radius:6px}.tpv-product-result div,.tpv-sale-row div{display:grid;gap:4px;min-width:0}.tpv-product-result small,.tpv-sale-row small{color:#75858a;font-size:11px}.tpv-product-result button:disabled,.tpv-ticket-panel button:disabled{opacity:.52;cursor:not-allowed}.tpv-ticket-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.tpv-ticket-head p{margin:0 0 12px;color:#728287;font-size:12px}.tpv-warehouse-field{max-width:280px;margin:8px 0 12px}.tpv-lines-wrap{overflow-x:auto}.tpv-lines-table{width:100%;border-collapse:collapse}.tpv-lines-table th,.tpv-lines-table td{padding:8px 6px;border-bottom:1px solid #e8eeee;text-align:left;vertical-align:middle}.tpv-lines-table td:first-child{min-width:130px}.tpv-lines-table input{width:76px}.tpv-lines-table button{min-height:30px;padding:0 7px}.tpv-lines-table small{color:#718187}.tpv-totals{display:grid;gap:8px;margin:14px 0}.tpv-totals>div{display:flex;justify-content:space-between;gap:10px}.tpv-totals dt{color:#718187}.tpv-totals dd{margin:0;font-variant-numeric:tabular-nums}.tpv-grand-total{padding-top:10px;border-top:1px solid #dce5e7;font-weight:700;font-size:17px}.tpv-payment-fields{display:grid;grid-template-columns:minmax(160px,1fr) minmax(180px,1fr);gap:12px;align-items:end;margin:14px 0}.tpv-paid-toggle{display:flex!important;align-items:center;gap:8px!important;min-height:38px}.tpv-ticket-panel>.save{width:100%;min-height:42px}.tpv-sales-history>div{display:grid;gap:8px}.tpv-sale-row{grid-template-columns:minmax(0,1fr) auto}.tpv-sale-row>strong{font-variant-numeric:tabular-nums}.tpv-sales-history .form-note{margin-bottom:0}@media(max-width:900px){.tpv-layout{grid-template-columns:1fr}.tpv-code-form{grid-template-columns:minmax(0,1fr) 90px}.tpv-code-form button{grid-column:1/-1}.tpv-search-form{grid-template-columns:minmax(0,1fr) auto}}@media(max-width:560px){.tpv-add-panel,.tpv-ticket-panel,.tpv-sales-history{padding:13px}.tpv-product-result{grid-template-columns:minmax(0,1fr) auto}.tpv-product-result button{grid-column:1/-1}.tpv-payment-fields{grid-template-columns:1fr}.tpv-code-form{grid-template-columns:minmax(0,1fr) 76px}}

.marketing-stamp-card-status{margin:12px 0;padding:11px 13px;border-left:3px solid #78a9aa;border-radius:4px;background:#f2f7f7;color:#60777c;font-size:12px;line-height:1.45}body[data-theme="dark"] .marketing-tabs{border-color:#3b484d}body[data-theme="dark"] .marketing-tabs button{border-color:transparent;background:#252f33;color:#b7c5c8}body[data-theme="dark"] .marketing-tabs button.active{border-color:#5f9ea0;background:#202a2e;color:#a8dcde}body[data-theme="dark"] .marketing-stamp-card-status{border-color:#5f9ea0;background:#232d31;color:#c2d0d2}.marketing-stamp-card-table td:first-child{white-space:nowrap}.marketing-stamp-card-table td:first-child button{margin:2px 4px 2px 0;padding:5px 8px;border:1px solid #d6e1e2;border-radius:4px;background:#fff;color:#52666d}.marketing-stamp-card-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.marketing-stamp-card-dialog form{display:grid;gap:12px}.marketing-stamp-card-dialog form>label,.marketing-stamp-card-fields label{display:grid;gap:6px;color:#51676e;font-size:12px}.marketing-stamp-card-dialog input:not([type=checkbox]),.marketing-stamp-card-dialog select{width:100%;min-height:36px;padding:7px 9px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:#43575e;font:inherit}.marketing-stamp-card-rule{margin:0;padding:10px 12px;border-radius:5px;background:#f3f7f7;color:#63787d;font-size:11px;line-height:1.5}.marketing-stamp-card-dialog .marketing-stamp-card-active{display:flex;align-items:center;gap:8px}.marketing-stamp-card-dialog .marketing-stamp-card-active input{margin:0;accent-color:#619fa3}@media(max-width:700px){.marketing-stamp-card-fields{grid-template-columns:1fr}.marketing-stamp-card-table{display:block;overflow-x:auto}}
.marketing-stamp-card-list{display:grid;gap:12px;margin:16px 0}.marketing-stamp-card-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start;padding:15px 16px;border:1px solid #e1e8e9;border-radius:7px;background:#fff}.marketing-stamp-card-content{min-width:0}.marketing-stamp-card-content h3{margin:0 0 5px;color:#3f565d;font-size:15px;font-weight:650}.marketing-stamp-card-reward{margin:0 0 7px;color:#667a80;font-size:13px}.marketing-stamp-card-state{display:inline-flex;margin-bottom:7px;padding:3px 8px;border-radius:12px;background:#f3f5f5;color:#667a80;font-size:11px;font-weight:600}.marketing-stamp-card-state.is-active{background:#e9f4ec;color:#347747}.marketing-stamp-card-details{display:grid;gap:4px;color:#718187;font-size:12px;line-height:1.4}.marketing-stamp-card-meta-row{display:flex;align-items:center;gap:7px;margin:0}.marketing-stamp-card-meta-row svg{width:15px;height:15px;flex:none;fill:none;stroke:#21816e;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.marketing-stamp-card-actions{display:flex;gap:6px}.marketing-stamp-card-actions button{display:grid;width:32px;height:32px;place-items:center;padding:0;border:1px solid #d3dfe1;border-radius:5px;background:#fff;color:#455c63}.marketing-stamp-card-actions button:hover{border-color:#619fa3;color:#3e7f82}.marketing-stamp-card-actions button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.marketing-stamp-card-no-results{padding:18px;border:1px solid #e1e8e9;border-radius:6px;color:#667a80;text-align:center}
body[data-theme="dark"] .marketing-stamp-card-item,body[data-theme="dark"] .marketing-stamp-card-no-results{border-color:#3b484d;background:#202a2e;color:#dbe5e7}body[data-theme="dark"] .marketing-stamp-card-content h3{color:#e4edef}body[data-theme="dark"] .marketing-stamp-card-reward,body[data-theme="dark"] .marketing-stamp-card-details{color:#bdcacc}body[data-theme="dark"] .marketing-stamp-card-state{background:#354145;color:#bdcacc}body[data-theme="dark"] .marketing-stamp-card-state.is-active{background:#263b31;color:#9ed0a9}body[data-theme="dark"] .marketing-stamp-card-meta-row svg{stroke:#70c1ab}body[data-theme="dark"] .marketing-stamp-card-actions button{border-color:#46565c;background:#293438;color:#dbe5e7}

.invoice-advanced-panel{margin:8px 0;padding:14px;border:1px solid #dce5e6;border-radius:7px;background:#f8fbfb}.invoice-advanced-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:10px}.invoice-advanced-grid label{display:grid;align-content:start;gap:5px;color:#52656d;font-size:12px}.invoice-advanced-grid input,.invoice-advanced-grid select{box-sizing:border-box;width:100%;min-width:0;height:35px;padding:0 8px;border:1px solid #d8e1e3;border-radius:5px;background:#fff;color:#43575e;font:inherit}.invoice-advanced-error{min-height:1.2em;margin:6px 0 0;color:#ad3c3c;font-size:12px}.invoice-advanced-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.invoice-advanced-actions button{min-height:34px;padding:0 12px;border:1px solid #d8e1e3;border-radius:5px;background:#fff;color:#43575e}.invoice-advanced-actions button.save{border:0;background:#619fa3;color:#fff}
.invoice-options-dialog{width:min(560px,calc(100% - 28px));max-height:min(82vh,620px);overflow:auto;padding:20px;border:0;border-radius:8px;box-shadow:0 12px 48px #0003}.invoice-options-dialog::backdrop{background:#20383d66}.invoice-options-dialog form{display:grid;gap:12px}.invoice-options-dialog label{display:grid;gap:6px;color:#536970;font-size:13px}.invoice-options-dialog select{min-height:38px;padding:8px 10px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}.invoice-options-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.invoice-options-actions button{min-height:38px;padding:0 13px;border:1px solid #d3dfe1;border-radius:5px;background:#fff;color:#455c63}.invoice-options-actions button.save{border:0;background:#619fa3;color:#fff}
.invoice-options-dialog label.invoice-check{display:flex;align-items:flex-start;gap:8px;line-height:1.4}.invoice-options-dialog .invoice-check input{flex:0 0 auto;margin:2px 0 0;accent-color:#619fa3}
.invoice-print-dialog{width:min(820px,calc(100% - 24px));max-width:820px;max-height:90vh;overflow:auto;padding:20px;border:0;border-radius:8px;box-shadow:0 12px 48px #0003;background:#fff;color:#263a40}.invoice-print-dialog::backdrop{background:#20383d88}.invoice-print-document{position:relative;max-width:760px;min-height:420px;margin:0 auto;padding:28px;background:#fff;color:#263a40;font-family:Arial,sans-serif}.invoice-print-header{position:relative;padding:0 0 18px;border-bottom:2px solid #5c858a}.invoice-print-header>small{color:#647b80;font-size:10px;letter-spacing:.1em}.invoice-print-header h2{margin:10px 0 4px;font-size:24px}.invoice-print-header p{margin:0;color:#60747a;font-size:12px}.invoice-print-watermark{display:inline-block;margin-top:12px;padding:5px 8px;border:1px solid #b26055;color:#a44a40;font-size:11px;letter-spacing:.08em}.invoice-print-parties{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:22px 0}.invoice-print-parties h3,.invoice-print-treatment h3{margin:0 0 7px;color:#657b80;font-size:11px;text-transform:uppercase;letter-spacing:.06em}.invoice-print-parties p,.invoice-print-treatment p{margin:3px 0;font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}.invoice-print-lines{width:100%;border-collapse:collapse;font-size:11px}.invoice-print-lines th,.invoice-print-lines td{padding:8px 6px;border-bottom:1px solid #e1e7e8;text-align:left;vertical-align:top}.invoice-print-lines th{background:#f3f7f7;color:#546c72}.invoice-print-lines td:not(:first-child),.invoice-print-lines th:not(:first-child){text-align:right;white-space:nowrap}.invoice-print-treatment{margin:18px 0;padding:12px;border:1px solid #e0e8e9;border-radius:5px}.invoice-print-totals{display:grid;grid-template-columns:1fr auto;gap:7px 20px;width:min(320px,100%);margin:18px 0 18px auto;font-size:12px}.invoice-print-totals dt{color:#64777c}.invoice-print-totals dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}.invoice-print-totals dt:last-of-type,.invoice-print-totals dd:last-of-type{padding-top:8px;border-top:1px solid #bdcbcd;color:#263a40;font-size:15px;font-weight:700}.invoice-print-payment{margin:12px 0;color:#586f75;font-size:12px}.invoice-print-paid-stamp{display:inline-block;padding:7px 12px;border:3px solid #388267;border-radius:4px;color:#287253;font-size:18px;letter-spacing:.12em;transform:rotate(-3deg)}.invoice-print-document footer{margin-top:22px;padding-top:10px;border-top:1px solid #dfe6e7;color:#708085;font-size:9px;line-height:1.5}.invoice-print-actions{display:flex;justify-content:flex-end;gap:8px;max-width:760px;margin:0 auto;padding:10px 0 0}.invoice-print-actions button{min-height:38px;padding:0 13px;border:1px solid #d3dfe1;border-radius:5px;background:#fff;color:#455c63}.invoice-print-actions button.save{border:0;background:#619fa3;color:#fff}.invoice-print-open,.invoice-list-card button{min-height:32px;padding:0 9px;border:1px solid #d3dfe1;border-radius:5px;background:#fff;color:#455c63}.invoice-print-open:hover,.invoice-list-card button:hover{border-color:#619fa3;color:#3e7f82}
@media print{body *{visibility:hidden!important}#invoice-print-dialog[open],#invoice-print-dialog[open] *{visibility:visible!important}#invoice-print-dialog[open]{position:static;display:block;inset:auto;width:auto;max-width:none;max-height:none;overflow:visible;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;background:#fff;color:#000}#invoice-print-document{max-width:none;min-height:0;margin:0;padding:0;background:#fff;color:#000}.invoice-print-header,.invoice-print-parties,.invoice-print-treatment,.invoice-print-lines,.invoice-print-totals,.invoice-print-payment,.invoice-print-paid-stamp,.invoice-print-document footer{break-inside:avoid}.invoice-print-actions{display:none!important}.invoice-print-lines th{background:#eee!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.invoice-print-watermark,.invoice-print-paid-stamp{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
@media(max-width:620px){.invoice-print-dialog{padding:10px}.invoice-print-document{padding:12px}.invoice-print-parties{grid-template-columns:1fr;gap:12px}.invoice-print-lines{font-size:9px}.invoice-print-lines th,.invoice-print-lines td{padding:6px 3px}.invoice-print-totals{width:100%}.invoice-print-actions{justify-content:stretch}.invoice-print-actions button{flex:1}}
@media print{body *{visibility:hidden!important}#invoice-print-dialog[open],#invoice-print-dialog[open] *,#budget-print-dialog[open],#budget-print-dialog[open] *{visibility:visible!important}#invoice-print-dialog[open],#budget-print-dialog[open]{position:static!important;display:block!important;inset:auto!important;width:auto!important;max-width:none!important;max-height:none!important;overflow:visible!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;color:#000!important}#invoice-print-dialog[open]::backdrop,#budget-print-dialog[open]::backdrop{display:none!important}#invoice-print-document,#budget-print-document{max-width:none!important;min-height:0!important;margin:0!important;padding:0!important;background:#fff!important;color:#000!important}.invoice-print-header,.invoice-print-parties,.invoice-print-treatment,.invoice-print-lines,.invoice-print-totals,.invoice-print-payment,.invoice-print-paid-stamp,.invoice-print-document footer{break-inside:avoid}.invoice-print-actions{display:none!important}.invoice-print-lines th{background:#eee!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.invoice-print-watermark,.invoice-print-paid-stamp{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
.clinical-odontogram-summary{display:grid;gap:8px}.clinical-tooth-mark-group{padding:10px 12px;border:1px solid #dfe8e9;border-radius:6px;background:#fff}.clinical-tooth-mark-group>strong{display:block;margin-bottom:6px;color:#48636a}.clinical-tooth-mark-group ul{display:grid;gap:5px;margin:0;padding:0;list-style:none}.clinical-tooth-mark-group li{display:flex;align-items:center;justify-content:space-between;gap:10px}.clinical-tooth-mark-group li button{flex:none;padding:3px 8px;border:1px solid #d7e1e2;border-radius:4px;background:#fff;color:#52676d}.clinical-tooth-row button.has-multiple-findings::after{content:attr(data-clinical-mark-count);position:absolute;top:-7px;right:-6px;display:grid;place-items:center;min-width:16px;height:16px;padding:0 3px;border-radius:9px;background:#3f777b;color:#fff;font-size:9px;line-height:1}
.reminder-readonly{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px}.reminder-readonly label{display:grid;gap:5px;color:#62757a}.reminder-readonly label.check-field{display:flex;align-items:center}.reminder-readonly select{min-width:160px;min-height:34px;padding:0 8px;border:1px solid #d7dfe3;border-radius:4px;background:#f2f4f4;color:#66777b;font:inherit}.reminder-readonly select:disabled{opacity:.75}.reminder-price{padding-bottom:9px;color:#78878b;font-size:12px}
/* Exportación local de la agenda */
.calendar-print-picker{position:relative;display:flex;align-items:center}
#calendar-print-menu{position:absolute;right:-16px;top:calc(100% + 2px);z-index:40;box-sizing:border-box;width:min(349px,calc(100vw - 16px));padding:6px;border:1px solid #dee2e6;border-radius:4px;background:#fff;box-shadow:0 8px 24px #20343a26}
#calendar-print-menu[hidden]{display:none}
#calendar-print-menu button{display:flex;width:100%;height:51px;min-height:51px;align-items:center;gap:10px;padding:8px 10px;border:0;border-radius:8px;background:#fff;text-align:left;color:#212529;font:14px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
#calendar-print-menu .calendar-print-menu-icon{display:grid;width:32px;height:32px;flex:0 0 32px;place-items:center;color:#5b7378}
#calendar-print-menu .calendar-print-menu-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#calendar-print-menu .calendar-print-menu-copy{display:grid;min-width:0}
#calendar-print-menu .calendar-print-menu-title{color:#1f2937;font-size:14px;font-weight:600;line-height:19px}
#calendar-print-menu .calendar-print-menu-description{color:#5b7378;font-size:12px;line-height:16px}
#calendar-print-menu button:hover,#calendar-print-menu button:focus-visible{background:#edf5f5;outline:0}
.agenda-export-dialog{width:min(1100px,96vw);height:min(850px,94vh);max-width:96vw;max-height:94vh;padding:16px;border:0;border-radius:9px;box-shadow:0 16px 48px #102a3340}
.agenda-export-dialog::backdrop{background:#132a3155}
.agenda-export-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.agenda-export-heading h2{margin:0;font-size:18px}
.agenda-export-heading button{border:0;background:transparent;color:#40535c;font-size:24px}
.agenda-export-demo-note{margin:7px 0 10px;color:#62767d;font-size:12px}
#agenda-pdf-preview{display:block;width:100%;height:calc(100% - 105px);border:1px solid #dce4e5;background:#f5f7f7}
.agenda-export-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}
.agenda-export-actions button{min-height:36px;padding:0 14px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fafb;color:#43575e}
.agenda-export-actions button.save{border:0;background:#619fa3;color:#fff}
@media(max-width:1100px){.calendar-print-picker{display:flex!important}.calendar-print-picker>button{display:flex!important;align-items:center;justify-content:center}}
@media(max-width:650px){.agenda-export-dialog{width:98vw;height:94vh;max-width:98vw;padding:10px}#agenda-pdf-preview{height:calc(100% - 112px)}}
.clinical-attachments-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #e2e8e9}
.clinical-attachments-heading h3{margin:0 0 5px;color:#344e56}
.clinical-attachments-heading .form-note{margin:0;max-width:680px}
.clinical-attachment-picker{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 13px;border-radius:5px;background:#619fa3;color:#fff;white-space:nowrap;cursor:pointer}
.clinical-attachment-picker input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.clinical-attachment-picker:focus-within{outline:2px solid #245f65;outline-offset:2px}
.clinical-session-attachments-list{display:grid;gap:8px;padding-top:10px}
.clinical-session-attachment{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px;border:1px solid #e0e8e9;border-radius:6px;background:#fff}
.clinical-session-attachment-details{display:grid;gap:4px;min-width:0}
.clinical-session-attachment-details strong{overflow-wrap:anywhere;color:#33484f}
.clinical-session-attachment-details span{color:#75848a;font-size:11px}
.clinical-session-attachment-actions{display:flex;gap:6px;flex:none}
.clinical-session-attachment-actions button{min-height:32px;padding:0 10px;border:1px solid #d5e0e1;border-radius:4px;background:#f8fafb;color:#41565e}
@media(max-width:650px){.clinical-attachments-heading,.clinical-session-attachment{align-items:flex-start;flex-direction:column}.clinical-session-attachment-actions{align-self:flex-end}}
.clinical-session-header-actions{display:flex;align-items:flex-start;gap:8px}.clinical-session-more{position:relative}.clinical-session-header-actions>button,.clinical-session-more>button{min-height:34px;padding:0 12px;border:1px solid #d5e0e1;border-radius:5px;background:#fff;color:#435b61}.clinical-session-more-menu{position:absolute;z-index:8;top:calc(100% + 5px);right:0;display:grid;min-width:190px;padding:5px;border:1px solid #d5e0e1;border-radius:6px;background:#fff;box-shadow:0 8px 24px #18343b24}.clinical-session-more-menu[hidden]{display:none}.clinical-session-more-menu button{min-height:34px;padding:7px 10px;border:0;border-radius:4px;background:#fff;color:#435b61;text-align:left}.clinical-session-more-menu button:not(:disabled):hover{background:#edf4f4}.clinical-session-more-menu button:disabled{color:#98a7aa}
.clinical-session-consumption-dialog{width:min(680px,calc(100vw - 24px));max-width:none;max-height:85vh;overflow:auto;padding:18px;border:1px solid #dce5e6;border-radius:9px;box-shadow:0 20px 60px #18343b40;color:#31474e}
.clinical-session-consumption-dialog::backdrop{background:#18343b66}
.clinical-session-consumption-dialog .dialog-head h2{margin:4px 0;color:#344d55;font-size:20px}
.clinical-session-consumption-dialog>.form-note{padding:10px 12px;border-radius:5px;background:#f4f7f7;color:#66797e}
.clinical-consumption-add{display:grid;grid-template-columns:minmax(0,1fr) 100px auto;align-items:end;gap:8px}
.clinical-consumption-add label{display:grid;gap:5px;color:#536970;font-size:12px}
.clinical-consumption-add select,.clinical-consumption-add input,.clinical-session-consumption-row input{min-height:37px;width:100%;padding:7px 9px;border:1px solid #cbd9dc;border-radius:5px;background:#fff;color:#43575e;font:inherit}
.clinical-consumption-add>button,.clinical-consumption-footer button{min-height:37px;padding:0 12px;border:1px solid #d5e0e1;border-radius:5px;background:#f8fafb;color:#43575e}
.clinical-consumption-add>button:disabled,.clinical-consumption-footer button:disabled{opacity:.5;cursor:not-allowed}
.clinical-session-consumption-list{display:grid;gap:7px;min-height:72px;margin-top:12px}
.clinical-session-consumption-row{display:grid;grid-template-columns:minmax(110px,1fr) minmax(100px,.7fr) 100px auto;align-items:center;gap:10px;padding:9px;border:1px solid #e0e8e9;border-radius:5px;background:#fff}
.clinical-session-consumption-row strong{overflow-wrap:anywhere;color:#3b535a}
.clinical-session-consumption-row span,.clinical-consumption-footer>span{color:#77878b;font-size:12px}
.clinical-session-consumption-row label{display:grid;gap:4px;color:#64777c;font-size:11px}
.clinical-session-consumption-row input{min-height:32px}
.clinical-session-consumption-row button{min-height:32px;padding:0 9px;border:1px solid #d5e0e1;border-radius:4px;background:#f8fafb;color:#43575e}
.clinical-session-consumption-row button:disabled{opacity:.5;cursor:not-allowed}
.clinical-consumption-footer{display:flex;align-items:center;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid #e2e8e9}
.clinical-consumption-footer>span{flex:1}
.clinical-consumption-footer button.save{border:0;background:#619fa3;color:#fff}
@media(max-width:620px){.clinical-consumption-add{grid-template-columns:1fr 80px}.clinical-consumption-add>button{grid-column:1/-1}.clinical-session-consumption-row{grid-template-columns:1fr 1fr}.clinical-session-consumption-row strong{grid-column:1/-1}.clinical-consumption-footer{align-items:stretch;flex-direction:column}}
.clinical-session-services>div>label{display:block;margin-bottom:6px;color:#52686d}.clinical-session-service-add{display:flex;gap:8px}.clinical-session-service-add select{flex:1;min-width:0;height:38px;padding:6px 9px;border:1px solid #cbd9dc;border-radius:5px;background:#fff;color:#43575e;font:inherit}.clinical-session-service-add button,.clinical-session-services-table-wrap button{min-height:34px;padding:0 10px;border:1px solid #d5e0e1;border-radius:5px;background:#fff;color:#435b61}.clinical-session-services-table-wrap{overflow:auto}.clinical-session-services-table-wrap table{min-width:700px}.clinical-session-services-table-wrap input{width:82px;min-height:32px;padding:5px 7px;border:1px solid #cbd9dc;border-radius:4px;color:#43575e;font:inherit}.clinical-session-services-table-wrap input[type=number]{text-align:right}.clinical-session-services-table-wrap tfoot th{padding:10px;text-align:right;color:#3f5e63}.clinical-session-services-table-wrap tfoot th:nth-child(2){text-align:left}
.commission-view{max-width:1500px;margin:0 auto;padding:4px 8px 28px}.commission-tabs{overflow-x:auto;white-space:nowrap}.commission-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:10px;margin:16px 0}.commission-notice{margin:14px 0;padding:12px 14px;border:1px solid #e0e8e9;border-left:3px solid #7da8a9;border-radius:5px;background:#f7fafa;color:#536970;line-height:1.5}.commission-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 0 12px}.commission-panel-heading h3,.commission-simulator h3{margin:0 0 5px;color:#435b62}.commission-panel-heading p{margin:0;color:#718187;font-size:12px}.commission-panel-heading>button,.commission-view [data-commission-go]{min-height:36px;padding:0 13px;border:1px solid #d3dfe1;border-radius:5px;background:#fff;color:#43575e}.commission-panel-heading>button.save{border:0;background:#619fa3;color:#fff}.commission-rules-table{min-width:760px}.commission-rules-table td:last-child{white-space:nowrap}.commission-rules-table td:last-child button{margin-right:5px;padding:6px 8px;border:1px solid #d6e1e2;border-radius:4px;background:#fff;color:#52666d}.commission-simulator{margin:22px 0;padding:16px;border:1px solid #dce5e7;border-radius:7px;background:#fff}.commission-simulator-fields{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:12px;margin:12px 0}.commission-simulator-fields label,.commission-settings-form>label:not(.commission-check),.commission-rule-dialog form>label{display:grid;gap:6px;color:#536970;font-size:13px}.commission-simulator-fields input,.commission-simulator-fields select,.commission-settings-form select,.commission-rule-dialog input:not([type=hidden]),.commission-rule-dialog select{min-width:0;min-height:38px;padding:8px 10px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}.commission-settings-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;max-width:900px}.commission-settings-form>label{margin:0}.commission-check{display:flex;align-items:center;gap:8px;color:#536970;font-size:13px}.commission-settings-form .product-form-actions{grid-column:1/-1}.commission-rule-dialog{width:min(600px,95vw);max-height:90vh;overflow:auto;padding:20px;border:0;border-radius:8px;box-shadow:0 12px 48px #0003}.commission-rule-dialog::backdrop{background:#1a292c66}.commission-rule-dialog form{display:grid;gap:12px}.commission-rule-dialog .dialog-head{display:flex;align-items:center;justify-content:space-between}.commission-rule-dialog .dialog-head h2{margin:4px 0 0}.commission-rule-dialog .dialog-head button{border:0;background:transparent;font-size:24px}.commission-rule-dialog .commission-rule-dates{display:grid;grid-template-columns:1fr 1fr;gap:12px}.commission-rule-dialog .error{min-height:1em;margin:0;color:#b33333}.commission-rule-dialog .form-note{margin:0;color:#718187;font-size:12px}@media(max-width:760px){.commission-summary-grid{grid-template-columns:1fr}.commission-simulator-fields,.commission-settings-form{grid-template-columns:1fr}.commission-panel-heading{align-items:flex-start;flex-direction:column}.commission-rule-dialog .commission-rule-dates{grid-template-columns:1fr}}
.commission-rule-dialog [data-commission-rule-field][hidden]{display:none}
.commission-view [data-commission-panel="settlements"] .pending-invoice-table-wrap{margin-top:14px}
.commission-view [data-commission-panel="settlements"] table{min-width:900px}
.tpv-serial-entry{display:grid;gap:4px;margin-top:8px;font-size:12px;color:#52666d}.tpv-serial-entry textarea{width:100%;min-width:160px;max-width:320px;padding:7px;border:1px solid #cbd9dc;border-radius:4px;font:inherit;resize:vertical}
.delivery-note-dialog{width:min(980px,96vw);max-height:92vh;overflow:auto}.delivery-note-lines{margin:14px 0;padding:14px;border:1px solid #e0e8e9;border-radius:7px}.delivery-note-lines h3{margin:0 0 10px;color:#607a80;font-size:13px;text-transform:uppercase}.delivery-note-lines .supplier-fields{grid-template-columns:minmax(0,1fr) auto;align-items:end}.delivery-note-lines .supplier-fields>button{min-height:38px;margin-bottom:10px;border:1px solid #d5e0e1;border-radius:5px;background:#fff;color:#435b61;padding:0 12px}.delivery-note-lines table{min-width:740px}.delivery-note-lines input,.delivery-note-lines textarea{width:110px;min-height:34px;padding:5px 7px;border:1px solid #cbd9dc;border-radius:4px;color:#43575e;font:inherit}.delivery-note-lines textarea{width:190px;resize:vertical}.delivery-note-total{display:flex;justify-content:flex-end;gap:28px;padding-top:10px;color:#526970}.delivery-note-total strong{margin-left:8px;color:#354b52}.delivery-note-lines .supplier-check{display:flex;align-items:center;gap:8px;color:#526970}.delivery-note-lines .supplier-check input{width:auto;min-height:0}@media(max-width:650px){.delivery-note-lines .supplier-fields{grid-template-columns:1fr}.delivery-note-lines .supplier-fields>button{margin:0}.delivery-note-total{align-items:flex-end;flex-direction:column;gap:8px}}
.person-signature-actions,.person-signature-template-row,.person-signature-document-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.person-signature-actions button,.person-signature-template-row button,.person-signature-document-actions button,.person-signature-markers button{min-height:34px;padding:0 11px;border:1px solid #d5e0e1;border-radius:5px;background:#fff;color:#43575e;font:inherit;cursor:pointer}.person-signature-actions button.save,.person-signature-form button.save{border:0;background:#619fa3;color:#fff}.person-signature-form{display:grid;gap:12px}.person-signature-form>h3{margin:0}.person-signature-form>label,.person-signature-template-row>label{display:grid;gap:6px;color:#536970;font-size:13px}.person-signature-form input,.person-signature-form select,.person-signature-form textarea{width:100%;min-height:38px;padding:8px 10px;border:1px solid #cad7da;border-radius:5px;background:#fff;color:#344b52;font:inherit}.person-signature-form textarea{min-height:300px;resize:vertical;line-height:1.5}.person-signature-template-row{align-items:end}.person-signature-template-row>label{min-width:min(360px,100%)}.person-signature-fields{margin:0;padding:10px;border:1px solid #e1e8e9;border-radius:6px}.person-signature-fields legend{padding:0 5px;color:#607a80;font-size:12px}.person-signature-fields>div{display:flex;gap:6px;flex-wrap:wrap}.person-signature-fields button{min-height:30px;padding:0 8px;border:1px solid #dce5e6;border-radius:4px;background:#f8fbfb;color:#526970;font:inherit;font-size:11px;cursor:pointer}.person-signature-markers{display:flex;gap:8px;flex-wrap:wrap}.person-signature-form .product-form-actions{margin:0}.person-signature-document{position:relative}.person-signature-document h4{display:inline-block;margin:0 10px 8px 0;color:#405a62}.person-signature-status{display:inline-block;color:#718187;font-size:12px}.person-signature-document>small{display:block;color:#718187}.person-signature-document pre{max-height:180px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;color:#526970;font-family:inherit;font-size:12px;line-height:1.5}.person-signature-document-actions{justify-content:flex-end}.person-signature-form [data-signature-error]:empty{display:none}@media(max-width:600px){.person-signature-template-row{align-items:stretch;flex-direction:column}.person-signature-template-row>label{width:100%}}
.person-report-list-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0}.person-report-list-actions button,.person-report-form>button{min-height:34px;padding:0 11px;border:1px solid #d5e0e1;border-radius:5px;background:#fff;color:#43575e;font:inherit;cursor:pointer}.person-report-list-actions button.save,.person-report-form .save{border:0;background:#619fa3;color:#fff}.person-report-form{display:grid;gap:12px}.person-report-form>input[name=title]{min-height:38px;padding:8px 10px;border:1px solid #cad7da;border-radius:5px;font:inherit}.person-report-metadata{display:flex;align-items:end;gap:14px;flex-wrap:wrap}.person-report-metadata label{display:grid;gap:5px;color:#536970;font-size:12px}.person-report-metadata input{min-height:35px;padding:6px 8px;border:1px solid #cad7da;border-radius:4px;color:#40555c;font:inherit}.person-report-status{color:#718187;font-size:12px}.person-report-template-message{padding:10px 12px;border:1px solid #e0e8e9;border-radius:5px;background:#f7fafa}.person-report-editor{min-height:320px;padding:14px;border:1px solid #cbd9dc;border-radius:5px;background:#fff;color:#344b52;line-height:1.55;outline:0}.person-report-editor:focus{border-color:#619fa3;box-shadow:0 0 0 2px #619fa333}.person-report-form .person-report-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin:0;padding:12px;border:1px solid #e0e8e9;border-radius:6px}.person-report-options legend{padding:0 5px;color:#607a80;font-size:12px}.person-report-options label{display:flex;align-items:center;gap:7px;color:#536970;font-size:12px}.person-report-options input{accent-color:#619fa3}.person-report-options .form-note{grid-column:1/-1;margin:0}.person-report-card h4{display:inline-block;margin:0 12px 7px 0;color:#405a62}.person-report-preview{max-height:210px;overflow:auto;padding:10px;border:1px solid #edf0f1;border-radius:4px;overflow-wrap:anywhere}.person-report-preview img{max-width:100%}.person-report-form [data-report-error]:empty{display:none}@media(max-width:620px){.person-report-form .person-report-options{grid-template-columns:1fr}.person-report-metadata{align-items:stretch;flex-direction:column}.person-report-metadata label{width:100%}}

.configuration-export-card{max-width:680px;margin-top:20px}.configuration-export-card h2{margin:0 0 8px;color:#405961}.configuration-export-card p{min-height:0}.configuration-export-card .save{border:0;background:#619fa3;color:#fff}.configuration-export-card [role=status]:empty{display:none}
.report-general-design-form{display:grid;grid-template-columns:minmax(300px,1fr) minmax(340px,1fr);align-items:start;gap:14px;max-width:1250px}.report-general-layout-fields{display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:10px;padding:14px;border:1px solid #e0e7e8;border-radius:6px;background:#fff}.report-general-layout-fields>label{display:grid;gap:5px;color:#536970;font-size:12px}.report-general-layout-fields>label:has(input[type=checkbox]){display:flex;align-items:center;gap:8px;min-height:34px}.report-general-layout-fields input[type=checkbox]{accent-color:#619fa3}.report-general-layout-fields input:not([type=checkbox]),.report-general-layout-fields select{min-width:0;min-height:35px;padding:6px 8px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:#344b52;font:inherit}.report-general-layout-fields input[type=color]{width:100%;height:35px;padding:3px}.report-general-design-form>.report-template-preview,.report-general-design-form>.form-note,.report-general-design-form>.configuration-actions{grid-column:1/-1}.report-layout-paper{position:relative;min-height:410px;margin:0 auto;overflow:hidden;padding:28px 34px;border:1px solid #dfe6e7;border-top:5px solid var(--report-accent,#1d9e75);box-shadow:0 3px 12px #23383c12;background:#fff;color:#344b52}.report-layout-header{display:flex;align-items:center;gap:12px;min-height:42px;padding-bottom:10px;border-bottom:1px solid #e5ebec;color:#435b62}.report-logo-center{justify-content:center;text-align:center}.report-logo-right{justify-content:flex-end;text-align:right}.report-layout-logo{display:inline-flex;align-items:center;justify-content:center;max-width:40%;height:40px;border:1px dashed #b8c8ca;background:#f5f8f8;color:#73878c;font-size:8px;letter-spacing:.06em}.report-layout-header strong{font-size:12px}.report-layout-number{margin-left:auto;color:#6d8085;font-size:9px}.report-logo-center .report-layout-number{margin-left:0}.report-layout-person{margin:14px 0 8px;color:#718187;font-size:.82em}.report-layout-title{margin:12px 0 18px;color:#344b52;font-size:1.2em}.report-layout-paper h4{margin:14px 0 5px}.report-layout-paper p{white-space:pre-wrap;overflow-wrap:anywhere}.report-layout-signature{display:flex;align-items:flex-end;justify-content:flex-end;margin:20px 0 12px;border-bottom:1px solid #d9e1e2;color:#718187;font-size:9px}.report-layout-footer{margin:10px 0 0;padding-top:7px;border-top:1px solid #e5ebec;color:#7b8c90;font-size:8px;text-align:center}.report-layout-watermark{position:absolute;top:43%;left:50%;transform:translate(-50%,-50%) rotate(-24deg);color:#d8e1e1;opacity:.38;font-size:64px;font-weight:700;letter-spacing:.15em;pointer-events:none}.report-template-preview{position:relative;overflow:hidden}.report-template-preview .report-layout-header{margin-bottom:10px}.report-template-preview .report-layout-watermark{font-size:56px}@media(max-width:900px){.report-general-design-form{grid-template-columns:1fr}.report-general-design-form>.report-template-preview,.report-general-design-form>.report-template-form,.report-general-design-form>.form-note,.report-general-design-form>.configuration-actions{grid-column:1}.report-layout-paper{min-height:360px;padding:20px}}@media(max-width:520px){.report-general-layout-fields{grid-template-columns:1fr}.report-layout-paper{padding:16px}.report-layout-number{font-size:8px}}
.report-general-layout-fields>label.report-layout-footer-field,.report-template-layout>label.report-layout-footer-field{display:grid;grid-column:1/-1;align-items:stretch;gap:6px}.report-general-layout-fields>label.report-layout-footer-field textarea,.report-template-layout>label.report-layout-footer-field textarea{width:100%;min-height:72px;padding:7px 9px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:#344b52;font:inherit;resize:vertical}.report-layout-custom-footer{margin:12px 0 0;padding-top:9px;border-top:1px solid #e5ebec;color:#667b81;white-space:pre-wrap;overflow-wrap:anywhere}
.person-report-print-content{min-height:30px;overflow-wrap:anywhere}.person-report-print-content p{margin:0 0 8pt;white-space:pre-wrap}.person-report-print-content h1,.person-report-print-content h2,.person-report-print-content h3,.person-report-print-content h4{margin:0 0 8pt}.person-report-print-content img{max-width:100%;height:auto}#person-report-print-area{display:none}
.report-layout-logo[src]{height:40px;object-fit:contain;border:0;background:transparent}.report-logo-upload{display:grid;grid-column:1/-1;gap:6px;padding:10px;border:1px dashed #cbd9dc;border-radius:5px;background:#f8fbfb;color:#536970;font-size:12px}.report-logo-upload input[type=file]{max-width:100%;font:inherit}.report-logo-upload-status{color:#718187}.report-logo-upload [data-report-logo-error]:empty{display:none}.report-logo-upload [data-report-logo-error]{margin:0}
.report-template-layout>label.report-logo-upload,.report-general-layout-fields>label.report-logo-upload{display:grid;align-items:stretch;gap:6px}
.configuration-view.report-template-editor-open{box-sizing:border-box;display:flex;height:100%;min-height:0;flex-direction:column;overflow:hidden}
.configuration-view.report-template-editor-open #configuration-content{display:flex;flex:1;min-height:0;flex-direction:column}
.report-template-form{display:grid;flex:1;grid-template-rows:58px minmax(0,1fr);gap:12px;min-width:0;min-height:0;overflow:auto;margin:16px 12px 0 12px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;color:#212529}
.report-template-editor-header{position:sticky;top:0;z-index:4;box-sizing:border-box;display:flex;min-height:58px;align-items:center;gap:12px;padding:0 4px;border-bottom:1px solid #dce5e6;background:#fff}
.report-template-editor-icon{display:grid;flex:0 0 42px;width:42px;height:42px;align-self:flex-end;margin-left:-4px;place-items:center;font-size:28px;transform:translateY(1px)}
.report-template-name-field{display:grid;min-width:0;height:58px;flex:1;align-self:stretch;grid-template-rows:24px 30px;align-content:start;gap:3px;color:#212529;font-size:14px;line-height:19px;transform:translateY(-14px)}
.report-template-name-field input{box-sizing:border-box;width:100%;height:30px;padding:4px 9px;border:1px solid #ced4da;border-radius:4px;background:#fff;color:#344b52;font:14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif}
.report-template-editor-header-actions{display:flex;flex:none;align-self:flex-end;align-items:center;gap:8px;margin-right:-4px}
.report-template-editor-header-actions button,.report-template-editor-panel-heading button{box-sizing:border-box;min-height:32px;padding:4px 10px;border:1px solid #cdd8da;border-radius:5px;background:#fff;color:#3b6d6f;font:14px/22px "Helvetica Neue",Helvetica,Arial,sans-serif;white-space:nowrap;cursor:pointer}
.report-template-editor-header-actions button.save{border-color:#5f9ea0;background:#5f9ea0;color:#fff}
.report-template-editor-header-actions button:has(+ button[data-configuration-action="cancel-template-editor"]){width:133px}
.report-template-editor-header-actions button[data-configuration-action="cancel-template-editor"]{width:80px}
.report-template-editor-header-actions button[type="submit"]{width:92px}
.report-template-editor-header-actions button:disabled,.report-template-editor-panel-heading button:disabled{opacity:.55;cursor:not-allowed}
.report-template-editor-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:14px;min-width:0;min-height:0;padding:0 0 20px}
.report-template-editor-controls{display:grid;min-width:0;gap:12px}
.report-template-editor-panel{box-sizing:border-box;min-width:0;padding:13px 14px;border:1px solid #e0e7e8;border-radius:5px;background:#fff}
.report-template-editor-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:30px}
.report-template-editor-panel-heading h3,.report-template-editor-preview-column>h3{margin:0;color:#34484d;font-size:14px;font-weight:500;line-height:20px}
.report-template-editor-note{margin:8px 0 12px;color:#697a7e;font-size:12px;line-height:18px}
.report-template-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:9px 12px;padding:0;border:0;background:transparent}
.report-template-layout>label:not(.report-layout-footer-field):not(.report-logo-upload){display:grid;min-width:0;gap:5px;color:#536970;font-size:12px;line-height:17px}
.report-template-layout>label:has(input[type=checkbox]){display:flex;align-items:center;gap:7px;min-height:30px}
.report-template-layout input[type=checkbox]{accent-color:#619fa3}
.report-template-layout input:not([type=checkbox]),.report-template-layout select{box-sizing:border-box;min-width:0;width:100%;min-height:32px;padding:5px 7px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:#344b52;font:12px/18px "Helvetica Neue",Helvetica,Arial,sans-serif}
.report-template-layout input[type=color]{height:32px;padding:3px}
.report-template-layout>label.report-layout-footer-field,.report-template-layout>label.report-logo-upload{grid-column:1/-1}
.report-template-instructions-panel>label{display:grid;gap:6px;color:#536970;font-size:12px;line-height:17px}
.report-template-instructions-panel textarea,.report-template-section textarea,.report-template-section input,.report-template-section select{box-sizing:border-box;min-width:0;width:100%;padding:7px 9px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:#344b52;font:13px/19px "Helvetica Neue",Helvetica,Arial,sans-serif}
.report-template-instructions-panel textarea{min-height:82px;resize:vertical}
.report-template-sections{display:grid;gap:9px;margin-top:10px}
.report-template-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:9px 12px;min-width:0;margin:0;padding:10px;border:1px solid #e0e7e8;border-radius:4px;background:#fff}
.report-template-section>label{display:grid;min-width:0;gap:5px;color:#536970;font-size:12px;line-height:17px}
.report-template-section>label:nth-child(3){grid-column:1/-1}
.report-template-section textarea{min-height:58px;resize:vertical}
.report-template-section-actions{display:flex;align-items:center;gap:6px;grid-column:1/-1}
.report-template-section-actions button{min-height:28px;padding:3px 8px;border:1px solid #d5e0e1;border-radius:4px;background:#fff;color:#52666d;font:12px/18px "Helvetica Neue",Helvetica,Arial,sans-serif}
.report-template-section-actions button:disabled{opacity:.5}
.report-template-editor-preview-column{position:sticky;top:8px;display:grid;grid-template-rows:20px minmax(0,1fr);gap:14px;min-width:0;max-height:calc(100vh - 192px);overflow:auto;padding:10px 10px 20px;border:0;border-radius:0;background:#fff}
.report-template-editor-preview-column>.report-template-preview{min-width:0}
.report-template-editor-preview-column .report-layout-paper{box-sizing:border-box;width:min(100%,638px);height:679px;min-height:679px;margin:0 auto;overflow:hidden;padding:28px 34px;border-top-width:0;box-shadow:none;transform:translate(-7px,1px)}
.report-template-form [data-template-error]:empty{display:none}
@media(max-width:900px){.report-template-editor-workspace{grid-template-columns:minmax(0,1fr)}.report-template-editor-preview-column{position:static;max-height:none}.report-template-editor-preview-column .report-layout-paper{min-height:520px}}
@media(max-width:600px){.report-template-editor-header{align-items:stretch;flex-direction:column;padding:10px}.report-template-editor-header-actions{flex-wrap:wrap}.report-template-editor-header-actions button{flex:1}.report-template-editor-workspace{padding:0 8px 14px}.report-template-layout,.report-template-section{grid-template-columns:minmax(0,1fr)}.report-template-section>label:nth-child(3),.report-template-section-actions{grid-column:1}.report-template-editor-preview-column .report-layout-paper{min-height:420px}}
.marketing-points-ledger{display:grid;gap:12px;margin-top:22px;overflow-x:auto}.marketing-points-ledger h3,.marketing-points-ledger h4{margin:10px 0 0;color:#405961}.marketing-points-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.marketing-points-summary article{display:grid;gap:6px;padding:14px;border:1px solid #e1e8e9;border-radius:6px;background:#fff}.marketing-points-summary span{color:#6b7c81;font-size:12px}.marketing-points-summary strong{color:#304c54;font-size:20px}.marketing-points-table{width:100%;min-width:680px}.marketing-points-ledger{overflow-wrap:anywhere}.marketing-points-ledger .empty-state{margin:0}
@media print{@page{margin:14mm}body.printing-person-report *{visibility:hidden!important}body.printing-person-report #person-report-print-area,body.printing-person-report #person-report-print-area *{visibility:visible!important}body.printing-person-report #person-report-print-area{position:static!important;display:block!important;width:auto!important;overflow:visible!important;margin:0!important;padding:0!important;background:#fff!important;color:#24343a!important}body.printing-person-report .person-report-print-document{width:auto!important;max-width:none!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important;border:0!important;border-top:4px solid var(--report-accent,#1d9e75)!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;color:#24343a!important;break-inside:auto!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}body.printing-person-report .report-layout-header,body.printing-person-report .report-layout-signature,body.printing-person-report .report-layout-custom-footer,body.printing-person-report .report-layout-footer{break-inside:avoid}body.printing-person-report .report-layout-logo{border-style:dashed!important}body.printing-person-report .report-layout-watermark{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* La sesión ocupa el espacio de trabajo, con acciones fijas como en la referencia. */
.clinical-session-dialog{position:fixed;inset:77px 0 0 60px;width:auto;height:auto;max-width:none;max-height:none;margin:0;padding:0;overflow:auto;border:0;border-radius:0;box-shadow:none;background:#fff}
.clinical-session-dialog::backdrop{background:transparent}
.clinical-session-dialog>.clinical-session-head{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:58px;padding:8px 14px;border-bottom:1px solid #dce5e6;background:#fff}
.clinical-session-identity{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:3px 10px;min-width:0;flex:1}
.clinical-session-identity small{grid-column:1;grid-row:1;white-space:nowrap;color:#698187;letter-spacing:.06em}
.clinical-session-identity h2{grid-column:2;grid-row:1;min-width:0;margin:0!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
.clinical-session-context{grid-column:1/-1;min-width:0;overflow-wrap:anywhere;color:#6b7d82}
.clinical-session-identity .clinical-background-summary{display:block;grid-column:1/-1;margin:0;padding:5px 8px;border-left:3px solid #c69c3d;border-radius:3px;background:#fff8e9;color:#6d5928;font-size:11px;overflow-wrap:anywhere}
.clinical-session-header-actions{align-items:center;flex:none;gap:6px}
.clinical-session-incomplete{margin:0!important;white-space:nowrap;font-size:12px}
.clinical-session-header-actions>button,.clinical-session-more>button{min-height:34px;padding:0 10px;white-space:nowrap}
.clinical-session-header-actions>#save-clinical-session{border:0;background:#619fa3;color:#fff}
.clinical-session-tabs{position:static;z-index:4;margin:0;padding:0 14px;background:#fff}
.clinical-session-panel{padding:16px 14px 22px}
.clinical-session-dialog>#clinical-session-error,.clinical-session-dialog>#clinical-session-save-status{margin:8px 14px}
@media(max-width:1100px){.clinical-session-dialog{left:48px}.clinical-session-dialog>.clinical-session-head{align-items:flex-start;flex-wrap:wrap}.clinical-session-identity{flex-basis:100%}.clinical-session-header-actions{width:100%;flex-wrap:wrap}}
@media(max-width:680px){.clinical-session-dialog{inset:77px 0 0 48px}.clinical-session-dialog>.clinical-session-head{gap:7px;padding:8px}.clinical-session-identity{grid-template-columns:minmax(0,1fr);gap:3px}.clinical-session-identity small,.clinical-session-identity h2,.clinical-session-context,.clinical-session-identity .clinical-background-summary{grid-column:1;grid-row:auto}.clinical-session-identity h2{max-width:100%}.clinical-session-header-actions{gap:4px}.clinical-session-header-actions>button,.clinical-session-more>button{padding:0 7px}.clinical-session-tabs{padding:0 8px}.clinical-session-panel{padding:12px 8px 18px}}
body:has(.workspace.rail-expanded) .clinical-session-dialog{left:175px}
@media(max-width:1100px){body:has(.workspace.rail-expanded) .clinical-session-dialog{left:175px}}

.waiting-list-entry-actions{display:flex;align-items:center;gap:10px}
@media(max-width:520px){.waiting-list-entry{grid-template-columns:minmax(0,1fr)}.waiting-list-entry-actions{justify-content:space-between}}

.payment-request-dialog form{display:grid;gap:10px;margin-top:14px}.payment-request-dialog form>label{display:grid;gap:6px;color:#536970;font-size:12px}.payment-request-dialog textarea{resize:vertical;padding:9px;border:1px solid #cad7da;border-radius:5px;background:#f8fbfb;color:#40555c;font:inherit;line-height:1.45}.payment-request-total{grid-template-columns:minmax(0,1fr)}.payment-request-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.payment-request-actions button{min-height:36px;padding:0 13px;border:1px solid #d6e1e2;border-radius:5px;background:#fff;color:#43575e}.payment-request-actions button.save{border:0;background:#619fa3;color:#fff}.payment-request-actions button:disabled{opacity:.5;cursor:not-allowed}.payment-request-history-row{display:grid;grid-template-columns:1.4fr .8fr 1.5fr;gap:8px;padding:9px 10px;border-top:1px solid #e6ecee;color:#536970;font-size:12px}.payment-request-history-row:nth-child(even){background:#f8fbfb}.payment-request-dialog #payment-request-form input{min-height:38px;padding:6px 9px;border:1px solid #cad7da;border-radius:5px;background:#fff;color:#40555c;font:inherit}
@media(max-width:600px){.payment-request-history-row{grid-template-columns:1fr 1fr}.payment-request-history-row span:last-child{grid-column:1/-1}}
.commission-settlement-actions{display:flex;gap:8px;flex-wrap:wrap}.commission-settlement-actions button{min-height:36px;padding:0 12px;border:1px solid #d5e0e1;border-radius:5px;background:#fff;color:#43575e;cursor:pointer}.commission-settlement-actions button.save{border:0;background:#619fa3;color:#fff}.commission-settlement-actions button:disabled{opacity:.5;cursor:not-allowed}.commission-saved-drafts-heading{margin:24px 0 10px;color:#405961}

/* Menú lateral inspirado en la navegación visible de ByClinics. */
.rail{overflow:hidden;transition:width .18s ease;z-index:7}
.workspace.rail-expanded .rail{width:175px}
.workspace.rail-auto-hover:not(.rail-expanded) .rail:hover{width:175px}
.rail-nav-items{display:flex;flex:1;flex-direction:column;min-height:0;overflow:auto}
.rail button[data-rail-label]{display:flex;flex:0 0 35px;align-items:center;justify-content:center;gap:12px;width:100%;height:35px;padding:0;white-space:nowrap}
.rail button[data-rail-label]::after{display:none;flex:1;overflow:hidden;text-align:left;text-overflow:ellipsis;font-size:13px;font-weight:500}
.workspace.rail-expanded .rail button[data-rail-label],.workspace.rail-auto-hover:not(.rail-expanded) .rail:hover button[data-rail-label]{justify-content:flex-start;padding:0 18px}
.workspace.rail-expanded .rail button[data-rail-label]::after,.workspace.rail-auto-hover:not(.rail-expanded) .rail:hover button[data-rail-label]::after{display:block;content:attr(data-rail-label)}
.rail button[data-rail-label] svg{flex:none}
.rail-preferences{display:flex;flex-direction:column;border-top:1px solid #52656c;padding:5px 0}
.rail-utilities{display:flex;flex:none;flex-direction:column;border-top:1px solid #52656c}
.rail-utilities button[data-rail-label]{display:flex;flex:0 0 30px;align-items:center;justify-content:center;width:100%;height:30px;padding:0;white-space:nowrap}
.workspace:not(.rail-expanded) .rail-preferences{display:none}
.rail-preferences button[aria-pressed=true]{background:#50646c;color:#a8dadd}
.rail-nav-items button[hidden]{display:none}
/* Franja DEMO y posiciones que siguen la cabecera observada en ByClinics. */
:root{--clinic-chrome-height:71px}
.top{height:30px}
.demo-status-banner{box-sizing:border-box;display:flex;height:41px;min-height:41px;align-items:center;padding:0 20px;background:#fff0c1;border-bottom:1px solid #e7d9a7;color:#805f0c;font-size:13px;line-height:18px}
.workspace{height:calc(100vh - var(--clinic-chrome-height));height:calc(100dvh - var(--clinic-chrome-height))}
.external-appointments-dialog{inset:var(--clinic-chrome-height) 0 0 auto;height:calc(100vh - var(--clinic-chrome-height));height:calc(100dvh - var(--clinic-chrome-height))}
.waiting-room-dialog{inset:var(--clinic-chrome-height) 0 0 auto;height:calc(100vh - var(--clinic-chrome-height));height:calc(100dvh - var(--clinic-chrome-height));max-height:calc(100vh - var(--clinic-chrome-height));max-height:calc(100dvh - var(--clinic-chrome-height))}
.clinical-session-dialog{top:calc(var(--clinic-chrome-height) + 42px)}
@media(max-width:1100px){
  .workspace.rail-expanded .rail,.workspace:not(.rail-expanded) .rail{top:var(--clinic-chrome-height);height:min(477px,calc(100dvh - var(--clinic-chrome-height)));max-height:calc(100dvh - var(--clinic-chrome-height))}
  .workspace.rail-mobile-open::before{inset:var(--clinic-chrome-height) 0 0}
}
@media(max-width:680px){.clinical-session-dialog{top:calc(var(--clinic-chrome-height) + 42px)}}
@media print{.demo-status-banner{display:none!important}}
.rail-customize-dialog{width:min(440px,94vw);max-height:85vh;overflow:auto;border:1px solid #d8e0e2;border-radius:12px;padding:20px;color:#354c54}
.rail-customize-dialog::backdrop{background:#17272b80}
.rail-customize-dialog form{display:flex;flex-direction:column;gap:12px}
.rail-customize-dialog .dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.rail-customize-dialog h2{margin:0;font-size:20px}
.rail-customize-dialog p{margin:0;color:#63777d;font-size:13px}
.rail-customize-options{display:flex;flex-direction:column;gap:4px;max-height:55vh;overflow:auto}
.rail-customize-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:38px;border-bottom:1px solid #edf0f1}
.rail-customize-row label{display:flex;align-items:center;gap:10px;min-width:0;font-size:14px}
.person-profile-tabs-dialog{width:min(640px,94vw);max-height:86vh;overflow:auto;border:1px solid #d8e0e2;border-radius:12px;padding:20px;color:#354c54}
.person-profile-tabs-dialog::backdrop{background:#17272b80}
.person-profile-tabs-dialog form{display:flex;flex-direction:column;gap:12px}
.person-profile-tabs-dialog .dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.person-profile-tabs-dialog h2{margin:0;font-size:20px}
.person-profile-tabs-dialog p{margin:0;color:#63777d;font-size:13px;line-height:1.45}
.person-profile-tabs-dialog .person-profile-tabs-scope-note{padding:10px 12px;border-radius:6px;background:#f3f7f7}
.person-profile-tabs-options{display:grid;gap:2px;max-height:48vh;overflow:auto}
.person-profile-tabs-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;padding:3px 0;border-bottom:1px solid #edf0f1}
.person-profile-tabs-row>span{min-width:0;overflow-wrap:anywhere;font-size:14px}
.person-profile-tabs-row[aria-disabled="true"]>span{font-weight:600;color:#31464d}
.person-profile-tabs-row-controls{display:flex;gap:5px;flex-shrink:0}
.person-profile-tabs-row-controls button{min-width:34px;min-height:32px;padding:0 8px}
.person-profile-tabs-hidden-heading{margin:14px 0 4px!important;font-weight:700;color:#405a62!important}
.person-profile-tabs-empty{padding:8px 0;color:#718188;font-size:13px}
.person-profile-tabs-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.person-profile-tabs-actions>span{flex:1}
.person-appointments-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 12px;padding:12px;border:1px solid #e1e8e9;border-radius:7px;background:#f8fbfb}
.person-timeline-toolbar{display:grid;gap:10px;margin:0 0 14px;padding:12px;border:1px solid #e1e8e9;border-radius:7px;background:#f8fbfb}
.person-timeline-filters,.person-timeline-filter-group,.person-timeline-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.person-timeline-filter-group{padding:4px 8px;border-left:1px solid #dce5e6}
.person-timeline-filter-group small{color:#72858a;font-size:10px;font-weight:700;letter-spacing:.05em}
.person-timeline-toolbar button{min-height:32px;padding:0 9px;border:1px solid #d8e1e3;border-radius:5px;background:#fff;color:#43575e}
.person-timeline-toolbar button.active{border-color:#97c5b8;background:#eaf5f1;color:#286c5b}
.person-timeline-toolbar button:disabled{opacity:.45;cursor:not-allowed}
.person-appointments-range,.person-appointments-toolbar-actions{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap}
.person-appointments-range label{display:grid;gap:4px;font-size:12px;color:#65797e}
.person-appointments-range input{min-height:34px;padding:5px 8px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:#354c54;font:inherit}
.person-appointments-toolbar button,.person-appointment-card button{min-height:34px;padding:0 10px;border:1px solid #d8e1e3;border-radius:5px;background:#fff;color:#43575e}
.person-appointments-columns-wrap{position:relative}
.person-appointments-columns-menu{position:absolute;z-index:15;top:calc(100% + 5px);right:0;display:grid;gap:7px;width:min(260px,84vw);max-height:55vh;overflow:auto;padding:12px;border:1px solid #d8e1e3;border-radius:7px;background:#fff;box-shadow:0 8px 24px #20343b26}
.person-appointments-columns-menu[hidden]{display:none}
.person-appointments-columns-menu label{display:flex;align-items:center;gap:8px;color:#43575e;font-size:13px}
.person-appointments-column-group{display:grid;gap:7px;padding-bottom:8px;border-bottom:1px solid #edf0f1}
.person-appointments-column-group>strong{font-size:11px;letter-spacing:.04em;color:#72858a}
.person-appointments-columns-menu input{margin:0}
.person-appointments-table-scroll{width:100%;overflow:auto}
.person-appointments-table{min-width:760px}
.person-appointments-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}
.person-appointment-card h4{margin:0 0 10px;color:#405a62}
.person-appointment-card p{margin:6px 0;color:#52666d;overflow-wrap:anywhere}
.person-appointment-card button{margin-top:8px}
.person-timeline-month{margin:18px 0 8px;color:#718287;font-size:12px;font-weight:700;letter-spacing:.06em}
.person-timeline-card{position:relative;margin:0 0 10px;padding:14px 16px;border-left:3px solid #7bb8a5}
.person-timeline-card h4{margin:0 0 10px;color:#405a62}
.person-timeline-card p{margin:6px 0;color:#52666d;overflow-wrap:anywhere}
.person-timeline-initials{display:inline-grid;place-items:center;width:30px;height:30px;margin:0 0 8px;border-radius:50%;background:#e8f1ee;color:#527d70;font-size:11px;font-weight:700}
@media print{.person-appointments-toolbar,.person-timeline-toolbar,.person-profile-head,.person-profile-tabs{display:none!important}.person-profile-view{position:static!important;overflow:visible!important}.person-appointments-table-scroll{overflow:visible}.person-appointments-table{min-width:0}}
@media(max-width:600px){.person-profile-tabs-dialog{padding:16px}.person-profile-tabs-actions>span{display:none}.person-profile-tabs-actions button{flex:1}}
.rail-customize-order{display:flex;gap:4px}
.rail-customize-order button{width:30px;height:30px;border:1px solid #d9e0e2;border-radius:6px;background:#fff;color:#425b63}
.rail-customize-order button:disabled{opacity:.35;cursor:default}
.rail-customize-actions{display:flex;justify-content:flex-end;gap:8px}
@media(max-width:1100px){.workspace:not(.rail-expanded) .rail{width:48px}.workspace.rail-expanded .rail{width:210px}}
@media(max-width:650px){.workspace.rail-expanded .rail{width:190px}}

.appointment-tasks-help{margin:0 0 12px;color:#5f7278;font-size:13px}.appointment-tasks-compose{padding:12px;border:1px solid #d6e7e7;border-radius:9px;background:#f0f8f7}.appointment-tasks-selectors{display:grid;grid-template-columns:minmax(150px,220px) minmax(150px,220px);gap:8px}.appointment-tasks-compose label{display:grid;gap:4px;color:#62777c;font-size:12px}.appointment-tasks-compose select,.appointment-tasks-compose input{min-width:0;min-height:34px;padding:7px 9px;border:1px solid #d2dfe1;border-radius:5px;background:#fff;color:#52666c;font:inherit}.appointment-tasks-compose :disabled{opacity:.68}.appointment-tasks-title-row{display:flex;gap:8px;margin:14px 0 8px}.appointment-tasks-title-row input{flex:1}.appointment-tasks-title-row button{border:0;border-radius:6px;background:#69a4a5;color:#fff;padding:0 14px}.appointment-tasks-meta{display:grid;grid-template-columns:110px minmax(140px,1fr) 150px;gap:8px}.appointment-tasks-meta select[multiple]{min-height:34px}.appointment-tasks-empty{margin:10px 0;color:#6d7c81;font-size:13px}.appointment-task-list{display:grid;gap:8px;margin-top:12px}.appointment-task-card{padding:10px 12px;border:1px solid #dfe8e9;border-radius:7px;background:#fff}.appointment-task-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.appointment-task-check{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:8px!important;color:#40565d!important;font-size:13px!important}.appointment-task-check input{flex:0 0 auto;min-width:0;min-height:auto;margin:2px 0 0;accent-color:#5d9d9f}.appointment-task-check strong{font-weight:600;overflow-wrap:anywhere}.appointment-task-card.is-completed .appointment-task-check strong{text-decoration:line-through;color:#78878b}.appointment-task-remove{border:0;background:transparent;color:#73858b;font-size:12px;text-decoration:underline;cursor:pointer}.appointment-task-details{margin:6px 0 0 23px;color:#718187;font-size:11px}.appointment-task-card.is-completed .appointment-task-details{color:#859296}@media(max-width:560px){.appointment-tasks-selectors{grid-template-columns:1fr 1fr}.appointment-tasks-meta{grid-template-columns:1fr 1fr}.appointment-tasks-meta label:nth-child(2){grid-column:1/-1}}

.appointment-tasks-panel{box-sizing:border-box;width:calc(100% + 14px);height:139.266px;min-height:139.266px;transform:translateX(-10px);padding:11px 13px;border:1px solid #dfe6e7;border-radius:7px;background:#fff}
.appointment-tasks-before-save{box-sizing:border-box;display:flex;height:115.266px;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1px dashed #d4e1e1;border-radius:9px;background:#f1f8f7;color:#5f9ea0;text-align:center}
.appointment-tasks-before-save>span{font-size:24px;font-weight:400;line-height:24px}
.appointment-tasks-before-save>p{margin:0;color:#5f9ea0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:15.2px;font-weight:600;line-height:21.28px}
@media(max-width:760px){.appointment-tasks-panel{width:100%;height:auto;min-height:139.266px;transform:none}.appointment-tasks-before-save{min-height:110px;height:auto;padding:18px}}

#clinical-session-print-area{display:none}
.clinical-session-print-document{max-width:800px;margin:0 auto;padding:30px 38px;color:#24343a;font:12pt/1.5 Arial,sans-serif}
.clinical-session-print-document header{padding-bottom:14px;border-bottom:2px solid #619fa3}
.clinical-session-print-document header small{color:#61777d;letter-spacing:.08em}
.clinical-session-print-document h1{margin:8px 0;color:#344d55;font-size:22pt}
.clinical-session-print-document header p{margin:4px 0;color:#607378}
.clinical-session-print-state{display:inline-block;margin-top:6px;color:#7b6430;font-size:10pt}
.clinical-session-print-document section{margin:18px 0;break-inside:avoid}
.clinical-session-print-document h2{margin:0 0 6px;padding-bottom:4px;border-bottom:1px solid #dce5e6;color:#4d6c72;font-size:12pt}
.clinical-session-print-text,.clinical-session-print-richtext{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.clinical-session-print-richtext p{margin:0 0 8pt}.clinical-session-print-richtext ul,.clinical-session-print-richtext ol{padding-left:24px}
.clinical-session-print-disclaimer{margin-top:28px;padding-top:8px;border-top:1px solid #dce5e6;color:#718187;font-size:9pt}
@media print{@page{margin:14mm}body.printing-clinical-session *{visibility:hidden!important}body.printing-clinical-session #clinical-session-print-area,body.printing-clinical-session #clinical-session-print-area *{visibility:visible!important}body.printing-clinical-session #clinical-session-print-area{position:static!important;display:block!important;width:auto!important;overflow:visible!important;margin:0!important;padding:0!important;background:#fff!important;color:#24343a!important}body.printing-clinical-session .clinical-session-print-document{width:auto!important;max-width:none!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;color:#24343a!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}

.followup-editor-draft{display:grid;gap:8px;margin:0 0 8px;padding:0 0 15px;border:0;border-radius:0;background:transparent}
.followup-editor-quick-row{display:flex;align-items:center;justify-content:space-between;min-height:34px;gap:12px;color:#63777c;font-size:12px}
.followup-editor-quick-add{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.followup-editor-quick-add button{min-height:28px;padding:0 9px;border:1px solid #d6e1e3;border-radius:4px;background:#fff;color:#4f777b;font:inherit;font-size:12px;line-height:18px;cursor:pointer}
.followup-editor-quick-add button:hover,.followup-editor-quick-add button:focus-visible{border-color:#79aaaa;background:#f4f9f8;outline:none}
.followup-editor-quick-add{position:relative;top:9px}
.followup-editor-fields{display:grid;grid-template-columns:max-content minmax(180px,1fr) auto 30px;align-items:center;gap:8px;height:33px;margin-top:30px}
.followup-editor-draft label{display:grid;min-width:0;gap:4px;color:#586d72;font-size:12px}
.followup-editor-draft input,.followup-editor-draft select,.followup-editor-draft textarea{box-sizing:border-box;width:100%;min-height:32px;padding:5px 8px;border:1px solid #ccd9db;border-radius:4px;background:#fff;color:#40575d;font:inherit;font-size:13px;line-height:19px}
.followup-editor-interval-group{display:flex;align-items:center;gap:8px;white-space:nowrap;color:#586d72;font-size:12px}
.followup-editor-interval-group>span{width:72px;white-space:normal;line-height:14px}
.followup-editor-interval-group input{width:62px;min-width:62px;flex:none;text-align:center}
.followup-editor-interval-group select{width:110px;min-width:110px;flex:none}
.followup-editor-date{display:flex!important;align-items:center;gap:8px;white-space:nowrap}
.followup-editor-date input{width:180px;min-width:180px}
.followup-editor-message{grid-column:1/-1;margin:0}
.followup-editor-draft textarea{min-height:50px;resize:vertical}
.followup-editor-draft p{margin:0;color:#687c81;font-size:12px}
.followup-editor-audience{display:flex;align-items:center;gap:4px;min-height:32px;white-space:nowrap}
.followup-editor-audience{justify-content:flex-end}
.followup-editor-audience button{min-height:27px;padding:0 9px;border:1px solid #d6e1e3;border-radius:14px;background:#fff;color:#607278;font:inherit;font-size:12px;line-height:18px;cursor:pointer}
.followup-editor-audience button[aria-pressed="true"]{border-color:#b6d3d3;background:#eaf4f3;color:#08756e}
.followup-editor-audience button:first-child{width:97px}.followup-editor-audience button:last-child{width:68px}
.followup-editor-cancel{width:30px;height:30px;min-height:30px;margin-right:9px;padding:0;border:1px solid #d8e2e3;border-radius:4px;background:#fff;color:#62777c;font:inherit;font-size:22px;line-height:26px;cursor:pointer}
.followup-editor-actions{display:flex;justify-content:flex-start;gap:8px;margin-top:26px}
.followup-editor-actions button{min-height:32px;padding:0 12px;border:1px solid #d8e2e3;border-radius:4px;background:#fff;color:#50666b}
.followup-editor-actions button.save{border-color:#68a1a3;background:#68a1a3;color:#fff}
@media(max-width:760px){.followup-editor-quick-row{align-items:flex-start;flex-direction:column;gap:6px}.followup-editor-quick-add{top:0}.followup-editor-fields{height:auto;grid-template-columns:1fr auto;margin-top:12px}.followup-editor-interval-group{grid-column:1/-1;flex-wrap:wrap}.followup-editor-date{grid-column:1/-1;flex-wrap:wrap}.followup-editor-audience{grid-column:1/-1;justify-content:flex-start;flex-wrap:wrap}.followup-editor-cancel{grid-column:2;justify-self:end}.followup-editor-actions{margin-top:8px}}

.custom-forms-toolbar{margin-top:10px}.custom-forms-toolbar>#custom-form-search{height:34px;min-width:220px;flex:1;max-width:440px;padding:0 10px;border:1px solid #cad7da;border-radius:5px;background:#fff;color:#344b52;font:inherit}.custom-form-filters{display:flex;gap:4px}.custom-form-filters button{min-height:32px;border:1px solid #d8e1e3;border-radius:5px;background:#fff;color:#52666d;padding:0 10px}.custom-form-filters button.active{background:#e1f0ef;color:#4a888a;border-color:#89b7b8}.custom-forms-table td:first-child{min-width:170px}.custom-form-empty{max-width:720px}.custom-form-empty strong{display:block;margin-bottom:8px}.custom-form-empty p{margin:8px auto 18px;max-width:560px}.custom-form-editor{display:grid;gap:16px;max-width:1100px;padding:16px 0}.custom-form-editor h3{margin:4px 0 0;color:#405961}.custom-form-basic-fields{display:grid;grid-template-columns:repeat(2,minmax(230px,1fr));gap:12px;padding:16px;border:1px solid #dfe7e8;border-radius:7px;background:#fff}.custom-form-basic-fields>label,.custom-form-field-card>label,.custom-form-section-form>label{display:grid;gap:5px;color:#536970;font-size:12px}.custom-form-basic-fields input,.custom-form-basic-fields select,.custom-form-basic-fields textarea,.custom-form-field-card input:not([type=checkbox]),.custom-form-field-card textarea,.custom-form-section-form input{width:100%;min-width:0;min-height:35px;padding:7px 9px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:#344b52;font:inherit}.custom-form-basic-fields textarea,.custom-form-field-card textarea{resize:vertical}.custom-form-basic-fields>label:first-child{grid-column:1/-1;grid-template-columns:1fr auto;align-items:end}.custom-form-basic-fields>label:first-child select{grid-column:1}.custom-form-basic-fields>label:first-child button{grid-column:2;grid-row:2;min-height:35px}.custom-form-description{grid-column:1/-1}.custom-form-palette{display:flex;gap:7px;flex-wrap:wrap;padding:12px;border:1px solid #e0e7e8;border-radius:6px;background:#f7faf9}.custom-form-palette button{min-height:34px;padding:5px 10px;border:1px solid #d4e0e1;border-radius:5px;background:#fff;color:#47656b}.custom-form-field-list{display:grid;gap:10px}.custom-form-field-card{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:10px;padding:14px;border:1px solid #dce5e6;border-radius:7px;background:#fff}.custom-form-field-card legend{padding:0 6px;color:#4d777b;font-weight:700}.custom-form-field-footer{grid-column:1/-1;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:8px;border-top:1px solid #edf0f1}.custom-form-field-footer button{min-height:30px;border:1px solid #d7e2e3;border-radius:5px;background:#fff;color:#4d777b;padding:4px 9px}.custom-form-field-footer button:disabled{opacity:.45}.custom-form-required{display:flex;align-items:center;gap:4px;margin-right:auto;color:#536970;font-size:12px}.custom-form-field-footer small{color:#697b80}.custom-forms-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:#132c334d}.custom-form-sections-panel{width:min(560px,96vw);max-height:86vh;overflow:auto;padding:22px;border:1px solid #d9e3e4;border-radius:8px;background:#fff;box-shadow:0 14px 44px #10242a40}.custom-form-sections-panel h3{margin:0 0 6px;color:#354c53}.custom-form-sections-panel>p{color:#63767c;font-size:13px}.custom-form-section-form{display:flex;align-items:end;gap:8px;margin:16px 0}.custom-form-section-form>label{flex:1}.custom-form-section-form button{min-height:35px}.custom-form-section-list{display:grid;gap:4px;margin:12px 0}.custom-form-section-row{display:flex;align-items:center;gap:10px;padding:10px;border-bottom:1px solid #e8eeee;color:#40565d}.custom-form-section-row small{margin-left:auto;color:#718187}.custom-form-section-row button{border:1px solid #d9e2e3;border-radius:4px;background:#fff;color:#60777e;padding:5px 8px}.custom-form-sections-panel>.secondary{min-height:34px;border:1px solid #d7e2e3;border-radius:5px;background:#f8fafb;color:#43575e;padding:0 12px}
@media(max-width:680px){.custom-form-basic-fields,.custom-form-field-card{grid-template-columns:1fr}.custom-form-basic-fields>label:first-child,.custom-form-description,.custom-form-field-footer{grid-column:1}.custom-forms-toolbar{height:auto}.custom-form-filters{flex-wrap:wrap}.custom-form-section-form{align-items:stretch;flex-direction:column}.custom-form-section-row{flex-wrap:wrap}}
.custom-form-section-control{display:grid;grid-column:1/-1;grid-template-columns:minmax(180px,1fr) auto;align-items:end;gap:8px}.custom-form-section-control>label{display:grid;gap:5px;color:#536970;font-size:12px}.custom-form-section-control>button{min-height:35px}
@media(max-width:680px){.custom-form-section-control{grid-column:1;grid-template-columns:1fr auto}}
.custom-form-response-card{display:grid;gap:12px;margin:14px 0;padding:16px;border:1px solid #dce5e6;border-radius:7px;background:#fff;color:#40565d}.custom-form-response-card>h3{margin:0;color:#405a62}.custom-form-response-form{display:grid;gap:10px;padding:14px;border:1px solid #e2e9ea;border-radius:6px;background:#f8fbfa}.custom-form-response-form h4{margin:0;color:#405a62}.custom-form-response-form label{display:grid;gap:5px;color:#536970;font-size:13px}.custom-form-response-form input:not([type=checkbox]),.custom-form-response-form select,.custom-form-response-form textarea{width:100%;min-height:36px;padding:8px 10px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:#344b52;font:inherit}.custom-form-response-form textarea{resize:vertical}.custom-form-response-form .custom-form-static{margin:4px 0;color:#405a62}.custom-form-answer-help{color:#718188}.custom-form-response-actions{display:flex;gap:8px;flex-wrap:wrap}.custom-form-response-actions button{min-height:34px;padding:0 11px;border:1px solid #d8e1e3;border-radius:5px;background:#fff;color:#52666d}.custom-form-response-actions button.save{background:#619fa3;border-color:#619fa3;color:#fff}.custom-form-response-record{display:grid;gap:8px;padding:12px;border-top:1px solid #e7eded}.custom-form-response-record h4{margin:0;color:#4d777b}.custom-form-response-values{display:grid;grid-template-columns:minmax(140px,1fr) 2fr;gap:5px 12px;margin:0}.custom-form-response-values dt{color:#718188;font-size:12px}.custom-form-response-values dd{margin:0;overflow-wrap:anywhere;color:#334951}.custom-form-response-card>.form-note{margin:0}
@media(max-width:680px){.custom-form-response-values{grid-template-columns:1fr}.custom-form-response-values dd{margin-bottom:7px}}
.custom-form-signature{display:grid;gap:8px;margin:0;padding:10px;border:1px solid #d5e0e1;border-radius:5px;background:#fff}.custom-form-signature legend{padding:0 5px;color:#536970;font-size:13px}.custom-form-signature canvas{display:block;width:100%;height:160px;border:1px solid #cad7da;border-radius:4px;background:linear-gradient(#fff,#fff) padding-box,repeating-linear-gradient(transparent 0 34px,#eef2f2 35px 36px);touch-action:none;cursor:crosshair}.custom-form-signature-clear{justify-self:start;min-height:32px;padding:0 10px;border:1px solid #d8e1e3;border-radius:5px;background:#fff;color:#52666d}.custom-form-signature-preview{display:block;width:min(100%,420px);height:100px;border:1px solid #e1e8e9;border-radius:4px;background:#fff}
.clinical-session-form-menu-group{display:grid;gap:2px;padding:4px}.clinical-session-form-menu-group+.clinical-session-form-menu-group{border-top:1px solid #e8eeee}.clinical-session-form-menu-group>small{padding:4px 8px;color:#718188;font-size:11px}.clinical-session-forms-empty{margin:4px;padding:8px;color:#718188;font-size:12px}.clinical-session-panel[data-clinical-session-panel="forms"]{margin-top:14px;padding:14px;border:1px solid #dce5e6;border-radius:7px;background:#fbfdfd}.clinical-session-panel[data-clinical-session-panel="forms"]>button[data-close-clinical-session-form]{justify-self:start;min-height:34px;padding:0 10px;border:1px solid #d8e1e3;border-radius:5px;background:#fff;color:#52666d}
.support-view{display:grid;gap:18px;max-width:1480px;margin:0 auto;padding:14px 0 36px;color:#34494f}.support-view[hidden],[data-support-panel][hidden],#support-guide-article[hidden]{display:none!important}.support-page-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px;border:1px solid #dce8e7;border-radius:10px;background:#eef6f5}.support-page-identity{display:flex;align-items:center;gap:12px;min-width:0}.support-page-icon{display:grid;width:40px;height:40px;place-items:center;border-radius:8px;background:#d8ece9;color:#4e9997;font-size:24px}.support-page-header h1{margin:0;font-size:18px}.support-page-header p{margin:3px 0 0;color:#73858a;font-size:12px}.support-page-controls{display:flex;align-items:center;gap:12px}.support-floating-toggle{display:flex;align-items:center;gap:7px;color:#60757a;font-size:12px}.support-floating-toggle input{accent-color:#62a4a0}.support-page-controls>button,.support-quick-actions button,.support-ticket-filters>button,.support-ticket-form-actions button{min-height:34px;padding:0 12px;border:1px solid #d8e1e2;border-radius:6px;background:#fff;color:#607278;font:inherit;font-size:12px}.support-home>h2{margin:4px 0 12px;text-align:center;font-size:18px}.support-search{display:flex;justify-content:center;gap:8px;max-width:620px;margin:0 auto}.support-search input{flex:1;min-width:0;min-height:38px;padding:8px 13px;border:1px solid #d5e0e1;border-radius:22px;background:#fff;color:#40575d;font:inherit;font-size:13px}.support-search button{min-width:98px;border:0;border-radius:20px;background:#63a5a2;color:#fff;font:inherit;font-size:13px}.support-quick-actions{display:flex;justify-content:center;gap:8px;margin:10px 0 18px;flex-wrap:wrap}.support-quick-actions button{border-radius:18px}.support-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.support-feature-card{display:grid;justify-items:center;align-content:center;gap:7px;min-height:112px;padding:14px;border:1px solid #e2e8e8;border-radius:11px;background:#fff;color:#344a50;box-shadow:0 6px 18px #1e404008;cursor:pointer;text-align:center}.support-feature-card:hover,.support-result-card:hover{border-color:#9cc6c4;background:#fbfdfd}.support-feature-card>strong{color:#64a4a1;font-size:25px}.support-feature-card>b{font-size:15px}.support-feature-card>span{color:#7a8b8f;font-size:12px}.support-callout{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:-5px;padding:15px 18px;border:1px solid #e2e8e8;border-left:5px solid #68a8a5;border-radius:10px;background:#fff;box-shadow:0 5px 15px #1e404008}.support-callout strong{font-size:14px}.support-callout p{margin:4px 0 0;color:#73848a;font-size:12px}.support-callout button{min-height:36px;padding:0 13px;border:0;border-radius:7px;background:#68a8a5;color:#fff;font:inherit;font-size:12px}.support-callout button:disabled{opacity:.55;cursor:not-allowed}.support-offer{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:130px;padding:17px 20px;border:1px solid #e4e8e8;border-left:5px solid #e78f69;border-radius:10px;background:#fff;box-shadow:0 5px 16px #1e404008}.support-offer small{color:#9f755c;font-size:10px;font-weight:700;letter-spacing:.08em}.support-offer h2{margin:7px 0 5px;font-size:16px}.support-offer p{max-width:700px;margin:0;color:#6d7c80;font-size:12px;line-height:1.5}.support-offer>span{display:grid;width:130px;height:74px;place-items:center;border-radius:8px;background:linear-gradient(160deg,#ecf5f4 0 38%,#d5e8e5 38% 60%,#f8eee7 60%);color:#65a19e;font-size:38px}.support-open-tickets{padding-top:10px;border-top:1px solid #e6ecec}.support-open-tickets h2{margin:0 0 8px;font-size:15px}.support-open-tickets p{margin:0;color:#718186;font-size:12px}.support-open-tickets button{margin-top:8px;padding:0;border:0;background:none;color:#497e82;font:inherit;font-size:12px;text-decoration:underline;cursor:pointer}.support-subpage{display:grid;gap:14px}.support-subpage-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.support-subpage-heading h2{margin:0;font-size:20px}.support-subpage-heading p{margin:5px 0 0;color:#718287;font-size:13px}.support-tickets-heading{align-items:center}.support-tickets-heading .save,.support-ticket-empty .save{min-height:37px;padding:0 14px;border:0;border-radius:6px;background:#65a3a0;color:#fff;font:inherit}.support-guide-categories{display:flex;gap:7px;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid #e3eaea}.support-guide-categories button{padding:7px 11px;border:1px solid #dce5e6;border-radius:18px;background:#fff;color:#5c7278;font:inherit;font-size:12px;cursor:pointer}.support-results{display:grid;gap:8px}.support-result-card{display:grid;gap:5px;padding:13px 15px;border:1px solid #e0e7e8;border-radius:7px;background:#fff;text-align:left;cursor:pointer}.support-result-card small,.support-article>small,.support-tutorial-card>small{color:#6d9998;font-size:11px}.support-result-card strong{color:#3e5960;font-size:14px}.support-result-card span{color:#748489;font-size:12px}.support-article{display:grid;gap:9px;padding:18px;border:1px solid #e0e8e8;border-radius:9px;background:#fff}.support-article h3{margin:0;color:#405b62;font-size:19px}.support-article p{margin:0;color:#61777d;font-size:13px;line-height:1.6}.support-local-note{padding:10px 12px;border-radius:6px;background:#eef6f5;color:#687f84!important;font-size:12px!important}.support-tutorial-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.support-tutorial-card{padding:16px;border:1px solid #e2e9e9;border-radius:9px;background:#fff}.support-tutorial-card h3{margin:6px 0;color:#405b62;font-size:15px}.support-tutorial-card ol{display:grid;gap:7px;margin:8px 0 0;padding-left:20px;color:#62777d;font-size:12px;line-height:1.5}.support-ticket-filters{display:flex;align-items:center;gap:15px;flex-wrap:wrap;padding:11px 13px;border:1px solid #e3e9e9;border-radius:7px;background:#f8fbfa}.support-ticket-filters label{display:flex;align-items:center;gap:6px;color:#61757a;font-size:12px}.support-ticket-filters input{accent-color:#63a5a2}.support-ticket-status{margin:0;color:#708186;font-size:12px}.support-ticket-list{display:grid;gap:8px}.support-ticket-row{display:grid;gap:5px;padding:13px 15px;border:1px solid #e0e8e8;border-radius:7px;background:#fff;text-align:left;cursor:pointer}.support-ticket-row strong{color:#405b62}.support-ticket-row span,.support-ticket-row small{color:#73858a;font-size:12px}.support-ticket-row small{color:#669492}.support-ticket-dialog{width:min(620px,calc(100vw - 30px));max-width:none;max-height:calc(100vh - 28px);overflow:auto;padding:20px;border:1px solid #dce5e6;border-radius:10px;box-shadow:0 18px 55px #18343b40;color:#34494f}.support-ticket-dialog::backdrop{background:#18343b66}.support-ticket-dialog form{display:grid;gap:12px}.support-ticket-dialog .dialog-head{align-items:flex-start}.support-ticket-dialog .dialog-head small{color:#698187;letter-spacing:.08em}.support-ticket-dialog .dialog-head h2{margin:3px 0}.support-ticket-dialog h3{margin:2px 0 0;font-size:15px}.support-ticket-dialog form>p{margin:0;color:#718287;font-size:12px;line-height:1.5}.support-ticket-dialog form>label{display:grid;gap:6px;color:#5b7076;font-size:12px}.support-ticket-dialog input,.support-ticket-dialog select,.support-ticket-dialog textarea{width:100%;min-height:38px;padding:8px 10px;border:1px solid #d0dcde;border-radius:5px;background:#fff;color:#3e555b;font:inherit}.support-ticket-dialog textarea{resize:vertical}.support-ticket-form-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:12px;border-top:1px solid #e5ebeb}.support-ticket-form-actions .save{border:0;background:#65a3a0;color:#fff}.support-ticket-empty{padding:24px;text-align:center}.support-floating-help{position:fixed;right:23px;bottom:20px;z-index:30;display:grid;width:48px;height:48px;place-items:center;border:0;border-radius:50%;background:#66a5a2;color:#fff;box-shadow:0 5px 16px #243f4430;font-size:24px;cursor:pointer}.support-floating-help[hidden]{display:none!important}@media(max-width:760px){.support-view{padding-top:8px}.support-page-header{align-items:flex-start;flex-direction:column}.support-page-controls{width:100%;justify-content:space-between}.support-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.support-offer>span{width:75px;height:60px}.support-tutorial-list{grid-template-columns:1fr}.support-tickets-heading{align-items:flex-start;flex-direction:column}.support-ticket-filters{align-items:flex-start;flex-direction:column}}

.support-assistant{min-height:360px;align-content:start;gap:18px}.support-assistant-intro{display:flex;align-items:flex-start;gap:13px;max-width:760px;margin:10px auto 0}.support-assistant-avatar{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border:1px solid #e3e8e8;border-radius:50%;background:#fff;color:#548f8e;font-size:22px}.support-assistant-intro h2{margin:0 0 5px;color:#435b60;font-size:20px}.support-assistant-intro p{margin:0;color:#708186;font-size:13px;line-height:1.55}.support-assistant-suggestions{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;color:#75868a;font-size:12px}.support-assistant-suggestions button{padding:7px 11px;border:1px solid #dce5e6;border-radius:18px;background:#fff;color:#52777a;font:inherit;font-size:12px;cursor:pointer}.support-assistant-suggestions button:hover{border-color:#9cc6c4;background:#f7fbfa}.support-assistant-transcript{display:grid;gap:12px;width:min(760px,100%);margin:0 auto}.support-assistant-message{max-width:88%;margin:0;padding:12px 15px;border-radius:10px;font-size:13px;line-height:1.55}.support-assistant-question{justify-self:end;background:#eaf3f2;color:#425d61}.support-assistant-answer{display:grid;gap:7px;justify-self:start;border:1px solid #e2e9e9;background:#fff;color:#536a70}.support-assistant-answer>small:first-child{color:#67908f;font-size:11px}.support-assistant-answer strong{color:#405a60;font-size:14px}.support-assistant-answer p{margin:0}.support-assistant-answer .support-local-note{margin-top:3px}.support-assistant-form{display:flex;gap:8px;width:min(760px,100%);margin:0 auto;padding:7px;border:1px solid #d9e3e4;border-radius:25px;background:#fff;box-shadow:0 3px 12px #2340440b}.support-assistant-form input{flex:1;min-width:0;height:38px;padding:0 12px;border:0;outline:none;background:transparent;color:#435a60;font:inherit;font-size:13px}.support-assistant-form button{width:38px;height:38px;padding:0;border:0;border-radius:50%;background:#66a5a2;color:#fff;font-size:17px;cursor:pointer}.support-assistant-form button:hover{background:#528f8d}
@media(max-width:760px){.support-assistant{min-height:300px}.support-assistant-suggestions{justify-content:flex-start}.support-assistant-message{max-width:96%}}
.support-guided-tutorial{width:min(560px,calc(100vw - 28px));padding:22px;border:1px solid #dce7e7;border-radius:12px;color:#40575c;box-shadow:0 18px 60px #18343826}.support-guided-tutorial::backdrop{background:#18343870}.support-guided-tutorial .dialog-head{align-items:flex-start}.support-guided-tutorial .dialog-head small{color:#67908f;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.support-guided-tutorial .dialog-head h2{margin:4px 0 0;font-size:21px}.support-guided-tutorial-progress{margin:6px 0 0;color:#788b8f;font-size:11px;font-weight:700;letter-spacing:.04em}.support-guided-tutorial-body{min-height:100px;margin:18px 0;padding:16px;border:1px solid #e1e9e9;border-radius:8px;background:#f7faf9;color:#52686d;line-height:1.65}.support-guided-tutorial-actions{display:flex;justify-content:space-between;gap:10px}.support-guided-tutorial-actions button,.support-guided-tutorial-button{min-height:38px;padding:0 14px;border:1px solid #d7e3e2;border-radius:6px;background:#fff;color:#4c696c;cursor:pointer}.support-guided-tutorial-actions button.save,.support-guided-tutorial-button{border-color:#70aaa6;background:#70aaa6;color:#fff}.support-guided-tutorial-actions button:disabled{opacity:.45;cursor:not-allowed}.support-guided-tutorial-button{margin-top:4px}

.agenda-area{position:relative;padding-left:202px}.calendar-group-filter{position:absolute;top:0;bottom:0;left:0;width:192px;overflow:auto;border-right:1px solid #e1e7e8;background:#fff;padding:14px 10px 24px}.calendar-group-filter-heading{padding:0 8px 9px;color:#829397;font-size:10px;font-weight:700;letter-spacing:.08em}.calendar-group-filter>button{display:flex;width:100%;height:auto;min-height:34px;align-items:center;gap:8px;border:0;border-radius:5px;background:#f4f7f7;color:#40535c;padding:7px 9px;text-align:left;font:inherit;cursor:pointer}.calendar-group-filter>button span:first-child{flex:1}.calendar-group-filter>button span:nth-child(2){color:#7b8b8e;font-size:11px}.calendar-group-filter>button[aria-expanded=false] span:last-child{transform:rotate(-90deg)}.calendar-group-filter-all,.calendar-group-filter-option{display:flex;align-items:center;gap:8px;min-height:32px;margin:0;padding:5px 9px;color:#40535c;font-size:12px;cursor:pointer}.calendar-group-filter-all{margin-top:5px;border-bottom:1px solid #edf0f1;font-weight:600}.calendar-group-filter-option{padding-left:20px}.calendar-group-filter input{accent-color:#669fa2}.calendar-group-filter-empty{padding:2px 9px}#calendar-group-filter-options[hidden]{display:none}
@media(max-width:850px){.agenda-area{padding-left:0}.calendar-group-filter{position:relative;top:auto;bottom:auto;left:auto;width:auto;max-height:160px;border-right:0;border-bottom:1px solid #e1e7e8;padding:8px 10px}.calendar-group-filter-heading{padding-bottom:5px}}
.calendar-group-filter-status{margin:6px 8px 0;color:#a64c3d;font-size:11px;line-height:1.4}
.appointment-list-filter{margin-left:5px;padding:1px 5px;border:1px solid #d4dfdf;border-radius:4px;background:#fff;color:#60767a;font-size:11px;cursor:pointer}.appointment-list-filter:hover,.appointment-list-filter:focus-visible{border-color:#65a3a0;color:#327b78}.appointment-list-filter-dialog{width:min(460px,calc(100vw - 28px));max-width:none;padding:20px;border:1px solid #dce5e6;border-radius:10px;box-shadow:0 18px 55px #18343b40;color:#34494f}.appointment-list-filter-dialog::backdrop{background:#18343b66}.appointment-list-filter-dialog form{display:grid;gap:10px}.appointment-list-filter-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.appointment-list-filter-heading h2{margin:0;font-size:18px}.appointment-list-filter-dialog label{color:#5b7076;font-size:12px}.appointment-list-filter-dialog select,.appointment-list-filter-dialog input{width:100%;min-height:38px;padding:8px 10px;border:1px solid #d0dcde;border-radius:5px;background:#fff;color:#3e555b;font:inherit}.appointment-list-filter-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:12px;border-top:1px solid #e5ebeb}.appointment-list-filter-actions .save{border:0;background:#65a3a0;color:#fff}
.appointment-list-filter.active{border-color:#65a3a0;background:#e5f1f0;color:#327b78}

.marketing-level-preview{display:grid;gap:8px;overflow-x:auto}.marketing-level-preview h4{margin:4px 0 0;color:#405961;font-size:13px}.marketing-level-preview .form-note{margin:0}.marketing-level-preview-table{width:100%;min-width:520px}.marketing-level-preview-table td{vertical-align:middle}

.marketing-levels-editor{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:14px}.marketing-levels-editor[hidden]{display:none}.marketing-levels-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.marketing-levels-heading>div{display:grid;gap:5px}.marketing-levels-heading .save{min-height:36px;padding:0 12px;border:0;border-radius:5px;background:#619fa3;color:#fff;white-space:nowrap}.marketing-level-mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.marketing-level-mode{display:flex;align-items:flex-start;gap:8px;padding:11px;border:1px solid #e0e8e9;border-radius:6px;background:#fff;color:#52676d;cursor:pointer}.marketing-level-mode:has(input:checked){border-color:#83afb1;background:#edf5f4}.marketing-level-mode input{margin:3px 0 0;accent-color:#619fa3}.marketing-level-mode span{display:grid;gap:5px}.marketing-level-mode strong{font-size:12px}.marketing-level-mode small{color:#77888c;font-size:10px;line-height:1.45}.marketing-level-window-fields{display:flex;align-items:end;gap:8px;flex-wrap:wrap}.marketing-level-window-fields label{display:grid;gap:6px;color:#6a7d82;font-size:11px}.marketing-level-window-fields input{width:100px;min-height:35px;padding:6px 8px;border:1px solid #d2dddf;border-radius:5px;background:#fff;color:#43575e;font:inherit}.marketing-level-window-fields>span{margin:0 8px 9px 0;color:#77888c;font-size:11px}.marketing-level-list{display:grid;gap:8px}.marketing-level-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;align-items:center;padding:12px;border:1px solid #e1e8e9;border-radius:7px;background:#fff}.marketing-level-identity{display:flex;align-items:center;gap:9px;min-width:0;flex-wrap:wrap}.marketing-level-identity>strong{color:#435c62;font-size:13px}.marketing-level-identity>small{color:#7b898d;font-size:11px}.marketing-level-color{padding:4px 8px;border:1px solid color-mix(in srgb,var(--marketing-level-color),white 72%);border-radius:12px;background:color-mix(in srgb,var(--marketing-level-color),white 92%);color:var(--marketing-level-color);font-size:10px;font-weight:700}.marketing-level-summary{grid-column:1/-1;margin:0;color:#708186;font-size:11px;line-height:1.45;overflow-wrap:anywhere}.marketing-level-actions-inline{grid-column:2;grid-row:1;display:flex;gap:6px}.marketing-level-actions-inline button{min-height:30px;padding:0 9px;border:1px solid #d6e1e2;border-radius:4px;background:#fff;color:#52666d;font-size:11px;cursor:pointer}.marketing-level-actions-inline button:hover{border-color:#75a9a8;color:#357c7b}.marketing-level-dialog{width:min(620px,calc(100vw - 28px));max-height:min(88vh,760px);overflow:auto;padding:20px;border:1px solid #dce5e6;border-radius:10px;background:#fff;color:#34494f;box-shadow:0 18px 60px #18343840}.marketing-level-dialog::backdrop{background:#18343870}.marketing-level-dialog form{display:grid;gap:13px}.marketing-level-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.marketing-level-dialog-head h2{margin:0;color:#405a60;font-size:19px}.marketing-level-dialog-head button{width:34px;height:34px;border:0;border-radius:5px;background:transparent;color:#53676d;font-size:22px;cursor:pointer}.marketing-level-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.marketing-level-form-grid>label{display:grid;gap:6px;color:#51676e;font-size:12px}.marketing-level-form-grid input,.marketing-level-form-grid select,.marketing-level-form-grid textarea{box-sizing:border-box;width:100%;min-height:37px;padding:7px 9px;border:1px solid #cbd9dc;border-radius:5px;background:#fff;color:#43575e;font:inherit}.marketing-level-form-grid textarea{resize:vertical}.marketing-level-form-grid .marketing-level-benefits{grid-column:1/-1}.marketing-level-active{display:flex;align-items:flex-start;gap:9px;color:#52676d;font-size:12px}.marketing-level-active input{margin:3px 0 0;accent-color:#619fa3}.marketing-level-active span{display:grid;gap:4px}.marketing-level-active small{color:#77888c;font-size:10px}.marketing-level-disclaimer{margin:0;padding:10px 12px;border-radius:5px;background:#eff6f6;color:#6d8185;font-size:11px;line-height:1.45}.marketing-level-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:10px;border-top:1px solid #e5ebeb}.marketing-level-actions button{min-height:36px;padding:0 12px;border:1px solid #d6e1e2;border-radius:5px;background:#fff;color:#52666d}.marketing-level-actions button.save{border:0;background:#619fa3;color:#fff}
@media(max-width:700px){.marketing-level-mode-grid{grid-template-columns:1fr}.marketing-level-card{grid-template-columns:minmax(0,1fr)}.marketing-level-actions-inline{grid-column:1;grid-row:auto;justify-self:start}.marketing-level-form-grid{grid-template-columns:1fr}.marketing-level-form-grid .marketing-level-benefits{grid-column:1}.marketing-levels-heading{align-items:flex-start;flex-direction:column}}

body.public-online-portal-mode .top,body.public-online-portal-mode .banner,body.public-online-portal-mode .workspace{display:none!important}body.public-online-portal-mode #online-public-portal{display:block;min-height:100vh;background:#f5f8f8;color:#344d55;font-family:inherit}.online-public-header{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px max(22px,calc((100vw - 1080px)/2));background:#fff;border-bottom:1px solid #e1e8e9}.online-public-brand{display:flex;align-items:center;gap:12px;min-height:38px}.online-public-brand strong{font-size:18px;font-weight:600;color:#344d55}.online-public-brand img{max-width:180px;max-height:46px;object-fit:contain}.online-public-main{width:min(680px,calc(100% - 32px));margin:52px auto 30px}.online-public-card{padding:32px;border:1px solid #e1e8e9;border-radius:10px;background:#fff;box-shadow:0 12px 36px #28434c0c}.online-public-eyebrow{margin:0 0 8px;color:var(--online-public-brand,#5f9ea0);font-size:11px;font-weight:700;letter-spacing:.09em}.online-public-card h1{margin:0;color:#30474e;font-size:28px;font-weight:500}.online-public-card h2{margin:0 0 12px;color:#405960;font-size:16px;font-weight:600}.online-public-card>p:not(.online-public-eyebrow){margin:8px 0 20px;color:#718187;font-size:14px;line-height:1.5}.online-public-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.online-public-fields label{display:grid;gap:7px;color:#536970;font-size:12px;font-weight:600}.online-public-fields input,.online-public-fields select{width:100%;min-height:42px;padding:8px 10px;border:1px solid #cad7da;border-radius:5px;background:#fff;color:#354b52;font:inherit;font-size:13px}.online-public-available{margin-top:26px}.online-public-available>p{color:#7c898d;font-size:12px}.online-public-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.online-public-slot{min-height:42px;padding:8px 9px;border:1px solid #c9dddd;border-radius:5px;background:#f9fcfc;color:#406c70;font:inherit;font-size:12px;cursor:pointer}.online-public-slot:hover,.online-public-slot[aria-pressed="true"]{border-color:var(--online-public-brand,#5f9ea0);background:color-mix(in srgb,var(--online-public-brand,#5f9ea0) 10%,white)}.online-public-details{margin-top:28px;padding-top:23px;border-top:1px solid #e5ebec}.online-public-details form{display:grid;gap:15px}.online-public-details #online-public-selected-slot{margin:-4px 0 14px;color:#537d80;font-size:13px}.online-public-conditions{display:flex;align-items:flex-start;gap:9px;color:#586d73;font-size:12px;line-height:1.5}.online-public-conditions input{margin:2px 0 0;accent-color:var(--online-public-brand,#5f9ea0)}.online-public-local-note{margin:0;color:#879498;font-size:11px;line-height:1.5}.online-public-details .save{justify-self:start;min-height:42px;padding:0 20px;border:0;border-radius:5px;background:var(--online-public-brand,#5f9ea0);color:#fff;font:inherit;font-size:13px;cursor:pointer}.online-public-success{margin-top:24px;padding:20px;border:1px solid #cfe4dd;border-radius:7px;background:#f5fbf8;color:#40695d}.online-public-success h2{margin:0 0 8px}.online-public-success p{font-size:13px;line-height:1.5}.online-public-message{margin-top:20px;padding:14px;border:1px solid #eadfc0;border-radius:6px;background:#fffaf0;color:#856d37;font-size:13px}.online-public-back{display:block;margin:16px auto;border:0;background:transparent;color:#43888d;font:inherit;font-size:12px;cursor:pointer}.online-booking-heading-actions{display:flex;align-items:center;gap:12px}.online-booking-heading-actions .save{min-height:36px;padding:0 13px;border:0;border-radius:5px;background:#619fa3;color:#fff;font:inherit;font-size:12px;cursor:pointer}@media(max-width:600px){.online-public-main{margin:20px auto}.online-public-card{padding:22px 18px}.online-public-fields{grid-template-columns:1fr}.online-public-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.online-public-header{padding:10px 16px}.online-public-card h1{font-size:24px}.online-booking-heading-actions{align-items:flex-start;flex-direction:column}}
body.public-online-portal-mode #online-public-portal[hidden],.online-public-portal [hidden]{display:none!important}
body.public-client-area-mode .top,body.public-client-area-mode .banner,body.public-client-area-mode .demo-status-banner,body.public-client-area-mode .workspace{display:none!important}body.public-client-area-mode #client-area-portal{display:block;min-height:100vh;background:#f5f8f8;color:#344d55}.client-area-header{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px max(22px,calc((100vw - 1080px)/2));background:#fff;border-bottom:1px solid #e1e8e9}.client-area-brand{display:flex;align-items:center;gap:10px;color:#344b52}.client-area-brand strong{font-size:17px;font-weight:600}.client-area-brand-mark{display:grid;width:32px;height:32px;place-items:center;border-radius:50%;background:#619fa3;color:#fff;font-size:22px;font-weight:700}.client-area-main{width:min(760px,calc(100% - 32px));margin:42px auto 30px}.client-area-card{padding:30px;border:1px solid #e1e8e9;border-radius:9px;background:#fff;box-shadow:0 10px 30px #28434c0c}.client-area-card h1{margin:0;color:#30474e;font-size:27px;font-weight:500}.client-area-card>p:not(.online-public-eyebrow){color:#718187;font-size:13px;line-height:1.5}.client-area-person-label{display:grid;gap:7px;margin-top:22px;color:#536970;font-size:12px;font-weight:600}.client-area-person-select{width:100%;min-height:40px;padding:8px 10px;border:1px solid #cad7da;border-radius:5px;background:#fff;color:#354b52;font:inherit;font-size:13px}.client-area-demo-note{margin:8px 0 0!important;color:#879498!important;font-size:11px!important}.client-area-dashboard{margin-top:24px}.client-area-tabs{display:flex;gap:4px;overflow:auto;border-bottom:1px solid #dce5e6}.client-area-tabs button{flex:0 0 auto;min-height:40px;padding:0 14px;border:0;border-bottom:2px solid transparent;background:transparent;color:#667b81;font:inherit;font-size:13px;cursor:pointer}.client-area-tabs button[aria-selected=true]{border-color:#619fa3;color:#3d666a;font-weight:600}.client-area-content{display:grid;gap:11px;padding-top:18px}.client-area-content>h2{margin:0 0 2px;color:#405961;font-size:17px}.client-area-record{padding:15px;border:1px solid #dfe7e8;border-radius:7px;background:#fff}.client-area-record h3{margin:0 0 6px;color:#405961;font-size:14px}.client-area-record p{margin:0 0 9px;color:#718187;font-size:12px;line-height:1.45}.client-area-status{display:inline-block;padding:4px 8px;border-radius:14px;background:#edf5f5;color:#52777a;font-size:11px}.client-area-inline-note{margin-top:10px!important;color:#8a7135!important}.client-area-record-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.client-area-record-actions button{min-height:32px;padding:0 11px;border:1px solid #d5e0e1;border-radius:5px;background:#fff;color:#43575e;font:inherit;font-size:12px;cursor:pointer}.client-area-record-actions button:hover{border-color:#619fa3;color:#3d666a}.client-area-empty{margin:0;padding:22px;border:1px dashed #d3dfe0;border-radius:7px;color:#718187;font-size:13px;text-align:center}
body.public-client-area-mode #client-area-portal[hidden],#client-area-dashboard[hidden]{display:none!important}
.client-area-appointment-notice{margin:8px 0;padding:9px 11px;border:1px solid #eadfc0;border-radius:5px;background:#fffaf0;color:#856d37;font-size:12px;line-height:1.45}.client-area-appointment-notice[hidden]{display:none!important}
@media(max-width:600px){.client-area-header{padding:10px 16px}.client-area-main{margin:20px auto}.client-area-card{padding:22px 18px}.client-area-card h1{font-size:24px}}
/* Mantiene visible la acción de agenda junto al acceso flotante de ayuda. */
.new-appointment{right:82px}

/* Distribución de la ficha de persona inspirada en la vista de datos de ByClinics. */
.person-profile-content.person-profile-data-content{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);grid-template-areas:"personal contacts" "addresses observations" "family observations" "tags observations" "followup observations" "error observations" "note note";align-items:start;gap:12px;max-width:none;margin:12px 0}
.person-profile-data-form{display:contents}
.person-profile-personal-card{grid-area:personal}
.person-profile-addresses-card{grid-area:addresses}
.person-profile-contacts-card{grid-area:contacts}
.person-profile-family-card{grid-area:family}
.person-profile-tags-card{grid-area:tags}
.person-profile-followup-card{grid-area:followup}
.person-profile-observations-card{grid-area:observations;grid-row:2 / span 5;min-height:100%}
.person-profile-data-error{grid-area:error;margin:0}
.person-profile-data-note{grid-area:note;margin:0}
.person-profile-edit-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px 8px}
.person-profile-edit-grid label,.person-profile-followup-grid label,.person-profile-observations-field{display:grid;gap:5px;color:#687b82;font-size:12px;min-width:0}
.person-profile-edit-grid input,.person-profile-edit-grid select,.person-profile-followup-grid input,.person-profile-observations-field textarea{width:100%;min-width:0;min-height:36px;padding:8px 10px;border:1px solid #d4dddf;border-radius:7px;background:#fff;color:#344a52;font:inherit;font-size:14px}
.person-profile-field-firstName,.person-profile-field-firstSurname,.person-profile-field-secondSurname,.person-profile-field-profession{grid-column:span 2}
.person-profile-followup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 8px}
.person-profile-source-field{display:grid;gap:3px;min-width:0;color:#687b82;font-size:12px}
.person-profile-source-picker{position:relative;min-width:0}
.person-profile-source-trigger{display:flex;width:100%;min-width:0;min-height:32px;align-items:center;justify-content:space-between;gap:8px;padding:6px 9px;border:1px solid #d4dddf;border-radius:7px;background:#fff;color:#52656d;text-align:left;font:inherit;font-size:14px;cursor:pointer}
.person-profile-source-arrow{color:#718187;font-size:17px;line-height:1}
.person-profile-source-popup{position:absolute;z-index:6;top:calc(100% + 2px);right:0;left:0;display:grid;gap:6px;padding:7px;border:1px solid #d3dcde;border-radius:4px;background:#fff;box-shadow:0 5px 16px #17373d24}
.person-profile-source-popup[hidden]{display:none}
.person-profile-source-popup>input{width:100%;min-height:32px;padding:5px 8px;border:1px solid #d3dcde;border-radius:4px;background:#fff;color:#394f56;font:inherit;font-size:13px}
.person-profile-source-options{display:grid;max-height:180px;overflow:auto}
.person-profile-source-option{padding:7px;border:0;background:#fff;color:#465b61;text-align:left;font:inherit;font-size:13px;cursor:pointer}
.person-profile-source-option:hover{background:#f0f5f5}
.person-profile-source-empty{margin:8px;color:#718187;font-size:11px;line-height:1.4}
.person-profile-consents{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid #e5eaeb}
.person-profile-consent{display:grid;grid-template-columns:38px 1fr;align-items:center;gap:2px 9px;padding:10px;border:1px solid #e1e8e9;border-radius:7px;background:#f8fbfb;color:#344a52;font-size:13px;cursor:pointer}
.person-profile-consent input{appearance:none;grid-row:span 2;position:relative;width:36px;height:20px;margin:0;border:0;border-radius:999px;background:#bcc8ca;cursor:pointer;transition:background-color .16s ease}
.person-profile-consent input::before{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #17373d33;content:"";transition:transform .16s ease}
.person-profile-consent input:checked{background:#178d91}
.person-profile-consent input:checked::before{transform:translateX(16px)}
.person-profile-consent input:focus-visible{outline:2px solid #187f85;outline-offset:2px}
.person-profile-consent small{color:#7b8c91;font-size:11px}
.person-profile-observations-field{height:calc(100% - 42px)}
.person-profile-observations-field textarea{height:100%;min-height:220px;resize:vertical}
.person-profile-data-content .person-profile-card{margin:0;box-shadow:0 1px 3px #23414a0b}
.person-profile-view{padding-right:28px;padding-left:8px}
.person-profile-head{margin-top:8px;padding-top:15px;padding-bottom:15px}
.person-profile-head h2{margin:0;color:#5f9ea0;font:500 20px/24px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.person-profile-title-group{display:flex;align-items:center;gap:9px}
.person-profile-title-group{margin-left:16px}
.person-profile-head button{min-height:32px;padding:4px 8px;font:14px/22px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.person-profile-title-group>div{min-width:0}
.person-profile-avatar{display:grid;width:48px;height:48px;flex:0 0 48px;place-content:center;gap:3px;border-radius:50%;background:#f0f4f5}
.person-profile-avatar span:first-child{width:11px;height:11px;margin:auto;border:1.5px solid #87999e;border-radius:50%}
.person-profile-avatar span:last-child{width:20px;height:11px;border:1.5px solid #87999e;border-bottom:0;border-radius:12px 12px 0 0}
.person-profile-head button#person-profile-whatsapp{background:#619fa3;border-color:#619fa3;color:#fff}
.person-profile-head button:disabled{opacity:.48;cursor:not-allowed}
@media(min-width:901px){.person-profile-head>div:last-child{margin-right:-18px}}
.person-profile-tabs{align-items:center;gap:4px;margin-top:11px}
.person-profile-tabs button{height:32px}
.person-profile-tabs #person-profile-tabs-customize{flex:0 0 38px;margin-left:auto;padding:0;border:0;border-bottom:3px solid transparent;font-size:17px}
.person-profile-content.person-profile-data-content{grid-template-columns:minmax(0,1.41fr) minmax(320px,1fr);column-gap:16px;row-gap:16px;padding-left:23px;box-sizing:border-box}
.person-profile-data-content .person-profile-card{padding:14px}
.person-profile-data-content .person-profile-card h3{font-size:16px;font-weight:500}
.person-profile-data-content .person-profile-edit-grid label,.person-profile-data-content .person-profile-followup-grid label{font-weight:400}
.person-profile-data-content .person-profile-edit-grid input,.person-profile-data-content .person-profile-edit-grid select,.person-profile-data-content .person-profile-followup-grid input,.person-profile-data-content .person-profile-followup-grid select,.person-profile-data-content .person-profile-observations-field textarea{font-weight:400}
.person-profile-personal-card h3{margin-bottom:7px}
.person-profile-contacts-card{display:flex;min-height:276px;flex-direction:column}
.person-profile-contacts-card .person-record-add-contact{align-self:flex-start;margin-top:auto}
.person-profile-edit-grid{gap:0 8px}
.person-profile-edit-grid label{gap:3px}
.person-profile-edit-grid input,.person-profile-edit-grid select{min-height:32px;padding:6px 9px}
.person-profile-edit-grid label.person-profile-floating-field{position:relative;display:block;min-height:49px;padding-top:17px;box-sizing:border-box}
.person-profile-edit-grid>.person-profile-select-field{margin-top:14px}
.person-profile-field-caption{position:absolute;top:23px;left:0;z-index:1;color:#6c757d;font:14px/19.6px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;white-space:nowrap;pointer-events:none;transition:top .12s,left .12s,font-size .12s}
.person-profile-select-field{position:relative;display:block;min-height:49px;padding-top:17px;box-sizing:border-box}
.person-profile-select-control{position:relative;min-width:0}
.person-profile-select-trigger{display:flex;width:100%;height:32px;min-height:32px;align-items:center;justify-content:space-between;gap:8px;padding:4px 8px;border:1px solid #dee2e6;border-radius:9px;background:#fff;color:#212529;font:14px/20px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;text-align:left;cursor:pointer}
.person-profile-select-trigger:focus-visible{outline:2px solid #86b7fe;outline-offset:1px}
.person-profile-select-value{overflow:hidden;min-width:0;text-overflow:ellipsis;white-space:nowrap}
.person-profile-select-arrow{flex:0 0 auto;color:#65777d;font-size:12px}
.person-profile-select-popup{position:absolute;z-index:40;top:calc(100% - 3px);left:0;width:calc(100% - 1px);max-height:220px;overflow:auto;border:1px solid #dee2e6;border-radius:4px;background:#fff;color:#212529;font:12px/18px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.person-profile-select-popup[data-placement="top"]{top:auto;bottom:calc(100% - 3px)}
.person-profile-select-popup[hidden]{display:none}
.person-profile-select-option{display:block;width:100%;height:30px;min-height:30px;padding:0 16px;border:0;border-radius:0;background:#fff;color:#212529;font:14px/30px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;text-align:left;cursor:pointer}
.person-profile-select-option[aria-selected="true"],.person-profile-select-option:hover,.person-profile-select-option:focus-visible{outline:0;background:#f8f9fa}
.person-profile-date-field{position:relative;display:block;min-height:49px;padding-top:17px;box-sizing:border-box}
.person-profile-date-control{position:relative;top:1px;display:flex;width:160.375px;max-width:100%;height:32px;align-items:center;padding-left:1px;box-sizing:border-box}
.person-profile-date-control>input{width:127.375px;min-width:0;height:30px;min-height:30px;flex:1;padding:5px 9px;border:1px solid #dee2e6;border-radius:3px 0 0 3px;background:#fff;color:#212529;font:14px/20px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;box-sizing:border-box}
.person-profile-date-control>input:focus{outline:0;border-color:#86b7fe;box-shadow:0 0 0 3px #0d6efd40}
.person-profile-date-control>input::placeholder{color:transparent;opacity:1}
.person-profile-date-control>input:focus::placeholder{color:#6c757d;opacity:1}
.person-profile-date-toggle{display:grid;width:32px;height:32px;min-height:32px;flex:0 0 32px;place-items:center;padding:0;border:1px solid #dee2e6;border-left:0;border-radius:0 3px 3px 0;background:#fff;color:#6c757d;cursor:pointer}
.person-profile-date-toggle svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.person-profile-date-popup{position:absolute;z-index:45;top:calc(100% + 4px);left:0;width:min(244px,calc(100vw - 16px));height:329px;padding:0;border:1px solid #dee2e6;border-radius:6px;background:#fff;box-shadow:0 16px 48px rgba(0,0,0,.176);color:#212529;font:12px/18px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;box-sizing:border-box}
.person-profile-date-popup[data-placement="top"]{top:auto;bottom:calc(100% + 4px)}
.person-profile-date-popup[hidden]{display:none}
.person-profile-date-header{display:flex;height:48px;align-items:center;justify-content:space-between;padding:0 8px;box-sizing:border-box}
.person-profile-date-popup button{font-family:inherit;cursor:pointer}
.person-profile-date-nav{width:24px;height:24px;min-height:24px;padding:0;border:0;border-radius:50%;background:transparent;color:#454c50;font-size:21px;line-height:22px}
.person-profile-date-nav:hover,.person-profile-date-title:hover{background:#f1f3f5}
.person-profile-date-title{height:30px;min-height:30px;padding:0 8px;border:0;border-radius:4px;background:transparent;color:#212529;font-size:14px;font-weight:600}
.person-profile-date-grid{width:100%;height:229px;border-collapse:collapse;table-layout:fixed;text-align:center}
.person-profile-date-grid th{height:32px;padding:0;color:#6c757d;font-size:11px;font-weight:500}
.person-profile-date-grid td{height:32px;padding:0}
.person-profile-date-day{width:32px;height:32px;min-height:32px;padding:0;border:0;border-radius:50%;background:transparent;color:#212529;font-size:12px;line-height:32px}
.person-profile-date-day:hover{background:#f1f3f5}
.person-profile-date-day.is-other-month{color:#adb5bd}
.person-profile-date-day.is-today{outline:1px solid #2f8fbd;outline-offset:-2px}
.person-profile-date-day.is-selected{background:#2788c9;color:#fff}
.person-profile-date-footer{display:flex;height:49px;align-items:center;justify-content:center}
.person-profile-date-footer button{width:43px;height:32px;min-height:32px;padding:0;border:0;border-radius:4px;background:transparent;color:#2788c9;font-size:13px;font-weight:600}
.person-profile-date-footer button:hover{background:#edf6fb}
.person-profile-date-choices{display:grid;height:229px;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(4,1fr);gap:4px;padding:4px 10px;box-sizing:border-box}
.person-profile-date-choices button{min-width:0;border:0;border-radius:4px;background:#fff;color:#212529;font-size:13px}
.person-profile-date-choices button:hover{background:#f1f3f5}
.person-profile-edit-grid>.person-profile-date-field{margin-top:14px}
.person-profile-edit-grid>.person-profile-date-field>.person-profile-field-caption{top:24px;left:11.4px;color:#6c757d;font:14px/19.6px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.person-profile-edit-grid>.person-profile-date-field.is-populated>.person-profile-field-caption,.person-profile-edit-grid>.person-profile-date-field:focus-within>.person-profile-field-caption{top:-2px;left:-9px;color:rgba(33,37,41,.75);font:500 12px/16.8px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
@media(max-width:560px){.person-profile-date-popup{max-width:calc(100vw - 16px)}}
.person-profile-floating-field.is-populated .person-profile-field-caption,.person-profile-floating-field:focus-within .person-profile-field-caption{top:-3px;left:-9px;color:rgba(33,37,41,.75);font:500 12px/16.8px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.person-profile-edit-grid>label:nth-child(n+4)> .person-profile-field-caption{top:24px}
.person-profile-edit-grid>label:nth-child(n+4).is-populated> .person-profile-field-caption,.person-profile-edit-grid>label:nth-child(n+4):focus-within> .person-profile-field-caption{top:-2px}
.person-profile-edit-grid>label:nth-child(n+4)>input,.person-profile-edit-grid>label:nth-child(n+4)>select{position:relative;top:1px}
.person-profile-edit-grid>.person-profile-select-field:nth-child(n+4)> .person-profile-field-caption{top:24px}
.person-profile-edit-grid>.person-profile-select-field:nth-child(n+4).is-populated> .person-profile-field-caption,.person-profile-edit-grid>.person-profile-select-field:nth-child(n+4):focus-within> .person-profile-field-caption{top:-2px}
.person-profile-edit-grid>.person-profile-select-field:nth-child(n+4) .person-profile-select-trigger{position:relative;top:1px}
.person-profile-field-profession input{max-width:245px}
@media(max-width:900px){.person-profile-content.person-profile-data-content{grid-template-columns:minmax(0,1fr);grid-template-areas:"personal" "contacts" "addresses" "observations" "family" "tags" "followup" "error" "note"}.person-profile-observations-card{grid-row:auto;min-height:unset}.person-profile-observations-field{height:auto}}
@media(max-width:900px){.person-profile-edit-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:560px){.person-profile-edit-grid,.person-profile-followup-grid,.person-profile-consents{grid-template-columns:minmax(0,1fr)}.person-profile-edit-grid>*{grid-column:1!important}}
.person-profile-data-form{display:block}
.person-profile-content.person-profile-data-content{display:block;padding-left:0}
.person-profile-data-columns{display:grid;grid-template-columns:minmax(0,1.41fr) minmax(320px,1fr);gap:17px;padding-left:23px;box-sizing:border-box}
.person-profile-data-column{display:flex;min-width:0;flex-direction:column;gap:17px}
.person-profile-personal-card{min-height:184px}
.person-profile-personal-card{padding:18px 16px 14px!important}
.person-profile-addresses-card{min-height:145px;margin-top:2px}
.person-profile-addresses-card{padding:14px 16px 11px!important}
.person-profile-addresses-card .person-record-item{padding-left:20px}
.person-profile-family-card{padding:12px!important}
.person-profile-contacts-card{padding:21px 16px 14px!important}
.person-profile-contacts-card h3{margin-bottom:0!important}
.person-profile-contacts-card .person-record-list{margin-top:3px}
.person-profile-contacts-card .person-record-item{padding:8px}
.person-profile-contacts-card .person-record-add-contact{min-height:28px;padding:0 12px;border:0;border-radius:6px;background:#619fa3;color:#fff}
@media(min-width:901px){.person-profile-contacts-card .person-record-item{width:calc(100% + 1.7px);min-height:55.3px}.person-profile-contacts-card .person-record-actions{gap:10px}.person-profile-contacts-card .person-record-actions button{width:25px;height:25px;min-height:25px}.person-profile-contacts-card .person-record-add-contact{width:48.8px;padding:0}}
.person-profile-addresses-card .person-record-item{display:grid;grid-template-columns:140px minmax(0,1fr) auto;grid-template-rows:20px 20px;gap:0;align-items:center;position:relative;border-left:4px solid #4d925b}
.person-profile-addresses-card .person-record-item>div:first-child{display:contents}
.person-profile-addresses-card .person-record-item>div:first-child strong{grid-column:1;grid-row:1}
.person-profile-addresses-card .person-record-item>div:first-child p{grid-column:2;grid-row:1;margin:0}
.person-profile-addresses-card .person-record-badges{position:static;grid-column:1;grid-row:2;justify-self:start}
.person-profile-addresses-card .person-record-actions{grid-column:3;grid-row:1 / span 2}
@media(min-width:901px){.person-profile-addresses-card .person-records-heading{height:28px}.person-profile-addresses-card .person-records-heading button[data-person-record-action="add"]{width:118px;height:28px;min-height:28px;padding:0 6px;font-size:13px}.person-profile-addresses-card .person-record-list{margin-top:25.5px}.person-profile-addresses-card .person-record-actions{position:absolute;top:-3px;right:28px}.person-profile-addresses-card .person-record-edit-address{width:30px;height:30px;min-height:30px;padding:0;font-size:18px}}
@media(min-width:901px){.person-profile-addresses-card:has(.person-address-form){padding-bottom:22.4px!important}.person-profile-addresses-card:has(.person-address-form) .person-record-list{margin-top:20.7px}.person-profile-addresses-card:has(.person-address-form) .person-record-item{padding-top:8.65px;padding-bottom:8.65px}.person-profile-addresses-card .person-address-form{width:calc(100% - 14.7px);margin:8px 8px 0;padding:0 5.6px 8.8px 12px;border:0;border-radius:0;background:#fff;box-sizing:border-box}.person-address-form h4{display:none}.person-address-form .person-record-grid{grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(3,56px);gap:8px 0;padding:.8px 0 8px;box-sizing:border-box}.person-address-form .person-record-grid label.person-profile-floating-field{position:relative;display:block;height:56px;min-height:56px;margin-top:8px;padding:25px 5px 0;box-sizing:border-box;color:#4a5e64;font-size:14px}.person-address-form .person-record-grid label:has([name="name"]){grid-column:span 3}.person-address-form .person-record-grid label:has([name="address"]){grid-column:span 5}.person-address-form .person-record-grid label:has([name="postalCode"]){grid-column:span 2}.person-address-form .person-record-grid label:has([name="locality"]){grid-column:span 2}.person-address-form .person-record-grid label:has([name="province"]){grid-column:span 6}.person-address-form .person-record-grid label:has([name="country"]){grid-column:span 6}.person-address-form .person-record-grid label:has([name="directions"]){grid-column:span 12}.person-address-form .person-record-grid label:has([name="province"]) input,.person-address-form .person-record-grid label:has([name="country"]) input{width:calc(100% - 31px)}.person-address-form .person-record-grid input{width:100%;height:30px;min-height:30px;margin:0;padding:5px 8px;border-color:#d3dcde;border-radius:3px;font-size:14px;box-sizing:border-box}.person-address-form .person-profile-field-caption{top:30px;left:5px;color:#4a5e64;font:14px/19.6px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}.person-address-form .person-profile-floating-field.is-populated .person-profile-field-caption,.person-address-form .person-profile-floating-field:focus-within .person-profile-field-caption{top:4px;left:-5px;color:rgba(33,37,41,.75);font:500 12px/16.8px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}.person-address-form .person-record-form-actions{height:28.1px;margin:9.6px 4px 0;gap:8px}.person-address-form .person-record-form-actions button{height:28.1px;min-height:28.1px;padding:0 8px;font-size:13px}.person-address-form .person-record-form-actions .person-record-make-default{width:158.8px;border:0;background:transparent;text-align:left}.person-address-form .person-record-address-spacer{flex:1}.person-address-form .person-record-form-actions .person-record-address-cancel{width:59.3px}.person-address-form .person-record-form-actions .save{width:55px;border:0;background:#2788c9;color:#fff}.person-address-form>[data-record-error]:empty{display:none}}
.person-record-contact-dialog{width:min(550px,calc(100vw - 28px));max-height:calc(100vh - 28px);overflow:auto;padding:0;border:1px solid #d9e0e2;border-radius:8px;background:#fff;color:#394f56;box-shadow:0 12px 36px #17373d35}
.person-record-contact-dialog::backdrop{background:#0006}
.person-record-contact-dialog .person-record-form{margin:0;padding:0 13px 11px;border:0;border-radius:8px;background:#fff}
.person-record-contact-dialog-header{display:flex;align-items:center;justify-content:space-between;margin:0 -13px 18px;padding:10px 13px;border-bottom:1px solid #e5eaeb}
.person-record-contact-dialog-header h4{margin:0;color:#344b52;font-size:16px}
.person-record-contact-dialog-close{width:28px;min-height:28px!important;padding:0!important;border:0!important;background:transparent!important;color:#6a7c81!important;font-size:22px;line-height:1;cursor:pointer}
.person-record-contact-dialog .person-record-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:31px 8px}
.person-record-contact-dialog .person-record-field-value{grid-column:1/-1}
.person-record-contact-dialog .person-record-grid label{gap:0;margin:0;color:#4a5e64;font-size:12px;font-weight:400}
.person-record-contact-dialog .person-record-grid input,.person-record-contact-dialog .person-record-grid select{min-height:32px;padding:5px 9px;border-color:#d3dcde;border-radius:4px}
.person-record-phone-prefix-field{position:relative;display:grid;align-content:start;gap:0;min-width:0;color:#4a5e64;font-size:12px}
.person-record-phone-prefix-field[hidden]{display:none!important}
.person-record-phone-prefix-button{display:flex;align-items:center;justify-content:space-between;gap:7px;width:100%;min-width:0;min-height:32px;margin-top:0;padding:5px 8px;border:1px solid #d3dcde;border-radius:4px;background:#fff;color:#394f56;text-align:left;font:inherit;font-size:13px;cursor:pointer}
.person-record-phone-prefix-button>.person-phone-country-label{overflow:hidden;white-space:nowrap}
.person-record-phone-prefix-popup{position:absolute;z-index:30;top:calc(100% + 2px);right:0;left:0;display:grid;gap:6px;padding:8px;border:1px solid #cbd9dc;border-radius:5px;background:#fff;box-shadow:0 8px 24px #19343b26}
.person-record-phone-prefix-popup[hidden]{display:none}
.person-record-phone-prefix-popup>input[type=search]{width:100%;min-height:32px;padding:6px;border:1px solid #cbd9dc;border-radius:4px;font:inherit}
.person-record-phone-prefix-popup [role=listbox]{display:grid;max-height:220px;overflow:auto;overscroll-behavior:contain}
.person-record-contact-dialog .person-record-grid.has-phone-prefix .person-record-field-value{grid-column:2}
.person-record-contact-dialog .person-record-form-actions{justify-content:flex-start;margin-top:15px}
.person-record-contact-dialog .person-record-form-actions button{min-height:32px}
.person-record-contact-dialog .person-record-form-actions .save{border:0;background:#619fa3;color:#fff}
.person-record-contact-dialog .person-record-form-actions .person-record-delete{margin-left:auto;border:0;background:#c45c5c;color:#fff}
.person-record-contact-dialog .person-record-form>[data-record-error]:empty{display:none}
@media(min-width:561px){.person-record-contact-dialog .person-record-grid label:has(select[name="type"]) select{position:relative;left:-1px;width:calc(100% + 2px);height:30px;min-height:30px;transform:translateY(4px)}.person-record-contact-dialog .person-record-grid label:has(select[name="label"]) select{width:calc(100% + 2px);height:30px;min-height:30px;transform:translateY(4px)}.person-record-contact-dialog .person-record-field-value input{position:relative;left:-1px;width:calc(100% + 2px);height:30px;min-height:30px;transform:translateY(-1px)}.person-record-contact-dialog .person-record-form-actions{position:relative;top:-1px}}
@media(min-width:561px){.person-record-contact-dialog{height:250px;min-height:250px;box-sizing:border-box}.person-record-contact-dialog .person-record-grid label:has(select[name="type"]) select,.person-record-contact-dialog .person-record-grid label:has(select[name="label"]) select{width:calc(100% + 1px)}.person-record-contact-dialog .person-record-field-value input{transform:translateY(1px)}.person-record-contact-dialog .person-record-form-actions{top:3px;left:-1px;gap:8px}.person-record-contact-dialog .person-record-form-actions .save{width:67.8px}.person-record-contact-dialog .person-record-form-actions .save+button{width:56.3px}}
.person-profile-observations-card{grid-row:auto;min-height:546.5px}
.person-profile-observations-card{padding-top:17px!important}
.person-profile-observations-card h3{margin-bottom:0}
.person-profile-observations-field{height:calc(100% - 23px);margin-top:3px}
@media(max-width:900px){.person-profile-data-columns{grid-template-columns:minmax(0,1fr);padding-left:0}.person-profile-personal-card,.person-profile-addresses-card,.person-profile-contacts-card,.person-profile-family-card,.person-profile-tags-card,.person-profile-followup-card,.person-profile-observations-card{min-height:unset}.person-profile-addresses-card,.person-profile-observations-field{margin-top:0}.person-profile-observations-field{height:auto}.person-profile-family-card{padding:14px!important}}
@media(max-width:560px){.person-record-contact-dialog .person-record-grid{grid-template-columns:minmax(0,1fr)}.person-record-contact-dialog .person-record-field-value,.person-record-contact-dialog .person-record-grid.has-phone-prefix .person-record-field-value{grid-column:auto}}
.person-profile-tag-picker{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 38px;align-items:start;gap:8px}
.person-profile-tag-trigger{display:flex;min-width:0;min-height:40px;align-items:center;justify-content:space-between;gap:10px;padding:4px 10px 4px 23px;border:1px solid #d5dcde;border-radius:9px;background:#fff;color:#687b82;text-align:left;font:14px/19.6px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;cursor:pointer}
.person-profile-tag-trigger:focus{border-color:#5f9ea0;outline:0}
.person-profile-tag-summary{display:flex;min-width:0;flex-wrap:wrap;gap:4px}
.person-profile-tag-chevron{flex:none;color:#718187;font-size:18px;line-height:1}
.person-profile-tag-chip{padding:3px 8px;border-radius:12px;background:#e8f3f2;color:#548b8e;font-size:11px}
.person-profile-tag-options{position:absolute;z-index:5;top:calc(100% + 4px);left:0;display:grid;width:calc(100% - 52.328px);max-height:190px;overflow:auto;padding:5px;border:1px solid #cdd8da;border-radius:9px;background:#fff;box-shadow:none}
.person-profile-tag-options[hidden]{display:none}
.person-profile-tag-options.is-empty{height:60.72px;max-height:none;display:flex;align-items:center;justify-content:center;padding:0}
.person-profile-tag-empty{display:inline-block;padding:6px 2px;transform:translateX(-8px);color:#5b7378;font:12.48px/18.72px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.person-profile-tag-option{display:flex;align-items:center;gap:8px;padding:7px;color:#465b61;font-size:13px;cursor:pointer}
.person-profile-tag-option input{margin:0}
.person-profile-tag-add{width:38px;height:38px;padding:0;border:1px solid #cdd8da;border-radius:6px;background:#fff;color:#718187;font-size:22px;line-height:1;cursor:pointer}
.person-profile-tag-add:hover,.person-profile-tag-trigger:hover{border-color:#70aaac;color:#4b898c}
.person-profile-contacts-card .person-record-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:54px;border-color:#e4ebec;border-radius:8px;background:#f6f9f9}
.person-record-contact-details{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:9px;min-width:0}
.person-record-contact-mainline{display:contents}
.person-record-contact-icon{grid-column:1;grid-row:1 / span 2;display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#e7f5f0;color:#43a77b;font-size:16px}
.person-record-contact-value{grid-column:2;grid-row:1;overflow-wrap:anywhere;color:#34484e;font-size:13px;font-weight:600}
.person-record-contact-label{grid-column:2;grid-row:2;margin-top:2px;color:#718187;font-size:11px}
.person-profile-contacts-card .person-record-badges span{padding:3px 6px;background:#f0f4f5;color:#7a8589;font-size:10px}
.person-profile-contacts-card .person-record-actions{flex-wrap:nowrap;gap:3px}
.person-profile-contacts-card .person-record-actions button{display:grid;width:27px;min-height:27px;place-items:center;padding:0;border:0;background:transparent;color:#7a8589;font-size:16px;line-height:1}
.person-profile-contacts-card .person-record-actions button.person-record-default{color:#aab3b5}
.person-profile-contacts-card .person-record-actions button.person-record-default.is-default{color:#6e9296}
.person-profile-contacts-card .person-record-actions button:hover{border-radius:4px;background:#e8eeee;color:#4a777b}
@media(min-width:901px){.person-profile-contacts-card .person-record-item{width:calc(100% + 1.7px);min-height:55.3px}.person-profile-contacts-card .person-record-actions{gap:10px}.person-profile-contacts-card .person-record-actions button{width:25px;height:25px;min-height:25px}.person-profile-contacts-card .person-record-add-contact{width:48.8px;padding:0}}

/* Panel de cita DEMO: jerarquía compacta y acciones agrupadas, según agenda observada. */
#appointment-detail.appointment-detail-dialog{width:min(390px,calc(100vw - 28px));max-height:min(88vh,760px);overflow:auto;padding:18px 20px;border:1px solid #dce5e6;border-radius:9px;background:#fff;color:#40575d;box-shadow:0 16px 42px #17373d35}
#appointment-detail #detail-time{margin:0 0 10px;color:#344b52;font-size:14px;font-weight:700}
#appointment-detail #detail-patient{color:#394f56;font-size:14px}
#appointment-detail #detail-phone,#appointment-detail #detail-professional{margin:7px 0;color:#526a70;font-size:12px}
#appointment-detail #detail-meta{margin:10px 0 5px;color:#52676d;font-size:12px;line-height:1.45}
#appointment-detail p:has(#detail-reason){margin:7px 0 10px;color:#536a70;font-size:12px}
#appointment-detail #detail-payment-summary{margin:8px 0;color:#718187;font-size:11px}
#appointment-detail .appointment-detail-status{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0;color:#526a70;font-size:12px;font-weight:600}
#appointment-detail #detail-status{min-height:32px;max-width:190px;padding:0 24px 0 10px;border:0;border-radius:5px;background:#62ad79;color:#fff;font:inherit;font-weight:600}
#appointment-detail #detail-session-status{margin:6px 0;color:#74858a;font-size:11px;line-height:1.4}
#appointment-detail .appointment-detail-primary-actions{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0 8px}
#appointment-detail button:not(.dialog-head button){min-height:34px;padding:0 11px;border:1px solid #d9e3e4;border-radius:5px;background:#fff;color:#50676d;font:inherit;font-size:12px;cursor:pointer}
#appointment-detail #open-clinical-session{border-color:#22b5cf;background:#22b5cf;color:#fff;font-weight:600}
#appointment-detail #manage-appointment-payment{border-color:#f0b923;background:#f0b923;color:#354b4f;font-weight:600}
#appointment-detail .appointment-detail-more-actions{margin-top:4px}
#appointment-detail .appointment-detail-more-actions>summary{display:inline-flex;min-height:32px;align-items:center;padding:0 11px;border-radius:5px;background:#659fa0;color:#fff;font-size:12px;font-weight:600;cursor:pointer;list-style:none}
#appointment-detail .appointment-detail-more-actions>summary::-webkit-details-marker{display:none}
#appointment-detail .appointment-detail-more-actions>div{display:flex;gap:6px;flex-wrap:wrap;padding:8px 0 2px}
#appointment-detail #delete-appointment{border-color:#e5c7c4;color:#a34d43}
#appointment-detail button:disabled{opacity:.52;cursor:not-allowed}
#appointment-detail p:has(#detail-reason) span{display:inline-flex;padding:3px 8px;border-radius:12px;background:#e8f1f0;color:#558c8d;font-size:11px;font-weight:600}
#appointment-detail .appointment-detail-more-actions>div p{flex:1 0 100%;margin:2px 0;color:#718187;font-size:11px;line-height:1.4}
#appointment-detail .appointment-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin:0 0 12px}
#appointment-detail .appointment-detail-time-line{display:flex;align-items:center;justify-content:space-between;gap:9px;flex:1;min-width:0}
#appointment-detail .appointment-detail-time-line #detail-time{margin:0;font-size:14px;white-space:nowrap}
#appointment-detail .appointment-detail-status-badge{display:inline-flex;align-items:center;min-height:20px;padding:0 8px;border:1px solid #c8dedb;border-radius:12px;background:#edf6f4;color:#568383;font-size:10px;font-weight:600;white-space:nowrap}
#appointment-detail .appointment-detail-header>button{flex:0 0 28px;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:transparent;color:#65777b;font-size:20px;line-height:1}
#appointment-detail .appointment-detail-status{display:flex;align-items:center;gap:5px;flex:0 0 auto;margin:0;font-size:11px}
#appointment-detail #detail-status{min-height:28px;max-width:140px;padding:0 8px;font-size:11px}
#appointment-detail #detail-professional{margin:11px 0 5px;color:#759450;font-size:12px;font-weight:600}
#appointment-detail .appointment-detail-patient-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:5px 0}
#appointment-detail .appointment-detail-patient-line #detail-patient{font-size:14px}
#appointment-detail .appointment-detail-patient-line #detail-reason{display:inline-flex;padding:3px 8px;border:1px solid #c9ded9;border-radius:12px;background:#eef6f4;color:#558c8d;font-size:10px;font-weight:600}
#appointment-detail #detail-phone{margin:5px 0;color:#586f74;font-size:11px}
#appointment-detail #detail-meta{margin:7px 0 6px;color:#52676d;font-size:12px;line-height:1.4}
#appointment-detail .appointment-detail-info-row{display:flex;align-items:center;gap:7px;min-height:22px;margin:3px 0;color:#52676d;font-size:12px;line-height:1.35}
#appointment-detail .appointment-detail-info-row[hidden]{display:none}
#appointment-detail .appointment-detail-info-row svg{width:15px;height:15px;flex:0 0 15px;fill:none;stroke:#688087;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
#appointment-detail #detail-meta{margin:0;color:inherit;font-size:inherit;line-height:inherit}
#appointment-detail .appointment-detail-contact-actions{display:flex;align-items:center;gap:5px;margin:6px 0 2px}
#appointment-detail .appointment-detail-notification-state{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:4px;background:#fce8e8;color:#b94a48}
#appointment-detail .appointment-detail-notification-state svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#appointment-detail #detail-whatsapp{display:inline-flex;align-items:center;justify-content:center;width:28px;min-height:28px;padding:4px;border:0;background:transparent;color:#258b59}
#appointment-detail #detail-whatsapp svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
#appointment-detail #detail-email{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;color:#258b59;text-decoration:none}
#appointment-detail #detail-email svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#appointment-detail .appointment-detail-actions{margin-top:8px}
#appointment-detail .appointment-detail-primary-actions{justify-content:flex-start;margin:8px 0 5px}
#appointment-detail .appointment-detail-more-actions{margin-top:2px}
#appointment-detail .appointment-detail-more-actions>div{align-items:center}
/* El alta general conserva su tamaño; desde la cita se reduce al cuadro contextual observado. */
#person-dialog.person-new-create{width:min(560px,95vw);max-height:92vh;overflow:auto}
#person-dialog.person-new-create #person-form{grid-template-columns:128px minmax(0,1fr);gap:0 8px}
#person-dialog.person-new-create #person-form .dialog-head,
#person-dialog.person-new-create #person-form>label:nth-of-type(-n+3),
#person-dialog.person-new-create #person-form>label:nth-of-type(5),
#person-dialog.person-new-create #person-form .form-note,
#person-dialog.person-new-create #person-form>.error,
#person-dialog.person-new-create #person-form>.person-form-actions{grid-column:1/-1}
#person-dialog.person-new-create #person-form .person-phone-country-field{grid-column:1;align-self:end}
#person-dialog.person-new-create #person-form>label:nth-of-type(4){grid-column:2}
#person-dialog.person-new-create #person-form .person-form-actions{justify-content:flex-start}
#person-dialog.person-new-create #person-form .person-form-actions .save{width:auto;min-width:68px;padding:9px 14px}
#person-dialog.appointment-person-quick-create{width:min(550px,95vw);height:min(430px,calc(100vh - 32px));max-height:calc(100vh - 32px);overflow:auto}
#person-dialog.appointment-person-quick-create #person-form{height:100%;grid-template-columns:128px minmax(0,1fr);grid-template-rows:auto repeat(3,minmax(0,1fr)) auto auto auto;gap:4px 8px}
#person-dialog.appointment-person-quick-create #person-form .dialog-head,
#person-dialog.appointment-person-quick-create #person-form>label:nth-of-type(-n+3),
#person-dialog.appointment-person-quick-create #person-form>label:nth-of-type(5),
#person-dialog.appointment-person-quick-create #person-form>.person-demo-safety-note,
#person-dialog.appointment-person-quick-create #person-form>.error,
#person-dialog.appointment-person-quick-create #person-form>.person-form-actions{grid-column:1/-1}
#person-dialog.appointment-person-quick-create #person-form #person-create-note{display:none}
#person-dialog.appointment-person-quick-create #person-form .person-phone-country-field{grid-column:1;align-self:end}
#person-dialog.appointment-person-quick-create #person-form>label:nth-of-type(4){grid-column:2}
#person-dialog.appointment-person-quick-create #person-form>label{align-content:center;gap:3px;font-size:13px}
#person-dialog.appointment-person-quick-create #person-form input{min-height:30px;padding:5px 8px;font-size:13px}
#person-dialog.appointment-person-quick-create #person-form .person-phone-country-field{gap:3px}
#person-dialog.appointment-person-quick-create #person-form .person-phone-country-field>label{font-size:13px}
#person-dialog.appointment-person-quick-create #person-form #person-phone-country-button{min-height:30px;padding:5px 8px;font-size:13px}
#person-dialog.appointment-person-quick-create #person-form>.person-demo-safety-note{margin:0;font-size:11px}
#person-dialog.appointment-person-quick-create #person-form>.error{margin:0}
#person-dialog.appointment-person-quick-create #person-form .person-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}
#person-dialog.appointment-person-quick-create #person-form .person-form-actions button{min-height:32px;padding:0 14px}
#person-dialog.appointment-person-quick-create #person-form .person-form-actions .save{width:auto;min-width:68px}
.bonus-summary button.inventory-card{width:100%;text-align:left;font:inherit;cursor:pointer}
.bonus-summary button.inventory-card:hover,.bonus-summary button.inventory-card:focus-visible{border-color:#619fa3;background:#f4f9f8}
.bonus-summary button.inventory-card[aria-pressed=true]{border-color:#619fa3;box-shadow:0 0 0 2px #619fa333}
.agenda-area{padding-left:238px}
.calendar-group-filter{width:228px;padding:12px 8px 24px}
.calendar-mini{margin:0 0 14px}
.calendar-mini-heading{display:flex;align-items:center;justify-content:space-between;padding:0 5px 8px;color:#40555c}
.calendar-mini-heading strong{font-size:13px;font-weight:500}
.calendar-mini-heading span{display:flex;gap:3px}
.calendar-mini-heading button{width:25px;height:24px;padding:0;border:0;background:transparent;color:#7c8b8f;font-size:18px;cursor:pointer}
.calendar-mini-weekdays,.calendar-mini-days [role="row"]{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center}
.calendar-mini-weekdays{color:#859297;font-size:9px;font-weight:600}
.calendar-mini-weekdays span{padding:3px 0}
.calendar-mini-days{display:grid;grid-template-columns:1fr}
.calendar-mini-days [role="gridcell"]{display:grid;place-items:center;height:25px}
.calendar-mini-day{width:23px;height:23px;padding:0;border:1px solid transparent;border-radius:4px;background:transparent;color:#40555c;font-size:11px;cursor:pointer}
.calendar-mini-day.has-availability{position:relative}
.calendar-mini-day.has-availability::after{position:absolute;bottom:1px;left:50%;width:5px;height:5px;border-radius:50%;background:#639926;content:"";transform:translateX(-50%)}
.calendar-mini-day:hover{background:#edf5f5}
.calendar-mini-day.outside-month{color:#a4afb2}
.calendar-mini-day.today{border-color:#69a0a3}
.calendar-mini-day.selected{background:#2467c9;color:#fff;font-weight:700}
.calendar-mini-day:focus-visible{outline:2px solid #315f64;outline-offset:1px}
.calendar-group-filter-heading{padding:0 5px 8px}
@media(max-width:850px){.agenda-area{padding-left:0}.calendar-group-filter{width:auto;max-height:260px;padding:8px 10px 14px}.calendar-mini{max-width:280px}.calendar-group-filter-heading{padding:0 5px 6px}}
.appointment-list-table th.appointment-list-notice-column,.appointment-list-notice-cell{width:42px;min-width:42px;text-align:center}.appointment-list-notice-column svg,.appointment-list-notice svg{width:15px;height:15px;fill:none;stroke:#b7c1c3;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}.appointment-list-actions{width:48px;min-width:48px;padding:7px!important}.appointment-list-actions .appointment-row-actions{margin:0}.appointment-list-actions .appointment-row-actions-toggle{width:32px;height:25px;font-size:0;border-color:#e1e6e7;border-radius:5px}.appointment-list-actions .appointment-row-actions-toggle::after{content:"☰";font-family:Arial,sans-serif;font-size:13px;font-weight:400;color:#6c7779}.appointment-list-when{border-left:3px solid #a9cc54}.appointment-list-subject.is-person .appointment-list-person{display:flex;align-items:center;gap:8px;min-width:0}.appointment-list-avatar{display:grid;flex:none;width:30px;height:30px;place-items:center;border-radius:50%;background:#e7edf0;color:#64808a;font-size:10px;font-weight:700}.appointment-list-person-copy{display:block;min-width:0}.appointment-list-person-copy strong{display:block}.appointment-list-subject .appointment-list-contact{display:block;margin:3px 0 0;color:#74848a;font-size:11px}.appointment-list-professional.is-appointment>strong::before{display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:#91bd59;content:"";vertical-align:1px}.appointment-list-notice{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px}.appointment-list-notice svg{stroke:#c2c9ca}.appointment-list-table td:nth-child(6)>strong{font-weight:400;color:#637276}.appointment-list-table th:nth-child(6){width:100px}.appointment-list-table th:nth-child(7){width:42px}
.appointment-row-actions-menu{position:fixed;top:8px;left:8px;z-index:1000;max-width:min(260px,calc(100vw - 16px));max-height:calc(100vh - 16px);overflow:auto}
.people-trash-note{margin:8px 18px;padding:10px 12px;border-left:3px solid #d3a259;background:#fff9ed;color:#6b5735;font-size:13px}
.people-table td small{display:inline-block;margin-top:4px;color:#7c898d;font-size:11px}

/* Personas · fidelidad visual basada en la pantalla observada de ByClinics */
.people-table .people-actions{display:table-cell;white-space:nowrap}
.people-actions-layout{display:flex;align-items:center;justify-content:flex-start;gap:3px;white-space:nowrap}
#people-table tbody td{padding-top:5px;padding-bottom:5px}
.people-table .people-icon-action{width:30px;height:30px;display:grid;place-items:center;padding:5px;border-color:transparent;color:#71848a}
.people-table .people-icon-action:hover{background:#edf5f4;color:#3d777a}
.people-table .people-icon-action-trash{color:#ce7474}
.people-table .people-icon-action svg{width:17px;height:17px;fill:currentColor}
.people-table .people-identity-cell{min-width:180px}
.people-identity-layout{display:flex;align-items:center;gap:9px;min-height:34px}
.people-avatar{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:50%;background:#e7f2f1;color:#4f888a;font-size:12px;font-weight:700}
.people-identity{display:grid;gap:3px}
.people-identity small,.people-appointment-cell small{color:#849297;font-size:11px}
.people-name-link{width:fit-content;padding:0;border:0;background:none;color:#34494f;text-align:left;font:inherit;font-weight:600;cursor:pointer}
.people-name-link:hover{color:#4d9295;text-decoration:underline}
.people-contact-cell,.people-appointment-cell{min-width:130px}
.people-contact-cell span,.people-appointment-cell span{display:block;line-height:1.55}
.people-filter-trash-access{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px;padding:12px 4px 2px;border-top:1px solid #dfe7e8;color:#526970}
.people-filter-trash-access>div{display:grid;gap:3px}
.people-filter-trash-access strong{font-size:13px;font-weight:600}
.people-filter-trash-access small{font-size:12px;color:#78888d}
.people-filter-trash-access button{min-height:30px;padding:0 10px;border:1px solid #c7d7d9;border-radius:4px;background:#fff;color:#4c8588;white-space:nowrap}
@media(min-width:821px){
  .people-view{padding:0 20px 24px 4px}
  .people-tabs{height:33px}
  #people-list-view{margin:12px 14px 0 15px}
  #people-list-view .people-toolbar{height:50px;min-height:50px;box-sizing:border-box;padding:8px 11px}
  #new-person{width:111px;height:28px;min-height:28px;padding:0 5px;gap:4px;font-size:12px;white-space:nowrap}
  #merge-people{width:137px;height:29px;min-height:29px;margin-left:-2px;padding:0 8px;gap:5px;white-space:nowrap}
  #people-list-view .people-search{height:32px}
  #people-list-view .people-search{margin-left:2px}
  #people-search{height:30px}
  #people-search-button{width:65px;min-width:65px;height:30px;padding:0 5px;display:flex;align-items:center;gap:3px;font-size:12px;white-space:nowrap}
  #people-more-filters{width:86px;height:28px;min-height:28px;padding:0 8px;display:flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap}
  #new-person svg,#merge-people svg,#people-more-filters svg{width:16px;height:16px;flex:none;fill:currentColor}
  #people-search-button svg{width:14px;height:14px;flex:none;fill:currentColor}
  #people-list-view .people-count{box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:87px;height:30px;border-radius:15px;background:#fff;color:#68a4a6}
  .people-toolbar .people-view-mode-group{box-sizing:border-box;display:flex;flex:0 0 81px;align-items:center;width:81px;height:32px;padding-left:12px}
  #people-list-mode,#people-card-mode{box-sizing:border-box;height:32px;min-height:32px;padding:6px;display:grid;place-items:center}
  #people-list-mode{width:36px;min-width:36px;border-radius:4px 0 0 4px}
  #people-card-mode{width:34px;min-width:34px;border-left:0;border-radius:0 4px 4px 0}
  #people-print,#people-export{box-sizing:border-box;height:32px;min-height:32px;padding:6px;display:grid;place-items:center}
  #people-print{width:30px;min-width:30px}
  #people-export{width:31px;min-width:31px}
  #people-list-mode svg,#people-card-mode svg,#people-print svg,#people-export svg{width:18px;height:18px;fill:currentColor}
  #people-table{width:calc(100% + 5px);margin:11.890625px -10px 0 5px;table-layout:fixed;font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:14px}
  #people-table thead tr{height:54px}
  #people-table tbody tr{height:54px}
  #people-table th{font-size:14px}
  #people-table .people-name-link{font-size:13.5px}
  #people-table th:nth-child(1),#people-table td:nth-child(1){width:8.78%}
  #people-table th:nth-child(2),#people-table td:nth-child(2){width:21.11%}
  #people-table th:nth-child(3),#people-table td:nth-child(3){width:16.89%}
  #people-table th:nth-child(4),#people-table td:nth-child(4){width:11.82%}
  #people-table th:nth-child(5),#people-table td:nth-child(5){width:13.51%}
  #people-table th:nth-child(6),#people-table td:nth-child(6){width:15.20%}
  #people-table th:nth-child(7),#people-table td:nth-child(7){width:12.67%}
}
@media(max-width:820px){.people-table th:nth-child(3),.people-table td:nth-child(3){display:table-cell}.people-table th:nth-child(4),.people-table td:nth-child(4),.people-table th:nth-child(6),.people-table td:nth-child(6),.people-table th:nth-child(7),.people-table td:nth-child(7){display:none}}

/* Ficha · avisos clínicos con controles y niveles equivalentes a la referencia */
.person-health-alert-note{margin-top:-8px}
.person-health-alerts{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.person-health-alert-card{min-width:0}
.person-health-alert-toggle{width:100%;min-height:48px;display:grid;grid-template-columns:22px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;column-gap:7px;padding:8px 10px;border:1px solid #dce5e6;border-radius:6px;background:#fff;color:#43575e;text-align:left}
.person-health-alert-toggle:hover{background:#f8fbfb;border-color:#b8cbcd}
.person-health-alert-toggle[aria-pressed=true]{background:#fff8ef;border-color:#dfb76b}
.person-health-alert-toggle--critical[aria-pressed=true]{background:#fff1ef;border-color:#d78278;color:#8b3c36}
.person-health-alert-mark{grid-row:1/3;font-size:19px;line-height:1;color:#9aa8ab}
.person-health-alert-toggle[aria-pressed=true] .person-health-alert-mark{color:#bd7854}
.person-health-alert-toggle--critical[aria-pressed=true] .person-health-alert-mark{color:#be5248}
.person-health-alert-label{font-weight:600}
.person-health-alert-severity{grid-column:2;color:#849297;font-size:10px}
.person-health-custom-alerts{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}
.person-health-custom-alert{display:flex;align-items:center;gap:8px;padding:7px 9px;border:1px solid #d7e1e2;border-radius:6px;background:#f8fbfb;color:#43575e}
.person-health-custom-alert>span{font-weight:600}
.person-health-custom-alert>small{color:#7b898d;font-size:10px}
.person-health-custom-alert>button{width:23px;height:23px;padding:0;border:0;border-radius:50%;background:transparent;color:#718187;font-size:17px}
.person-health-custom-alert>button:hover{background:#e8eeee;color:#8c4e49}
.person-health-custom-form{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:8px 0;padding:10px;border:1px solid #dce5e6;border-radius:6px;background:#f8fbfb}
.person-health-custom-form input{min-height:36px;flex:1;min-width:180px;padding:0 9px;border:1px solid #cbd9dc;border-radius:4px;font:inherit}
.person-health-custom-form select,.person-health-custom-form>button{min-height:36px;padding:0 10px;border:1px solid #d2dfe1;border-radius:4px;background:#fff;color:#43575e}
.person-health-custom-form>button.save{border:0;background:#619fa3;color:#fff}
.person-health-custom-form p{flex-basis:100%;margin:0}
.person-health-add-custom{min-height:34px;padding:0 10px;border:1px solid #d4e0e1;border-radius:5px;background:#fff;color:#52777b}
.person-health-add-custom:hover{background:#edf5f4}
@media(max-width:720px){.person-health-alerts{grid-template-columns:repeat(2,minmax(0,1fr))}}
.groups-count{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:16px;background:#e8f3f2;color:#548b8e;font-size:14px;white-space:nowrap}.group-action-button{width:30px;height:30px;padding:0!important;border:0!important;border-radius:4px!important;font-size:21px;line-height:1;cursor:pointer}.group-action-button--edit{background:#e8f1ff!important;color:#4e7fbd!important}.group-number-pill,.group-status-pill{display:inline-flex;min-width:32px;min-height:28px;align-items:center;justify-content:center;padding:0 10px;border-radius:16px;font-size:13px}.group-number-pill--occupied{background:#e9f2f2;color:#4f888a}.group-number-pill--available,.group-status-pill{background:#edf6ef;color:#568b5d}.groups-table td:nth-child(6){font-variant-numeric:tabular-nums}

/* Personas · densidad y columnas de Grupos cotejadas con la fila DEMO de referencia */
.groups-toolbar{margin-inline:12px;padding:20px 8px}
.groups-toolbar #new-group{min-height:30px;padding:0 12px;border:0;border-radius:5px;background:#619fa3;color:#fff}
.groups-table{width:calc(100% - 24px);margin-inline:12px;table-layout:fixed;font-size:13px}
.groups-table th,.groups-table td{padding:9px 9px}
.groups-table th{padding-block:12px;font-size:12px}
.groups-table td.people-actions{display:table-cell;vertical-align:middle}
.groups-table .group-action-button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;font-size:21px;vertical-align:middle}
.groups-table .group-number-pill,.groups-table .group-status-pill{min-height:24px}
.groups-table th:nth-child(1),.groups-table td:nth-child(1){width:9%}
.groups-table th:nth-child(2),.groups-table td:nth-child(2){width:18%}
.groups-table th:nth-child(3),.groups-table td:nth-child(3){width:8%;text-align:center}
.groups-table th:nth-child(4),.groups-table td:nth-child(4){width:9%;text-align:center}
.groups-table th:nth-child(5),.groups-table td:nth-child(5){width:9%;text-align:center}
.groups-table th:nth-child(6),.groups-table td:nth-child(6){width:12%}
.groups-table th:nth-child(7),.groups-table td:nth-child(7){width:25%}
.groups-table th:nth-child(8),.groups-table td:nth-child(8){width:10%}
.group-action-button--delete{background:#fbe7e7!important;color:#bd5a59!important}
.groups-table .group-action-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.group-delete-dialog{width:min(460px,calc(100vw - 28px));padding:0;border:1px solid #d7dde0;border-radius:6px;background:#fff;color:#343f43;box-shadow:0 12px 38px #26343a55}
.group-delete-dialog::backdrop{background:rgba(30,34,37,.5)}
.group-delete-dialog>header{padding:12px 14px;border-bottom:1px solid #d9dfe1}
.group-delete-dialog>header h2{margin:0;font-size:14px;font-weight:500}
.group-delete-content{display:flex;align-items:flex-start;gap:10px;padding:18px 20px 14px}
.group-delete-content>div{min-width:0}
.group-delete-help{display:grid;flex:none;width:20px;height:20px;place-items:center;border-radius:50%;background:#6caeb0;color:#fff;font-size:14px;font-weight:700}
.group-delete-content strong{display:block;margin:0 0 5px;font-size:14px}
.group-delete-content p{margin:0;color:#7b8589;font-size:12px}
.group-delete-content #group-delete-error{margin-top:6px;color:#b33333}
.group-delete-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 20px 18px}
.group-delete-dialog>footer button{min-height:32px;padding:0 11px;border:1px solid #d7dddf;border-radius:6px;background:#fff;color:#5e6d72;font:inherit;font-size:12px;cursor:pointer}
.group-delete-dialog>footer #confirm-group-delete{border-color:#d76b6e;background:#d76b6e;color:#fff}

/* Acciones principales de facturación en la cabecera, como en la pantalla de referencia. */
.invoice-editor-actions{display:flex;align-items:center;gap:8px;margin-left:auto}
.invoice-editor-actions button{min-height:36px;padding:0 13px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fafb;color:#43575e}
.invoice-editor-actions button.save{background:#619fa3;border:0;color:white}
.invoice-editor-head>div:last-child{display:block;flex:1}
@media(max-width:720px){.invoice-editor-actions{width:100%;margin-left:0}}
@media(max-width:500px){.invoice-editor-actions{flex-wrap:wrap}}
.top-actions{display:flex;align-items:center;gap:5px;height:100%}.top-actions button{display:grid;place-items:center;width:30px;height:30px;padding:5px;border:0;border-radius:5px;background:transparent;color:#fff;cursor:pointer}.top-actions button:hover,.top-actions button:focus-visible{background:#ffffff26;outline:2px solid #fff;outline-offset:1px}.top-actions button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.top-user{display:flex;align-items:center;gap:6px;margin-left:6px;font-weight:600}.top-user small{padding:2px 5px;border-radius:8px;background:#ffffff26;font-size:9px;letter-spacing:.04em}@media(max-width:650px){.top{padding-right:8px}.top-actions{gap:1px}.top-actions button{width:28px;height:28px}.top-user{display:none}}

/* Personas · formulario de Grupo cotejado con la ficha de ByClinics (02/11/2026). */
.people-tabs[hidden]{display:none}
.group-editor{max-width:none;padding:12px}
.group-editor form{display:block}
.group-editor-head{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;align-items:center;gap:22px;min-height:82px;margin-bottom:12px;padding:12px 18px;border:1px solid #e1e7e8;border-left:4px solid #66a5a7;border-radius:10px;background:#fbfdfd;box-shadow:0 2px 5px #26343a14}
.group-editor-title{display:flex;align-items:center;gap:14px;min-width:0}
.group-editor-icon{display:grid;flex:none;width:48px;height:48px;place-items:center;border-radius:14px;background:#65a4a6;color:white;box-shadow:0 3px 8px #273c3c26}
.group-editor-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.group-editor-head small{color:#728589;font-size:10px;font-weight:700;letter-spacing:.06em}
.group-editor-head h2{margin:2px 0 0;color:#253d43;font-size:20px;line-height:1.25}
.group-editor-stats{display:grid;grid-template-columns:repeat(3,minmax(78px,1fr));min-width:290px;overflow:hidden;border:1px solid #e0e7e8;border-radius:13px;background:#fff;text-align:center}
.group-editor-stats>div{display:grid;align-content:center;gap:2px;min-height:52px;border-right:1px solid #e6ebec}
.group-editor-stats>div:last-child{border-right:0}
.group-editor-stats small{color:#77878a;font-size:9px;font-weight:700}
.group-editor-stats strong{color:#29474c;font-size:19px;line-height:1}
.group-editor-stats>div:last-child strong{color:#39804d}
.group-editor-actions{display:flex;align-items:center;gap:8px}
.group-editor .group-editor-head .group-editor-actions button{min-height:30px;padding:0 11px;border:1px solid #d8e1e3;border-radius:7px;background:#fff;color:#576a6f;font-size:12px}
.group-editor .group-editor-head .group-editor-actions button.save{border:0;background:#619fa3;color:#fff}
.group-editor-panels{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
.group-editor-panel{min-width:0;min-height:calc(100vh - 250px);overflow:hidden;border:1px solid #e0e5e7;border-radius:10px;background:#fff}
.group-editor-panel h3{display:flex;align-items:center;gap:8px;min-height:43px;margin:0 0 20px;padding:0 16px;border:0;border-bottom:1px solid #e2e8e9;background:#f4f8f8;color:#749397;font-size:12px;letter-spacing:.04em}
.group-editor-panel h3>svg{width:15px;height:15px;fill:none;stroke:#84aeb0;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.group-editor-panel h3 #group-participant-count{display:grid;place-items:center;width:24px;height:24px;margin-left:auto;border-radius:50%;background:#70aeb0;color:#fff;font-size:11px;letter-spacing:0}
.group-editor-panel>label{margin:0 16px 16px;color:#58696e;font-size:12px}
.group-editor-panel>label input,.group-editor-panel>label textarea,.group-editor-panel>label select{min-height:34px;padding:7px 9px;border-color:#d7dfe1;border-radius:9px;font-size:13px}
.group-editor-panel>label textarea{min-height:52px;resize:vertical}
.group-information-panel>label:nth-of-type(2) input{width:160px}
.group-information-panel .group-description-field,.group-information-panel .group-observations-field{margin-top:4px}
.group-editor-panel .group-participant-picker{display:flex;align-items:center;gap:8px;margin:0 16px 10px}
.group-participant-picker label{min-width:0;flex:1}
.group-person-search-field{position:relative;min-width:0;flex:1}
.group-person-search-field>label{display:block;margin:0 0 5px;color:#58696e;font-size:11px}
.group-person-search-field>input{width:100%;height:34px;padding:7px 9px;border:1px solid #d7dfe1;border-radius:9px;background:#fff;color:#26383d;font-size:13px}
.group-person-search-results{position:absolute;z-index:20;top:100%;right:0;left:0;max-height:260px;overflow:auto;margin-top:3px;border:1px solid #dce4e5;border-radius:7px;background:#fff;box-shadow:0 5px 16px #26383d24}
.group-person-search-results[hidden]{display:none}
.group-person-search-help{display:grid;justify-items:center;gap:10px;padding:20px 12px;color:#738186;text-align:center;font-size:12px}
.group-person-search-help strong{color:#394d52;font-size:13px}
.group-person-search-fields{display:flex;flex-wrap:wrap;justify-content:center;gap:5px}
.group-person-search-fields span{padding:4px 8px;border:1px solid #e0e8e8;border-radius:999px;background:#f5f8f8;font-size:11px}
.group-person-search-help small{color:#899497;font-size:10px}
.group-person-search-empty{padding:16px;color:#738186;font-size:12px;text-align:center}
.group-person-search-option{display:block;width:100%;padding:9px 12px;border:0;border-bottom:1px solid #edf1f1;background:#fff;color:#34484d;text-align:left;cursor:pointer}
.group-person-search-option:hover,.group-person-search-option:focus{background:#f2f7f7}
.group-editor .group-participant-picker{align-items:flex-end}
.group-editor .group-participant-picker button{min-height:34px}
.group-editor .group-participant-picker button{min-height:36px;border:0;border-radius:8px;background:#65a4a6;color:#fff;white-space:nowrap}
.group-occupancy-track{height:8px;margin:0 16px 6px;overflow:hidden;border-radius:999px;background:#e8eded}
.group-occupancy-track span{display:block;width:0;height:100%;border-radius:inherit;background:#4aa25b;transition:width .15s ease}
.group-editor #group-occupancy{margin:0 16px 16px;color:#6b777a;font-size:11px;font-weight:400;text-align:center}
.group-editor #group-no-participants{margin:16px;color:#738186;font-size:13px}
.group-editor #group-participant-list{display:grid;gap:6px;margin:0 16px;padding:0;list-style:none}
.group-participant-card{display:flex;align-items:center;gap:10px;min-height:53px;padding:7px 10px;border:1px solid #dce5e6;border-radius:12px;background:#f6f9f9;color:#34484d}
.group-participant-avatar{display:grid;flex:none;width:36px;height:36px;place-items:center;border-radius:50%;background:#65a4a6;color:#fff;font-size:12px;font-weight:700}
.group-participant-name{min-width:0;flex:1;font-size:13px}
.group-editor .group-participant-card .group-participant-remove{display:grid;flex:none;width:30px;height:30px;place-items:center;margin:0;padding:6px;border:0;border-radius:8px;background:#fae9e9;color:#c16868;cursor:pointer}
.group-participant-remove svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.group-editor-panel #group-error{margin:12px 16px;color:#b33b3b}
.group-participants-panel{display:flex;flex-direction:column}
.group-editor #group-no-participants{display:grid;flex:1;align-content:center;justify-items:center;gap:8px;margin:12px 16px;color:#637378;text-align:center}
.group-editor #group-no-participants[hidden]{display:none}
.group-empty-state svg{width:30px;height:30px;fill:none;stroke:#9baeb0;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.group-empty-state strong{font-size:14px;font-weight:500}
.group-empty-state small{color:#788589;font-size:11px}
@media(max-width:850px){.group-editor-head{grid-template-columns:1fr auto}.group-editor-stats{grid-column:1;grid-row:2;width:min(100%,360px)}.group-editor-actions{grid-column:2;grid-row:1}.group-editor-panels{grid-template-columns:1fr}.group-editor-panel{min-height:0;padding-bottom:18px}}
@media(max-width:520px){.group-editor{padding:8px}.group-editor-head{grid-template-columns:1fr;gap:10px;padding:12px}.group-editor-stats{grid-row:auto;min-width:0;width:100%}.group-editor-actions{grid-column:1;grid-row:auto;justify-content:flex-end}.group-editor-panels{gap:10px}.group-editor-panel>label{margin-inline:12px}.group-editor-panel .group-participant-picker,.group-occupancy-track{margin-inline:12px}.group-editor #group-occupancy{margin-inline:12px}.group-editor #group-participant-list{margin-inline:12px}}
.configuration-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:0 0 18px}.configuration-heading small{color:#789095;font-size:11px;letter-spacing:.08em}.configuration-heading h1{margin:3px 0 5px;color:#344b52;font-size:23px}.configuration-heading p,.configuration-subheading p{margin:0;color:#718187;font-size:13px}.configuration-tabs{display:flex;gap:5px;margin-bottom:18px;border-bottom:1px solid #dce5e6}.configuration-tabs button{min-height:38px;padding:0 14px;border:0;border-bottom:2px solid transparent;background:transparent;color:#667b81;font:inherit;cursor:pointer}.configuration-tabs button.active{border-color:#619fa3;color:#3d666a;font-weight:600}.configuration-subheading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin:0 0 16px}.configuration-subheading h2{margin:0 0 4px;color:#405961;font-size:18px}.configuration-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:12px}.configuration-card{padding:14px;border:1px solid #dfe7e8;border-radius:7px;background:#fff}.configuration-card h3{margin:0 0 6px;color:#405961;font-size:15px}.configuration-card p{margin:0 0 12px;color:#718187;font-size:12px;line-height:1.45}.configuration-card button,.configuration-actions button,.procedence-toolbar button,.procedence-table button,.procedence-empty button{min-height:32px;padding:0 11px;border:1px solid #d5e0e1;border-radius:5px;background:#fff;color:#43575e;font:inherit;font-size:12px;cursor:pointer}.configuration-card button.save,.configuration-actions button.save,.procedence-toolbar button.save,.procedence-empty button.save{border:0;background:#619fa3;color:#fff}.configuration-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.procedence-toolbar{display:grid;grid-template-columns:auto minmax(200px,1fr) auto;align-items:center;gap:10px;margin:10px 0 14px;padding:10px 12px;border:1px solid #dfe7e8;border-radius:7px;background:#f5f9f9}.procedence-toolbar input[type=search],.procedence-editor input:not([type=radio]):not([type=checkbox]){min-width:0;min-height:35px;padding:6px 9px;border:1px solid #cbd9dc;border-radius:5px;background:#fff;color:#344b52;font:inherit;font-size:13px}.procedence-count{color:#718187;font-size:12px;white-space:nowrap}.procedence-table{width:100%;border-collapse:collapse;background:#fff}.procedence-table th{padding:10px 9px;background:#edf5f5;color:#647a80;font-size:11px;text-align:left;text-transform:uppercase}.procedence-table td{padding:9px;border-bottom:1px solid #e4ebec;color:#526970;font-size:13px;vertical-align:middle}.procedence-table td:first-child{display:flex;gap:5px;flex-wrap:wrap}.procedence-table button{min-height:28px;padding:0 8px;font-size:11px}.procedence-editor{display:grid;gap:12px;max-width:760px;margin:0 0 16px;padding:16px;border:1px solid #dbe5e6;border-radius:7px;background:#fff}.procedence-editor h3{margin:0;color:#405961;font-size:16px}.procedence-editor>label:not(.procedence-enabled){display:grid;gap:5px;color:#536970;font-size:12px}.procedence-requirements{display:grid;gap:8px;margin:0;padding:12px;border:1px solid #e0e7e8;border-radius:6px}.procedence-requirements legend{padding:0 5px;color:#536970;font-size:12px}.procedence-requirements label{display:grid;grid-template-columns:16px 1fr;align-items:center;gap:4px 8px;color:#43575e;font-size:13px}.procedence-requirements label small{grid-column:2;color:#718187;font-size:11px}.procedence-requirements input,.procedence-enabled input{accent-color:#619fa3}.procedence-enabled{display:flex;align-items:center;gap:8px;color:#526970;font-size:12px}.procedence-editor [role=alert]:empty{display:none}.procedence-empty{display:grid;justify-items:center;gap:10px;min-height:250px;align-content:center;padding:22px;text-align:center;background:#fff}.procedence-empty>span{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;background:#edf5f5;color:#619fa3;font-size:24px}.procedence-empty h3{margin:0;color:#405961;font-size:15px}.procedence-empty p{margin:0;color:#718187;font-size:12px}.procedence-suggestions{display:flex;justify-content:center;gap:7px;flex-wrap:wrap;max-width:650px}.procedence-suggestions span{padding:5px 9px;border:1px solid #e0e7e8;border-radius:16px;color:#526970;font-size:11px}.procedence-empty button{margin:0 3px}.person-profile-source-additional{display:grid;gap:7px}.person-profile-source-additional:empty{display:none}@media(max-width:680px){.procedence-toolbar{grid-template-columns:1fr auto}.procedence-toolbar input[type=search]{grid-column:1/-1;grid-row:2}.procedence-table{min-width:700px}.configuration-subheading{flex-direction:column}}

.configuration-view .configuration-subheading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}.configuration-view .configuration-subheading h2{grid-column:1;grid-row:1;margin:0 0 3px}.configuration-view .configuration-subheading p{grid-column:1;grid-row:2}.configuration-view .configuration-subheading>button{grid-column:2;grid-row:1/3;align-self:start;min-height:30px;padding:0 10px;border:1px solid #d5e0e1;border-radius:5px;background:#fff;color:#526970;font:inherit;font-size:12px;cursor:pointer}@media(max-width:680px){.configuration-view .configuration-subheading{grid-template-columns:1fr auto}}
.configuration-view .procedence-heading{grid-template-columns:40px minmax(0,1fr) auto auto;column-gap:10px;row-gap:2px;align-items:center}.configuration-view .procedence-heading h2{grid-column:2;grid-row:1;margin:0}.configuration-view .procedence-heading p{grid-column:2;grid-row:2}.procedence-heading-icon{grid-column:1;grid-row:1/3;display:grid;width:40px;height:40px;place-items:center;border-radius:10px;background:#e8f3f3;color:#619fa3;font-size:24px}.configuration-view .procedence-heading>[data-configuration-action=open-procedence-help]{grid-column:3;grid-row:1/3;align-self:center;min-height:29px;border:1px solid #bfd7d8;border-radius:18px;background:#f6fbfb;color:#5c8084}.configuration-view .procedence-heading>[data-configuration-action=back-procedences]{grid-column:4;grid-row:1/3;align-self:center}.procedence-help-dialog{width:min(560px,94vw);max-height:88vh;padding:0;border:1px solid #dce4e5;border-radius:8px;background:#fff;color:#3e535a;box-shadow:0 12px 40px #0c262b33}.procedence-help-dialog::backdrop{background:#20343870}.procedence-help-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border-bottom:1px solid #e7ecec}.procedence-help-header h2{margin:0;color:#354a51;font-size:15px}.procedence-help-header>button{width:28px;height:28px;border:0;background:transparent;color:#6d7f83;font-size:23px;cursor:pointer}.procedence-help-choices{display:grid;gap:8px;padding:12px}.procedence-help-choice{display:grid;grid-template-columns:36px minmax(0,1fr) 18px;align-items:center;gap:10px;min-height:66px;padding:9px 12px;border:1px solid #e1e7e7;border-radius:9px;background:#fff;color:#3f565d;text-align:left;cursor:pointer}.procedence-help-choice:hover{background:#f8fbfb;border-color:#cbdcdd}.procedence-help-icon{display:grid;width:34px;height:34px;place-items:center;border:1px solid #e1e8e8;border-radius:9px;background:#f6f9f9;color:#619fa3;font-size:17px}.procedence-help-choice strong,.procedence-help-choice small{display:block}.procedence-help-choice strong{margin-bottom:4px;font-size:13px}.procedence-help-choice small{color:#718187;font-size:11px}.procedence-help-choice>span:last-child{color:#829398;font-size:23px}.procedence-help-detail{padding:18px;color:#536970;font-size:13px;line-height:1.55}.procedence-help-detail button{min-height:32px;padding:0 10px;border:1px solid #d5e0e1;border-radius:5px;background:#fff;color:#526970;font:inherit;font-size:12px;cursor:pointer}@media(max-width:600px){.configuration-view .procedence-heading{grid-template-columns:40px minmax(0,1fr) auto;gap:8px}.configuration-view .procedence-heading>[data-configuration-action=back-procedences]{grid-column:3;grid-row:1}.configuration-view .procedence-heading>[data-configuration-action=open-procedence-help]{grid-column:2;grid-row:3;justify-self:start}.configuration-view .procedence-heading p{grid-column:2/4;grid-row:2}}
.configuration-view.procedences-active{display:flex;height:100%;min-height:0;flex-direction:column;overflow:auto}.configuration-view.procedences-active #configuration-content{display:flex;flex:1;min-height:0;flex-direction:column}.configuration-view .procedence-heading{grid-template-columns:40px minmax(0,1fr) auto auto;column-gap:10px;row-gap:6px;align-items:center;margin:18px 5px 16px 19px}.procedence-toolbar{margin:14px 5px 8px;padding:6px 10px}.procedence-toolbar input[type=search]{min-height:32px}.procedence-table{flex:1;margin:0 5px}.procedence-table th{padding:18px 9px}.procedence-empty{flex:1;min-height:0;align-content:start;padding:45px 22px 22px}.configuration-view.procedences-active>.form-note{margin:10px 5px 5px}
.procedence-table{flex:0 0 auto}
.configuration-view .procedence-heading{grid-template-columns:40px max-content auto minmax(0,1fr) auto}.configuration-view .procedence-heading p{grid-column:2/5;grid-row:2}.configuration-view .procedence-heading>[data-configuration-action=open-procedence-help]{grid-column:3;grid-row:1/3}.configuration-view .procedence-heading>[data-configuration-action=back-procedences]{grid-column:5;grid-row:1/3}.procedence-toolbar{gap:8px;margin-top:6px;padding-left:14px}.procedence-toolbar button{padding-right:9px;padding-left:9px;font-size:11px}.procedence-table{width:calc(100% - 10px)}@media(max-width:600px){.configuration-view .procedence-heading{grid-template-columns:40px minmax(0,1fr) auto}.configuration-view .procedence-heading p{grid-column:2/4;grid-row:2}.configuration-view .procedence-heading>[data-configuration-action=open-procedence-help]{grid-column:2;grid-row:3}.configuration-view .procedence-heading>[data-configuration-action=back-procedences]{grid-column:3;grid-row:1}}
.configuration-view .procedence-heading>[data-configuration-action=open-procedence-help]{grid-row:1;align-self:center}.procedence-toolbar{margin-bottom:2px}.procedence-toolbar button{padding-right:7px;padding-left:7px;font-size:12px}.procedence-table th{padding-top:21px;padding-bottom:21px}.configuration-view.procedences-active #configuration-content>.form-note{margin-bottom:36px}
.configuration-view.procedences-active .procedence-empty{flex:0 0 max(320px,calc(100vh - 347px))}
.configuration-view .procedence-heading{row-gap:0}.procedence-toolbar{margin-bottom:8px}.procedence-table th{padding:18px 9px}
.procedence-editor-dialog{width:min(560px,94vw);max-height:90vh;overflow:auto;padding:0;border:1px solid #dce5e6;border-radius:8px;background:#fff;color:#43575e;box-shadow:0 12px 40px #19343d33}.procedence-editor-dialog::backdrop{background:#20343870}.procedence-editor-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-bottom:1px solid #e7ecec}.procedence-editor-header h2{margin:0;color:#354a51;font-size:16px}.procedence-editor-header>button{width:28px;height:28px;border:0;background:transparent;color:#6d7f83;font-size:23px;cursor:pointer}.procedence-editor-dialog .procedence-editor{max-width:none;margin:0;padding:16px;border:0;border-radius:0;background:#fff}.procedence-editor-dialog .configuration-actions{justify-content:flex-end}.procedence-editor-dialog .configuration-actions button{min-width:72px}
.procedence-editor-dialog{width:min(520px,94vw)}.procedence-editor-header{padding:10px 12px}.procedence-editor-dialog .procedence-editor{padding:10px 12px 16px}.procedence-editor-dialog .procedence-requirements{gap:7px}.procedence-editor-dialog .procedence-requirements label{min-height:60px;margin:0;padding:8px 10px;border:1px solid #e1e7e7;border-radius:8px;background:#fff}.procedence-editor-dialog .procedence-requirements label:has(input:checked){border-color:#84b8ba;background:#eff7f7}.procedence-editor-dialog .procedence-requirements input{align-self:start;margin:3px 0 0;accent-color:#619fa3}.procedence-editor-dialog .procedence-data-label-field{display:grid;gap:5px;color:#536970;font-size:12px}
.procedence-suggestions{max-width:500px}.procedence-empty{gap:12px}.procedence-empty-actions{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:5px}.procedence-empty-actions button{margin:0}
.configuration-view.procedences-active .procedence-header-panel{margin:4px 5px 8px;padding:16px 14px 10px;border:1px solid #dfe7e8;border-radius:8px;background:#f5f9f9}.configuration-view.procedences-active .procedence-header-panel .procedence-heading{margin:0;row-gap:0}.configuration-view.procedences-active .procedence-header-panel .procedence-toolbar{margin:18px 0 0;padding:0;border:0;border-radius:0;background:transparent}.configuration-view.procedences-active .procedence-header-panel .procedence-toolbar button{min-height:30px}.configuration-view.procedences-active .procedence-header-panel .procedence-toolbar input[type=search]{min-height:30px}
.configuration-view.procedences-active .procedence-header-panel{margin:3px 4px 9px;padding:16px 14px 12px}.configuration-view.procedences-active .procedence-header-panel .procedence-toolbar button{min-height:28px}.configuration-view.procedences-active .procedence-table{width:calc(100% - 8px);margin-right:4px;margin-left:4px;table-layout:fixed}.configuration-view.procedences-active .procedence-table th:nth-child(1){width:12%}.configuration-view.procedences-active .procedence-table th:nth-child(2){width:31%}.configuration-view.procedences-active .procedence-table th:nth-child(3){width:38%}.configuration-view.procedences-active .procedence-table th:nth-child(4){width:5%}.configuration-view.procedences-active .procedence-table th:nth-child(5){width:14%}.configuration-view.procedences-active .procedence-table th{padding-top:19px;padding-bottom:19px;font-size:12px}.procedence-empty>span{width:44px;height:44px}.procedence-empty{gap:13px}.procedence-suggestions span{font-size:12px}.procedence-empty-actions{margin-top:0}.procedence-empty-actions button{padding-right:8px;padding-left:8px}
.configuration-view.procedences-active .procedence-table th:nth-child(1){width:11.72%}.configuration-view.procedences-active .procedence-table th:nth-child(2){width:31.1%}.configuration-view.procedences-active .procedence-table th:nth-child(3){width:38.07%}.configuration-view.procedences-active .procedence-table th:nth-child(4){width:4.75%}.configuration-view.procedences-active .procedence-table th:nth-child(5){width:14.36%}.procedence-empty-actions button{padding-right:5px;padding-left:5px}
.configuration-view.procedences-active .procedence-suggestions{transform:translateY(-2px)}.configuration-view.procedences-active .procedence-empty-actions{transform:translateY(-3px)}

/* Configuración · catálogo DEMO de tipos de evento. */
.configuration-view.payment-methods-active{box-sizing:border-box;display:flex;height:100%;min-height:0;flex-direction:column;overflow:auto;padding:0 0 12px}
.configuration-view.payment-methods-active #configuration-content{box-sizing:border-box;display:flex;min-height:100%;flex:1;flex-direction:column}
.payment-methods-header{display:flex;min-height:28px;align-items:center;margin:8px 8px 8px 123px}
.payment-methods-toolbar{display:flex;align-items:center;gap:8px}
.payment-methods-toolbar button{min-height:28px;padding:0 7px;border:1px solid #cfdcde;border-radius:4px;background:#fff;color:#526970;font:inherit;font-size:12px;cursor:pointer}
.payment-methods-toolbar .payment-methods-new{border-color:#619fa3;background:#619fa3;color:#fff}
.payment-methods-toolbar button:not(.payment-methods-new){padding-right:6px;padding-left:6px}
.payment-methods-table{width:calc(100% - 131px);margin:0 8px 0 123px;border-collapse:collapse;table-layout:fixed;background:#fff}
.payment-methods-table th{height:34px;padding:0 10px;border:1px solid #e3e8e9;background:#f4f7f7;color:#50666d;font-size:12px;font-weight:600;text-align:left}
.payment-methods-table th:nth-child(1){width:20%}.payment-methods-table th:nth-child(2){width:32%}.payment-methods-table th:nth-child(3){width:48%}
.payment-methods-table td{height:42px;padding:4px 10px;border:1px solid #e5e9ea;color:#526970;font-size:13px;vertical-align:middle}
.payment-methods-table tbody tr:nth-child(even){background:#f8fafa}
.payment-methods-actions{white-space:nowrap}
.payment-methods-actions button{width:28px;height:28px;margin-right:5px;padding:0;border:0;border-radius:4px;background:transparent;color:#63777c;font:inherit;font-size:17px;cursor:pointer}
.payment-methods-actions button:hover{background:#eaf2f2;color:#315f63}
.payment-methods-status{min-height:18px;margin:8px 10px 0;color:#647b80;font-size:12px}
.payment-method-dialog{box-sizing:border-box;width:min(560px,calc(100vw - 28px));min-height:524px;max-height:min(88vh,660px);padding:25px 29px 22px;border:1px solid #dce5e7;border-radius:8px;background:#fff;color:#394d52;box-shadow:0 16px 52px #102a3033}
.payment-method-dialog.is-predefined{min-height:596px}
.payment-method-dialog::backdrop{background:#26383d66}
.payment-method-dialog form{display:grid;gap:16px}
.payment-method-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:12px;border-bottom:1px solid #e4eaeb}
.payment-method-dialog-header h2{margin:0;color:#364d53;font-size:20px;font-weight:500}
.payment-method-badge{padding:5px 10px;border-radius:16px;background:#edf7ed;color:#4d8651;font-size:11px;font-weight:600;white-space:nowrap}
.payment-method-badge.is-predefined{background:#e9f1f2;color:#52747a}
.payment-method-dialog>form>label:not(.payment-method-cash-toggle){display:grid;gap:7px;color:#4d6268;font-size:13px}
.payment-method-dialog input:not([type=checkbox]){box-sizing:border-box;width:100%;height:36px;padding:7px 10px;border:1px solid #cad8da;border-radius:4px;background:#fff;color:#34494e;font:inherit;font-size:14px}
.payment-method-dialog input:disabled{background:#f4f7f7;color:#687a7f}
.payment-method-cash-toggle{display:flex;align-items:flex-start;gap:12px;padding:13px;border:1px solid #dfe7e8;border-radius:6px;background:#f8fbfb;cursor:pointer}
.payment-method-cash-toggle input{flex:none;width:18px;height:18px;margin:2px 0 0;accent-color:#619fa3}
.payment-method-cash-toggle span{display:grid;gap:5px}
.payment-method-cash-toggle strong{font-size:13px;font-weight:600}
.payment-method-cash-toggle small{color:#718187;font-size:12px;line-height:1.45}
.payment-method-dialog-note{margin:0;color:#718187;font-size:12px;line-height:1.5}
.payment-method-dialog-error{min-height:17px;margin:0;color:#b33b3b;font-size:12px}
.payment-method-dialog-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}
.payment-method-dialog-actions button{min-height:34px;padding:0 14px;border:1px solid #d1dcde;border-radius:4px;background:#fff;color:#526970;font:inherit;font-size:13px;cursor:pointer}
.payment-method-dialog-actions .payment-method-save{border-color:#619fa3;background:#619fa3;color:#fff}
/* Bloques de serie: réplica local del catálogo de numeración DEMO. */
.configuration-view.invoice-series-blocks-active{box-sizing:border-box;display:flex;height:100%;min-height:0;flex-direction:column;overflow:auto;padding:0 4px 0}
.configuration-view.invoice-series-blocks-active>.configuration-heading,.configuration-view.invoice-series-blocks-active>.configuration-tabs{display:none}
.configuration-view.invoice-series-blocks-active #configuration-content{box-sizing:border-box;display:flex;min-height:100%;flex:1;flex-direction:column}
.invoice-series-blocks-header{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-rows:58px 32px;gap:8px 12px;min-height:121px;margin:4px 0 8px;padding:12px 14px 0;border:1px solid #e1e7e8;border-radius:4px;background:#fff}
.invoice-series-blocks-title h1{margin:0;color:#3f555a;font-size:22px;font-weight:500;line-height:28px}
.invoice-series-blocks-title p{margin:3px 0 0;color:#718186;font-size:12px;line-height:17px}
.invoice-series-blocks-help,.invoice-series-blocks-back{grid-row:1;align-self:center;min-height:28px;padding:0 9px;border:1px solid #d2dddf;border-radius:4px;background:#fff;color:#53696e;font:inherit;font-size:12px;cursor:pointer}
.invoice-series-blocks-help{grid-column:2}.invoice-series-blocks-back{grid-column:3}
.invoice-series-blocks-toolbar{display:grid;grid-column:1/-1;grid-row:2;grid-template-columns:106px minmax(0,1fr) 122px;gap:8px;align-items:center}
.invoice-series-blocks-toolbar button{height:28px;padding:0 7px;border:1px solid #619fa3;border-radius:4px;background:#619fa3;color:#fff;font:inherit;font-size:12px;cursor:pointer}
.invoice-series-blocks-toolbar input{box-sizing:border-box;width:100%;height:32px;padding:5px 10px;border:1px solid #dce4e5;border-radius:3px;background:#fff;color:#455b61;font:inherit;font-size:13px}
.invoice-series-blocks-count{color:#61777c;font-size:12px;text-align:right}
.invoice-series-blocks-table-wrap{box-sizing:border-box;height:calc(100vh - 299px);min-height:240px;flex:0 0 auto;overflow:auto;margin:0}
.invoice-series-blocks-table{width:100%;min-width:1000px;border-collapse:collapse;table-layout:fixed;background:#fff}
.invoice-series-blocks-table th{height:48px;padding:0 10px;border:1px solid #e3e8e9;background:#f4f7f7;color:#50666d;font-size:12px;font-weight:600;text-align:left}
.invoice-series-blocks-table th:nth-child(1){width:10.32%}.invoice-series-blocks-table th:nth-child(2){width:14.93%}.invoice-series-blocks-table th:nth-child(3){width:36.8%}.invoice-series-blocks-table th:nth-child(4){width:23%}.invoice-series-blocks-table th:nth-child(5){width:14.93%}
.invoice-series-blocks-table td{height:48px;padding:4px 10px;border:1px solid #e5e9ea;color:#526970;font-size:13px;vertical-align:middle}
.invoice-series-blocks-table tbody tr:nth-child(even){background:#f8fafa}
.invoice-series-blocks-actions{white-space:nowrap}
.invoice-series-blocks-actions button{width:28px;height:28px;margin-right:5px;padding:0;border:0;border-radius:4px;background:transparent;color:#63777c;font:inherit;font-size:17px;cursor:pointer}
.invoice-series-blocks-actions button:hover{background:#eaf2f2;color:#315f63}
.invoice-series-blocks-empty-row>td{height:274px;padding:0!important;text-align:center;vertical-align:middle!important}
.invoice-series-blocks-empty{display:flex;max-width:610px;margin:0 auto;align-items:center;flex-direction:column;gap:12px;color:#526970}
.invoice-series-blocks-empty strong{font-size:18px;font-weight:500}
.invoice-series-blocks-empty p{margin:0;color:#718186;font-size:13px;line-height:1.55}
.invoice-series-blocks-empty .invoice-series-blocks-create-first{min-height:32px;padding:0 12px;border:1px solid #619fa3;border-radius:4px;background:#619fa3;color:#fff;font:inherit;font-size:13px;cursor:pointer}
.invoice-series-block-state{display:inline-flex;align-items:center;min-height:24px;padding:0 11px;border-radius:14px;background:#e5f4e9;color:#207b43;font-size:12px;font-weight:600}
.invoice-series-block-state.is-inactive{background:#f1f2f3;color:#65777b}
.invoice-series-blocks-note{min-height:18px;margin:8px 0 0;color:#65797e;font-size:12px}
.invoice-series-blocks-status{min-height:18px;margin:4px 0 0;color:#647b80;font-size:12px}
.invoice-series-block-dialog{box-sizing:border-box;width:min(520px,calc(100vw - 28px));height:270px;max-height:calc(100vh - 28px);padding:0 12px 12px;border:1px solid #dce5e7;border-radius:6px;background:#fff;color:#394d52;box-shadow:0 16px 52px #102a3033}
.invoice-series-block-dialog::backdrop{background:#26383d66}
.invoice-series-block-dialog form{display:grid;width:100%;margin:0;gap:12px}
.invoice-series-block-dialog h2{box-sizing:border-box;display:flex;height:48px;margin:0;padding:0 0 0 12px;align-items:center;border-bottom:1px solid #e4eaeb;color:#364d53;font-size:16px;font-weight:500}
.invoice-series-block-dialog-fields{display:grid;height:56px;grid-template-columns:120px minmax(0,1fr);gap:12px}
.invoice-series-block-dialog-fields label{box-sizing:border-box;display:grid;height:56px;margin:0;padding:4px 0 0 1px;grid-template-rows:17px 30px;gap:4px;color:#4d6268;font-size:12px}
.invoice-series-block-dialog-fields input{box-sizing:border-box;width:calc(100% - 1px);height:30px;margin-left:0;padding:4px 8px;border:1px solid #cad8da;border-radius:4px;color:#34494e;font:inherit;font-size:13px}
.invoice-series-block-active-toggle{position:relative;box-sizing:border-box;display:flex;height:36px;margin:0!important;padding-left:70px;align-items:center;color:#526970;font-size:12px;cursor:pointer}
.invoice-series-block-active-toggle input{position:absolute;top:7px;left:16px;width:38px;height:20px;margin:0;opacity:0;cursor:pointer}
.invoice-series-block-active-toggle::before{position:absolute;top:8px;left:16px;width:38px;height:20px;border-radius:11px;background:#b7c3c5;content:"";transition:background-color .15s ease}
.invoice-series-block-active-toggle::after{position:absolute;top:11px;left:19px;width:14px;height:14px;border-radius:50%;background:#fff;content:"";transition:transform .15s ease}
.invoice-series-block-active-toggle:has(input:checked)::before{background:#21866f}
.invoice-series-block-active-toggle:has(input:checked)::after{transform:translateX(18px)}
.invoice-series-block-active-toggle:has(input:focus-visible)::before{outline:2px solid #276fb0;outline-offset:2px}
.invoice-series-block-dialog-note{margin:0;color:#64787d;font-size:12px;line-height:1.5}
.invoice-series-block-dialog-error{min-height:16px;margin:-5px 0;color:#b33b3b;font-size:12px}.invoice-series-block-dialog-error[hidden]{display:none}
.invoice-series-block-dialog-actions{display:flex;justify-content:flex-end;gap:8px}
.invoice-series-block-dialog-actions button{min-width:68px;height:32px;padding:0 12px;border:1px solid #d1dcde;border-radius:4px;background:#fff;color:#526970;font:inherit;font-size:12px;cursor:pointer}
.invoice-series-block-dialog-actions button[data-configuration-action="save-series-block"]{border-color:#619fa3;background:#619fa3;color:#fff}
.invoice-series-block-help-dialog{box-sizing:border-box;width:min(520px,calc(100vw - 28px));padding:24px;border:1px solid #dce5e7;border-radius:6px;background:#fff;color:#394d52;box-shadow:0 16px 52px #102a3033}
.invoice-series-block-help-dialog h2{margin:0 0 14px;font-size:18px;font-weight:500}.invoice-series-block-help-dialog p{color:#566b70;font-size:13px;line-height:1.55}.invoice-series-block-help-dialog button{display:block;margin:18px 0 0 auto;min-height:32px;padding:0 12px;border:1px solid #d1dcde;border-radius:4px;background:#fff;color:#526970;font:inherit;font-size:12px;cursor:pointer}
#invoice-series-block-field{margin-top:8px}
#invoice-series-block-preview{margin:2px 0 0}
@media(max-width:900px){.invoice-series-blocks-header{margin-right:4px;margin-left:4px}.invoice-series-blocks-table-wrap{margin:0 4px}.invoice-series-blocks-note,.invoice-series-blocks-status{margin-right:8px;margin-left:8px}}
@media(max-width:620px){.invoice-series-blocks-header{grid-template-rows:auto auto;min-height:0;padding:10px}.invoice-series-blocks-toolbar{grid-template-columns:1fr 110px}.invoice-series-blocks-toolbar button{grid-column:1}.invoice-series-blocks-toolbar input{grid-column:1/-1;grid-row:2}.invoice-series-blocks-count{grid-column:2;grid-row:1}.invoice-series-block-dialog{height:auto;min-height:270px;padding:18px}.invoice-series-block-dialog-fields{grid-template-columns:1fr}}
@media(max-width:900px){.payment-methods-header{margin-left:12px}.payment-methods-table{width:calc(100% - 20px);margin-right:8px;margin-left:12px}}
@media(max-width:620px){.payment-method-dialog{padding:20px 18px}.payment-methods-table{min-width:620px}.configuration-view.payment-methods-active{overflow:auto}}

/* Configuración · catálogo DEMO de tipos de evento. */
.configuration-view.calendar-event-types-active{box-sizing:border-box;display:flex;height:100%;min-height:0;flex-direction:column;overflow:auto;padding:0 0 12px}
.configuration-view.calendar-event-types-active #configuration-content{box-sizing:border-box;display:flex;min-height:100%;flex:1;flex-direction:column}
.calendar-event-types-header{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:17px 16px;margin:4px 5px 6px;padding:12px 14px 13px;border:1px solid #dfe7e8;border-radius:5px;background:#f8fbfb}
.calendar-event-types-title{display:grid;grid-template-columns:40px minmax(0,1fr);min-width:0;min-height:39px;align-content:center;gap:0}
.calendar-event-types-heading-icon{display:flex;width:24px;height:30px;align-items:center;justify-content:center;color:#147080}
.calendar-event-types-heading-icon svg{display:block;width:24px;height:30px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}
.calendar-event-types-title-copy{display:grid;min-width:0;align-content:center;gap:2px}
.calendar-event-types-title h1{margin:0;color:#405961;font-size:20px;font-weight:600;line-height:20px}
.calendar-event-types-title p{margin:0;color:#718187;font-size:13px;line-height:17px}
.calendar-event-types-back{grid-column:2;grid-row:1;align-self:center;width:64px;min-height:28px;padding:0 9px;border:1px solid #d5e0e1;border-radius:4px;background:#fff;color:#526970;font:inherit;font-size:12px;cursor:pointer}
.calendar-event-types-toolbar{display:grid;grid-column:1/-1;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px}
.calendar-event-types-new,.calendar-event-types-create-first{min-height:30px;padding:0 10px;border:0;border-radius:4px;background:#619fa3;color:#fff;font:inherit;font-size:12px;cursor:pointer}
.calendar-event-types-toolbar input[type=search]{box-sizing:border-box;width:100%;min-width:0;height:30px;padding:4px 9px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:#344b52;font:inherit;font-size:13px}
.calendar-event-types-count{box-sizing:border-box;display:flex;width:122px;min-height:32px;align-items:center;justify-content:center;gap:7px;border-radius:4px;background:#f3f7f7;color:#61767c;font-size:12px;white-space:nowrap}
.calendar-event-types-count-icon{display:inline-flex;width:18px;height:18px;align-items:center;justify-content:center;color:#638087}
.calendar-event-types-count-icon svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.2}
.calendar-event-types-table-wrap{min-height:0;flex:1;overflow:auto;margin:0 5px}
.calendar-event-types-table{width:100%;min-width:700px;border-collapse:collapse;table-layout:fixed;background:#fff}
.calendar-event-types-table th{height:40px;padding:0 10px;border-bottom:1px solid #dfe5e6;background:#f0f6f6;color:#5c7378;font-size:12px;font-weight:700;text-align:left}
.calendar-event-types-table th:nth-child(1){width:12.85%}.calendar-event-types-table th:nth-child(2){width:10.03%}.calendar-event-types-table th:nth-child(3){width:31.41%}.calendar-event-types-table th:nth-child(4){width:45.71%}
.calendar-event-types-table td{height:40px;padding:4px 10px;border-bottom:1px solid rgba(2,6,23,.06);color:#526970;font-size:13px;vertical-align:middle}
.calendar-event-types-table tbody tr:nth-child(odd){background:#f5fafa}
.calendar-event-types-actions{white-space:nowrap}
.calendar-event-types-actions button{width:30px;height:30px;margin-right:4px;padding:0;border:0;border-radius:4px;background:transparent;color:#647b80;font:inherit;font-size:18px;cursor:pointer}
.calendar-event-types-actions button:hover{background:#e9f2f2;color:#315f63}
.calendar-event-types-swatch{display:inline-block;width:18px;height:18px;border:1px solid #d9e1e2;border-radius:3px;vertical-align:middle}
.calendar-event-types-pill{display:inline-block;max-width:100%;overflow:hidden;padding:5px 9px;border-radius:4px;text-overflow:ellipsis;white-space:nowrap}
.calendar-event-types-description{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.calendar-event-types-empty-row td{height:235px;padding:0;vertical-align:top}
.calendar-event-types-empty{display:flex;min-height:210px;align-items:center;justify-content:center;flex-direction:column;gap:12px;padding:20px;text-align:center}
.calendar-event-types-empty strong{color:#405961;font-size:16px;font-weight:500}
.calendar-event-types-empty p{max-width:440px;margin:0;color:#718187;font-size:13px;line-height:1.5}
.calendar-event-types-status{min-height:18px;margin:8px 10px 0;color:#647b80;font-size:12px}
.calendar-event-type-dialog{width:min(460px,95vw)}
@media(max-width:650px){.calendar-event-types-header{grid-template-columns:minmax(0,1fr) auto;margin-right:4px;margin-left:4px;padding:10px}.calendar-event-types-title{grid-template-columns:30px minmax(0,1fr);align-items:center;flex-direction:initial;gap:0}.calendar-event-types-heading-icon{width:24px}.calendar-event-types-toolbar{grid-template-columns:1fr auto}.calendar-event-types-new{grid-column:1}.calendar-event-types-toolbar input[type=search]{grid-column:1/-1;grid-row:2}.calendar-event-types-count{grid-column:2;grid-row:1;width:122px}.calendar-event-types-table-wrap{margin-right:4px;margin-left:4px}}

/* Agenda: el calendario mensual y el filtro de agendas permanecen visibles en Lista. */
.agenda-area.list-mode{position:absolute;top:46px;right:0;bottom:0;left:0;height:auto;padding:0;overflow:visible;pointer-events:none;z-index:1}
.agenda-area.list-mode>#calendar-group-filter{position:absolute;top:0;right:auto;bottom:0;left:0;width:224px;max-height:none;overflow:auto;border-right:1px solid #e1e7e8;border-bottom:0;padding:12px 8px 24px;pointer-events:auto}
.agenda-area.list-mode>:not(#calendar-group-filter){display:none!important}
#list-view.with-calendar-sidebar{position:absolute;top:46px;right:0;bottom:0;left:230px;overflow:auto;padding:0;z-index:2}
#list-view.with-calendar-sidebar .list-view-heading{display:none}
#list-view.with-calendar-sidebar .appointment-list-scroll{max-height:none;min-height:100%;border:0;border-radius:0;overflow:auto}

/* Cotejo incremental de filas y columnas de la agenda en Lista. */
#list-view.with-calendar-sidebar .appointment-list-table{table-layout:fixed;min-width:1630px}
#list-view.with-calendar-sidebar .appointment-list-table th{height:35px;padding:0 9px;background:#edf5f3}
#list-view.with-calendar-sidebar .appointment-list-table td{height:58px;padding:10px 9px}
#list-view.with-calendar-sidebar .appointment-list-professional span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#list-view.with-calendar-sidebar .appointment-row-actions-toggle{width:34px;height:24px;font-size:0}
#list-view.with-calendar-sidebar .appointment-row-actions-toggle::after{content:"";width:12px;height:9px;background:linear-gradient(to bottom,currentColor 0 1px,transparent 1px 4px,currentColor 4px 5px,transparent 5px 8px,currentColor 8px 9px)}

/* Agenda semanal: ajuste de geometría y contenido cotejado con la vista de referencia a 1920 px. */
@media(min-width:1600px){
  .agenda-area:not(.list-mode){padding-left:231px}
  .agenda-area:not(.list-mode)>.calendar-group-filter{width:224px}
  .agenda-area:not(.list-mode) .day-headings{flex:0 0 1528px;width:1528px;padding-right:16px}
  .agenda-area:not(.list-mode) .grid{flex:0 0 1527px;width:1527px;min-width:1527px}
}
.event.calendar-appointment{container:calendar-appointment/inline-size;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:5px 5px 0 4px;border-radius:5px;background:#fff;color:#000;box-shadow:inset 5px 0 #b5d439;font:12px/18px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.event.calendar-appointment.is-draggable{cursor:grab}
.event.calendar-appointment.is-draggable:active,.event.calendar-appointment.is-dragging{cursor:grabbing}
.event.calendar-appointment.is-dragging{z-index:30;opacity:.82;box-shadow:0 5px 18px #20343b55,inset 5px 0 #b5d439}
.day.is-drop-target{outline:2px solid #5f9ea0;outline-offset:-2px}
.event.calendar-appointment:not(.is-past){background-image:linear-gradient(var(--appointment-service-tint,transparent),var(--appointment-service-tint,transparent))}
.event.calendar-appointment.is-urgent:not(.is-past){background-color:#fff!important;background-image:linear-gradient(rgba(253,224,71,.75),rgba(253,224,71,.75))!important}
.event.calendar-appointment.is-relocating:not(.is-past){background-color:#fff!important;background-image:repeating-linear-gradient(45deg,rgba(230,230,230,.9) 0 3px,transparent 3px 12px),linear-gradient(rgba(253,224,71,.75),rgba(253,224,71,.75))!important}
.event.calendar-appointment .event-status{display:flex;flex:none;align-items:center;box-sizing:border-box;width:100%;height:17.95px;margin:0;padding:0 8px 0 4px;border:0;border-radius:6px;background:#fff;color:#000;font:12.8px/18px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.event.calendar-appointment .event-status-full,.event.calendar-appointment .event-status-short{display:inline;width:auto;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:inherit;font:inherit}
.event.calendar-appointment .event-status-chip{display:inline-flex;align-items:center;box-sizing:border-box;min-height:17.95px;margin:0;padding:2px 6px;border:1px solid #3b6d6f;border-radius:999px;background:#e7f3f3;color:#3b6d6f;font:700 10.88px/11.968px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.event.calendar-appointment .event-waiting-room-status{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.event.calendar-appointment .event-waiting-room-status.is-not-arrived{border-color:#8b8b8b;background:#f1f1f1;color:#555}
.event.calendar-appointment .event-waiting-room-status.is-at-center{border-color:#b07600;background:#fff3cd;color:#795500}
.event.calendar-appointment .event-waiting-room-status.is-in-room{border-color:#16766f;background:#e0f2ef;color:#0b625b}
.event.calendar-appointment .event-waiting-room-status.is-left{border-color:#3b6d6f;background:#e7f3f3;color:#3b6d6f}
.event.calendar-appointment .event-available-bonuses{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-color:#9865a8;background:#f3eaf6;color:#714183}
.event.calendar-appointment .event-status-short{display:none}
@container calendar-appointment (max-width:96px){.event.calendar-appointment .event-status-full{display:none}.event.calendar-appointment .event-status-short{display:inline}}
 @container calendar-appointment (max-width:160px){.event.calendar-appointment .event-clinical-session-status .event-status-full{display:none}.event.calendar-appointment .event-clinical-session-status .event-status-short{display:inline}}
.event.calendar-appointment .event-meta{display:flex;flex:none;align-items:flex-start;gap:2px;width:100%;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:#000;font:400 12.8px/14.08px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.event.calendar-appointment .event-meta>span{width:auto;padding:0;border:0;border-radius:0;background:transparent;color:#000;font:400 12.8px/14.08px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.event.calendar-appointment .event-meta strong{flex:none;font:700 12.8px/14.08px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.event.calendar-appointment .event-icon{display:block;flex:0 0 14.4px;width:14.4px;height:14.4px;fill:none;stroke:#808080;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.event.calendar-appointment .event-patient-initial{display:none}
.event.calendar-appointment .event-clinical-alert-indicator{display:inline-flex;flex:none;align-items:center;justify-content:center;gap:2px;width:auto;margin:0 4px 0 0;padding:1px 3px;border:0;border-radius:2px;background:#c83a3a;color:#fff;font:700 10px/12px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;white-space:nowrap}
.event.calendar-appointment .event-clinical-alert-indicator>span{display:inline;width:auto;padding:0;border:0;border-radius:0;background:transparent;color:inherit;font:inherit;white-space:nowrap}
.event.calendar-appointment .event-clinical-alert-count{font:inherit}
.event.calendar-appointment .event-clinical-alert-names{display:inline;max-width:110px;overflow:hidden;text-overflow:ellipsis;font:inherit}
@container calendar-appointment (max-width:96px){.event.calendar-appointment .event-clinical-alert-indicator{gap:0;padding:1px 2px}.event.calendar-appointment .event-clinical-alert-count{display:none}}
@container calendar-appointment (max-width:150px){.event.calendar-appointment .event-clinical-alert-names{display:none}}
@container calendar-appointment (max-width:96px){.event.calendar-appointment.show-patient-initial-in-narrow-columns .event-patient-name-full{display:none}.event.calendar-appointment.show-patient-initial-in-narrow-columns .event-patient-initial{display:inline;font-weight:700}}
.work-time-band{position:absolute;left:1px;right:0;background:rgba(177,221,140,.2);pointer-events:none}
.work-cell-time{position:absolute;left:0;right:1px;display:block;height:24px;color:#808080;text-align:center;font:16px/24px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;pointer-events:none;user-select:none}
.event.calendar-appointment.is-past{background-color:#fff!important;background-image:repeating-linear-gradient(45deg,rgba(230,230,230,.9) 0 18px,var(--past-appointment-stripe,rgba(224,224,224,.9)) 18px 36px)!important}
.event.calendar-appointment.is-past[data-past-pattern="solid"]{background-color:var(--past-appointment-color,#e0e0e0)!important;background-image:none!important}

#list-view.with-calendar-sidebar .appointment-list-table{width:1617px;min-width:1617px}
#list-view.with-calendar-sidebar .appointment-list-table td{padding:6px 9px}
#list-view.with-calendar-sidebar .appointment-list-person-copy{margin:0}
#list-view.with-calendar-sidebar .appointment-list-person-name-line{display:flex;align-items:center;gap:6px;min-width:0;margin:0}
#list-view.with-calendar-sidebar .appointment-list-person-name-line strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:600 14.08px/22px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
#list-view.with-calendar-sidebar .appointment-list-person-copy .appointment-list-contact{margin:1px 0 0;font:400 12.16px/22px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
#list-view.with-calendar-sidebar .appointment-list-person-name-line .appointment-list-new-person{display:inline-flex;flex:none;align-items:center;margin:0;padding:1px 7px;border-radius:9px;background:#eaf2dc;color:#547740;font:700 10px/15px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;white-space:nowrap}
#list-view.with-calendar-sidebar .appointment-list-actions{text-align:center}
#list-view.with-calendar-sidebar .appointment-list-notice-cell{text-align:left}
#list-view.with-calendar-sidebar .appointment-list-status-cell{text-align:right}
#list-view.with-calendar-sidebar .appointment-list-status{padding:5px 10px;border-radius:15px;background:#e7f0ff;color:#586f89}
#list-view.with-calendar-sidebar .appointment-row-actions-group-start{margin-top:7px;padding-top:7px;border-top:1px solid #e1e7e8;border-radius:0}
#list-view.with-calendar-sidebar .appointment-row-actions-menu button{display:flex;align-items:center;gap:8px}
#list-view.with-calendar-sidebar .appointment-row-actions-menu button::before{display:none;content:none}
#list-view.with-calendar-sidebar .appointment-row-action-icon{display:block;width:15px;height:15px;flex:0 0 15px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
#list-view.with-calendar-sidebar .appointment-row-actions{width:max-content;margin:0 auto}

/* Agenda · filtro lateral cotejado con el acordeón de especialistas de ByClinics. */
#calendar-group-filter{box-sizing:border-box;overflow-x:hidden;overflow-y:auto;padding:6px 5px 24px 6px}
.agenda-area.list-mode>#calendar-group-filter{padding:6px 5px 24px 6px}
#calendar-group-filter .calendar-mini{width:212px;height:206px;margin:0 0 21px}
#calendar-group-filter .calendar-mini-heading{box-sizing:border-box;height:30px;padding:0 4px;align-items:center}
#calendar-group-filter .calendar-mini-heading strong{color:rgba(33,37,41,.75);font-size:14px;font-weight:400}
#calendar-group-filter .calendar-mini-heading span{gap:11px;margin-right:7px;transform:translate(-1.3px,-3px)}
#calendar-group-filter .calendar-mini-heading button{width:24px;height:24px}
#calendar-group-filter .calendar-mini-weekdays{height:20px;color:rgba(33,37,41,.5);font-size:10px;font-weight:400;align-items:center}
#calendar-group-filter .calendar-mini-weekdays span{padding:0}
#calendar-group-filter .calendar-mini-days [role="gridcell"]{height:26px}
#calendar-group-filter .calendar-mini-day{width:21px;height:21px;color:#212529;font-size:14px}
#calendar-group-filter .calendar-mini-day.outside-month{color:rgba(33,37,41,.25)}
#calendar-group-filter .calendar-mini-day.selected{background:#0d6efd;color:#fff}
#calendar-group-filter .calendar-group-filter-heading{box-sizing:border-box;width:212px;height:18px;margin:0 0 9px;padding:0;color:#5b7378;font:700 12px/18px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;text-transform:uppercase}
#calendar-group-filter .calendar-group-filter-accordion{display:flex;box-sizing:border-box;width:210px;height:30px;margin-left:1px;background:#f5f9f9}
#calendar-group-filter .calendar-group-filter-master{display:flex;box-sizing:border-box;flex:0 0 33px;align-items:center;padding-left:10px;margin:0;cursor:pointer}
#calendar-group-filter .calendar-group-filter-master input{width:15px;height:15px;margin:0;accent-color:#669fa2;transform:translateY(-.6px)}
#calendar-group-filter #calendar-group-filter-toggle{position:relative;display:block;flex:1;min-width:0;height:30px;min-height:30px;padding:0;border:0;background:transparent;color:#1f2937;text-align:left;font:400 14px/18.2px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;cursor:pointer}
#calendar-group-filter #calendar-group-filter-toggle span:first-child{display:inline-block;overflow:hidden;max-width:calc(100% - 100px);padding-right:0;text-overflow:ellipsis;white-space:nowrap}
#calendar-group-filter #calendar-group-filter-toggle span:nth-child(2){position:absolute;top:4px;right:57px;box-sizing:content-box;padding:1px 8px;border:1px solid rgba(2,6,23,.08);border-radius:999px;color:#5b7378;font:400 12px/16.8px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
#calendar-group-filter #calendar-group-filter-toggle span:last-child{position:absolute;top:0;right:8px;color:#61777c;font:400 18px/30px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
#calendar-group-filter #calendar-group-filter-options{box-sizing:border-box;width:210px;min-height:39px;margin:0 0 0 1px;padding:6px 8px 8px}
#calendar-group-filter #calendar-group-filter-options[hidden]{display:none}
#calendar-group-filter #calendar-group-filter-list{display:grid;gap:0}
#calendar-group-filter .calendar-group-filter-option{display:flex;box-sizing:border-box;align-items:center;gap:0;min-height:19px;margin:0;padding:0;color:#1f2937;font:400 13px/15.6px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;cursor:pointer}
#calendar-group-filter .calendar-group-filter-option input{box-sizing:border-box;flex:0 0 13px;width:13px;height:13px;margin:3px 11px 3px 4px;accent-color:#669fa2}
#calendar-group-filter .calendar-group-filter-dot{flex:0 0 10px;width:10px;height:10px;margin-right:8px;border-radius:50%;background:#b5d439}
#calendar-group-filter .calendar-group-filter-status{margin:5px 0 0}
#list-view.with-calendar-sidebar .appointment-list-table{box-sizing:border-box;width:1628px;min-width:1628px;margin-left:1px}
#list-view.with-calendar-sidebar .appointment-list-table th{height:34px}
#list-view.with-calendar-sidebar .appointment-list-table td{height:58px}
#list-view.with-calendar-sidebar .appointment-list-table tbody{position:relative;top:2px}
#list-view.with-calendar-sidebar .appointment-list-table tbody .appointment-list-row:first-child td{height:57px;padding-top:5.5px;padding-bottom:4.5px}
#list-view.with-calendar-sidebar .appointment-list-table td.appointment-list-when{padding-left:16px}
#list-view.with-calendar-sidebar .appointment-list-when-content{display:block;margin:0;font:14px/17.5px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
#list-view.with-calendar-sidebar .appointment-list-when-date{display:block;margin:0;color:#5b7378;font:400 11.52px/14.4px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
#list-view.with-calendar-sidebar .appointment-list-when-time{display:block;margin:0;color:#1f2937;font:600 14.4px/18px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;white-space:nowrap}
#list-view.with-calendar-sidebar .appointment-list-when-time .appointment-list-when-duration{display:inline-block;margin:0 0 0 4px;color:#5b7378;font:400 12.16px/15.2px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;vertical-align:baseline}
#list-view.with-calendar-sidebar .appointment-list-person-name-line strong{color:#1f2937}
#list-view.with-calendar-sidebar .appointment-list-table td.appointment-list-subject{padding-left:8px}
#list-view.with-calendar-sidebar .appointment-list-subject .appointment-list-person{gap:9px}
#list-view.with-calendar-sidebar .appointment-list-avatar{transform:translateY(-2px);background:rgba(95,158,160,.18);color:#5f9ea0}
#list-view.with-calendar-sidebar .appointment-list-person-name-line .appointment-list-new-person{background:#eaf3de;color:#3b6d11}
#list-view.with-calendar-sidebar .appointment-list-person-copy .appointment-list-contact{margin:1px 0 0;color:#5b7378}
#list-view.with-calendar-sidebar .appointment-list-professional.is-appointment>strong{font:600 13.6px/17px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:#1f2937}
#list-view.with-calendar-sidebar .appointment-list-professional.is-appointment>strong::before{width:9px;height:9px;margin-right:5px}
#list-view.with-calendar-sidebar .appointment-list-professional.is-appointment>span{margin:0;color:#5b7378;font:400 12.16px/15.2px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
#list-view.with-calendar-sidebar .appointment-list-notice-cell{text-align:center}
#list-view.with-calendar-sidebar .appointment-list-notice{width:26px;height:26px;color:#94a3b8}
#list-view.with-calendar-sidebar .appointment-list-notice svg{stroke:#94a3b8}
#list-view.with-calendar-sidebar .appointment-list-table td.appointment-list-status-cell{padding-right:8px}
#list-view.with-calendar-sidebar .appointment-list-status{padding:3px 10px;border-radius:20px;background:#e6f1fb;color:#0c447c;font:600 11px/22px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
@media(max-width:850px){#calendar-group-filter .calendar-mini{max-width:none}#calendar-group-filter .calendar-group-filter-heading{width:100%}#calendar-group-filter .calendar-group-filter-accordion,#calendar-group-filter #calendar-group-filter-options{width:100%;margin-left:0}}

/* El filtro de lista se presenta como menú anclado al encabezado, como en ByClinics. */
.appointment-list-filter-dialog{position:fixed;inset:0 auto auto 0;z-index:1200;margin:0;width:250px;min-height:161px;max-width:calc(100vw - 16px);padding:10px 12px;border:1px solid #e1e5e8;border-radius:8px;box-shadow:0 5px 18px #1f29371c;color:#495057;background:#fff}
.appointment-list-filter-dialog::backdrop{background:transparent}
.appointment-list-filter-dialog form{display:grid;gap:10px}
.appointment-list-filter-dialog select,.appointment-list-filter-dialog input{min-height:33px;padding:6px 9px;border:1px solid #d8dee3;border-radius:8px;background:#fff;color:#495057;font:13px Arial,sans-serif}
.appointment-list-filter-operator-control{position:relative;width:100%;height:32px;margin-top:-1px;margin-bottom:-1px}
.appointment-list-filter-operator-control>button{box-sizing:border-box;display:flex;width:calc(100% - 2px);height:30px;align-items:center;justify-content:space-between;margin:1px;padding:5px 9px;border:1px solid #d8dee3;border-radius:8px;background:#fff;color:#495057;text-align:left;font:13px Arial,sans-serif;cursor:pointer}
.appointment-list-filter-operator-control>button:focus-visible{outline:2px solid #79b9b4;outline-offset:1px}
.appointment-list-filter-operator-control>button svg{width:14px;height:14px;flex:none;fill:none;stroke:#697780;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.appointment-list-filter-operator-menu[hidden]{display:none!important}
.appointment-list-filter-operator-menu{position:fixed;z-index:1220;width:224px;max-height:300px;overflow:auto;padding:0;border:1px solid #d8dee3;background:#fff;box-shadow:0 4px 12px #24343b26;scrollbar-width:auto}
.appointment-list-filter-operator-menu [role=option]{display:block;width:100%;height:30px;min-height:30px;padding:4px 12px;border:0;border-radius:0;background:#fff;color:#343a40;text-align:left;font:14px/22px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;cursor:pointer}
.appointment-list-filter-operator-menu [role=option]:hover,.appointment-list-filter-operator-menu [role=option].selected{background:#e2f0ef}
.appointment-list-filter-dialog:not(:has(#appointment-list-filter-datetime-control:not([hidden]))) {padding-top:13px}
.appointment-list-filter-dialog:not(:has(#appointment-list-filter-datetime-control:not([hidden]))) form{row-gap:16px}
.appointment-list-filter-dialog:not(:has(#appointment-list-filter-datetime-control:not([hidden]))) .appointment-list-filter-actions{margin-top:10px}
.appointment-list-filter-dialog:not(:has(#appointment-list-filter-datetime-control:not([hidden]))) #appointment-list-filter-value{width:calc(100% - 2px);height:30px;min-height:30px;margin-left:1px}
.appointment-list-filter-dialog input::placeholder{color:#9aa1a8}
.appointment-list-filter-dialog #appointment-list-filter-status:empty{display:none}
.appointment-list-filter-actions{display:flex;justify-content:flex-end;gap:8px;padding:0;border:0}
.appointment-list-filter-actions button{min-height:29px;padding:5px 12px;border:0;border-radius:6px;background:#697780;color:#fff;font:12px Arial,sans-serif}
.appointment-list-filter-actions .save{order:0;background:#63a6a1}
.appointment-list-filter-actions #clear-appointment-list-filter{order:1}
.appointment-list-filter-dialog:has(#appointment-list-filter-datetime-control:not([hidden])){min-height:161px;padding-top:13px}
.appointment-list-filter-dialog:has(#appointment-list-filter-datetime-control:not([hidden])) #appointment-list-filter-operator-control{height:32px}
.appointment-list-filter-dialog:has(#appointment-list-filter-datetime-control:not([hidden])) #appointment-list-filter-datetime{height:30px}
.appointment-list-filter-dialog:has(#appointment-list-filter-datetime-control:not([hidden])) #appointment-list-filter-datetime-control{margin-top:5px}
.appointment-list-filter-dialog:has(#appointment-list-filter-datetime-control:not([hidden])) .appointment-list-filter-actions{margin-top:15px}
.appointment-list-filter-actions button{height:32px;min-height:32px;padding:4px 8px;border:1px solid #6c757d;border-radius:9px;background:#6c757d;font:14px/22px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.appointment-list-filter-actions .save{border-color:#5f9ea0;background:#5f9ea0}
.appointment-list-filter-actions .save{width:53.2px;border:1px solid #5f9ea0}
#list-view.with-calendar-sidebar .appointment-list-table th:last-child{text-align:right}
#list-view.with-calendar-sidebar .appointment-list-table th:nth-child(2),#list-view.with-calendar-sidebar .appointment-list-table th:nth-child(3),#list-view.with-calendar-sidebar .appointment-list-table th:last-child{position:sticky;padding-right:30px}
#list-view.with-calendar-sidebar .appointment-list-table th .appointment-list-filter{position:absolute;right:7px;top:50%;transform:translateY(-50%);margin:0;padding:1px 4px}
.appointment-list-filter-datetime-control{position:relative;display:flex;align-items:center;width:100%;height:32px;overflow:hidden;border:1px solid #d8dee3;border-radius:8px;background:#fff}
.appointment-list-filter-datetime-control input{flex:1;min-width:0;width:0;height:30px;min-height:0;padding:6px 8px!important;border:0!important;border-radius:0!important;outline:0;background:transparent!important;font:13px Arial,sans-serif!important}
.appointment-list-filter-datetime-control:not(.has-value) input{color:transparent}
.appointment-list-filter-datetime-control input::-webkit-calendar-picker-indicator{display:none}
.appointment-list-filter-datetime-placeholder{position:absolute;left:9px;z-index:1;color:#8a9097;font:13px Arial,sans-serif;pointer-events:none}
.appointment-list-filter-datetime-control.has-value .appointment-list-filter-datetime-placeholder{display:none}
.appointment-list-filter-datetime-control button{display:grid;flex:0 0 31px;place-items:center;height:30px;padding:0;border:0;border-left:1px solid #e2e5e8;border-radius:0;background:#fff;color:#57636a;cursor:pointer}
.appointment-list-filter-datetime-control button:hover{background:#f3f6f7}
.appointment-list-filter-datetime-control button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.appointment-list-filter-picker[hidden],.appointment-list-filter-calendar[hidden],.appointment-list-filter-times[hidden]{display:none!important}
.appointment-list-filter-picker{position:fixed;z-index:1210;width:244px;height:329px;border:1px solid #dfe4e7;border-radius:4px;background:#fff;box-shadow:0 4px 12px #24343b26;color:#52616a;font:13px Arial,sans-serif}
.appointment-list-filter-calendar{width:100%;height:100%;display:grid;grid-template-rows:46px 32px 192px 1fr}
.appointment-list-filter-calendar>header{display:flex;align-items:center;gap:11.3px;padding:0 8px 0 14px;border-bottom:1px solid #edf0f2}
.appointment-list-filter-calendar>header strong{display:flex;flex:0 0 135px;align-items:center;height:30px;margin-right:auto;transform:translateY(.5px);color:#212529bf;font:700 16px/24px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.appointment-list-filter-calendar>header button{display:grid;flex:0 0 24px;width:24px;height:24px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#52616a;font:16px/24px Arial,sans-serif;transform:translateY(-2.5px);cursor:pointer}
.appointment-list-filter-calendar>header button:hover,.appointment-list-filter-calendar [data-calendar-today]:hover{background:#edf6f5}
.appointment-list-filter-weekdays,.appointment-list-filter-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:center;justify-items:center;margin-right:8px;margin-left:8px}
.appointment-list-filter-weekdays{color:#212529;font:12px/18px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.appointment-list-filter-days{grid-template-rows:repeat(6,32px)}
.appointment-list-filter-days button{width:32px;height:32px;padding:0;border:1px solid transparent;border-radius:50%;background:transparent;color:#212529;font:12px/18px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;cursor:pointer}
.appointment-list-filter-days button:hover{background:#edf6f5}
.appointment-list-filter-days button.outside-month{color:#aab2b7}
.appointment-list-filter-days button.today{border-color:#62a5a0;color:#176c69}
.appointment-list-filter-days button.selected{background:#5f9ea0;color:#fff}
.appointment-list-filter-calendar>footer{display:flex;align-self:start;align-items:center;justify-content:center;height:49px;margin-top:8px;padding:0;border-top:1px solid #edf0f2}
.appointment-list-filter-calendar [data-calendar-today]{width:42.9px;height:32px;padding:5px 8px;border:0;border-radius:4px;background:transparent;color:#5f9ea0;font:14px/22px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;cursor:pointer}
.appointment-list-filter-times{width:100%;height:100%;overflow:auto;padding:0 1px;scrollbar-width:thin}
.appointment-list-filter-times button{display:block;width:100%;height:30px;padding:0 12px;border:0;background:#fff;color:#52616a;text-align:left;font:13px Arial,sans-serif;cursor:pointer}
.appointment-list-filter-times button:hover{background:#edf6f5}
.appointment-list-filter-times button.selected{background:#e6f2f1;color:#176c69;font-weight:600}
@media(max-width:650px){
  .rail{display:none}
  .agenda-area.list-mode>#calendar-group-filter{width:218px}
  #calendar-group-filter .calendar-mini{width:198px}
  #list-view.with-calendar-sidebar{left:218px}
}
#list-view.with-calendar-sidebar .appointment-row-actions-menu button{padding:0 12px;color:#212529;font:14px/30px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
#list-view.with-calendar-sidebar .appointment-row-actions-menu button:disabled{opacity:.35;cursor:not-allowed}
#list-view.with-calendar-sidebar .appointment-row-action-icon{width:16px;height:16px;flex-basis:16px}

/* Ficha rápida de cita: anclada al elemento activo, como el popover de agenda. */
#appointment-detail.appointment-detail-dialog{position:fixed;inset:auto;z-index:50;width:min(364px,calc(100vw - 28px));margin:0;transform:translate(-50%,-50%)}

#appointment-detail .appointment-detail-status{display:flex;align-items:center;flex:0 0 auto;margin:0;font-size:0}
#appointment-detail #detail-status{width:112px;max-width:112px;min-height:28px;height:28px;padding:0 19px 0 7px;font-size:10px}
#appointment-detail .appointment-detail-header>button{position:absolute;top:11px;right:12px;z-index:1}
#appointment-detail .appointment-detail-time-line{padding-right:28px}

#appointment-detail .appointment-detail-time-line{justify-content:flex-start}
#appointment-detail .appointment-detail-actions{margin-top:12px}
#appointment-detail .appointment-detail-action-row{display:flex;align-items:center;justify-content:space-between;gap:4px;min-width:0}
#appointment-detail .appointment-detail-more-actions{position:relative;flex:0 0 auto;margin:0}
#appointment-detail .appointment-detail-more-actions>summary{min-height:28px;height:28px;padding:0 8px;font-size:11px}
#appointment-detail .appointment-detail-more-actions>div{position:absolute;z-index:4;left:0;bottom:calc(100% + 6px);width:min(300px,calc(100vw - 40px));max-height:55vh;overflow:auto;padding:10px;border:1px solid #dce5e6;border-radius:7px;background:#fff;box-shadow:0 8px 24px #17373d2b}
#appointment-detail .appointment-detail-primary-actions{display:flex;flex:0 0 auto;gap:4px;margin:0;flex-wrap:nowrap}
#appointment-detail .appointment-detail-primary-actions button{min-width:0;min-height:28px;height:28px;padding:0 8px;font-size:11px;white-space:nowrap}
#appointment-detail #open-clinical-session{border-color:#22b5cf;background:#22b5cf;color:#fff}
#appointment-detail #manage-appointment-payment{border-color:#f0b923;background:#f0b923;color:#354b4f}
#appointment-detail .appointment-detail-billing-menu{position:relative;flex:0 0 auto}
#appointment-detail .appointment-detail-billing-menu>summary{display:inline-flex;align-items:center;gap:7px;min-height:28px;height:28px;padding:0 9px;border:1px solid #f0b923;border-radius:5px;background:#f0b923;color:#354b4f;font-size:11px;font-weight:600;cursor:pointer;list-style:none}
#appointment-detail .appointment-detail-billing-menu>summary::-webkit-details-marker{display:none}
#appointment-detail .appointment-detail-billing-menu>summary::after{content:"";width:0;height:0;border:4px solid transparent;border-top-color:currentColor;transform:translateY(2px)}
#appointment-detail .appointment-detail-billing-menu>div{position:fixed;z-index:10000;top:0;left:0;width:120px;padding:4px;border:1px solid #dce5e6;border-radius:5px;background:#fff;box-shadow:0 5px 16px #17373d2b}
#appointment-detail .appointment-detail-billing-menu>div button{display:block;width:100%;min-height:30px;height:30px;padding:0 9px;border:0;border-radius:3px;background:#fff;color:#344b52;text-align:left;font:11px/30px system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer}
#appointment-detail .appointment-detail-billing-menu>div button:hover:not(:disabled){background:#f2f6f6}
#appointment-detail .appointment-detail-billing-menu>div button:disabled{opacity:.45;cursor:not-allowed}
#appointment-detail .appointment-detail-status-menu{position:relative;flex:0 0 auto}
#appointment-detail .appointment-detail-status-menu>summary{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;width:112px;min-height:28px;height:28px;padding:0 8px;border:0;border-radius:5px;background:#62ad79;color:#fff;font-size:10px;font-weight:600;cursor:pointer;list-style:none}
#appointment-detail .appointment-detail-status-menu>summary::-webkit-details-marker{display:none}
#appointment-detail .appointment-detail-menu-caret{width:0;height:0;border:4px solid transparent;border-top-color:currentColor;transform:translateY(2px)}
#appointment-detail .appointment-detail-status-menu>[role="menu"]{position:fixed;z-index:10000;top:0;left:0;width:224px;padding:4px;border:1px solid #dce5e6;border-radius:5px;background:#fff;box-shadow:0 5px 16px #17373d2b}
#appointment-detail .appointment-detail-status-menu>[role="menu"] button{display:block;width:100%;min-height:30px;height:30px;padding:0 10px;border:0;border-radius:3px;background:#fff;color:#344b52;text-align:left;font:12px/30px system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer}
#appointment-detail .appointment-detail-status-menu>[role="menu"] button:hover,#appointment-detail .appointment-detail-status-menu>[role="menu"] button[aria-checked="true"]{background:#f2f6f6}
#appointment-detail .appointment-detail-status-menu .appointment-detail-menu-note{margin:4px 5px 2px;padding:6px 5px 2px;border:0;border-top:1px solid #e4e9ea;background:#fff;color:#21859a;font-size:10px;line-height:1.3;text-align:left;cursor:pointer}
#appointment-detail .appointment-detail-status-menu .appointment-detail-menu-note:hover{text-decoration:underline;background:#fff}

#appointment-detail .appointment-detail-patient-line #detail-reason[hidden]{display:none}
.appointment-tabs{margin:7px 0 0 -10px;gap:8px}.appointment-tabs button{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 8px;box-sizing:border-box}.appointment-tabs button[data-appointment-tab="data"]{width:94px}.appointment-tabs button[data-appointment-tab="professionals"]{width:132px}.appointment-tabs button[data-appointment-tab="services"]{width:110px}.appointment-tabs button[data-appointment-tab="reminder"]{width:136px;margin-left:1px}.appointment-tabs button[data-appointment-tab="followups"]{width:86px}.appointment-tabs button[data-appointment-tab="tasks"]{width:86px}.appointment-tabs button[data-appointment-tab="trace"]{width:130px}.appointment-tabs .appointment-tab-icon{width:16px;height:16px;flex:0 0 16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.appointment-center-row #appointment-center-field{max-width:348px}.appointment-data-time-room-row{display:grid;grid-template-columns:205px 205px 205px;gap:0;padding:8px 0 0 3px}.appointment-data-time-room-row input,.appointment-data-time-room-row select{max-width:190px}.appointment-data-types-row{display:grid;grid-template-columns:154px 154px 154px;gap:0;padding-left:3px}.appointment-data-types-row select{max-width:140px}.appointment-data-person-row{display:grid;grid-template-columns:436px 182px;gap:0;padding-left:16px}.appointment-data-person-row>label:first-of-type select{max-width:352px}.appointment-data-person-row>label:last-of-type input{max-width:152px}.appointment-main-service-row{display:grid;grid-template-columns:182px 769px;column-gap:76px;padding-left:16px}.appointment-reason-field{padding-left:5px}.appointment-reason-field textarea{width:min(1116px,100%)}.appointment-data-status-row{display:grid;grid-template-columns:190px 160px minmax(0,1fr);gap:0 24px;padding-left:20px}.appointment-primary-professional{max-width:420px;margin:18px 0 14px}

#appointment-detail .appointment-detail-more-actions>[role="menu"]{position:fixed;z-index:10000;top:0;left:0;display:block;box-sizing:border-box;width:204px;height:174px;max-height:55vh;overflow:auto;padding:4px;border:1px solid #dce5e6;border-radius:5px;background:#fff;box-shadow:0 5px 16px #17373d2b}
#appointment-detail .appointment-detail-more-actions>[role="menu"] button{display:block;width:100%;min-height:30px;height:30px;padding:0 9px;border:0;border-radius:3px;background:#fff;color:#344b52;text-align:left;font:12px/30px system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer;white-space:nowrap}
#appointment-detail .appointment-detail-more-actions>[role="menu"] button:hover:not(:disabled){background:#f2f6f6}
#appointment-detail .appointment-detail-more-actions>[role="menu"] button:disabled{opacity:.45;cursor:not-allowed}
#appointment-detail .appointment-detail-more-actions>[role="menu"] hr{height:1px;margin:3px 4px;border:0;background:#e4e9ea}
#appointment-detail .appointment-detail-local-info{margin-top:8px;color:#718187;font-size:11px}
#detail-options-menu [role="menu"]>.appointment-detail-local-info{flex:1 0 100%;margin:0}
#appointment-detail .appointment-detail-local-info>summary{cursor:pointer;list-style:none}
#appointment-detail .appointment-detail-local-info>summary::-webkit-details-marker{display:none}
#appointment-detail .appointment-detail-local-info[open]>summary{margin-bottom:6px}
#appointment-detail .appointment-detail-local-info>button{margin:4px 0}
/* Detalle rápido · espaciado cotejado fila a fila con el pop-up de ByClinics. */
#appointment-detail.appointment-detail-dialog{width:min(365px,calc(100vw - 28px));padding:18px 22px 12.1px}
#appointment-detail .appointment-detail-header{margin-bottom:16px}
#appointment-detail .appointment-detail-time-line{gap:8px}
#appointment-detail .appointment-detail-time-line #detail-time{font:700 16px/24px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
#appointment-detail #close-detail{top:15px;right:12px;width:30px;height:30px;min-height:30px;padding:0}
#appointment-detail .appointment-detail-professional-line{display:flex;align-items:center;gap:6px;min-height:22.5px;margin:11px 0 4px;color:#b5d439;font:700 15px/22.5px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
#appointment-detail .appointment-detail-professional-line>svg{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:#5b7378;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
#appointment-detail .appointment-detail-professional-line #detail-professional{margin:0;color:inherit;font:inherit;font-weight:700}
#appointment-detail .appointment-detail-patient-line{gap:6px;min-height:22.5px;margin:4px 0}
#appointment-detail .appointment-detail-person-icon{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:#5b7378;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
#appointment-detail .appointment-detail-patient-line #detail-patient{font:700 15px/22.5px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:#1f2937}
#appointment-detail .appointment-detail-patient-line #detail-reason{display:inline-flex;align-items:center;gap:3px;box-sizing:border-box;height:18px;padding:2px 6px;border:1px solid #5f9ea0;border-radius:999px;background:rgba(95,158,160,.18);color:#5f9ea0;font:700 10.88px/11.968px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;white-space:nowrap}
#appointment-detail #detail-reason svg{width:12px;height:12px;flex:0 0 12px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
#appointment-detail .appointment-detail-time-line .appointment-detail-status-badge{box-sizing:border-box;min-height:17.95px;height:17.95px;padding:2px 6px;border:1px solid #3b6d6f;border-radius:999px;background:#e7f3f3;color:#3b6d6f;font:700 10.88px/11.968px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
#appointment-detail .appointment-detail-action-row .appointment-detail-primary-actions button,#appointment-detail .appointment-detail-action-row .appointment-detail-more-actions>summary,#appointment-detail .appointment-detail-action-row .appointment-detail-billing-menu>summary,#appointment-detail .appointment-detail-action-row .appointment-detail-status-menu>summary{box-sizing:border-box;border-radius:9px;font:12px/16.08px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;padding:5px 6px}
#appointment-detail .appointment-detail-action-row .appointment-detail-more-actions>summary{border:1px solid #5f9ea0;background:#5f9ea0;color:#fff}
#appointment-detail .appointment-detail-action-row #open-clinical-session{border-color:#0dcaf0;background:#0dcaf0;color:#000}
#appointment-detail .appointment-detail-action-row .appointment-detail-billing-menu>summary{border-color:#ffc107;background:#ffc107;color:#000}
#appointment-detail .appointment-detail-action-row .appointment-detail-status-menu>summary{border-color:#63b37a;background:#63b37a;color:#fff}
#appointment-detail #detail-phone{margin:4px 0;color:#586f74;font-size:11px;line-height:19.5px}
#appointment-detail .appointment-detail-info-row{margin:3px 0 4px}
#appointment-detail .appointment-detail-info-row{min-height:19.5px;margin:3px 0 4px}
#appointment-detail .appointment-detail-contact-actions{margin-top:12px}
#appointment-detail #detail-error:empty{display:none}
#appointment-detail .appointment-detail-actions{margin-top:22px;padding-top:8px}
#appointment-detail .appointment-detail-actions{margin-inline:-4px}
#appointment-detail .appointment-detail-action-row{margin-top:0}
#appointment-detail .appointment-detail-leading-actions{display:flex;align-items:center;gap:4px;min-width:0}
#appointment-detail #detail-options-menu>summary{width:78.5px;justify-content:center}
#appointment-detail .appointment-detail-primary-actions #open-clinical-session{width:48.5px;min-width:48.5px;min-height:28px;height:28px;padding:5px 6px;font:12px/16.08px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
#appointment-detail .appointment-detail-billing-menu>summary{width:71.1px;justify-content:center}
#appointment-detail .appointment-detail-status-menu>summary{width:90.4px}
#appointment-detail .appointment-detail-contact-actions{gap:4px}
#appointment-detail .appointment-detail-notification-state{width:28px;height:26px}
#appointment-detail #detail-whatsapp{width:34px;min-width:34px;min-height:28px;height:28px;padding:0 4px;box-sizing:border-box}
@media(max-width:1100px){.appointment-data-time-room-row{grid-template-columns:repeat(3,minmax(0,1fr))}.appointment-data-time-room-row input,.appointment-data-time-room-row select,.appointment-data-types-row select{max-width:100%}.appointment-data-types-row{grid-template-columns:repeat(3,minmax(0,1fr))}.appointment-data-person-row{grid-template-columns:minmax(0,2fr) minmax(150px,1fr);padding-left:0}.appointment-data-person-row>label:first-of-type select,.appointment-data-person-row>label:last-of-type input{max-width:100%}.appointment-main-service-row{grid-template-columns:minmax(160px,1fr) minmax(0,3fr);column-gap:16px;padding-left:0}}
@media(max-width:650px){.appointment-data-time-room-row,.appointment-data-types-row,.appointment-data-person-row,.appointment-main-service-row,.appointment-data-status-row{grid-template-columns:1fr;padding-left:0}.appointment-data-time-room-row input,.appointment-data-time-room-row select,.appointment-data-types-row select,.appointment-data-person-row>label:first-of-type select,.appointment-data-person-row>label:last-of-type input,.appointment-main-service-row select{max-width:100%}.appointment-data-time-room-row{gap:0}.appointment-main-service-row{column-gap:0}}

.appointment-dialog{height:min(863px,calc(100vh - 72px));max-height:min(863px,calc(100vh - 32px))}
#appointment-form .form-grid input:not([type=hidden]):not([type=checkbox]),#appointment-form .form-grid select{height:30px;padding:4px 8px}
#appointment-form .form-grid textarea{height:50px;min-height:50px;padding:5px 8px}
#appointment-form .appointment-data-time-room-row{grid-template-columns:116px 106px minmax(190px,1fr);padding-left:13px}
#appointment-form .appointment-data-time-room-row #appointment-start-time,#appointment-form .appointment-data-time-room-row #appointment-end-time{width:75px;max-width:75px;padding:4px 5px}
#appointment-form .appointment-data-time-room-row .appointment-room-field select{max-width:190px}
#appointment-form .appointment-data-tags-row{padding-left:20px}
#appointment-form .appointment-data-tags-row label{max-width:173px}
#appointment-form .appointment-data-person-row{margin-top:16px}
#appointment-form .appointment-reason-field{margin-top:8px}
#appointment-form .appointment-data-tags-row{margin-top:-21px}
#appointment-form .appointment-data-status-row{grid-template-columns:160px minmax(0,1fr);padding-left:54px;margin-top:-18px}
#appointment-form .appointment-data-status-row select{max-width:106px}
#appointment-form .appointment-data-status-row .check-field{justify-self:end;margin-right:50px;transform:translateY(10px)}
#appointment-form .appointment-data-types-row{padding-left:13px}
#appointment-form .appointment-reason-field{margin-top:22px}
#appointment-form .appointment-data-status-row .check-field{margin-right:45px}
@media(max-width:650px){#appointment-form .appointment-data-time-room-row{grid-template-columns:1fr;padding-left:0}#appointment-form .appointment-data-status-row{grid-template-columns:1fr;padding-left:0}#appointment-form .appointment-data-status-row .check-field{justify-self:start;margin-right:0}}

/* Alta de cita · pestaña Especialistas, alineada con la ficha ByClinics observada. */
.appointment-professionals-panel{width:calc(100% + 10px);min-height:0;margin-left:-10px;padding:12px;border:1px solid #dce5e6;border-radius:5px;background:#fff}
.appointment-professionals-panel .appointment-professional-picker{position:relative;margin:0;padding:32px 10px 12px;border:1px solid #f0e4df;border-radius:9px;background:#fff8f5}
.appointment-professional-selector{position:relative}
.appointment-professional-selector>button{display:flex;align-items:center;justify-content:space-between;width:100%;min-width:0;height:32px;padding:0 9px;border:1px solid #cfdadd;border-radius:4px;background:#fff;color:#5c7076;text-align:left;font:inherit;font-size:12px;cursor:pointer}
.appointment-professional-selector>button:focus-visible{outline:2px solid #619fa3;outline-offset:1px}
.appointment-professional-chevron{margin-left:10px;color:#75858a;font-size:15px;line-height:1}
.appointment-professional-selector .appointment-additional-professionals-options{position:absolute;top:calc(100% + 2px);right:0;left:0;z-index:5;display:grid;max-height:230px;overflow:auto;padding:5px;border:1px solid #d8e1e3;border-radius:4px;background:#fff;box-shadow:0 5px 14px #263b441f}
.appointment-professional-selector .appointment-additional-professionals-options[hidden]{display:none}
.appointment-professional-choice{align-items:center;min-height:32px;padding:6px 8px;border:0;border-radius:3px;background:#fff}
.appointment-professional-choice:hover{background:#f4f8f8}
.appointment-professional-choice small{color:#718187}
.appointment-professional-selector .appointment-professional-empty{padding:8px 6px;color:#748388;font-size:12px}
.appointment-professionals-panel #appointment-additional-professionals-note{margin:21px 0 0;color:#77858a;font-size:12px;line-height:1.4}
.appointment-professionals-panel:not([hidden])~#appointment-data-disclaimer{display:none}
.appointment-services-panel:not([hidden])~#appointment-data-disclaimer{display:none}
@media(max-width:560px){.appointment-professionals-panel{padding:8px}.appointment-professionals-panel .appointment-professional-picker{padding:22px 8px 10px}}

/* Alta de cita · catálogo de Servicios. */
.appointment-services-panel{width:calc(100% + 10px);margin:13px 0 0 -10px;padding:0;box-shadow:0 0 0 1px #dce5e6;border-radius:5px}
.appointment-services-card{width:calc(100% - 28px);min-height:139px;margin-inline:14px;padding:15px 13px 12px 18px;border:1px solid #f0e2dc;border-left:4px solid #ed6a3d;border-radius:12px;background:#fffaf7;box-shadow:0 4px 12px #293e4510}
.appointment-service-add{display:grid;grid-template-columns:162px minmax(0,1fr) 67px;align-items:center;gap:8px;margin:0}
.appointment-service-add>select,.appointment-service-search>input{width:100%;min-width:0;height:32px;padding:0 9px;border:1px solid #d6dfe1;border-radius:5px;background:#fff;color:#43575e;font:inherit;font-size:12px}
.appointment-service-add>select{border-radius:16px;padding-left:11px}
.appointment-service-search{position:relative;min-width:0}
.appointment-service-search>input{border-radius:18px}
.appointment-service-search>input:focus-visible{outline:2px solid #79b2b2;outline-offset:1px}
.appointment-service-add>button{height:32px;min-height:32px;padding:0 10px;border:0;border-radius:5px;background:#ed6a3d;color:#fff;font:inherit;font-size:12px;font-weight:600;white-space:nowrap;cursor:pointer}
.appointment-service-add>button:disabled{opacity:.58;cursor:not-allowed}
.appointment-service-options{position:absolute;top:calc(100% + 4px);right:0;left:0;z-index:8;max-height:260px;overflow:auto;padding:4px;border:1px solid #d9e1e2;border-radius:7px;background:#fff;box-shadow:0 7px 20px #283c4424}
.appointment-service-options[hidden]{display:none}
.appointment-service-option{display:grid;grid-template-columns:14px minmax(0,1fr) auto auto;align-items:center;gap:8px;width:100%;min-height:36px;padding:5px 6px;border:0;border-radius:5px;background:#fff;color:#44565c;text-align:left;font:inherit;font-size:12px;cursor:pointer}
.appointment-service-option:hover,.appointment-service-option:focus-visible{background:#f4f7f7;outline:0}
.appointment-service-option-dot,.appointment-service-row-dot{display:inline-block;width:9px;height:9px;flex:0 0 9px;border-radius:50%}
.appointment-service-option-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.appointment-service-option-duration,.appointment-service-option-price{padding:5px 8px;border-radius:14px;background:#edf5f4;color:#58777a;font-size:11px;white-space:nowrap}
.appointment-service-option-price{background:#fff0e9;color:#c15d3b}
.appointment-service-options-empty{padding:9px 8px;color:#77858a;font-size:12px}
.appointment-services-card #appointment-service-error{min-height:0;margin:0}
.appointment-service-empty{margin:38px 0 0;color:#8b999d;text-align:center;font-size:12px}
.appointment-service-empty[hidden]{display:none}
.appointment-services-card .service-line{overflow:visible;margin:17px 0 0}
.appointment-services-card .service-line[hidden]{display:none}
.appointment-services-card .service-line table{table-layout:fixed}
.appointment-services-card .service-line th{padding:6px 7px;border-bottom-color:#e4dcd8;color:#69787c;font-size:10px}
.appointment-services-card .service-line th:first-child,.appointment-services-card .service-line td:first-child{width:auto;text-align:left}
.appointment-services-card .service-line th:nth-child(2),.appointment-services-card .service-line td:nth-child(2){width:78px}
.appointment-services-card .service-line th:nth-child(3),.appointment-services-card .service-line td:nth-child(3){width:90px}
.appointment-services-card .service-line td{padding:6px 7px;border-bottom-color:#efe8e4;color:#44565c;font-size:12px}
.appointment-services-card .service-line td:first-child{display:flex;align-items:center;gap:8px;min-height:34px}
.appointment-services-card .service-line input{min-width:0;height:32px;padding:4px 7px;border-color:#dfe3e4;border-radius:7px;text-align:right;font-size:12px}
.appointment-services-card .service-line td:first-child{gap:0}
.appointment-services-card .appointment-service-row-remove{width:28px;height:28px;min-height:28px;flex:0 0 28px;margin-right:13px;padding:0;border:1px solid #f1d8d2;border-radius:50%;background:#fdf1ee;color:#cb7567;font-size:19px;line-height:1;cursor:pointer}
.appointment-services-card .appointment-service-row-dot{margin-right:6px}
.appointment-services-card .appointment-service-total{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:10px 2px 0;color:#758184;font-size:11px}
.appointment-services-card .appointment-service-total strong{padding:7px 11px;border-radius:16px;background:#ed6a3d;color:#fff;font-size:13px}
@media(max-width:560px){.appointment-services-panel{width:100%;margin:12px 0 0;padding:0}.appointment-services-card{padding:12px 9px 10px}.appointment-service-add{grid-template-columns:1fr auto;gap:8px}.appointment-service-add>select{grid-column:1/-1;width:100%}.appointment-service-search{grid-column:1}.appointment-service-option{grid-template-columns:12px minmax(0,1fr) auto;gap:5px}.appointment-service-option-price{display:none}.appointment-services-card .service-line th,.appointment-services-card .service-line td{padding-inline:4px}}

/* Cotejo de Recurrencia de la cita con la disposición de ByClinics. */
.recurrence-panel{width:calc(100% + 10px);margin-left:-10px;padding:0}
.recurrence-card{min-height:292px;padding:14px;border:1px solid #e0e7e8;border-radius:8px;background:#fff}
.recurrence-content{width:min(720px,100%)}
.recurrence-banner{display:flex;align-items:center;gap:12px;min-height:58px;margin:0 0 9px;padding:10px 12px;border-radius:15px;background:#eef7f6;color:#4b8588}
.recurrence-banner>div{display:grid;gap:4px}
.recurrence-banner strong{font-size:15px;color:#4b8588}
.recurrence-banner span:not(.recurrence-icon){font-size:12px;color:#687d80}
.recurrence-icon{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:7px;background:#619fa3;color:#fff;font-size:22px}
.recurrence-controls{grid-template-columns:132px 122px 132px 122px;gap:0 8px;align-items:end;min-height:76px;margin-bottom:9px;padding:10px 11px;border:1px solid #e1e8e9;border-radius:15px}
.recurrence-controls label{display:grid;gap:5px;color:#69777a;font-size:12px}
.recurrence-controls input,.recurrence-controls select{height:33px;min-height:33px;padding:5px 8px;border-color:#d6dfe0;border-radius:7px;font-size:13px}
.recurrence-controls input[type=number]{font-variant-numeric:tabular-nums}
.recurrence-weekdays{margin:0 0 9px;padding:11px;border-color:#e1e8e9;border-radius:15px}
.recurrence-weekdays>strong{font-size:11px;color:#66787c}
.recurrence-weekdays .form-note{margin:7px 0 10px;color:#79878a;font-size:12px}
.weekday-options{gap:7px}
.weekday-options label{min-height:33px;padding:6px 10px;border-color:#dbe3e4;border-radius:7px;color:#53666b}
.weekday-options label:has(input:checked){border-color:#6fa5a6;background:#edf6f5;color:#3d7376}
.recurrence-help{margin:0;padding:11px 12px;border-left:4px solid #e6a253;border-radius:12px;background:#fff4e8;color:#765832;font-size:12px;line-height:1.45}
.recurrence-help strong{display:block;margin-bottom:4px;color:#9a5f23}
.recurrence-help p{margin:0}
.recurrence-help p+p{margin-top:6px}
@media(max-width:760px){.recurrence-panel{width:100%;margin:12px 0 0;padding:0}.recurrence-card{min-height:0;padding:10px}.recurrence-content{width:100%}.recurrence-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.recurrence-help{line-height:1.4}}

/* Ajuste fino de la tarjeta de Recurrencia frente a la referencia. */
.recurrence-card{min-height:292px;padding:13px}
.recurrence-banner{margin-bottom:10px}
.recurrence-controls{padding:14px 11px 8px}
.recurrence-controls label{margin:0}

/* La referencia mantiene la nota de ayuda dentro de Recurrencia y fija el pie. */
#appointment-form{display:flex;flex-direction:column;height:100%;min-height:815px}
#appointment-form:has(.recurrence-panel:not([hidden])) #appointment-data-disclaimer{display:none}
.appointment-dialog-head-actions{display:flex;align-items:center;gap:10px}
.appointment-dialog-head-actions #appointment-how-it-works{min-height:28px;padding:0 10px;border:1px solid #d8e4e4;border-radius:16px;background:#f8fbfb;color:#5a9699;font:inherit;font-size:12px}
.appointment-dialog-head-actions #close-dialog{min-width:28px;min-height:30px}
.appointment-form-footer{display:flex;align-items:center;gap:8px;width:calc(100% + 10px);min-height:48px;margin-top:auto;margin-left:-10px;padding-top:6px;border-top:1px solid #e1e8e9}
.appointment-form-footer-actions{display:flex;align-items:center;gap:8px}
.appointment-form-footer-actions>button:not(.save){min-height:32px;padding:0 12px;border:1px solid #d9e1e3;border-radius:6px;background:#f7f9fa;color:#53666d;font:inherit;font-size:12px}
.appointment-form-footer-actions>#appointment-session{background:#fff}
.appointment-form-footer-actions>.save{min-width:68px;min-height:32px;padding:0 10px;border-radius:6px}
.appointment-form-footer-actions>.save:disabled{background:#a8cfcd;color:#fff;cursor:not-allowed}
#appointment-readiness-status{margin:0;padding:6px 10px;border-radius:16px;background:#fff3e6;color:#a65e20;font-size:12px}
.appointment-help-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 32px);padding:0;border-radius:8px;color:#35474e;box-shadow:0 18px 60px #17282f45}
.appointment-help-dialog::backdrop{background:#1c2c32a6}
.appointment-help-dialog>header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #e6ecee}
.appointment-help-dialog>header h2{margin:0;font-size:15px;font-weight:600}
.appointment-help-dialog>header button{width:28px;height:28px;border:0;background:transparent;color:#697a80;font-size:23px}
.appointment-help-choices{display:grid;gap:8px;padding:12px}
.appointment-help-choice{display:grid;grid-template-columns:36px minmax(0,1fr) 18px;align-items:center;gap:10px;min-height:66px;padding:9px 12px;border:1px solid #e1e7e7;border-radius:9px;background:#fff;color:#3f565d;text-align:left;cursor:pointer}
.appointment-help-choice:hover{background:#f8fbfb;border-color:#cbdcdd}
.appointment-help-icon{display:grid;width:34px;height:34px;place-items:center;border:1px solid #e1e8e8;border-radius:9px;background:#f6f9f9;color:#619fa3;font-size:17px}
.appointment-help-choice strong,.appointment-help-choice small{display:block}
.appointment-help-choice strong{margin-bottom:4px;font-size:13px}
.appointment-help-choice small{color:#718187;font-size:11px}
.appointment-help-choice>span:last-child{color:#829398;font-size:23px}
.appointment-help-detail{padding:16px;color:#536970;font-size:13px;line-height:1.55}
.appointment-help-detail h3{margin:0 0 8px;font-size:14px}
.appointment-help-detail p{margin:0 0 12px}
.appointment-help-detail button,.appointment-help-dialog>footer button{min-height:32px;padding:0 10px;border:1px solid #d5e0e1;border-radius:5px;background:#fff;color:#526970;font:inherit;font-size:12px}
.appointment-help-dialog>footer{display:flex;justify-content:flex-end;padding:10px 12px;border-top:1px solid #e6ecee}
#appointment-form>.dialog-head{margin-left:-10px;transform:translateY(-10px)}
#dialog.appointment-dialog{padding-bottom:10px}
@media(max-width:650px){#appointment-form{min-height:calc(100vh - 124px)}.appointment-form-footer{align-items:flex-start;flex-wrap:wrap}.appointment-form-footer-actions{flex-wrap:wrap}.appointment-dialog-head-actions{gap:4px}}

/* Alta de cita · panel Recordatorio alineado con la referencia desactivada. */
#appointment-form:has(.appointment-reminder-panel:not([hidden])) #appointment-data-disclaimer{display:none}
#appointment-form .appointment-reminder-panel{width:calc(100% + 14px);margin:0 0 0 -10px}
#appointment-form .appointment-reminder-panel .reminder-preview{display:grid;grid-template-columns:145px 132px 65px minmax(120px,1fr) 99px;align-items:start;gap:8px;width:100%;height:84px;min-height:84px;box-sizing:border-box;margin:0;padding:11px 13px 15px;border:1px solid #dfe7e8;border-radius:8px;background:#fff;color:#596f75}
#appointment-form .appointment-reminder-panel .reminder-readonly label{display:grid;align-content:start;gap:10px;align-self:start;height:56px;min-width:0;margin:0;color:#88969a;font-size:12px}
#appointment-form .appointment-reminder-panel .reminder-readonly label.check-field{display:flex;align-items:center;align-self:end;gap:10px;height:20px;margin:0 0 8px;color:#52666c;font-size:13px}
#appointment-form .appointment-reminder-panel .reminder-readonly label.check-field input{appearance:none;box-sizing:border-box;width:50px;height:20px;min-height:0;margin:0 0 0 2px;padding:0;border:1px solid #a9c9ca;border-radius:12px;background:#c6dfe0;position:relative}
#appointment-form .appointment-reminder-panel .reminder-readonly label.check-field input::before{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #18363b33}
#appointment-form .appointment-reminder-panel .reminder-readonly label.check-field input:checked::before{left:31px}
#appointment-form .appointment-reminder-panel .reminder-readonly select{width:100%;min-width:0;height:32px;min-height:32px;margin:0;padding:0 8px;border:1px solid #d7dfe3;border-radius:4px;background:#f2f4f4;color:#66777b;font:inherit;font-size:13px}
#appointment-form .appointment-reminder-panel .reminder-medium-field select{width:132px}
#appointment-form .appointment-reminder-panel .reminder-destination-field select{width:100%}
#appointment-form .appointment-reminder-panel .reminder-price{display:flex;justify-content:center;align-items:center;box-sizing:border-box;justify-self:start;align-self:end;width:65px;height:23.25px;margin:0;padding:0;border-radius:14px;background:#e6f5eb;color:#5c9c6c;font-size:12px;white-space:nowrap}
#appointment-form .appointment-reminder-panel .reminder-status{display:flex;justify-content:center;align-items:center;box-sizing:border-box;justify-self:end;align-self:end;width:99px;height:36px;margin:0 0 1px;padding:0 12px;border-radius:18px;background:#f0f2f3;color:#657176;font-size:12px;font-weight:500;white-space:nowrap}
@media(max-width:650px){#appointment-form .appointment-reminder-panel{width:100%;margin:0}#appointment-form .appointment-reminder-panel .reminder-preview{grid-template-columns:1fr 1fr;grid-auto-rows:auto;height:auto;min-height:84px;gap:12px;padding:12px}#appointment-form .appointment-reminder-panel .reminder-readonly label.check-field{grid-column:1/-1}}

/* Alta de cita · Avisos de seguimiento locales, con plantillas ficticias. */
#appointment-form:has(.followups-panel:not([hidden])) #appointment-data-disclaimer{display:none}
.followups-panel{padding:0 14px}
.followup-heading{display:flex;align-items:center;gap:10px;margin:0 0 18px;color:#344e55}
.followup-heading-icon{display:flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;border-radius:50%;background:#e7f3f1;color:#4d9c98;font-size:21px;line-height:1}
.followup-heading strong{display:block;font-size:15px;font-weight:600}
.followup-heading p{margin:4px 0 0;color:#75868b;font-size:12px}
.followup-person-required{margin:22px 0;padding:15px 16px;border:1px solid #e1e8e9;border-radius:6px;background:#fbfcfc;color:#66777c}
.followup-template-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:0 0 16px}
.followup-template-list[hidden]{display:none}
.followup-template{display:grid;align-content:center;gap:5px;min-width:0;min-height:62px;padding:10px 12px;border:1px solid #dce6e7;border-radius:6px;background:#fff;color:#3f5c62;text-align:left;cursor:pointer}
.followup-template:hover,.followup-template:focus-visible{border-color:#77b2ae;background:#f5fbfa;outline:none}
.followup-template strong{font-size:13px;font-weight:600}
.followup-template small{color:#7b8c90;font-size:11px}
.followup-template-blank{background:#f8fafb}
.followup-list{display:grid;gap:10px}
.followup-row{grid-template-columns:110px 130px minmax(140px,1fr);gap:10px 12px;padding:12px 14px;background:#fff}
.followup-row-head{align-items:center}
.followup-row-head strong{color:#435d62;font-size:13px}
.followup-row label{gap:5px;margin:0;color:#728388;font-size:11px;font-weight:500}
.followup-row input,.followup-row select,.followup-row textarea{padding:7px 8px;font-size:12px}
.followup-message{grid-column:1/-1}
.followup-row>p{margin:0;color:#6f8085;font-size:11px}
.followup-local-note{margin:12px 0 0;color:#879397;font-size:11px}
@media(max-width:760px){.followups-panel{padding:0 4px}.followup-template-list{grid-template-columns:repeat(2,minmax(0,1fr))}.followup-row{grid-template-columns:1fr 1fr}.followup-row label:nth-of-type(3){grid-column:1/-1}}

/* Agenda: presentación compacta de Tareas, con controles de asignación accesibles. */
#appointment-form .appointment-tasks-help{margin:0 0 20px;color:#6c757d;font:12.25px/18.375px system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
#appointment-form .appointment-tasks-compose{padding:0;border:0;border-radius:0;background:transparent}
#appointment-form .appointment-tasks-selectors{grid-template-columns:210px 210px;gap:8px;margin:0 10px 6px}
#appointment-form .appointment-tasks-compose label{display:grid;gap:4px;margin:0;color:#6c757d;font:500 12px/18px system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
#appointment-form .appointment-tasks-compose select,#appointment-form .appointment-tasks-compose input{box-sizing:border-box;width:100%;height:32px;min-height:32px;margin:0;padding:0 8px;border:1px solid #dee2e6;border-radius:4px;background:#fff;color:#212529;font:14px/19.6px system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
#appointment-form .appointment-tasks-title-row{box-sizing:border-box;height:56px;margin:0 10px 7px;padding-top:24px;gap:8px}
#appointment-form .appointment-tasks-title-row button{height:32px;min-height:32px;padding:0 14px;border:0;border-radius:4px;background:#5f9ea0;color:#fff;font:500 14px/22px system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;white-space:nowrap}
#appointment-form .appointment-tasks-meta{grid-template-columns:132px 210px 146px;gap:8px;margin:0 10px}
#appointment-form .appointment-tasks-meta select[multiple]{height:32px;min-height:32px;overflow:hidden}
#appointment-form .appointment-tasks-meta select[multiple]:focus{height:96px;overflow:auto}
#appointment-form .appointment-tasks-compose .error:empty{display:none}
#appointment-form .appointment-tasks-empty{margin:16px 0 0;color:#6c757d;font:12.25px/18.375px system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
@media(max-width:760px){#appointment-form .appointment-tasks-selectors{grid-template-columns:repeat(2,minmax(0,1fr));margin-right:4px;margin-left:4px}#appointment-form .appointment-tasks-title-row{margin-right:4px;margin-left:4px;padding-top:0;height:40px}#appointment-form .appointment-tasks-meta{grid-template-columns:repeat(2,minmax(0,1fr));margin-right:4px;margin-left:4px}#appointment-form .appointment-tasks-meta label:nth-child(2){grid-column:auto}}

#appointment-form .appointment-tasks-compose label{line-height:20px}
#appointment-form .appointment-tasks-title-row button{box-sizing:border-box;width:83px;flex:none;padding:0;font:13px/20px system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
#appointment-form #appointment-task-list-items:empty{margin-top:0}
#appointment-form #appointment-task-list-items:not(:empty){margin-top:12px}

/* Avisos de seguimiento · composición comparada con la agenda de referencia. */
#appointment-form .followup-heading{flex-direction:column;justify-content:flex-start;gap:9px;margin:32px 0 22px;text-align:center}
#appointment-form .followup-heading-icon{width:44px;height:44px;font-size:21px}
#appointment-form .followup-heading>div{display:grid;justify-items:center}
#appointment-form .followup-heading strong{font-size:16px}
#appointment-form .followup-heading p{margin-top:6px;font-size:13px}
#appointment-form .followups-panel:has(.followup-editor-draft) .followup-heading{display:none}
#appointment-form .followup-template-list{width:min(820px,100%);margin:0 auto 16px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
#appointment-form .followup-template{min-height:71px;padding:10px 12px}
#appointment-form .followup-template strong{font-size:13px}
#appointment-form .followup-template small{font-size:12px}
#appointment-form .followup-local-note{text-align:center;margin-top:12px}
@media(max-width:760px){#appointment-form .followup-template-list{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Trazabilidad de cita · historial local con jerarquía visual de la referencia. */
#appointment-form [data-appointment-panel="trace"]>h3{display:none}
#appointment-form .appointment-edit-trace-box{margin:20px 0 0;padding:18px 23px 10px;border:0;border-radius:14px;background:#eef3f5}
#appointment-form .appointment-edit-trace-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#718087;font-size:12px;line-height:18px}
#appointment-form .appointment-trace-list{display:grid;gap:8px;margin:10px 8px 0}
#appointment-form .appointment-edit-trace-day{margin:0 8px 9px;color:#859196;font-size:11px;font-weight:600;line-height:16px}
#appointment-form .appointment-edit-trace-entry{min-height:42px;box-sizing:border-box;padding:8px 12px;border:0;border-left:4px solid #5f9996;border-radius:3px;background:#fff;color:#536970}
#appointment-form .appointment-edit-trace-entry .appointment-trace-heading{display:grid;grid-template-columns:minmax(0,1fr) auto 120px;align-items:center;gap:12px;min-height:26px}
#appointment-form .appointment-edit-trace-identity{display:flex;align-items:center;gap:9px;min-width:0;font-size:12px}
#appointment-form .appointment-edit-trace-avatar{display:grid;place-items:center;flex:none;width:24px;height:24px;border-radius:50%;background:#e8f2f3;color:#6f9b9d;font-size:10px}
#appointment-form .appointment-edit-trace-action{padding:3px 9px;border-radius:12px;background:#e8f2f3;color:#527d80;font-size:11px;font-weight:500}
#appointment-form .appointment-edit-trace-entry time{color:#7a858b;font-size:11px;text-align:right}
#appointment-form #appointment-edit-trace-empty{margin:10px 8px 0}
#appointment-form [data-appointment-panel="trace"]>.form-note{margin:12px 0 0;color:#78858a;font-size:11px;text-align:center}
@media(max-width:760px){#appointment-form .appointment-edit-trace-box{padding:14px 10px}#appointment-form .appointment-edit-trace-entry .appointment-trace-heading{grid-template-columns:minmax(0,1fr) auto;gap:6px}#appointment-form .appointment-edit-trace-entry time{grid-column:1/-1;text-align:left;margin-left:33px}}
#appointment-form .appointment-edit-trace-box{margin:20px -6px 0 -11px;padding:22px 37px 10px 34px}
#appointment-form .appointment-edit-trace-summary{padding-right:27px}
#appointment-form .appointment-trace-list{margin:5px 0 0}
#appointment-form .appointment-edit-trace-day{margin:0}
@media(max-width:760px){#appointment-form .appointment-edit-trace-box{margin:16px 0 0;padding:14px 10px}#appointment-form .appointment-edit-trace-summary{padding-right:0}}

/* Sesión de cita · distribución cotejada con la pantalla de referencia. */
#clinical-session-dialog>.clinical-session-head{min-height:58px;box-sizing:border-box;padding:8px 14px;align-items:center}
#clinical-session-dialog .clinical-session-identity{grid-template-columns:170px minmax(0,1fr);grid-template-rows:14px 14px 16px;row-gap:0;align-content:center}
#clinical-session-dialog .clinical-session-identity small{grid-column:1;grid-row:1;align-self:center}
#clinical-session-dialog .clinical-session-identity h2{grid-column:2;grid-row:1;align-self:center}
#clinical-session-dialog .clinical-session-context{grid-column:1/-1;grid-row:2;align-self:center;white-space:nowrap;text-overflow:ellipsis;font-size:11px}
#clinical-session-dialog .clinical-session-identity .clinical-background-summary{grid-column:1/-1;grid-row:3;align-self:center;min-width:0;min-height:14px;margin:0;padding:1px 5px;font-size:10px;line-height:12px;white-space:normal}
#clinical-session-dialog .clinical-session-header-actions{align-items:center;gap:6px}
#clinical-session-dialog .clinical-session-header-actions>button,#clinical-session-dialog .clinical-session-more>button{min-height:30px;padding:0 8px;font-size:12px}
#clinical-session-dialog .clinical-session-tabs{margin-top:8px;padding:0 14px}
#clinical-session-dialog .clinical-session-tabs button{min-height:33px;height:33px;padding:0 15px;font-size:13px}
#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]{display:grid;grid-template-columns:minmax(0,870px) minmax(0,870px);grid-template-rows:auto 1fr;justify-content:space-between;column-gap:47px;row-gap:10px;padding:22px 50px 22px 23px}
#clinical-session-dialog #clinical-session-fields{grid-column:1;grid-row:1;grid-template-columns:minmax(0,1fr);gap:30px;padding-top:20px}
#clinical-session-dialog .clinical-session-fields label{gap:6px;font-size:0}
#clinical-session-dialog .clinical-session-fields textarea{box-sizing:border-box;height:71px;min-height:71px;padding:9px;font-size:13px;resize:vertical}
#clinical-session-dialog .clinical-editor-label{min-width:0;align-content:start}
#clinical-session-dialog .clinical-editor-title{display:block;padding:10px 10px 9px;color:#344b52;font-size:13px;font-weight:600;line-height:18px}
#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]>label:has(#clinical-session-detail){grid-column:1;grid-row:2}
#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]>label:has(#clinical-session-history){grid-column:2;grid-row:1 / span 2;align-self:stretch;min-height:0;overflow:hidden;border:1px solid #dce5e6;border-radius:5px;background:#eef4f5}
#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]>label:has(#clinical-session-history) .clinical-editor-title{min-height:54px;box-sizing:border-box;padding:18px 10px 12px}
#clinical-session-dialog .clinical-editor-toolbar{gap:4px;padding:4px 6px;border-color:#dbe3e4;border-radius:0;background:#f8f9fa}
#clinical-session-dialog .clinical-editor-toolbar button{min-width:28px;height:26px;padding:0 7px}
#clinical-session-dialog .clinical-editor-toolbar select{height:26px;max-width:120px}
#clinical-session-dialog .clinical-editor-toolbar input[type="color"]{width:28px;height:26px}
#clinical-session-dialog #clinical-session-detail{box-sizing:border-box;min-height:436px;height:436px;border-radius:0 0 4px 4px}
#clinical-session-dialog #clinical-session-history{box-sizing:border-box;min-height:650px;height:650px;border-radius:0 0 4px 4px}
@media(max-width:1100px){#clinical-session-dialog>.clinical-session-head{min-height:0;align-items:flex-start;flex-wrap:wrap}#clinical-session-dialog .clinical-session-identity{flex-basis:100%;grid-template-columns:150px minmax(0,1fr);grid-template-rows:14px 14px 16px}#clinical-session-dialog .clinical-session-header-actions{width:100%;flex-wrap:wrap}#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:24px;padding-right:23px}}
@media(max-width:760px){#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;gap:14px;padding:16px 8px 18px}#clinical-session-dialog #clinical-session-fields,#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]>label:has(#clinical-session-detail),#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]>label:has(#clinical-session-history){grid-column:1;grid-row:auto}#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]>label:has(#clinical-session-history){min-height:360px}#clinical-session-dialog #clinical-session-detail{min-height:300px;height:300px}#clinical-session-dialog #clinical-session-history{min-height:360px;height:360px}#clinical-session-dialog .clinical-session-fields{gap:12px;padding-top:0}#clinical-session-dialog .clinical-session-context{overflow:hidden}}
/* Ajustes de segunda pasada: áreas con selector real y barra de acciones alineada. */
#clinical-session-dialog .clinical-session-identity{flex:0 0 820px}
#clinical-session-dialog #clinical-session-context{grid-column:1/-1;grid-row:2;align-self:center;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}
#clinical-session-dialog .clinical-session-header-actions{flex:1;justify-content:space-between;min-width:0}
#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]{grid-template-columns:minmax(0,870px) minmax(0,870px);column-gap:35px;padding:21px 35px 22px}
#clinical-session-dialog .clinical-session-fields{grid-column:1;grid-row:1;grid-template-columns:minmax(0,1fr);gap:30px;padding-top:20px}
#clinical-session-dialog .clinical-editor-toolbar{padding:6px 6px}
@media(max-width:1100px){#clinical-session-dialog .clinical-session-identity{flex-basis:100%}#clinical-session-dialog .clinical-session-header-actions{flex:1;justify-content:flex-start}}
@media(max-width:760px){#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;gap:14px;padding:16px 8px 18px}#clinical-session-dialog .clinical-session-fields,#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]>label:has(#clinical-session-detail),#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]>label:has(#clinical-session-history){grid-column:1;grid-row:auto}#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]>label:has(#clinical-session-history){min-height:360px}#clinical-session-dialog #clinical-session-detail{min-height:300px;height:300px}#clinical-session-dialog #clinical-session-history{min-height:360px;height:360px}#clinical-session-dialog .clinical-session-fields{gap:12px;padding-top:0}#clinical-session-dialog #clinical-session-context{overflow:hidden}}

/* Sesión · segunda iteración visual de los editores y acciones. */
#clinical-session-dialog #clinical-session-state{visibility:hidden}
#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]>label:has(#clinical-session-detail){position:relative;box-sizing:border-box;width:calc(100% + 26px);margin-left:-13px;overflow:hidden;border:1px solid #dce5e6;border-radius:5px;background:#eef4f5}
#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]>label:has(#clinical-session-detail) .clinical-editor-title{display:flex;box-sizing:border-box;min-height:52px;align-items:center;padding:0 12px}
#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]>label:has(#clinical-session-detail) .clinical-editor-toolbar,#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]>label:has(#clinical-session-detail) .clinical-editor{width:calc(100% - 24px);margin-right:12px;margin-left:12px}
#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]>label:has(#clinical-session-detail) .clinical-editor-toolbar{padding:7px 6px}
@media(max-width:760px){#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]>label:has(#clinical-session-detail){width:100%;margin-left:0}#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]>label:has(#clinical-session-detail) .clinical-editor-toolbar,#clinical-session-dialog .clinical-session-panel[data-clinical-session-panel="session"]>label:has(#clinical-session-detail) .clinical-editor{width:auto;margin-right:8px;margin-left:8px}}

/* Agenda · barra superior cotejada con ByClinics (viewport de escritorio). */
.toolbar{padding:4px 26px 4px 12px}
.tools-left{gap:8px}
.tools-center{gap:2px}
.tools-right{gap:8px}
.toolbar button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#calendar-picker-toggle,#calendar-print-toggle,#calendar-settings-button{display:grid;width:34px;min-width:34px;padding:0;place-items:center}
#calendar-group-toggle{display:flex;width:164px;min-width:164px;align-items:center;justify-content:space-between;padding:0 10px}
#calendar-group-toggle svg{width:18px;height:18px;flex:none}
#calendar-group-toggle span:nth-of-type(1){margin-right:auto;margin-left:8px}
#view-agenda,#view-list{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:32px;padding:0 10px}
#view-agenda{width:91px;min-width:91px}
#view-list{width:73px;min-width:73px}
#view-agenda svg,#view-list svg{width:16px;height:16px}
#previous,#next{display:grid;width:32px;min-width:32px;padding:0;place-items:center}
#previous svg,#next svg{width:15px;height:15px;stroke-width:2}
#period{display:inline-flex;width:210px;min-width:210px;align-items:center;justify-content:space-between;gap:8px;padding:0 10px;text-align:left}
#calendar-period-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#period .calendar-period-icon{width:15px;height:15px;flex:none}
#period .calendar-period-caret{width:14px;height:14px;flex:none;stroke-width:1.6}
#today{width:60px;min-width:60px;padding:0 8px}
.toolbar .tools-right>button:not(#calendar-settings-button),.toolbar .calendar-print-picker>button{width:36px;min-width:36px;padding:0}
.toolbar #calendar-view{width:130px;min-width:130px}
#agenda-availability{border-color:#cbdcbe;background:#e7f3de;color:#5e824a}
#relocate-appointments{border-color:#e5ca3a;background:#f8db32;color:#715d08}
#waiting-list-button{border-color:#c2e7dc;background:#d9f1e9;color:#3c826f}
#waiting-room-button{border-color:#c9d9ed;background:#e1ebf8;color:#59799f}
#external-appointments{border-color:#d7c9eb;background:#ece4f5;color:#775ba0}
#agenda-notes{border-color:#ead5b8;background:#f5e9d8;color:#916c3a}
#trash-appointments{border-color:#e0d8c8;background:#f0ebdf;color:#74634a}
@media(max-width:1100px){.toolbar{padding-right:10px}.tools-left{gap:4px}.tools-center{gap:2px}.tools-right{gap:4px}#calendar-group-toggle{width:auto;min-width:120px}.toolbar #calendar-view{width:112px;min-width:112px}.agenda-toolbar{height:46px;min-height:46px;flex:0 0 auto;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;row-gap:0;scrollbar-width:none}.agenda-toolbar::-webkit-scrollbar{display:none}.agenda-toolbar>.tools-left,.agenda-toolbar>.tools-center,.agenda-toolbar>.tools-right{flex:0 0 auto}.agenda-toolbar>.tools-right{justify-content:flex-start;flex-wrap:nowrap}.workspace:not(.rail-expanded) .rail{width:60px}#agenda-area:not(.list-mode){padding-left:230px}#calendar-group-filter{width:224px}}

#list-view.with-calendar-sidebar .appointment-list-table th{font:700 14px/21px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:normal;text-transform:none;color:#5b7378}
.appointment-list-sort{margin:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}
.appointment-list-sort:hover,.appointment-list-sort:focus-visible{color:#247d79}
.appointment-list-sort span[aria-hidden="true"]{display:inline-block;min-width:10px;margin-left:3px;color:#778b8e;font-size:12px}

/* Ajustes de Agenda: panel ancho con cabecera, contenido en columnas y pie fijo. */
.calendar-settings-dialog{width:min(1040px,94vw);max-width:1040px;height:min(541px,88vh);max-height:88vh;overflow:hidden;padding:0;border:1px solid #cfd9da;border-radius:2px;background:#fff;color:#485b60;box-shadow:0 12px 36px #18323833}
.calendar-settings-dialog::backdrop{background:#20343870}
#calendar-settings-form{display:flex;height:100%;min-height:0;flex-direction:column}
.calendar-settings-header{display:flex;flex:none;align-items:center;justify-content:space-between;min-height:48px;padding:7px 12px;border-bottom:1px solid #e4e9e9;background:#fff}
.calendar-settings-header small{color:#718287;font-size:10px;letter-spacing:.04em}
.calendar-settings-header h2{margin:2px 0 0;color:#354a51;font-size:16px;font-weight:500}
.calendar-settings-header>button{width:28px;height:28px;border:0;background:transparent;color:#66797d;font-size:23px;line-height:1;cursor:pointer}
.calendar-settings-tabs{display:flex;flex:none;gap:0;overflow-x:auto;padding:0 12px;border-bottom:1px solid #dce5e5;background:#fff;scrollbar-width:thin}
.calendar-settings-tabs>[role="tab"]{flex:none;min-height:38px;padding:0 13px;border:0;border-bottom:2px solid transparent;background:transparent;color:#5f7378;font:inherit;font-size:12px;white-space:nowrap;cursor:pointer}
.calendar-settings-tabs>[role="tab"][aria-selected="true"]{border-bottom-color:#168d91;color:#087f83;font-weight:600}
.calendar-settings-tabs>[role="tab"]:focus-visible{outline:2px solid #168d91;outline-offset:-3px}
.calendar-settings-content{display:block;flex:1;min-height:0;overflow:hidden;padding:0}
.calendar-settings-panel{height:100%;min-height:0;overflow:auto;padding:12px 16px 8px}
.calendar-settings-pending .calendar-settings-local-note{margin-top:18px}
.calendar-settings-section{min-width:0;padding:0 4px}
.calendar-settings-section h3{margin:0 0 10px;color:#4e656a;font-size:14px;font-weight:600}
.calendar-settings-default{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 5px;color:#596d72;font-size:12px}
.calendar-settings-default select{width:190px;max-width:60%;height:28px;padding:0 8px;border:1px solid #d4ddde;border-radius:3px;background:#fff;color:#43575d;font:inherit}
.calendar-settings-note{margin:3px 0 9px;color:#7a888b;font-size:11px;line-height:1.35}
.calendar-settings-check{display:flex;align-items:center;gap:8px;margin:10px 0 3px;color:#52666b;font-size:12px;font-weight:400;line-height:1.35}
.calendar-settings-check input{width:16px;height:16px;flex:none;margin:0;accent-color:#619fa3}
.calendar-settings-visibility{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 14px;margin-top:7px}
.calendar-settings-subtitle{margin:18px 0 4px;color:#566d71;font-size:12px;font-weight:600}
.calendar-settings-past-style{display:flex;align-items:center;gap:20px;margin-top:8px}
.calendar-settings-past-style>label{display:flex;align-items:center;gap:8px;color:#52666b;font-size:12px}
.calendar-settings-past-style select{height:28px;padding:0 8px;border:1px solid #d4ddde;border-radius:3px;background:#fff;color:#43575d;font:inherit}
.calendar-settings-past-style input[type="color"]{width:38px;height:28px;padding:2px;border:1px solid #d4ddde;border-radius:3px;background:#fff;cursor:pointer}
.calendar-settings-state-list{display:flex;flex-direction:column;gap:2px}
.calendar-settings-state-row{display:grid;grid-template-columns:minmax(120px,1fr) minmax(150px,1.4fr) 78px;align-items:center;gap:8px;padding:4px 0;border-bottom:1px solid #edf0f0}
.calendar-settings-state-row>.calendar-settings-check{margin:0}
.calendar-settings-state-row>label:not(.calendar-settings-check){display:flex;align-items:center;gap:6px;color:#52666b;font-size:11px}
.calendar-settings-state-row select{width:100%;min-width:0;height:28px;padding:0 6px;border:1px solid #d4ddde;border-radius:3px;background:#fff;color:#43575d;font:inherit}
.calendar-settings-state-row input[type="color"]{width:38px;height:28px;padding:2px;border:1px solid #d4ddde;border-radius:3px;background:#fff;cursor:pointer}
.calendar-settings-local-note{margin:20px 0 0;color:#849194;font-size:10px}
.calendar-reminder-enable{margin:8px 0 18px}
.calendar-reminder-enable input[role="switch"]{position:relative;appearance:none;width:50px;height:24px;flex:none;border:1px solid #9db5b8;border-radius:999px;background:#fff;cursor:pointer;transition:background .15s,border-color .15s}
.calendar-reminder-enable input[role="switch"]::before{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#bdc6c7;content:"";transition:transform .15s,background .15s}
.calendar-reminder-enable input[role="switch"]:checked{border-color:#68a9ac;background:#68a9ac}
.calendar-reminder-enable input[role="switch"]:checked::before{transform:translateX(26px);background:#fff}
.calendar-reminder-enable input[role="switch"]:focus-visible{outline:2px solid #168d91;outline-offset:2px}
.calendar-reminder-send-time{display:flex;align-items:center;gap:9px;margin:0 0 22px;color:#5e7378;font-size:12px}
.calendar-reminder-send-time input,.calendar-reminder-row input[type="number"],.calendar-reminder-row select{height:28px;border:1px solid #d4ddde;border-radius:4px;background:#fff;color:#43575d;font:inherit;font-size:12px}
.calendar-reminder-send-time input{width:54px;padding:0 7px}
.calendar-reminder-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.calendar-reminder-heading h3{margin:0;color:#4e656a;font-size:14px;font-weight:600}
.calendar-reminder-heading button{min-height:30px;padding:0 10px;border:1px solid #cbdadb;border-radius:5px;background:#fff;color:#168d91;font:inherit;font-size:12px;cursor:pointer}
.calendar-reminder-heading button:hover{background:#f3f8f8}
.calendar-reminder-heading button:disabled{opacity:.55;cursor:not-allowed}
.calendar-reminder-rows{display:flex;flex-direction:column;gap:6px}
.calendar-reminder-row{display:grid;grid-template-columns:92px 112px 72px minmax(110px,140px) auto 100px 28px;align-items:center;gap:8px;padding:7px 9px;border:1px solid #dce5e5;border-radius:6px;background:#f4f8f8;color:#5e7378;font-size:12px}
.calendar-reminder-row input[type="number"]{width:100%;padding:0 8px}
.calendar-reminder-row select{width:100%;min-width:0;padding:0 7px}
.calendar-reminder-channel-status{justify-self:start;padding:4px 10px;border-radius:999px;background:#e8f5e8;color:#3a8c4a;font-size:11px;font-weight:600;white-space:nowrap}
.calendar-reminder-channel-status.is-unavailable{background:#fff2dd;color:#9a6a16}
.calendar-reminder-active{display:flex;align-items:center;gap:7px;white-space:nowrap}
.calendar-reminder-active input{width:30px;height:18px;margin:0;accent-color:#68a9ac}
.calendar-reminder-remove{display:grid;width:28px;height:28px;place-items:center;border:0;border-radius:4px;background:transparent;color:#849194;cursor:pointer}
.calendar-reminder-remove:hover{background:#f8eaea;color:#b54848}
.calendar-reminder-remove svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6}
.calendar-reminder-empty{margin:16px 0 0;color:#7a888b;font-size:12px;line-height:1.45}
.calendar-settings-notifications .calendar-settings-local-note{margin-top:22px}
.calendar-settings-cancellations{display:flex;flex-direction:column;gap:10px;color:#52666b;font-size:12px;line-height:1.4}
.calendar-cancellation-summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:#7a888b;font-size:11px}
.calendar-cancellation-badge{padding:4px 9px;border-radius:999px;background:#e5f4e8;color:#287346;font-size:11px;font-weight:600}
.calendar-settings-cancellations p{margin:0}
.calendar-settings-cancellations .calendar-settings-note{color:#7a888b;font-size:11px;line-height:1.4}
.calendar-settings-cancellations .calendar-settings-local-note{margin-top:2px}
.calendar-home-visit-intro{margin:0 0 14px;color:#6e8286;font-size:11px;line-height:1.45}
.calendar-home-visit-intro strong{color:#526b70;font-weight:600}
.calendar-home-visit-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:12px;border-radius:10px;background:#f4f8f8}
.calendar-home-visit-card{min-width:0;min-height:366px;padding:14px 15px;border:1px solid #e3ebeb;border-radius:10px;background:#fff;box-shadow:0 2px 8px #24383a0a}
.calendar-home-visit-card h3{display:flex;align-items:center;gap:8px;margin:0 0 7px;padding-bottom:9px;border-bottom:1px solid #e7eded;color:#4e656a;font-size:13px;font-weight:600}
.calendar-home-visit-card>p{min-height:52px;margin:0 0 10px;color:#738488;font-size:11px;line-height:1.45}
.calendar-home-visit-optional{padding:3px 7px;border-radius:999px;background:#f1f4f4;color:#7d898b;font-size:9px;font-weight:500;text-transform:lowercase}
.calendar-home-visit-option{display:flex;align-items:center;justify-content:space-between;gap:9px;min-height:72px;padding:9px 0;border-bottom:1px solid #edf1f1}
.calendar-home-visit-option:last-child{border-bottom:0}
.calendar-home-visit-option>div{display:flex;min-width:0;flex-direction:column;gap:5px}
.calendar-home-visit-option strong{color:#566b70;font-size:11px;font-weight:600;line-height:1.3}
.calendar-home-visit-option span{color:#7c8a8d;font-size:10px;line-height:1.4}
.calendar-home-visit-option input[role="switch"]{position:relative;appearance:none;width:34px;height:20px;flex:none;margin:0;border:1px solid #aebfc0;border-radius:999px;background:#f8fafa;cursor:pointer;transition:background .15s,border-color .15s}
.calendar-home-visit-option input[role="switch"]::before{position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#aebabb;content:"";transition:transform .15s,background .15s}
.calendar-home-visit-option input[role="switch"]:checked{border-color:#168d91;background:#168d91}
.calendar-home-visit-option input[role="switch"]:checked::before{transform:translateX(14px);background:#fff}
.calendar-home-visit-option input[role="switch"]:focus-visible{outline:2px solid #168d91;outline-offset:2px}
.calendar-settings-home-visits .calendar-settings-local-note{margin:12px 0 2px}
.event.calendar-appointment .event-home-visit-missing-distance{border-color:#d5a13d;background:#fff3d8;color:#946616}
#calendar-settings-error{flex:none;margin:0 16px;min-height:0;font-size:11px}
.calendar-settings-actions{display:flex;flex:none;justify-content:flex-end;gap:8px;padding:8px 12px;border-top:1px solid #e4e9e9;background:#fff}
.calendar-settings-actions button{min-width:68px;height:30px;padding:0 11px;border:1px solid #d5dfe0;border-radius:3px;background:#fff;color:#54696e;font:inherit;font-size:12px;cursor:pointer}
.calendar-settings-actions .save{border-color:#619fa3;background:#619fa3;color:#fff}
@media(max-width:700px){.calendar-settings-dialog{width:94vw;height:min(680px,90vh);max-height:90vh}.calendar-settings-panel{padding:12px}.calendar-settings-visibility{grid-template-columns:minmax(0,1fr)}.calendar-settings-actions{padding:8px 12px}}
.calendar-settings-profile{display:grid;grid-template-columns:minmax(180px,280px) minmax(0,1fr) auto;align-items:center;gap:10px;margin:0 0 9px;padding:8px 10px;border:1px solid #e3e9e9;border-radius:4px;background:#f7f9f9}
.calendar-settings-profile>label{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;color:#52666b;font-size:11px;white-space:nowrap}
.calendar-settings-profile select{height:28px;min-width:0;padding:0 7px;border:1px solid #d4ddde;border-radius:3px;background:#fff;color:#43575d;font:inherit;font-size:11px}
.calendar-settings-profile p{margin:0;color:#718287;font-size:10px;line-height:1.35}
.calendar-settings-profile button{min-height:28px;padding:0 9px;border:1px solid #d4ddde;border-radius:3px;background:#fff;color:#52666b;font:inherit;font-size:10px;white-space:nowrap;cursor:pointer}
.calendar-settings-profile button:disabled{opacity:.5;cursor:not-allowed}
.calendar-settings-profile-override{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 10px;padding:10px 12px;border:1px solid #e7d58b;border-radius:4px;background:#fffbea;color:#665923;font-size:11px;line-height:1.45}
.calendar-settings-profile-override[hidden]{display:none}
.calendar-settings-profile-override strong{display:block;margin-bottom:3px;color:#4e461f;font-size:12px}
.calendar-settings-profile-override p{margin:0}
.calendar-settings-profile-override ul{margin:3px 0 0;padding-left:17px}
.calendar-settings-profile-override-actions{display:flex;flex:0 0 auto;gap:7px}
.calendar-settings-profile-override-actions button{min-height:29px;padding:0 9px;border:1px solid #d9c76f;border-radius:3px;background:#fff;color:#5b5227;font:inherit;font-size:11px;white-space:nowrap;cursor:pointer}
.calendar-settings-profile-override-actions button:hover{background:#fff7d5}
.calendar-settings-grid-layout{display:grid;grid-template-columns:repeat(5,minmax(92px,1fr));gap:8px 10px;margin:0 0 8px;padding:10px;border:1px solid #e3e9e9;border-radius:4px;background:#f7f9f9}
.calendar-settings-grid-layout>label{display:flex;min-width:0;align-items:center;gap:5px;color:#52666b;font-size:11px;white-space:nowrap}
.calendar-settings-grid-layout input[type="time"],.calendar-settings-grid-layout input[type="number"],.calendar-settings-grid-layout select{width:100%;min-width:0;height:28px;padding:0 6px;border:1px solid #d4ddde;border-radius:3px;background:#fff;color:#43575d;font:inherit;font-size:11px}
.calendar-settings-grid-layout input[type="color"]{width:38px;height:28px;flex:none;padding:2px;border:1px solid #d4ddde;border-radius:3px;background:#fff;cursor:pointer}
.calendar-settings-grid-layout+ .calendar-settings-note{margin:4px 0 10px;color:#7a888b;font-size:10px;line-height:1.35}
.day{background:repeating-linear-gradient(to bottom,transparent 0,transparent calc(var(--calendar-cell-height) - 1px),var(--calendar-horizontal-color) calc(var(--calendar-cell-height) - 1px),var(--calendar-horizontal-color) var(--calendar-cell-height)),var(--calendar-free-color);border-left-color:var(--calendar-vertical-color)}
.work-time-band{opacity:.2}
@media(max-width:700px){.calendar-settings-profile{grid-template-columns:1fr}.calendar-settings-profile>label{grid-template-columns:1fr}.calendar-settings-profile button{justify-self:start}.calendar-settings-profile-override{align-items:flex-start;flex-direction:column}.calendar-settings-profile-override-actions{flex-wrap:wrap}.calendar-settings-grid-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-settings-grid-layout>label{white-space:normal}}
@media(max-width:700px){.calendar-settings-state-row{grid-template-columns:minmax(0,1fr)}.calendar-settings-state-row>label:not(.calendar-settings-check){justify-content:space-between}.calendar-settings-state-row select{max-width:calc(100% - 54px)}}
@media(max-width:700px){.calendar-home-visit-cards{grid-template-columns:minmax(0,1fr);gap:10px;padding:10px}.calendar-home-visit-card{min-height:0}.calendar-home-visit-card>p{min-height:0}.calendar-home-visit-option{min-height:64px}}
@media(max-width:700px){.calendar-reminder-send-time{align-items:flex-start;flex-wrap:wrap}.calendar-reminder-row{grid-template-columns:minmax(72px,1fr) minmax(90px,1fr) 28px;gap:8px}.calendar-reminder-row .calendar-reminder-before{grid-column:1;grid-row:2}.calendar-reminder-row .calendar-reminder-channel{grid-column:2;grid-row:2}.calendar-reminder-row .calendar-reminder-channel-status{grid-column:1;grid-row:3}.calendar-reminder-row .calendar-reminder-active{grid-column:2;grid-row:3}.calendar-reminder-row .calendar-reminder-remove{grid-column:3;grid-row:1}}

/* Agenda: papelera como panel lateral, siguiendo el flujo visible de ByClinics. */
#trash-view.trash-drawer{position:fixed;inset:0 0 0 auto;width:min(500px,100vw);max-width:none;height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;border-left:1px solid #dce4e5;border-radius:0;background:#fff;color:#4e6268;box-shadow:-8px 0 28px #172b3026;overflow:auto}
#trash-view.trash-drawer::backdrop{background:#152a2e66}
.trash-drawer-header{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;min-height:58px;padding:0 18px;border-bottom:1px solid #e3e9ea;background:#fff}
.trash-drawer-header h2{margin:0;color:#435960;font-size:16px;font-weight:600}
.trash-drawer-header>button{width:30px;height:30px;border:0;background:transparent;color:#6b7e83;font-size:24px;line-height:1;cursor:pointer}
.trash-drawer-filters{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:10px 12px;padding:18px 20px 14px}
.trash-drawer-filters label{color:#5e7378;font-size:12px}
.trash-drawer-filters input,.trash-drawer-filters select{width:100%;min-width:0;height:34px;padding:0 9px;border:1px solid #d4dfe1;border-radius:4px;background:#fff;color:#43575d;font:inherit;font-size:12px}
.trash-drawer #trash-error{margin:0 20px}
.trash-list{padding:0 20px}
.trash-empty{margin:14px 0;padding:15px 12px;border:1px solid #edf0f0;border-radius:4px;color:#7a8a8e;text-align:center;font-size:13px}
.trash-list .list-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #edf0f0;color:#53696e;font-size:12px}
.trash-list .list-item button{flex:none;min-height:30px;padding:0 10px;border:1px solid #cbdadb;border-radius:4px;background:#fff;color:#52777a;cursor:pointer}
.trash-retention-note{margin:12px 20px 0;color:#859296;font-size:11px}
.trash-demo-note{margin:6px 20px 18px;color:#829095;font-size:10px}
@media(max-width:520px){#trash-view.trash-drawer{width:100vw}.trash-drawer-filters{padding-right:14px;padding-left:14px}.trash-list{padding-right:14px;padding-left:14px}.trash-retention-note,.trash-demo-note{margin-right:14px;margin-left:14px}}

/* Agenda semanal: tipografía y cabecera cotejadas con la agenda de referencia. */
.agenda-toolbar{font:400 12px/18px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.agenda-toolbar button{font:inherit}
.day-heading{padding-top:9px;font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;line-height:18px}
.day-heading>div{font:400 13px/13px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.day-heading strong{margin-top:2px;font:700 16px/16px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.day-heading small{margin-top:28px;font:400 10.5px/10.5px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.hour{font:400 16px/20px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.week-number{padding-top:6px;color:rgba(33,37,41,.5);font:400 14px/21px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}

/* Abrir el detalle de Agenda en un panel lateral, siguiendo el ajuste observado en ByClinics. */
#appointment-detail.appointment-detail-dialog.is-side-panel{inset:118px 16px 0 auto;width:398px;height:calc(100vh - 118px);max-height:none;margin:0;padding:18px 20px 14px;transform:none;border:0;border-left:1px solid #dce5e6;border-radius:0;background:#fff;box-shadow:-8px 0 28px #17373d22;overflow:auto}
#appointment-detail.is-side-panel .appointment-detail-main-content{display:flex;flex-direction:column}
#appointment-detail.is-side-panel .appointment-detail-patient-line{order:-2;align-items:center;min-height:35px;margin:0 30px 2px 0}
#appointment-detail.is-side-panel .appointment-detail-patient-line strong{font-size:16px}
#appointment-detail.is-side-panel .appointment-detail-header{order:-1;margin-bottom:12px}
#appointment-detail.is-side-panel .appointment-detail-time-line{align-items:center}
#appointment-detail.is-side-panel .appointment-detail-professional-line{margin-top:12px;padding-top:14px;border-top:1px solid #e8eded}
#appointment-detail.is-side-panel .appointment-detail-actions{margin-top:auto;padding-top:16px}
@media(max-width:650px){#appointment-detail.appointment-detail-dialog.is-side-panel{inset:0;width:100vw;height:100dvh;padding:18px 16px 14px}}
#calendar-group-filter.has-two-months #calendar-mini-primary{margin-bottom:6px}
#calendar-group-filter .calendar-mini-secondary{height:185px;margin:6px 0 20px}
#calendar-group-filter .calendar-mini-secondary .calendar-mini-heading{height:20px;padding:0 5px}
#calendar-group-filter .calendar-mini-secondary .calendar-mini-weekdays{height:15px;align-items:center}
#calendar-group-filter .calendar-mini-secondary .calendar-mini-weekdays span{padding:0}
#calendar-group-filter .calendar-mini-secondary .calendar-mini-days [role="gridcell"]{height:25px}
/* Agenda · centra los controles de vista como en la barra de ByClinics en escritorio ancho. */
@media(min-width:1680px){.agenda-toolbar{position:relative}.agenda-toolbar>.tools-center{position:absolute;top:50%;left:calc(50% - 10px);transform:translate(-50%,-50%)}}
@media(min-width:1680px){.agenda-toolbar{height:44px;margin-top:0}.agenda-toolbar>.tools-center{gap:0}#previous{margin-left:10px}#period{margin-left:9px}#today{margin-left:8px}#agenda-area:not(.list-mode){height:calc(100% - 40.375px);padding-top:1px}.agenda-area.list-mode,#list-view.with-calendar-sidebar{top:44px}}
@media(min-width:1680px){.agenda-toolbar>.tools-center{top:calc(50% + .5px);left:calc(50% - 412px);transform:translateY(-50%)}.agenda-toolbar>.tools-center>.gap{width:0}#previous{margin-left:9.5px}}
@media(min-width:1680px){.agenda-toolbar{margin-right:15px;padding-right:12px}.agenda-area.list-mode{right:15px}#list-view.with-calendar-sidebar{right:0}}
@media(min-width:1680px){.event.calendar-appointment{transform:translateY(-.375px)}.event.calendar-appointment .event-meta>span,.event.calendar-appointment .event-meta>strong{transform:translateY(.1875px)}}

.calendar-undo-notice{position:absolute;bottom:34px;left:10px;z-index:5;display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid #a8c6cc;border-radius:6px;background:#fff;color:#30454e;font-size:12px;box-shadow:0 2px 9px #0002}.calendar-undo-notice[hidden]{display:none}.calendar-undo-notice button{border:0;background:transparent;color:#267c82;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}.event.calendar-appointment.is-resizable{cursor:ns-resize}.event.calendar-appointment .appointment-resize-handle{position:absolute;display:block;left:0;right:0;width:auto;z-index:2;height:9px;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;cursor:ns-resize}.event.calendar-appointment .appointment-resize-start{top:0}.event.calendar-appointment .appointment-resize-end{bottom:0}.event.calendar-appointment.is-resizable.is-dragging{cursor:ns-resize}

.waiting-room-dialog{inset:35px 0 0 auto;height:calc(100vh - 35px);height:calc(100dvh - 35px);max-height:calc(100vh - 35px);max-height:calc(100dvh - 35px)}.waiting-room-heading{padding:0 13px}.waiting-room-toolbar{grid-template-columns:minmax(0,1fr) 122px;gap:6px;padding:14px 14px 11px}.waiting-room-toolbar input,.waiting-room-toolbar select{height:30px}.waiting-room-entries{padding:0 13px}.waiting-room-section{display:flex;flex-direction:column;margin-bottom:6px}.waiting-room-section-header{display:flex;align-items:center;gap:8px;width:100%;height:33px;padding:7px 10px;border:0;border-bottom:1px solid #dce3e6;border-radius:0;background:transparent;color:#74858c;text-align:left;text-transform:uppercase;font-size:12px;font-weight:600;letter-spacing:.02em;cursor:pointer}.waiting-room-section-header:hover{background:#edf2f3}.waiting-room-section-chevron{width:12px;font-size:15px}.waiting-room-status-dot{width:8px;height:8px;flex:none;border-radius:50%;background:#83939a}.waiting-room-status-dot.is-at-center,.waiting-room-state-chip.is-at-center{background:#fff0d0;color:#946000}.waiting-room-status-dot.is-in-room,.waiting-room-state-chip.is-in-room{background:#dcf3e7;color:#257146}.waiting-room-status-dot.is-left,.waiting-room-state-chip.is-left{background:#eef1f3;color:#617078}.waiting-room-section-title{flex:1}.waiting-room-section-count{font-variant-numeric:tabular-nums}.waiting-room-group-entries[hidden]{display:none}.waiting-room-entry{display:flex;flex-direction:column;gap:2px;margin:8px 0 0;padding:7px 10px;border:1px solid #dce3e6;border-left:4px solid #71808a;border-radius:10px;background:#fff;box-shadow:0 1px 2px #02061714,0 4px 10px #0206170d;cursor:pointer;transition:box-shadow .15s ease,transform .15s ease}.waiting-room-entry:hover,.waiting-room-entry:focus-within{box-shadow:0 3px 6px #0206171f,0 10px 24px #0206171a;transform:translateY(-1px)}.waiting-room-primary-line,.waiting-room-secondary-line{display:flex;align-items:center;gap:8px;min-width:0}.waiting-room-primary-line{min-height:22.5px}.waiting-room-time{flex:0 0 auto;color:#74858c;font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.waiting-room-patient{flex:1 1 auto;min-width:0;overflow-wrap:anywhere;color:#24333e;font-size:13px;line-height:1.25}.waiting-room-state-chip{display:inline-flex;align-items:center;height:22.5px;box-sizing:border-box;flex:0 0 auto;padding:2px 8px;border:1px solid #e8edf0;border-radius:999px;background:#eef1f3;color:#617078;font-size:11px;font-weight:600;white-space:nowrap}.waiting-room-secondary-line{justify-content:space-between;margin-top:0}.waiting-room-professional,.waiting-room-timestamp{color:#74858c;font-size:11px;line-height:16.5px}.waiting-room-timestamp{white-space:nowrap}.waiting-room-actions{display:none;flex-wrap:wrap;gap:6px;margin-top:5px}.waiting-room-entry:hover .waiting-room-actions,.waiting-room-entry:focus-within .waiting-room-actions{display:flex}.waiting-room-action{flex:0 0 auto;padding:5px 6px;border:1px solid transparent;border-radius:4px;background:#eef1f3;color:#59656d;font:400 12px/1.34 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;cursor:pointer}.waiting-room-action.is-center{background:#fff0d0;border-color:#fff0d0;color:#946000}.waiting-room-action.is-room{background:#dcf3e7;border-color:#dcf3e7;color:#257146}.waiting-room-action.is-left{background:#eef1f3;border-color:#eef1f3;color:#59656d}.waiting-room-action.is-clear{background:transparent;border-color:transparent;color:#71808a}.waiting-room-action:focus-visible,.waiting-room-section-header:focus-visible{outline:2px solid #4e9296;outline-offset:2px}@media(hover:none){.waiting-room-actions{display:flex}}@media(max-width:520px){.waiting-room-dialog{width:calc(100vw - 24px);max-width:calc(100vw - 24px)}.waiting-room-toolbar{grid-template-columns:minmax(0,210px) 90px;gap:8px}.waiting-room-action{flex:1 1 auto}}

.waiting-room-entry.is-at-center{border-left-color:#c58a1d}.waiting-room-entry.is-in-room{border-left-color:#2f8055}.waiting-room-entry.is-left{border-left-color:#7b8790}.waiting-room-entry.is-not-arrived{border-left-color:#7b8790}

/* Tipografía y superficies cotejadas con Sala de espera en ByClinics. */
.waiting-room-dialog{box-sizing:border-box;border:1px solid #dee2e6;background:#fff;color:#212529;font:14px/21px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.waiting-room-heading{padding-left:12px;padding-right:12px}.waiting-room-heading h2{font:500 16px/24px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:#212529}
.waiting-room-toolbar{padding:13px 12px 11px}
.waiting-room-toolbar input,.waiting-room-toolbar select{font:14px/19.6px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:#212529}
.waiting-room-entries{padding-left:12px;padding-right:12px;background:#eef2f4}
.waiting-room-patient{color:#1f2937;font:700 13px/16.25px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.waiting-room-time{color:#5b7378;font:400 14px/21px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.waiting-room-professional,.waiting-room-timestamp{color:#5b7378;font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}

/* Ajustes finos de Personas medidos contra ByClinics a 1920 px. */
@media (min-width: 1680px) {
  #people-list-view .people-toolbar {
    padding-left: 11.390625px;
  }
  #people-list-view .people-toolbar > #new-person,
  #people-list-view .people-toolbar > #merge-people,
  #people-list-view .people-toolbar > #people-more-filters {
    font: 12px/16.08px system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    border-radius: 9px;
    transform: translateY(.828125px);
  }
  #people-list-view .people-toolbar > #new-person {
    width: 110.875px;
    min-width: 110.875px;
    border: 1px solid #5f9ea0;
    background: #5f9ea0;
  }
  #people-list-view .people-toolbar > #merge-people {
    width: 136.71875px;
    min-width: 136.71875px;
    transform: translateY(.859375px);
  }
  #people-list-view .people-toolbar > #merge-people,
  #people-list-view .people-toolbar > #people-more-filters {
    border-color: #cdd8da;
    background: #fff;
  }
  #people-list-view .people-toolbar > #people-more-filters {
    width: 86.359375px;
    min-width: 86.359375px;
    height: 28.078125px;
    min-height: 28.078125px;
  }
  #people-list-view .people-search {
    box-sizing: border-box;
    flex: 0 0 560px;
    width: 560px;
    max-width: 560px;
    height: 32px;
    margin-left: 1.59375px;
    padding: 0;
    overflow: hidden;
    border: 1px solid #5f9ea0;
    border-radius: 7px;
    background: #fff;
    transform: translateY(.875px);
  }
  #people-search {
    box-sizing: border-box;
    height: 30px;
    padding: 0 10px;
    border: 0;
    border-radius: 4px;
    background: transparent;
    font: 14px/19.6px system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  }
  #people-search-button {
    box-sizing: border-box;
    width: 64.75px;
    min-width: 64.75px;
    height: 30px;
    border-radius: 0;
    background: #5f9ea0;
    font: 12px/16.08px system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  }
  #people-list-view .people-toolbar > #people-count {
    width: 86.640625px;
    height: 29.5px;
    border-radius: 16px;
    color: #5f9ea0;
    font: 13px/19.5px system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    transform: translate(.421875px, .875px);
  }
  #people-list-view .people-toolbar .people-view-mode-group {
    transform: translateY(.875px);
  }
  #people-list-mode,
  #people-card-mode {
    flex: 0 0 34px;
    width: 34px;
    min-width: 34px;
    height: 30px;
    min-height: 30px;
    padding: 6px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #5b7378;
    font: 12px/12px system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  }
  #people-list-view #people-list-mode.active {
    background: #5f9ea0;
    color: #fff;
  }
  #people-list-view .people-toolbar .people-view-mode-group {
    padding-left: 13.609375px;
  }
  #people-list-view .people-toolbar > #people-print,
  #people-list-view .people-toolbar > #people-export {
    width: 32px;
    min-width: 32px;
    border: 1px solid #cdd8da;
    border-radius: 9px;
    background: #fff;
    color: #5b7378;
    font: 12px/16.08px system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    transform: translate(-.390625px, .875px);
  }
  #people-list-view .people-toolbar > #people-print {
    margin-right: -2px;
  }
}

@media (max-width: 820px) {
  .people-view { top: 49.3125px; }
  #people-list-view { margin: 13px 24px 0 9px; }
  #people-list-view .people-toolbar {
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    align-content: start;
    align-items: center;
    column-gap: 8px;
    row-gap: 8px;
    height: 127.03125px;
    min-height: 127.03125px;
    padding: 9px 11.4px;
    overflow: visible;
  }
  #people-list-view .people-toolbar > button {
    box-sizing: border-box;
    flex: 0 0 auto;
    min-height: 28px;
    padding: 0 8px;
    font: 12px/16.08px system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  }
  #people-list-view .people-toolbar > #new-person {
    order: 0;
    width: 110.875px;
    height: 28.078125px;
    min-height: 28.078125px;
    border: 1px solid #5f9ea0;
    border-radius: 9px;
    background: #5f9ea0;
  }
  #people-list-view .people-toolbar > #merge-people {
    order: 1;
    width: 136.71875px;
    height: 29.03125px;
    min-height: 29.03125px;
    margin-left: -2px;
    border: 1px solid #cdd8da;
    border-radius: 9px;
    background: #fff;
  }
  #people-list-view .people-search {
    box-sizing: border-box;
    order: 2;
    flex: 0 0 100%;
    width: 100%;
    max-width: none;
    height: 32px;
    margin: 0;
    padding: 0;
    overflow: hidden;
    border: 1px solid #5f9ea0;
    border-radius: 7px;
    background: #fff;
  }
  #people-search {
    box-sizing: border-box;
    flex: 1 1 auto;
    min-width: 0;
    height: 30px;
    padding: 0 10px;
    border: 0;
    border-radius: 4px;
    background: transparent;
    font: 14px/19.6px system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  }
  #people-search-button {
    box-sizing: border-box;
    flex: 0 0 64.75px;
    width: 64.75px;
    min-width: 64.75px;
    height: 30px;
    padding: 0 5px;
    border-radius: 0;
    background: #5f9ea0;
    font: 12px/16.08px system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  }
  #people-list-view .people-toolbar > #people-more-filters {
    order: 3;
    flex: 0 0 86.359375px;
    width: 86.359375px;
    min-width: 86.359375px;
    height: 28.078125px;
    min-height: 28.078125px;
    border: 1px solid #cdd8da;
    border-radius: 9px;
    background: #fff;
  }
  #people-list-view .people-toolbar > #people-count {
    order: 4;
    box-sizing: border-box;
    flex: 0 0 86.640625px;
    width: 86.640625px;
    height: 29.5px;
    margin-left: 1.55px;
    border-radius: 16px;
    color: #5f9ea0;
    font: 13px/19.5px system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  }
  #people-list-view .people-view-mode-group { display: none; }
  #people-list-view .people-toolbar > #people-print {
    order: 5;
    margin-left: auto;
    margin-right: 0;
  }
  #people-list-view .people-toolbar > #people-export {
    order: 6;
    margin-left: -2px;
  }
  #people-list-view .people-toolbar > #people-print,
  #people-list-view .people-toolbar > #people-export {
    box-sizing: border-box;
    flex: 0 0 32px;
    width: 32px;
    min-width: 32px;
    height: 32px;
    min-height: 32px;
    padding: 6px;
    border: 1px solid #cdd8da;
    border-radius: 9px;
    background: #fff;
    color: #5b7378;
  }
  #people-cards {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
    margin-top: 6.4px;
    padding: 9px 6.390625px 6px;
  }
  #people-cards .person-card {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 0;
    min-width: 0;
    margin: 0;
    padding: 11.39px 11.1875px 11px;
    border: 1px solid rgba(2, 6, 23, .08);
    border-radius: 16px;
    background: #fff;
    box-shadow: none;
    font: 14px/21px system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  }
  .people-card-head { display: flex; align-items: flex-start; gap: 9.6px; min-height: 35.2px; }
  .people-card-avatar { width: 34px; height: 34px; flex: 0 0 34px; display: grid; place-items: center; border-radius: 50%; background: #fde8e4; color: #a2402f; font: 700 12.5px/18.75px system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; }
  .people-card-avatar[data-person-id="demo-person-1"] { background: #e3f4e6; color: #2b6f3a; }
  .people-card-identity { display: flex; flex: 1 1 auto; flex-direction: column; min-width: 0; }
  .people-card-title { width: fit-content; max-width: 100%; overflow: hidden; padding: 0; border: 0; background: transparent; color: #1f2937; text-align: left; text-overflow: ellipsis; white-space: nowrap; font: 600 14.4px/18px system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; }
  .people-card-number { margin-top: 1.6px; color: #5b7378; font: 12px/15.6px system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; }
  .people-card-meta { display: flex; min-height: 18.24px; margin: 4.8px 0 0; color: #5b7378; font: 12.16px/18.24px system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; }
  .person-card .people-card-meta { margin: 4.8px 0 0; }
  .people-card-actions { display: flex; justify-content: flex-end; gap: 4px; margin-top: 6.4px; padding-top: 6.4px; border-top: 1px solid #e5e7eb; }
  .people-card-actions .people-icon-action { box-sizing: border-box; width: 30px; height: 30px; flex: 0 0 30px; display: grid; place-items: center; padding: 5px; border: 0; border-radius: 6px; background: #e0f2f1; color: #00796b; }
  .people-card-actions .people-icon-action-edit { background: #e3f2fd; color: #1565c0; }
  .people-card-actions .people-icon-action-trash { background: #fdecea; color: #c62828; }
  .people-card-actions .people-icon-action svg { width: 17px; height: 17px; fill: currentColor; }
}

.top .banner{flex:none}@media(max-width:650px){.top .banner{max-width:86px;margin-right:4px;padding:4px 5px;font-size:9px}}.people-view{top:4.5px}.people-tabs{height:32px}

#people-table th{padding:0 8px;background:#eef5f5}

#people-table tbody{position:relative;top:2px}

/* Personas · panel flotante de filtros */
.people-filter-panel{position:absolute;top:89.53125px;left:min(487.9375px,calc(100% - 470px));z-index:20;display:flex;flex-direction:column;width:460px;height:727px;max-height:calc(100% - 96px);overflow:hidden;padding:0;border:1px solid rgba(2,6,23,.08);border-radius:12px;background:#fff;box-shadow:0 12px 30px rgba(21,42,49,.2)}
.people-filter-header{display:flex;flex:0 0 38px;align-items:center;justify-content:space-between;gap:10px;padding:6px 12px;background:#5f9ea0;color:#fff;font:600 14px/21px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.people-filter-header strong{display:flex;align-items:center;gap:8px;font:600 14px/21px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.people-filter-header strong svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}
.people-filter-header-actions{display:flex;align-items:center;gap:4px}
.people-filter-header-actions button{display:grid;place-items:center;min-height:26px;padding:0 7px;border:1px solid rgba(255,255,255,.25);border-radius:6px;background:transparent;color:#fff;font:12px/16px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;cursor:pointer}
#people-filter-close{width:26px;padding:0;font-size:20px}
#people-filter-form{display:flex;flex:1;min-height:0;flex-direction:column;gap:0}
.people-filter-body{flex:1;min-height:0;overflow:auto;padding:12px 16px 12px}
.people-filter-groups{display:flex;flex-direction:column;gap:14px}
.people-filter-group{min-width:0;padding:0 0 15px;border:0;border-radius:0;background:transparent}
.people-filter-group h3{height:14.4px;margin:0;color:#6c757d;font:600 11px/14.4px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:.04em;text-transform:uppercase}
.people-filter-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.people-filter-group:nth-child(-n+2) .people-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px}
.people-filter-panel label{position:relative;display:block;height:56px;min-width:0;margin:0;padding:0 0 0 1px;color:#6c757d;font:14px/19.6px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.people-filter-panel label>span{position:absolute;top:30px;left:10px;z-index:1;overflow:hidden;max-width:calc(100% - 20px);color:#6c757d;font:12px/19.6px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}
.people-filter-panel input:not([type=checkbox]){position:absolute;top:25px;left:1px;width:calc(100% - 2px);height:30px;min-height:30px;padding:8px;border:1px solid #ced4da;border-radius:4px;background:#fff;color:#212529;font:14px/19.6px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.people-filter-panel label:focus-within>span,.people-filter-panel label:has(input:not(:placeholder-shown))>span{top:1px;font-size:10px;line-height:12px}
.people-filter-panel .people-filter-check{display:flex;align-items:center;gap:8px;height:24px;padding:0;color:#6c757d;font:14px/20px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.people-filter-panel .people-filter-check input{width:13px;height:13px;margin:0;accent-color:#5f9ea0}
.people-filter-panel .people-filter-note{margin:2px 0 0;color:#78888d;font:10px/14px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.people-filter-actions{display:flex;flex:0 0 49px;align-items:center;justify-content:flex-end;gap:8px;margin:0;padding:10px 16px;border-top:1px solid #e7eded;background:#f5f9f9}
.people-filter-actions button{min-height:28px;padding:0 11px;border:1px solid #d8e1e3;border-radius:5px;background:#fff;color:#43575e;font:12px/16px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;cursor:pointer}
.people-filter-actions button.save{border:0;background:#5f9ea0;color:#fff}
@media(max-width:820px){.people-filter-panel{top:120px;right:8px;left:8px;width:auto;height:min(727px,calc(100% - 132px));max-height:none}.people-filter-group:nth-child(-n+2) .people-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:8px}}
@media(max-width:500px){.people-filter-panel{left:5px;right:5px}.people-filter-group:nth-child(-n+2) .people-filter-fields{grid-template-columns:1fr}.people-filter-body{padding:10px 12px}.people-filter-actions{padding-right:12px;padding-left:12px}}
@media(max-width:500px){.people-filter-referrer .people-referrer-options{width:100%;max-height:calc(100vh - 220px)}}
.people-filter-groups{align-items:stretch}.people-filter-panel label{width:100%}.people-filter-group:nth-child(4){padding-bottom:0}.people-filter-panel .people-filter-check{height:14px;min-height:14px;margin-top:20px}
.people-filter-widget{position:relative;width:100%;height:56px;min-width:0;color:#6c757d;font:14px/19.6px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.people-filter-widget>span{display:none}
.people-filter-widget .people-filter-select{position:absolute;top:24px;left:0;display:flex;width:100%;height:32px;min-height:32px;align-items:center;justify-content:space-between;gap:6px;overflow:hidden;padding:4px 10px;border:1px solid #ced4da;border-radius:9px;background:#fff;color:#212529;font:14px/19.6px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;text-align:left;white-space:nowrap}
.people-filter-widget .people-filter-select[aria-expanded=true]{border-color:#5f9ea0;box-shadow:0 0 0 3px rgba(95,158,160,.18)}
.people-filter-widget .people-filter-select>span{position:static;flex:none;color:#6c757d;font:16px/16px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;pointer-events:none}
.people-filter-widget input[type=hidden]{display:none}
.people-filter-options{position:absolute;top:60px;left:0;z-index:25;display:flex;width:calc(100% + 2px);max-height:220px;flex-direction:column;gap:0;overflow:auto;padding:5px 0;border:1px solid #ced4da;border-radius:4px;background:#fff;box-shadow:0 5px 14px rgba(21,42,49,.18)}
.people-filter-options[hidden]{display:none}
.people-filter-multiselect .people-filter-options{padding:0;border-radius:4px}
.people-filter-empty-option{display:grid;min-height:49px;place-items:center;margin:0;padding:14px 16px;color:#78888d;font:13px/21px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;text-align:center}
.people-filter-option{display:flex!important;min-height:30px!important;height:auto!important;align-items:center;gap:8px;padding:4px 10px!important;color:#343a40!important;font:13px/18px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif!important;cursor:pointer}
.people-filter-panel .people-filter-option input[type=checkbox]{position:static;width:14px;height:14px;flex:none;margin:0;accent-color:#5f9ea0}
.people-filter-option:hover,.people-referrer-option:hover{background:#f1f6f6}
.people-filter-referrer .people-referrer-options{top:auto;right:auto;bottom:29px;left:0;z-index:30;display:block;width:min(426px,calc(100vw - 16px));max-height:228px;overflow-y:auto;padding:6px 6px 26px;border:1px solid #ced4da;border-radius:4px;background:#fff;box-shadow:0 4px 12px rgba(21,42,49,.16)}
.people-filter-referrer .people-referrer-options:has(.people-referrer-guidance:not([hidden])){min-height:228px}
.people-filter-panel input.people-referrer-query{position:static;display:block;width:100%;height:30px;min-height:30px;margin:0;padding:5px 8px;border:1px solid #ced4da;border-radius:4px;background:#fff;color:#212529;font:13px/18px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.people-filter-panel input.people-referrer-query:focus{outline:0;border-color:#5f9ea0;box-shadow:0 0 0 3px rgba(95,158,160,.2)}
.people-referrer-guidance{margin-top:25px;padding-top:7px;text-align:center}
.people-referrer-help{min-height:18px;margin:0 1px 5px;color:#1f2937;font:600 13px/18.2px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.people-referrer-title{margin:0 0 6px;color:#5b7378;font:12px/16.8px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.people-referrer-criteria{display:flex;width:100%;max-width:368px;flex-wrap:wrap;justify-content:center;gap:5px;margin:0 auto}
.people-referrer-criteria span{display:inline-flex;min-height:21px;align-items:center;gap:5px;padding:0 10px;border:1px solid #dce8e9;border-radius:12px;background:#f2f7f7;color:#5b7378;font:11px/14px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.people-referrer-criteria svg{width:11px;height:14px;flex:none;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1}
.people-referrer-example{margin:7px 22px 0;color:#94a3b8;font:11px/15.4px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;text-align:center}
.people-referrer-no-results{margin:10px 2px 4px;color:#78888d;font:12px/18px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;text-align:center}
.people-referrer-results{display:flex;flex-direction:column}
.people-referrer-option{min-height:30px;border:0;background:#fff;color:#343a40;font:13px/18px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;text-align:left;cursor:pointer}
@media(max-width:500px){.people-filter-panel .people-filter-referrer .people-referrer-options{width:100%;max-width:100%}}

/* Unidad familiar: alineación y diálogo cotejados con la ficha DEMO de referencia. */
.person-profile-family-card{padding:13px 16px 13.5px!important}
.person-family-note{display:flex;align-items:flex-start;gap:8px;margin:0 0 7px!important;color:#64777d;font-size:13px;line-height:18px}
.person-family-note svg,.person-family-dialog-note svg{flex:0 0 14px;width:14px;height:14px;color:#58a4a6}
.person-family-actions{justify-content:flex-start!important;gap:8px!important;margin:0}
.person-family-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px!important;height:32px;padding:0 10px!important;border:1px solid #d7e0e1;border-radius:5px;background:#fff;color:#50656c;font:13px/18px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;white-space:nowrap}
.person-family-actions button svg{flex:0 0 16px;width:16px;height:16px;color:#6c8589}
.person-family-actions button[data-family-action="create-family"]{width:119.6px}
.person-family-actions button[data-family-action="join-family"]{width:152.2px}
.person-family-overlay{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:14px;background:#132c334d}
.person-family-dialog{width:min(560px,calc(100vw - 28px));max-height:calc(100vh - 28px);overflow:auto;box-sizing:border-box;margin:0!important;padding:0 13px 12px!important;border:1px solid #d9e0e2!important;border-radius:7px!important;background:#fff!important;color:#394f56;box-shadow:0 14px 44px #10242a40}
.person-family-dialog-header{display:flex;align-items:center;justify-content:space-between;height:47px;margin:0 -13px 6px;padding:0 14px 0 13px;border-bottom:1px solid #e5eaeb}
.person-family-dialog-header h4{margin:0!important;color:#303a3d!important;font:500 16px/22px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.person-family-dialog-close{display:grid;width:28px;min-height:28px!important;place-items:center;padding:0!important;border:0!important;background:transparent!important;color:#69797d!important;font:24px/1 Arial,sans-serif;cursor:pointer}
.person-family-dialog .person-record-grid{grid-template-columns:minmax(0,230px) minmax(0,1fr);column-gap:44px;row-gap:7px;margin:0}
.person-family-dialog .person-record-grid label{display:grid;gap:2px;min-width:0;color:#59666a;font:12px/16px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.person-family-dialog .person-family-name-field{grid-column:1/-1}
.person-family-dialog .person-record-grid input:not([type=checkbox]),.person-family-dialog .person-record-grid select{width:100%;height:30px;min-height:30px;padding:0 9px;border:1px solid #cbd7d9;border-radius:8px;background:#fff;color:#34484e;font:13px/20px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.person-family-dialog .person-family-name-field input{border-radius:12px!important}
.person-family-dialog .person-family-responsible{display:flex!important;align-items:center;align-self:center;gap:8px;grid-column:2;min-height:20px;color:#34484e!important;font-size:13px!important;line-height:20px!important;white-space:nowrap}
.person-family-dialog .person-family-responsible input{position:relative;width:50px!important;height:20px;min-height:20px!important;margin:0;appearance:none;border:1px solid #68a8ab;border-radius:12px;background:#fff;cursor:pointer}
.person-family-dialog .person-family-responsible input::before{position:absolute;top:1px;left:1px;width:16px;height:16px;border-radius:50%;background:#c9d0d1;content:"";transition:transform .12s ease,background .12s ease}
.person-family-dialog .person-family-responsible input:checked{background:#6da9aa}
.person-family-dialog .person-family-responsible input:checked::before{transform:translateX(30px);background:#fff}
.person-family-dialog-note{display:flex;align-items:center;gap:6px;margin:14px 0 0;color:#687b80;font:12px/18px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.person-family-dialog>[data-family-error]:empty{display:none}
.person-family-dialog .person-record-form-actions{position:relative;left:1px;justify-content:flex-end;gap:8px;margin:17px 0 0}
.person-family-dialog .person-record-form-actions button{height:32px;min-height:32px;padding:0 10px;border:1px solid #d5dfe0;border-radius:8px;background:#fff;color:#56757a;font:13px/18px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.person-family-dialog .person-record-form-actions .save{border:0;background:#619fa3;color:#fff}
.person-family-dialog .person-record-form-actions .save{width:95.55px}
.person-family-dialog button:focus-visible,.person-family-dialog input:focus-visible,.person-family-dialog select:focus-visible{outline:2px solid #74aaab;outline-offset:2px}
@media(max-width:560px){.person-family-overlay{padding:8px}.person-family-dialog{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}.person-family-dialog .person-record-grid{grid-template-columns:minmax(0,1fr);row-gap:12px}.person-family-dialog .person-family-name-field,.person-family-dialog .person-family-responsible{grid-column:1}.person-family-dialog .person-family-responsible{justify-self:start}}
.person-profile-data-content .person-profile-tags-card,.person-profile-data-content .person-profile-followup-card{padding:14.4px 16px}
.person-profile-data-content .person-profile-tags-card h3,.person-profile-data-content .person-profile-followup-card h3{margin:0 0 8px;font-size:16px;font-weight:500;line-height:19.2px}
.person-profile-data-content .person-profile-tag-picker{width:calc(100% + 1.36px);height:42px;grid-template-columns:minmax(0,1fr) 38px;align-items:center}
.person-profile-data-content .person-profile-tag-trigger{height:42px;min-height:42px}
.person-profile-data-content .person-profile-followup-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;width:calc(100% + 8px);margin:8px -4px 0}
.person-profile-followup-grid>.person-profile-floating-field,.person-profile-followup-grid>.person-profile-source-field{position:relative;display:block;height:56px;min-height:56px;margin:8px 4px 0;padding:24px 0 0;box-sizing:border-box;color:#6c757d;font-size:14px;line-height:19.6px}
.person-profile-followup-grid .person-profile-field-caption{top:4px;left:-9px;color:#6c757d;font:14px/16.8px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.person-profile-followup-grid .person-profile-floating-field>select{position:absolute;top:24px;left:0;width:100%;height:32px;min-height:32px;margin:0;padding:0 8px;border:1px solid #ced4da;border-radius:3px;background:#fff;color:#495057;font:14px/19.6px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.person-profile-followup-grid .person-profile-source-picker{position:absolute;top:24px;left:0;width:100%;height:32px}
.person-profile-followup-grid .person-profile-source-trigger{height:32px;min-height:32px;padding:0 8px;border-color:#ced4da;border-radius:3px;color:#495057;font:14px/19.6px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.person-profile-source-additional{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 8px}
.person-profile-consent-separator{height:1px;margin:14.4px 0 9.6px;border:0;background:rgba(33,37,41,.75)}
.person-profile-consent-heading{margin:0 0 8px;color:#94a3b8;font:700 11.2px/16.8px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.person-profile-data-content .person-profile-consents{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;width:calc(100% + 8px);margin:-8px -4px 0;padding:0;border:0}
.person-profile-data-content .person-profile-followup-card{margin-top:-1.1px}
.person-profile-data-content .person-profile-consent{display:flex;align-items:center;gap:10.4px;min-height:51.6px;margin:8px 4px 0;padding:8.8px 11.2px;border:1px solid rgba(2,6,23,.08);border-radius:6px;background:#f5f9f9;color:rgba(33,37,41,.75);font:14px/21px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.person-profile-data-content .person-profile-consent input{flex:0 0 50px;width:50px;height:20px;margin:0}
.person-profile-data-content .person-profile-consent-copy{display:block;min-width:0;flex:1}
.person-profile-data-content .person-profile-consent-copy>b{display:block;color:#1f2937;font:600 13.12px/16.4px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.person-profile-data-content .person-profile-consent-copy>small{display:block;margin-top:1.6px;color:#5b7378;font:11.2px/14px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
@media(max-width:900px){.person-profile-data-content .person-profile-followup-card{margin-top:0}}
@media(max-width:560px){.person-profile-data-content .person-profile-followup-grid,.person-profile-data-content .person-profile-consents{grid-template-columns:minmax(0,1fr)}}
/* Configurador del resumen de ficha, ajustado a la vista observada en ByClinics. */
.person-summary-dialog{box-sizing:border-box;width:min(980px,calc(100vw - 24px));height:min(556px,calc(100vh - 24px));max-width:none;max-height:none;overflow:hidden;padding:0 12px 10px;border:1px solid #d5dfe1;border-radius:3px;background:#fff;color:#354b52;box-shadow:0 8px 28px #172d3226}
.person-summary-dialog::backdrop{background:#15272c66}
.person-summary-head{height:48px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e6ebec}
.person-summary-head h2{margin:0;font-size:16px;font-weight:500}
.person-summary-head>button{width:28px;height:28px;border:0;background:transparent;color:#60757b;font-size:21px;cursor:pointer}
.person-summary-body{height:calc(100% - 100.5px);display:grid;grid-template-columns:minmax(0,435fr) minmax(0,501fr);gap:18px;padding-top:11.5px}
.person-summary-options,.person-summary-preview-column{min-width:0;min-height:0}
.person-summary-presets{height:28px;display:flex;align-items:center;gap:6px;margin-bottom:10px;color:#4d6268;font-size:12px}
.person-summary-presets>span{margin-right:4px}
.person-summary-dialog button:not(.person-summary-head button){min-height:28px;padding:3px 9px;border:1px solid #d4dfe1;border-radius:3px;background:#fff;color:#52686f;font:inherit;font-size:12px;cursor:pointer}
.person-summary-presets button[aria-pressed=true]{border-color:#4b9295;background:#4b9295;color:#fff}
.person-summary-dialog button:disabled{opacity:.55;cursor:not-allowed}
.person-summary-dialog h3{margin:0 0 9px;color:#536a70;font-size:12px;font-weight:600}
.person-summary-checks{display:grid;gap:0;align-content:start}
.person-summary-check{min-height:23px;display:flex;align-items:center;gap:8px;color:#4b6268;font-size:12px;cursor:pointer}
.person-summary-check input{width:14px;height:14px;margin:0;accent-color:#51999b}
.person-summary-check span{flex:1;display:flex;align-items:center;justify-content:space-between;gap:8px}
.person-summary-check small{color:#829195;font-size:10px}
.person-summary-check.is-fixed{min-height:26px;margin-bottom:6px;cursor:default}
.person-summary-session-options{display:flex;width:411px;gap:6px;margin:-1px 0 13.5px 23px}
.person-summary-session-options label{display:block;width:202px;overflow:hidden;color:#6c7e83;font-size:0}
.person-summary-session-options select{width:202px;height:32px;padding:4px 7px;border:1px solid #d1dcde;border-radius:3px;background:#fff;color:#435b61;font:inherit;font-size:11px}
.person-summary-document-heading{margin-top:5.5px!important;margin-bottom:8px!important;padding-top:3px!important;border-top:1px solid #e7ecec}
.person-summary-demo-note{margin:5px 0 0;color:#71858a;font-size:10px;line-height:1.35}
.person-summary-preview-column{padding-top:39px}
.person-summary-preview-column h3{margin:0 0 6px}
.person-summary-preview{height:382px;overflow:auto;padding:14px 16px;border:1px solid #e0e7e8;background:#fff;color:#52676d}
.person-summary-preview-section{margin:0 0 14px}
.person-summary-preview-section h4{margin:0 0 4px;color:#384f56;font-size:14px;font-weight:600;line-height:22px}
.person-summary-preview-section p{margin:0;color:#5f7479;font-size:13px;line-height:20px;overflow-wrap:anywhere}
.person-summary-status{min-height:14px;margin:2px 0;color:#a23b3b;font-size:11px}
.person-summary-actions{height:33px;display:flex;align-items:center;gap:7px}
.person-summary-actions>span{flex:1}
.person-summary-actions button[data-summary-action=cancel]{width:71px;min-height:32px}
.person-summary-actions button[data-summary-action=save]{width:183px;min-height:32px}
.person-summary-actions button[title=Imprimir],.person-summary-actions button[title="Descargar PDF"]{width:30px;min-height:30px;padding:0}
.person-summary-actions button[disabled]{width:79px;min-height:33px;white-space:nowrap}
@media(max-width:760px){.person-summary-dialog{height:min(760px,calc(100dvh - 20px));padding:0 10px 10px}.person-summary-body{height:calc(100% - 130px);grid-template-columns:1fr;grid-template-rows:minmax(245px,auto) minmax(180px,1fr);gap:12px;overflow:auto}.person-summary-preview-column{padding-top:0}.person-summary-preview{height:calc(100% - 24px);min-height:150px}.person-summary-session-options{width:auto;max-width:calc(100% - 23px);flex-wrap:wrap;margin:4px 0 8px 23px}.person-summary-session-options label{width:calc(50% - 3px)}.person-summary-session-options select{width:min(202px,34vw)}.person-summary-actions{height:auto;flex-wrap:wrap}.person-summary-actions>span{display:none}.person-summary-actions button[data-summary-action=save]{flex:1}}

#person-profile-view .person-profile-content.person-report-editor-open> :not(.person-report-form){display:none!important}
#person-profile-view .person-report-form{position:fixed;z-index:80;inset:45px 15px 30px 75px;display:grid;grid-template-rows:50px minmax(0,1fr) auto;gap:12px;max-width:none;margin:0!important;padding:0;border:0;border-radius:0;background:#fff;overflow:hidden}
.person-report-editor-header{display:flex;align-items:center;gap:8px;min-width:0;padding:7px 10px;border:1px solid #dfe5e7;border-radius:9px;background:#fff}
.person-report-editor-header>input[name=title]{flex:1;min-width:150px;max-width:320px;margin-right:auto;height:32px;padding:0 10px;border:1px solid #d4dfe1;border-radius:7px;font:inherit;color:#43575e}
.person-report-editor-header>button{min-height:32px;padding:0 10px;border:1px solid #d6e0e2;border-radius:7px;background:#fff;color:#50666d;font:inherit;font-size:12px;white-space:nowrap;cursor:pointer}
.person-report-editor-header>button.save{background:#619fa3;border:0;color:#fff}.person-report-editor-header>button:disabled{opacity:.48;cursor:not-allowed}
.person-report-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;min-height:0}
.person-report-editor-main{display:grid;grid-template-rows:44px minmax(0,1fr) auto;min-width:0;min-height:0;border:1px solid #dfe5e7;border-radius:9px;background:#fff;overflow:hidden}
.person-report-editor-main .clinical-editor-toolbar{display:flex;align-items:center;gap:8px;min-height:44px;margin:0;padding:4px 13px;border-bottom:1px solid #dfe5e7;background:#fff;overflow:auto}
.person-report-editor-main .clinical-editor-toolbar button,.person-report-editor-main .clinical-editor-toolbar select,.person-report-editor-main .clinical-editor-toolbar input{flex:0 0 auto;min-height:32px}
.person-report-editor-main .clinical-editor-toolbar button{min-width:32px;height:32px;padding:0 7px;border:1px solid #d9e1e3;border-radius:4px;background:#fff;color:#43575e;font-size:14px}
.person-report-editor-main .clinical-editor-toolbar select{height:32px;max-width:none;padding:0 7px;border:1px solid #d9e1e3;border-radius:4px;background:#fff;color:#43575e}
.person-report-editor-main .clinical-editor-toolbar select[aria-label="Fuente del informe"]{width:106px}
.person-report-editor-main .clinical-editor-toolbar select[aria-label="Tamaño de fuente"]{width:94px}
.person-report-editor-main .clinical-editor-toolbar select[aria-label="Formato del informe"]{width:99px}
.person-report-editor-main .clinical-editor-toolbar select[aria-label="Alineación del informe"]{width:59px}
.person-report-editor-main .clinical-editor-toolbar input[type="color"]{width:57px;height:32px;padding:3px;border:1px solid #d9e1e3;border-radius:4px;background:#fff}
.person-report-editor-main .clinical-editor-toolbar input[data-clinical-color="hiliteColor"]{margin-right:21px}
.person-report-editor-main .clinical-editor-toolbar button[data-clinical-command="createLink"]{margin-left:21px}
.person-report-editor-main .clinical-editor-toolbar button[data-clinical-command="undo"]{margin-left:20px}
.person-report-editor-main .clinical-editor table,.person-report-print-content table{width:100%;border-collapse:collapse;table-layout:fixed}
.person-report-editor-main .clinical-editor td,.person-report-editor-main .clinical-editor th,.person-report-print-content td,.person-report-print-content th{min-width:50px;padding:6px;border:1px solid #b9c8ca}
.person-report-editor-main .clinical-editor img,.person-report-print-content img{display:inline-block;max-width:100%;max-height:320px;object-fit:contain}
.person-report-editor-main .person-report-editor{min-height:0;height:100%;padding:18px;border:0;border-radius:0;box-shadow:none!important;overflow:auto;line-height:1.55}
.person-report-editor-main .clinical-dictation-status{margin:0;padding:5px 10px;border-top:1px solid #edf0f1;font-size:11px}
.person-report-link-dialog{position:fixed;inset:auto;box-sizing:border-box;width:min(310px,calc(100vw - 24px));height:341px;max-width:none;max-height:calc(100vh - 24px);margin:0;padding:0;border:1px solid #dee2e6;border-radius:8px;background:#fff;color:#354b52;box-shadow:0 10px 32px #172d3233}
#person-profile-view .person-profile-content.person-report-editor-open>.person-report-link-dialog[open]{display:block!important}
#person-report-table-dialog{position:fixed;z-index:90;inset:auto;box-sizing:border-box;width:180px;height:150px;max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);margin:0;padding:7px 9px;border:1px solid #dfe3e6;border-radius:4px;background:#fff;color:#354b52;box-shadow:0 3px 12px #172d3226}
#person-profile-view .person-profile-content.person-report-editor-open>#person-report-table-dialog[open]{display:block!important}
.person-report-table-preview{height:18px;color:#50666d;font-size:12px;line-height:18px;text-align:center}
.person-report-table-grid{display:grid;grid-template-columns:repeat(10,14px);grid-template-rows:repeat(3,14px);gap:2px;width:160px;height:46px;margin-top:4px}
.person-report-table-cell{box-sizing:border-box;width:14px;height:14px;min-height:14px;padding:0;border:1px solid #aebfc2;border-radius:1px;background:#fff;cursor:pointer}
.person-report-table-cell.is-preview{border-color:#6a9fa3;background:#a8d5d6}
.person-report-table-cell:focus-visible{outline:2px solid #619fa3;outline-offset:1px}
.person-report-table-insert{display:block;width:160px;height:32px;min-height:32px;margin-top:22px;padding:0;border:1px solid #d4dfe1;border-radius:4px;background:#fff;color:#50666d;font-size:12px;cursor:pointer}
#person-report-template-empty-dialog{position:fixed;inset:0;box-sizing:border-box;width:min(880px,calc(100vw - 24px));height:221px;max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);margin:auto;padding:0;border:1px solid #dee2e6;border-radius:8px;background:#fff;color:#212529;box-shadow:0 16px 48px #0002;font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif}
#person-profile-view .person-profile-content.person-report-editor-open>#person-report-template-empty-dialog[open]{display:block!important}
#person-report-template-empty-dialog::backdrop{background:#15272c66}
.person-report-template-empty-header{display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;height:48px;padding:0 14px 0 12px;border-bottom:1px solid #e5eaeb}
.person-report-template-empty-header h2{margin:0;color:#212529;font-size:16px;font-weight:500;line-height:24px;transform:translateY(-1.5px)}
.person-report-template-empty-close{display:grid;width:28px;height:28px;place-items:center;padding:0;border:1px solid transparent;background:transparent;color:#6c757d;font-size:22px;cursor:pointer}
.person-report-template-empty-body{box-sizing:border-box;height:171px;padding:12px;display:grid;grid-template-rows:88px 47px;gap:12px}
.person-report-template-empty-state{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:18px;color:#5b7378}
.person-report-template-empty-icon{display:grid;width:26px;height:26px;place-items:center;color:#5f9ea0;font-size:26px;line-height:26px}
.person-report-template-empty-state p{margin:6px 0 0;color:#5b7378;font-size:13.5px;line-height:20.25px;text-align:center}
.person-report-template-empty-footer{display:flex;align-items:flex-end;justify-content:flex-end}
.person-report-template-empty-footer button{box-sizing:border-box;width:56px;min-height:32px;padding:0;border:1px solid #cdd8da;border-radius:9px;background:#fff;color:#3b6d6f;font-family:inherit;font-size:14px;line-height:22px;cursor:pointer}
.person-report-link-dialog::backdrop{background:#15272c66}
.person-report-link-header{display:flex;align-items:center;justify-content:space-between;height:48px;padding:0 12px 0 16px;border-bottom:1px solid #e5eaeb}
.person-report-link-header h2{margin:0;color:#354b52;font-size:16px;font-weight:500}
.person-report-link-close{display:grid;width:28px;height:28px;place-items:center;margin-right:3px;padding:0;border:0;background:transparent;color:#69797d;font:24px/1 Arial,sans-serif;cursor:pointer;transform:translateY(1.5px)}
.person-report-link-form{display:grid;gap:0;padding:0 12px 12px;transform:translateY(1px)}
.person-report-link-form>label:not(.person-report-link-new-window){display:grid;gap:0;margin-top:14px;color:#56696f;font-size:13px;font-weight:400}
.person-report-link-form>label:not(.person-report-link-new-window):nth-of-type(1){margin-top:17px}
.person-report-link-form>label:not(.person-report-link-new-window):nth-of-type(2),.person-report-link-form>label:not(.person-report-link-new-window):nth-of-type(3){margin-top:18px}
.person-report-link-form input[type=text]{box-sizing:border-box;width:100%;height:30px;padding:0 8px;border:1px solid #cbd7d9;border-radius:5px;background:#fff;color:#34484e;font:13px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.person-report-link-new-window{display:flex;align-items:center;gap:8px;margin-top:17px;color:#56696f;font-size:13px;font-weight:400}
.person-report-link-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px}
.person-report-link-actions button{min-height:32px;padding:0 10px;border:1px solid #d5dfe0;border-radius:5px;background:#fff;color:#56757a;font:13px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;cursor:pointer}
.person-report-link-actions button.save{border-color:#619fa3;background:#619fa3;color:#fff}
.person-report-link-form>[data-person-report-link-error]:empty{display:none}
.person-report-link-dialog button:focus-visible,.person-report-link-dialog input:focus-visible{outline:2px solid #74aaab;outline-offset:2px}
.person-report-settings{display:flex;flex-direction:column;gap:12px;min-height:0;overflow:auto}
.person-report-config-card{display:grid;gap:10px;padding:12px;border:1px solid #e0e6e8;border-radius:11px;background:#fff}
.person-report-config-card h3{margin:0;color:#344d55;font-size:14px;font-weight:650}
.person-report-metadata{display:grid;grid-template-columns:1fr;gap:3px;margin:0}
.person-report-metadata label{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;color:#65777d;font-size:12px}
.person-report-metadata input{width:132px;min-height:30px;padding:4px 7px;border:0;background:transparent;text-align:right;color:#263e46;font-weight:600}
.person-report-state-row{display:flex;align-items:center;justify-content:space-between;color:#65777d;font-size:12px}
.person-report-status{justify-self:end;color:#435a60;font-size:12px;font-weight:600}
.person-report-options{display:grid;grid-template-columns:1fr;gap:8px;margin:0;padding:0;border:0}
.person-report-options legend{display:none}
.person-report-options .person-report-signature-note{display:block;margin:0;padding:8px;border-radius:6px;background:#fff4df;color:#9b650d;font-size:11px;line-height:1.4}
.person-report-options label{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0;color:#52686e;font-size:12px}
.person-report-options input{appearance:none;width:48px;height:26px;margin:0;border:1px solid #9eb7b9;border-radius:14px;background:#eef2f2;cursor:pointer}
.person-report-options input::before{content:"";display:block;width:18px;height:18px;margin:3px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .15s}
.person-report-options input:checked{background:#619fa3;border-color:#619fa3}.person-report-options input:checked::before{transform:translateX(22px)}
.person-report-template-panel{display:grid;gap:9px;padding:10px;border:1px solid #e0e6e8;border-radius:7px;background:#fff}
.person-report-template-select{display:grid;gap:7px;color:#61747a;font-size:12px}
.person-report-template-select select{width:100%;min-height:34px;padding:5px 9px;border:1px solid #d6dfe1;border-radius:7px;background:#fff;color:#43575e;font:inherit;font-size:12px}
.person-report-template-panel>button{min-height:31px;padding:0 9px;border:1px solid #d6e0e2;border-radius:6px;background:#fff;color:#52686e;font:inherit;font-size:12px;cursor:pointer}
.person-report-design-name{margin:0;color:#425b62;font-size:12px;font-weight:600}
.person-report-design-card .form-note{margin:0;font-size:11px;line-height:1.4}
.person-report-notes-card{flex:1;min-height:0}
.person-report-internal-notes-label{display:flex;flex:1;min-height:180px}
.person-report-internal-notes-label textarea{width:100%;height:100%;min-height:180px;resize:vertical;padding:9px;border:1px solid #d7e0e2;border-radius:7px;color:#4b6269;font:inherit;font-size:12px}
.person-report-form>[data-report-error]:empty{display:none}
@media(max-width:850px){#person-profile-view .person-report-form{inset:45px 10px 18px 70px;grid-template-rows:auto auto auto;overflow:auto}.person-report-editor-header{flex-wrap:wrap}.person-report-editor-header>input[name=title]{max-width:none;flex:1 1 100%}.person-report-editor-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(340px,1fr) auto}.person-report-editor-main{min-height:380px}.person-report-settings{overflow:visible}.person-report-config-card{padding:11px}}
.report-template-gallery-dialog{box-sizing:border-box;width:min(920px,calc(100vw - 32px));height:min(640px,calc(100dvh - 32px));max-width:none;max-height:none;padding:0;overflow:hidden;border:1px solid #d5dddd;border-radius:8px;background:#fff;color:#212529;font:14px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;box-shadow:0 12px 40px #19343d33}
.report-template-gallery-dialog::backdrop{background:#20343870}
.report-template-gallery-header{box-sizing:border-box;display:flex;height:48px;align-items:center;justify-content:space-between;padding:9px 14px 9px 12px;border-bottom:1px solid #e7ecec}
.report-template-gallery-header h2{margin:0;color:#212529;font-size:16px;font-weight:500;line-height:24px}
.report-template-gallery-close{display:grid;width:28px;height:28px;place-items:center;border:0;border-radius:4px;background:transparent;color:#647579;font:24px/1 system-ui;cursor:pointer}
.report-template-gallery-close:hover{background:#f0f4f4}
.report-template-gallery-main{box-sizing:border-box;display:flex;height:calc(100% - 107px);min-height:0;gap:14px;padding:12px}
.report-template-gallery-list{box-sizing:border-box;flex:0 0 45%;min-width:0;padding-right:4px;overflow:auto;scrollbar-gutter:stable}
.report-template-gallery-list h3{margin:0 0 8px;color:#5b7378;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.report-template-gallery-item{box-sizing:border-box;display:flex;min-height:60px;align-items:center;gap:10px;margin:0 0 6px;padding:10px 12px;border:1px solid #e5e7eb;border-radius:10px;background:#fff}
.report-template-gallery-item>input{flex:0 0 22px;width:22px;height:22px;margin:0;accent-color:#168f77;cursor:pointer}
.report-template-gallery-row{display:flex;flex:1;min-width:0;flex-direction:column;align-items:flex-start;justify-content:center;padding:0;border:0;background:transparent;color:#1f2937;text-align:left;font:inherit;cursor:pointer}
.report-template-gallery-row strong{overflow:hidden;max-width:100%;font-size:13.5px;font-weight:600;line-height:22px;text-overflow:ellipsis;white-space:nowrap}
.report-template-gallery-row span{display:block;overflow:hidden;color:#5b7378;font-size:12px;line-height:15.6px;text-overflow:ellipsis;white-space:nowrap}
.report-template-gallery-item:has(input:checked){border-color:#84b8b0;background:#f3faf8}
.report-template-gallery-item:has(input:disabled){background:#f7f8f8}
.report-template-gallery-exists{flex:none;padding:5px 7px;border-radius:14px;background:#edf3f2;color:#627b7d;font-size:10px;white-space:nowrap}
.report-template-gallery-preview{box-sizing:border-box;flex:1;min-width:0;padding:14px;overflow:auto;border:1px solid #e5e7eb;border-radius:10px;background:#f5f9f9}
.report-template-gallery-preview-head{display:flex;min-height:21px;align-items:center;gap:8px;margin:0 0 12px;color:#1f2937;font-size:14px}
.report-template-gallery-preview-head>span{display:grid;width:56px;height:21px;place-items:center;color:#699392;font-size:17px}
.report-template-gallery-preview-head strong{overflow:hidden;font-size:14px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}
.report-template-gallery-subject{display:block;margin:0 0 9px;padding:6px 10px;border-radius:8px;background:#f5f9f9;color:#5b7378;font-size:12.5px;line-height:19px}
.report-template-gallery-paper{box-sizing:border-box;min-height:440px;padding:22px;border:1px solid #e6e9ee;border-radius:10px;background:#fff;color:#2b3340}
.report-template-gallery-empty{display:flex;min-height:100%;align-items:center;justify-content:center;padding:0 32px;color:#94a3b8;font-size:13px;text-align:center}
.report-template-gallery-logo{font-size:13.5px;line-height:20.25px}
.report-template-gallery-paper .report-template-gallery-document-title{margin:0 0 10px;color:inherit;font-size:18px;font-weight:500;line-height:21.6px}
.report-template-gallery-paper p{margin:0 0 16px;font-size:13.5px;line-height:20.25px}
.report-template-gallery-paper hr{margin:16px 0;border:0;border-top:1px solid #e6e9ee}
.report-template-gallery-paper h4{margin:14px 0 4px;font-size:15px;font-weight:500;line-height:18px}
.report-template-gallery-paper .report-template-gallery-signature{margin:40px 0 16px;white-space:pre-line}
.report-template-gallery-footer{box-sizing:border-box;display:flex;height:47px;align-items:center;justify-content:space-between;margin:0 12px;padding:14px 0 0;border-top:1px solid #edf0f0}
.report-template-gallery-footer p{margin:0;color:#718187;font-size:12px}
.report-template-gallery-footer .configuration-actions{margin:0}
.report-template-gallery-footer .configuration-actions button{min-width:72px}
.report-template-gallery-footer [role=alert]{position:absolute;bottom:58px;left:24px;margin:0}
@media(max-width:700px){.report-template-gallery-dialog{height:min(760px,calc(100dvh - 20px));width:calc(100vw - 20px)}.report-template-gallery-main{height:calc(100% - 107px);flex-direction:column;gap:10px}.report-template-gallery-list{flex:0 0 44%;padding:0}.report-template-gallery-preview{flex:1;min-height:0}.report-template-gallery-paper{min-height:0}.report-template-gallery-footer{margin:0 12px}.report-template-gallery-footer p{max-width:55%;font-size:10px}}
.person-report-template-load-dialog{position:fixed;inset:0;box-sizing:border-box;display:none;grid-template-rows:48px minmax(0,1fr) 59px;width:min(880px,calc(100vw - 24px));height:min(580px,calc(100vh - 24px));max-width:none;max-height:none;margin:auto;padding:0;overflow:hidden;border:1px solid #dee2e6;border-radius:8px;background:#fff;color:#212529;box-shadow:0 16px 48px #0002;font:14px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.person-report-template-load-dialog[open]{display:grid}
.person-report-template-load-dialog::backdrop{background:#15272c66}
.person-report-template-load-header{display:flex;align-items:center;justify-content:space-between;padding:0 14px 0 12px;border-bottom:1px solid #e5eaeb}
.person-report-template-load-header h2{margin:0;font-size:16px;font-weight:500;line-height:24px}
.person-report-template-load-close{width:28px;height:28px;border:0;background:transparent;color:#6c757d;font:22px/1 system-ui;cursor:pointer}
.person-report-template-load-body{display:grid;grid-template-rows:minmax(0,1fr);gap:0;min-height:0;padding:12px}
.person-report-template-load-columns{display:grid;grid-template-columns:290px minmax(0,1fr);min-height:0;border:1px solid #e5eaeb;border-radius:4px}
.person-report-template-load-picker{display:grid;grid-template-rows:32px minmax(0,1fr);gap:8px;min-height:0;padding:12px;border-right:1px solid #e5eaeb}
.person-report-template-load-picker input{box-sizing:border-box;width:100%;height:32px;padding:0 9px;border:1px solid #ced4da;border-radius:4px;font:inherit;font-size:13px}
.person-report-template-load-list{display:flex;flex-direction:column;gap:2px;overflow:auto}
.person-report-template-load-option{min-height:32px;padding:6px 8px;border:0;border-radius:3px;background:#fff;color:#3e4e52;text-align:left;font:inherit;font-size:13px;cursor:pointer}
.person-report-template-load-option:hover,.person-report-template-load-option[aria-selected=true]{background:#e8f3f3;color:#3b6d6f}
.person-report-template-load-preview-column{display:grid;grid-template-rows:17px minmax(0,1fr) auto;gap:8px;min-width:0;min-height:0;padding:12px 14px}
.person-report-template-load-preview-column h3{margin:0;color:#34484d;font-size:13px;font-weight:500;line-height:17px}
.person-report-template-load-paper{box-sizing:border-box;min-height:0;overflow:auto;padding:20px;border:1px solid #e0e5e6;border-radius:4px;background:#fff;color:#222;font-size:13px;line-height:1.5}
.person-report-template-load-paper h2{margin:0 0 12px;font-size:20px;font-weight:500;line-height:1.3}
.person-report-template-load-paper p{margin:0 0 14px}
.person-report-template-load-paper hr{margin:16px 0;border:0;border-top:1px solid #dfe3e4}
.person-report-template-load-paper h3{margin:14px 0 4px;font-size:15px;font-weight:500}
.person-report-template-load-logo{height:0}
.person-report-template-load-signature{margin-top:40px!important}
.person-report-template-load-note{margin:0;color:#697a7e;font-size:11px;line-height:16px;white-space:nowrap}
.person-report-template-load-footer{display:flex;height:47px;align-self:start;align-items:center;justify-content:flex-end;gap:8px;margin:0 12px;padding:0 12px;border-top:1px solid #e7ecec}
.person-report-template-load-footer>span{margin-right:auto;color:#718187;font-size:12px}
.person-report-template-load-footer button{min-width:72px;min-height:32px;padding:0 10px;border:1px solid #cdd8da;border-radius:5px;background:#fff;color:#52686e;font:inherit;font-size:13px;cursor:pointer}
.person-report-template-load-footer button.save{border-color:#188e78;background:#168f77;color:#fff}
.person-report-template-load-footer button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:700px){.person-report-template-load-dialog{height:min(760px,calc(100vh - 20px));grid-template-rows:48px minmax(0,1fr) 47px}.person-report-template-load-columns{grid-template-columns:minmax(140px,40%) minmax(0,1fr)}.person-report-template-load-picker,.person-report-template-load-preview-column{padding:8px}.person-report-template-load-paper{padding:12px}.person-report-template-load-footer>span{display:none}}
#configuration-view.report-templates-catalog{box-sizing:border-box;display:flex;width:100%;max-width:1200px;height:100%;min-height:0;flex-direction:column;margin-right:auto;margin-left:auto;overflow:hidden}
.configuration-view.report-templates-catalog #configuration-content{display:flex;flex:1;min-height:0;flex-direction:column}
.report-template-catalog-page-header{box-sizing:border-box;display:flex;flex:0 0 80px;align-items:center;gap:14.4px;height:80px;margin:16px 12px;padding:0 18.4px;border:1px solid rgba(95,158,160,.22);border-radius:16px;background:#fff;box-shadow:0 8px 22px rgba(2,6,23,.06);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;color:#212529}
.report-template-catalog-avatar{display:grid;flex:0 0 46px;width:46px;height:46px;place-items:center;border:0;border-radius:50%;background:rgba(95,158,160,.16);color:#3b6d6f;font-size:22px}
.report-template-catalog-avatar svg{display:block;width:22px;height:22px;fill:currentColor}
.report-template-catalog-breadcrumb{display:flex;min-width:0;flex:1;flex-direction:column;justify-content:flex-start;line-height:1.5}
.report-template-catalog-breadcrumb>span{margin-bottom:6.72px;color:#1f2937;font-size:18.4px;font-weight:700;line-height:22.08px}
.report-template-catalog-breadcrumb>strong{color:#5b7378;font-size:11.52px;font-weight:600;letter-spacing:.08em;line-height:17.28px}
.report-template-catalog-top-actions{display:flex;flex:none;align-items:center;gap:8px}
.report-template-catalog-top-actions button,.report-template-catalog-card-actions button{box-sizing:border-box;min-height:32px;padding:4px 8px;border:1px solid #cdd8da;border-radius:5px;background:#fff;color:#3b6d6f;font:14px/22px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;cursor:pointer}
.report-template-catalog-top-actions button,.report-template-catalog-card-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px}
.report-template-catalog-button-icon{display:block;flex:none;width:16px;height:16px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.4}
.report-template-catalog-top-actions button[data-configuration-action=open-report-template-gallery]{width:169.42px}
.report-template-catalog-top-actions button[data-configuration-action=back-templates]{width:80.3px}
.report-template-catalog-card-actions button{width:134.6px}
.report-template-catalog-top-actions button.save,.report-template-catalog-card-actions button.save{border-color:#5f9ea0;background:#5f9ea0;color:#fff}
.report-template-catalog-card{box-sizing:border-box;display:flex;flex:1;min-height:0;flex-direction:column;margin:0 12px 16px;padding:17.6px 18.4px;border:1px solid #5f9ea02e;border-radius:14px;background:#fff;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;color:#212529}
.report-template-catalog-section-head{display:flex;flex:0 0 32px;align-items:center;gap:9.6px;min-width:0;margin:0 0 16px}
.report-template-catalog-section-head h2{margin:0;color:#1f2937;font:700 16px/19.2px "Helvetica Neue",Helvetica,Arial,sans-serif}
.report-template-catalog-count{display:inline-grid;min-width:26px;height:25px;place-items:center;box-sizing:border-box;padding:2.88px 8.8px;border:1px solid #5f9ea046;border-radius:14px;background:#5f9ea029;color:#3b6d6f;font:700 11.52px/17.28px "Helvetica Neue",Helvetica,Arial,sans-serif}
.report-template-catalog-card-actions{display:flex;flex:none;gap:8px;margin-left:auto}
.report-template-catalog-hint{flex:none;margin:0 0 16px;color:#5b7378;font-size:13.6px;line-height:20.4px}
.report-template-catalog-grid{box-sizing:border-box;display:flex;flex:1;min-height:0;overflow:hidden;border:1px solid #d8e0e1;border-radius:1px;background:#fff}
.configuration-template-table{display:flex;width:100%;height:100%;flex-direction:column;border-collapse:collapse;border-spacing:0;font:14px/21px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:#334155}
.configuration-template-table colgroup{display:none}
.configuration-template-table thead{display:block;flex:0 0 48px;height:48px;background:#eef5f5}
.configuration-template-table thead tr,.configuration-template-table tbody tr{display:grid;grid-template-columns:130px minmax(0,1fr);width:100%;table-layout:fixed}
.configuration-template-table thead th{box-sizing:border-box;display:flex;height:46px;align-items:center;padding:0 8px;border:0;background:#eef5f5;color:#5b7378;text-align:left;font-size:14px;font-weight:700;line-height:18px}
.configuration-template-table tbody{display:block;flex:1;min-height:0;overflow:auto}
.configuration-template-table tbody td{box-sizing:border-box;display:flex;min-height:42px;align-items:center;padding:9px 10px;border:0;border-bottom:1px solid #e6eaeb;background:#fff;color:#334155;font-size:14px;line-height:22px}
.configuration-template-table tbody .report-template-empty-row td{grid-column:1/-1;color:#334155}
.configuration-template-table .report-template-actions-cell{gap:6px}
.report-template-row-action{display:grid;width:28px;height:28px;place-items:center;padding:0;border:1px solid #d8e0e1;border-radius:5px;background:#fff;color:#5b7378;font:16px/1 system-ui,sans-serif;cursor:pointer}
.report-template-row-action:hover{background:#f3f8f8}
/* Agenda: el botón de tres líneas controla el panel lateral, como en ByClinics. */
.agenda-area:not(.list-mode):not(.calendar-sidebar-open){padding-left:0!important}
.agenda-area:not(.list-mode):not(.calendar-sidebar-open)>#calendar-group-filter{width:0!important;padding:0!important;border:0!important;opacity:0;overflow:hidden;pointer-events:none}
.agenda-area:not(.list-mode).calendar-sidebar-open{padding-left:202px!important}
.agenda-area:not(.list-mode).calendar-sidebar-open>#calendar-group-filter{width:192px!important;padding:6px 6px 24px!important;border-right:1px solid #e1e7e8!important;opacity:1;pointer-events:auto}
.agenda-area.list-mode:not(.calendar-sidebar-open)>#calendar-group-filter{width:0!important;padding:0!important;border:0!important;opacity:0;overflow:hidden;pointer-events:none}
#list-view.with-calendar-sidebar:not(.calendar-sidebar-open){left:0!important}
@media(min-width:1600px){
  .agenda-area:not(.list-mode):not(.calendar-sidebar-open) .day-headings{flex:1 1 auto;width:auto;padding-right:0}
  .agenda-area:not(.list-mode):not(.calendar-sidebar-open) .grid{flex:1 1 auto;width:auto;min-width:calc(var(--days,5)*130px)}
  .agenda-area:not(.list-mode).calendar-sidebar-open{padding-left:231px!important}
  .agenda-area:not(.list-mode).calendar-sidebar-open>#calendar-group-filter{width:224px!important}
}
@media(max-width:850px){
  .agenda-area:not(.list-mode):not(.calendar-sidebar-open)>#calendar-group-filter{display:none}
  .toolbar.agenda-toolbar{height:45px;min-height:45px;flex:0 0 45px}
  .agenda-area:not(.list-mode){height:calc(100% - 49px);flex:0 0 calc(100% - 49px)}
  .agenda-area:not(.list-mode).calendar-sidebar-open{padding-left:217px!important}
  .agenda-area:not(.list-mode).calendar-sidebar-open>#calendar-group-filter{position:absolute;display:block;top:0;bottom:0;left:0!important;width:211px!important;max-height:none;padding:5px 6px 24px!important;border-right:1px solid #e1e7e8!important;border-bottom:0!important;opacity:1;pointer-events:auto}
  .agenda-area:not(.list-mode) .week-number,.agenda-area:not(.list-mode) .hours{width:60px}
}
@media(max-width:700px){.report-template-catalog-page-header{flex:0 0 126.46875px;height:126.46875px;flex-wrap:wrap;align-content:flex-start;gap:14.4px;margin:16px 12px;padding:16px 18.4px}.report-template-catalog-avatar{flex-basis:46px;width:46px;height:46px}.report-template-catalog-top-actions{flex:0 0 100%;width:100%;gap:8px}.report-template-catalog-top-actions button{padding:4px 8px;font-size:14px}.report-template-catalog-top-actions button[data-configuration-action=open-report-template-gallery]{flex:1 1 auto;width:auto}.report-template-catalog-top-actions button[data-configuration-action=back-templates]{flex:0 0 80.3px;width:80.3px}.report-template-catalog-card{margin:0 12px 16px;padding:17.6px 18.4px}.report-template-catalog-section-head{flex:0 0 66.609375px;height:66.609375px;flex-wrap:wrap;align-content:flex-start;column-gap:9.6px;row-gap:10px}.report-template-catalog-section-head h2{font-size:16px}.report-template-catalog-card-actions{flex:0 0 100%;width:100%;gap:8px;margin-left:0}.report-template-catalog-card-actions button{flex:1 1 0;width:auto;padding:4px 8px;font-size:14px}.report-template-catalog-hint{font-size:13.6px;line-height:20.4px}}

.configuration-view.communications-active{box-sizing:border-box;display:flex;height:100%;min-height:0;flex-direction:column;overflow:auto;padding:0 0 12px}
.configuration-view.communications-active #configuration-content{box-sizing:border-box;display:flex;min-height:100%;flex:1;flex-direction:column;gap:0;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#354a51}
.communications-page-header{box-sizing:border-box;display:flex;flex:none;align-items:center;gap:14px;min-height:94px;margin:16px 12px;padding:16px 18px;border:1px solid #dfe7e8;border-radius:8px;background:#fff}
.communications-avatar{display:grid;flex:none;width:46px;height:46px;place-items:center;border-radius:50%;background:#e9f3f3;color:#147c7f;font-size:25px}
.communications-identity{display:flex;min-width:0;flex:1;flex-direction:column;gap:5px}.communications-identity h1{margin:0;color:#1f2937;font-size:18px;line-height:1.25;font-weight:700}.communications-identity p{margin:0;color:#5b7378;font-size:11px;font-weight:600;letter-spacing:.08em}
.communications-header-actions{display:flex;flex:none;gap:8px}.communications-header-actions button,.communication-template-actions button,.communication-insert-row button{box-sizing:border-box;min-height:32px;padding:4px 10px;border:1px solid #cdd8da;border-radius:5px;background:#fff;color:#3b6d6f;font:14px/22px system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer}.communications-header-actions button.save,.communication-template-actions button.save{border-color:#5f9ea0;background:#5f9ea0;color:#fff}
.communications-catalog-card{box-sizing:border-box;display:flex;flex:1;min-height:400px;flex-direction:column;gap:0;margin:0 12px 16px;padding:17px 18px;border:1px solid #dce5e6;border-radius:8px;background:#fff}
.communications-intro{margin:0 0 8px;color:#526970;font-size:13px;line-height:1.5}.communications-channel-note{margin:0 0 16px;padding:10px 12px;border-left:3px solid #75aeb0;background:#f4f8f8;color:#5b7378;font-size:12px;line-height:1.5}
.communications-table-wrap{width:100%;overflow:auto;border:1px solid #d8e0e1}.communications-table{width:100%;border-collapse:collapse;background:#fff;font-size:13px}.communications-table thead th{height:40px;padding:8px 11px;background:#edf5f5;color:#647a80;font-size:11px;font-weight:700;text-align:left}.communications-table tbody th,.communications-table td{height:42px;padding:7px 11px;border-top:1px solid #e3e9ea;color:#526970;text-align:left;font-weight:400}.communications-table tbody th{width:38%;color:#405961;font-weight:500}.communications-table td:nth-child(2),.communications-table td:nth-child(3){width:15%;text-align:center}.communications-table td:last-child{width:32%;font-size:12px}.communications-edit-button{width:27px;height:27px;border:1px solid #cdd8da;border-radius:4px;background:#fff;color:#4d777b;font-size:16px;line-height:20px;cursor:pointer}.communications-business-button{margin-left:9px;padding:2px 7px;border:1px solid #cdd8da;border-radius:4px;background:#fff;color:#3b6d6f;font:11px system-ui,sans-serif;cursor:pointer}.communication-template-status{min-height:20px;margin:8px 16px;color:#3e777a;font-size:12px}
.communication-template-editor{box-sizing:border-box;display:grid;gap:13px;flex:1;min-height:0;margin:0 12px 16px;padding:18px;border:1px solid #dce5e6;border-radius:8px;background:#fff}
.communication-insert-row{display:flex;align-items:center;gap:9px}.communication-insert-row label{color:#526970;font-size:12px}.communication-insert-row select,.communication-field input,.communication-field select,.communication-field textarea{box-sizing:border-box;width:100%;min-height:34px;padding:7px 9px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:#344b52;font:13px/1.4 system-ui,-apple-system,"Segoe UI",sans-serif}.communication-insert-row select{width:min(320px,50%)}.communication-field{display:grid;gap:6px;color:#526970;font-size:12px}.communication-field textarea{min-height:170px;resize:vertical;white-space:pre-wrap}.communication-body-field textarea{min-height:330px}.communication-demo-note{margin:0;padding:9px 11px;background:#f5f8f8;color:#63777c;font-size:12px;line-height:1.5}.communication-template-actions{display:flex;justify-content:flex-end;gap:8px}.communication-template-actions button{min-width:78px}
@media(max-width:700px){.communications-page-header{min-height:126px;flex-wrap:wrap;align-content:flex-start;gap:12px;margin:16px 12px;padding:16px 18px}.communications-identity{flex:1 1 calc(100% - 60px)}.communications-header-actions{flex:0 0 100%;width:100%}.communications-header-actions button:first-child{flex:1}.communications-catalog-card{min-height:400px;margin:0 12px 16px;padding:14px}.communications-table{min-width:720px}.communication-template-editor{margin:0 12px 16px;padding:14px}.communication-insert-row{flex-wrap:wrap}.communication-insert-row label{flex:0 0 100%}.communication-insert-row select{width:auto;flex:1}.communication-field textarea{min-height:250px}}


/* Agenda adaptable: reserva espacio para los controles de desplazamiento de ByClinics. */
@media(max-width:1366px){
  .agenda-toolbar{position:relative}
  .agenda-toolbar-scroll-control{position:absolute;top:0;z-index:6;display:grid;place-items:center;width:32px;min-width:32px;height:44px!important;padding:0;border:0!important;border-radius:0!important;background:#fff;color:#667b80;cursor:pointer}
  .agenda-toolbar-scroll-control:disabled{color:#c3cecf;cursor:default}
  .agenda-toolbar-scroll-control:focus-visible{outline:2px solid #277c7e;outline-offset:-2px}
  .agenda-toolbar-scroll-control svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
}
@media(max-width:1100px){
  .agenda-toolbar{justify-content:flex-start;overflow-x:auto;overflow-y:hidden;padding-left:32px;padding-right:32px}
  .agenda-toolbar>.tools-left,.agenda-toolbar>.tools-center,.agenda-toolbar>.tools-right{flex:0 0 auto}
  .agenda-toolbar>.tools-left{display:flex;gap:8px;padding-left:12px;padding-right:4px}
}
@media(min-width:1101px) and (max-width:1366px){
  .agenda-toolbar{overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;padding-left:32px;padding-right:32px;scrollbar-width:none}
  .agenda-toolbar::-webkit-scrollbar{display:none}
  .agenda-toolbar>.tools-left,.agenda-toolbar>.tools-center,.agenda-toolbar>.tools-right{flex:0 0 auto}
  .agenda-toolbar>.tools-left{gap:8px;padding-left:12px;padding-right:4px}
  .agenda-toolbar>.tools-center{margin-left:-4px}
  .agenda-toolbar>.tools-right{justify-content:flex-start;flex-wrap:nowrap}
}
@media(max-width:768px){
  #calendar-group-toggle{width:78px;min-width:78px;gap:0;padding:0 8px}
  #calendar-group-toggle .calendar-group-label{width:0;margin:0;font-size:0}
  .agenda-toolbar>.tools-center{gap:0;margin-left:-5px}
}
@media(min-width:769px) and (max-width:1100px){#calendar-group-toggle{width:164px;min-width:164px}.agenda-toolbar>.tools-center{margin-left:-4px}}
@media(max-width:650px){
  #view-agenda,#view-list{padding:0;gap:0}
  #view-agenda{width:35px;min-width:35px}
  #view-list{width:36px;min-width:36px}
  #view-agenda span,#view-list span{display:none}
}
@media(min-width:1367px){.agenda-toolbar-scroll-control{display:none}}
@media(min-width:651px) and (max-width:991px){.top .banner{max-width:calc(100vw - 400px)}}

/* Agenda en móvil: replica las anchuras compactas de la tabla Lista de ByClinics. */
@media(max-width:650px){
  .agenda-area.list-mode>#calendar-group-filter{width:216px}
  #list-view.with-calendar-sidebar{left:216px}
  #list-view.with-calendar-sidebar .appointment-list-table{width:1088px;min-width:1088px}
  #list-view.with-calendar-sidebar .appointment-list-table col:nth-child(1){width:72px!important}
  #list-view.with-calendar-sidebar .appointment-list-table col:nth-child(2){width:148px!important}
  #list-view.with-calendar-sidebar .appointment-list-table col:nth-child(3){width:286px!important}
  #list-view.with-calendar-sidebar .appointment-list-table col:nth-child(4){width:176px!important}
  #list-view.with-calendar-sidebar .appointment-list-table col:nth-child(5){width:104px!important}
  #list-view.with-calendar-sidebar .appointment-list-table col:nth-child(6){width:124px!important}
  #list-view.with-calendar-sidebar .appointment-list-table col:nth-child(7){width:52px!important}
  #list-view.with-calendar-sidebar .appointment-list-table col:nth-child(8){width:126px!important}
}

/* Navegación compacta en tablet y móvil, siguiendo el menú desplegable de ByClinics. */
.top{position:relative}
.top-menu-toggle{display:none}
@media(max-width:850px){
  .top-menu-toggle{position:absolute;z-index:12;top:0;right:16px;display:grid;width:32px;height:35px;place-items:center;padding:0;border:0;background:transparent;color:#fff;cursor:pointer}
  .top-menu-toggle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
  .top .banner{margin-right:42px}
  .workspace.rail-expanded .rail,.workspace:not(.rail-expanded) .rail{position:fixed;top:35px;right:0;bottom:auto;left:auto;z-index:30;display:flex;width:min(240px,calc(100vw - 48px));height:min(477px,calc(100dvh - 35px));max-height:calc(100dvh - 35px);overflow:auto;box-shadow:0 8px 24px #10272b33;transform:translateX(105%);visibility:hidden;transition:transform .18s ease,visibility .18s ease}
  .workspace.rail-mobile-open .rail{visibility:visible;transform:translateX(0)}
  .workspace.rail-mobile-open::before{position:fixed;z-index:20;inset:35px 0 0;content:"";background:#10272b24}
  .workspace.rail-mobile-open .rail button[data-rail-label]{justify-content:flex-start;padding:0 18px}
  .workspace.rail-mobile-open .rail button[data-rail-label]::after{display:block;content:attr(data-rail-label)}
  #calendar-group-filter .calendar-mini{width:198px}
  .agenda-area:not(.list-mode) .week-number,.agenda-area:not(.list-mode) .hours{width:85px}
  .agenda-area:not(.list-mode) .grid-header{padding-right:16px}
  .agenda-area:not(.list-mode) .day-headings,.agenda-area:not(.list-mode) .grid{grid-template-columns:repeat(5,minmax(0,1fr));min-width:0}
}
@media(max-width:650px){
  .top .banner{margin-right:42px}
  .agenda-area:not(.list-mode) .week-number,.agenda-area:not(.list-mode) .hours{width:60px}
  .agenda-area:not(.list-mode) .grid-header{padding-right:16px}
  .agenda-area:not(.list-mode) .scroll-area{box-sizing:border-box;padding-right:3px}
  .agenda-area:not(.list-mode) .day-headings,.agenda-area:not(.list-mode) .grid{grid-template-columns:repeat(5,minmax(0,1fr));min-width:0}
  .agenda-area:not(.list-mode) .day-headings,.agenda-area:not(.list-mode) .grid{transform:translateX(1px)}
  .agenda-area:not(.list-mode) .event.calendar-appointment{width:94.5%!important}
}
@media(min-width:851px) and (max-width:991px){
  .top-menu-toggle{position:absolute;z-index:12;top:0;right:16px;display:grid;width:32px;height:35px;place-items:center;padding:0;border:0;background:transparent;color:#fff;cursor:pointer}
  .top-menu-toggle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
  .top .banner{margin-right:42px}
  .workspace.rail-expanded .rail,.workspace:not(.rail-expanded) .rail{position:fixed;top:35px;right:0;bottom:auto;left:auto;z-index:30;display:flex;width:min(240px,calc(100vw - 48px));height:min(477px,calc(100dvh - 35px));max-height:calc(100dvh - 35px);overflow:auto;box-shadow:0 8px 24px #10272b33;transform:translateX(105%);visibility:hidden;transition:transform .18s ease,visibility .18s ease}
  .workspace.rail-mobile-open .rail{visibility:visible;transform:translateX(0)}
  .workspace.rail-mobile-open::before{position:fixed;z-index:20;inset:35px 0 0;content:"";background:#10272b24}
  .workspace.rail-mobile-open .rail button[data-rail-label]{justify-content:flex-start;padding:0 18px}
  .workspace.rail-mobile-open .rail button[data-rail-label]::after{display:block;content:attr(data-rail-label)}
}

/* Configuración · portada modular inspirada en las tarjetas de administración. */
.configuration-view.configuration-overview{box-sizing:border-box;height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;padding-bottom:24px}
.configuration-view.configuration-overview .configuration-heading{padding:8px 27px 0}
.configuration-view.configuration-overview .configuration-tabs{padding:0 27px}
.configuration-view.configuration-overview .configuration-subheading{margin:0 27px 16px}
.configuration-view.configuration-overview .configuration-module-cards{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;max-width:1664px;margin:0 27px 22px}
.configuration-module-card{position:relative;box-sizing:border-box;display:flex;min-width:0;min-height:0;flex-direction:column;gap:11.2px;padding:16px 17.6px;border:1px solid #d7e5e6;border-radius:14px;background:linear-gradient(135deg,#fff 0%,#f5f9f9 100%);color:#435b62;text-align:left;box-shadow:0 4px 14px #34585b0c;cursor:pointer;font:inherit;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
.configuration-module-card:not(.configuration-module-card-pending):hover{transform:translateY(-1px);border-color:#9ec4c5;box-shadow:0 7px 18px #34585b18}
.configuration-module-card:focus-visible{outline:2px solid #4f9699;outline-offset:2px}
.configuration-module-card-pending{cursor:default}
.configuration-module-card-header{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px;padding-bottom:0;border-bottom:1px solid #dce7e8}
.configuration-module-card-title{display:block;min-width:0;overflow:hidden;padding:4.48px 9.6px;border:1px solid #c4dcde;border-radius:999px;background:#e7f1f2;color:#147080;font-size:11.52px;font-weight:700;line-height:17.28px;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}
.configuration-module-card[aria-label^="Registro de notificaciones."] .configuration-module-card-title{box-sizing:border-box;max-width:198px}
.configuration-module-card-status{display:inline-flex;flex:none;align-items:center;justify-content:center;min-height:25px;padding:3.84px 8.8px;border-radius:999px;background:#e5f4e8;color:#287346;font-size:10.24px;font-weight:700;line-height:15.36px;letter-spacing:.02em;white-space:nowrap}
.configuration-module-card-status.is-connect{background:#e4f1f2;color:#147080}
.configuration-module-card-status.is-inactive{background:#f1f2f2;color:#737c7e}
.configuration-module-card-body{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:16px;flex:1;min-width:0;padding-top:11.2px}
.configuration-module-card-icon{display:grid;width:72px;height:72px;place-items:center;color:#006b54}
.configuration-module-card-icon svg{display:block;width:64px;height:64px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.configuration-module-card-icon.is-web{color:#e9805b}.configuration-module-card-icon.is-api{color:#2168cf}.configuration-module-card-icon.is-client-area{color:#117d84}.configuration-module-card-icon.is-calendar{color:#ec650c}.configuration-module-card-icon.is-whatsapp{color:#159b5a}.configuration-module-card-icon.is-video{color:#41368d}
.configuration-module-card-icon.is-web,.configuration-module-card-icon.is-api,.configuration-module-card-icon.is-client-area,.configuration-module-card-icon.is-calendar,.configuration-module-card-icon.is-whatsapp,.configuration-module-card-icon.is-video{box-sizing:border-box;width:64px;height:64px;margin:4px;border-radius:17px;color:#fff;box-shadow:0 8px 16px #234d542b}
.configuration-module-card-icon.is-layers svg{fill:currentColor;stroke:none}
.configuration-module-card-icon.is-web{background:#e9805b}.configuration-module-card-icon.is-api{background:#2168cf}.configuration-module-card-icon.is-client-area{background:#117d84}.configuration-module-card-icon.is-calendar{background:#ec650c}.configuration-module-card-icon.is-whatsapp{background:#159b5a}.configuration-module-card-icon.is-video{background:#41368d}
.configuration-module-card-icon.is-web svg,.configuration-module-card-icon.is-api svg,.configuration-module-card-icon.is-client-area svg,.configuration-module-card-icon.is-calendar svg,.configuration-module-card-icon.is-whatsapp svg,.configuration-module-card-icon.is-video svg{width:36px;height:36px;stroke-width:1.8}
.configuration-module-card-description{display:block;min-width:0;color:#56717a;font-size:13.6px;line-height:1.3}
.configuration-module-card-badges{position:absolute;top:-8px;right:14px;z-index:1;display:flex;align-items:center;gap:5px;color:#fff}
.configuration-module-card-badge{display:inline-flex;min-height:17px;align-items:center;padding:0 7px;border-radius:10px;background:#168b62;color:#fff;font-size:10px;font-weight:700;line-height:15px;white-space:nowrap}
.configuration-module-card-badge::before{content:'✣';margin-right:3px;font-size:9px}
.configuration-module-card-footer{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px;margin-top:2px;padding-top:9.6px;border-top:1px solid #dce7e8;color:#56717a;font-size:12.16px;line-height:18.24px}
.configuration-module-card-footer>span:last-child{color:#0c6b4e;font-weight:700;white-space:nowrap}
.configuration-module-card-meter{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px 10px;padding-top:9px;color:#56717a;font-size:12px;line-height:18px}
.configuration-module-card-meter strong{color:#17383a;font-size:12px}
.configuration-module-card-meter-track{grid-column:1/-1;display:block;height:6px;border-radius:4px;background:#e6ebeb}
.configuration-view.configuration-overview .configuration-export-card{box-sizing:border-box;width:min(680px,calc(100% - 54px));margin:0 27px;padding:16px;border-radius:9px}
@media(max-width:1500px){.configuration-view.configuration-overview .configuration-module-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1120px){.configuration-view.configuration-overview .configuration-module-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:780px){.configuration-view.configuration-overview .configuration-module-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-right:14px;margin-left:14px}.configuration-view.configuration-overview .configuration-heading{padding-right:14px;padding-left:14px}.configuration-view.configuration-overview .configuration-tabs{padding-right:14px;padding-left:14px}.configuration-view.configuration-overview .configuration-subheading{margin-right:14px;margin-left:14px}.configuration-view.configuration-overview .configuration-export-card{width:calc(100% - 28px);margin-right:14px;margin-left:14px}}
@media(max-width:520px){.configuration-view.configuration-overview .configuration-module-cards{grid-template-columns:minmax(0,1fr)}.configuration-view.configuration-overview .configuration-module-card{min-height:145px}}

/* Configuración · Novedades, con los controles y el estado vacío observados. */
.configuration-view.news-active{box-sizing:border-box;display:flex;width:100%;height:100%;min-height:0;flex-direction:column;overflow:auto;padding:0}
.configuration-view.news-active>.configuration-heading,.configuration-view.news-active>.configuration-tabs{display:none}
.configuration-view.news-active #configuration-content{box-sizing:border-box;display:flex;min-height:100%;flex:1;flex-direction:column}
.configuration-news-page{box-sizing:border-box;width:min(1180px,calc(100% - 16px));margin:0 auto;padding:8px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;color:#212529}
.configuration-news-header{box-sizing:border-box;display:grid;height:113.375px;flex:0 0 auto;grid-template-columns:minmax(0,1fr) 64px;grid-template-rows:40px 1px 32px;column-gap:65.5px;row-gap:8px;padding:11.2px 13.6px 12.2px;border:1px solid rgba(95,158,160,.22);background:rgba(95,158,160,.09)}
.configuration-news-identity{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:11.2px;min-width:0}
.configuration-news-icon{display:flex;width:40px;height:40px;align-items:center;justify-content:center;color:#5f9ea0}
.configuration-news-icon svg{display:block;width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.configuration-news-copy h1{width:max-content;max-width:100%;overflow:hidden;margin:0;color:#1f2937;font-size:16.32px;font-weight:700;line-height:19.584px;text-overflow:ellipsis;white-space:nowrap}
.configuration-news-copy p{overflow:hidden;margin:3px 0 0;color:#5b7378;font-size:13px;line-height:17px;text-overflow:ellipsis;white-space:nowrap}
.configuration-news-back{grid-column:2;grid-row:1;justify-self:end;align-self:center;width:64px;height:28px;padding:5px 6px;border:1px solid #cdd8da;border-radius:4px;background:#fff;color:#3b6d6f;font:inherit;font-size:12px;line-height:16px;cursor:pointer}
.configuration-news-separator{grid-row:2;grid-column:1/-1;border-top:1px solid rgba(95,158,160,.22)}
.configuration-news-toolbar{display:grid;grid-row:3;grid-column:1/-1;grid-template-columns:minmax(0,997.265px) 121.547px;gap:8px;align-items:center;margin:0;padding-left:8px}
.configuration-news-search{box-sizing:border-box;display:grid;height:32px;grid-template-columns:minmax(0,621.266px) 190px 170px;gap:8px;align-items:center;min-width:0}
.configuration-news-search-fields{position:relative;box-sizing:border-box;display:grid;height:32px;grid-template-columns:minmax(0,547.516px) 65.75px;gap:8px;align-items:center;min-width:0}
.configuration-news-search-icon{position:absolute;z-index:1;top:4px;left:8px;display:flex;width:24px;height:24px;align-items:center;justify-content:center;color:#94a3b8;pointer-events:none}
.configuration-news-filter-row{display:contents}
.configuration-news-search-icon svg,.configuration-news-empty-icon svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.configuration-news-input{box-sizing:border-box;width:100%;height:32px;padding:0 10px 0 32px;border:1px solid rgba(2,6,23,.08);border-radius:4px;background:#fff;color:#1f2937;font:13.333px Arial,sans-serif}
.configuration-news-input:focus{outline:0;border-color:#5f9ea0;box-shadow:0 0 0 1px rgba(95,158,160,.15)}
.configuration-news-input::-webkit-search-cancel-button{cursor:pointer}
.configuration-news-search-button{box-sizing:border-box;height:28px;padding:5px 6px;border:1px solid #5f9ea0;border-radius:4px;background:#5f9ea0;color:#fff;font:12px/16px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;cursor:pointer}
.configuration-news-search-button:hover{background:#548f91}
.configuration-news-filter{position:relative;box-sizing:border-box;width:100%;height:32px;min-width:0}
.configuration-news-filter-control{box-sizing:border-box;display:flex;width:calc(100% - 32px);height:30px;margin:1px 0 0 1px;align-items:center;justify-content:space-between;gap:6px;padding:0 8px 0 10px;border:1px solid #dee2e6;border-radius:4px;background:#fff;color:#212529;font:14px/19.6px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;text-align:left;cursor:pointer}
.configuration-news-filter-control:hover,.configuration-news-filter-control[aria-expanded="true"]{border-color:#5f9ea0}
.configuration-news-filter-control>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.configuration-news-filter-arrow{flex:none;color:#718187;font-size:13px;line-height:1}
.configuration-news-filter-list{position:absolute;z-index:50;top:31px;left:0;box-sizing:border-box;width:max(190px,100%);max-height:220px;overflow:auto;padding:4px;border:1px solid #dce2e6;border-radius:4px;background:#fff;box-shadow:0 5px 14px #10272b24}
.configuration-news-filter-list[hidden]{display:none}
.configuration-news-filter-option{display:block;width:100%;min-height:28px;padding:5px 8px;border:0;border-radius:3px;background:#fff;color:#344b52;font:14px/18px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;text-align:left;cursor:pointer}
.configuration-news-filter-option:hover,.configuration-news-filter-option:focus-visible,.configuration-news-filter-option[aria-selected="true"]{outline:0;background:#eef5f5;color:#315f63}
.configuration-news-count{box-sizing:border-box;display:flex;height:31.5px;align-items:center;justify-content:center;gap:5px;color:#212529;font-size:14px;white-space:nowrap}
.configuration-news-count strong{font-weight:600}
.configuration-news-history{box-sizing:border-box;height:164px;flex:0 0 164px;margin-top:16px;padding:18px;background:#f5f9f9}
.configuration-news-empty{box-sizing:border-box;display:flex;width:100%;height:128px;align-items:center;justify-content:center;flex-direction:column;padding:0 12px;color:#5b7378;text-align:center}
.configuration-news-empty-icon{display:flex;width:100%;height:42px;margin:0 0 6px;align-items:center;justify-content:center;color:#94a3b8}
.configuration-news-empty-icon svg{width:28px;height:28px;stroke-width:1.5}
.configuration-news-empty p{margin:0;font-size:16px;line-height:24px}
.configuration-news-filter-list{position:absolute;z-index:50;top:31px;left:0;box-sizing:border-box;width:190px;max-height:220px;overflow:auto;padding:4px;border:1px solid #dce2e6;border-radius:4px;background:#fff;box-shadow:0 5px 14px #10272b24}
.configuration-news-filter.is-type .configuration-news-filter-list{width:190px}
@media(max-width:1150px){.configuration-news-toolbar{grid-template-columns:minmax(0,1fr) 122px}.configuration-news-search{grid-template-columns:minmax(0,1fr) 190px 170px;column-gap:6px}.configuration-news-search-fields{grid-template-columns:minmax(0,1fr) 66px;column-gap:6px}}
@media(max-width:780px){.configuration-news-page{width:100%;padding:6px}.configuration-news-header{height:auto;min-height:113.375px;grid-template-rows:auto 1px auto;padding:11px 10px 12px}.configuration-news-identity{grid-template-columns:32px minmax(0,1fr);gap:8px}.configuration-news-icon{width:32px;height:36px}.configuration-news-icon svg{width:28px;height:28px}.configuration-news-toolbar{grid-template-columns:minmax(0,1fr) 122px;gap:8px;padding-left:0}.configuration-news-search{height:auto;grid-column:1/-1;grid-template-columns:minmax(0,1fr);grid-template-rows:32px 32px;gap:8px}.configuration-news-search-fields{grid-template-columns:minmax(0,1fr) 66px;gap:8px}.configuration-news-filter-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.configuration-news-filter-control{width:100%;margin-left:0}.configuration-news-filter-list{width:190px}.configuration-news-filter.is-type .configuration-news-filter-list{width:190px}.configuration-news-count{grid-column:1/-1;grid-row:2;justify-content:flex-start}.configuration-news-history{margin-top:12px;padding:14px}}
@media(max-width:430px){.configuration-news-copy p{max-width:220px;font-size:12px}.configuration-news-toolbar{grid-template-columns:minmax(0,1fr) 110px}.configuration-news-search-fields{grid-template-columns:minmax(0,1fr) 64px}.configuration-news-filter-control{padding-right:5px;padding-left:7px;font-size:12px}.configuration-news-filter-list{width:max(180px,100%)}.configuration-news-filter.is-type .configuration-news-filter-list{right:0;left:auto}}

/* Agenda en tamaños intermedios: conserva el ancho de panel y de día observado en ByClinics. */
@media(min-width:851px) and (max-width:1599px){
  .agenda-area:not(.list-mode).calendar-sidebar-open{padding-left:231px!important}
  .agenda-area:not(.list-mode).calendar-sidebar-open>#calendar-group-filter{width:224px!important}
  .agenda-area:not(.list-mode) .day-headings,.agenda-area:not(.list-mode) .grid{grid-template-columns:repeat(var(--columns,var(--days,5)),minmax(126px,1fr))}
  .agenda-area:not(.list-mode) .grid{min-width:calc(var(--columns,var(--days,5))*126px)}
  .agenda-area:not(.list-mode) .grid-header{width:calc(100% - 16px);height:102px}
}
@media(min-width:960px) and (max-width:1599px){
  .toolbar.agenda-toolbar{height:44px;min-height:44px}
}
@media(min-width:1101px) and (max-width:1366px){
  .toolbar.agenda-toolbar{height:53px;min-height:53px}
  .agenda-area:not(.list-mode) .grid-header{height:98px}
  .agenda-area:not(.list-mode) .week-number{padding-top:16px}
  .agenda-area:not(.list-mode) .day-heading{padding-top:17px}
  .agenda-area:not(.list-mode) .day-heading strong{margin-top:5px}
  .agenda-area:not(.list-mode) .day-heading small{margin-top:26px}
}
@media(min-width:851px) and (max-width:1599px){
  #agenda-area:not(.list-mode) .event.calendar-appointment[style*="20.17px"]{width:93%!important}
}
.statistics-report-panel{min-width:0}
@media(max-width:900px){.debt-statistics-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.statistics-view{padding:12px}.statistics-report-panel{padding:12px}.debt-statistics-controls{grid-template-columns:minmax(0,1fr);gap:10px}}


/* Cotejo visual de Agenda Lista con ByClinics. */
.appointment-list-table th,#list-view.with-calendar-sidebar .appointment-list-table th{background:#eef5f5;border-bottom-color:#dee2e6;color:#5b7378;font:700 14px/21px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:normal;text-transform:none;padding:0 8px}#list-view.with-calendar-sidebar .appointment-list-table th:nth-child(2),#list-view.with-calendar-sidebar .appointment-list-table th:nth-child(3),#list-view.with-calendar-sidebar .appointment-list-table th:last-child{padding-right:30px}.appointment-list-table tbody tr:nth-child(odd) td{background:#f5fafa;border-bottom-width:0}.appointment-list-table tbody tr:nth-child(even) td{background:#fff;border-bottom:1px solid rgba(2,6,23,.05)}.appointment-list-table tbody tr:hover td{background:#f4fafa}@media(min-width:521px){#list-view.with-calendar-sidebar .appointment-list-table{width:calc(100% - 2px);min-width:calc(100% - 2px)}}

/* Arqueo de caja: distribución cotejada con el diálogo de ByClinics. */
#cash-close-dialog{box-sizing:border-box;width:min(460px,calc(100vw - 28px));height:418px;max-width:none;max-height:min(90vh,calc(100dvh - 28px));padding:0 13px;border:0;border-radius:5px;box-shadow:0 12px 48px #0003;color:#344d55;scrollbar-width:none}
#cash-close-dialog::-webkit-scrollbar{display:none}
#cash-close-dialog .dialog-head{height:48px;margin:1px -13px 12px;padding:0 13px;border-bottom:1px solid #e3e8e9}
#cash-close-dialog .dialog-head h2{font-size:16px;font-weight:600}
#cash-close-dialog .dialog-head>button{width:28px;height:28px;min-width:28px;padding:0;border:0;border-radius:4px;background:transparent;color:#66777b;font-size:20px}
#cash-close-form{display:grid;gap:14px}
.cash-close-breakdown{display:grid;grid-template-rows:26px 26px 26px 44px;margin:0;padding:0;border:0;background:transparent;color:#4d6269}
.cash-close-breakdown-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}
.cash-close-breakdown-row strong{flex:none;color:#344d55;font-size:13px;font-weight:600}
.cash-close-breakdown-expected{font-weight:700}
.cash-close-breakdown-expected strong{font-size:16px}
.cash-close-counted-row{display:grid;grid-template-columns:160px minmax(0,1fr);align-items:center;gap:10px;min-height:56px}
.cash-close-counted-row label{margin:0;transform:translateY(2px)}
#cash-close-form input[name="counted"]{box-sizing:border-box;width:96px;height:30px;min-height:30px;padding:4px 7px;font-size:13px}
#cash-close-form .cash-close-counted-row input[name="counted"]{margin-top:2px}
#cash-close-form>textarea[name="note"]{box-sizing:border-box;width:100%;height:50px;min-height:50px;margin:0;padding:6px 8px;resize:vertical;font-size:13px}
.cash-close-difference{display:flex;align-items:center;width:83px;min-height:32px;margin:0;color:#426c55;font-size:13px;font-weight:600}
.cash-close-other-media{margin:10px 0 0;color:#718187;font-size:12px;line-height:18px}
#cash-close-error:empty{display:none}
#cash-close-form .cash-dialog-actions{justify-content:flex-end;gap:8px;min-height:32px;margin:0}
#cash-close-form .cash-dialog-actions button{min-height:32px;padding:0 10px;border-radius:4px;font:400 13px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
#cash-close-form .cash-dialog-actions button:first-child{width:71px}
#cash-close-form .cash-dialog-actions button:last-child{width:102px}
@media(max-width:500px){#cash-close-dialog{height:auto;max-height:calc(100dvh - 28px);padding:0 13px 12px}.cash-close-counted-row{grid-template-columns:140px minmax(0,1fr)}}

/* Facturación → Gastos: edición de varias líneas con desglose fiscal local. */
.expense-toolbar .billing-search{flex:1 1 280px;max-width:560px}
.expense-toolbar>button:not(.save),.expense-filter-toolbar>button,.expense-view-toggle button{min-height:30px;padding:0 10px;border:1px solid #d8e1e3;border-radius:4px;background:#fff;color:#526970;font:400 13px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.expense-toolbar>button.active-filter{border-color:#62a0a3;background:#eef7f6;color:#34787c}
.expense-view-toggle{display:flex;align-items:center;margin-left:2px}
.expense-view-toggle button{width:34px;padding:0;font-size:16px}
.expense-view-toggle button:first-child{border-radius:4px 0 0 4px}
.expense-view-toggle button:last-child{margin-left:-1px;border-radius:0 4px 4px 0}
.expense-view-toggle button[aria-pressed="true"]{position:relative;border-color:#58989c;background:#eaf4f3;color:#287b80}
.expense-filter-toolbar{display:flex;align-items:center;gap:10px;min-height:48px;padding:7px 10px;border-bottom:1px solid #e4e9eb;background:#fbfcfc}
.expense-filter-toolbar label{display:flex;align-items:center;gap:7px;color:#63777c;font-size:12px}
.expense-filter-toolbar select,.expense-filter-toolbar input{box-sizing:border-box;height:30px;min-height:30px;border:1px solid #d7e0e2;border-radius:4px;background:#fff;color:#40565d;padding:0 8px;font:400 12px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.expense-filter-toolbar select{width:128px}
.expense-filter-toolbar input{width:112px}
.expense-filter-toolbar>button{margin-left:auto}
.expense-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,270px));gap:14px;padding:12px 10px}
.expense-card{box-sizing:border-box;display:flex;flex-direction:column;align-items:stretch;gap:9px;width:100%;min-height:195px;padding:14px 15px;border:1px solid #d7e4e5;border-radius:14px;background:#fbfdfd;color:#43616a;text-align:left;box-shadow:0 4px 10px #243b4210;cursor:pointer;font:400 13px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.expense-card:hover{border-color:#9ac3c4;box-shadow:0 5px 14px #243b421a}
.expense-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;min-height:36px;padding-bottom:9px;border-bottom:1px solid #e4ebec}
.expense-card-head strong{font-size:14px;font-weight:500;line-height:1.35}
.expense-card-head small{flex:none;padding:4px 8px;border-radius:12px;background:#edf5ee;color:#267845;font-size:10px}
.expense-card-head small[data-status="vencido"]{background:#fff0ed;color:#b34c37}
.expense-card-head small[data-status="parcial"]{background:#fff6de;color:#946b00}
.expense-card-reference,.expense-card-dates{color:#698087;font-size:11px;line-height:1.45}
.expense-card-total{margin-top:auto;color:#304e57;font-size:18px;font-weight:600}
.expense-filter-dialog{box-sizing:border-box;width:min(680px,calc(100vw - 28px));max-height:min(80vh,calc(100dvh - 30px));overflow:auto;padding:20px;border:0;border-radius:6px;background:#fff;color:#40565d;box-shadow:0 16px 50px #172b3060}
.expense-filter-dialog[data-kind="category"]{width:min(680px,calc(100vw - 28px));height:629px}
.expense-filter-dialog[data-kind="supplier"]{width:min(1000px,calc(100vw - 28px));height:678px}
.expense-filter-dialog::backdrop{background:#14242770}
.expense-filter-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #e1e9ea}
.expense-filter-dialog-head h2{margin:0;font-size:19px;font-weight:500}
.expense-filter-dialog-head button{width:32px;height:32px;border:0;border-radius:4px;background:transparent;color:#62767b;font-size:22px;cursor:pointer}
.expense-filter-search{display:block;margin:14px 0}
.expense-filter-search input{box-sizing:border-box;width:100%;height:38px;padding:0 11px;border:1px solid #ccd9db;border-radius:4px;font:400 14px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.expense-filter-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:48vh;overflow:auto;border-top:1px solid #e5ebec}
.expense-filter-option{display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:9px;min-height:42px;padding:0 8px;border-bottom:1px solid #e9eeee;color:#4a6168;font-size:13px;cursor:pointer}
.expense-filter-option input{margin:0;accent-color:#56999d}
.expense-filter-option small{color:#839196;font-size:11px}
.expense-filter-empty{grid-column:1/-1;padding:16px;text-align:center;color:#74858a}
.expense-filter-dialog footer{display:flex;justify-content:flex-end;gap:8px;padding-top:14px}
.expense-filter-dialog footer button{min-height:34px;padding:0 13px;border:1px solid #d5e0e1;border-radius:4px;background:#fff;color:#526970;font:400 13px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.expense-filter-dialog footer .save{border:0;background:#619fa3;color:#fff}
.expense-category-manager{box-sizing:border-box;width:min(680px,calc(100vw - 28px));height:629px;max-height:calc(100dvh - 30px);overflow:hidden;padding:20px;border:0;border-radius:6px;background:#fff;color:#40565d;box-shadow:0 16px 50px #172b3060}
.expense-category-manager::backdrop,.expense-category-dialog::backdrop{background:#14242770}
.expense-category-manager .expense-filter-dialog-head{padding-bottom:12px}
.expense-category-manager-toolbar{display:grid;grid-template-columns:auto minmax(180px,1fr);align-items:center;gap:12px;padding:14px 0}
.expense-category-manager-toolbar button{height:34px;padding:0 13px;border:0;border-radius:4px;background:#619fa3;color:#fff;font:400 13px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.expense-category-manager-toolbar label{display:block;margin:0}
.expense-category-manager-toolbar input{box-sizing:border-box;width:100%;height:36px;padding:0 10px;border:1px solid #ccd9db;border-radius:4px;font:400 13px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.expense-category-rows{height:calc(100% - 132px);overflow:auto;border-top:1px solid #e5ebec}
.expense-category-row{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:43px;padding:0 8px;border-bottom:1px solid #e9eeee}
.expense-category-details{display:flex;align-items:center;gap:12px;min-width:0;color:#496168;font-size:13px}
.expense-category-details strong{font-weight:500}
.expense-category-details span,.expense-category-details small{color:#839196;font-size:11px;white-space:nowrap}
.expense-category-row[data-active="false"] .expense-category-details strong{text-decoration:line-through;color:#89979a}
.expense-category-actions{display:flex;gap:6px;flex:none}
.expense-category-actions button,.expense-category-manager footer button{height:30px;padding:0 10px;border:1px solid #d5e0e1;border-radius:4px;background:#fff;color:#526970;font:400 12px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.expense-category-actions button:disabled{opacity:.45;cursor:not-allowed}
.expense-category-manager footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;color:#7e8d91;font-size:12px}
.expense-category-empty{padding:18px;text-align:center;color:#74858a;font-size:13px}
.expense-category-dialog{box-sizing:border-box;width:min(520px,calc(100vw - 28px));height:437px;max-height:calc(100dvh - 28px);overflow:auto;padding:14px;border:0;border-radius:5px;background:#fff;color:#344d55;box-shadow:0 12px 48px #0003}
.expense-category-dialog form{display:grid;gap:5px}
.expense-category-dialog .dialog-head{display:flex;align-items:center;justify-content:space-between;height:38px;margin:-2px 0 4px}
.expense-category-dialog .dialog-head h2{margin:0;font-size:17px;font-weight:600}
.expense-category-dialog .dialog-head button{width:28px;height:28px;border:0;background:transparent;color:#66777b;font-size:20px}
.expense-category-dialog label:not(.expense-category-check){display:grid;gap:5px;margin:3px 4px;color:#536970;font-size:12px}
.expense-category-dialog input:not([type=checkbox]),.expense-category-dialog textarea{box-sizing:border-box;width:100%;min-height:32px;padding:5px 8px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:13px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.expense-category-dialog textarea{min-height:48px;resize:vertical}
.expense-category-number-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.expense-category-check{display:flex;align-items:center;gap:8px;margin:3px 4px;color:#536970;font-size:12px}
.expense-category-check input{accent-color:#619fa3}
.expense-category-dialog .error{min-height:1em;margin:0 4px;color:#b33333;font-size:12px}
.expense-category-dialog .cash-dialog-actions{justify-content:flex-end;gap:8px;margin:0 4px}
.expense-category-dialog .cash-dialog-actions button{min-height:30px;padding:0 10px;border-radius:3px;font:400 12px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.expense-supplier-manager{box-sizing:border-box;width:min(1000px,calc(100vw - 28px));height:678px;max-height:calc(100dvh - 30px);overflow:hidden;padding:20px;border:0;border-radius:6px;background:#fff;color:#40565d;box-shadow:0 16px 50px #172b3060}
.expense-supplier-manager::backdrop{background:#14242770}
.expense-supplier-manager-toolbar{display:grid;grid-template-columns:auto minmax(180px,1fr) 150px;align-items:center;gap:12px;padding:14px 0}
.expense-supplier-manager-toolbar>button{height:34px;padding:0 13px;border:0;border-radius:4px;background:#619fa3;color:#fff;font:400 13px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.expense-supplier-manager-toolbar label{display:block;margin:0}
.expense-supplier-manager-toolbar input,.expense-supplier-manager-toolbar select{box-sizing:border-box;width:100%;height:36px;padding:0 10px;border:1px solid #ccd9db;border-radius:4px;background:#fff;color:#40565d;font:400 13px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.expense-supplier-table-wrap{height:calc(100% - 132px);overflow:auto;border-top:1px solid #e5ebec}
.expense-supplier-table{box-sizing:border-box;width:100%;min-width:760px;border-collapse:collapse;color:#4a6168;font-size:13px}
.expense-supplier-table th,.expense-supplier-table td{height:42px;padding:0 9px;border-bottom:1px solid #e9eeee;text-align:left;white-space:nowrap}
.expense-supplier-table th{position:sticky;top:0;background:#f5f8f8;color:#657b80;font-size:11px;font-weight:600;z-index:1}
.expense-supplier-table td:last-child{width:150px;text-align:right}
.expense-supplier-actions{display:flex;justify-content:flex-end;gap:6px}
.expense-supplier-actions button,.expense-supplier-manager footer button{height:30px;padding:0 10px;border:1px solid #d5e0e1;border-radius:4px;background:#fff;color:#526970;font:400 12px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.expense-supplier-actions button:disabled{opacity:.45;cursor:not-allowed}
.expense-supplier-active{color:#25814c}
.expense-supplier-inactive{color:#8b9294}
.expense-supplier-empty{padding:22px;text-align:center;color:#74858a;font-size:13px}
.expense-supplier-manager footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;color:#7e8d91;font-size:12px}
@media(max-width:680px){.expense-supplier-manager{height:min(678px,calc(100dvh - 30px))}.expense-supplier-manager-toolbar{grid-template-columns:minmax(0,1fr) 120px}.expense-supplier-manager-toolbar>button{grid-column:1/-1;justify-self:start}.expense-supplier-manager-toolbar label:nth-child(2){grid-column:1}.expense-supplier-manager-toolbar label:nth-child(3){grid-column:2}}
.expense-table{box-sizing:border-box;width:100%;min-width:1300px;margin:0;border-collapse:collapse;table-layout:fixed;color:#334155;font:400 14px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.expense-table th,.expense-table td{box-sizing:border-box;height:38px;max-height:38px;padding:0 8px;border:0;border-bottom:1px solid rgba(2,6,23,.05);text-align:left;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.expense-table th{background:#eef5f5;color:#5b7378;font-size:14px;font-weight:700;text-transform:uppercase}
.expense-table td{background:#f5fafa;color:#334155;font-size:14px}
.expense-table .expense-actions-cell{padding:0 8px}
.expense-row-actions{display:flex;align-items:center;gap:4px;height:38px}
.expense-row-action{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;padding:0;border:0;border-radius:4px;cursor:pointer}
.expense-row-action svg{width:16px;height:16px;fill:currentColor}
.expense-edit-action{background:#e3f2fd;color:#1565c0}
.expense-delete-action{background:#fdecea;color:#c62828}
.expense-edit-action:hover{background:#d5eafb}
.expense-delete-action:hover{background:#f9d8d4}
.expense-table-row:hover td{background:#f0f7f7}
@media(max-width:820px){.expense-table th:nth-child(3),.expense-table td:nth-child(3),.expense-table th:nth-child(5),.expense-table td:nth-child(5),.expense-table th:nth-child(6),.expense-table td:nth-child(6){display:table-cell}}
@media(max-width:720px){.expense-filter-toolbar{align-items:stretch;flex-wrap:wrap}.expense-filter-toolbar label{flex:1 1 145px;justify-content:space-between}.expense-filter-toolbar>button{margin-left:0}.expense-cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr))}}
@media(max-width:500px){.expense-filter-options{grid-template-columns:1fr}.expense-toolbar .billing-search{max-width:none}.expense-toolbar .products-count{margin-left:0}.expense-card{max-width:none}}

/* Facturación → Gastos: distribución medida frente al listado de ByClinics. */
#expense-list-view>.expense-toolbar{box-sizing:border-box;min-height:43px;height:43px;margin:18px 16px 0 16px;padding:0 10px;gap:9px;flex-wrap:nowrap;border:0}
#expense-list-view>.expense-toolbar>#new-expense{box-sizing:border-box;flex:0 0 83px;width:83px;height:32px;min-height:32px;padding:0 8px;border-radius:4px;font:500 13px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;white-space:nowrap}
#expense-list-view>.expense-toolbar>.billing-search{box-sizing:border-box;display:flex;flex:0 0 369px;width:369px;max-width:369px;height:32px;margin:0;gap:9px}
#expense-list-view>.expense-toolbar>.billing-search input{box-sizing:border-box;flex:0 0 278px;width:278px;min-width:0;height:30px;padding:0 9px;border:1px solid #d7e0e2;border-radius:4px;background:#fff;color:#40565d;font:400 12px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
#expense-list-view>.expense-toolbar>.billing-search button{box-sizing:border-box;flex:0 0 82px;width:82px;height:32px;min-height:32px;padding:0;border-radius:4px;font:400 13px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
#expense-list-view>.expense-toolbar>#expense-category-filter{flex:0 0 108px;width:108px;margin-left:auto}
#expense-list-view>.expense-toolbar>#expense-supplier-filter{flex:0 0 119px;width:119px}
#expense-list-view>.expense-toolbar>#expense-category-filter,#expense-list-view>.expense-toolbar>#expense-supplier-filter{height:32px;min-height:32px}
#expense-list-view>.expense-toolbar>.expense-view-toggle{flex:0 0 68px;width:68px;height:30px;margin-left:0}
#expense-list-view>.expense-filter-toolbar{box-sizing:border-box;min-height:48px;height:48px;margin:2px 13px 0 16px;padding:0 10px;gap:40.5px;border:0;background:transparent}
#expense-list-view>.expense-filter-toolbar>.expense-filter-label{box-sizing:border-box;display:flex;flex:0 0 47.2px;align-items:center;gap:4px;margin-right:-31.5px;color:#6d7d80;font:400 12px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;white-space:nowrap}
#expense-list-view>.expense-filter-toolbar>.expense-filter-label svg{display:block;width:12px;height:12px;flex:none;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}
#expense-list-view>.expense-filter-toolbar select,#expense-list-view>.expense-filter-toolbar input{position:relative;top:1px;height:30px;min-height:30px;border-radius:4px;font:400 12px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
#expense-list-view>.expense-filter-toolbar input{width:107px}
#expense-list-view>.expense-table-panel{box-sizing:border-box;display:flex;height:663px;margin:8px 13px 0;padding:3px 4px;flex-direction:column;overflow:hidden;border:1px solid #dce6e7;background:#fff}
#expense-list-view>.expense-table-panel[hidden]{display:none!important}
#expense-list-view #expense-table-wrap{box-sizing:border-box;flex:0 0 631px;width:100%;height:631px;overflow:auto;background:#f5fafa}
#expense-list-view #expense-table{box-sizing:border-box;width:100%;min-width:100%;margin:0;border-collapse:collapse;table-layout:fixed;color:#334155;font:400 14px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
#expense-list-view #expense-table tbody{position:relative;top:3px}
#expense-list-view #expense-table th{box-sizing:border-box;height:38px;padding:0 8px;border-bottom:1px solid #d8e4e5;background:#eef5f5;color:#5b7378;text-align:left;font:700 14px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;white-space:nowrap}
#expense-list-view #expense-table td{box-sizing:border-box;height:37px;padding:0 8px;border-bottom:1px solid #e3ebeb;background:#f5fafa;color:#334155;font:400 14px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#expense-list-view #expense-table th:first-child,#expense-list-view #expense-table td:first-child{padding:0 5px;text-align:center}
#expense-list-view #expense-table .expense-actions-cell{overflow:visible}
#expense-list-view .expense-row-actions{display:flex;height:37px;justify-content:center;gap:4px}
#expense-list-view .expense-row-action{box-sizing:border-box;display:grid;width:30px;height:30px;min-height:30px;padding:0;place-items:center;border:0;border-radius:4px;cursor:pointer}
#expense-list-view .expense-row-action svg{width:16px;height:16px;fill:currentColor}
#expense-list-view .expense-edit-action{background:#e3f2fd;color:#1565c0}
#expense-list-view .expense-delete-action{background:#fdecea;color:#c62828}
#expense-list-view #expense-grid-footer{box-sizing:border-box;display:flex;flex:0 0 24px;height:24px;align-items:center;padding:0 8px;color:#526970;font:400 12px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
#expense-list-view>.billing-summary,#expense-list-view>.form-note{display:none}
@media(max-width:700px){#expense-list-view>.expense-toolbar{height:auto;min-height:43px;margin:12px 8px 0;flex-wrap:wrap;padding:6px 8px}#expense-list-view>.expense-toolbar>.billing-search{order:2;flex:1 1 100%;width:100%;max-width:none}#expense-list-view>.expense-toolbar>.billing-search input{flex:1 1 auto;width:auto}#expense-list-view>.expense-toolbar>#expense-category-filter{margin-left:0}#expense-list-view>.expense-filter-toolbar{height:auto;min-height:48px;margin:2px 8px 0;flex-wrap:wrap;padding:8px}#expense-list-view>.expense-table-panel{height:520px;margin:8px 8px 0}#expense-list-view #expense-table-wrap{flex-basis:488px;height:488px}#expense-list-view #expense-table{min-width:1000px}}
.expense-lines-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 8px}
.expense-lines-heading p{margin:0;color:#718187;font-size:12px}
.expense-lines-heading button{min-height:32px;padding:0 11px;border:0;border-radius:4px;background:#619fa3;color:#fff}
.expense-lines-table-wrap{border:1px solid #dfe7e8;border-radius:4px}
.expense-lines-table-wrap .invoice-table{width:100%;min-width:880px;margin:0;border-collapse:collapse}
.expense-lines-table-wrap .invoice-table th,.expense-lines-table-wrap .invoice-table td{padding:8px 9px;border-bottom:1px solid #e7edef;text-align:left;white-space:nowrap}
.expense-lines-table-wrap .invoice-table th{background:#f2f7f6;color:#63777c;font-size:10px}
.expense-lines-table-wrap .invoice-table td:nth-child(1){white-space:normal;min-width:160px}
.expense-lines-table-wrap .invoice-table td:last-child{display:flex;gap:4px}
.expense-lines-table-wrap .invoice-table td:last-child button{min-height:28px;padding:0 7px;border:1px solid #d6e1e2;border-radius:4px;background:#fff;color:#49656b;font-size:11px}
.expense-lines-table-wrap[hidden],#expense-lines-empty[hidden]{display:none}
#expense-lines-empty{margin:8px 0;padding:12px;text-align:center;color:#718187;font-size:12px}
.expense-lines-summary{display:flex;justify-content:flex-end;gap:22px;flex-wrap:wrap;margin:10px 0;padding:10px 12px;border-top:1px solid #e2e8e9;color:#61767c;font-size:12px}
.expense-lines-summary strong{margin-left:5px;color:#344d55}
.expense-line-dialog{box-sizing:border-box;width:min(520px,calc(100vw - 28px));height:520px;max-height:min(90vh,calc(100dvh - 28px));overflow:auto;padding:12px;border:0;border-radius:5px;box-shadow:0 12px 48px #0003;color:#344d55}
.expense-line-dialog::backdrop{background:#1a292c66}
.expense-line-dialog form{display:grid;gap:9px}
.expense-line-dialog .dialog-head{display:flex;align-items:center;justify-content:space-between;height:48px;margin:-12px -12px 16px;padding:0 12px}
.expense-line-dialog .dialog-head h2{margin:0;font-size:16px;font-weight:600}
.expense-line-dialog .dialog-head button{width:28px;height:28px;padding:0;border:0;background:transparent;color:#66777b;font-size:20px}
.expense-line-dialog label{display:grid;gap:5px;margin:4px 4px;color:#536970;font-size:12px}
.expense-line-dialog input:not([type=checkbox]),.expense-line-dialog select{box-sizing:border-box;width:100%;height:32px;min-height:32px;padding:5px 8px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:13px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.expense-line-number-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.expense-line-dialog .expense-line-checkbox{display:flex;align-items:center;gap:8px;margin:12px 4px 4px}
.expense-line-dialog .expense-line-checkbox input{accent-color:#619fa3}
.expense-line-preview{display:grid;gap:7px;margin:8px 4px;padding:12px 14px;border-radius:4px;background:#f5f8f8;color:#526970;font-size:12px}
.expense-line-preview span{display:flex;justify-content:space-between}
.expense-line-preview span:last-child{padding-top:6px;border-top:1px solid #dce5e6;font-size:14px}
.expense-line-preview strong{color:#344d55}
.expense-line-dialog .error{min-height:1em;margin:0 4px;color:#b33333;font-size:12px}
.expense-line-dialog .cash-dialog-actions{margin:0 4px;gap:8px}
.expense-line-dialog .cash-dialog-actions button{min-height:28px;padding:0 10px;border-radius:3px;font-size:12px}
@media(max-width:560px){.expense-lines-heading{align-items:flex-start;flex-direction:column}.expense-line-number-grid{grid-template-columns:1fr}.expense-line-dialog{height:auto;max-height:calc(100dvh - 28px)}}
.expense-payments-table-wrap{max-width:100%;margin:8px 0;overflow:auto}.expense-payments-table-wrap table{min-width:940px}.expense-payment-dialog{box-sizing:border-box;width:min(520px,calc(100vw - 28px));height:427px;max-height:min(90vh,calc(100dvh - 28px));overflow:auto;padding:12px;border:0;border-radius:5px;box-shadow:0 12px 48px #0003;color:#344d55}.expense-payment-dialog::backdrop{background:#1a292c66}.expense-payment-dialog form{box-sizing:border-box;width:100%;display:grid;gap:6px}.expense-payment-dialog .dialog-head{display:flex;align-items:center;justify-content:space-between;height:36px;margin:-2px 0 2px}.expense-payment-dialog .dialog-head h2{margin:0;font-size:16px;font-weight:600}.expense-payment-dialog .dialog-head button{width:28px;height:28px;padding:0;border:0;background:transparent;color:#66777b;font-size:20px}.expense-payment-dialog label{display:grid;gap:5px;margin:4px;color:#536970;font-size:12px}.expense-payment-dialog input:not([type=checkbox]),.expense-payment-dialog select,.expense-payment-dialog textarea{box-sizing:border-box;width:100%;min-height:32px;height:32px;padding:5px 8px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:13px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}.expense-payment-dialog textarea{height:auto;min-height:48px;resize:vertical}.expense-payment-dialog .form-note{margin:0 4px}.expense-payment-dialog .error{min-height:1em;margin:0 4px;color:#66777b;font-size:12px}.expense-payment-dialog .error:not(:empty){color:#b33333}.expense-payment-dialog .cash-dialog-actions{justify-content:flex-end;gap:8px;margin:0 4px}.expense-payment-dialog .cash-dialog-actions button{min-height:32px;padding:0 10px;border-radius:4px;font:400 13px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}@media(max-width:560px){.expense-payment-dialog{height:auto;max-height:calc(100dvh - 28px)}.expense-payments-table-wrap table{min-width:760px}}

/* Facturación → Gastos: resumen y adjuntos locales del registro guardado. */
.expense-editor-columns{display:grid;grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:14px}
.expense-editor-main{min-width:0}
.expense-editor-aside{display:grid;min-width:0;gap:14px}
.expense-editor-aside[hidden]{display:none}
#expense-editor.invoice-editor{padding:4px 0 30px 113px}
#expense-editor .invoice-editor-head{height:72px;padding:13px 20px 13px 23px;overflow:hidden}
#expense-editor .expense-header-metadata{display:grid;grid-template-columns:131px 176px 62px 63px 78px;gap:31px;align-items:center;min-width:0;transform:translateY(-2px)}
#expense-editor .expense-header-metadata>div{display:grid;min-width:0;gap:2px;color:#526970;font-size:13px;line-height:16px}
#expense-editor .expense-header-metadata strong{overflow:hidden;color:#344d55;font-size:16px;font-weight:500;line-height:19px;text-overflow:ellipsis;white-space:nowrap}
#expense-editor .expense-header-actions{display:flex;flex:none;align-items:center;gap:8px}
#expense-editor .expense-header-actions button{box-sizing:border-box;height:33px;min-height:32px;padding:0 8px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fafb;color:#43575e;font:400 13px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;white-space:nowrap}
#expense-editor .expense-header-actions #reconcile-expense{width:86px}
#expense-editor .expense-header-actions #delete-expense-record{width:91px}
#expense-editor .expense-header-actions #back-expenses{width:80px}
#expense-editor .expense-header-actions button.save{width:92px;border:0;background:#619fa3;color:#fff}
#expense-editor .expense-header-actions button:disabled{opacity:.55;cursor:default}
@media(max-width:1200px){#expense-editor .invoice-editor-head{box-sizing:border-box;height:auto;min-height:72px;align-items:flex-start;flex-wrap:wrap;row-gap:12px;overflow:visible}#expense-editor .expense-header-metadata{flex:1 1 100%;grid-template-columns:minmax(0,1.3fr) minmax(0,1.6fr) repeat(3,minmax(0,.8fr));gap:12px;transform:none}#expense-editor .expense-header-actions{width:100%;justify-content:flex-end}}
#expense-editor .expense-editor-columns{margin-top:13px}
.expense-editor-main{display:grid;align-content:start;gap:14px}
.billing-view:has(#expense-editor:not([hidden])){padding-right:8px}
.billing-view:has(#expense-editor:not([hidden]))::-webkit-scrollbar{width:8px}
.expense-data-card,.expense-detail-card,.expense-payment-card{box-sizing:border-box;min-width:0;padding:14px 18px;border:1px solid #dce6e7;border-radius:5px;background:#fff;color:#465d63}
.expense-data-card{padding:16px 17px 17px 21px}
#expense-form .expense-data-card>h3{height:16px;margin:0 0 12px!important;padding:0!important;border:0!important;color:#526970;font-size:13px;line-height:16px;font-weight:600;letter-spacing:0}
.expense-post-create{display:grid;gap:13px;padding:0;border:0;background:transparent;color:inherit}
.expense-detail-card{min-height:138px;padding:16px 17px 14px 18px}
.expense-payment-card{min-height:94px;padding:16px 17px 16px 18px}
.expense-section-heading{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;height:28px;margin-bottom:12px;border-bottom:1px solid #e5ebec}
.expense-section-heading h3{flex:1;margin:0!important;padding:0!important;border:0!important;color:#526970!important;font-size:13px!important;font-weight:600;letter-spacing:0!important}
.expense-section-heading button{height:28px;min-height:28px;padding:0 9px;border:0;border-radius:4px;background:#619fa3;color:#fff;font:400 12px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
#add-expense-line{width:94px}#add-expense-payment{width:96px}
.expense-lines-table-wrap .invoice-table th{padding:6.25px 9px}
.expense-lines-table-wrap .invoice-table td{padding:4.75px 9px}
.expense-payment-card #expense-payments-empty{max-width:none;height:18px;margin:0;padding:0;display:flex;align-items:center;text-align:left;color:#718187;font-size:12px}
.expense-form-grid{max-width:none;grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));gap:12px}
#expense-form .expense-data-card .expense-form-grid label{box-sizing:border-box;min-width:0;margin:0;gap:9px;color:#536970;font-size:13px}
#expense-form .expense-data-card .expense-form-grid input,#expense-form .expense-data-card .expense-form-grid select{box-sizing:border-box;width:100%;height:32px;min-height:32px;padding:5px 8px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:inherit;font:inherit}
#expense-form .expense-data-card .expense-form-grid .expense-observations-field{grid-column:1/-1;margin-top:4px;gap:6px}
#expense-form .expense-data-card .expense-form-grid .expense-observations-field textarea{box-sizing:border-box;width:calc(100% - 2px);height:50px;min-height:50px;margin-left:1px;padding:6px 8px}
#expense-form .expense-data-card .expense-received-field{width:calc(100% + 6.5px)}
#expense-form .expense-data-card .expense-due-field{grid-column:2/4;width:calc(100% - 5.5px);margin-left:5.5px!important}
.expense-save-first{margin:0;padding:14px 16px;border:1px solid #dce6e7;border-radius:5px;background:#f8fbfb;color:#61767c;font-size:13px}
.expense-summary-card,.expense-attachments-card{box-sizing:border-box;min-width:0;padding:18px;border:1px solid #dce6e7;border-radius:5px;background:#fff;color:#465d63}
#expense-form .expense-summary-card{padding:16px 17px 16px 21px}
#expense-form .expense-summary-card h3{height:16px;margin:0 0 5px!important;padding:0!important;border:0!important;color:#526970;font-size:12px;line-height:16px;letter-spacing:.025em}
#expense-form .expense-summary-card>div{box-sizing:border-box;height:24px;min-height:24px;margin:4px 0 0!important}
#expense-form .expense-summary-card>div:nth-of-type(1){margin-top:0!important}
#expense-form .expense-summary-card>div.expense-summary-total{height:36px;min-height:36px;margin-top:10px!important}
#expense-form .expense-summary-card>div:nth-of-type(4){margin-top:5px!important}
#expense-form .expense-summary-card>div.expense-summary-status{height:33px;min-height:33px;margin-top:10px!important}
#expense-form .expense-attachments-card{padding:16px 17px 16px 18px}
#expense-form .expense-attachments-card h3{height:26px;margin:0 0 12px!important;padding:0!important;border:0!important;font-size:13px;line-height:16px;letter-spacing:0}
.expense-attachment-empty{font-size:13px;line-height:1.5}
.expense-attachment-list:empty{display:none;margin:0}
.expense-attachment-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.expense-attachment-status[data-kind="error"]{position:static;width:auto;height:auto;overflow:visible;clip-path:none;white-space:normal}
.expense-summary-card h3,.expense-attachments-card h3{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 12px;padding:0 0 12px;border-bottom:1px solid #e5ebec;color:#526970;font-size:12px;font-weight:700;letter-spacing:.025em}
.expense-summary-card>div{display:flex;min-height:28px;align-items:center;justify-content:space-between;gap:10px;color:#526970;font-size:13px}
.expense-summary-card>div strong{color:#344d55;font-weight:500;text-align:right}
.expense-summary-card .expense-summary-total{min-height:37px;margin:2px 0;border-bottom:1px solid #edf0f0;font-size:14px}
.expense-summary-card .expense-summary-total strong{font-size:16px;font-weight:700}
.expense-summary-card .expense-summary-status{margin-top:2px}
.expense-summary-status strong{padding:4px 9px;border-radius:12px;background:#fff5e8;color:#9a5b16;font-size:11px}
.expense-summary-status strong[data-status="parcial"]{background:#e8f2fb;color:#27618b}
.expense-summary-status strong[data-status="pagado"]{background:#e8f4e9;color:#287346}
.expense-attachments-card[hidden]{display:none}
.expense-attachments-card h3{align-items:flex-start;color:#526970;font-size:13px;letter-spacing:0}
.expense-attachments-card h3 small{color:#718187;font-size:11px;font-weight:400;line-height:1.4;text-align:right}
.expense-attachment-empty{margin:0 0 12px;color:#718187;font-size:12px;line-height:1.5}
.expense-attachment-list{display:grid;gap:8px;margin-bottom:12px}
.expense-attachment-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px;border:1px solid #e1e9e9;border-radius:4px;background:#fbfdfd}
.expense-attachment-details{display:grid;min-width:0;gap:3px}
.expense-attachment-details strong{overflow:hidden;color:#405961;font-size:12px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}
.expense-attachment-details span{color:#7b898d;font-size:10px}
.expense-attachment-actions{display:flex;gap:4px}
.expense-attachment-actions button{min-height:28px;padding:0 7px;border:1px solid #d6e1e2;border-radius:4px;background:#fff;color:#49656b;font-size:11px;cursor:pointer}
.expense-attachment-type{display:grid;gap:5px;margin:0 0 9px;color:#536970;font-size:11px}
.expense-attachment-type select{box-sizing:border-box;width:100%;height:32px;padding:4px 8px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:#40565d;font:12px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.expense-attachment-drop{position:relative;display:grid;min-height:58px;place-content:center;gap:3px;border:1px dashed #b7cdcf;border-radius:4px;background:#f8fbfb;color:#55787d;text-align:center;cursor:pointer}
.expense-attachment-drop>span{font-size:19px;line-height:20px}
.expense-attachment-drop strong{font-size:11px;font-weight:500}
.expense-attachment-drop.is-dragging{border-color:#237c80;background:#eaf5f5}
.expense-attachment-drop input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.expense-attachment-status{margin:8px 0 0;color:#718187;font-size:10px;line-height:1.4}
.expense-attachment-status[data-kind="success"]{color:#287346}
.expense-attachment-status[data-kind="error"]{color:#b33333}
.expense-attachment-preview-dialog{box-sizing:border-box;width:min(900px,calc(100vw - 28px));max-width:calc(100vw - 28px);max-height:calc(100dvh - 28px);overflow:hidden;padding:0;border:1px solid #dce3e4;border-radius:4px;background:#fff;color:#344d55;box-shadow:0 14px 48px #102a3340}
.expense-attachment-preview-dialog::backdrop{background:#152a3166}
.expense-attachment-preview-dialog>header{box-sizing:border-box;display:flex;height:48px;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px 8px 16px;border-bottom:1px solid #e7ecec}
.expense-attachment-preview-dialog>header h2{min-width:0;overflow:hidden;margin:0;color:#405961;font-size:14px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}
.expense-attachment-preview-dialog>header button{width:28px;height:28px;padding:0;border:0;background:transparent;color:#66777b;font-size:21px;cursor:pointer}
.expense-attachment-preview-media{box-sizing:border-box;display:grid;min-height:48px;max-height:calc(100dvh - 180px);place-items:center;overflow:auto;padding:12px;background:#fff}
.expense-attachment-preview-media img{display:block;max-width:100%;max-height:calc(100dvh - 210px);object-fit:contain}
.expense-attachment-preview-unavailable{box-sizing:border-box;max-width:560px;margin:18px auto;padding:14px 16px;border:1px solid #e7dfc4;border-radius:4px;background:#fffaf0;color:#6d5c30;font-size:13px;line-height:1.5;text-align:center}
.expense-attachment-preview-pdf{display:block;width:100%;height:min(68vh,680px);border:0;background:#f3f5f5}
.expense-attachment-preview-footer{box-sizing:border-box;display:flex;min-height:50px;align-items:center;justify-content:space-between;gap:14px;padding:8px 14px;border-top:1px solid #e7ecec;color:#718187;font-size:11px}
.expense-attachment-preview-footer>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.expense-attachment-preview-footer>div{display:flex;flex:0 0 auto;gap:8px}
.expense-attachment-preview-footer button{min-height:30px;padding:0 11px;border:1px solid #d2dfe0;border-radius:4px;background:#fff;color:#49656b;font:12px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;cursor:pointer}
.expense-attachment-preview-footer button.save{border-color:#287d83;background:#287d83;color:#fff}
@media(max-width:560px){.expense-attachment-preview-dialog{width:calc(100vw - 20px);max-width:calc(100vw - 20px)}.expense-attachment-preview-media{max-height:calc(100dvh - 160px);padding:8px}.expense-attachment-preview-media img{max-height:calc(100dvh - 190px)}.expense-attachment-preview-pdf{height:68vh}.expense-attachment-preview-footer{align-items:flex-start;flex-wrap:wrap}.expense-attachment-preview-footer>div{margin-left:auto}}
@media(max-width:1000px){.expense-editor-columns{grid-template-columns:minmax(0,1fr) 300px;gap:10px}}
#expense-editor .expense-editor-columns:has(> .expense-editor-aside[hidden]){grid-template-columns:minmax(0,1fr)}
@media(max-width:1140px){#expense-editor .expense-editor-columns:has(> .expense-editor-aside:not([hidden])){grid-template-columns:minmax(0,1fr)}}
@media(max-width:720px){#expense-editor.invoice-editor{padding:4px 8px 24px}.expense-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.expense-editor-columns{grid-template-columns:minmax(0,1fr);margin-top:10px}.expense-editor-aside{grid-row:2}.expense-editor-aside{grid-template-columns:minmax(0,1fr)}.expense-summary-card,.expense-attachments-card{padding:14px}}
@media(max-width:500px){.expense-form-grid{grid-template-columns:1fr}.expense-form-grid .expense-observations-field{grid-column:auto}}
#expense-form .expense-detail-card{padding-bottom:13px}
#expense-form .expense-attachment-empty{font-size:13px;line-height:1.5}
#expense-form .expense-attachment-drop{margin-top:15px}
.expense-lines-table-wrap{border:0}
.expense-lines-table-wrap .invoice-table th{padding:6.75px 9px}
@media(max-width:720px){#expense-form .expense-data-card .expense-received-field,#expense-form .expense-data-card .expense-due-field{grid-column:auto;width:auto;margin-left:0!important;padding-left:0}}
@media(max-width:500px){#expense-form .expense-data-card .expense-observations-field{grid-column:auto}}

.configuration-view.configuration-overview .configuration-tabs{height:32px;margin:8px 8px 0;padding:0;gap:6px;border-bottom:1px solid #d9e1e3}
.configuration-view.configuration-overview .configuration-tab-scroll{display:contents}
.configuration-view.configuration-overview .configuration-tabs button{box-sizing:border-box;min-height:32px;height:32px;padding:0 13px;border:1px solid transparent;border-radius:8px 8px 0 0;background:#eef2f5;color:#6b7280;font:600 14px/21px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;cursor:pointer}
.configuration-view.configuration-overview .configuration-tabs button.active{position:relative;z-index:1;border-color:transparent;background:#fff;color:#5f9ea0;font-weight:800}
.configuration-view.configuration-overview .configuration-tabs button.active::before{position:absolute;top:0;right:0;left:0;height:4px;border-radius:8px 8px 0 0;background:#5f9ea0;content:"";pointer-events:none}
.configuration-overview-search{box-sizing:border-box;display:flex;width:min(360px,calc(100% - 54px));height:34px;align-items:center;gap:9px;margin:21px 27px 16px;padding:0 11px;border:1px solid #dce3e5;border-radius:18px;background:#fff;color:#86959a}
.configuration-overview-search svg{flex:none;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.configuration-overview-search input{box-sizing:border-box;min-width:0;width:100%;height:30px;padding:0;border:0;outline:0;background:transparent;color:#344b52;font:14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif}
.configuration-overview-search input::placeholder{color:#88969a;opacity:1}
.configuration-view.configuration-overview .configuration-module-cards{margin-top:0}
.configuration-view.configuration-overview .configuration-module-card[hidden]{display:none}
.configuration-module-empty{box-sizing:border-box;min-height:62px;margin:0 23px;padding:20px 8px;color:#5b7378;font:14px/22px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.configuration-module-empty[hidden]{display:none}
.configuration-view.configuration-account-active .configuration-tabs{box-sizing:border-box;height:32px;margin:8px 8px 13px;padding:0;border-bottom:1px solid #d9e1e3}
.configuration-view.configuration-account-active .configuration-tabs button{box-sizing:border-box;min-height:32px;height:32px;padding:0 14px;border-radius:5px 5px 0 0;border-bottom-width:2px;font:14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif}
.configuration-view.configuration-account-active #configuration-content{padding:0 38px 24px 23px}
.configuration-account-intro{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 16px;height:56px;min-height:56px;margin:0 0 16px;padding:7px 14px;border:1px solid #dce7e7;border-radius:6px;background:#f8fbfb;color:#526970}
.configuration-account-intro h2{margin:0;color:#405961;font-size:15px;font-weight:600}
.configuration-account-intro p{grid-column:1;margin:0;color:#718187;font-size:12px;line-height:1.4}
.configuration-account-status,.configuration-account-plan-badge,.configuration-account-card-header>span{display:inline-flex;align-items:center;justify-content:center;padding:5px 10px;border-radius:15px;background:#e8f4e9;color:#287346;font-size:10px;font-weight:700;letter-spacing:.02em;white-space:nowrap}
.configuration-account-status{grid-column:2;grid-row:1/3}
.configuration-account-plan{box-sizing:border-box;display:flex;height:95.5px;min-height:95.5px;align-items:center;justify-content:space-between;gap:18px;margin:0 0 16px;padding:18px 22px;border:1px solid #dce7e7;border-left:4px solid #619fa3;border-radius:6px;background:linear-gradient(100deg,#f5f9f9,#fff);color:#526970}
.configuration-account-plan h2{margin:0 0 6px;color:#405961;font-size:17px}
.configuration-account-plan p{margin:0;color:#718187;font-size:13px;line-height:1.45}
.configuration-account-plan-badge{flex:none;background:#e7f2f3;color:#2b7478}
.configuration-account-preview{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,260px);align-items:center;gap:6px 22px;margin:0 0 16px;padding:16px 22px;border:1px solid #dce7e7;border-left:4px solid #d5a33d;border-radius:6px;background:#fffdf6;color:#526970}
.configuration-account-preview h2{margin:0 0 5px;color:#405961;font-size:16px}
.configuration-account-preview p{margin:0;color:#718187;font-size:12px;line-height:1.45}
.configuration-account-preview-field{display:grid;gap:5px;color:#526970;font-size:12px;font-weight:600}
.configuration-account-preview-field select{box-sizing:border-box;width:100%;min-height:36px;padding:6px 10px;border:1px solid #cbdada;border-radius:5px;background:#fff;color:#244c52;font:13px "Helvetica Neue",Helvetica,Arial,sans-serif}
.configuration-account-preview-status{grid-column:1/-1;color:#62787d;font-size:11px}
.configuration-account-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.configuration-account-card{box-sizing:border-box;height:369.8px;min-height:369.8px;padding:18px;border:1px solid #d7e4e5;border-radius:8px;background:linear-gradient(145deg,#fff,#f7fafa);box-shadow:0 3px 12px #24474d0b;color:#526970}
.configuration-account-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #dce7e7}
.configuration-account-card-header h3{margin:0;color:#405961;font-size:16px;font-weight:600}
.configuration-account-card-header>span.is-disconnected{background:#f3eeee;color:#8a5555}
.configuration-account-card-body{display:grid;gap:10px;padding:14px 4px}
.configuration-account-card-body p,.configuration-account-note p{margin:0;color:#647b81;font-size:13px;line-height:1.55}
.configuration-account-capabilities{display:grid;gap:0;margin:0;padding:0;list-style:none}
.configuration-account-capabilities li{box-sizing:border-box;display:flex;min-height:38px;align-items:center;justify-content:space-between;gap:10px;padding:5px 2px;border-bottom:1px solid #e9eeee;color:#50666b;font-size:12px;line-height:16px}
.configuration-account-capabilities li:last-child{border-bottom:0}
.configuration-account-capability-status{flex:none;padding:4px 8px;border-radius:12px;background:#e8f4e9;color:#287346;font-size:10px;font-weight:700;white-space:nowrap}
.configuration-account-capability-status.is-off{background:#f3eeee;color:#8a5555}
.configuration-account-note{margin-top:16px;padding:16px 18px;border:1px solid #dfe7e8;border-radius:7px;background:#fff}
.configuration-account-note h3{margin:0 0 7px;color:#405961;font-size:14px}
@media(max-width:700px){.configuration-view.configuration-account-active .configuration-tabs{margin:8px 14px 12px}.configuration-view.configuration-account-active #configuration-content{padding:0 14px 20px}.configuration-account-intro{height:auto;min-height:56px;margin-bottom:12px;padding:10px}.configuration-account-plan{height:auto;min-height:unset;align-items:flex-start;margin-bottom:12px;padding:14px}.configuration-account-preview{grid-template-columns:1fr;gap:10px;padding:14px}.configuration-account-preview-status{grid-column:1}.configuration-account-cards{grid-template-columns:minmax(0,1fr);gap:12px}.configuration-account-card{height:auto;min-height:190px;padding:14px}.configuration-account-note{margin-top:12px}}

/* Configuración · cuenta de correo local, sin conexión ni credenciales persistentes. */
.configuration-view.configuration-email-active{box-sizing:border-box;display:flex;width:100%;height:100%;min-height:0;flex-direction:column;overflow:auto;padding:0}
.configuration-view.configuration-email-active>.configuration-heading,.configuration-view.configuration-email-active>.configuration-tabs{display:none}
.configuration-view.configuration-email-active #configuration-content{box-sizing:border-box;display:flex;min-height:100%;flex:1;flex-direction:column;padding:0}
.configuration-email-page{box-sizing:border-box;width:100%;padding:8px 4px 24px;color:#212529;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}
.configuration-email-card{box-sizing:border-box;width:100%;overflow:hidden;border:1px solid rgba(95,158,160,.22);border-radius:16px;background:#fff;box-shadow:0 3px 12px rgba(30,64,75,.06)}
.configuration-email-header{box-sizing:border-box;display:grid;min-height:110px;grid-template-columns:52px minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:18px 21px;border-bottom:1px solid rgba(95,158,160,.16);background:rgba(95,158,160,.06)}
.configuration-email-avatar{display:grid;width:52px;height:52px;place-items:center;border:1px solid #edf2f2;border-radius:16px;background:#fff;color:#18777a;font-size:24px}
.configuration-email-headtext{min-width:0}
.configuration-email-headtext h2{margin:0 0 4px;color:#1f2937;font-size:21px;font-weight:600;line-height:24px}
.configuration-email-headtext p{max-width:560px;margin:0;color:#5b7378;font-size:14px;line-height:21px}
.configuration-email-status{padding:6px 12px;border:1px solid #b45309;border-radius:999px;background:#fdeede;color:#9a4c08;font-size:12px;white-space:nowrap}
.configuration-email-back{min-width:64px;padding:6px 12px;border:1px solid #d8e1e2;border-radius:5px;background:#fff;color:#435b62;font:13px "Helvetica Neue",Helvetica,Arial,sans-serif;cursor:pointer}
.configuration-email-body{box-sizing:border-box;min-height:636px;padding:21.6px;background:#f5f9f9}
.configuration-email-label{display:flex;min-height:23px;align-items:center;margin-bottom:14px;color:#3b6d6f;font-size:12px;font-weight:700;letter-spacing:.04em}
.configuration-email-methods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.configuration-email-method{box-sizing:border-box;display:flex;min-width:0;height:67px;align-items:center;gap:12px;padding:12px 14px;border:1px solid rgba(2,6,23,.08);border-radius:14px;background:#fff;color:#1f2937;text-align:left;cursor:pointer}
.configuration-email-method:hover,.configuration-email-method.is-active{border-color:#5f9ea0;background:rgba(95,158,160,.07)}
.configuration-email-method-icon{display:grid;width:40px;height:40px;flex:none;place-items:center;border-radius:10px;background:#f0f5f5;color:#247d80;font-size:21px;font-weight:700}
.configuration-email-method.is-google .configuration-email-method-icon{color:#4285f4}.configuration-email-method.is-microsoft .configuration-email-method-icon{color:#2563eb}
.configuration-email-method-copy{display:grid;min-width:0;gap:3px}
.configuration-email-method-copy strong{font-size:15px;font-weight:600;line-height:19px}
.configuration-email-method-copy>span{color:#64748b;font-size:12px;line-height:16px}
.configuration-email-explanation{margin-top:20px;padding:11px 14px;border:1px solid rgba(95,158,160,.16);border-radius:8px;background:rgba(255,255,255,.7);color:#415a61;font-size:13px;line-height:20px}
.configuration-email-notice,.configuration-email-action-status{min-height:0;margin:8px 0 0;color:#536b70;font-size:13px;line-height:19px}
.configuration-email-notice:empty,.configuration-email-action-status:empty{display:none}
.configuration-email-form{display:grid;grid-template-columns:minmax(0,7fr) minmax(280px,5fr);gap:16px;margin:20px -12px 0;padding:0 12px}
.configuration-email-account,.configuration-email-help{min-width:0}
.configuration-email-fields{display:grid;grid-template-columns:minmax(0,828px) 66px minmax(0,45px);gap:20px 18px;margin:0 1px}
.configuration-email-field{display:grid;min-width:0;gap:7px;color:#53666b;font-size:12px;line-height:16px}
.configuration-email-field.is-wide{grid-column:1/-1}
.configuration-email-field input{box-sizing:border-box;width:100%;height:30px;padding:4px 8px;border:1px solid #cfd9db;border-radius:4px;background:#fff;color:#293f45;font:13px "Helvetica Neue",Helvetica,Arial,sans-serif}
.configuration-email-field input:focus{border-color:#5f9ea0;outline:2px solid rgba(95,158,160,.16)}
.configuration-email-field:has(input[name="password"]){grid-column:1/span 2}.configuration-email-field:has(input[name="password"]) input{width:calc(100% + 13px)}
.configuration-email-help{align-self:start;margin-top:24px;padding:15px 16px;border:1px solid #dbe5e6;border-radius:8px;background:#fff;color:#52686d}
.configuration-email-help h3{margin:0 0 12px;color:#2f555b;font-size:15px;font-weight:600}
.configuration-email-help p{margin:0 0 10px;font-size:13px;line-height:19px}
.configuration-email-help p:last-child{margin-bottom:0}
.configuration-email-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:46px}
.configuration-email-actions button{box-sizing:border-box;flex:none;width:163px;min-height:40px;padding:0 12px;border:1px solid #cbd8da;border-radius:6px;background:#fff;color:#405a61;font:13px "Helvetica Neue",Helvetica,Arial,sans-serif;cursor:pointer}
.configuration-email-actions button:nth-child(2){width:146px}.configuration-email-actions button:nth-child(3){width:202px}
.configuration-email-actions button.save{border-color:#107c81;background:#107c81;color:#fff}
.configuration-email-actions button:disabled{cursor:not-allowed;opacity:.55}
.configuration-email-demo-note{margin:12px 0 0;padding:9px 12px;border:1px solid #e7d8b9;border-radius:6px;background:#fff9eb;color:#735c35;font-size:12px;line-height:18px}
@media(max-width:900px){.configuration-email-header{grid-template-columns:44px minmax(0,1fr) auto;gap:12px;padding:14px}.configuration-email-avatar{width:44px;height:44px}.configuration-email-back{grid-column:3;grid-row:1}.configuration-email-status{grid-column:2;grid-row:2;justify-self:start}.configuration-email-methods{grid-template-columns:repeat(2,minmax(0,1fr))}.configuration-email-form{grid-template-columns:minmax(0,1fr);gap:14px}}
@media(max-width:900px){.configuration-email-fields{grid-template-columns:minmax(0,1fr) 66px;gap:13px 14px;margin:0}.configuration-email-field.is-wide{grid-column:1/-1}}
@media(max-width:560px){.configuration-email-page{padding:6px 6px 18px}.configuration-email-header{grid-template-columns:38px minmax(0,1fr);gap:10px;padding:12px}.configuration-email-avatar{width:38px;height:38px;border-radius:12px}.configuration-email-headtext h2{font-size:17px;line-height:22px}.configuration-email-headtext p{font-size:12px;line-height:17px}.configuration-email-back{grid-column:2;grid-row:2;justify-self:start}.configuration-email-status{grid-column:2;grid-row:3}.configuration-email-body{min-height:0;padding:14px}.configuration-email-methods{grid-template-columns:minmax(0,1fr);gap:8px}.configuration-email-method{height:auto;min-height:60px}.configuration-email-explanation{margin-top:14px}.configuration-email-form{margin:0;padding:0}.configuration-email-fields{grid-template-columns:minmax(0,1fr) 66px;gap:11px;margin:0}.configuration-email-actions{flex-wrap:wrap;justify-content:flex-start;margin-top:12px}.configuration-email-actions button,.configuration-email-actions button:nth-child(2),.configuration-email-actions button:nth-child(3){width:auto;flex:1 1 auto}}
@media(max-width:700px){.configuration-overview-search{width:calc(100% - 54px);margin:21px 27px 0}.configuration-view.configuration-overview .configuration-tabs{box-sizing:border-box;display:block;width:calc(100vw - 31px);height:42px;margin:8px 23px 0 8px;padding:0 32px;overflow:hidden}.configuration-view.configuration-overview .configuration-tab-scroll{display:flex;width:100%;height:42px;align-items:stretch;gap:6px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch}.configuration-view.configuration-overview .configuration-tab-scroll::-webkit-scrollbar{display:none}.configuration-view.configuration-overview .configuration-tabs button{box-sizing:border-box;flex:0 0 auto;min-height:42px;height:42px;padding:0 16px;font:600 16px/24px system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif}.configuration-view.configuration-overview .configuration-tabs button.active::before{height:5px}.configuration-view.configuration-overview .configuration-module-cards{gap:16px;margin:0 23px 22px;padding:16px 4px 0}.configuration-view.configuration-overview .configuration-module-cards>.configuration-module-card:first-child{padding-bottom:14px}.configuration-module-empty{margin-right:10px;margin-left:10px}}

.configuration-view.certificate-metadata-active{overflow:auto}
.configuration-view.certificate-metadata-active #configuration-content{padding:4px}
.certificate-metadata-page{box-sizing:border-box;display:flex;min-height:calc(100vh - 99px);flex-direction:column;margin:0;border:1px solid #e2e7e8;background:#fff;color:#475c62}
.certificate-metadata-header{box-sizing:border-box;display:flex;min-height:67px;align-items:center;gap:15px;padding:3px 14px 0 24px}
.certificate-metadata-icon{width:26px;height:29px;flex:0 0 26px;overflow:visible;fill:none;stroke:#e88662;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}
.certificate-metadata-title-group{min-width:0}
.certificate-metadata-title-line{display:flex;align-items:center;gap:8px}
.certificate-metadata-identity{margin-right:auto}
.certificate-metadata-identity h1{margin:0;color:#3f555a;font-size:18px;font-weight:500;line-height:28px}
.certificate-metadata-identity p{margin:3px 0 0;color:#718186;font-size:12px;line-height:17px}
.certificate-metadata-help,.certificate-metadata-back{min-height:28px;padding:0 9px;border:1px solid #d2dddf;border-radius:4px;background:#fff;color:#53696e;font:inherit;font-size:12px;cursor:pointer}
.certificate-metadata-back{width:64px}
.certificate-metadata-separator{height:1px;margin:0 14px;background:#e1e7e8}
.certificate-metadata-toolbar{box-sizing:border-box;display:flex;min-height:52px;align-items:flex-start;justify-content:space-between;gap:12px;padding:7px 14px}
.certificate-metadata-toolbar button{margin-top:2px}
.certificate-metadata-toolbar button,.certificate-metadata-empty button,.certificate-metadata-dialog-actions button{min-height:29px;padding:0 10px;border:1px solid #619fa3;border-radius:4px;background:#619fa3;color:#fff;font:inherit;font-size:12px;cursor:pointer}
.certificate-metadata-toolbar button:hover,.certificate-metadata-empty button:hover,.certificate-metadata-dialog-actions button:hover{background:#4e8b90}
.certificate-metadata-toolbar button:not(.save){border-color:#d2dddf;background:#fff;color:#53696e}
.certificate-metadata-count{color:#61777c;font-size:12px;white-space:nowrap}
.certificate-metadata-table-wrap{box-sizing:border-box;min-height:310px;flex:1;overflow:auto;margin-top:7px;margin-left:-1px;width:calc(100% + 2px);border:1px solid #e5e9ea}
.certificate-metadata-table{width:100%;min-width:900px;border-collapse:collapse;table-layout:fixed;background:#fff}
.certificate-metadata-table th{height:52px;padding:0 10px;border:1px solid #e3e8e9;background:#f4f7f7;color:#50666d;font-size:12px;font-weight:600;text-align:left}
.certificate-metadata-table th:nth-child(1){width:8%}.certificate-metadata-table th:nth-child(2){width:20%}.certificate-metadata-table th:nth-child(3){width:12%}.certificate-metadata-table th:nth-child(4){width:20%}.certificate-metadata-table th:nth-child(5){width:14%}.certificate-metadata-table th:nth-child(6){width:13%}.certificate-metadata-table th:nth-child(7){width:13%}
.certificate-metadata-table td{height:46px;padding:5px 10px;border:1px solid #e5e9ea;color:#526970;font-size:13px;vertical-align:middle}
.certificate-metadata-table tbody tr:nth-child(even){background:#f8fafa}
.certificate-metadata-actions{white-space:nowrap}
.certificate-metadata-actions button{width:28px;height:28px;margin-right:5px;padding:0;border:0;border-radius:4px;background:transparent;color:#63777c;font:inherit;font-size:17px;cursor:pointer}
.certificate-metadata-actions button:hover{background:#eaf2f2;color:#315f63}
.certificate-metadata-empty-row>td{height:253px;padding:0!important;text-align:center;vertical-align:middle!important}
.certificate-metadata-empty{position:relative;top:5px;display:flex;max-width:610px;margin:0 auto;align-items:center;flex-direction:column;padding:18px;color:#526970}
.certificate-metadata-empty-icon{position:relative;top:6px;width:24px;height:24px;margin-bottom:24px;fill:none;stroke:#e88662;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}
.certificate-metadata-empty strong{font-size:16px;font-weight:500}
.certificate-metadata-empty p{max-width:544px;margin:6px 0 0;color:#6b7f84;font-size:13px;line-height:1.5}
.certificate-metadata-empty button{margin-top:16px}
.certificate-metadata-create-first{box-sizing:border-box;width:116px;min-height:28px}
.certificate-metadata-state{display:inline-flex;padding:4px 9px;border-radius:14px;background:#e8f4e9;color:#287346;font-size:10px;font-weight:700}
.certificate-metadata-state.is-expired{background:#f9e8e8;color:#a23838}
.certificate-metadata-note{margin:8px 14px 0;color:#647b80;font-size:12px;line-height:1.5}
.certificate-metadata-status{min-height:18px;margin:6px 14px 10px;color:#647b80;font-size:12px}
.certificate-metadata-status:empty{margin-top:0;margin-bottom:0}
.certificate-metadata-dialog,.certificate-metadata-help-dialog{box-sizing:border-box;width:min(650px,calc(100vw - 28px));max-height:min(90vh,calc(100dvh - 28px));overflow:auto;padding:0;border:1px solid #dce5e6;border-radius:7px;background:#fff;color:#43575e;box-shadow:0 12px 40px #19343d33}
.certificate-metadata-dialog::backdrop,.certificate-metadata-help-dialog::backdrop{background:#20343870}
.certificate-metadata-form{display:grid;gap:12px;padding:16px}
.certificate-metadata-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid #e4ebec}
.certificate-metadata-dialog-header h2,.certificate-metadata-help-dialog h2{margin:0;color:#354a51;font-size:17px;font-weight:600}
.certificate-metadata-close{width:30px;height:30px;border:0;border-radius:4px;background:transparent;color:#647b80;font-size:24px;cursor:pointer}
.certificate-metadata-notice{margin:0;padding:11px 12px;border:1px solid #e5dca7;border-radius:5px;background:#fffbea;color:#675c2f;font-size:12px;line-height:1.5}
.certificate-metadata-form>label:not(.certificate-metadata-default){display:grid;gap:5px;color:#536970;font-size:12px}
.certificate-metadata-form input:not([type=checkbox]),.certificate-metadata-form select{box-sizing:border-box;width:100%;height:34px;padding:6px 9px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:#43575e;font:inherit;font-size:13px}
.certificate-metadata-default{display:flex;align-items:center;gap:8px;color:#536970;font-size:12px}
.certificate-metadata-default input{accent-color:#619fa3}
.certificate-metadata-error{min-height:18px;margin:0;color:#a23838;font-size:12px}
.certificate-metadata-dialog-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:10px;border-top:1px solid #e4ebec}
.certificate-metadata-dialog-actions button:not(.save){border-color:#d2dddf;background:#fff;color:#53696e}
.certificate-metadata-help-dialog{width:min(560px,calc(100vw - 28px));padding:20px}
.certificate-metadata-help-dialog p{color:#647b80;font-size:13px;line-height:1.55}
.certificate-metadata-help-dialog button{min-height:30px;padding:0 10px;border:1px solid #d2dddf;border-radius:4px;background:#fff;color:#53696e;font:inherit;font-size:12px;cursor:pointer}
@media(max-width:700px){.configuration-view.certificate-metadata-active #configuration-content{padding:4px}.certificate-metadata-page{min-height:calc(100dvh - 70px)}.certificate-metadata-header{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:10px;padding:12px}.certificate-metadata-icon{display:none}.certificate-metadata-identity{grid-column:1/-1}.certificate-metadata-title-line{flex-wrap:wrap;gap:6px}.certificate-metadata-help{grid-column:1;justify-self:start}.certificate-metadata-back{grid-column:2;grid-row:2}.certificate-metadata-toolbar{min-height:48px;padding:7px 10px}.certificate-metadata-empty{padding:16px}.certificate-metadata-empty-icon{margin-bottom:10px}.certificate-metadata-note{margin-right:10px;margin-left:10px}.certificate-metadata-status{margin-right:10px;margin-left:10px}.certificate-metadata-form{gap:10px;padding:12px}}
.certificate-metadata-form{gap:13.2px}
.certificate-metadata-form>label{margin:0}
@media(max-width:700px){.certificate-metadata-form{gap:10px}}
.certificate-metadata-help-dialog{box-sizing:border-box;width:min(560px,calc(100vw - 28px));height:354px;max-height:min(90vh,calc(100dvh - 28px));overflow:auto;padding:0 12px 13px}
.certificate-metadata-help-header{box-sizing:border-box;display:flex;height:48px;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e4ebec}
.certificate-metadata-help-header h2{font-size:15px}
.certificate-metadata-help-options{display:grid;gap:8px;margin-top:12px}
.certificate-metadata-help-option{box-sizing:border-box;display:grid;min-height:67px;grid-template-columns:38px minmax(0,1fr) 16px;align-items:center;gap:12px;padding:9px 12px;border:1px solid #e1e7e8;border-radius:4px;background:#fff;color:#465b61;text-align:left;cursor:pointer}
.certificate-metadata-help-option:first-child{min-height:84px}
.certificate-metadata-help-option:hover{background:#f7f9f9}
.certificate-metadata-help-option-icon{color:#5c8f93;font-size:20px;text-align:center}
.certificate-metadata-help-option-copy{display:grid;gap:3px;min-width:0}
.certificate-metadata-help-option-copy strong{font-size:13px;font-weight:600}
.certificate-metadata-help-option-copy>span{color:#687a7f;font-size:12px;line-height:1.45}
.certificate-metadata-help-option-arrow{color:#738489;font-size:24px;text-align:center}
.certificate-metadata-help-footer{display:flex;min-height:32px;justify-content:flex-end;gap:8px;margin-top:12px}
.certificate-metadata-tutorial-dialog{padding:18px 20px}
.certificate-metadata-tutorial-step{margin:0 0 18px;color:#62777c;font-size:13px}
.certificate-metadata-tutorial-dialog h2{margin:0 0 16px;font-size:17px}
.certificate-metadata-tutorial-copy{margin:0;color:#52666b;font-size:14px;line-height:1.55}
.certificate-metadata-tutorial-dialog .certificate-metadata-help-footer{position:absolute;right:20px;bottom:16px}
.certificate-metadata-tutorial-dialog .certificate-metadata-help-footer button{min-width:58px}
.certificate-metadata-help-dialog.is-manual{height:min(704px,calc(100dvh - 28px));padding-bottom:12px}
.certificate-manual-nav{display:flex;align-items:center;gap:14px;margin:10px 0 8px;padding:0 2px}
.certificate-manual-nav h3{margin:0;color:#354a51;font-size:15px;font-weight:600}
.certificate-manual-body{height:calc(100% - 108px);overflow-y:auto;padding:0 2px 8px;overscroll-behavior:contain}
.certificate-manual-body>p,.certificate-manual-section p{margin:10px 0;color:#52666b;font-size:12px;line-height:1.55}
.certificate-manual-summary{padding:10px 12px;border:1px solid #dce8e8;border-radius:5px;background:#f5f9f9}
.certificate-manual-summary strong,.certificate-manual-demo-notice{color:#087968}
.certificate-manual-summary p{margin:5px 0 0;color:#52666b;font-size:12px;line-height:1.55}
.certificate-manual-body .certificate-manual-demo-notice{padding:9px 10px;border:1px solid #eadca6;border-radius:4px;background:#fffbed;color:#695d31}
.certificate-manual-section{margin:13px 0}
.certificate-manual-section h4{margin:0 0 6px;color:#354a51;font-size:14px;font-weight:600}
.certificate-manual-section ol,.certificate-manual-section ul{margin:5px 0;padding-left:21px;color:#52666b;font-size:12px;line-height:1.55}
.certificate-manual-section li+li{margin-top:4px}
.certificate-manual-body .certificate-manual-inline-note{padding:8px 10px;border-left:3px solid #e4a526;background:#fff9e9}
@media(max-width:700px){.certificate-metadata-help-dialog.is-manual{height:min(704px,calc(100dvh - 28px));max-height:calc(100dvh - 28px)}.certificate-manual-nav{gap:8px}.certificate-manual-body{height:calc(100% - 100px)}}
.certificate-assistant-panel{position:fixed;z-index:110;top:48px;right:24px;box-sizing:border-box;display:grid;width:min(380px,calc(100vw - 32px));height:min(875px,calc(100dvh - 64px));grid-template-rows:56px 46px minmax(0,1fr) 130px;overflow:hidden;border:1px solid #dce5e6;border-radius:16px;background:#fff;color:#43575e;box-shadow:0 12px 32px #19343d30}
.certificate-assistant-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 16px;background:#619fa3;color:#fff}
.certificate-assistant-header h2{margin:0;font-size:16px;font-weight:600}
.certificate-assistant-header .certificate-metadata-close{color:#fff;font-size:25px}
.certificate-assistant-toolbar{display:flex;align-items:center;padding:0 12px;border-bottom:1px solid #e2e8e9}
.certificate-assistant-toolbar button{height:36px;padding:0 9px;border:0;border-bottom:2px solid #619fa3;background:#fff;color:#53696e;font:inherit;font-size:12px}
.certificate-assistant-body{display:flex;flex-direction:column;gap:16px;overflow:auto;padding:58px 10px 14px;overscroll-behavior:contain}
.certificate-assistant-welcome{align-self:center;width:min(330px,100%);padding:0 10px}
.certificate-assistant-welcome h3{margin:0 0 8px;color:#354a51;font-size:17px;font-weight:600}
.certificate-assistant-welcome p{margin:0;color:#647b80;font-size:12px;line-height:1.55}
.certificate-assistant-message{max-width:92%;padding:10px 12px;border-radius:12px;font-size:13px;line-height:1.55;white-space:pre-wrap}
.certificate-assistant-message.is-user{align-self:flex-end;background:#eef5f5;color:#43575e}
.certificate-assistant-message.is-assistant{align-self:flex-start;border:1px solid #e4ebec;background:#fff;color:#43575e}
.certificate-assistant-suggestions{display:grid;gap:9px;margin-top:auto;padding:8px 2px 0}
.certificate-assistant-suggestions strong{color:#354a51;font-size:12px;text-align:right}
.certificate-assistant-suggestions button{justify-self:end;max-width:100%;padding:9px 11px;border:1px solid #e5eaeb;border-radius:12px;background:#fff;color:#43575e;text-align:left;font:inherit;font-size:12px;box-shadow:0 3px 12px #19343d18;cursor:pointer}
.certificate-assistant-suggestions button:hover{background:#f5f9f9}
.certificate-assistant-form{position:relative;box-sizing:border-box;display:flex;align-items:flex-start;gap:6px;margin:0 0 0;padding:12px 8px 55px;border-top:1px solid #e1e7e8;background:#fff}
.certificate-assistant-input{box-sizing:border-box;width:100%;height:64px;resize:none;padding:10px 42px 10px 11px;border:1px solid #dce5e6;border-radius:6px;background:#fff;color:#43575e;font:inherit;font-size:12px;line-height:1.45}
.certificate-assistant-input::placeholder{color:#647b80}
.certificate-assistant-send{position:absolute;right:16px;top:22px;width:32px;height:32px;border:0;border-radius:50%;background:#619fa3;color:#fff;font-size:17px;cursor:pointer}
@media(max-width:700px){.certificate-assistant-panel{top:56px;right:12px;width:calc(100vw - 24px);height:calc(100dvh - 72px);grid-template-rows:52px 44px minmax(0,1fr) 116px;border-radius:12px}.certificate-assistant-body{padding:28px 8px 10px}.certificate-assistant-form{padding-bottom:45px}.certificate-assistant-input{height:62px}}

/* Registro de actividad: pantalla independiente de Configuración y pestaña Usuarios. */
.users-view.activity-standalone{box-sizing:border-box;padding:8px 14px 24px;background:#fff}
.users-view.activity-standalone>.users-tabs{display:none}
.users-view.activity-standalone #activity-panel{margin:0;padding:0}
.activity-page-heading{box-sizing:border-box;display:flex;min-height:70px;align-items:center;gap:14px;padding:4px 0 12px;border-bottom:1px solid #e1e8e9;color:#435a60}
.activity-page-icon{display:grid;width:44px;height:44px;flex:none;place-items:center;border-radius:50%;background:#eef6f5;color:#12816f;font-size:31px;line-height:1}
.activity-page-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.activity-page-title{min-width:0;flex:1}
.activity-page-title small{color:#70858a;font-size:10px;font-weight:700;letter-spacing:.08em}
.activity-page-title h1{margin:2px 0 1px;color:#344d55;font-size:21px;font-weight:600;line-height:25px}
.activity-page-title p{margin:0;color:#718187;font-size:12px;line-height:17px}
.activity-page-heading>button,.activity-header-actions>button,.activity-export-wrap>button{box-sizing:border-box;min-height:34px;padding:0 12px;border:1px solid #d9e2e3;border-radius:5px;background:#fff;color:#43575e;font:13px "Helvetica Neue",Helvetica,Arial,sans-serif;cursor:pointer}
.activity-page-heading>button:hover,.activity-header-actions>button:hover,.activity-export-wrap>button:hover{border-color:#79aeb0;background:#f5fafa}
.activity-header-actions{display:flex;align-items:center;gap:7px}
.activity-header-actions>button:nth-child(2){width:36px;padding:0;font-size:18px}
.activity-export-wrap{position:relative}
#activity-export-menu{position:absolute;z-index:30;top:calc(100% + 4px);right:0;box-sizing:border-box;width:190px;padding:4px;border:1px solid #dce4e5;border-radius:5px;background:#fff;box-shadow:0 5px 14px #10272b24}
#activity-export-menu[hidden]{display:none}
#activity-export-menu button{display:block;width:100%;min-height:34px;padding:0 10px;border:0;border-radius:3px;background:#fff;color:#43575e;text-align:left;font:13px "Helvetica Neue",Helvetica,Arial,sans-serif;cursor:pointer}
#activity-export-menu button:hover,#activity-export-menu button:focus{outline:0;background:#eef6f5}
.activity-controls-row{box-sizing:border-box;display:flex;min-height:46px;align-items:center;gap:12px;padding:7px 0;border-bottom:1px solid #e6ebec}
.activity-view-tabs{display:flex;align-items:center;gap:3px;flex:none}
.activity-view-tabs button{min-height:32px;padding:0 12px;border:1px solid transparent;border-radius:4px;background:#fff;color:#51666b;font:13px "Helvetica Neue",Helvetica,Arial,sans-serif;cursor:pointer}
.activity-view-tabs button[aria-pressed="true"]{border-color:#d5e2e2;background:#f2f8f7;color:#28777a;font-weight:700}
.activity-search-box{box-sizing:border-box;display:flex;min-width:220px;max-width:520px;height:32px;flex:1;align-items:center;padding:0 10px;border:1px solid #d4dfe0;border-radius:4px;background:#fff}
.activity-search-box input{box-sizing:border-box;width:100%;height:28px;padding:0;border:0;outline:0;color:#344d55;font:13px "Helvetica Neue",Helvetica,Arial,sans-serif}
.activity-search-box input::placeholder{color:#89979a;opacity:1}
.activity-count{flex:none;color:#708187;font-size:12px;white-space:nowrap}
.activity-range{display:flex;min-height:42px;align-items:center;gap:7px;margin:0;padding:5px 0;color:#596d72;font-size:12px}
.activity-range button{min-height:30px;padding:0 11px;border:1px solid #d9e2e3;border-radius:4px;background:#fff;color:#43575e;font:12px "Helvetica Neue",Helvetica,Arial,sans-serif;cursor:pointer}
.activity-range button[aria-pressed="true"],.activity-range button:hover{border-color:#79aeb0;background:#edf6f5;color:#315b60;font-weight:700}
.activity-toolbar{display:flex;min-height:54px;align-items:end;gap:10px;flex-wrap:wrap;padding:8px 0;border-top:0;border-bottom:1px solid #e6ebec}
.activity-toolbar label{display:grid;min-width:130px;gap:4px;flex:1;color:#596d72;font-size:11px}
.activity-toolbar label:nth-child(4),.activity-toolbar label:nth-child(5){min-width:145px;max-width:190px}
.activity-toolbar select,.activity-toolbar input[type="date"]{box-sizing:border-box;width:100%;height:30px;padding:0 8px;border:1px solid #d4dfe0;border-radius:4px;background:#fff;color:#43575e;font:12px "Helvetica Neue",Helvetica,Arial,sans-serif}
.activity-toolbar .activity-failed-filter{display:flex;min-width:142px;align-items:center;align-self:center;gap:7px;flex:none;padding:0 4px;color:#596d72;font-size:12px}
.activity-toolbar .activity-failed-filter input{width:15px;height:15px;margin:0;accent-color:#619fa3}
.activity-table-wrap{box-sizing:border-box;margin:12px 0 0;border:1px solid #dce5e6;border-radius:4px;background:#fff}
.activity-table{width:100%;min-width:1120px;border-collapse:collapse;table-layout:auto;color:#40565d}
.activity-table th{height:38px;padding:0 9px;background:#f2f6f6;color:#61777c;font-size:10px;font-weight:700;letter-spacing:.035em;text-align:left;white-space:nowrap}
.activity-table td{padding:8px 9px;border-top:1px solid #e8eded;color:#43585e;font-size:11px;line-height:16px;vertical-align:top}
.activity-table tbody tr:hover{background:#f8fbfb}
.activity-table td:nth-child(1){min-width:126px;white-space:nowrap}
.activity-table td:nth-child(2){min-width:118px}
.activity-table td:nth-child(3),.activity-table td:nth-child(4){min-width:96px}
.activity-table td:nth-child(5){min-width:118px}
.activity-table td:nth-child(6){min-width:240px;max-width:390px;white-space:normal}
.activity-table td:nth-child(7){min-width:70px;text-align:center}
.activity-table td:nth-child(8){min-width:126px}
.activity-row-details{margin-top:4px;color:#28777a;font-size:10px}
.activity-row-details summary{width:max-content;max-width:100%;cursor:pointer;list-style:none}
.activity-row-details summary::-webkit-details-marker{display:none}
.activity-row-details summary::before{content:"›";display:inline-block;margin-right:5px;transition:transform .12s ease}
.activity-row-details[open] summary::before{transform:rotate(90deg)}
.activity-technical-details{display:grid;gap:2px;margin:6px 0 2px;padding:7px 8px;border-left:2px solid #9fc6c2;background:#f5f9f9;color:#64777c;font-size:10px;line-height:15px}
.activity-timeline{gap:8px;margin:12px 0}
.activity-event{grid-template-columns:150px minmax(150px,.8fr) minmax(120px,.5fr) minmax(200px,1.4fr) auto}
.activity-load-more{justify-content:flex-end;min-height:40px;margin:0;padding:6px 0}
.activity-load-more button{min-height:31px;padding:0 12px;border:1px solid #d9e2e3;border-radius:4px;background:#fff;color:#43575e;font:12px "Helvetica Neue",Helvetica,Arial,sans-serif;cursor:pointer}
#activity-status{margin:6px 0 0;padding:8px 10px;border:1px solid #e7e3d6;border-radius:4px;background:#fffaf0;color:#756b54;font-size:11px;line-height:16px}
.activity-help-dialog{box-sizing:border-box;width:min(560px,calc(100vw - 32px));min-height:261px;padding:0;border:1px solid #d8e3e4;border-radius:7px;background:#fff;color:#40565d;box-shadow:0 14px 40px #10272b33}
.activity-help-dialog::backdrop{background:#12272b55}
.activity-help-head{display:flex;min-height:78px;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid #e4ebeb}
.activity-help-head small{color:#6d898e;font-size:10px;font-weight:700;letter-spacing:.06em}
.activity-help-head h2{margin:2px 0;color:#344d55;font-size:18px;font-weight:600}
.activity-help-head p{margin:0;color:#718187;font-size:12px}
.activity-help-head>button{width:30px;height:30px;border:0;background:transparent;color:#62777c;font-size:23px;cursor:pointer}
.activity-help-body{min-height:117px;padding:14px 18px}
.activity-help-body h3{margin:0 0 8px;color:#435c62;font-size:14px;font-weight:600}
.activity-help-body p{margin:0 0 8px;color:#64797e;font-size:12px;line-height:18px}
.activity-help-body .activity-demo-note{color:#7a6b48}
.activity-help-actions{display:flex;justify-content:flex-end;padding:8px 18px 14px}
.activity-help-actions button{min-height:32px;padding:0 14px;border:1px solid #d6e0e2;border-radius:4px;background:#fff;color:#43575e;font:12px "Helvetica Neue",Helvetica,Arial,sans-serif;cursor:pointer}
.activity-is-standalone .users-heading{padding:0}
.activity-is-standalone #activity-back{display:inline-flex}
@media(max-width:850px){.users-view.activity-standalone{padding:8px 10px 20px}.activity-page-heading{gap:8px;flex-wrap:wrap}.activity-page-title{flex-basis:calc(100% - 56px)}.activity-page-heading>button{margin-left:52px}.activity-header-actions{margin-left:auto}.activity-controls-row{flex-wrap:wrap}.activity-search-box{order:3;max-width:none;flex-basis:100%}.activity-count{margin-left:auto}.activity-toolbar label{min-width:calc(50% - 8px);max-width:none!important}.activity-toolbar .activity-failed-filter{min-width:100%}.activity-table-wrap{overflow:auto}.activity-event{grid-template-columns:1fr 1fr}.activity-event p,.activity-event small{grid-column:1/-1}}
@media print{body.printing-activity .activity-page-heading>button,body.printing-activity .activity-header-actions,body.printing-activity .activity-row-details,body.printing-activity #activity-status{display:none!important}body.printing-activity .users-view.activity-standalone{padding:0!important}body.printing-activity .activity-page-heading{min-height:auto;padding:0 0 8px}.activity-table-wrap{overflow:visible!important}}
@media print{body.printing-activity #activity-panel>*:not(.activity-page-heading):not(.users-heading):not(.activity-table-wrap):not(.activity-timeline){display:none!important}body.printing-activity .activity-page-heading{display:flex!important}}
.activity-view-tabs{margin:0}
.activity-controls-row{min-height:46px;padding:0;gap:12px}
.activity-search-box{max-width:none;height:30px}
.activity-search-box input{height:26px}
.activity-filter-row{box-sizing:border-box;display:flex;min-height:54px;align-items:center;padding:4px 0 4px 13px;border-block:1px solid #e6ebec}
.activity-filter-row .activity-range{min-height:34px;gap:0;flex:none;padding:0 8px 0 0}
.activity-filter-row .activity-range button{box-sizing:border-box;min-height:27px;height:27px;padding:0 6px;border-radius:0}
.activity-filter-row .activity-range button:first-child{border-radius:4px 0 0 4px}
.activity-filter-row .activity-range button:last-child{border-radius:0 4px 4px 0}
.activity-filter-row .activity-range button+button{margin-left:-1px}
.activity-filter-row .activity-toolbar{box-sizing:border-box;min-height:38px;align-items:center;gap:40px;flex:1;flex-wrap:nowrap;padding:0 8px;border:0}
.activity-filter-row .activity-toolbar>label:not(.activity-failed-filter){box-sizing:border-box;min-width:0;max-width:none;flex:none;gap:3px;font-size:11px}
.activity-filter-row .activity-toolbar>label:nth-child(1){width:158px}
.activity-filter-row .activity-toolbar>label:nth-child(2){width:138px}
.activity-filter-row .activity-toolbar>label:nth-child(3){width:128px}
.activity-filter-row .activity-toolbar .activity-failed-filter{gap:7px;margin:0;padding:0;white-space:nowrap}
.activity-custom-date-fields{display:flex;align-items:end;gap:8px}
.activity-custom-date-fields[hidden]{display:none}
.activity-custom-date-fields label{display:grid;min-width:130px;gap:3px;color:#596d72;font-size:11px}
.activity-custom-date-fields input{box-sizing:border-box;width:145px;height:30px;padding:0 8px;border:1px solid #d4dfe0;border-radius:4px;background:#fff;color:#43575e;font:12px "Helvetica Neue",Helvetica,Arial,sans-serif}
@media(max-width:850px){.activity-filter-row{align-items:stretch;flex-direction:column;gap:6px;padding:8px 0}.activity-filter-row .activity-range{flex-wrap:wrap;padding-left:4px}.activity-filter-row .activity-toolbar{min-height:0;align-items:end;gap:8px;flex-wrap:wrap;padding:0}.activity-filter-row .activity-toolbar>label:not(.activity-failed-filter){width:calc(50% - 4px);min-width:calc(50% - 4px);flex:0 0 calc(50% - 4px)}.activity-filter-row .activity-toolbar .activity-failed-filter{min-width:100%}.activity-custom-date-fields{width:100%;flex-wrap:wrap}.activity-custom-date-fields label{min-width:calc(50% - 4px);flex:1}.activity-custom-date-fields input{width:100%}}.activity-controls-row{box-sizing:border-box;min-height:30px;height:30px;margin-bottom:16px;padding:0 0 0 13px;gap:10px}
.activity-view-tabs button{box-sizing:border-box;min-height:30px;height:30px}
.activity-search-box{box-sizing:border-box;height:30px;max-width:1333px;flex:1 1 1333px}
.activity-search-box input{box-sizing:border-box;height:30px}
.activity-filter-row .activity-range{position:relative;top:5px}
.activity-filter-row .activity-range button{padding:0 5.4px}
.activity-filter-row .activity-toolbar{padding-left:0}
/* Registro de notificaciones: vista independiente alineada con la tarjeta de Configuración. */
.users-view.notification-standalone{box-sizing:border-box;padding:8px 15px 24px;background:#fff}
.users-view.notification-standalone>.users-tabs{display:none}
#notifications-panel.notification-is-standalone{box-sizing:border-box;min-height:807px;margin:0;padding:0;border:1px solid #dfe7e8;border-radius:14px;background:#fff;box-shadow:0 6px 18px #19363d0d;overflow:hidden}
.notification-page-heading{box-sizing:border-box;display:flex;align-items:center;gap:12px;width:100%;height:63px;margin-top:0;padding:0 13px;border-bottom:1px solid #dfe7e8;background:#fff}
.notification-page-icon{display:grid;flex:0 0 38px;place-items:center;width:38px;height:38px;color:#08a9b0;font-family:Arial,sans-serif;font-size:0}
.notification-page-icon svg{width:38px;height:38px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.notification-page-title{flex:1 1 auto;min-width:0;color:#212529}
.notification-page-title h1{margin:0;color:#212529;font-size:18px;font-weight:600;line-height:21px}
.notification-page-title p{margin:0;color:#607278;font-size:13px;line-height:20px}
.notification-count{flex:0 0 48px;color:#69797e;font-size:12px;text-align:center;white-space:nowrap;transform:translateY(-3px)}
.notification-header-actions{display:flex;flex:0 0 auto;align-items:center;gap:6px}
.notification-header-actions button{box-sizing:border-box;height:29px;min-height:29px;padding:0 8px;border:1px solid #d8e1e2;border-radius:4px;background:#fff;color:#33484f;font:inherit;font-size:12px;white-space:nowrap;cursor:pointer}
.notification-header-actions #notification-back{width:67px}
.notification-header-actions #notification-back[hidden]{display:none}
.notification-export-wrap{position:relative}
.notification-export-wrap>button{width:73px}
#notification-export-menu{position:absolute;top:calc(100% + 2px);right:0;z-index:30;display:grid;width:123px;padding:4px 0;border:1px solid #d8e1e2;border-radius:4px;background:#fff;box-shadow:0 5px 15px #21383d24}
#notification-export-menu[hidden]{display:none}
#notification-export-menu button{width:100%;height:30px;min-height:30px;padding:0 9px;border:0;border-radius:0;text-align:left}
#notification-export-menu button:hover{background:#f1f6f6}
.notification-log-toolbar{box-sizing:border-box;display:flex;align-items:center;gap:10px;height:66px;margin:0;padding:0 14px;border-bottom:1px solid #e1e7e8;background:#fff}
.notification-log-toolbar>label{position:relative;display:grid;flex:0 0 150px;gap:4px;min-width:0;color:#566a70;font-size:11px;line-height:14px}
.notification-log-toolbar>label:nth-child(4){flex-basis:190px;margin-left:-1px}
.notification-filter-label{position:relative;left:-9px}
.notification-log-toolbar input:not([type=checkbox]),.notification-log-toolbar select{box-sizing:border-box;width:100%;height:26px;min-height:26px;padding:0 7px;border:1px solid #cbd6d8;border-radius:3px;background:#fff;color:#3f5258;font:inherit;font-size:12px}
.notification-date-control{display:flex;width:150px;height:26px;transform:translate(1px,2px)}
.notification-date-control input::-webkit-calendar-picker-indicator{display:none;opacity:0}
.notification-date-control input{flex:0 0 123px!important;width:123px!important;height:26px!important;padding:0 5px!important}
.notification-date-control button{flex:0 0 25px;width:25px;height:26px;padding:0;border:1px solid #cbd6d8;border-left:0;border-radius:0 3px 3px 0;background:#fff;color:#75878b;font-size:14px;line-height:24px;cursor:pointer}
.notification-log-toolbar>label:not(:has(.notification-date-control))>input,.notification-log-toolbar>label:not(:has(.notification-date-control))>select{transform:translate(1px,2px)}
.notification-log-toolbar .notification-failed-filter{display:flex;flex:0 0 auto;align-items:center;gap:9px;margin-left:-1px;padding:0;color:#53676d;font-size:12px;white-space:nowrap}
.notification-failed-filter input{appearance:none;position:relative;box-sizing:border-box;width:48px;height:20px;margin:0;border:1px solid #c6d1d3;border-radius:999px;background:#dce3e4;cursor:pointer}
.notification-failed-filter input::before{position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #122d3030;content:"";transition:transform .12s ease}
.notification-failed-filter input:checked{border-color:#6aa7aa;background:#6aa7aa}
.notification-failed-filter input:checked::before{transform:translateX(28px)}
.notification-log-table-wrap{box-sizing:border-box;height:671px;margin:0 4px;border:1px solid #e1e7e8;border-radius:0;overflow:auto}
.notification-log-table{width:100%;min-width:900px;table-layout:fixed;border-collapse:collapse}
.notification-log-table th:nth-child(1),.notification-log-table td:nth-child(1){width:15.38%}
.notification-log-table th:nth-child(2),.notification-log-table td:nth-child(2){width:25.66%}
.notification-log-table th:nth-child(3),.notification-log-table td:nth-child(3){width:14.09%}
.notification-log-table th:nth-child(4),.notification-log-table td:nth-child(4){width:29.48%;min-width:0}
.notification-log-table th:nth-child(5),.notification-log-table td:nth-child(5){width:15.38%}
.notification-log-table .notification-log-empty-row td{height:90px;padding:0 12px;color:#7c898d;text-align:center;font-size:13px}
.notification-log-table thead th{position:relative;height:34px;padding:8px 8px;font-size:12px;font-weight:600}
.notification-column-filter{position:absolute;top:50%;right:6px;display:grid;place-items:center;width:18px;height:20px;padding:0;border:0;background:transparent;color:#697b80;transform:translateY(-50%);cursor:pointer}
.notification-column-filter svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round}
.notification-log-demo-note{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:850px){.users-view.notification-standalone{padding:8px 10px 20px}#notifications-panel.notification-is-standalone{min-height:calc(100dvh - 120px)}.notification-page-heading{height:auto;min-height:63px;flex-wrap:wrap;padding:10px 4px}.notification-page-title{flex:1 1 calc(100% - 62px)}.notification-count{margin-left:auto}.notification-log-toolbar{height:auto;min-height:66px;flex-wrap:wrap;align-items:end;padding:10px 4px}.notification-log-toolbar>label{flex:1 1 calc(50% - 10px);max-width:none}.notification-log-toolbar>label:nth-child(4){flex-basis:calc(50% - 10px)}.notification-log-toolbar .notification-failed-filter{flex-basis:100%;min-height:28px}.notification-log-table-wrap{height:calc(100dvh - 260px);min-height:300px;margin-inline:0}}
@media print{@page{margin:14mm}body.printing-notifications .notification-page-heading{display:flex!important;margin:0 0 8px;padding:0;border:0}body.printing-notifications .notification-header-actions,body.printing-notifications .notification-log-toolbar,body.printing-notifications .notification-log-demo-note{display:none!important}body.printing-notifications #notifications-panel>*:not(.notification-page-heading):not(.notification-log-table-wrap){display:none!important}body.printing-notifications .notification-log-table-wrap{display:block!important;height:auto!important;margin:0!important;overflow:visible!important;border:0!important}body.printing-notifications .notification-log-table{min-width:0!important;table-layout:fixed;font-size:8pt!important}body.printing-notifications .notification-log-table th,body.printing-notifications .notification-log-table td{padding:5px 4px;font-size:8pt!important;overflow-wrap:anywhere}}

.invoice-issuer-page{box-sizing:border-box;min-width:0;padding:0 10px 18px;color:#40565d;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}
.invoice-issuer-header{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:70px;border-bottom:1px solid #dce5e6}
.invoice-issuer-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:#e9f3f3;color:#13745e;font-size:25px}
.invoice-issuer-identity h1{margin:0;color:#35525a;font-size:21px;font-weight:500;line-height:28px}
.invoice-issuer-identity p{margin:2px 0 0;color:#708187;font-size:12px}
.invoice-issuer-back{min-width:74px;height:30px;padding:0 12px;border:1px solid #bfd6d7;border-radius:4px;background:#fff;color:#557277;font:12px/18px "Helvetica Neue",Helvetica,Arial,sans-serif;cursor:pointer}
.invoice-issuer-toolbar{display:flex;align-items:center;gap:16px;min-height:56px;padding:6px 2px}
.invoice-issuer-toolbar>.save,.invoice-issuer-empty>.save,.invoice-issuer-actions>.save{min-height:32px;padding:0 14px;border:0;border-radius:4px;background:#16806a;color:#fff;font:13px/18px "Helvetica Neue",Helvetica,Arial,sans-serif;cursor:pointer}
.invoice-issuer-count{color:#62767b;font-size:12px}
.invoice-issuer-table-wrap{width:100%;max-height:calc(100dvh - 228px);overflow:auto;border:1px solid #dfe7e8;background:#fff}
.invoice-issuer-table{width:100%;min-width:930px;border-collapse:collapse;table-layout:auto;font-size:12px}
.invoice-issuer-table th{height:34px;padding:7px 10px;border-bottom:1px solid #dfe7e8;background:#f8fafa;color:#566a70;text-align:left;font-size:11px;font-weight:600;white-space:nowrap}
.invoice-issuer-table td{height:43px;padding:5px 10px;border-bottom:1px solid #edf0f1;color:#435a60;white-space:nowrap}
.invoice-issuer-table tbody tr:last-child td{border-bottom:0}
.invoice-issuer-row-actions{display:flex;gap:5px}
.invoice-issuer-row-actions button{width:27px;height:27px;border:1px solid #d5e0e1;border-radius:4px;background:#fff;color:#547176;font-size:16px;cursor:pointer}
.invoice-issuer-row-actions button:disabled{color:#d59a2a;cursor:default}
.invoice-issuer-empty{display:grid;justify-items:center;gap:8px;padding:36px 16px;text-align:center;white-space:normal}
.invoice-issuer-empty strong{color:#465e64;font-size:15px;font-weight:500}
.invoice-issuer-empty p,.invoice-issuer-note{margin:0;color:#728187;font-size:12px;line-height:1.5}
.invoice-issuer-status:empty{display:none}
.invoice-issuer-status{min-height:18px;margin:5px 0;color:#28735f;font-size:12px}
.invoice-issuer-notice{margin:12px 0;padding:9px 11px;border-left:3px solid #6b9fa1;background:#f2f7f7;color:#587076;font-size:12px;line-height:1.5}
.invoice-issuer-editor-page{max-width:1120px;margin:0 auto}
.invoice-issuer-editor-page .invoice-issuer-header{margin-bottom:10px}
.invoice-issuer-tabs{display:flex;gap:0;overflow-x:auto;border-bottom:1px solid #d8e1e2}
.invoice-issuer-tab{flex:0 0 auto;min-height:37px;padding:0 13px;border:0;border-bottom:2px solid transparent;background:transparent;color:#60757a;font:12px/18px "Helvetica Neue",Helvetica,Arial,sans-serif;white-space:nowrap;cursor:pointer}
.invoice-issuer-tab[aria-selected="true"]{border-bottom-color:#18806a;color:#08735c;font-weight:600}
.invoice-issuer-panel{min-height:285px;padding:16px 4px}
.invoice-issuer-panel h2{margin:0 0 15px;color:#435a61;font-size:16px;font-weight:500}
.invoice-issuer-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}
.invoice-issuer-field{display:grid;min-width:0;gap:5px;margin:2px 0 11px;color:#586e74;font-size:12px}
.invoice-issuer-field input,.invoice-issuer-field select,.invoice-issuer-field textarea{box-sizing:border-box;width:100%;min-height:33px;padding:6px 8px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:#344c53;font:13px "Helvetica Neue",Helvetica,Arial,sans-serif}
.invoice-issuer-field textarea{min-height:68px;resize:vertical}
.invoice-issuer-toggle{display:flex;align-items:center;gap:9px;min-height:39px;margin:7px 0;color:#4f656b;font-size:13px}
.invoice-issuer-toggle input{accent-color:#16806a}
.invoice-issuer-integration-status{display:inline-block;margin:9px 0;padding:6px 10px;border-radius:14px;background:#f1f3f3;color:#65777b;font-size:11px}
.invoice-issuer-logo-editor{display:grid;justify-items:start;gap:8px;margin-top:15px;padding:13px;border:1px dashed #c8d7d9;color:#5b7076;font-size:12px}
.invoice-issuer-logo-editor p{margin:0;color:#78888c}
.invoice-issuer-logo-editor input[type=file]{max-width:100%;font:12px "Helvetica Neue",Helvetica,Arial,sans-serif}
.invoice-issuer-logo-name,.invoice-issuer-logo-editor small{color:#78888c}
.invoice-issuer-logo-preview{max-width:min(240px,100%);max-height:100px;object-fit:contain;object-position:left center}
.invoice-issuer-logo-remove{min-height:30px;padding:0 10px;border:1px solid #d0dcde;border-radius:4px;background:#fff;color:#526970;font:12px/18px "Helvetica Neue",Helvetica,Arial,sans-serif;cursor:pointer}
.invoice-print-issuer-logo{display:block;max-width:150px;max-height:72px;margin:5px 0 8px;object-fit:contain;object-position:left center}
.invoice-issuer-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 0;border-top:1px solid #e0e7e8}
.invoice-issuer-actions>button:not(.save){min-height:32px;padding:0 13px;border:1px solid #d0dcde;border-radius:4px;background:#fff;color:#526970;font:12px/18px "Helvetica Neue",Helvetica,Arial,sans-serif;cursor:pointer}
@media(max-width:720px){.invoice-issuer-page{padding-inline:4px}.invoice-issuer-header{grid-template-columns:38px minmax(0,1fr) auto;gap:8px}.invoice-issuer-identity h1{font-size:18px}.invoice-issuer-table-wrap{max-height:calc(100dvh - 245px)}.invoice-issuer-field-grid{grid-template-columns:1fr;gap:3px}.invoice-issuer-tabs{margin-inline:-4px}.invoice-issuer-tab{padding-inline:10px}.invoice-issuer-panel{min-height:240px;padding:13px 2px}}
@media(min-width:1600px){#agenda-area:not(.list-mode) .event.calendar-appointment[style*="20.17px"]{width:93%!important}}

/* Caja: encabezado y área de movimientos alineados con la disposición observada. */
.cash-register-other-summary{display:grid;align-content:center;gap:2px;min-width:90px;margin-left:auto}
.cash-register-other-summary[hidden]{display:none}
.cash-register-strip{box-sizing:border-box;display:flex;align-items:center;gap:9px;min-height:30px;padding:0 10px;border:1px solid #dfe7e8;border-radius:4px;background:#fff;color:#52666d;font-size:12px}
.cash-register-current-label{color:#718187}
.cash-register-strip strong{font-weight:600}
.cash-register-strip-total{margin-left:auto;color:#4b6268;font-weight:600}
.cash-register-list{display:flex;min-width:0;flex-direction:column}
.cash-register-table-wrap{display:flex;min-height:0;flex-direction:column}
.cash-register-table-wrap #cash-register-empty{flex:1;align-content:center;margin:0}
.cash-register-view #cash-register-empty[hidden]{display:none}
@media(min-width:1200px){
  .cash-register-status{box-sizing:border-box;height:66px;min-height:66px;margin:0;padding:8px 12px}
  .cash-register-status .cash-register-state-info{gap:0}
  .cash-register-state-info strong{font-size:16px;line-height:20px}
  .cash-register-state-info span{font-size:12px;line-height:14px}
  .cash-register-other-summary{gap:0}
  .cash-register-other-summary[hidden]{display:none}
  .cash-open-actions{flex:1;justify-content:flex-end;gap:6px;margin:0}
  .cash-open-actions button{box-sizing:border-box;height:30px;min-height:30px;padding:0 10px;border:1px solid #d6e0e1;border-radius:4px;background:#fff;color:#465e64;font:12px "Helvetica Neue",Helvetica,Arial,sans-serif;white-space:nowrap}
  .cash-open-actions #cash-close-register{border:0;background:#16806a;color:#fff}
  .cash-register-strip{height:30px;margin:8px 0}
  .cash-register-list{box-sizing:border-box;height:615px;margin-top:8px;padding:4px;border:1px solid #dfe7e8;border-radius:4px;background:#fff}
  .cash-register-list .cash-register-toolbar{box-sizing:border-box;height:56px;min-height:56px;flex:0 0 56px;align-items:center;justify-content:flex-end;margin:0;padding:0 8px;border-bottom:1px solid #e4e9eb}
  .cash-register-list .cash-register-toolbar label{gap:2px;min-width:174px;font-size:12px}
  .cash-register-list .cash-register-toolbar select{box-sizing:border-box;height:30px;min-height:30px;padding:4px 8px}
  .cash-register-list .cash-register-table-wrap{flex:1;margin-top:4px;border:1px solid #e4e9eb}
  .cash-register-totals{box-sizing:border-box;display:flex;min-height:82px;height:82px;align-items:center;margin:12px 0 0;padding:14px;border:1px solid #dfe7e8;border-radius:5px;background:#fff}
}
@media(max-width:700px){.cash-register-tabs{box-sizing:border-box;height:auto;min-height:0;margin:0;padding:10px 0;overflow-x:auto;border:0}.cash-register-tabs button{box-sizing:border-box;display:flex;flex:0 0 calc(50% - 4px);align-items:center;justify-content:flex-start;gap:7px;width:calc(50% - 4px);min-width:calc(50% - 4px);max-width:calc(50% - 4px);height:60px;min-height:60px;padding:6px 8px;border:1px solid #dce4e5;border-radius:7px;background:#f7f9f9;color:#52666d;text-align:left}.cash-register-tabs button.active{border:2px solid #5f9ea0;background:#e7f3f3;color:#1f2937}.cash-register-tab-icon{width:18px;height:18px;flex:0 0 18px}.cash-register-tab-copy{flex:1 1 auto;gap:0}.cash-register-tab-copy strong{font-size:12px;line-height:14px}.cash-register-tab-copy small{font-size:10px;line-height:12px}.cash-register-strip{align-items:flex-start;flex-wrap:wrap;padding-block:7px}.cash-register-strip-total{margin-left:auto}.cash-register-other-summary{margin-left:0}}

/* Cabecera compacta en escritorio, alineada con la distribución de la referencia. */
@media(min-width:992px){
  .top{padding-right:16px}
  .top>.brand{order:1}
  .top>.banner{order:2;max-width:170px;margin-left:auto;margin-right:18px}
  .top>.top-actions{order:3;gap:8px}
  .top-actions button{width:34px;height:26px;padding:4px;border-radius:2px}
  .top-user{min-height:29px;margin-left:0;padding:0 5px;border-radius:3px}
  .top-user-caret{font-size:10px;line-height:1}
}
@media(max-width:991px){
  .top>.brand{order:1}
  .top>.banner{order:2;margin-left:auto;margin-right:36px}
  .top>.top-actions{order:3;margin-left:0;margin-right:36px}
  .top>.top-menu-toggle{order:4}
}
@media(max-width:650px){
  .top>.banner{margin-right:12px}
  .top>.top-actions{margin-right:48px}
}


/* Estadísticas: aproximar el gráfico mensual a su composición observada. */
.statistics-income-monthly-card{box-sizing:border-box;height:452px;padding:26px 16px 22px}
.statistics-income-monthly-card>h2{margin:0 0 18px;color:#111;text-align:center;font:700 14px/18px Georgia,"Times New Roman",serif}
.statistics-income-chart-layout{display:grid;grid-template-columns:45px minmax(0,1fr);align-items:start}
.statistics-income-y-axis{display:flex;height:278px;flex-direction:column;justify-content:space-between;align-items:flex-end;padding-right:8px;color:#555;font:12px/14px Georgia,"Times New Roman",serif;white-space:nowrap}
.statistics-income-bars{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:stretch;gap:0;height:278px;min-height:0;padding:0;border:0;border-left:1px solid #aaa;border-bottom:1px solid #aaa;background:repeating-linear-gradient(to bottom,#fff 0,#fff calc(16.666667% - 1px),#d9d9d9 calc(16.666667% - 1px),#d9d9d9 16.666667%)}
.statistics-income-month{position:relative;display:flex;height:278px;flex-direction:column;justify-content:flex-end;align-items:center;gap:0;color:#555;font:12px/14px Georgia,"Times New Roman",serif}
.statistics-income-month>span{position:absolute;top:calc(100% + 5px);left:50%;transform:translateX(-50%);white-space:nowrap}
.statistics-income-pair{display:flex;width:100%;height:100%;align-items:flex-end;justify-content:center;gap:4px}
.statistics-income-bar{width:min(18px,30%);min-height:0;border-radius:0}
.statistics-income-monthly-card>.statistics-chart-legend{justify-content:center;margin-top:60px}
@media(max-width:700px){.statistics-income-monthly-card{height:430px;padding:20px 12px}.statistics-income-monthly-card>h2{margin-bottom:14px}.statistics-income-chart-layout{grid-template-columns:38px minmax(760px,1fr);overflow-x:auto}.statistics-income-y-axis,.statistics-income-month,.statistics-income-bars{height:230px}.statistics-income-monthly-card>.statistics-chart-legend{margin-top:52px}}

.statistics-income-secondary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0 12px}
.statistics-income-secondary-grid>.statistics-chart-card{box-sizing:border-box;min-width:0;margin:0;padding:16px}
.statistics-income-secondary-grid .statistics-cumulative-chart,.statistics-income-secondary-grid .statistics-monthly-invoice-chart{min-height:0}
.statistics-income-secondary-grid .statistics-cumulative-chart svg,.statistics-income-secondary-grid .statistics-monthly-invoice-chart svg{display:block;width:100%;height:auto;min-height:0}
.statistics-chart-title{fill:#111;font-family:Roboto,Arial,sans-serif;font-size:13.5px;font-weight:600}
.statistics-chart-axis-label{fill:#616161;font-family:Roboto,Arial,sans-serif;font-size:10px}
.statistics-chart-caption{fill:#616161;font-family:Roboto,Arial,sans-serif;font-size:11.8px}
@media(max-width:700px){.statistics-income-secondary-grid{grid-template-columns:minmax(0,1fr)}.statistics-income-secondary-grid>.statistics-chart-card{min-height:330px}.statistics-income-secondary-grid .statistics-cumulative-chart svg,.statistics-income-secondary-grid .statistics-monthly-invoice-chart svg{min-height:260px}}

.clinical-session-attachment-editor{box-sizing:border-box;width:min(720px,calc(100vw - 28px));max-width:calc(100vw - 28px);max-height:calc(100dvh - 28px);overflow:auto;padding:18px;border:1px solid #dce3e4;border-radius:6px;background:#fff;color:#344d55;box-shadow:0 14px 48px #102a3340}
#person-profile-attachment-editor{height:min(560px,calc(100dvh - 28px))}
.clinical-session-attachment-editor::backdrop{background:#152a3166}
.clinical-session-attachment-editor>.form-note{margin:10px 0;color:#718186;font-size:12px}
.clinical-session-attachment-editor>label:not(.clinical-session-attachment-file-picker){display:grid;gap:5px;margin:12px 0;color:#52676d;font-size:13px}
.clinical-session-attachment-editor>label input,.clinical-session-attachment-editor>label textarea{box-sizing:border-box;width:100%;padding:8px 10px;border:1px solid #d6e0e1;border-radius:4px;font:inherit;font-size:14px}
.clinical-session-attachment-file-picker{position:relative;display:flex;min-height:40px;align-items:center;justify-content:center;margin:12px 0;padding:8px;border:1px dashed #9db6b8;border-radius:5px;background:#f7fafa;color:#426166;font-size:13px;cursor:pointer}
.clinical-session-attachment-file-picker:focus-within{outline:2px solid #245f65;outline-offset:2px}
.clinical-session-attachment-file-picker input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.clinical-session-attachment-draft-preview{display:grid;gap:8px;margin:14px 0;padding:10px;border:1px solid #e0e8e9;border-radius:5px;color:#66777b;font-size:12px}
.clinical-session-attachment-draft-preview>div{display:grid;min-height:160px;place-items:center;overflow:auto;background:#f7f9f9}
.clinical-session-attachment-draft-preview img{display:block;max-width:100%;max-height:280px;object-fit:contain}
.clinical-session-attachment-draft-preview iframe{display:block;width:100%;height:280px;border:0;background:#fff}
.clinical-session-attachment-editor .cash-dialog-actions{justify-content:flex-end}
.clinical-session-attachment-description{margin:0;color:#52676d;font-size:12px;overflow-wrap:anywhere}
.clinical-session-attachment-preview-dialog::backdrop{background:#152a3166}
.clinical-session-attachment-preview-dialog .expense-attachment-preview-media img{max-height:min(620px,calc(100dvh - 170px))}
.clinical-session-attachment-preview-dialog .expense-attachment-preview-pdf{height:min(620px,calc(100dvh - 170px))}
@media(max-width:560px){.clinical-session-attachment-editor{width:calc(100vw - 20px);max-width:calc(100vw - 20px);padding:14px}.clinical-session-attachment-draft-preview iframe{height:48vh}}

/* Lista de espera: disposición compacta observada en el formulario de ByClinics. */
.waiting-list-form-content{gap:10px;padding:12px}
.waiting-list-form-content>section{gap:8px 10px;padding:8px 12px}
.waiting-list-form-content>section:nth-child(1){grid-template-columns:125px repeat(2,minmax(0,1fr))}
.waiting-list-form-content>section:nth-child(1)>h3,.waiting-list-form-content>section:nth-child(2)>h3{grid-column:1;grid-row:1/3}
.waiting-list-form-content>section:nth-child(1)>label[for="waiting-list-person-search"]{grid-column:2;grid-row:1}
.waiting-list-form-content>section:nth-child(1)>#waiting-list-person-search{grid-column:2;grid-row:2}
.waiting-list-form-content>section:nth-child(1)>label[for="waiting-list-phone"]{grid-column:3;grid-row:1}
.waiting-list-form-content>section:nth-child(1)>#waiting-list-phone{grid-column:3;grid-row:2}
.waiting-list-form-content>section:nth-child(2)>label[for="waiting-list-specialty"],.waiting-list-form-content>section:nth-child(2)>label[for="waiting-list-service"],.waiting-list-form-content>section:nth-child(2)>label[for="waiting-list-professional"]{grid-row:1}
.waiting-list-form-content>section:nth-child(2)>#waiting-list-specialty,.waiting-list-form-content>section:nth-child(2)>#waiting-list-service,.waiting-list-form-content>section:nth-child(2)>#waiting-list-professional{grid-row:2}
.waiting-list-form-content>section:nth-child(2)>label[for="waiting-list-specialty"],.waiting-list-form-content>section:nth-child(2)>#waiting-list-specialty{grid-column:2}
.waiting-list-form-content>section:nth-child(2)>label[for="waiting-list-service"],.waiting-list-form-content>section:nth-child(2)>#waiting-list-service{grid-column:3}
.waiting-list-form-content>section:nth-child(2)>label[for="waiting-list-professional"],.waiting-list-form-content>section:nth-child(2)>#waiting-list-professional{grid-column:4}
.waiting-list-form-content>section:nth-child(3){grid-template-columns:125px repeat(2,minmax(0,1fr))}
.waiting-list-form-content>section:nth-child(3)>h3{grid-column:1;grid-row:1/3}
.waiting-list-form-content>section:nth-child(3)>.waiting-list-inline-fields{grid-column:2/4;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.waiting-list-form-content>section:nth-child(3)>.waiting-list-inline-fields:first-of-type{grid-row:1}
.waiting-list-form-content>section:nth-child(3)>.waiting-list-inline-fields:last-of-type{grid-row:2}
.waiting-list-form-content>section:nth-child(4){grid-template-columns:125px repeat(2,minmax(0,1fr))}
.waiting-list-form-content>section:nth-child(4)>h3{grid-column:1;grid-row:1}
.waiting-list-form-content>section:nth-child(4)>label:nth-of-type(1){grid-column:2;grid-row:1}
.waiting-list-form-content>section:nth-child(4)>label:nth-of-type(2){grid-column:3;grid-row:1}
.waiting-list-form-dialog form>footer{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:0 14px 14px}
.waiting-list-form-notice{margin:0;padding:0;color:#6f8589;font-size:10px}
#waiting-list-error:empty{display:none}
@media(max-width:650px){.waiting-list-form-content>section,.waiting-list-form-content>section:nth-child(1),.waiting-list-form-content>section:nth-child(2),.waiting-list-form-content>section:nth-child(3),.waiting-list-form-content>section:nth-child(4){grid-template-columns:1fr}.waiting-list-form-content>section>h3,.waiting-list-form-content>section:nth-child(1)>h3,.waiting-list-form-content>section:nth-child(2)>h3,.waiting-list-form-content>section:nth-child(3)>h3,.waiting-list-form-content>section:nth-child(4)>h3{grid-column:1;grid-row:auto}.waiting-list-form-content>section>label,.waiting-list-form-content>section>input,.waiting-list-form-content>section>select,.waiting-list-form-content>section:nth-child(3)>.waiting-list-inline-fields{grid-column:1;grid-row:auto}.waiting-list-form-content>section:nth-child(1)>label[for="waiting-list-phone"],.waiting-list-form-content>section:nth-child(2)>label[for="waiting-list-service"],.waiting-list-form-content>section:nth-child(2)>label[for="waiting-list-professional"],.waiting-list-form-content>section:nth-child(2)>#waiting-list-service,.waiting-list-form-content>section:nth-child(2)>#waiting-list-professional,.waiting-list-form-content>section:nth-child(4)>label:nth-of-type(2){grid-column:1;grid-row:auto}.waiting-list-form-dialog form>footer{grid-template-columns:1fr auto auto;align-items:start}.waiting-list-form-notice{grid-column:1/-1}}
.waiting-list-form-content>section:nth-child(1)>h3,.waiting-list-form-content>section:nth-child(2)>h3{grid-row:1;align-self:center}
.waiting-list-form-content>section:nth-child(1)>label,.waiting-list-form-content>section:nth-child(2)>label{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.waiting-list-form-content>section:nth-child(1)>#waiting-list-person-search,.waiting-list-form-content>section:nth-child(1)>#waiting-list-phone{grid-row:1;align-self:center}
.waiting-list-form-content>section:nth-child(2)>#waiting-list-specialty,.waiting-list-form-content>section:nth-child(2)>#waiting-list-service,.waiting-list-form-content>section:nth-child(2)>#waiting-list-professional{grid-row:1;align-self:center}
@media(max-width:650px){.waiting-list-form-content>section:nth-child(1)>label,.waiting-list-form-content>section:nth-child(2)>label{position:static;width:auto;height:auto;margin:0;overflow:visible;clip-path:none;white-space:normal}.waiting-list-form-content>section:nth-child(1)>#waiting-list-person-search,.waiting-list-form-content>section:nth-child(1)>#waiting-list-phone,.waiting-list-form-content>section:nth-child(2)>#waiting-list-specialty,.waiting-list-form-content>section:nth-child(2)>#waiting-list-service,.waiting-list-form-content>section:nth-child(2)>#waiting-list-professional{grid-row:auto}}
.waiting-list-form-content{gap:7px}
.waiting-list-form-content>section{padding-right:14px;padding-left:14px}
.waiting-list-form-content>section:nth-child(1){grid-template-columns:141px minmax(0,2fr) minmax(0,1fr);column-gap:14px}
.waiting-list-form-content>section:nth-child(2){grid-template-columns:141px minmax(0,1fr) minmax(0,2fr) minmax(0,1fr);column-gap:14px}
.waiting-list-form-content>section:nth-child(3){grid-template-columns:141px minmax(0,1fr) minmax(0,1fr);column-gap:14px}
.waiting-list-form-content>section:nth-child(4){grid-template-columns:141px minmax(0,1fr);column-gap:14px}
.waiting-list-form-content>section:nth-child(3)>.waiting-list-inline-fields{max-width:450px;min-height:55px;grid-template-columns:repeat(2,minmax(0,220px));gap:10px}
.waiting-list-form-content>section:nth-child(3)>.waiting-list-inline-fields label,.waiting-list-form-content>section:nth-child(4)>label{font-size:0;gap:0}
.waiting-list-form-content>section:nth-child(3)>.waiting-list-inline-fields input,.waiting-list-form-content>section:nth-child(3)>.waiting-list-inline-fields select,.waiting-list-form-content>section:nth-child(4)>label input,.waiting-list-form-content>section:nth-child(4)>label textarea{font-size:12px}
.waiting-list-form-content>section:nth-child(4)>h3{grid-row:1/3}
.waiting-list-form-content>section:nth-child(4)>label:nth-of-type(1){grid-column:2;grid-row:1}
.waiting-list-form-content>section:nth-child(4)>label:nth-of-type(2){grid-column:2;grid-row:2}
.waiting-list-form-content>section:nth-child(4)>label textarea{min-height:50px}
@media(max-width:650px){.waiting-list-form-content>section:nth-child(1),.waiting-list-form-content>section:nth-child(2),.waiting-list-form-content>section:nth-child(3),.waiting-list-form-content>section:nth-child(4){grid-template-columns:1fr}.waiting-list-form-content>section:nth-child(3)>.waiting-list-inline-fields{max-width:none;min-height:0;grid-template-columns:repeat(2,minmax(0,1fr))}.waiting-list-form-content>section:nth-child(3)>.waiting-list-inline-fields label,.waiting-list-form-content>section:nth-child(4)>label{font-size:10px;gap:4px}.waiting-list-form-content>section:nth-child(4)>h3{grid-row:auto}.waiting-list-form-content>section:nth-child(4)>label:nth-of-type(1),.waiting-list-form-content>section:nth-child(4)>label:nth-of-type(2){grid-column:1;grid-row:auto}}
.waiting-list-form-content{gap:0;padding:15px 12px 0}
.waiting-list-form-content>section{margin:0;padding:0 14px}
.waiting-list-form-content>section:nth-child(1),.waiting-list-form-content>section:nth-child(2){height:56px;grid-template-rows:56px}
.waiting-list-form-content>section:nth-child(3){height:112px;margin-top:12px;padding:0 14px;grid-template-rows:56px 56px}
.waiting-list-form-content>section:nth-child(3)>h3{grid-row:1/3}
.waiting-list-form-content>section:nth-child(3)>.waiting-list-inline-fields{height:56px;min-height:56px;max-width:450px;grid-template-columns:repeat(2,minmax(0,220px));gap:10px;align-items:center}
.waiting-list-form-content>section:nth-child(3)>.waiting-list-inline-fields label{height:32px;align-items:center}
.waiting-list-form-content>section:nth-child(3)>.waiting-list-inline-fields input,.waiting-list-form-content>section:nth-child(3)>.waiting-list-inline-fields select{height:32px;min-height:32px}
.waiting-list-form-content>section:nth-child(4){height:112px;padding:10px 14px;grid-template-columns:141px minmax(0,1fr);grid-template-rows:34px 50px;row-gap:8px}
.waiting-list-form-content>section:nth-child(4)>h3{grid-row:1/3}
.waiting-list-form-content>section:nth-child(4)>label:nth-of-type(1){grid-column:2;grid-row:1}
.waiting-list-form-content>section:nth-child(4)>label:nth-of-type(2){grid-column:2;grid-row:2}
.waiting-list-form-content>section:nth-child(4)>label input,.waiting-list-form-content>section:nth-child(4)>label textarea{height:100%;min-height:0}
.waiting-list-form-dialog form>footer{padding:16px 14px 13px}
@media(max-width:650px){.waiting-list-form-content{gap:10px;padding:12px}.waiting-list-form-content>section,.waiting-list-form-content>section:nth-child(1),.waiting-list-form-content>section:nth-child(2),.waiting-list-form-content>section:nth-child(3),.waiting-list-form-content>section:nth-child(4){height:auto;margin:0;padding:8px 12px;grid-template-columns:1fr;grid-template-rows:auto}.waiting-list-form-content>section:nth-child(1)>h3,.waiting-list-form-content>section:nth-child(2)>h3,.waiting-list-form-content>section:nth-child(3)>h3,.waiting-list-form-content>section:nth-child(4)>h3{grid-column:1;grid-row:auto}.waiting-list-form-content>section:nth-child(3)>.waiting-list-inline-fields{height:auto;min-height:0;max-width:none;grid-column:1;grid-row:auto;grid-template-columns:repeat(2,minmax(0,1fr))}.waiting-list-form-content>section:nth-child(4)>label:nth-of-type(1),.waiting-list-form-content>section:nth-child(4)>label:nth-of-type(2){grid-column:1;grid-row:auto}.waiting-list-form-dialog form>footer{padding:12px 14px 14px}}
@media(max-width:1100px){.appointment-person-control{width:100%;grid-template-columns:minmax(0,1fr) 30px}.appointment-person-picker{width:100%;min-width:0}.appointment-person-popup{width:min(384px,calc(100vw - 32px))}}
.appointment-person-control{transform:translate(-.6px,-1.4px)}.appointment-person-help{width:calc(100% + 12px);margin-left:-6px}
.document-templates-active{max-width:1200px;margin:0 auto}.document-template-catalog,.document-template-editor{background:#fff;border:1px solid #d6e3e5;border-radius:9px;box-shadow:0 2px 8px #24414b0b;padding:20px}.document-template-catalog-heading{display:flex;align-items:center;gap:12px;border-bottom:1px solid #dce7e8;margin:-2px 0 0;padding:0 0 14px}.document-template-catalog-heading h2{font-size:16px;margin:0;color:#344c58}.document-template-catalog-heading>span{display:inline-flex;min-width:23px;height:23px;align-items:center;justify-content:center;border-radius:13px;background:#e7f2f2;color:#28767b;font-weight:600}.document-template-table-wrap{overflow:auto}.document-template-table{width:100%;border-collapse:collapse;font-size:13px}.document-template-table th{text-align:left;color:#657983;font-size:11px;font-weight:600;padding:12px 10px;border-bottom:1px solid #dce7e8}.document-template-table td{padding:13px 10px;border-bottom:1px solid #edf1f2;vertical-align:middle}.document-template-table td:nth-child(2){min-width:300px}.document-template-table td:nth-child(2) strong,.document-template-table td:nth-child(2) small{display:block}.document-template-table td:nth-child(2) small{color:#74848c;margin-top:5px}.document-template-row-actions{white-space:nowrap}.document-template-row-actions button{width:30px;height:30px;margin-right:5px;border:1px solid #d7e4e5;border-radius:5px;background:#fff;color:#26737a;cursor:pointer}.document-template-editor{display:grid;gap:16px;max-width:1000px}.document-template-editor>label,.document-template-metadata>label{display:grid;gap:6px;color:#415661;font-weight:500}.document-template-editor input:not([type=checkbox]),.document-template-editor select,.document-template-editor textarea{width:100%;border:1px solid #cbd9dc;border-radius:5px;padding:9px 10px;color:#263740;font:inherit;background:#fff}.document-template-editor textarea{resize:vertical;line-height:1.55}.document-template-metadata{display:grid;grid-template-columns:minmax(200px,1fr) minmax(240px,1.5fr) 180px;gap:14px}.document-template-signers{display:flex;flex-wrap:wrap;gap:14px;border:1px solid #dce7e8;border-radius:6px;padding:12px 14px}.document-template-signers legend{padding:0 5px;color:#415661}.document-template-signers label{display:flex;align-items:center;gap:6px}.document-template-merge-fields{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.document-template-merge-fields strong{width:100%;margin-bottom:3px;color:#415661}.document-template-merge-fields button{border:1px solid #cbdcde;border-radius:4px;background:#f8fbfb;color:#377c80;padding:5px 8px;cursor:pointer}.document-template-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid #e3ebec;padding-top:14px}.document-template-actions button{min-height:34px;padding:0 14px;border:1px solid #d0dddd;border-radius:5px;background:white;color:#435963;cursor:pointer}.document-template-actions button.save{background:#16869a;border-color:#16869a;color:#fff}.document-template-status{min-height:18px;color:#327879;font-size:12px;margin:8px 0}.document-templates-active .configuration-heading,.document-templates-active .configuration-tabs{display:none}
@media(max-width:700px){.document-templates-active{max-width:none}.document-template-catalog,.document-template-editor{padding:14px}.document-template-metadata{grid-template-columns:1fr}.document-template-table td:nth-child(2){min-width:220px}.document-template-table th,.document-template-table td{padding:10px 8px}}

.person-signature-rendered-preview{max-width:850px}.person-signature-rendered-preview .report-layout-paper{max-width:850px}.person-signature-live-preview{width:100%}

#person-signature-print-area{display:none}.person-signature-print{margin-top:8px;padding:8px 12px;border:1px solid #cbd9dc;border-radius:5px;background:#f8fbfb;color:#28767b;cursor:pointer}@media print{@page{margin:14mm}body.printing-signature-document *{visibility:hidden!important}body.printing-signature-document #person-signature-print-area,body.printing-signature-document #person-signature-print-area *{visibility:visible!important}body.printing-signature-document #person-signature-print-area{position:static!important;display:block!important;width:auto!important;max-width:none!important;overflow:visible!important;margin:0!important;padding:0!important;background:#fff!important;color:#24343a!important}body.printing-signature-document #person-signature-print-area.report-layout-paper{min-height:0!important;border:0!important;border-top:4px solid var(--report-accent,#1d9e75)!important;border-radius:0!important;box-shadow:none!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}body.printing-signature-document .report-layout-header,body.printing-signature-document .report-layout-custom-footer,body.printing-signature-document .report-layout-footer{break-inside:avoid}body.printing-signature-document .report-layout-watermark{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

.clinical-session-print-document header{border-bottom-color:var(--clinical-print-accent,#619fa3)}.clinical-session-print-logo{display:inline-flex;align-items:center;justify-content:center;height:40px;max-width:40%;object-fit:contain;border:1px dashed #b8c8ca;color:#73878c;font-size:8pt}.clinical-session-print-custom-footer{margin:10px 0 0;padding-top:7px;border-top:1px solid #e5ebec;color:#718187;font-size:8pt;text-align:center}.clinical-session-print-settings-preview .clinical-session-print-document{box-sizing:border-box;width:min(100%,560px);min-height:0;margin:0 auto;aspect-ratio:210/297;padding:14mm;background:#fff}.clinical-session-print-settings-preview .clinical-session-print-document.is-landscape{width:100%;aspect-ratio:297/210}.clinical-session-print-settings-preview .clinical-session-print-document header{display:flex;align-items:center;gap:12px}.clinical-session-print-settings-preview .clinical-print-page-size{display:block;margin:0 auto 7px;color:#718187;font-size:11px;text-align:center}

@media(max-width:1100px){.workspace.rail-expanded .rail,.workspace:not(.rail-expanded) .rail{top:var(--clinic-chrome-height);height:min(477px,calc(100dvh - var(--clinic-chrome-height)));max-height:calc(100dvh - var(--clinic-chrome-height))}.workspace.rail-mobile-open::before{inset:var(--clinic-chrome-height) 0 0}}

.cash-statistics-close-title{margin:4px 4px 0;color:#405860;font-size:14px;font-weight:600}
@media(max-width:640px){.cash-statistics-close-title{margin-top:2px}}

.demo-status-banner{gap:9px;padding:0 8px 0 20px}
.demo-status-banner[hidden]{display:none}
.demo-status-icon{flex:none;color:#805f0c;font-size:15px;line-height:1}
.demo-status-message{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.demo-status-actions{display:flex;flex:none;align-items:center;gap:10px}
.demo-status-actions button{min-height:30px;padding:0 4px;border:0;background:transparent;color:#805f0c;font:600 13px/18px "Helvetica Neue",Helvetica,Arial,sans-serif;white-space:nowrap;cursor:pointer}
.demo-status-actions #demo-banner-account{text-decoration:underline;text-underline-offset:2px}
.demo-status-actions #demo-banner-reserve{padding:0 14px;border-radius:17px;background:#896300;color:#fff;font-weight:700}
.demo-status-actions #demo-banner-reserve:hover{background:#745300}
.demo-status-actions #demo-banner-close{width:24px;min-width:24px;margin-left:2px;padding:0;color:#856500;font-size:21px;font-weight:400}
.demo-status-actions button:focus-visible{outline:2px solid #6f580e;outline-offset:1px}
@media(max-width:680px){.demo-status-banner{gap:5px;padding:0 6px 0 9px;font-size:11px}.demo-status-icon{font-size:13px}.demo-status-actions{gap:4px}.demo-status-actions button{padding:0 2px;font-size:10px}.demo-status-actions #demo-banner-reserve{padding:0 8px}.demo-status-actions #demo-banner-close{width:22px;min-width:22px;margin-left:0}}

.shift-type-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 8px}.shift-type-section-head p{margin:0;color:#718187;font-size:12px;line-height:1.45}.shift-type-section-head button{flex:0 0 auto;min-height:32px;padding:0 10px;border:1px solid #d6e1e2;border-radius:5px;background:#fff;color:#43575e}.shift-type-form[hidden]{display:none}.shift-type-form{margin:14px 0;padding:12px;border:1px solid #dfe7e8;border-radius:6px;background:#fbfdfd}.shift-type-form h3{grid-column:1/-1}.shift-type-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.shift-type-form-grid input[type=color]{height:38px;padding:3px}.shift-type-day-off{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px!important;margin:0 0 8px!important}.shift-type-day-off input{width:auto!important;margin:0;accent-color:#619fa3}.shift-type-swatch{width:20px;height:20px;flex:0 0 20px;border:1px solid #00000018;border-radius:4px;margin-left:0!important}.shift-cycle-item .shift-type-detail{margin-left:0;color:#718187;font-size:12px}.shift-type-actions{display:flex;gap:6px;margin-left:auto}.shift-type-actions button{min-width:60px}.shift-type-actions button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:620px){.shift-type-section-head{align-items:flex-start;flex-direction:column}.shift-type-form-grid{grid-template-columns:1fr}.shift-cycle-item .shift-type-detail{width:100%}.shift-type-actions{margin-left:0}}
.event.calendar-appointment .event-time-range-short{display:none}
@container calendar-appointment (max-width:96px){.event.calendar-appointment{padding:3px 4px 0}.event.calendar-appointment .event-status{height:15px;min-height:15px;padding:0;overflow:hidden}.event.calendar-appointment .event-status-chip{min-height:13px;padding:1px 4px;font-size:9px;line-height:10px}.event.calendar-appointment .event-meta{font-size:10px;line-height:12px}.event.calendar-appointment .event-icon{display:none}.event.calendar-appointment .event-row-time{overflow:hidden;white-space:nowrap}.event.calendar-appointment .event-time-range-full{display:none}.event.calendar-appointment .event-time-range-short{display:inline}.event.calendar-appointment .event-row-professional,.event.calendar-appointment .event-row-phone,.event.calendar-appointment .event-row-service,.event.calendar-appointment .event-row-room,.event.calendar-appointment .event-row-type{display:none}}
@container calendar-appointment (max-width:96px){.event.calendar-appointment{padding:1px 4px 0}.event.calendar-appointment .event-status{height:12px;min-height:12px}.event.calendar-appointment .event-status-chip{min-height:11px;padding:0 3px;font-size:9px;line-height:9px}.event.calendar-appointment .event-meta,.event.calendar-appointment .event-meta>span,.event.calendar-appointment .event-meta strong{font-size:10px;line-height:11px}}
@container calendar-appointment (max-width:96px){.event.calendar-appointment .event-row-professional,.event.calendar-appointment .event-row-phone,.event.calendar-appointment .event-row-service,.event.calendar-appointment .event-row-room,.event.calendar-appointment .event-row-type,.event.calendar-appointment .event-time-range-full{position:absolute!important;display:flex!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%);white-space:nowrap!important;border:0!important}}
/* Historial de novedades DEMO: lista variable con la misma paleta del panel. */
.configuration-news-history.has-news{height:auto;min-height:164px;flex:0 0 auto;padding:12px;background:#f5f9f9}
.configuration-news-list{display:grid;gap:10px}
.configuration-news-entry{box-sizing:border-box;padding:13px 16px;border:1px solid #d9e4e5;border-left:3px solid #5f9ea0;border-radius:4px;background:#fff;color:#344b52}
.configuration-news-entry-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0 0 7px;color:#687b82;font-size:12px;line-height:18px}
.configuration-news-entry-module{color:#3b6d6f;font-weight:700}
.configuration-news-entry-type{display:inline-flex;min-height:20px;align-items:center;padding:0 7px;border-radius:999px;background:#e9f4f4;color:#3b6d6f;font-size:11px;font-weight:700}
.configuration-news-entry-type.is-new{background:#e7f4ea;color:#287342}
.configuration-news-entry-type.is-fix{background:#fff3df;color:#936100}
.configuration-news-entry-date{margin-left:auto;font-variant-numeric:tabular-nums}
.configuration-news-entry-title{margin:0 0 4px;color:#263a43;font-size:15px;font-weight:700;line-height:20px}
.configuration-news-entry-summary{margin:0;color:#536b72;font-size:13px;line-height:18px}
.configuration-news-entry-plan{display:block;margin-top:7px;color:#7b8d92;font-size:11px;line-height:15px}
.configuration-news-clear{margin-top:10px;padding:6px 10px;border:1px solid #cdd8da;border-radius:4px;background:#fff;color:#3b6d6f;font:inherit;font-size:12px;cursor:pointer}
.configuration-news-clear:hover{border-color:#5f9ea0;background:#f7fbfb}
@media(max-width:680px){.configuration-news-history.has-news{padding:8px}.configuration-news-entry{padding:11px 12px}.configuration-news-entry-date{margin-left:0}}
.shift-toolbar>label{display:flex;align-items:center;gap:6px;white-space:nowrap;font-size:13px}.shift-toolbar>label select{max-width:190px;min-height:34px;padding:0 8px;border:1px solid #d8e1e3;border-radius:5px;background:#fff;color:#43575e;font:inherit}
.recurring-move-dialog{width:min(460px,calc(100vw - 28px));max-width:none;padding:20px;border:1px solid #dce5e6;border-radius:10px;box-shadow:0 18px 55px #18343b40;color:#34494f}.recurring-move-dialog::backdrop{background:#18343b66}.recurring-move-dialog form{display:grid;gap:12px}.recurring-move-dialog .dialog-head h2{margin:0;font-size:18px}.recurring-move-dialog p{margin:0;color:#60747a;font-size:13px}.recurring-move-options{display:grid;gap:7px}.recurring-move-options button,.recurring-move-dialog footer button{min-height:40px;padding:8px 12px;border:1px solid #d3dfe1;border-radius:5px;background:#fff;color:#405960;text-align:left;font:inherit;cursor:pointer}.recurring-move-options button:hover,.recurring-move-options button:focus-visible{border-color:#619fa3;background:#f1f8f8}.recurring-move-dialog footer{display:flex;justify-content:flex-end;padding-top:6px;border-top:1px solid #e5ebeb}.recurring-move-dialog footer button{min-height:34px;text-align:center}
.clock-summary-actions{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.clock-summary-actions #clock-break-toggle{border:1px solid #cedcde;background:#fff;color:#43666a}.clock-summary-actions #clock-break-toggle.is-paused{border-color:#d7b887;background:#fbf4e7;color:#755623}.clock-summary-actions button:focus-visible{outline:2px solid #175d61;outline-offset:2px}

/* Cotejo de Agenda a 1920×935 con la captura aportada de ByClinics. */
.top{background:#5f9ea0}
#demo-status-banner{background:#fff4d0}
.rail{background:#34444c}
.toolbar button.active{background:#5f9ea0}
.hours{background:#e7f4f1}
.day{background:repeating-linear-gradient(to bottom,transparent 0,transparent 39px,#ebebeb 39px,#ebebeb 40px,transparent 40px,transparent 79px,#ebebeb 79px,#ebebeb 80px),#f0f0f0}
.event{border-left-color:#b5d439}
@media (min-width:1700px){.agenda-toolbar{position:relative}.agenda-toolbar>.tools-center{position:absolute;left:calc(50% - 11px);top:50%;transform:translate(-50%,-50%)}.agenda-toolbar #today{width:38px;min-width:38px;padding-left:0;padding-right:0}}

/* Alturas de cabecera contrastadas con la captura de agenda a 1920×935. */
@media (min-width:1101px){
  :root{--clinic-chrome-height:71px}
  .top{height:28px}
  .demo-status-banner{height:43px;min-height:43px}
}

/* En móvil, conserva visible la acción de cita sobre el filtro lateral de agenda. */
@media(max-width:650px){
  .new-appointment{right:82px;width:48px;height:48px;min-width:48px;padding:0;border-radius:50%;display:grid;place-items:center;font-size:0;z-index:3}
  .new-appointment::before{content:"＋";font-size:22px;line-height:1}
}
@media(max-width:360px){
  .new-appointment{right:12px;bottom:80px}
}

/* Modo noche, con superficies y contraste propios del espacio de trabajo. */
body[data-theme="dark"]{color-scheme:dark;background:#1d2529;color:#e4ebed}
body[data-theme="dark"] .workspace,
body[data-theme="dark"] main,
body[data-theme="dark"] .agenda-area,
body[data-theme="dark"] .configuration-view,
body[data-theme="dark"] .people-view,
body[data-theme="dark"] .products-view,
body[data-theme="dark"] .entities-view,
body[data-theme="dark"] .users-view,
body[data-theme="dark"] .services-view,
body[data-theme="dark"] .centers-view,
body[data-theme="dark"] .staff-view,
body[data-theme="dark"] .support-view,
body[data-theme="dark"] .messages-view,
body[data-theme="dark"] .statistics-view,
body[data-theme="dark"] .billing-view,
body[data-theme="dark"] .marketing-view,
body[data-theme="dark"] .shift-view,
body[data-theme="dark"] .bonuses-view,
body[data-theme="dark"] .cash-register-view,
body[data-theme="dark"] .clock-view,
body[data-theme="dark"] .online-booking-view{background-color:#1d2529;color:#e4ebed}
body[data-theme="dark"] .toolbar,
body[data-theme="dark"] .grid-header,
body[data-theme="dark"] .people-tabs,
body[data-theme="dark"] .module-tabs,
body[data-theme="dark"] .product-form-tabs,
body[data-theme="dark"] .appointment-tabs,
body[data-theme="dark"] .people-toolbar,
body[data-theme="dark"] .products-toolbar,
body[data-theme="dark"] .entities-toolbar{background:#232d31;border-color:#3b484d;color:#d8e1e3}
body[data-theme="dark"] .day-heading,
body[data-theme="dark"] .week-number,
body[data-theme="dark"] .hour{color:#aebdc1}
body[data-theme="dark"] .day-heading strong{color:#e5edef}
body[data-theme="dark"] .hours{background:#26363a}
body[data-theme="dark"] .hour,
body[data-theme="dark"] .day-heading,
body[data-theme="dark"] .day{border-color:#3a484d}
body[data-theme="dark"] .day{background:repeating-linear-gradient(to bottom,transparent 0,transparent 39px,#303b40 39px,#303b40 40px,transparent 40px,transparent 79px,#354147 79px,#354147 80px),linear-gradient(to bottom,#252f33 0,#252f33 80px,#20292d 80px,#20292d 480px,#252f33 480px,#252f33 960px)}
body[data-theme="dark"] .event{background:#385969;color:#f0f5f6}
body[data-theme="dark"] .event span{background:#26363c;border-color:#566a70;color:#e5edef}
body[data-theme="dark"] :is(button:not(.save):not(.active):not(.selected),select,input:not([type="checkbox"]):not([type="radio"]),textarea){background-color:#293438;color:#e4ebed;border-color:#46565c}
body[data-theme="dark"] :is(button:not(.save):not(.active):not(.selected)):hover{background-color:#354247}
body[data-theme="dark"] :is(button.active,button.selected,[aria-pressed="true"]){color:#fff}
body[data-theme="dark"] :is(dialog,.appointment-dialog,.team-message-dialog,.support-ticket-dialog,.support-guided-tutorial,.calendar-settings-dialog){background:#232d31;color:#e4ebed;border-color:#46565c}
body[data-theme="dark"] dialog::backdrop{background:#071013b8}
body[data-theme="dark"] :is(table th,table td,.people-table th,.people-table td,.service-line th,.service-line td){border-color:#3b484d}
body[data-theme="dark"] :is(.list-item,.people-row,.product-row,.entity-row,.appointment-detail-trace,.detail-followups,.recurrence-controls,.recurrence-weekdays,.commission-simulator,.commission-notice){background-color:#263136;color:#dbe5e7;border-color:#3b484d}
body[data-theme="dark"] :is(.form-note,.people-count,.page-subtitle,.entity-page-subtitle,.people-toolbar,.products-toolbar,.entities-toolbar){color:#aebdc1}
body[data-theme="dark"] :is(.notice,.calendar-notice){background:#263439;color:#cfdddf;border-color:#3d5056}
body[data-theme="dark"] .calendar-group-filter{background:#202a2e;border-color:#3b484d;color:#dfe7e9}
body[data-theme="dark"] .calendar-group-filter strong{color:#e2ebed!important}
body[data-theme="dark"] .calendar-group-filter [aria-hidden="true"] span{color:#91a5aa!important}
body[data-theme="dark"] .calendar-mini-day{color:#d3dee0!important}
body[data-theme="dark"] .calendar-mini-day.outside-month{color:#78898e!important}
body[data-theme="dark"] .calendar-mini-day:not(.selected):hover{background:#354449}
body[data-theme="dark"] .calendar-mini-day.selected{background:#397d80;color:#fff}
body[data-theme="dark"] .list-view{background:#1d2529;color:#e4ebed}
body[data-theme="dark"] .appointment-list-table{color:#dfe7e9}
body[data-theme="dark"] .appointment-list-table thead th{background:#263136!important;color:#d7e1e3!important;border-color:#3b484d!important}
body[data-theme="dark"] .appointment-list-table tbody tr,
body[data-theme="dark"] .appointment-list-table tbody tr:nth-child(odd),
body[data-theme="dark"] .appointment-list-table tbody tr:nth-child(even){background:#202a2e;color:#dfe7e9}
body[data-theme="dark"] .appointment-list-table tbody tr:hover{background:#2b393e}
body[data-theme="dark"] .appointment-list-table td{background:#202a2e!important;color:inherit;border-color:#3b484d!important}
body[data-theme="dark"] .appointment-list-when-date,
body[data-theme="dark"] .appointment-list-when-duration,
body[data-theme="dark"] .appointment-list-contact{color:#aab9bd!important}
body[data-theme="dark"] .appointment-list-when-time{color:#e3ebed!important}
body[data-theme="dark"] .appointment-list-person-copy,
body[data-theme="dark"] .appointment-list-person-name-line{color:#e1e9eb!important}

/* Configuración · conserva la legibilidad del tema oscuro en sus portadas. */
body[data-theme="dark"] .configuration-view.configuration-overview .configuration-tabs{border-color:#3b484d}
body[data-theme="dark"] .configuration-view.configuration-overview .configuration-tabs button{background:#252f33;color:#aebdc1}
body[data-theme="dark"] .configuration-view.configuration-overview .configuration-tabs button.active{background:#1d2529;color:#8fd0d2}
body[data-theme="dark"] .configuration-overview-search{border-color:#46565c;background:#232d31;color:#aebdc1}
body[data-theme="dark"] .configuration-overview-search input{background:transparent;color:#e4ebed}
body[data-theme="dark"] .configuration-overview-search input::placeholder{color:#9babad}
body[data-theme="dark"] .configuration-view.configuration-overview .configuration-module-card{border-color:#3b484d;background:linear-gradient(145deg,#263136,#20292d);color:#dbe5e7;box-shadow:0 3px 12px #07101330}
body[data-theme="dark"] .configuration-view.configuration-overview .configuration-module-card-header,
body[data-theme="dark"] .configuration-view.configuration-overview .configuration-module-card-footer{border-color:#3b484d}
body[data-theme="dark"] .configuration-view.configuration-overview .configuration-module-card-description,
body[data-theme="dark"] .configuration-view.configuration-overview .configuration-module-card-footer{color:#b7c5c8}
body[data-theme="dark"] .configuration-view.configuration-overview .configuration-module-card-footer span:last-child{color:#62c5a8}
body[data-theme="dark"] .configuration-view.configuration-overview .configuration-module-card-title{background:#263b40;color:#a8dcde;border-color:#456166}
body[data-theme="dark"] .configuration-view.configuration-overview .configuration-module-card-icon:is(.is-users,.is-services,.is-centers,.is-building,.is-layers,.is-tag,.is-labels,.is-location,.is-event,.is-payment,.is-supplier,.is-certificate,.is-email,.is-activity,.is-notifications,.is-news){color:#43c7a4}
body[data-theme="dark"] .configuration-view.configuration-overview .configuration-module-empty{color:#b7c5c8}
body[data-theme="dark"] .configuration-view.configuration-account-active .configuration-account-intro,
body[data-theme="dark"] .configuration-view.configuration-account-active .configuration-account-plan,
body[data-theme="dark"] .configuration-view.configuration-account-active .configuration-account-preview,
body[data-theme="dark"] .configuration-view.configuration-account-active .configuration-account-card,
body[data-theme="dark"] .configuration-view.configuration-account-active .configuration-account-note{border-color:#3b484d;background:#232d31;color:#dbe5e7;box-shadow:none}
body[data-theme="dark"] .configuration-view.configuration-account-active :is(.configuration-account-intro h2,.configuration-account-plan h2,.configuration-account-preview h2,.configuration-account-card-header h3,.configuration-account-note h3){color:#e1e9eb}
body[data-theme="dark"] .configuration-view.configuration-account-active :is(.configuration-account-intro p,.configuration-account-plan p,.configuration-account-preview p,.configuration-account-card-body p,.configuration-account-note p,.configuration-account-capabilities li){color:#b7c5c8}
body[data-theme="dark"] .configuration-view.configuration-account-active .configuration-account-capabilities li{border-color:#3b484d}
body[data-theme="dark"] .configuration-email-page{color:#e4ebed}
body[data-theme="dark"] .configuration-email-card{border-color:#3b484d;background:#232d31;color:#dbe5e7;box-shadow:0 3px 12px #07101330}
body[data-theme="dark"] .configuration-email-header{border-color:#3b484d;background:#202a2e}
body[data-theme="dark"] .configuration-email-avatar{border-color:#46565c;background:#293438;color:#8fd0d2}
body[data-theme="dark"] .configuration-email-headtext h2{color:#e4ebed}
body[data-theme="dark"] .configuration-email-headtext p{color:#b7c5c8}
body[data-theme="dark"] .configuration-email-status{border-color:#8a6b35;background:#46371f;color:#f1c179}
body[data-theme="dark"] .configuration-email-back{border-color:#46565c;background:#293438;color:#e4ebed}
body[data-theme="dark"] .configuration-email-body{background:#1d2529}
body[data-theme="dark"] .configuration-email-label{color:#8fd0d2}
body[data-theme="dark"] .configuration-email-method{border-color:#3b484d;background:#263136;color:#e4ebed}
body[data-theme="dark"] .configuration-email-method:hover,
body[data-theme="dark"] .configuration-email-method.is-active{border-color:#5f9ea0;background:#2a3b3f}
body[data-theme="dark"] .configuration-email-method.is-active:not(.save):not(.active):not(.selected),
body[data-theme="dark"] .configuration-email-method:hover:not(.save):not(.active):not(.selected){border-color:#5f9ea0;background:#2a3b3f}
body[data-theme="dark"] .configuration-email-method-icon{background:#202a2e;color:#8fd0d2}
body[data-theme="dark"] .configuration-email-method.is-google .configuration-email-method-icon{color:#7eb1ff}
body[data-theme="dark"] .configuration-email-method.is-microsoft .configuration-email-method-icon{color:#7fa9ff}
body[data-theme="dark"] .configuration-email-method-copy>span{color:#b7c5c8}
body[data-theme="dark"] .configuration-email-explanation,
body[data-theme="dark"] .configuration-email-help{border-color:#3b484d;background:#263136;color:#d2dfe1}
body[data-theme="dark"] .configuration-email-help h3{color:#a8dcde}
body[data-theme="dark"] .configuration-email-notice,
body[data-theme="dark"] .configuration-email-action-status{color:#b7c5c8}
body[data-theme="dark"] .configuration-email-field{color:#c2d0d2}
body[data-theme="dark"] .configuration-email-field input{border-color:#46565c;background:#293438;color:#e4ebed}
body[data-theme="dark"] .configuration-email-actions button{border-color:#46565c;background:#293438;color:#e4ebed}
body[data-theme="dark"] .configuration-email-actions button.save{border-color:#107c81;background:#107c81;color:#fff}
body[data-theme="dark"] .configuration-email-demo-note{border-color:#65573b;background:#352f22;color:#e5d2a5}

/* Personas · lista, tarjetas y filtros en modo noche. */
body[data-theme="dark"] .people-view .people-tabs{border-color:#3b484d}
body[data-theme="dark"] .people-view .people-tabs button{border-color:transparent;background:#252f33;color:#b7c5c8}
body[data-theme="dark"] .people-view .people-tabs button.active{border-color:#5f9ea0;background:#202a2e;color:#8fd0d2}
body[data-theme="dark"] .people-view .people-toolbar{border-color:#3b484d;background:#232d31;color:#dbe5e7}
body[data-theme="dark"] .people-view .people-toolbar>button:not(.save):not(.active),
body[data-theme="dark"] .people-view .people-actions button{border-color:#46565c;background:#293438;color:#dbe5e7}
body[data-theme="dark"] #people-search{border-color:#46565c;background:#293438;color:#e4ebed}
body[data-theme="dark"] #people-search::placeholder{color:#9babad}
body[data-theme="dark"] #people-list-view #people-count{border:1px solid #46565c;background:#293438;color:#b7dfe0}
body[data-theme="dark"] .people-view .people-toolbar button.active{border-color:#5f9ea0;background:#2a3b3f;color:#a8dcde}
body[data-theme="dark"] .people-view .people-table{color:#dbe5e7}
body[data-theme="dark"] #people-table th{border-color:#3b484d;background:#263136;color:#c2d0d2}
body[data-theme="dark"] .people-view .people-table tbody tr,
body[data-theme="dark"] .people-view .people-table tbody tr:hover{background:#202a2e;color:#dbe5e7}
body[data-theme="dark"] .people-view .people-table tbody td{border-color:#3b484d;background:#202a2e;color:#dbe5e7}
body[data-theme="dark"] .people-view .people-identity small,
body[data-theme="dark"] .people-view .people-appointment-cell small{color:#aebdc1}
body[data-theme="dark"] #people-view .people-name-link{border-color:transparent;background:transparent;color:#e1e9eb}
body[data-theme="dark"] #people-view .people-name-link:hover{background:transparent;color:#8fd0d2}
body[data-theme="dark"] .people-view .people-avatar,
body[data-theme="dark"] .people-view .people-card-avatar{background:#263b40;color:#a8dcde}
body[data-theme="dark"] .people-view .people-table .people-icon-action{border-color:#46565c;background:#293438;color:#c2d0d2}
body[data-theme="dark"] .people-view .people-table .people-icon-action:hover{background:#35474b;color:#a8dcde}
body[data-theme="dark"] .people-view .people-table .people-icon-action-trash{color:#f09595}
body[data-theme="dark"] .people-view .person-card{border-color:#3b484d;background:#232d31;color:#dbe5e7;box-shadow:0 2px 8px #07101330}
body[data-theme="dark"] .people-view .person-card h3{color:#e1e9eb}
body[data-theme="dark"] .people-view .person-card small,
body[data-theme="dark"] .people-view .person-card p{color:#b7c5c8}
body[data-theme="dark"] .people-view .people-filter-panel{border-color:#46565c;background:#232d31;color:#dbe5e7}
body[data-theme="dark"] .people-view .people-filter-header{background:#386f73;color:#f1f7f7}
body[data-theme="dark"] .people-view .people-filter-body{background:#232d31;color:#dbe5e7}
body[data-theme="dark"] .people-view .people-filter-group h3,
body[data-theme="dark"] .people-view .people-filter-panel label,
body[data-theme="dark"] .people-view .people-filter-widget{color:#b7c5c8}
body[data-theme="dark"] .people-view .people-filter-panel label>span{color:#aebdc1}
body[data-theme="dark"] .people-view .people-filter-panel input:not([type=checkbox]),
body[data-theme="dark"] .people-view .people-filter-panel input.people-referrer-query,
body[data-theme="dark"] .people-view .people-filter-widget .people-filter-select{border-color:#46565c;background:#293438;color:#e4ebed}
body[data-theme="dark"] .people-view .people-filter-widget .people-filter-select>span{color:#b7c5c8}
body[data-theme="dark"] .people-view .people-filter-options,
body[data-theme="dark"] .people-view .people-filter-referrer .people-referrer-options{border-color:#46565c;background:#263136;color:#dbe5e7}
body[data-theme="dark"] .people-view .people-filter-option,
body[data-theme="dark"] .people-view .people-referrer-option{background:#263136;color:#dbe5e7!important}
body[data-theme="dark"] .people-view .people-filter-option:hover,
body[data-theme="dark"] .people-view .people-referrer-option:hover{background:#35474b;color:#e4ebed!important}
body[data-theme="dark"] .people-view .people-referrer-help{color:#e1e9eb}
body[data-theme="dark"] .people-view .people-referrer-title,
body[data-theme="dark"] .people-view .people-referrer-no-results,
body[data-theme="dark"] .people-view .people-referrer-example,
body[data-theme="dark"] .people-view .people-filter-empty-option{color:#aebdc1}
body[data-theme="dark"] .people-view .people-referrer-criteria span{border-color:#46565c;background:#293438;color:#c2d0d2}
body[data-theme="dark"] .people-view .people-filter-actions{border-color:#3b484d;background:#202a2e}

/* Facturación · contraste de listas y editor DEMO en modo noche. */
body[data-theme="dark"] .billing-view :is(.billing-period,.invoice-select-all,.pending-invoice-filters label,.pending-invoice-summary,.empty-state){color:#b7c5c8}
body[data-theme="dark"] .billing-view :is(.empty-state strong,.pending-invoice-summary strong){color:#e1e9eb}
body[data-theme="dark"] .billing-view .invoice-kpi :is(small,span){color:#b7c5c8}
body[data-theme="dark"] .billing-view .invoice-kpi strong{color:#e4ebed}
body[data-theme="dark"] .billing-view .invoice-editor h2{color:#e1e9eb}
body[data-theme="dark"] .billing-view .invoice-editor-meta{border-color:#3b484d;color:#b7c5c8}
body[data-theme="dark"] .billing-view .invoice-editor-meta strong{color:#e1e9eb}
body[data-theme="dark"] .billing-view .invoice-readiness{border-color:#65573b;background:#352f22;color:#e5d2a5}
body[data-theme="dark"] .billing-view .invoice-readiness strong{color:#f1c179}
body[data-theme="dark"] .billing-view .invoice-tabs{border-color:#3b484d}
body[data-theme="dark"] .billing-view .invoice-tabs button{border-color:transparent;background:#252f33;color:#b7c5c8}
body[data-theme="dark"] .billing-view .invoice-tabs button.active{border-color:#5f9ea0;background:#202a2e;color:#a8dcde}
body[data-theme="dark"] .billing-view .invoice-tabs button:disabled{color:#87979b}
body[data-theme="dark"] .billing-view .invoice-data-card,
body[data-theme="dark"] .billing-view .invoice-data-summary-card{border-color:#3b484d;background:#232d31;color:#dbe5e7;box-shadow:none}
body[data-theme="dark"] .billing-view .invoice-data-summary-card.recipient{background:#26332d}
body[data-theme="dark"] .billing-view :is(.invoice-data-card h3,.invoice-data-summary-card h3){color:#a8dcde}
body[data-theme="dark"] .billing-view .invoice-data-summary-card strong,
body[data-theme="dark"] .billing-view .invoice-data-summary-card #invoice-recipient-summary{color:#dbe5e7}
body[data-theme="dark"] .billing-view .invoice-data-card .invoice-recipient-notice{border-color:#3b484d;background:#263439;color:#c2d0d2}
body[data-theme="dark"] .billing-view .invoice-check-strip{border-color:#3b484d;background:#263136;color:#dbe5e7}
body[data-theme="dark"] .billing-view .invoice-check-strip-source{border-color:#3b5143;background:#25382e}
body[data-theme="dark"] .billing-view :is(.invoice-data-card .invoice-check-strip .invoice-check,.invoice-panel>label.invoice-check,.invoice-fields label){color:#c2d0d2}
body[data-theme="dark"] .billing-view .invoice-editor input[type="checkbox"]{accent-color:#5f9ea0;background-color:#293438}
body[data-theme="dark"] .billing-view .invoice-editor-head{border-color:#3b484d}
body[data-theme="dark"] .billing-view .invoice-editor-head small{color:#8fd0d2}
body[data-theme="dark"] .billing-view .invoice-editor-head p{color:#b7c5c8}
body[data-theme="dark"] .billing-view .invoice-panel>h3{border-color:#3b484d;color:#a8dcde}
body[data-theme="dark"] .billing-view .recurring-inline-check{color:#c2d0d2}
body[data-theme="dark"] .billing-view .invoice-line-picker label{color:#c2d0d2}
body[data-theme="dark"] .billing-view .invoice-line-list small{color:#b7c5c8}
body[data-theme="dark"] .billing-view .recurring-total-row{border:1px solid #3b484d;background:#263136;color:#c2d0d2}
body[data-theme="dark"] .billing-view .recurring-total-row output{color:#e4ebed}
body[data-theme="dark"] .billing-view .recurring-receipt-options label{border-color:#3b484d;background:#232d31;color:#dbe5e7}
body[data-theme="dark"] .billing-view .recurring-receipt-options label:has(input:checked){border-color:#5f9ea0;background:#26383b}
body[data-theme="dark"] .billing-view .recurring-receipt-options strong{color:#e1e9eb}
body[data-theme="dark"] .billing-view .recurring-receipt-options small{color:#b7c5c8}
body[data-theme="dark"] .billing-view .recurring-receipt-options input[type="radio"]{accent-color:#5f9ea0;background-color:#293438}
body[data-theme="dark"] .people-view .people-filter-actions button:not(.save){border-color:#46565c;background:#293438;color:#dbe5e7}
.marketing-notice-empty-table{width:100%;margin:0}.marketing-notice-empty-table td{text-align:left;color:#718187;font-weight:400}
.marketing-campaign-quotas .campaign-quota-item{display:grid;gap:4px}.marketing-campaign-quotas .campaign-quota-item strong{color:#566c72;font-size:12px}.marketing-campaign-quotas .campaign-quota-item span{color:#687a7f;font-size:12px;line-height:1.45}
body[data-theme="dark"] .marketing-campaign-quotas{border-color:#3b484d;background:#202a2e;color:#bdcacc}body[data-theme="dark"] .marketing-campaign-quotas .campaign-quota-item strong{color:#d5e0e2}body[data-theme="dark"] .marketing-campaign-quotas .campaign-quota-item span{color:#bdcacc}
.marketing-google-review-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.marketing-google-review-card{min-width:0;padding:20px;border:1px solid #dce5e6;border-radius:7px;background:#fff;box-shadow:0 2px 8px #203b4010}.marketing-google-review-card-heading{display:flex;align-items:center;gap:10px;margin-bottom:16px}.marketing-google-review-step{display:grid;width:27px;height:27px;place-items:center;border-radius:50%;background:#e8f2f2;color:#36777b;font-weight:700}.marketing-google-review-card-heading h3{margin:0;color:#425a61;font-size:16px}.marketing-google-review-card>p{color:#64777c;line-height:1.55}.marketing-google-review-card label{display:block;margin:16px 0 6px;color:#52686e;font-size:13px;font-weight:600}.marketing-google-review-card input{width:100%;height:38px;padding:0 10px;border:1px solid #cbd9dc;border-radius:4px;background:#fff;color:#34484e;font:inherit}.marketing-google-review-help{margin:8px 0;color:#7a898d;font-size:12px;line-height:1.5}.marketing-google-review-status{min-height:18px;margin:6px 0;color:#347a51;font-size:12px}.marketing-google-review-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.marketing-google-review-actions button{min-height:36px;padding:0 14px;border:1px solid #d6e1e2;border-radius:5px;background:#f8fafb;color:#43575e;font:inherit}.marketing-google-review-actions button.save{background:#168b8d;color:#fff}.marketing-google-review-actions button:disabled{cursor:not-allowed;opacity:.55}.marketing-google-review-material{display:flex;flex-direction:column}.marketing-google-review-preview{display:grid;flex:1;min-height:230px;place-content:center;gap:12px;margin-top:8px;border:1px dashed #cbd9dc;border-radius:5px;background:#f8fafb;color:#7a898d;text-align:center}.marketing-google-review-preview>span{font-size:10px;font-weight:700;letter-spacing:.06em}.marketing-google-review-preview>div{font-size:14px}@media(max-width:820px){.marketing-google-review-layout{grid-template-columns:1fr}.marketing-google-review-preview{min-height:170px}}body[data-theme="dark"] .marketing-google-review-card{border-color:#3d4b50;background:#252f33}body[data-theme="dark"] .marketing-google-review-card-heading h3{color:#d4e0e2}body[data-theme="dark"] .marketing-google-review-step{background:#2b4043;color:#a8dcde}body[data-theme="dark"] .marketing-google-review-card>p,body[data-theme="dark"] .marketing-google-review-card label{color:#c2d0d2}body[data-theme="dark"] .marketing-google-review-card input{border-color:#526267;background:#202a2e;color:#e1e9eb}body[data-theme="dark"] .marketing-google-review-help{color:#aab9bc}body[data-theme="dark"] .marketing-google-review-preview{border-color:#53656a;background:#202a2e;color:#aab9bc}body[data-theme="dark"] .marketing-google-review-actions button{border-color:#526267;background:#303c41;color:#d4e0e2}
