:root{--plum:#5d2d4a;--plum-dark:#3d1d31;--rose:#f4e6e4;--cream:#fbf8f5;--ink:#392e35;--muted:#7a6d74;--line:#e8dfe2;--white:#fff;--green:#277054;--blue:#316a94;--orange:#9a6524;--shadow:0 12px 35px rgba(59,35,48,.07)}*{box-sizing:border-box}body{margin:0;font-family:Inter,"Segoe UI",sans-serif;color:var(--ink);background:#f8f6f4}.admin-shell{min-height:100vh}.admin-sidebar{position:fixed;inset:0 auto 0 0;width:265px;background:linear-gradient(180deg,#432033,#321824);color:#fff;display:flex;flex-direction:column;z-index:1040}.admin-brand{display:flex;align-items:center;gap:11px;padding:24px 20px;border-bottom:1px solid rgba(255,255,255,.08)}.admin-brand>span,.login-brand>span{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--plum);font:700 .86rem Georgia,serif}.admin-brand strong,.admin-brand small{display:block}.admin-brand small{font-size:.68rem;color:#cfbcc6;margin-top:3px}.admin-brand button{display:none;margin-left:auto;background:none;border:0;color:#fff;font-size:1.2rem}.admin-menu{padding:17px 12px;overflow-y:auto;display:grid;gap:3px}.admin-menu a{display:grid;grid-template-columns:25px 1fr auto;align-items:center;gap:8px;padding:10px 12px;color:#d9cbd2;text-decoration:none;border-radius:10px;font-size:.86rem;font-weight:600}.admin-menu a:hover,.admin-menu a.active{background:rgba(255,255,255,.1);color:#fff}.admin-menu a i{font-size:1rem}.admin-menu a b{background:#ce765f;color:#fff;border-radius:99px;padding:2px 7px;font-size:.68rem}.admin-sidebar-footer{margin-top:auto;border-top:1px solid rgba(255,255,255,.08);padding:16px}.admin-user{display:flex;gap:10px;align-items:center;margin-bottom:13px}.admin-user>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:rgba(255,255,255,.12);font-weight:800}.admin-user strong,.admin-user small{display:block}.admin-user strong{font-size:.78rem}.admin-user small{font-size:.63rem;color:#cbb9c3;max-width:160px;overflow:hidden;text-overflow:ellipsis}.admin-sidebar-footer>a,.admin-sidebar-footer button{display:block;width:100%;border:0;background:none;color:#cdbcc5;text-decoration:none;font-size:.76rem;text-align:left;padding:8px}.admin-sidebar-footer a:hover,.admin-sidebar-footer button:hover{color:white}.admin-main{margin-left:265px;min-height:100vh}.admin-topbar{height:67px;background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:100}.admin-topbar>div{display:flex;align-items:center;gap:12px;font-weight:800}.admin-topbar button{display:none;border:0;background:var(--rose);color:var(--plum);border-radius:9px;width:38px;height:38px}.setup-pill,.live-pill{font-size:.71rem;font-weight:800;padding:7px 10px;border-radius:99px}.setup-pill{background:#fff1d7;color:#835c22}.live-pill{background:#e6f5ec;color:var(--green)}.admin-content{padding:30px;max-width:1500px;margin:0 auto}.admin-page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px}.admin-page-heading p{color:var(--muted);margin:0 0 4px;font-size:.82rem}.admin-page-heading h1{font:700 clamp(1.7rem,3vw,2.4rem) Georgia,serif;margin:0}.admin-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:22px}.admin-card-title{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:18px}.admin-card-title h2{font-size:1rem;margin:0;font-weight:800}.admin-card-title p{font-size:.77rem;color:var(--muted);margin:3px 0 0}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:19px;display:grid;grid-template-columns:43px 1fr;align-items:center;gap:12px}.stat-card>i{width:43px;height:43px;display:grid;place-items:center;border-radius:12px;background:var(--rose);color:var(--plum);font-size:1.18rem}.stat-card strong,.stat-card span{display:block}.stat-card strong{font-size:1.55rem;line-height:1}.stat-card span{color:var(--muted);font-size:.72rem;margin-top:5px}.dashboard-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:20px}.admin-table{width:100%;border-collapse:collapse}.admin-table th{color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;padding:10px;border-bottom:1px solid var(--line)}.admin-table td{font-size:.8rem;padding:13px 10px;border-bottom:1px solid #f0eaec;vertical-align:middle}.admin-table tr:last-child td{border-bottom:0}.admin-table strong,.admin-table small{display:block}.admin-table small{color:var(--muted);margin-top:3px}.table-responsive{border-radius:12px}.status-badge{display:inline-block;padding:5px 9px;border-radius:99px;font-size:.67rem;font-weight:800}.status-pendiente{background:#fff0d4;color:#80591e}.status-confirmada,.status-pagada{background:#e6f2ff;color:#2b608b}.status-en_atencion{background:#eee8ff;color:#634595}.status-finalizada{background:#e5f4eb;color:#286748}.status-cancelada,.status-no_asistio{background:#f2eded;color:#735e66}.btn-admin-primary{background:var(--plum);color:#fff;border-color:var(--plum);font-weight:700}.btn-admin-primary:hover{background:var(--plum-dark);color:#fff}.btn-admin-soft{background:var(--rose);color:var(--plum);border:1px solid #ead4d7;font-weight:700}.btn-admin-soft:hover{background:#ead6d5;color:var(--plum)}.empty-admin{text-align:center;padding:45px 20px;color:var(--muted)}.empty-admin i{font-size:2rem;color:#b99faa;display:block;margin-bottom:10px}.empty-admin strong{display:block;color:var(--ink);margin-bottom:5px}.list-stack{display:grid;gap:10px}.list-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:11px}.list-row>i{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:var(--rose);color:var(--plum)}.list-row strong,.list-row small{display:block}.list-row strong{font-size:.8rem}.list-row small{font-size:.68rem;color:var(--muted);margin-top:3px}.form-label{font-size:.76rem;font-weight:800}.form-control,.form-select{border-color:#ded3d7;border-radius:9px;min-height:42px;font-size:.83rem}.form-control:focus,.form-select:focus{border-color:var(--plum);box-shadow:0 0 0 .2rem rgba(93,45,74,.11)}textarea.form-control{min-height:100px}.module-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.service-edit-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:19px}.service-edit-card h2{font-size:1rem}.schedule-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:20px}.schedule-day{display:flex;justify-content:space-between;align-items:center;padding:12px;border-bottom:1px solid #f0eaec}.schedule-day:last-child{border:0}.schedule-day strong,.schedule-day small{display:block}.schedule-day small{color:var(--muted);font-size:.72rem}.setting-section{border-bottom:1px solid var(--line);padding-bottom:25px;margin-bottom:25px}.setting-section:last-child{border:0;margin:0}.setting-section h2{font-size:1rem;font-weight:800}.setting-section>p{font-size:.78rem;color:var(--muted)}.photo-preview{width:110px;height:110px;border-radius:50%;object-fit:cover;background:var(--rose);display:grid;place-items:center;color:var(--plum);font:700 1.8rem Georgia,serif;border:4px solid #fff;box-shadow:var(--shadow)}.message-card{border-left:4px solid var(--plum)}.message-card.reviewed{border-left-color:#c9bdc2;opacity:.82}.message-meta{display:flex;flex-wrap:wrap;gap:8px 18px;color:var(--muted);font-size:.72rem;margin-bottom:11px}.detail-page-grid{display:grid;grid-template-columns:1.05fr .75fr;gap:20px}.detail-block{display:grid;gap:12px}.detail-item{display:grid;grid-template-columns:28px 1fr;gap:9px}.detail-item i{color:var(--plum)}.detail-item small,.detail-item strong{display:block}.detail-item small{font-size:.68rem;color:var(--muted)}.note-item{padding:13px;background:#fbf8f6;border:1px solid var(--line);border-radius:10px}.note-item p{font-size:.8rem;margin:0 0 6px;white-space:pre-wrap}.note-item small{color:var(--muted);font-size:.67rem}.login-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 15% 20%,#fff 0,transparent 34%),linear-gradient(145deg,#fbf5f1,#ead3d2);padding:22px}.login-shell{width:min(100%,430px)}.login-brand{display:flex;align-items:center;justify-content:center;gap:11px;text-decoration:none;color:var(--ink);margin-bottom:20px}.login-brand strong,.login-brand small{display:block}.login-brand small{font-size:.68rem;color:var(--muted);margin-top:3px}.login-card{background:#fff;border:1px solid rgba(93,45,74,.12);border-radius:22px;padding:clamp(25px,7vw,42px);box-shadow:0 28px 75px rgba(63,35,50,.12)}.login-kicker{text-transform:uppercase;letter-spacing:.13em;color:#b05f52;font-weight:800;font-size:.68rem}.login-card h1{font:700 2.25rem Georgia,serif;margin:9px 0}.login-card>p{color:var(--muted);font-size:.86rem;margin-bottom:24px}.login-card>small{display:block;text-align:center;color:var(--muted);font-size:.67rem;margin-top:20px}.input-icon{position:relative}.input-icon>i{position:absolute;left:13px;top:11px;color:#9c8992}.input-icon .form-control{padding-left:38px}.sidebar-backdrop{display:none}.admin-warning{background:#fff2d9;border:1px solid #f0daa9;color:#7e5923;border-radius:12px;padding:12px 14px;font-size:.79rem;margin-bottom:18px}@media(max-width:1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.schedule-grid,.detail-page-grid{grid-template-columns:1fr}.module-grid{grid-template-columns:1fr}}@media(max-width:800px){.admin-sidebar{transform:translateX(-100%);transition:transform .22s}.admin-sidebar.open{transform:translateX(0)}.admin-brand button{display:block}.admin-main{margin-left:0}.admin-topbar{padding:0 16px}.admin-topbar button{display:grid;place-items:center}.admin-content{padding:20px 15px}.sidebar-backdrop{position:fixed;inset:0;background:rgba(37,21,30,.46);z-index:1030}.sidebar-backdrop.show{display:block}body.sidebar-open{overflow:hidden}.admin-page-heading{align-items:flex-start;flex-direction:column}.table-responsive{margin:0 -8px}.admin-table{min-width:720px}}@media(max-width:520px){.stats-grid{grid-template-columns:1fr}.setup-pill,.live-pill{font-size:0}.setup-pill i,.live-pill i{font-size:.8rem}.module-grid{grid-template-columns:1fr}.admin-card{padding:17px}}


/* Agenda renovada */
.agenda-heading{margin-bottom:18px}.agenda-subtitle{display:block;color:var(--muted);font-size:.78rem;margin-top:6px}.agenda-stats-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:18px}.agenda-stat{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;display:flex;align-items:center;gap:10px;min-width:0;box-shadow:0 8px 24px rgba(63,35,50,.045)}.agenda-stat-icon{width:38px;height:38px;flex:0 0 38px;border-radius:11px;background:#f5e8e9;color:var(--plum);display:grid;place-items:center}.agenda-stat-icon.attention{background:#eee8ff;color:#6546a0}.agenda-stat-icon.confirmed{background:#e7f2ff;color:#2b6a9a}.agenda-stat-icon.pending{background:#fff0d5;color:#8a641f}.agenda-stat-icon.done{background:#e6f5ec;color:#2c7653}.agenda-stat-icon.archived{background:#eee9ec;color:#685865}.agenda-stat strong,.agenda-stat small{display:block}.agenda-stat strong{font-size:1.25rem;line-height:1}.agenda-stat small{font-size:.67rem;color:var(--muted);margin-top:4px;white-space:nowrap}.agenda-card{padding:16px}.agenda-toolbar{display:flex;flex-direction:column;gap:14px;margin-bottom:12px}.agenda-tabs{display:flex;flex-wrap:wrap;gap:7px}.agenda-tab{display:inline-flex;align-items:center;gap:6px;padding:8px 11px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#5e4c55;text-decoration:none;font-size:.73rem;font-weight:700;transition:.15s}.agenda-tab:hover{border-color:#d7c4cb;background:#fcf7f8;color:var(--plum)}.agenda-tab.active{background:var(--plum);border-color:var(--plum);color:#fff}.agenda-tab b{font-size:.63rem;padding:2px 6px;border-radius:99px;background:#f1e8eb;color:var(--plum)}.agenda-tab.active b{background:rgba(255,255,255,.18);color:#fff}.agenda-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.agenda-search{position:relative;flex:1 1 300px}.agenda-search i{position:absolute;left:12px;top:11px;color:#9c8992}.agenda-search input{width:100%;height:42px;border:1px solid #ded3d7;border-radius:10px;padding:0 12px 0 36px;font-size:.8rem;outline:0}.agenda-search input:focus{border-color:var(--plum);box-shadow:0 0 0 .2rem rgba(93,45,74,.08)}.agenda-date{height:42px;border:1px solid #ded3d7;border-radius:10px;padding:0 10px;font-size:.8rem;color:#57454e;background:#fff}.agenda-table-wrap{border:1px solid var(--line);border-radius:13px;overflow:auto}.agenda-table{min-width:920px}.agenda-table th{padding:12px 13px;background:#fcfaf9}.agenda-table td{padding:13px;border-bottom:1px solid #f0eaec}.agenda-table tbody tr{transition:background .15s}.agenda-table tbody tr:hover{background:#fcf8f9}.agenda-table tbody tr:last-child td{border-bottom:0}.agenda-table .status-row-finalizada td:first-child{border-left:3px solid #3d8a66}.agenda-table .status-row-en_atencion td:first-child{border-left:3px solid #7652b0}.agenda-table .status-row-confirmada td:first-child{border-left:3px solid #3b82b6}.agenda-table .status-row-pendiente td:first-child{border-left:3px solid #d3971a}.agenda-modality{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.agenda-actions{display:flex;align-items:center;justify-content:flex-start;gap:6px}.agenda-actions form{margin:0}.agenda-icon-btn{width:34px;height:34px;border-radius:9px;border:1px solid #eadfe2;background:#fff;color:var(--plum);display:inline-grid;place-items:center;text-decoration:none;cursor:pointer}.agenda-icon-btn:hover{background:#f8eef0;color:var(--plum);border-color:#dcc8cf}.agenda-icon-btn.archive{color:#7b5a22;background:#fff7e8;border-color:#f0dfb8}.agenda-icon-btn.restore{color:#286748;background:#edf8f1;border-color:#cce8d8}.agenda-icon-btn.danger{color:#9a3f4c;background:#fff0f2;border-color:#f0cdd2}.agenda-empty{padding:65px 20px}.agenda-empty i{color:#b08e9d}
@media(max-width:1200px){.agenda-stats-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:800px){.agenda-stats-grid{grid-template-columns:repeat(2,1fr)}.agenda-filters{align-items:stretch}.agenda-search{flex-basis:100%}.agenda-date{flex:1}.agenda-filters .btn{height:42px}}
@media(max-width:520px){.agenda-stats-grid{grid-template-columns:1fr 1fr;gap:8px}.agenda-stat{padding:11px}.agenda-stat-icon{width:34px;height:34px;flex-basis:34px}.agenda-stat strong{font-size:1.08rem}.agenda-stat small{font-size:.62rem}.agenda-tabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.agenda-tab{white-space:nowrap}.agenda-card{padding:12px}}

/* Servicios: panel administrativo mejorado */
.services-heading{align-items:flex-end}.services-heading-note{display:block;color:var(--muted);font-size:.78rem;margin-top:8px;max-width:720px}.services-summary{display:flex;gap:8px;flex-wrap:wrap}.services-summary>div{min-width:82px;padding:10px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;text-align:center}.services-summary strong,.services-summary span{display:block}.services-summary strong{font-size:1.1rem;color:var(--plum)}.services-summary span{font-size:.65rem;color:var(--muted);margin-top:2px}.services-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px;padding:14px 16px}.services-search{position:relative;flex:1;max-width:620px}.services-search>i{position:absolute;left:14px;top:12px;color:#9b8991;z-index:2}.services-search .form-control{padding-left:40px;background:#fcfaf9}.services-filter{display:flex;gap:6px;flex-wrap:wrap}.service-filter{border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:9px;padding:8px 11px;font-size:.72rem;font-weight:800;cursor:pointer}.service-filter span{margin-left:4px;color:var(--plum);background:var(--rose);border-radius:99px;padding:2px 5px;font-size:.62rem}.service-filter:hover,.service-filter.active{background:var(--plum);border-color:var(--plum);color:#fff}.service-filter.active span{background:rgba(255,255,255,.18);color:#fff}.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.service-admin-card{position:relative;padding:0;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.service-admin-card:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(59,35,48,.1);border-color:#dfcfd5}.service-card-head{display:grid;grid-template-columns:48px 1fr auto;gap:13px;align-items:center;padding:20px 21px 15px;background:linear-gradient(135deg,#fff,#fcf7f5)}.service-icon{width:48px;height:48px;border-radius:14px;background:var(--rose);color:var(--plum);display:grid;place-items:center;font-size:1rem}.service-card-title span{display:block;text-transform:uppercase;letter-spacing:.1em;color:#a48792;font-size:.58rem;font-weight:800;margin-bottom:3px}.service-card-title h2{font-size:1.05rem;margin:0;color:var(--ink)}.service-switch{position:relative;display:block;width:48px;height:28px;cursor:pointer}.service-switch input{position:absolute;opacity:0;width:0;height:0}.service-switch span{position:absolute;inset:0;border-radius:99px;background:#d8ced2;transition:.2s}.service-switch span:after{content:"";position:absolute;width:22px;height:22px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(0,0,0,.14);transition:.2s}.service-switch input:checked+span{background:var(--green)}.service-switch input:checked+span:after{transform:translateX(20px)}.service-status-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 21px 14px;border-bottom:1px solid var(--line)}.service-status{display:inline-flex;align-items:center;gap:6px;border-radius:99px;padding:5px 9px;font-size:.63rem;font-weight:800}.service-status.is-active{background:#e6f4ec;color:var(--green)}.service-status.is-inactive{background:#f1ecee;color:#75636a}.service-id{font-size:.62rem;color:#a18f96}.service-fields{display:grid;grid-template-columns:1fr 1fr;gap:13px;padding:17px 21px 5px}.service-field-full{grid-column:1/-1}.service-field .form-label{display:block;margin-bottom:6px;color:#665761;font-size:.67rem}.service-field .form-label i{color:var(--plum);margin-right:3px}.service-admin-card .form-control,.service-admin-card .input-group-text{min-height:40px;font-size:.75rem}.service-admin-card textarea.form-control{min-height:105px;resize:vertical;line-height:1.45}.service-admin-card .input-group-text{background:#f8f3f2;border-color:#ded3d7;color:var(--muted);font-size:.7rem}.service-options{padding:12px 21px 17px}.service-options-title{display:block;font-size:.65rem;font-weight:800;color:#665761;margin-bottom:8px}.service-option-list{display:flex;gap:8px;flex-wrap:wrap}.service-option{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--muted);font-size:.68rem;font-weight:700;cursor:pointer;transition:.15s}.service-option input{position:absolute;opacity:0;pointer-events:none}.service-option i{color:#a3949a}.service-option.checked{background:#f7eee9;border-color:#e5cfc5;color:var(--plum)}.service-option.checked i{color:var(--plum)}.service-card-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 21px;background:#fcfaf9;border-top:1px solid var(--line)}.service-card-footer small{font-size:.62rem;color:#94838a}.service-card-footer small i{color:var(--green);margin-right:3px}.service-card-footer .btn{font-size:.7rem;padding:8px 12px}.service-add-card{padding:25px 21px;background:linear-gradient(145deg,#fff,#fbf5f2);border-style:dashed;border-color:#dbc6ce}.service-add-icon{width:44px;height:44px;border-radius:13px;background:var(--plum);color:#fff;display:grid;place-items:center;margin-bottom:13px}.service-add-card h2{font-size:1rem;margin:0 0 5px}.service-add-card>p{color:var(--muted);font-size:.73rem;line-height:1.45;margin:0 0 10px}.service-add-card .service-fields{padding:10px 0 0}.service-add-card .service-options{padding:12px 0 14px}.service-add-button{width:100%;font-size:.73rem;padding:10px}.services-no-results{grid-column:1/-1;text-align:center;padding:50px 20px;background:#fff;border:1px dashed var(--line);border-radius:15px;color:var(--muted)}.services-no-results i{font-size:1.8rem;display:block;color:#b99faa;margin-bottom:8px}.services-no-results strong,.services-no-results span{display:block}.services-no-results strong{color:var(--ink);font-size:.9rem;margin-bottom:4px}.services-no-results span{font-size:.72rem}.service-admin-card[hidden]{display:none!important}@media(max-width:1100px){.services-grid{grid-template-columns:1fr}.services-toolbar{align-items:stretch;flex-direction:column}.services-search{max-width:none}.services-filter{justify-content:flex-start}}@media(max-width:650px){.services-heading{align-items:flex-start}.services-summary{width:100%}.services-summary>div{flex:1}.service-card-head{grid-template-columns:44px 1fr auto;padding:17px 16px 13px}.service-icon{width:44px;height:44px}.service-card-title h2{font-size:.95rem}.service-status-row,.service-fields,.service-options{padding-left:16px;padding-right:16px}.service-fields{grid-template-columns:1fr;gap:10px}.service-field-full{grid-column:auto}.service-card-footer{align-items:stretch;flex-direction:column;padding:12px 16px}.service-card-footer .btn{width:100%}.service-filter{flex:1}.services-toolbar{padding:12px}.service-option{flex:1;justify-content:center}.services-heading-note{font-size:.72rem}}

/* Documentos: panel administrativo profesional */
.documents-heading{align-items:flex-end}.documents-heading-note{display:block;margin-top:7px;color:var(--muted);font-size:.78rem}.documents-summary{display:flex;gap:8px;flex-wrap:wrap}.documents-summary>div{min-width:72px;padding:9px 13px;border:1px solid var(--line);border-radius:12px;background:#fff;text-align:center}.documents-summary strong,.documents-summary span{display:block}.documents-summary strong{font-size:1.05rem;color:var(--plum)}.documents-summary span{font-size:.62rem;color:var(--muted);margin-top:2px}.documents-card{padding:0;overflow:hidden}.documents-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid var(--line);background:#fcfaf9}.documents-search{position:relative;flex:1;max-width:560px}.documents-search>i{position:absolute;left:13px;top:12px;color:#9b8991;z-index:2}.documents-search .form-control{height:42px;padding-left:38px;border-radius:10px;background:#fff}.documents-filters{display:flex;gap:6px;flex-wrap:wrap}.document-filter{border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:9px;padding:8px 10px;font-size:.7rem;font-weight:800;cursor:pointer}.document-filter b{margin-left:4px;padding:2px 5px;border-radius:99px;background:var(--rose);color:var(--plum);font-size:.6rem}.document-filter:hover,.document-filter.active{background:var(--plum);border-color:var(--plum);color:#fff}.document-filter.active b{background:rgba(255,255,255,.18);color:#fff}.documents-list{padding:0 20px}.document-row{display:grid;grid-template-columns:48px minmax(230px,1.5fr) minmax(180px,1fr) 120px 100px 82px;gap:15px;align-items:center;padding:17px 4px;border-bottom:1px solid #eee7e9;transition:background .15s}.document-row:hover{background:#fcf8f9}.document-row:last-child{border-bottom:0}.document-file-icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;font-size:1.15rem}.document-file-icon.type-pdf{background:#fbecef;color:#b44c60}.document-file-icon.type-image{background:#f5eee8;color:#a16d45}.document-file-icon.type-other{background:#eeeaf5;color:#6c5793}.document-main{min-width:0}.document-name{font-size:.78rem;font-weight:800;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:5px;color:#97878e;font-size:.62rem}.document-meta i{color:#a48994}.document-person a{display:block;color:var(--ink);font-size:.74rem;font-weight:700;text-decoration:none}.document-person a:hover{color:var(--plum);text-decoration:underline}.document-person small{display:block;margin-top:3px;color:var(--muted);font-size:.62rem}.document-label{display:block;margin-bottom:4px;color:#9b8991;font-size:.56rem;font-weight:800;letter-spacing:.08em}.document-appointment strong,.document-size strong{font-size:.72rem;color:#5e4c55}.document-actions{display:flex;justify-content:flex-end;gap:6px}.document-actions form{margin:0}.document-action{width:34px;height:34px;border-radius:9px;border:1px solid #eadfe2;background:#fff;color:var(--plum);display:inline-grid;place-items:center;text-decoration:none;cursor:pointer}.document-action:hover{background:#f8eef0;border-color:#dcc8cf}.document-action.danger{color:#9a3f4c;background:#fff4f5;border-color:#f0d2d6}.documents-no-results{text-align:center;padding:55px 20px;color:var(--muted)}.documents-no-results i{display:block;font-size:1.7rem;color:#b99faa;margin-bottom:8px}.documents-no-results strong,.documents-no-results span{display:block}.documents-no-results strong{color:var(--ink);font-size:.9rem;margin-bottom:4px}.documents-no-results span{font-size:.72rem}.document-row[hidden]{display:none!important}.documents-empty{padding:70px 20px}
@media(max-width:1150px){.document-row{grid-template-columns:48px minmax(220px,1.5fr) minmax(170px,1fr) 105px 82px}.document-appointment{display:none}}
@media(max-width:900px){.documents-heading{align-items:flex-start;flex-direction:column;gap:15px}.documents-summary{width:100%}.documents-summary>div{flex:1}.documents-toolbar{align-items:stretch;flex-direction:column}.documents-search{max-width:none}.documents-filters{justify-content:flex-start}.document-row{grid-template-columns:46px 1fr auto;gap:12px;padding:15px 2px}.document-person,.document-size,.document-appointment{grid-column:2}.document-person{margin-top:-3px}.document-actions{grid-column:3;grid-row:1 / span 2;align-self:center}.document-row .document-label{display:inline;margin-right:5px}.document-person small{display:inline;margin-left:7px}.document-main{grid-column:2}.document-file-icon{grid-row:1 / span 2}}
@media(max-width:560px){.documents-summary>div{min-width:0;padding:8px}.documents-summary strong{font-size:.95rem}.documents-summary span{font-size:.58rem}.documents-list{padding:0 13px}.document-row{grid-template-columns:40px 1fr auto;gap:9px}.document-file-icon{width:40px;height:40px;font-size:1rem}.document-name{font-size:.72rem}.document-actions{gap:4px}.document-action{width:32px;height:32px}.document-person{font-size:.68rem}.documents-filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.document-filter{white-space:nowrap}}

/* Vista previa de documentos en modal */
body.document-preview-open{overflow:hidden}.document-preview-modal{position:fixed;inset:0;z-index:3000;display:none;align-items:center;justify-content:center;padding:28px}.document-preview-modal.is-open{display:flex}.document-preview-backdrop{position:absolute;inset:0;background:rgba(32,20,27,.62);backdrop-filter:blur(3px)}.document-preview-dialog{position:relative;z-index:1;width:min(980px,92vw);height:min(82vh,820px);background:#fff;border:1px solid rgba(232,223,226,.95);border-radius:16px;box-shadow:0 25px 80px rgba(32,20,27,.28);overflow:hidden;display:flex;flex-direction:column}.document-preview-header{height:58px;flex:0 0 58px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 16px 0 18px;border-bottom:1px solid var(--line);background:#fcfaf9}.document-preview-title{min-width:0;display:flex;align-items:center;gap:9px;color:var(--ink);font-size:.82rem;font-weight:800}.document-preview-title i{color:var(--plum)}.document-preview-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-preview-header-actions{display:flex;align-items:center;gap:7px}.document-preview-download,.document-preview-close{width:36px;height:36px;display:grid;place-items:center;border:1px solid #eadfe2;border-radius:9px;background:#fff;color:var(--plum);text-decoration:none;cursor:pointer}.document-preview-download:hover,.document-preview-close:hover{background:#f8eef0;border-color:#dcc8cf}.document-preview-close{font-size:.9rem}.document-preview-body{min-height:0;flex:1;background:#eee9e7;display:flex;align-items:center;justify-content:center;overflow:auto;padding:18px}.document-preview-frame{display:block;width:100%;height:100%;min-height:0;border:0;background:#fff;border-radius:8px;box-shadow:0 4px 18px rgba(50,30,40,.08)}.document-preview-image{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:8px;box-shadow:0 4px 18px rgba(50,30,40,.12);background:#fff}.document-preview-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--muted);font-size:.8rem;height:100%;width:100%}.document-preview-loading i{font-size:1.7rem;color:var(--plum)}.document-preview-error{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;color:var(--muted);height:100%;width:100%;padding:30px}.document-preview-error i{font-size:2rem;color:#a44a5b}.document-preview-error strong{color:var(--ink);font-size:.9rem}.document-preview-error span{font-size:.75rem;max-width:460px}.document-preview-open .admin-sidebar{z-index:2000}
@media(max-width:700px){.document-preview-modal{padding:12px}.document-preview-dialog{width:96vw;height:86vh;border-radius:13px}.document-preview-header{height:54px;flex-basis:54px;padding-left:13px}.document-preview-body{padding:10px}.document-preview-download,.document-preview-close{width:34px;height:34px}}
