.visit-overlay{position:fixed;inset:0;background:rgba(23,26,39,.58);z-index:9999;display:flex;align-items:stretch;justify-content:center;padding:12px;backdrop-filter:blur(2px)}
.visit-card{--visit-line:#e2e5ec;--visit-muted:#7a7f8d;position:relative;background:#fff;width:min(1480px,99vw);height:calc(100vh - 24px);border-radius:15px;overflow:hidden;box-shadow:0 28px 90px rgba(15,19,36,.28);color:#30333b}
.visit-close{position:absolute;right:14px;top:12px;z-index:20;border:1px solid #dde0e7;background:#fff;width:34px;height:34px;border-radius:10px;font-size:22px;line-height:1;cursor:pointer;color:#4e5360}
.visit-close:hover{background:#f3f4f8}
.visit-grid{display:grid;grid-template-columns:292px minmax(520px,1fr) 405px;height:calc(100% - 68px);background:#fff}
.visit-left{background:#f5f7fa;padding:22px 20px;overflow:auto}
.visit-main{padding:30px 40px;overflow:auto;border-left:1px solid var(--visit-line);border-right:1px solid var(--visit-line)}
.visit-right{background:#fff;padding:25px 20px;overflow:auto}
.visit-person,.client-box{display:flex;gap:12px;align-items:center}
.visit-person{padding:13px;border-radius:14px;background:#e9edf3}
.visit-person strong,.client-box strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.visit-person span,.client-box span{display:block;color:var(--visit-muted);font-size:13px;margin-top:3px}
.visit-date{position:relative;font-size:15px;line-height:1.65;margin:15px 0;padding:12px 13px 12px 40px;border-radius:12px;background:#eef1f5}
.visit-date:before{content:'▣';position:absolute;left:14px;top:13px;color:#687080;font-size:18px}
.visit-label{display:block;color:#686d7c;font-size:13px;margin-top:23px}
.visit-label textarea{box-sizing:border-box;width:100%;min-height:116px;margin-top:8px;border:1px solid #d8dce5;border-radius:10px;padding:12px;background:#fff;resize:vertical;font:inherit;outline:none}
.visit-label textarea:focus,.clinical-form textarea:focus{border-color:#7d65e4;box-shadow:0 0 0 3px rgba(125,101,228,.12)}
.visit-side-actions,.mini-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px}
.visit-side-actions .secondary-btn{min-height:72px;white-space:normal;line-height:1.35;padding:10px}
.visit-statuses{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:29px}
.status-chip{border:1px solid transparent;border-radius:10px;padding:12px 15px;background:#edf0f4;color:#454a55;cursor:pointer;font-weight:600;transition:.16s ease}
.status-chip:hover{transform:translateY(-1px)}
.status-chip.wait:before{content:'◷ ';color:#e5a600}.status-chip.missed:before{content:'− ';color:#dd536c}.status-chip.approved:before{content:'✓ ';color:#6558e8}
.status-chip.wait.active{background:#484e58;color:#fff}.status-chip.arrived.active{background:#4a505a;color:#fff}.status-chip.missed.active{background:#ffe6ea;color:#b23c51;border-color:#f4bdc7}.status-chip.approved.active{background:#ebe9ff;color:#5544cf;border-color:#cbc5fb}
.visit-service{border:1px solid #dce0e8;border-radius:15px;padding:18px 20px;display:flex;justify-content:space-between;align-items:center;min-height:70px}
.visit-service small,.visit-service strong{display:block}.visit-service small{color:#878c99;margin-bottom:9px}.visit-service strong{font-size:17px}.visit-service>div:last-child{font-size:20px;font-weight:700}
.visit-pay{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:18px;margin:20px 0 30px}.visit-pay>span{color:#7e8390}.visit-pay strong{font-size:22px}.visit-pay .primary-btn{justify-self:end}
.visit-section{border-top:1px solid #eceef2;padding-top:22px;margin-top:24px}.visit-section h3{margin-top:0}
.tabs{display:flex;gap:26px;border-bottom:1px solid #e3e5eb;margin-bottom:20px}.tabs button{border:0;background:none;padding:0 7px 14px;font-size:16px;color:#686d79;cursor:pointer}.tabs .active{border-bottom:3px solid #f2c500;color:#272b34;font-weight:700}
.client-box{background:#e9edf3;border-radius:15px;padding:13px}.client-box .avatar{border-radius:10px;background:#dcd8ff;color:#6b5ad6}
.whatsapp-btn{margin:15px 0;border:0;background:#22cd66;color:#fff;padding:13px 18px;border-radius:12px;font-weight:800;cursor:pointer;letter-spacing:.01em}.whatsapp-btn:hover{background:#19b95a}
.visit-right>.mini-actions,.visit-right>div[style*="grid-template-columns"]{grid-template-columns:1fr 1fr!important;gap:9px!important;margin:13px 0 22px!important}
.visit-right>.mini-actions .secondary-btn,.visit-right>div[style*="grid-template-columns"] .secondary-btn{min-height:78px;white-space:normal;line-height:1.35}
.visit-right h4{font-size:17px;margin:28px 0 10px}.visit-right .list-item{padding-left:0;padding-right:0;background:transparent;border-radius:0}
.clinical-form{display:grid;gap:18px;margin-top:24px}.clinical-form label{display:grid;grid-template-columns:215px 1fr;gap:18px;align-items:start}.clinical-form label strong{text-align:right;padding-top:13px;color:#606570}.clinical-form textarea{min-height:105px;border:1px solid #dfe2e9;border-radius:9px;padding:13px;font:inherit;resize:vertical;outline:none}
.visit-footer{height:68px;border-top:1px solid #e5e7ed;display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:0 22px;background:#fff}.visit-footer .primary-btn{background:#ffe49a;color:#6a5410;border:1px solid #f3d77b}.visit-footer .primary-btn:hover{background:#ffdc74}
.client-profile-card{max-width:1380px!important}.client-profile-card .tabs{margin-bottom:0!important}.client-profile-card #cpBody{background:#f6f7fa}.client-profile-card .card{border-color:#e0e3ea;box-shadow:none}.client-profile-card .kpi{background:#fff}
@media(max-width:1180px){.visit-grid{grid-template-columns:240px minmax(450px,1fr) 330px}.visit-main{padding:26px}.visit-right{padding:22px 16px}}
@media(max-width:970px){.visit-grid{grid-template-columns:220px 1fr}.visit-right{display:none}.clinical-form label{grid-template-columns:170px 1fr}.visit-main{padding:22px}}
@media(max-width:720px){.visit-overlay{padding:0}.visit-card{width:100%;height:100vh;border-radius:0}.visit-grid{display:block;height:calc(100% - 64px);overflow:auto}.visit-left,.visit-main{overflow:visible;border:0}.visit-left{background:#f5f7fa}.visit-statuses{margin-top:0}.visit-pay{grid-template-columns:auto 1fr}.visit-pay .primary-btn{grid-column:1/-1;justify-self:stretch}.clinical-form label{grid-template-columns:1fr}.clinical-form label strong{text-align:left}.visit-footer{position:absolute;bottom:0;left:0;right:0}.visit-close{right:10px;top:9px}}

.clinical-head{position:sticky;top:-30px;z-index:5;display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:24px 0 16px;background:#fff;border-bottom:1px solid #eceef3}.clinical-head h2{margin:3px 0 5px}.clinical-head-actions{display:flex;align-items:center;gap:10px}.clinical-nav{position:sticky;top:80px;z-index:4;display:flex;gap:7px;flex-wrap:wrap;padding:12px 0;background:#fff}.clinical-nav button{border:1px solid #dddfea;background:#f7f7fb;color:#565b68;border-radius:999px;padding:8px 12px;cursor:pointer;font-weight:600}.clinical-nav button:hover{border-color:#7d65e4;color:#6048cf;background:#f4f1ff}.clinical-form label{scroll-margin-top:150px}.clinical-form textarea:not(:placeholder-shown){border-color:#b9e4d2;background:#fbfffd}@media(max-width:720px){.clinical-head{top:0}.clinical-head-actions{align-items:flex-end;flex-direction:column}.clinical-nav{top:96px;overflow-x:auto;flex-wrap:nowrap}.clinical-nav button{white-space:nowrap}}
