/* V153 — controlador único y validación administrativa del módulo de Citas */
.v153-appt{background:#fff;border:1px solid #dce3ea;border-radius:18px;margin:14px 0;padding:0;overflow:hidden;box-shadow:0 8px 24px rgba(11,43,75,.045)}
.v153-appt>header{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px 18px;background:linear-gradient(90deg,#eef5fb,#f7fafc);color:#0b2b4b;border-bottom:1px solid #dce5ed}
.v153-appt>header div{display:flex;flex-direction:column;gap:4px}.v153-appt>header b{font-size:17px}.v153-appt>header small{font-size:13px}.v153-appt>header>span{padding:7px 12px;border-radius:999px;background:#e7f6eb;color:#23713c;font-size:12px;font-weight:800;text-align:center}
.v153-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px 18px}.v153-grid>div{border:1px solid #e1e7ed;border-radius:13px;padding:10px 12px;display:flex;flex-direction:column;gap:3px}.v153-grid small{color:#71808e}.v153-grid b{color:#173b60;overflow-wrap:anywhere}
.v153-appt details{border-top:1px solid #e7ebef;padding:0 18px}.v153-appt summary{cursor:pointer;padding:14px 0;font-weight:800;color:#153b60}.v153-detail{padding:0 0 14px}.v153-ficha{display:grid;grid-template-columns:1fr 1fr;gap:7px 28px}.v153-ficha p{margin:2px 0;color:#31475d}
.v153-files h4,.v153-history h4{margin:15px 0 8px;color:#173b60}.v153-muted{color:#7c8792;background:#f7f9fb;border-radius:10px;padding:10px 12px}.v153-file{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;border:1px solid #e1e6eb;border-radius:12px;padding:10px 12px;margin:7px 0;text-decoration:none;color:#173b60;background:#fff}.v153-file span:nth-child(2){display:flex;flex-direction:column}.v153-file small{color:#7b8792}.v153-file strong{color:#1e5b99}.v153-file.no-link strong{display:none}
.v153-validation{margin-top:16px;border:1px solid #cfe2d5;background:#f9fffb;border-radius:15px;padding:14px;transition:.25s}.v153-validation.attention{box-shadow:0 0 0 4px rgba(212,175,55,.28);transform:translateY(-1px)}.v153-validation-title{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.v153-validation-title h4{margin:0 0 4px;color:#173b60}.v153-validation-title p{margin:0;color:#667788;font-size:13px}.v153-validation-title>span{background:#fff3d3;color:#8a6510;border-radius:999px;padding:7px 10px;font-weight:800;font-size:12px;white-space:nowrap}.v153-validation-title>span.ok{background:#e4f6e9;color:#216d39}
.v153-validation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.v153-validation-grid button{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid #d7e0e7;background:#fff;border-radius:13px;padding:11px;cursor:pointer;color:#183b5e}.v153-validation-grid button.checked{border-color:#75bf8c;background:#eefaf2}.v153-validation-grid button:disabled{opacity:.65}.v153-validation-grid i{width:24px;height:24px;border:2px solid #9aacba;border-radius:6px;display:grid;place-items:center;font-style:normal;font-weight:900;color:#fff;flex:0 0 auto}.v153-validation-grid .checked i{background:#39a65b;border-color:#39a65b}.v153-validation-grid span{display:flex;flex-direction:column;gap:2px}.v153-validation-grid small{color:#71808e;line-height:1.25}
.v153-result{margin-top:14px;border-radius:11px;background:#f4f7fa;padding:10px 12px;color:#31475d}.v153-history{margin-top:12px}.v153-history>div{display:grid;grid-template-columns:minmax(145px,210px) 1fr;gap:14px;padding:8px 0;border-bottom:1px dotted #dfe5ea}.v153-history>div b{font-size:12px;color:#455b6e}.v153-history>div span{color:#344a60}.v153-history small{display:block;color:#71808e;margin-top:3px}
.v153-actions{display:flex;gap:10px;flex-wrap:wrap;padding:0 18px 16px}.v153-actions button,.v153-actions-modal button,.v153-actions-modal a{border:0;border-radius:11px;background:#1f5b98;color:#fff;padding:12px 17px;font-weight:800;font-size:14px;cursor:pointer;text-decoration:none;text-align:center}.v153-actions button.gold,.v153-actions-modal .gold{background:#d4af25}.v153-actions button.ready{box-shadow:0 0 0 3px rgba(212,175,37,.2)}.v153-actions button:disabled{background:#e1c96b;color:#fff;opacity:.62;cursor:not-allowed}.v153-card-note{margin:-4px 18px 15px;padding:8px 11px;border-radius:10px;background:#fff8e4;color:#7b641b;font-size:12px}
.v153-modal{position:fixed;inset:0;z-index:1000000;background:rgba(5,25,45,.62);display:grid;place-items:center;padding:20px}.v153-modal>section{width:min(940px,96vw);max-height:92vh;display:flex;flex-direction:column;background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 28px 90px rgba(0,0,0,.28)}.v153-modal>section>header{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(90deg,#0b2b4b,#154f78);color:#fff;padding:17px 20px}.v153-modal header small{display:block;color:#e6bd2c;font-weight:900;letter-spacing:.04em}.v153-modal header h3{margin:3px 0 0;color:#fff;font-size:20px}.v153-x{border:0;background:rgba(255,255,255,.15);color:#fff;border-radius:10px;width:42px;height:42px;font-size:27px;cursor:pointer}.v153-body{padding:20px;overflow:auto}.v153-help{color:#5e6f7e;margin-top:0}
.v153-options{display:grid;gap:8px}.v153-options label{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;border:1px solid #dde5eb;border-radius:12px;padding:12px;cursor:pointer}.v153-options input{width:19px;height:19px}.v153-field{display:flex;flex-direction:column;gap:6px;margin-top:13px;font-weight:700;color:#173b60}.v153-field input,.v153-field textarea{font:inherit;border:1px solid #ccd7e0;border-radius:10px;padding:10px;background:#fff;color:#243b50}.v153-actions-modal{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-top:18px}.v153-actions-modal .soft{background:#edf2f6;color:#214565}
.v153-status{border-radius:12px;padding:11px 13px;margin-bottom:14px;display:flex;flex-direction:column;gap:2px}.v153-status.work{background:#eef4fb;color:#245687}.v153-status.ok{background:#e8f7ec;color:#226a39}.v153-status.err{background:#fff0f0;color:#a63a3a}
.v153-current{display:flex;justify-content:space-between;gap:16px;background:#f2f6f9;border-radius:12px;padding:11px 13px;color:#173b60}.v153-mode-tabs{display:flex;gap:8px;margin:13px 0}.v153-mode-tabs button{border:1px solid #ccd7df;background:#fff;border-radius:999px;padding:9px 15px;font-weight:800;color:#244866;cursor:pointer}.v153-mode-tabs button.active{background:#1f5b98;color:#fff;border-color:#1f5b98}.v153-selected{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#e9f8ed;border:1px solid #83c697;color:#21693a;border-radius:12px;padding:11px 13px;margin-bottom:12px}.v153-avail{display:grid;gap:11px}.v153-avail article{border:1px solid #e0e6eb;border-radius:14px;padding:12px}.v153-avail h4{margin:0 0 10px;color:#173b60;text-transform:capitalize}.v153-avail article>div{display:flex;gap:8px;flex-wrap:wrap}.v153-avail [data-slot]{border:1px solid #cdd8e1;background:#fff;color:#193d61;border-radius:999px;padding:9px 13px;font-weight:800;cursor:pointer}.v153-avail [data-slot].selected{background:#1f5b98;color:#fff;border-color:#1f5b98}.v153-success{text-align:center;background:#eff9f2;border-radius:16px;padding:18px;color:#1e6136}.v153-success>div{width:54px;height:54px;border-radius:50%;background:#37a45a;color:#fff;display:grid;place-items:center;margin:0 auto 8px;font-size:30px;font-weight:900}.v153-success h3{margin:4px 0;color:#173b60}
.v153-collapse{border:1px solid #cbd8e2;background:#fff;color:#173b60;border-radius:10px;padding:8px 12px;font-weight:800;cursor:pointer;margin-left:10px}.v153-collapsed{display:none!important}
@media(max-width:720px){.v153-grid{grid-template-columns:1fr 1fr}.v153-validation-grid{grid-template-columns:1fr}.v153-ficha{grid-template-columns:1fr}.v153-appt>header{align-items:flex-start;flex-direction:column}.v153-current,.v153-selected,.v153-validation-title{flex-direction:column}.v153-actions button{flex:1 1 45%}.v153-actions-modal>*{flex:1 1 100%}.v153-modal{padding:8px}.v153-modal>section{max-height:96vh}.v153-body{padding:14px}}
@media(max-width:460px){.v153-grid{grid-template-columns:1fr}.v153-actions button{flex:1 1 100%}}

/* V154: estados visuales de flujo administrativo */
.v153-actions [data-v153-action="confirm"]:disabled{opacity:.46;filter:grayscale(.15);cursor:not-allowed}
.v153-actions [data-v153-action="confirm"].ready{box-shadow:0 0 0 3px rgba(31,139,76,.18)}
.v153-validation button.checked{outline:2px solid rgba(36,145,79,.28)}

/* V156: apoderamiento abierto desde Administración de Citas debe quedar sobre el panel admin */
body.mode-admin #poweringV25.open,#poweringV25.open{z-index:1000002!important;position:fixed!important;inset:0!important;display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}
