.ecq-patient-auth,.ecq-patient-app{--p:#075fca;--ink:#172033;--muted:#687891;font-family:Inter,system-ui,sans-serif;color:var(--ink)}
.ecq-patient-auth{max-width:1100px;margin:40px auto;padding:20px}.ecq-auth-brand{text-align:center;margin-bottom:25px}.ecq-auth-brand i{font-size:48px;color:var(--p)}.ecq-auth-brand h1{margin:8px 0 0}.ecq-auth-brand p{color:var(--muted)}.ecq-auth-grid{display:grid;grid-template-columns:1fr 1.2fr;background:#fff;border-radius:26px;box-shadow:0 22px 65px #1e3a5f1c;overflow:hidden}.ecq-auth-grid section{padding:38px}.ecq-auth-grid section+section{background:#f4f8fd}.ecq-auth-grid label{display:block;font-weight:700;margin:12px 0}.ecq-auth-grid input{width:100%;box-sizing:border-box;border:1px solid #dbe5f0;border-radius:12px;padding:13px;margin-top:6px}.ecq-auth-grid button,.ecq-patient-app button{background:var(--p);color:#fff;border:0;border-radius:12px;padding:12px 18px;font-weight:800;cursor:pointer}.ecq-auth-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.ecq-auth-fields .full{grid-column:1/-1}.ecq-portal-alert{padding:13px 16px;border-radius:12px;margin:12px 0}.ecq-portal-alert.success{background:#e8f8ef;color:#12633c}.ecq-portal-alert.error,.ecq-portal-message.error{background:#fff0f0;color:#9b2222}.ecq-portal-message{padding:20px;border-radius:16px;background:#eef5ff}
.ecq-patient-app{display:grid;grid-template-columns:255px minmax(0,1fr);min-height:80vh;background:#f3f7fc;border-radius:24px;overflow:hidden;box-shadow:0 20px 70px #193b651c}.ecq-patient-sidebar{background:#092b54;color:#fff;padding:24px 16px;display:flex;flex-direction:column}.ecq-patient-brand{display:flex;gap:12px;align-items:center;padding:5px 8px 25px}.ecq-patient-brand i{font-size:28px}.ecq-patient-brand strong,.ecq-patient-brand span{display:block}.ecq-patient-brand span{font-size:12px;opacity:.7}.ecq-patient-sidebar nav{display:grid;gap:5px}.ecq-patient-sidebar nav a,.ecq-patient-logout{color:#d8e7f8;text-decoration:none;padding:11px 13px;border-radius:11px;display:flex;align-items:center;gap:11px}.ecq-patient-sidebar nav a.active,.ecq-patient-sidebar nav a:hover{background:#ffffff18;color:#fff}.ecq-patient-sidebar nav b{margin-left:auto;background:#ef4444;border-radius:99px;min-width:19px;text-align:center;font-size:11px}.ecq-patient-logout{margin-top:auto}.ecq-patient-main{padding:28px}.ecq-patient-main>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.ecq-patient-main>header h1{margin:0}.ecq-patient-main>header p{margin:5px 0;color:var(--muted)}.ecq-book-button{background:var(--p);color:#fff!important;text-decoration:none;padding:12px 16px;border-radius:12px;font-weight:800}.ecq-patient-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px}.ecq-patient-kpis article,.ecq-patient-card{background:#fff;border:1px solid #e5edf6;border-radius:18px;box-shadow:0 8px 24px #173d6610}.ecq-patient-kpis article{padding:18px}.ecq-patient-kpis i{float:right;color:var(--p);font-size:23px}.ecq-patient-kpis span,.ecq-patient-kpis strong{display:block}.ecq-patient-kpis span{font-size:12px;color:var(--muted)}.ecq-patient-kpis strong{font-size:24px;margin-top:10px}.ecq-patient-card{padding:22px;margin-bottom:18px}.ecq-patient-card h2{margin-top:0}.ecq-next-card{background:linear-gradient(135deg,#075fca,#0f8cc9);color:#fff;display:flex;justify-content:space-between;align-items:center}.ecq-next-card>div:last-child{text-align:right}.ecq-next-card strong,.ecq-next-card span{display:block}.ecq-next-card a{display:inline-block;margin-top:12px;background:#fff;color:#075fca;padding:9px 12px;border-radius:10px;text-decoration:none;font-weight:800}.ecq-list-row,.ecq-consent-row{display:flex;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid #edf2f7}.ecq-list-row>div{flex:1}.ecq-list-row small,.ecq-consent-row small,.ecq-treatment-row small,.ecq-invoice-card small{display:block;color:var(--muted)}.ecq-date-block{width:55px;min-width:55px;height:55px;border-radius:13px;background:#eef5ff;color:#075fca;display:grid;place-items:center;line-height:1}.ecq-date-block b{font-size:20px}.ecq-status{display:inline-flex;border-radius:99px;padding:5px 9px;font-size:11px;font-weight:800;background:#edf2f7}.ecq-status.completed,.ecq-status.paid,.ecq-status.approved{background:#e5f7ee;color:#137647}.ecq-status.serving,.ecq-status.partial{background:#fff3d9;color:#9b6500}.ecq-status.cancelled,.ecq-status.declined,.ecq-status.void{background:#ffe8e8;color:#a12a2a}.ecq-status.waiting,.ecq-status.checked_in,.ecq-status.booked,.ecq-status.pending{background:#e8f1ff;color:#145eae}.ecq-appointment-card{display:flex;justify-content:space-between;gap:15px;padding:17px 0;border-bottom:1px solid #edf2f7}.ecq-appointment-card>div:first-child{display:flex;gap:15px}.ecq-appointment-card h3{margin:4px 0}.ecq-appointment-card details{margin-top:10px}.ecq-appointment-card details form{display:grid;gap:7px;background:#f6f9fd;padding:12px;border-radius:12px}.ecq-appointment-card input,.ecq-appointment-card select,.ecq-appointment-card textarea,.ecq-profile-form input,.ecq-profile-form select,.ecq-profile-form textarea{border:1px solid #dbe5f0;border-radius:10px;padding:10px;width:100%;box-sizing:border-box}.ecq-live-queue-card{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;background:linear-gradient(135deg,#092b54,#075fca);color:#fff;border-radius:22px;padding:26px}.ecq-live-queue-card>div{text-align:center}.ecq-live-queue-card span,.ecq-live-queue-card strong{display:block}.ecq-live-queue-card strong{font-size:46px}.ecq-live-queue-card footer{grid-column:1/-1;border-top:1px solid #ffffff25;padding-top:15px;display:flex;justify-content:space-between}.ecq-refresh-note{text-align:center;color:var(--muted)}.ecq-treatment-row{display:grid;grid-template-columns:minmax(180px,1fr) 1fr 70px;gap:15px;align-items:center;padding:14px 0;border-bottom:1px solid #edf2f7}.ecq-progress{height:10px;background:#edf2f7;border-radius:99px;overflow:hidden}.ecq-progress i{display:block;height:100%;background:#16a36a}.ecq-medical-grid{display:grid;grid-template-columns:.85fr 1.4fr;gap:18px}.ecq-patient-card dl{display:grid;grid-template-columns:140px 1fr;gap:10px}.ecq-patient-card dt{font-weight:800}.ecq-medical-event{display:grid;grid-template-columns:100px 1fr;gap:14px;padding:14px 0;border-bottom:1px solid #edf2f7}.ecq-medical-event small{display:block;color:var(--muted)}.ecq-document-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.ecq-document-grid article{border:1px solid #e5edf6;border-radius:14px;padding:15px;display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center}.ecq-document-grid i{font-size:27px;color:var(--p)}.ecq-document-grid span,.ecq-document-grid strong,.ecq-document-grid small{display:block}.ecq-document-grid span,.ecq-document-grid small{font-size:11px;color:var(--muted)}.ecq-invoice-card{border:1px solid #e5edf6;border-radius:14px;padding:16px;margin:10px 0}.ecq-invoice-card header,.ecq-invoice-card>div{display:flex;justify-content:space-between;gap:12px}.ecq-invoice-card>div{margin-top:13px}.ecq-consent-row i{font-size:24px;color:#16a36a}.ecq-consent-row>div{flex:1}.ecq-card-heading{display:flex;justify-content:space-between;align-items:center}.ecq-notification{display:flex;gap:13px;border-bottom:1px solid #edf2f7;padding:14px 0}.ecq-notification.unread{background:#f3f8ff;margin:0 -10px;padding:14px 10px}.ecq-notification i{font-size:22px;color:var(--p)}.ecq-notification p{margin:4px 0}.ecq-notification small{color:var(--muted)}.ecq-profile-form>div{display:grid;grid-template-columns:1fr 1fr;gap:15px}.ecq-profile-form label{font-weight:700}.ecq-profile-form label.full{grid-column:1/-1}.ecq-profile-form input,.ecq-profile-form select,.ecq-profile-form textarea{display:block;margin-top:6px}.ecq-profile-form button{margin-top:18px}
@media(max-width:900px){.ecq-auth-grid{grid-template-columns:1fr}.ecq-patient-app{grid-template-columns:1fr}.ecq-patient-sidebar{position:relative}.ecq-patient-sidebar nav{grid-template-columns:repeat(3,1fr)}.ecq-patient-logout{margin-top:12px}.ecq-patient-kpis{grid-template-columns:1fr 1fr}.ecq-medical-grid{grid-template-columns:1fr}.ecq-document-grid{grid-template-columns:1fr}}
@media(max-width:600px){.ecq-auth-fields,.ecq-profile-form>div{grid-template-columns:1fr}.ecq-auth-fields .full,.ecq-profile-form label.full{grid-column:auto}.ecq-patient-main{padding:16px}.ecq-patient-main>header{align-items:flex-start;gap:10px}.ecq-patient-sidebar nav{grid-template-columns:1fr 1fr}.ecq-patient-kpis{grid-template-columns:1fr}.ecq-next-card{display:block}.ecq-next-card>div:last-child{text-align:left;margin-top:15px}.ecq-appointment-card{display:block}.ecq-appointment-card>div:last-child{margin-top:10px}.ecq-live-queue-card{grid-template-columns:1fr}.ecq-live-queue-card footer{grid-column:auto}.ecq-treatment-row{grid-template-columns:1fr}.ecq-patient-card dl{grid-template-columns:1fr}.ecq-medical-event{grid-template-columns:1fr}.ecq-document-grid article{grid-template-columns:38px 1fr}.ecq-document-grid article a{grid-column:1/-1}.ecq-invoice-card>div{display:grid}}
