.appointment-stats{margin-bottom:24px}.appointment-table td{vertical-align:middle}.appointment-table td:first-child{min-width:290px}.appointment-table td:nth-child(2){min-width:170px}.appointment-table td:nth-child(3){min-width:175px}.appointment-table td>small,.appointment-phone{display:block;margin-top:5px;font-size:11px;color:var(--muted)}.appointment-phone{color:#087fa1;font-weight:700;text-decoration:none}.appointment-past{background:#fffaf2}.appointment-badge{display:inline-flex;align-items:center;padding:6px 9px;border-radius:6px;background:#edf3f5;color:#476572;font-size:10px;font-weight:800}.appointment-badge.planned{background:#eaf2fa;color:#306a9a}.appointment-badge.confirmed,.appointment-badge.part-ready,.appointment-badge.admitted{background:#e9f7e9;color:#2d753e}.appointment-badge.part-alert,.appointment-badge.missed{background:#fff1d5;color:#986315}.appointment-badge.cancelled{background:#eef1f2;color:#65767e}.appointment-reminder{width:100%;margin:0 0 22px;padding:16px 18px;border:1px solid #edcf87;border-left:4px solid #e2a62a;border-radius:9px;background:#fff9e9;color:var(--ink);display:flex;align-items:center;gap:13px;text-align:left;cursor:pointer}.appointment-reminder>svg:first-child{color:#b87508}.appointment-reminder>svg:last-child{margin-left:auto}.appointment-reminder span{display:grid;gap:3px}.appointment-reminder small{color:var(--muted)}.appointment-overlay{position:fixed;inset:0;z-index:85;background:#061b29b8;display:flex;align-items:flex-start;justify-content:center;padding:24px;overflow:auto}.appointment-modal{width:min(940px,100%);background:#fff;border-radius:14px;box-shadow:0 24px 70px #06192555;overflow:hidden}.appointment-modal>header{padding:22px 25px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.appointment-modal h2{font-size:26px;margin:4px 0}.appointment-modal header p{margin:0;color:var(--muted)}.appointment-modal form>fieldset{border:0;padding:22px 25px;margin:0;border-bottom:1px solid var(--line)}.appointment-modal legend{font-weight:900;padding:0}.appointment-modal legend span{margin-left:8px}.appointment-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}.appointment-form-grid .span-2{grid-column:1/-1}.appointment-form-grid label{margin:0}.appointment-form-grid textarea{resize:vertical;line-height:1.5}.appointment-history{margin:20px 25px;padding:14px 16px;border:1px solid var(--line);border-radius:9px}.appointment-history summary{font-weight:800;cursor:pointer}.appointment-history ol{list-style:none;padding:12px 0 0;margin:0;display:grid;gap:8px}.appointment-history li{padding:9px 11px;background:#f7f9f9;border-radius:7px;display:grid;grid-template-columns:1fr auto;gap:3px 12px}.appointment-history li span,.appointment-history li small{font-size:10px;color:var(--muted)}.appointment-history li small{grid-column:1/-1}.appointment-modal form>footer{display:flex;justify-content:flex-end;gap:9px;padding:17px 24px;background:#f8fafa;border-top:1px solid var(--line)}#appointment-error{min-height:18px;margin:12px 25px;color:#a43c31;font-size:12px}
@media(max-width:700px){.appointment-overlay{padding:0}.appointment-modal{min-height:100%;border-radius:0}.appointment-form-grid{grid-template-columns:1fr}.appointment-form-grid .span-2{grid-column:auto}.appointment-modal form>footer{align-items:stretch;flex-direction:column}.appointment-modal form>footer .button{width:100%}.appointment-table td:first-child,.appointment-table td:nth-child(2),.appointment-table td:nth-child(3){min-width:220px}}
.appointment-confirmation{margin:22px 25px;padding:18px;border:1px solid #bfd5df;border-radius:12px;background:#f4fafc}.appointment-confirmation header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:12px}.appointment-confirmation header div{display:grid;gap:3px}.appointment-confirmation header strong{color:var(--ink);font-size:15px}.appointment-confirmation header span{color:var(--muted);font-size:12px}.appointment-confirmation textarea{width:100%;min-height:190px;padding:14px;border:1px solid #cad9df;border-radius:9px;background:#fff;color:var(--ink);font:14px/1.55 inherit;resize:vertical}
.appointment-new-alert{display:flex;align-items:center;gap:13px;width:100%;margin:0 0 22px;padding:16px 18px;border:1px solid #efaca0;border-left:5px solid #d34832;border-radius:9px;background:#fff1ee;color:#7d281c;text-align:left}.appointment-new-alert>span{display:grid;gap:3px;flex:1}.appointment-new-alert small{color:#8e4d43}.appointment-new-alert>svg:last-child{margin-left:auto}.stat.urgent-attention{border-color:#e69b8e;background:#fff5f3}.stat.urgent-attention strong{color:#c43d29}.appointment-lead-new{background:#fff5f3!important;box-shadow:inset 5px 0 #d44832}.appointment-new-label{display:inline-flex;margin-top:8px;padding:4px 7px;border-radius:5px;background:#cf402d;color:#fff;font-size:9px;font-weight:900;letter-spacing:.07em}.appointment-badge.lead-new{background:#ffe1dc;color:#aa2f1e}.appointment-reminder.urgent{border-color:#efaa9d;border-left-color:#d34832;background:#fff2ef}.appointment-reminder.urgent>svg:first-child{color:#c53c28}.nav-item.has-attention b{background:#d34832;color:#fff;box-shadow:0 0 0 3px #d3483233}
@media(max-width:700px){.appointment-confirmation header{align-items:stretch;flex-direction:column}.appointment-confirmation header .button{justify-content:center}}
