.inicio-page{display:flex;flex-direction:column;gap:40px}.section-title{font-size:1.5rem;margin-bottom:24px;color:var(--color-primary)}.hero-section{background:linear-gradient(135deg,var(--color-primary),#4a349c);border-radius:var(--radius-lg);padding:48px 40px;color:var(--color-white);box-shadow:var(--shadow-md);position:relative;overflow:hidden}.hero-section:after{content:"";position:absolute;top:0;right:0;bottom:0;width:50%;background:radial-gradient(circle at top right,rgba(255,255,255,.1),transparent 70%);pointer-events:none}.hero-title{color:var(--color-white);font-size:2.5rem;margin-bottom:16px}.hero-subtitle{font-size:1.1rem;max-width:600px;margin-bottom:32px;opacity:.9;line-height:1.5}.hero-actions{display:flex;gap:16px}.access-card{display:flex;flex-direction:column;align-items:flex-start;gap:16px}.access-card .card-icon{width:64px;height:64px;border-radius:16px;display:flex;align-items:center;justify-content:center;color:var(--color-white)}.sembrando-card .card-icon{background-color:var(--color-success)}.bodega-card .card-icon{background-color:var(--color-warning)}.admin-card .card-icon{background-color:var(--color-primary)}.access-card h4{font-size:1.25rem;margin:0}.access-card p{color:var(--color-text-light);flex-grow:1;font-size:.95rem;margin-bottom:8px}.access-card .btn{width:100%}.dashboard-grid{gap:32px}.stat-card{display:flex;align-items:center;gap:16px;padding:20px}.stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center}.stat-icon.success{background-color:#e6f6ec;color:var(--color-success)}.stat-icon.warning{background-color:#fef4e5;color:var(--color-warning)}.stat-icon.info{background-color:#e5f7f5;color:var(--color-info)}.stat-icon.primary{background-color:var(--color-background-soft);color:var(--color-primary)}.stat-info{display:flex;flex-direction:column}.stat-value{font-size:1.75rem;font-weight:700;font-family:var(--font-heading);color:var(--color-primary);line-height:1.2}.stat-label{font-size:.85rem;color:var(--color-text-light);font-weight:500}.notices-card{padding:0;overflow:hidden}.notice-list{display:flex;flex-direction:column}.notice-item{display:flex;gap:16px;padding:16px 24px;border-bottom:1px solid var(--color-border);align-items:flex-start}.notice-item:last-child{border-bottom:none}.notice-icon{margin-top:2px}.color-warning{color:var(--color-warning)}.color-primary{color:var(--color-primary)}.color-secondary{color:var(--color-secondary)}.color-success{color:var(--color-success)}.notice-content{flex:1}.notice-text{font-weight:500;color:var(--color-text);margin-bottom:4px}.notice-date{font-size:.8rem;color:var(--color-text-light)}@media (max-width: 768px){.hero-section{padding:32px 24px}.hero-title{font-size:2rem}.hero-actions{flex-direction:column}.dashboard-grid{grid-template-columns:1fr}}.birthday-alert-banner{background:linear-gradient(135deg,#f02fc2,#6094ea);background-size:200% 200%;animation:gradientBG 6s ease infinite;border-radius:var(--radius-lg);padding:20px 24px;color:#fff;display:flex;align-items:center;gap:20px;box-shadow:0 10px 25px #f02fc24d;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.2);z-index:1;margin-bottom:-10px}@keyframes gradientBG{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.birthday-icons-container{display:flex;align-items:center;gap:10px;background-color:#fffffff2;padding:10px 16px;border-radius:var(--radius-md);box-shadow:var(--shadow-md);border:2px solid #122a60}.birthday-alert-content{flex:1}.birthday-alert-content h4{margin:0 0 4px;font-size:1.2rem;font-weight:700;letter-spacing:.5px;text-shadow:0 1px 2px rgba(0,0,0,.2)}.birthday-alert-content p{margin:0;font-size:.95rem;opacity:.95;text-shadow:0 1px 1px rgba(0,0,0,.1);line-height:1.4}.birthday-alert-decor{color:#fffc;display:flex;align-items:center;animation:rotateSparkles 3s linear infinite}@keyframes rotateSparkles{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.2)}to{transform:rotate(360deg) scale(1)}}.animate-bounce{animation:bounce 2s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.birthday-upcoming-banner{background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:var(--radius-md);padding:12px 18px;color:#166534;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow-sm);margin-bottom:-15px}.birthday-upcoming-icon{background-color:#dcfce7;color:#16a34a;padding:6px;border-radius:50%;display:flex;align-items:center;justify-content:center}.birthday-upcoming-content p{margin:0;font-size:.9rem}.general-page{display:flex;flex-direction:column}.general-column{display:flex;flex-direction:column;gap:32px}.general-section{display:flex;flex-direction:column;gap:16px}.section-header{display:flex;align-items:center;gap:12px}.section-header h3{margin:0;font-size:1.25rem;color:var(--color-primary)}.section-icon{padding:8px;background-color:var(--color-background-soft);border-radius:8px;width:40px;height:40px}.section-icon.color-secondary{background-color:#fae4ef;color:var(--color-secondary)}.section-icon.color-info{background-color:#e5f7f5;color:var(--color-info)}.section-icon.color-primary{background-color:#e6e0f5;color:var(--color-primary)}.section-icon.color-success{background-color:#e6f6ec;color:var(--color-success)}.section-icon.color-warning{background-color:#fef4e5;color:var(--color-warning)}.section-desc{color:var(--color-text-light);margin-bottom:20px;font-size:.95rem}.w-100{width:100%}.success-msg{margin-top:16px;padding:12px;background-color:#e6f6ec;color:var(--color-success);border-radius:var(--radius-md);text-align:center;font-size:.9rem;font-weight:500}.mini-doc-card{display:flex;align-items:center;gap:12px;padding:16px}.mini-doc-info{flex:1}.mini-doc-info h5{margin:0 0 4px;font-size:.95rem;line-height:1.3}.mini-doc-info span{font-size:.75rem;color:var(--color-text-light)}.btn-icon{padding:8px;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.links-card{padding:0}.links-list{display:flex;flex-direction:column}.general-link{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--color-border);color:var(--color-text);font-weight:500;transition:all .2s ease}.general-link:hover{background-color:#fcfcfc;color:var(--color-primary);padding-left:28px}.general-link:last-child{border-bottom:none}.birthday-card{padding:0}.birthday-list{display:flex;flex-direction:column}.birthday-item{display:flex;align-items:center;gap:16px;padding:16px 24px;border-bottom:1px solid var(--color-border)}.birthday-item:last-child{border-bottom:none}.bday-date{font-family:var(--font-heading);font-weight:700;color:var(--color-warning);background-color:#fef4e5;padding:8px 12px;border-radius:var(--radius-md);text-align:center;font-size:.9rem;line-height:1.2}.bday-info{flex:1}.bday-info strong{display:block;font-size:1rem}.bday-info span{color:var(--color-text-light);font-size:.85rem}.general-birthday-alert{background:linear-gradient(135deg,#f02fc2,#6094ea);color:#fff;padding:16px;border-radius:var(--radius-md);display:flex;align-items:center;gap:16px;box-shadow:0 4px 15px #f02fc233;border:1px solid rgba(255,255,255,.1);margin-bottom:4px}.general-birthday-icons{display:flex;align-items:center;gap:6px;background-color:#fffffff2;padding:6px 10px;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);border:1.5px solid #122a60}.general-birthday-alert-info strong{display:block;font-size:.95rem;margin-bottom:2px}.general-birthday-alert-info p{margin:0;font-size:.85rem;opacity:.9}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.general-birthday-upcoming{background-color:#f0fdf4;border:1px solid #bbf7d0;color:#166534;padding:12px 16px;border-radius:var(--radius-md);display:flex;align-items:center;gap:12px;box-shadow:var(--shadow-sm);margin-bottom:4px}.general-birthday-upcoming-gift{background-color:#dcfce7;color:#16a34a;padding:6px;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.general-birthday-upcoming-info strong{display:block;font-size:.85rem;margin-bottom:2px}.general-birthday-upcoming-info p{margin:0;font-size:.8rem;opacity:.9}.doc-viewer-modal-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:2000}.doc-viewer-modal-content{background-color:var(--color-white);border-radius:var(--radius-lg);width:90%;max-width:850px;box-shadow:var(--shadow-lg);overflow:hidden;display:flex;flex-direction:column;animation:modalFadeIn .3s ease}.doc-viewer-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:2px solid var(--color-border);background-color:#fafafa}.word-preview,.ppt-preview{padding:10px}.word-preview h4,.ppt-preview h4{margin-top:0}.word-preview table{border:1px solid var(--color-border);margin-top:15px;width:100%;border-collapse:collapse}.word-preview th,.word-preview td{padding:10px;border:1px solid var(--color-border);text-align:left}.word-preview th{background-color:#f7f7f7}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.ai-pass-section{margin-top:32px}.ai-card{border:1px solid rgba(160,32,97,.15);background:linear-gradient(180deg,#fff,#faf8fc);position:relative;overflow:hidden}.ai-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary))}.ai-template-tags button{transition:all .2s ease;background-color:var(--color-white)}.ai-template-tags button:hover{background-color:var(--color-background-soft);border-color:var(--color-secondary);color:var(--color-secondary);transform:translateY(-1px)}.ai-results-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:start}@media (max-width: 992px){.ai-results-grid{grid-template-columns:1fr}}.ai-editor-fields .form-control{border:1px solid var(--color-border);background-color:var(--color-white);transition:all .2s ease}.ai-editor-fields .form-control:focus{border-color:var(--color-secondary);box-shadow:0 0 0 3px #c8287a1a}.ai-preview-panel{background-color:#f0f0f4;padding:20px;border-radius:var(--radius-lg);display:flex;justify-content:center;align-items:center;border:1px solid var(--color-border);box-shadow:inset 0 2px 8px #0000000d}.paper-pass{background-color:#fff;width:100%;max-width:500px;min-height:600px;padding:36px 40px;box-shadow:0 10px 30px #00000014,0 1px 3px #00000005;border-radius:2px;font-family:Arial,sans-serif;color:#1a1a1a;line-height:1.5;font-size:.82rem;display:flex;flex-direction:column;box-sizing:border-box;text-align:justify}.paper-title{font-family:Arial,sans-serif;font-size:.95rem;font-weight:700;text-align:center;text-transform:uppercase;color:#000;margin-bottom:24px;border-bottom:2px solid #000000;padding-bottom:8px;letter-spacing:.5px}.paper-date{font-size:.82rem;margin-bottom:16px;color:#000}.paper-text{margin-bottom:12px;text-indent:20px;color:#222}.paper-text strong{color:#000}.paper-list-container{margin:12px 0;font-size:.8rem}.paper-list-container strong{display:block;margin-bottom:6px;color:#000}.paper-list-container ul{padding-left:18px;list-style-type:disc;margin:0}.paper-list-container li{margin-bottom:4px;color:#333}.paper-signature{margin-top:auto;padding-top:24px;border-top:1px dashed #e0e0e0;font-size:.76rem;line-height:1.4;color:#333}.paper-signature strong{color:#000}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.clinical-guide-container{animation:slideDown .3s ease-out}.guide-tab-btn{transition:all .2s ease;border:1px solid transparent!important}.guide-tab-btn:hover{background-color:var(--color-background-soft)!important;color:var(--color-secondary)!important}.guide-tab-btn.active{background-color:#fae4ef!important;color:var(--color-secondary)!important;border-color:#c8287a33!important}.guide-criterion-card{transition:all .2s ease;border:1px solid var(--color-border)}.guide-criterion-card:hover{border-color:var(--color-secondary)!important;background-color:#fdfafd!important;transform:translate(4px);box-shadow:var(--shadow-sm)}.summary-guide-table{border:1px solid var(--color-border);border-radius:var(--radius-md);margin-top:8px}.summary-guide-table th{background-color:#fafafa;color:var(--color-text);text-transform:none;font-size:.8rem;padding:8px 12px}.summary-guide-table td{padding:8px 12px;font-size:.78rem}.summary-row-hover:hover{background-color:#fdfafd!important}.summary-row-hover:hover td{color:var(--color-secondary)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.page-container{display:flex;flex-direction:column}.resumen-details{display:flex;flex-direction:column;gap:16px;margin-top:24px}.detail-group strong{display:block;color:var(--color-primary);margin-bottom:4px}.detail-group p{margin:0;color:var(--color-text)}.form-card{max-width:800px;margin:0 auto}.registro-form{margin-top:24px}.full-width{grid-column:1 / -1}.registro-form .btn{margin-top:16px}.material-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}.material-icon{color:var(--color-primary);background-color:var(--color-background-soft);padding:24px;border-radius:50%;margin-bottom:8px}.material-card h4{margin:0;font-size:1.1rem}.material-type{font-size:.85rem;color:var(--color-text-light)}.material-actions{display:flex;gap:8px;margin-top:16px;width:100%}.material-actions .btn{flex:1;padding:8px;font-size:.85rem}@media (max-width: 768px){.tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:8px}}.calendar-container{background-color:var(--color-white);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);overflow-x:auto;margin-top:10px}.calendar-grid-header{border-bottom:2px solid var(--color-background-soft);padding-bottom:8px;margin-bottom:12px}.calendar-day-cell{background-color:var(--color-white);border:1px solid var(--color-border);border-radius:8px;min-height:115px;padding:8px;cursor:pointer;display:flex;flex-direction:column;gap:6px;position:relative;transition:all .25s cubic-bezier(.4,0,.2,1)!important}.calendar-day-cell:hover{border-color:var(--color-primary)!important;box-shadow:0 6px 16px #2d1b6914!important;transform:translateY(-2px);z-index:2}.calendar-day-cell.inactive{background-color:#fafafa!important;opacity:.55!important}.calendar-day-cell.today{border:2px solid var(--color-primary)!important;box-shadow:0 4px 12px #2d1b691f!important}.day-number-header span{font-family:var(--font-heading);font-size:.85rem!important;font-weight:700;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.calendar-day-cell:hover .day-number-header span{color:var(--color-primary);background-color:var(--color-background-soft)}.calendar-day-cell.today .day-number-header span{background-color:var(--color-primary)!important;color:var(--color-white)!important}.day-cell-events{display:flex;flex-direction:column;gap:4px;overflow-y:auto;flex:1;max-height:80px;padding-right:2px}.calendar-event-item{padding:4px 8px;font-size:.75rem!important;border:none;border-radius:4px;text-align:left;cursor:pointer;width:100%;display:block;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-weight:600;height:24px;line-height:1.3;transition:all .2s ease}.calendar-event-item:hover{transform:translate(2px);filter:brightness(.95);box-shadow:0 2px 4px #0000000d}.calendar-event-item.status-realizada{background-color:#e6f6ec!important;color:#2b7a4e!important;border-left:3px solid var(--color-success)!important}.calendar-event-item.status-programada{background-color:#e5f7f5!important;color:#1e857a!important;border-left:3px solid var(--color-info)!important}.calendar-event-item.status-reprogramada{background-color:#fef4e5!important;color:#b07412!important;border-left:3px solid var(--color-warning)!important}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-backdrop{animation:backdropFadeIn .25s ease forwards}@keyframes backdropFadeIn{0%{background-color:#0000}to{background-color:#2d1b6966}}.modal-content{border:none!important;box-shadow:var(--shadow-lg)!important;background-color:var(--color-white)!important;border-radius:var(--radius-lg)!important;overflow:hidden}.modal-close-btn{transition:all .2s ease;padding:4px;border-radius:50%;display:flex;align-items:center;justify-content:center}.modal-close-btn:hover{background-color:var(--color-background-soft);color:var(--color-secondary)!important}.day-cell-events::-webkit-scrollbar{width:3px}.day-cell-events::-webkit-scrollbar-track{background:transparent}.day-cell-events::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.day-cell-events::-webkit-scrollbar-thumb:hover{background:var(--color-text-light)}.solicitud-form{margin-top:24px}.alert-card{display:flex;gap:20px;align-items:center;padding:24px}.alert-icon{padding:16px;border-radius:50%;display:flex;align-items:center;justify-content:center}.alert-card.warning .alert-icon{background-color:#fef4e5;color:var(--color-warning)}.alert-card.danger .alert-icon{background-color:#fae4ef;color:var(--color-secondary)}.alert-card.neutral .alert-icon{background-color:#f0f0f0;color:var(--color-text-light)}.alert-card.info .alert-icon{background-color:#e5f7f5;color:var(--color-info)}.alert-content h4{margin:0 0 4px;font-size:1.1rem}.alert-content p{margin:0;color:var(--color-text-light);font-size:.95rem}.mt-2{margin-top:12px}.nuevo-pedido-container{display:grid;grid-template-columns:1fr;gap:24px}@media (min-width: 992px){.nuevo-pedido-container{grid-template-columns:1.7fr 1fr}}.pedido-selector-col{display:flex;flex-direction:column}.category-pill{padding:8px 16px;border-radius:20px;background-color:var(--color-background-soft);color:var(--color-primary);border:1px solid transparent;font-family:var(--font-heading);font-weight:600;font-size:.85rem;cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:8px;transition:all .2s ease}.category-pill:hover{background-color:#ebd9fc}.category-pill.active{background-color:var(--color-primary);color:var(--color-white)}.cat-badge{background-color:var(--color-secondary);color:var(--color-white);border-radius:50%;width:18px;height:18px;font-size:.7rem;display:flex;align-items:center;justify-content:center;font-weight:700}.items-list-container{margin-top:10px;border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:#fdfdfd}.items-list-scrollable{max-height:480px;overflow-y:auto;padding:8px 0}.item-order-row{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-bottom:1px solid #f0f0f0;transition:background-color .15s ease}.item-order-row:last-child{border-bottom:none}.item-order-row:hover{background-color:#faf7fd}.item-info{display:flex;flex-direction:column;gap:4px;flex:1;padding-right:16px}.item-name{font-weight:500;color:var(--color-text);font-size:.95rem}.item-cat-tag{font-size:.75rem;color:var(--color-text-light);background-color:#eaeaea;padding:2px 6px;border-radius:4px;align-self:flex-start}.item-qty-control{display:flex;align-items:center;gap:4px}.qty-btn{width:32px;height:32px;border-radius:50%;border:1px solid var(--color-border);background-color:var(--color-white);color:var(--color-text);font-weight:600;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;-webkit-user-select:none;user-select:none}.qty-btn:hover:not(:disabled){background-color:var(--color-background-soft);border-color:var(--color-primary);color:var(--color-primary)}.qty-btn:disabled{opacity:.4;cursor:not-allowed}.qty-input{width:50px;height:32px;text-align:center;border:1px solid var(--color-border);border-radius:4px;font-size:.95rem;font-family:var(--font-body)}.qty-input:focus{outline:none;border-color:var(--color-primary)}.pedido-summary-col{display:flex;flex-direction:column}.sticky-card{position:sticky;top:24px}.summary-list{border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:#fafafa;max-height:240px;overflow-y:auto;padding:8px}.empty-summary-placeholder{padding:24px 12px;text-align:center;color:var(--color-text-light);font-size:.85rem}.summary-item-row{display:flex;justify-content:space-between;align-items:center;background-color:var(--color-white);border:1px solid #eee;border-radius:6px;padding:8px 12px;margin-bottom:8px;gap:12px}.summary-item-row:last-child{margin-bottom:0}.summary-item-text{display:flex;flex-direction:column;flex:1;min-width:0}.summary-item-name{font-size:.85rem;font-weight:500;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-item-qty{font-size:.75rem;color:var(--color-secondary);font-weight:600}.summary-delete-btn{background:none;border:none;color:var(--color-text-light);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;font-size:.9rem;border-radius:4px;transition:all .15s ease}.summary-delete-btn:hover{background-color:#fee;color:var(--color-secondary)}.empty-search-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;color:var(--color-text-light);text-align:center}.item-origin-tag{font-size:.72rem;font-weight:600;padding:2px 8px;border-radius:12px;display:inline-flex;align-items:center;gap:3px}.item-origin-tag.farmacia{background-color:#fef3c7;color:#b45309;border:1px solid #fde68a}.item-origin-tag.bodega{background-color:#e0f2fe;color:#0369a1;border:1px solid #bae6fd}.reportes-page{display:flex;flex-direction:column}.reportes-content{max-width:750px;margin:20px auto 40px;padding:40px;width:100%}.reportes-header-info{display:flex;align-items:center;gap:20px;margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid var(--color-border)}.reportes-icon-wrapper{background-color:#fae4ef;color:var(--color-secondary);padding:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.reportes-icon-wrapper.office-icon{background-color:#e5f7f5;color:var(--color-info)}.reportes-header-info h3{margin:0 0 6px;font-size:1.25rem;color:var(--color-primary)}.reportes-header-info p{margin:0;color:var(--color-text-light);font-size:.9rem;line-height:1.4}.btn-submit-report{font-size:1rem;font-weight:600;height:48px;margin-top:15px}.success-msg{padding:12px;border-radius:var(--radius-md);margin-top:15px;font-weight:500;font-size:.95rem;text-align:center;border:1px solid #c3e6cb;background-color:#d4edda;color:#155724}@media (max-width: 768px){.reportes-content{padding:24px;margin:10px auto}.reportes-header-info{flex-direction:column;text-align:center;align-items:center;gap:12px}}.image-upload-container{display:flex;flex-direction:column;align-items:flex-start;width:100%}.image-upload-label{display:inline-flex;align-items:center;gap:10px;background-color:var(--color-background-soft);color:var(--color-primary);border:2px dashed var(--color-primary);border-radius:var(--radius-md);padding:12px 20px;cursor:pointer;font-family:var(--font-heading);font-weight:600;transition:all .2s ease;width:100%;justify-content:center}.image-upload-label:hover{background-color:#ebdffd;transform:translateY(-1px)}.image-preview-wrapper{margin-top:15px;position:relative;display:inline-block;border-radius:var(--radius-lg);overflow:visible}.image-upload-preview{max-width:100%;max-height:180px;border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);display:block}.btn-remove-image{position:absolute;top:-8px;right:-8px;background-color:#ef4444;color:#fff;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 4px #0003;padding:0;transition:all .2s ease}.btn-remove-image:hover{transform:scale(1.1);background-color:#dc2626}.doc-card{display:flex;align-items:center;gap:16px;padding:20px}.doc-icon{background-color:var(--color-background-soft);color:var(--color-primary);padding:16px;border-radius:12px;display:flex;align-items:center;justify-content:center}.doc-info{flex:1}.doc-info h4{margin:0 0 4px;font-size:1.05rem}.doc-info p{margin:0;color:var(--color-text-light);font-size:.85rem}.doc-actions{display:flex;gap:8px}.mb-4{margin-bottom:32px}.team-card{display:flex;flex-direction:column;align-items:center;text-align:center}.team-avatar{width:80px;height:80px;background-color:var(--color-primary);color:var(--color-white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-family:var(--font-heading);font-weight:700;margin-bottom:16px}.team-card h4{margin:0 0 4px;font-size:1.15rem}.team-role{color:var(--color-text);font-weight:600;font-size:.95rem;margin-bottom:4px}.team-area{background-color:var(--color-background-soft);color:var(--color-primary);padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:600;margin-bottom:16px}.team-contact{display:flex;flex-direction:column;gap:8px;width:100%;padding-bottom:16px;border-bottom:1px solid var(--color-border);margin-bottom:16px}.team-contact a,.team-contact span{display:flex;align-items:center;justify-content:center;gap:8px;font-size:.9rem;color:var(--color-text-light)}.team-contact a:hover{color:var(--color-primary)}.team-responsibilities{text-align:left;width:100%;font-size:.9rem}.team-responsibilities strong{display:block;color:var(--color-text);margin-bottom:4px}.team-responsibilities p{margin:0;color:var(--color-text-light)}.admin-chat-item:hover{background-color:#f5f0fa!important;border-color:#ebdffd!important}.mensajes-chat-page{display:flex;justify-content:center;align-items:center;max-width:900px;margin:0 auto;padding:10px 0 30px}.chat-container{display:flex;flex-direction:column;height:600px;width:100%;padding:0!important;overflow:hidden}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--color-border);background-color:var(--color-white);z-index:10}.chat-user-info{display:flex;align-items:center;gap:12px}.chat-user-avatar{background-color:var(--color-background-soft);color:var(--color-primary);width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid #ebdffd}.chat-user-info h3{margin:0;font-size:1.1rem;font-weight:600;color:var(--color-primary)}.chat-status-indicator{display:flex;align-items:center;gap:6px;margin-top:2px}.status-dot{width:8px;height:8px;background-color:var(--color-success);border-radius:50%;display:inline-block;box-shadow:0 0 #3cb37166;animation:pulse-green 2s infinite}.status-text{font-size:.8rem;color:var(--color-text-light)}.chat-messages-area{flex-grow:1;overflow-y:auto;padding:24px;background-color:var(--color-background);display:flex;flex-direction:column;gap:16px}.chat-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;margin:auto;color:var(--color-text-light);padding:40px}.chat-empty-state p{margin:0;font-weight:500}.chat-message-row{display:flex;width:100%}.chat-message-row.incoming{justify-content:flex-start}.chat-message-row.outgoing{justify-content:flex-end}.message-bubble{max-width:70%;padding:12px 16px;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);position:relative;line-height:1.45;font-size:.95rem}.chat-message-row.incoming .message-bubble{background-color:var(--color-white);color:var(--color-text);border-top-left-radius:2px}.chat-message-row.outgoing .message-bubble{background-color:var(--color-primary);color:var(--color-white);border-top-right-radius:2px}.message-text{word-break:break-word;white-space:pre-wrap}.message-meta{display:flex;justify-content:flex-end;align-items:center;gap:4px;margin-top:6px;font-size:.72rem;opacity:.7}.chat-message-row.incoming .message-time{color:var(--color-text-light)}.chat-message-row.outgoing .message-time{color:#ebdffd}.message-status{font-weight:500}.message-status.read{color:#ebdffd}.message-status.sent{color:#c9bcf0}.chat-input-area{display:flex;align-items:center;gap:12px;padding:16px 24px;border-top:1px solid var(--color-border);background-color:var(--color-white)}.chat-input-field{flex-grow:1;border:1px solid var(--color-border);border-radius:24px;padding:10px 18px;font-family:var(--font-body);font-size:.95rem;resize:none;max-height:80px;min-height:42px;line-height:1.3;transition:border-color .2s,box-shadow .2s;outline:none;background-color:#fcfcfc}.chat-input-field:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #2d1b691a;background-color:var(--color-white)}.chat-send-btn{border-radius:50%!important;width:42px!important;height:42px!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important;padding:0!important;min-width:42px!important;background-color:var(--color-primary)!important;color:var(--color-white)!important;transition:transform .2s,background-color .2s}.chat-send-btn:hover{background-color:#1a0f3d!important;transform:scale(1.05)}.chat-send-btn:active{transform:scale(.95)}@keyframes pulse-green{0%{transform:scale(.95);box-shadow:0 0 #3cb371b3}70%{transform:scale(1);box-shadow:0 0 0 6px #3cb37100}to{transform:scale(.95);box-shadow:0 0 #3cb37100}}@media (max-width: 576px){.chat-container{height:500px}.chat-header{padding:12px 16px}.chat-messages-area{padding:16px}.chat-input-area{padding:12px 16px}.message-bubble{max-width:85%}}.chat-messages-area::-webkit-scrollbar{width:6px}.chat-messages-area::-webkit-scrollbar-track{background:transparent}.chat-messages-area::-webkit-scrollbar-thumb{background-color:#0000001a;border-radius:3px}.chat-messages-area::-webkit-scrollbar-thumb:hover{background-color:#0003}.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,var(--color-primary),#4a349c);padding:20px}.login-card{width:100%;max-width:450px;padding:40px;display:flex;flex-direction:column;gap:32px}.login-header{text-align:center}.login-logos{display:flex;justify-content:center;gap:12px;margin-bottom:24px}.login-header h2{margin:0 0 8px;font-size:1.8rem}.login-header p{margin:0;color:var(--color-text-light);font-size:1rem}.login-form{display:flex;flex-direction:column;gap:20px}.input-with-icon{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:16px;color:var(--color-text-light)}.input-with-icon .form-control{padding-left:48px;height:48px}.login-btn{height:48px;font-size:1rem;margin-top:8px}.login-error{background-color:#fae4ef;color:var(--color-secondary);padding:12px;border-radius:var(--radius-md);font-size:.9rem;text-align:center;font-weight:500}.login-footer{text-align:center;border-top:1px solid var(--color-border);padding-top:24px}.login-footer p{margin:0;font-size:.85rem;color:var(--color-text-light)}.perfil-page{max-width:900px;margin:0 auto;padding:20px 0}.perfil-grid{display:grid;grid-template-columns:1fr 1.8fr;gap:24px;margin-top:24px}@media (max-width: 768px){.perfil-grid{grid-template-columns:1fr}}.avatar-upload-container{display:inline-block;cursor:pointer}.avatar-upload-container:hover .avatar-edit-badge{background-color:var(--color-primary-dark, #1d4ed8)!important}.avatar-edit-badge{transition:transform .2s ease,background-color .2s ease!important}.avatar-edit-badge:hover{transform:scale(1.05)}.perfil-avatar-preview img{transition:transform .3s ease}.avatar-upload-container:hover .perfil-avatar-preview img{transform:scale(1.05)}.perfil-card,.settings-card{align-self:start;border:1px solid var(--color-border);box-shadow:0 4px 20px #0000000d}.app-wrapper{display:flex;flex-direction:column;min-height:100vh}.app-main{flex:1;padding:40px 0}.app-header{background-color:var(--color-white);border-bottom:3px solid var(--color-primary);padding:16px 0}.header-content{display:flex;justify-content:space-between;align-items:center}.header-left{display:flex;gap:16px;align-items:center}.brand-logo{max-height:48px;width:auto;object-fit:contain}.cesfam-logo{max-height:52px}.codep-logo{max-height:40px}.header-right{display:flex;align-items:center;gap:24px;text-align:right}.header-titles h1{margin:0;font-size:1.2rem;color:var(--color-primary)}.header-titles p{margin:0;font-size:.85rem;color:var(--color-secondary);font-weight:600}.logout-btn{padding:8px 12px;font-size:.85rem;border-color:var(--color-border);color:var(--color-text-light)}.logout-btn:hover{background-color:#fae4ef;color:var(--color-secondary);border-color:var(--color-secondary)}.app-navbar{background-color:var(--color-primary);position:sticky;top:0;z-index:100;box-shadow:var(--shadow-md)}.nav-content{display:flex;align-items:center}.nav-links{display:flex;width:100%}.nav-links li{margin:0}.nav-link{display:flex;align-items:center;gap:8px;color:#fffc;font-family:var(--font-heading);font-weight:600;font-size:.95rem;padding:16px 24px;transition:all .2s ease}.nav-link:hover{color:var(--color-white);background-color:#ffffff1a}.nav-link.active{color:var(--color-white);background-color:#0003;border-bottom:3px solid var(--color-warning)}.nav-dropdown{position:relative}.dropdown-toggle{display:flex;align-items:center;gap:4px}.dropdown-menu{display:none;position:absolute;top:100%;left:0;background-color:var(--color-primary);min-width:220px;box-shadow:var(--shadow-lg);border-radius:0 0 var(--radius-md) var(--radius-md);padding:8px 0;list-style:none;z-index:1000;border-top:3px solid var(--color-warning)}.dropdown-menu.show{display:block}.dropdown-menu li{width:100%}.dropdown-menu .nav-link{padding:10px 20px;font-size:.9rem;font-weight:500;background-color:transparent!important;border-bottom:none!important}.dropdown-menu .nav-link:hover{background-color:#ffffff1a!important}.dropdown-menu .nav-link.active{background-color:#ffffff26!important;color:var(--color-warning)}@media (min-width: 769px){.nav-dropdown:hover .dropdown-menu{display:block}}@media (max-width: 768px){.dropdown-menu{position:static;box-shadow:none;background-color:#00000026;padding-left:20px;border-top:none;width:100%}}.mobile-menu-btn{display:none;background:none;border:none;color:#fff;padding:16px;cursor:pointer}.app-footer{background-color:var(--color-primary);color:var(--color-white);padding:40px 0;margin-top:auto}.footer-content{display:flex;flex-direction:column;align-items:center;text-align:center;gap:24px}.footer-logos{display:flex;gap:20px;background-color:var(--color-white);padding:10px 24px;border-radius:var(--radius-lg);align-items:center}.footer-text p{margin-bottom:4px;font-size:.9rem;opacity:.9}@media (max-width: 768px){.header-content{flex-direction:column;gap:16px;text-align:center}.header-right{text-align:center}.mobile-menu-btn{display:block}.nav-links{display:none;flex-direction:column;width:100%}.nav-links.active{display:flex}.nav-link{padding:16px;width:100%;border-bottom:1px solid rgba(255,255,255,.1)}.nav-link.active{border-bottom:none;border-left:4px solid var(--color-warning)}}:root{--color-primary: #2D1B69;--color-secondary: #C8287A;--color-success: #3CB371;--color-warning: #F5A623;--color-info: #2BBFB0;--color-background-soft: #F7F0FF;--color-background: #F8F7F5;--color-white: #FFFFFF;--color-text: #333333;--color-text-light: #666666;--color-border: #E0E0E0;--font-heading: "Montserrat", sans-serif;--font-body: "Open Sans", sans-serif;--shadow-sm: 0 2px 4px rgba(0,0,0,.05);--shadow-md: 0 4px 6px rgba(0,0,0,.07);--shadow-lg: 0 10px 15px rgba(0,0,0,.1);--radius-md: 8px;--radius-lg: 12px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-background);line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-primary);font-weight:600;margin-bottom:.5rem}a{text-decoration:none;color:var(--color-primary)}ul{list-style:none}.container{max-width:1200px;margin:0 auto;padding:0 20px}.btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-weight:500;padding:10px 20px;border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;border:none;font-size:.95rem;gap:8px}.btn-primary{background-color:var(--color-primary);color:var(--color-white)}.btn-primary:hover{background-color:#1a0f3d}.btn-secondary{background-color:var(--color-secondary);color:var(--color-white)}.btn-secondary:hover{background-color:#a02061}.btn-outline{background-color:transparent;color:var(--color-primary);border:1px solid var(--color-primary)}.btn-outline:hover{background-color:var(--color-background-soft)}.card{background-color:var(--color-white);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease}.card:hover{box-shadow:var(--shadow-md)}.badge{display:inline-block;padding:4px 8px;border-radius:20px;font-size:.8rem;font-weight:600;font-family:var(--font-body)}.badge-success{background-color:#e6f6ec;color:var(--color-success)}.badge-warning{background-color:#fef4e5;color:var(--color-warning)}.badge-danger{background-color:#fae4ef;color:var(--color-secondary)}.badge-info{background-color:#e5f7f5;color:var(--color-info)}.badge-neutral{background-color:#f0f0f0;color:var(--color-text-light)}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}@media (max-width: 992px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 576px){.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}}.table-container{width:100%;overflow-x:auto;background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}table{width:100%;border-collapse:collapse;text-align:left}th,td{padding:16px;border-bottom:1px solid var(--color-border)}th{font-family:var(--font-heading);color:var(--color-text-light);font-weight:600;font-size:.9rem;text-transform:uppercase;background-color:#fafafa}td{font-size:.95rem}tr:last-child td{border-bottom:none}tr:hover{background-color:#fcfcfc}.form-group{margin-bottom:16px}.form-label{display:block;margin-bottom:8px;font-weight:500;color:var(--color-text)}.form-control{width:100%;padding:12px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-body);font-size:.95rem;transition:border-color .2s}.form-control:focus{outline:none;border-color:var(--color-primary)}.page-header{margin-bottom:32px}.page-title{font-size:2rem;color:var(--color-primary)}.page-subtitle{font-size:1.1rem;color:var(--color-text-light);margin-top:8px}.tabs{display:flex;gap:16px;border-bottom:1px solid var(--color-border);margin-bottom:24px;overflow-x:auto}.tab-btn{background:none;border:none;padding:12px 16px;font-family:var(--font-heading);font-weight:600;color:var(--color-text-light);cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap}.tab-btn.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}
