body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}#root,body,html{height:100%}body{background:#f4f7fa;color:#1f2937;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,Helvetica,Arial,Apple Color Emoji,Segoe UI Emoji;margin:0}.app-container{align-items:center;justify-content:center;padding:24px}.app-container,.dashboard-container{background:#f4f7fa;display:flex;min-height:100vh}.content-body{background:#0000;border:none;box-shadow:none}.sidebar{background:#fff;border-right:1px solid #e5e7eb;box-shadow:0 4px 12px #0000000d;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;transition:width .3s ease;width:280px;z-index:100}.sidebar-content{background:#fff;color:#1f2937}.sidebar.collapsed{width:80px}.sidebar-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:24px 20px}.sidebar-buttons{align-items:center;display:flex;gap:8px}.mobile-close-btn{background:#ef44441a;border:1px solid #ef44444d;border-radius:4px;color:#ef4444;cursor:pointer;display:none;font-size:14px;padding:6px 8px;transition:all .2s ease}.mobile-close-btn:hover{background:#ef444433;border-color:#ef444480}@media (max-width:768px){.mobile-close-btn{display:block}}.sidebar-title{flex:1 1;margin-right:12px}.app-name{color:#ff6b35;font-size:14px;font-weight:700;margin:0 0 4px}.app-name,.username{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.username{color:#333;font-size:16px;font-weight:600;margin:0}.collapse-btn{background:#ff6b351a;border:1px solid #ff6b354d;border-radius:6px;color:#ff6b35;cursor:pointer;font-size:14px;min-width:32px;padding:8px;transition:all .2s ease}.collapse-btn:hover{background:#ff6b3533;border-color:#ff6b3580}.sidebar-content{flex:1 1;overflow-y:auto;padding:20px}.sidebar-footer{border-top:1px solid #94a3b81a;padding:20px}.logout-btn{background:#dc2626;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:12px 16px;transition:all .2s ease;width:100%}.logout-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}.main-content{background:#f4f7fa;flex:1 1;margin-left:280px;padding:32px;transition:margin-left .3s ease}.content-header{display:flex;flex-direction:column;gap:16px;margin-bottom:32px;width:100%}@media (min-width:769px){.content-header{margin-left:auto;margin-right:auto;max-width:1200px}.header-spacer-div,.mobile-toggle-btn{display:none!important}.header-logo-container{display:flex;justify-content:center;width:100%}}@media (max-width:768px){.content-header{gap:12px;padding:0 16px}.content-header.dashboard-header{align-items:center;flex-direction:row;justify-content:space-between}.content-header.dashboard-header .header-button-container{display:flex;flex:1 1;justify-content:flex-start}.content-header.dashboard-header .header-logo-container{display:flex;flex:0 0 auto;justify-content:center}.content-header.dashboard-header .header-spacer-div{flex:1 1}.oxxo-logo{font-size:36px!important;padding:12px 24px!important}.content-header h1{font-size:24px!important}}.header-top-row{display:flex;justify-content:flex-start;width:100%}.logo-container{display:flex;justify-content:center;margin-bottom:0;width:100%}.oxxo-logo{background:linear-gradient(135deg,#f97316,#ea580c);border-radius:12px;box-shadow:0 8px 25px #f973164d;color:#fff;display:inline-block;font-family:Arial Black,sans-serif;font-size:48px;font-weight:900;letter-spacing:4px;padding:16px 32px;text-shadow:2px 2px 4px #0000004d}.header-title-row{align-items:flex-start;display:flex;flex-direction:column;padding-left:4px;width:100%}.content-header h1{color:#333;font-size:32px;font-weight:700;margin:0 0 8px;text-align:left}.content-header p{color:#6b7280;font-size:16px;margin:0;text-align:left}.content-body{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 4px 12px #0000000d;padding:24px}.content-body p{color:#333;font-size:16px;line-height:1.6;margin:0}.filter-section{background:#0000;border:none;border-radius:12px;box-shadow:none;margin-bottom:32px;padding:24px}.filter-section h3{color:#333;font-size:20px;font-weight:600;margin:0 0 16px}.search-container{display:flex;gap:12px;margin-bottom:20px}.search-input{background:#fff;border:2px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000000d;color:#333;flex:1 1;font-size:14px;outline:none;padding:12px 16px;transition:border-color .2s ease}.search-input::placeholder{color:#9ca3af}.search-input:focus{border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a}.search-btn{background:linear-gradient(135deg,#f97316,#ea580c);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:12px 20px;transition:all .2s ease;white-space:nowrap}.search-btn:hover{background:linear-gradient(135deg,#ea580c,#f97316);transform:translateY(-1px)}.search-results{margin-top:20px}.search-results h4{color:#e2e8f0;font-size:16px;font-weight:600;margin:0 0 8px}.search-instructions{background:#60a5fa0d;border:1px solid #60a5fa1a;border-radius:6px;color:#a0aec0;font-size:13px;font-style:italic;margin:0 0 16px;padding:8px;text-align:center}.results-list{display:flex;flex-direction:column;gap:8px}.result-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 8px #0000000d;display:flex;justify-content:space-between;padding:12px 16px;transition:all .2s ease}.result-item.clickable{cursor:pointer;transition:all .2s ease}.result-item.clickable:hover{background:#f8f9fa;border-color:#ff6b354d;box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.result-item.clickable.clicked{background:#ff6b351a;border-color:#ff6b3580;box-shadow:0 0 20px #ff6b3533;transform:scale(.98);transition:all .1s ease}.result-action{display:flex;justify-content:center;margin-top:8px}.click-hint{animation:pulse 2s infinite;background:#60a5fa1a;border-radius:4px;color:#60a5fa;font-size:11px;font-weight:500;padding:4px 8px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.result-info{display:flex;flex-direction:column;gap:4px}.result-name{color:#333;font-weight:600}.result-docs{color:#ff6b35;font-size:12px}.result-type{background:#6b72801a;border-radius:4px;color:#6b7280;font-size:12px;padding:4px 8px}.no-results{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;margin-top:20px;padding:16px;text-align:center}.no-results p{color:#dc2626;font-size:14px;margin:0}.search-tips{color:#94a3b8!important;font-size:12px!important;font-style:italic;margin-top:8px!important}.dashboard-info{margin-top:24px}.store-management-section{background:#0000;border:none;box-shadow:none;margin-bottom:24px;text-align:center}.store-management-section .store-management-btn{align-items:center;background:linear-gradient(135deg,#f97316,#ea580c);border:none;border-radius:10px;box-shadow:0 4px 12px #f973164d;color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;gap:10px;padding:14px 28px;transition:all .2s ease}.store-management-section .store-management-btn:hover{background:linear-gradient(135deg,#ea580c,#f97316);box-shadow:0 6px 16px #f9731666;transform:translateY(-2px)}.stats-header{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 4px 12px #0000000d;margin-bottom:24px;padding:24px}.quick-actions{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-bottom:32px}.quick-actions .download-app-btn,.quick-actions .versions-btn{flex:1 1;max-width:200px;min-width:160px}.stats-header h3{color:#1f2937;font-size:20px;font-weight:600;margin:0 0 20px;text-align:center}.stats-grid{display:flex;flex-wrap:wrap;gap:16px;justify-content:center}.stat-card{align-items:center;background:linear-gradient(135deg,#f8f9fa,#fff);border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 8px #0000000d;display:flex;flex:1 1;gap:12px;max-width:200px;min-width:180px;padding:16px 20px;transition:all .2s ease}.stat-card:hover{border-color:#ff6b35;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.stat-icon{font-size:24px;opacity:.8}.stat-content{display:flex;flex-direction:column;gap:4px}.stat-number{color:#ff6b35;font-size:24px;font-weight:700;line-height:1}.stat-label{color:#6b7280;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.folders-section{background:#0000;border:none;box-shadow:none;margin-bottom:32px}.folders-section h3{color:#333;font-size:20px;font-weight:600;margin:0 0 20px}.folders-grid{grid-gap:16px;border-radius:8px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));max-height:400px;overflow-y:auto;padding:8px}.folder-item,.folders-grid{background:#fff;border:1px solid #e5e7eb;box-shadow:0 2px 8px #0000000d}.folder-item{align-items:center;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:16px;transition:all .2s ease}.folder-item:hover{background:#f8f9fa;border-color:#ff6b354d;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.folder-icon{color:#ff6b35;font-size:24px}.folder-info{display:flex;flex:1 1;flex-direction:column;gap:4px}.folder-name{color:#333;font-size:14px;font-weight:600}.folder-docs{color:#6b7280;font-size:12px}.existing-files{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #0000000d;margin-top:20px;padding:16px}.existing-files h4{color:#e2e8f0;font-size:16px;font-weight:600;margin:0 0 12px}.documents-list{display:flex;flex-direction:column;gap:8px}.document-item{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;border-radius:6px;box-shadow:0 2px 8px #0000000d;display:flex;justify-content:space-between;padding:12px;transition:all .2s ease}.document-item:hover{background:#f8f9fa}.document-info{display:flex;flex:1 1;flex-direction:column;gap:4px}.document-name{color:#1f2937;font-size:14px;font-weight:600}.document-type{background:#6b72801a;border-radius:3px;display:inline-block;padding:2px 6px;width:-webkit-fit-content;width:fit-content}.document-date,.document-type{color:#6b7280;font-size:11px}.document-expiration{border-radius:3px;display:inline-block;font-size:11px;font-weight:600;padding:2px 6px;width:-webkit-fit-content;width:fit-content}.document-expiration.valid{background:#10b9811a;color:#10b981}.document-expiration.expired{background:#ef44441a;color:#ef4444}.document-actions{display:flex;gap:8px}.document-btn{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 8px;transition:all .2s ease}.document-btn.delete{background:#ef44441a;border:1px solid #ef44444d;color:#ef4444}.document-btn.delete:hover{background:#ef444433;border-color:#ef444480}.no-documents{background:#0f172a33;border:1px solid #94a3b81a;border-radius:8px;margin-top:20px;padding:16px;text-align:center}.no-documents p{color:#a0aec0;font-size:14px;font-style:italic;margin:0}.folders-grid::-webkit-scrollbar{width:8px}.folders-grid::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.folders-grid::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.back-btn{background:#ff6b351a;border:1px solid #ff6b354d;border-radius:6px;color:#ff6b35;margin-bottom:16px;padding:8px 16px}.back-btn:hover{background:#ff6b3533;border-color:#ff6b3580}.folder-header{align-items:flex-start;display:flex;flex-direction:column}.folder-header h1{margin:8px 0}.folder-item.clickable{cursor:pointer;transition:all .2s ease}.folder-item.clickable:hover{background:#f8f9fa;border-color:#ff6b354d;box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.dashboard-actions{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.action-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 20px;transition:all .2s ease}.action-btn.primary{background:linear-gradient(135deg,#f97316,#ea580c);color:#fff}.action-btn.primary:hover{background:linear-gradient(135deg,#ea580c,#f97316);transform:translateY(-2px)}.action-btn.secondary{background:#6b72801a;border:1px solid #6b72804d;color:#333}.action-btn.secondary:hover{background:#6b728033;border-color:#6b728080}.upload-sections{display:flex;flex-direction:column;gap:24px;margin-bottom:32px}.upload-section{background:#fff;border:1px solid #e5e7eb;border-left:4px solid #ff6b35;border-radius:12px;box-shadow:0 4px 12px #0000000d;padding:24px;transition:all .2s ease}.upload-section:hover{background:#f8f9fa;border-color:#ff6b354d;box-shadow:0 4px 12px #0000001a}.section-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px}.section-header h3{color:#333;font-size:20px;font-weight:600;margin:0}.section-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.file-input{display:none}.file-label{background:#fff;border:1px solid #f97316;border-radius:6px;color:#f97316;cursor:pointer;font-size:14px;padding:10px 16px;transition:all .2s ease;white-space:nowrap}.file-label:hover{background:#f973161a;border-color:#ea580c}.date-input{background:#fff;border:1px solid #e5e7eb;border-radius:6px;color:#333;font-size:14px;outline:none;padding:10px 12px}.date-input:focus{border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a}.upload-btn{background:linear-gradient(135deg,#f97316,#ea580c);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:10px 16px;transition:all .2s ease;white-space:nowrap}.upload-btn:hover:not(:disabled){background:linear-gradient(135deg,#ea580c,#f97316);transform:translateY(-1px)}.upload-btn:disabled{cursor:not-allowed;opacity:.5}.selected-files{background:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px;margin-top:20px;padding:16px}.selected-files h4{color:#333;font-size:16px;font-weight:600;margin:0 0 12px}.files-list{display:flex;flex-direction:column;gap:8px}.file-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:6px;display:flex;justify-content:space-between;padding:8px 12px}.file-name{color:#333;font-size:14px;font-weight:500}.file-size{background:#6b72801a;border-radius:4px;color:#6b7280;font-size:12px;padding:2px 6px}.expiration-notifications{background:#ef44440d;border:1px solid #ef444433;border-radius:12px;margin-bottom:32px;padding:24px}.expiration-notifications h3{color:#ef4444;font-size:20px;font-weight:600;margin:0 0 20px}.notifications-list{display:flex;flex-direction:column;gap:16px}.notification-item{align-items:center;border:1px solid;border-radius:8px;display:flex;justify-content:space-between;padding:16px;transition:all .2s ease}.notification-item.expired{background:#ef44441a;border-color:#ef44444d}.notification-item.expiring-soon{background:#f59e0b1a;border-color:#f59e0b4d}.notification-content{flex-direction:column;gap:4px}.notification-section{color:#1f2937;font-size:16px;font-weight:600}.notification-date{font-size:14px}.notification-item.expired .notification-date{color:#ef4444}.notification-item.expiring-soon .notification-date{color:#f59e0b}.notification-expiration{color:#6b7280;font-size:12px}.notification-actions{display:flex;gap:8px}.notification-btn{border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;padding:8px 12px;transition:all .2s ease}.notification-item.expired .notification-btn{background:#ef444433;border:1px solid #ef44444d;color:#ef4444}.notification-item.expired .notification-btn:hover{background:#ef44444d}.notification-item.expiring-soon .notification-btn{background:#f59e0b33;border:1px solid #f59e0b4d;color:#f59e0b}.notification-item.expiring-soon .notification-btn:hover{background:#f59e0b4d}.sidebar-notifications{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 8px #0000000d;margin-bottom:24px;padding:16px}.sidebar-notifications h4{color:#1f2937;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.sidebar-notifications-list{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow:hidden;padding-right:4px;transition:max-height .3s ease}.sidebar-notifications-list.expanded{max-height:500px;overflow-y:auto}.sidebar-notifications-list::-webkit-scrollbar{width:4px}.sidebar-notifications-list::-webkit-scrollbar-track{background:#e5e7eb33;border-radius:2px}.sidebar-notifications-list::-webkit-scrollbar-thumb{background:#9ca3af4d;border-radius:2px}.sidebar-notifications-list::-webkit-scrollbar-thumb:hover{background:#9ca3af80}.sidebar-content::-webkit-scrollbar{width:6px}.sidebar-content::-webkit-scrollbar-track{background:#e5e7eb33;border-radius:3px}.sidebar-content::-webkit-scrollbar-thumb{background:#9ca3af4d;border-radius:3px}.sidebar-content::-webkit-scrollbar-thumb:hover{background:#9ca3af80}.sidebar-notification-item{background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 1px 3px #0000000d;font-size:11px;padding:10px;transition:all .2s ease}.sidebar-notification-item.expired{background:#ef44440d;border-color:#ef444433}.sidebar-notification-item.expiring-soon{background:#f59e0b0d;border-color:#f59e0b33}.notification-folder{margin-bottom:4px}.folder-name{color:#1f2937;font-size:12px;font-weight:700;line-height:1.3}.notification-section{margin-bottom:2px}.section-name{color:#60a5fa;font-size:11px;font-weight:600;line-height:1.3}.notification-date{color:#f97316;font-size:10px;font-weight:600;line-height:1.3;margin-bottom:2px}.sidebar-notification-item.expired .notification-date,.sidebar-notification-item.expiring-soon .notification-date{color:#f97316}.notification-expiration{color:#a0aec0;font-size:10px;font-style:italic;line-height:1.3}.notification-more{background:#60a5fa1a;border:1px solid #60a5fa4d;border-radius:6px;cursor:pointer;margin-top:8px;padding:10px 12px;text-align:center;transition:all .2s ease;-webkit-user-select:none;user-select:none}.notification-more:hover{background:#60a5fa33;border-color:#60a5fa80;box-shadow:0 2px 8px #60a5fa33;transform:translateY(-1px)}.notification-more:active{box-shadow:0 1px 4px #60a5fa33;transform:translateY(0)}.notification-more span{color:#60a5fa;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.sidebar-info{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 8px #0000000d;margin-bottom:24px;padding:16px}.sidebar-info h4{color:#1f2937;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.sidebar-stats{display:flex;flex-direction:column;gap:8px}.stat-item{align-items:center;background:#0f172a4d;border:1px solid #94a3b81a;border-radius:4px;display:flex;justify-content:space-between;padding:6px 8px}.stat-label{color:#1f2937;font-size:12px;font-weight:600}.stat-value{background:#f973161a;border:1px solid #f9731633;border-radius:4px;color:#1f2937;font-size:14px;font-weight:700;padding:4px 8px}.sidebar-section{margin-bottom:24px}.sidebar-section h4{color:#1f2937;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.section-list{display:flex;flex-direction:column;gap:8px}.section-item{border-left:3px solid #0000;border-radius:6px;cursor:pointer;padding:8px 12px;transition:all .2s ease}.section-item:hover{background:#60a5fa1a}.section-name{color:#6b7280;font-size:12px;font-weight:500}@media (max-width:768px){.stats-grid{align-items:stretch;flex-direction:column}.stat-card{max-width:none;min-width:auto}.stats-header{padding:16px}.stats-header h3{font-size:18px;margin-bottom:16px}.quick-actions{align-items:stretch;flex-direction:column}.quick-actions .download-app-btn,.quick-actions .versions-btn{max-width:none;min-width:auto}.section-header{align-items:flex-start;flex-direction:column}.section-actions{justify-content:flex-start;width:100%}.notification-item{align-items:flex-start;flex-direction:column;gap:12px}.notification-actions{justify-content:flex-start;width:100%}}.sidebar.collapsed .app-name,.sidebar.collapsed .logout-btn,.sidebar.collapsed .sidebar-content,.sidebar.collapsed .sidebar-info,.sidebar.collapsed .sidebar-notifications,.sidebar.collapsed .username{opacity:0;pointer-events:none}.sidebar.collapsed .sidebar-header{justify-content:center}.sidebar.collapsed .collapse-btn{margin:0}@media (max-width:768px){.sidebar{display:none;height:100vh;left:-280px;position:fixed;top:0;transition:left .3s ease;width:280px;z-index:1000}.sidebar.mobile-open{display:block;left:0}.main-content{margin-left:0;padding:20px}.mobile-toggle-btn{background:#f97316;border:none;border-radius:6px;box-shadow:0 2px 8px #f973164d;color:#fff;cursor:pointer;font-size:16px;padding:10px 12px;transition:all .2s ease}.mobile-toggle-btn:hover{background:#ea580c;box-shadow:0 4px 12px #f9731666;transform:translateY(-1px)}.mobile-toggle-btn.hidden{display:none!important}.sidebar-header-close-btn{background:#dc2626;border:none;border-radius:6px;box-shadow:0 2px 8px #dc26264d;color:#fff;cursor:pointer;display:none;font-size:16px;margin-left:auto;padding:8px 12px;transition:all .2s ease}.sidebar-header-close-btn:hover{background:#b91c1c;box-shadow:0 4px 12px #dc262666;transform:translateY(-1px)}@media (max-width:768px){.sidebar-header-close-btn{display:block}}.mobile-overlay{background:#00000080;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:999}.mobile-overlay.active{display:block}}.sidebar.collapsed~.main-content{margin-left:80px}.sidebar.collapsed .sidebar-content,.sidebar.collapsed .sidebar-info,.sidebar.collapsed .sidebar-notifications{opacity:0;pointer-events:none;transform:scaleX(0);transform-origin:left;transition:all .3s ease}.sidebar.collapsed .download-app-btn:after,.sidebar.collapsed .logout-btn:after,.sidebar.collapsed .profile-main-btn:after,.sidebar.collapsed .versions-btn:after{content:"";display:none}.sidebar.collapsed .download-app-btn,.sidebar.collapsed .logout-btn,.sidebar.collapsed .profile-main-btn,.sidebar.collapsed .versions-btn{justify-content:center;padding:12px;transition:all .3s ease;width:48px}.login-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 4px 12px #0000000d;max-width:420px;padding:28px;width:100%}.login-title{color:#1f2937;font-size:24px;font-weight:700;letter-spacing:.2px;margin:0 0 18px}.login-form{display:flex;flex-direction:column;gap:10px}.input-label{color:#1f2937;font-size:14px;text-align:left}.visor-message{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 8px #0000000d;margin:20px 0;padding:20px;text-align:center}.visor-message h3{color:#1f2937;font-size:18px;margin-bottom:10px}.visor-message p{color:#6b7280;font-size:14px;line-height:1.5}.admin-message{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 8px #0000000d;margin:20px 0;padding:20px;text-align:center}.admin-message h3{color:#1f2937;font-size:18px;margin-bottom:10px}.admin-message p{color:#6b7280;font-size:14px;line-height:1.5}.days-left{font-size:12px;margin-left:8px}.clickable{color:#3b82f6;cursor:pointer;text-decoration:underline;transition:all .2s ease}.clickable:hover{background-color:#3b82f61a;border-radius:4px;color:#1d4ed8;padding:2px 4px;text-decoration:none}.document-preview-modal{animation:fadeIn .3s ease-in-out;background:#1e293b;border:2px solid #334155;border-radius:12px;box-shadow:0 20px 40px #00000080;max-width:500px;min-width:400px;overflow:hidden;pointer-events:auto;position:fixed;z-index:9999}.preview-header{align-items:center;background:#334155;border-bottom:1px solid #475569;display:flex;justify-content:space-between;padding:12px 16px}.preview-header h4{color:#e2e8f0;flex:1 1;font-size:16px;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.close-preview-btn{background:none;border:none;border-radius:4px;color:#a0aec0;cursor:pointer;font-size:20px;margin-left:10px;padding:4px 8px;transition:all .2s}.close-preview-btn:hover{background:#ef44441a;color:#ef4444}.preview-content{padding:16px}.preview-iframe{background:#fff;border:1px solid #475569;height:300px}.preview-iframe,.preview-info{border-radius:8px;margin-bottom:12px}.preview-info{background:#94a3b81a;padding:12px}.preview-info p{color:#cbd5e1;font-size:13px;margin:4px 0}.preview-info p strong{color:#a0aec0}.open-document-btn{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background .2s;width:100%}.open-document-btn:hover{background:#2563eb}.text-input{background:#fff;border:1px solid #e5e7eb;border-radius:10px;color:#1f2937;outline:none;padding:12px 14px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;width:100%}.text-input::placeholder{color:#9ca3af}.text-input:focus{background:#fff;border-color:#f97316;box-shadow:0 0 0 3px #f973161a}.primary-button{background:linear-gradient(135deg,#f97316,#ea580c);border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:700;letter-spacing:.3px;margin-top:8px;padding:12px 16px;transition:transform .06s ease,filter .15s ease;width:100%}.primary-button:hover{filter:brightness(1.08)}.primary-button:active{transform:translateY(1px)}.register-row{align-items:center;color:#1f2937;display:flex;gap:8px;justify-content:center;margin-top:14px}.text-button{background:none;border:none;color:#2563eb;cursor:pointer;font-weight:700;padding:0}.text-button:hover{text-decoration:underline}.google-signin-btn{align-items:center;background:#fff;border:1px solid #dadce0;border-radius:8px;color:#3c4043;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;justify-content:center;margin-bottom:16px;padding:12px 16px;transition:all .2s ease;width:100%}.google-signin-btn:hover{background:#f8f9fa;box-shadow:0 1px 3px #0000001a;transform:translateY(-1px)}.google-signin-btn:active{box-shadow:0 1px 2px #0000001a;transform:translateY(0)}.google-signin-btn img{height:20px;width:20px}.login-notice{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;margin-bottom:16px;padding:12px 16px;text-align:center}.login-notice p{color:#856404;font-size:14px;font-weight:500;margin:0}.login-notice small{color:#6c757d;display:block;font-size:12px;font-style:italic;margin-top:4px}.divider{color:#a0aec0;margin:20px 0;position:relative;text-align:center}.divider:before{background:#dadce0;content:"";height:1px;left:0;position:absolute;right:0;top:50%}.divider span{background:#f4f7fa;color:#6b7280;font-size:14px;padding:0 16px;position:relative;z-index:1}.google-user-info{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;margin-bottom:24px;padding:20px;text-align:center}.google-avatar{border:3px solid #60a5fa;border-radius:50%;height:64px;margin-bottom:12px;width:64px}.google-user-info h2{color:#1f2937;font-size:20px;font-weight:600;margin:0 0 8px}.google-user-info p{color:#6b7280;font-size:14px;margin:0}.registration-subtitle{color:#6b7280;font-size:14px;line-height:1.5;margin-bottom:24px;text-align:center}.upload-section-unified{background:#fff;border:1px solid #e5e7eb;border-left:4px solid #f97316;border-radius:12px;box-shadow:0 4px 12px #0000000d;margin-bottom:32px;padding:24px;transition:all .2s ease}.upload-section-unified:hover{background:#f8f9fa;border-color:#f97316;box-shadow:0 4px 12px #f973161a}.upload-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px}.upload-header h3{color:#1f2937;font-size:20px;font-weight:600;margin:0}.upload-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.files-to-upload{background:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px;margin-top:20px;padding:16px}.files-to-upload h4{color:#1f2937;font-size:16px;font-weight:600;margin:0 0 12px}.files-upload-list{display:flex;flex-direction:column;gap:12px}.file-upload-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:flex;justify-content:space-between;padding:16px;transition:all .2s ease}.file-upload-item:hover{background:#f8f9fa;border-color:#f97316}.file-upload-item.file-duplicate{background:#f59e0b0d;border-left:4px solid #f59e0b}.file-upload-item.file-duplicate:hover{background:#f59e0b1a;border-color:#f59e0b}.duplicate-indicator{color:#f59e0b;font-size:11px;font-style:italic;font-weight:500;margin-left:8px}.store-management-btn{align-items:center;background:linear-gradient(135deg,#f97316,#ea580c);border:none;border-radius:8px;box-shadow:0 2px 8px #f973164d;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;margin:8px 0;padding:12px 16px;transition:all .2s ease;width:100%}.store-management-btn:hover{background:linear-gradient(135deg,#ea580c,#f97316);box-shadow:0 4px 12px #f9731666;transform:translateY(-1px)}.store-management-overlay{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.store-management-modal{animation:slideInUp .3s ease;background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 20px 40px #0000004d;max-height:80vh;max-width:800px;overflow:hidden;width:90%}.store-management-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:24px}.store-management-header h2{color:#1f2937;font-size:20px;font-weight:600;margin:0}.close-store-management-btn{background:none;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;font-size:24px;padding:4px;transition:all .2s ease}.close-store-management-btn:hover{background:#ef44441a;color:#f1f5f9}.store-management-body{max-height:60vh;overflow-y:auto;padding:24px}.add-store-section{margin-bottom:32px}.add-store-section h3{color:#1f2937;font-size:16px;font-weight:600;margin:0 0 16px}.add-store-form{align-items:center;display:flex;gap:12px}.store-name-input{background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#1f2937;flex:1 1;font-size:14px;padding:12px 16px;transition:all .2s ease}.store-name-input:focus{border-color:#f97316;box-shadow:0 0 0 3px #f973161a;outline:none}.store-name-input::placeholder{color:#9ca3af}.add-store-btn{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 20px;transition:all .2s ease;white-space:nowrap}.add-store-btn:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.add-store-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.stores-list-section h3{color:#1f2937;font-size:16px;font-weight:600;margin:0 0 16px}.stores-list{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));max-height:300px;overflow-y:auto;padding:4px}.store-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:flex;justify-content:space-between;padding:12px 16px;transition:all .2s ease}.store-item:hover{background:#f8f9fa;border-color:#f97316}.store-item.default-store{background:#f973160d;border-color:#f9731633}.store-item.default-store:hover{background:#f973161a}.store-info{display:flex;flex:1 1;flex-direction:column;gap:4px}.store-name{color:#1f2937;font-size:14px;font-weight:500}.store-details{color:#6b7280;font-size:12px;font-weight:400}.store-actions{align-items:center;display:flex;gap:8px}.edit-store-btn{background:none;border:none;border-radius:4px;color:#3b82f6;cursor:pointer;font-size:16px;padding:6px;transition:all .2s ease}.edit-store-btn:hover{background:#3b82f61a;transform:scale(1.1)}.delete-store-btn{background:none;border:none;border-radius:4px;color:#ef4444;cursor:pointer;font-size:16px;padding:6px;transition:all .2s ease}.delete-store-btn:hover{background:#ef44441a;transform:scale(1.1)}.default-store-label{background:#3b82f61a;border-radius:4px;color:#3b82f6;font-size:12px;font-weight:500;padding:4px 8px}.store-edit-form{align-items:center;display:flex;gap:12px;width:100%}.store-edit-input{background:#0f172a80;border:1px solid #3b82f64d;border-radius:6px;color:#f1f5f9;flex:1 1;font-size:14px;padding:8px 12px;transition:all .2s ease}.store-edit-input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a;outline:none}.store-edit-buttons{display:flex;gap:8px}.cancel-edit-btn,.save-edit-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:16px;padding:6px;transition:all .2s ease}.save-edit-btn{color:#10b981}.save-edit-btn:hover{background:#10b9811a;transform:scale(1.1)}.cancel-edit-btn{color:#ef4444}.cancel-edit-btn:hover{background:#ef44441a;transform:scale(1.1)}.store-management-footer{background:#fff;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;padding:16px 24px}.close-store-management-btn-footer{background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#1f2937;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s ease}.close-store-management-btn-footer:hover{background:#f8f9fa;border-color:#f97316;color:#f97316;transform:translateY(-1px)}@media (max-width:768px){.store-management-modal{max-height:90vh;width:95%}.store-management-body,.store-management-header{padding:16px}.add-store-form{align-items:stretch;flex-direction:column}.stores-list{grid-template-columns:1fr}.store-management-footer{padding:12px 16px}}.file-upload-info{display:flex;flex:1 1;flex-direction:column;gap:4px}.file-upload-info .file-name{color:#1f2937;font-size:14px;font-weight:600}.file-upload-info .file-size{background:#6b72801a;border-radius:4px;color:#6b7280;display:inline-block;font-size:12px;padding:2px 6px;width:-webkit-fit-content;width:fit-content}.file-upload-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.apartado-select{background:#0f172a99;border:1px solid #94a3b84d;border-radius:6px;color:#e2e8f0;font-size:14px;min-width:120px;outline:none;padding:8px 12px}.apartado-select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa1a}.remove-file-btn{background:#ef44441a;border:1px solid #ef44444d;border-radius:6px;color:#ef4444;cursor:pointer;font-size:14px;padding:8px 12px;transition:all .2s ease}.remove-file-btn:hover{background:#ef444433;border-color:#ef444480}.documents-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 4px 12px #0000000d;margin-top:24px;padding:20px;transition:all .2s ease}.documents-section:hover{background:#f8f9fa;border-color:#f97316;box-shadow:0 4px 12px #f973161a}.section-title{border-bottom:2px solid #60a5fa4d;color:#1f2937;font-size:20px;font-weight:600;margin:0 0 20px;padding-bottom:12px;text-align:center}.documents-container{display:flex;flex-direction:column;gap:16px}.documents-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.document-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 8px #0000000d;padding:16px;transition:all .2s ease}.document-card:hover{background:#f8f9fa;border-color:#f97316;box-shadow:0 4px 12px #f973161a;transform:translateY(-2px)}.document-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.document-card-header .document-name{color:#1f2937;flex:1 1;font-size:14px;font-weight:600;margin-right:12px;word-break:break-word}.document-delete-btn{background:#dc26261a;border:1px solid #dc26264d;border-radius:4px;color:#dc2626;cursor:pointer;flex-shrink:0;font-size:14px;padding:6px 8px;transition:all .2s ease}.document-delete-btn:hover{background:#dc262633;border-color:#dc262680}.document-card-body{display:flex;flex-direction:column;gap:8px}.document-card-body .document-type{background:#6b72801a;border-radius:4px;color:#6b7280;display:inline-block;font-size:11px;padding:4px 8px;width:-webkit-fit-content;width:fit-content}.document-card-body .document-date{color:#6b7280;font-size:12px}.document-card-body .document-expiration{background:#0f172a4d;border:1px solid #94a3b81a;border-radius:6px;display:flex;flex-direction:column;gap:4px;padding:8px}.document-card-body .document-expiration.valid{background:#10b9810d;border-color:#10b9814d}.document-card-body .document-expiration.expired{background:#ef44440d;border-color:#ef44444d}.expiration-label{color:#6b7280;font-size:11px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.expiration-date{color:#f97316;font-size:12px;font-weight:600}.document-card-body .document-expiration.valid .expiration-date{color:#10b981}.document-card-body .document-expiration.expired .expiration-date{color:#ef4444}.days-left{background:#f59e0b1a;border-radius:3px;color:#f59e0b;display:inline-block;font-size:11px;font-weight:500;padding:2px 6px;width:-webkit-fit-content;width:fit-content}.document-card-footer{border-top:1px solid #94a3b81a;margin-top:12px;padding-top:12px}.download-btn{background:linear-gradient(135deg,#10b981,#059669);border-radius:6px;color:#fff;font-size:12px;font-weight:600;padding:8px 12px;transition:all .2s ease;width:100%}.download-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}.no-documents-card{background:#0f172a33;border:1px solid #94a3b81a;border-radius:8px;padding:24px;text-align:center}.no-documents-card p{color:#a0aec0;font-size:14px;font-style:italic;margin:0}@media (max-width:768px){.documents-grid{grid-template-columns:1fr}.file-upload-controls{align-items:stretch;flex-direction:column}.date-input{width:100%}.document-card-header{align-items:flex-start;flex-direction:column;gap:8px}.document-card-header .document-name{margin-right:0}}.camera-btn{align-items:center;background:linear-gradient(135deg,#f97316,#ea580c);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;margin:0 8px;padding:12px 20px;transition:all .2s ease}.camera-btn:hover{background:linear-gradient(135deg,#ea580c,#f97316);box-shadow:0 4px 12px #f973164d;transform:translateY(-1px)}.camera-btn:active{transform:translateY(0)}.camera-modal-overlay{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.camera-modal{background:#1e293b;border-radius:12px;box-shadow:0 20px 40px #00000080;display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow:hidden;width:100%}.camera-header{align-items:center;background:#334155;border-bottom:1px solid #475569;display:flex;justify-content:space-between;padding:20px}.camera-header h3{color:#e2e8f0;font-size:18px;font-weight:600;margin:0}.close-camera-btn{align-items:center;background:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.close-camera-btn:hover{background:#dc2626;transform:scale(1.1)}.camera-content{display:flex;flex:1 1;flex-direction:column;overflow-y:auto;padding:20px}.camera-content::-webkit-scrollbar{width:8px}.camera-content::-webkit-scrollbar-track{background:#334155;border-radius:4px}.camera-content::-webkit-scrollbar-thumb{background:#64748b;border-radius:4px}.camera-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}.captured-photos::-webkit-scrollbar{width:8px}.captured-photos::-webkit-scrollbar-track{background:#334155;border-radius:4px}.captured-photos::-webkit-scrollbar-thumb{background:#64748b;border-radius:4px}.captured-photos::-webkit-scrollbar-thumb:hover{background:#94a3b8}.camera-preview{align-items:center;background:#000;border-radius:8px;display:flex;flex-shrink:0;height:300px;justify-content:center;margin-bottom:20px;overflow:hidden;position:relative;width:100%}.camera-preview video{background:#000;cursor:pointer;height:100%;object-fit:contain;width:100%}.focus-indicator{animation:focusPulse 1s ease-out;border:3px solid #3b82f6;border-radius:50%;box-shadow:0 0 0 2px #3b82f64d;height:80px;pointer-events:none;position:absolute;transform:translate(-50%,-50%);width:80px}@keyframes focusPulse{0%{opacity:0;transform:translate(-50%,-50%) scale(1.5)}50%{opacity:1;transform:translate(-50%,-50%) scale(.8)}to{opacity:0;transform:translate(-50%,-50%) scale(1)}}.zoom-indicator{background:#000000b3;border:1px solid #fff3;border-radius:20px;color:#fff;font-size:14px;font-weight:600;padding:8px 16px;pointer-events:none;position:absolute;right:10px;top:10px}.zoom-control,.zoom-indicator{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.zoom-control{align-items:center;background:#1e293b80;border:1px solid #4755694d;border-radius:12px;display:flex;gap:12px;margin-bottom:20px;padding:12px 20px}.zoom-label{flex-shrink:0;font-size:20px}.zoom-slider{-webkit-appearance:none;appearance:none;background:linear-gradient(90deg,#334155,#3b82f6);border-radius:3px;cursor:pointer;flex:1 1;height:6px;outline:none}.zoom-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:50%;box-shadow:0 2px 8px #3b82f666;cursor:pointer;height:24px;-webkit-transition:all .2s ease;transition:all .2s ease;width:24px}.zoom-slider::-webkit-slider-thumb:hover{box-shadow:0 4px 12px #3b82f699;transform:scale(1.1)}.zoom-slider::-webkit-slider-thumb:active{transform:scale(.95)}.zoom-slider::-moz-range-thumb{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:50%;box-shadow:0 2px 8px #3b82f666;cursor:pointer;height:24px;-moz-transition:all .2s ease;transition:all .2s ease;width:24px}.zoom-slider::-moz-range-thumb:hover{box-shadow:0 4px 12px #3b82f699;transform:scale(1.1)}.zoom-slider::-moz-range-thumb:active{transform:scale(.95)}.zoom-value{color:#e2e8f0;flex-shrink:0;font-size:14px;font-weight:600;min-width:45px;text-align:right}.camera-controls{display:flex;justify-content:center;margin-bottom:20px}.capture-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:50px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;padding:16px 32px;transition:all .2s ease}.capture-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 8px 20px #3b82f64d;transform:translateY(-2px)}.capture-btn:active{transform:translateY(0)}.captured-photos{flex:1 1;margin-top:20px;overflow-y:auto}.captured-photos h4{color:#e2e8f0;font-size:16px;font-weight:600;margin:0 0 16px}.photos-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-bottom:20px}.photo-item{background:#334155;border:1px solid #475569;border-radius:8px;padding:12px}.photo-item img{border-radius:6px;height:120px;margin-bottom:8px;object-fit:cover;width:100%}.photo-controls{display:flex;flex-direction:column;gap:8px}.photo-date-label{color:#94a3b8;font-size:11px;font-weight:500;margin-bottom:4px}.photo-controls input[type=date]{background:#1e293b;border:1px solid #475569;border-radius:4px;color:#e2e8f0;font-size:12px;padding:8px;width:100%}.photo-controls input[type=date]::placeholder{color:#94a3b8;font-size:11px}.photo-controls input[type=date]:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633;outline:none}.remove-photo-btn{background:#ef4444;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;transition:all .2s ease}.remove-photo-btn:hover{background:#dc2626}.camera-actions{display:flex;justify-content:center}.add-photos-btn{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s ease}.add-photos-btn:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}@media (max-width:768px){.camera-modal-overlay{padding:0}.camera-modal{border-radius:0;height:100vh;margin:0;max-height:100vh;max-width:100vw;width:100vw}.camera-header{padding:15px 20px}.camera-header h3{font-size:16px}.camera-preview{height:45vh;margin-bottom:15px;min-height:300px}.camera-preview video{max-height:100%;max-width:100%;object-fit:contain}.camera-controls{margin-bottom:15px}.capture-btn{border-radius:60px;box-shadow:0 4px 16px #3b82f666;font-size:18px;padding:20px 40px}.capture-btn:active{transform:scale(.95)}.photos-grid{gap:10px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.photo-item img{height:90px}.camera-btn{font-size:14px;margin:0 4px;padding:12px 20px}.add-photos-btn{font-size:16px;padding:16px 32px}.captured-photos h4{font-size:15px}}@media (max-width:768px) and (orientation:landscape){.camera-preview{height:200px;min-height:150px}.camera-modal{max-height:98vh;max-width:95vw}.camera-content{padding:15px}.captured-photos{margin-top:15px}.photos-grid{gap:10px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.photo-item img{height:80px}.capture-btn{font-size:13px;padding:12px 24px}}.versions-btn{align-items:center;background:#f97316;border:none;border-radius:8px;box-shadow:0 2px 8px #f973164d;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;margin-bottom:12px;padding:12px 16px;transition:all .2s ease;width:100%}.versions-btn:hover{background:#ea580c;box-shadow:0 4px 12px #f9731666;transform:translateY(-1px)}.versions-btn:active{transform:translateY(0)}.changelog-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.changelog-modal{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:900px;overflow:hidden;width:100%}.changelog-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px}.changelog-header h3{color:#1f2937;font-size:18px;font-weight:600;margin:0}.close-changelog-btn{align-items:center;background:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.close-changelog-btn:hover{background:#dc2626;transform:scale(1.1)}.changelog-content{flex:1 1;overflow-y:auto;padding:20px}.changelog-intro{background:#0f172a4d;border:1px solid #94a3b833;border-radius:8px;margin-bottom:30px;padding:20px;text-align:center}.changelog-intro p{color:#1f2937;font-size:14px;font-weight:500;margin:5px 0}.changelog-versions{display:flex;flex-direction:column;gap:20px}.version-item{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .2s ease}.version-item:hover{background:#f8f9fa;border-color:#f97316}.version-item.major{border-left:4px solid #3b82f6}.version-item.minor{border-left:4px solid #10b981}.version-item.patch{border-left:4px solid #f59e0b}.version-item.initial{border-left:4px solid #8b5cf6}.version-header{justify-content:space-between;margin-bottom:16px}.version-header,.version-title{align-items:center;display:flex}.version-title{color:#1f2937;font-size:18px;font-weight:700;gap:12px;margin:0}.version-date{color:#6b7280;font-size:14px;font-weight:400}.version-badge{border-radius:20px;font-size:12px;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.version-badge.major{background:#3b82f633;border:1px solid #3b82f64d;color:#60a5fa}.version-badge.minor{background:#10b98133;border:1px solid #10b9814d;color:#34d399}.version-badge.patch{background:#f59e0b33;border:1px solid #f59e0b4d;color:#fbbf24}.version-badge.initial{background:#8b5cf633;border:1px solid #8b5cf64d;color:#a78bfa}.version-changes{display:flex;flex-direction:column;gap:16px}.change-category{background:#0f172a33;border-radius:8px;padding:16px}.category-title{color:#1f2937;font-size:16px;font-weight:600;margin:0 0 12px}.change-list{list-style:none;margin:0;padding-left:20px}.change-item{background:#f973160d;border-left:3px solid #f97316;border-radius:4px;color:#1f2937;font-size:14px;font-weight:500;line-height:1.6;margin-bottom:8px;padding:4px 8px;position:relative}.change-item:before{color:#60a5fa;content:"•";font-weight:700;left:-16px;position:absolute}.changelog-footer{border-top:1px solid #94a3b833;display:flex;justify-content:center;margin-top:30px;padding-top:20px}.full-changelog-btn{align-items:center;background:linear-gradient(135deg,#f97316,#ea580c);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s ease}.full-changelog-btn:hover{background:linear-gradient(135deg,#ea580c,#f97316);box-shadow:0 4px 12px #f973164d;transform:translateY(-1px)}.changelog-page{background:#f4f7fa;min-height:100vh;padding:20px}.changelog-container{margin:0 auto;max-width:1000px}.changelog-page .changelog-header{background:#fff;border:none;border-radius:12px;box-shadow:0 4px 12px #0000000d;margin-bottom:30px;padding:30px;text-align:center}.changelog-page .changelog-header h1{color:#1f2937;font-size:32px;font-weight:700;margin:0 0 10px}.changelog-subtitle{color:#6b7280;font-size:16px;margin:0}.back-btn{align-items:center;background:#3b82f633;border:1px solid #3b82f64d;border-radius:8px;color:#60a5fa;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s ease}.back-btn:hover{background:#3b82f64d;border-color:#3b82f680}.changelog-page .changelog-content{overflow:visible;padding:0}.changelog-page .changelog-intro{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 4px 12px #0000000d;margin-bottom:40px;padding:30px;text-align:center}.changelog-page .changelog-intro h2{color:#1f2937;font-size:24px;font-weight:700;margin:0 0 16px;text-shadow:0 1px 2px #0000001a}.changelog-page .changelog-intro p{color:#374151;font-size:16px;font-weight:500;line-height:1.6;margin:0}.changelog-page .version-item{border-radius:12px;margin-bottom:30px;padding:20px}.changelog-page .changelog-footer,.changelog-page .version-item{background:#fff;border:1px solid #e5e7eb;box-shadow:0 4px 12px #0000000d}.changelog-page .changelog-footer{align-items:center;border-radius:12px;display:flex;justify-content:space-between;margin-top:40px;padding:30px}.changelog-info h3{color:#1f2937;font-size:18px;font-weight:600;margin:0 0 12px}.changelog-info p{color:#1f2937;font-size:14px;line-height:1.6;margin:0}.dashboard-btn{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s ease}.dashboard-btn:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.changelog-content::-webkit-scrollbar{width:8px}.changelog-content::-webkit-scrollbar-track{background:#334155;border-radius:4px}.changelog-content::-webkit-scrollbar-thumb{background:#64748b;border-radius:4px}.changelog-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width:768px){.changelog-modal{margin:10px;max-height:95vh}.changelog-page{padding:15px}.changelog-page .changelog-header h1{font-size:24px}.changelog-page .changelog-intro{padding:20px}.changelog-page .changelog-intro h2{font-size:20px}.version-header{align-items:flex-start;flex-direction:column;gap:8px}.changelog-page .changelog-footer{flex-direction:column;gap:20px;text-align:center}.versions-btn{font-size:13px;padding:10px 14px}}.bulk-selection-btn{align-items:center;background:linear-gradient(135deg,#f97316,#ea580c);border:none;border-radius:8px;box-shadow:0 2px 8px #f973164d;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;min-height:40px;padding:10px 16px;transition:all .2s ease}.bulk-selection-btn:hover{background:linear-gradient(135deg,#ea580c,#f97316);box-shadow:0 4px 12px #f9731666;transform:translateY(-1px)}.bulk-selection-btn.active{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 2px 8px #dc26264d}.bulk-selection-btn.active:hover{background:linear-gradient(135deg,#b91c1c,#dc2626);box-shadow:0 4px 12px #dc262666}.upload-header-subtitle{font-size:12px;font-weight:500;margin-top:8px;text-align:center}.bulk-mode-indicator{background:#dc26261a;border:1px solid #dc262633;border-radius:4px;color:#dc2626;padding:4px 8px}.normal-mode-indicator{background:#6b72801a;border:1px solid #6b728033;border-radius:4px;color:#6b7280;padding:4px 8px}.bulk-actions{background:#f973160d;border:1px solid #f9731633;border-radius:8px;margin-top:16px;padding:16px}.bulk-selection-info{color:#1f2937;font-size:14px;font-weight:500;margin-bottom:12px}.bulk-selection-info .total-docs{color:#6b7280;font-weight:400}.bulk-action-buttons{display:flex;flex-wrap:wrap;gap:8px}.bulk-clear-btn,.bulk-delete-btn,.bulk-select-all-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:8px 12px;transition:all .2s ease;white-space:nowrap}.bulk-select-all-btn{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 2px 8px #10b9814d;color:#fff}.bulk-select-all-btn:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 12px #10b98166;transform:translateY(-1px)}.bulk-clear-btn{background:#6b72801a;border:1px solid #6b72804d;color:#374151}.bulk-clear-btn:hover:not(:disabled){background:#6b728033;border-color:#6b728080;transform:translateY(-1px)}.bulk-clear-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.bulk-delete-btn{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 2px 8px #dc26264d;color:#fff}.bulk-delete-btn:hover:not(:disabled){background:linear-gradient(135deg,#b91c1c,#dc2626);box-shadow:0 4px 12px #dc262666;transform:translateY(-1px)}.bulk-delete-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.document-card.bulk-mode{cursor:pointer;transition:all .2s ease}.document-card.bulk-mode:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.document-card.selected{background:#f973160d;border-color:#f97316;box-shadow:0 0 0 2px #f9731633}.document-card.selected .document-name{color:#f97316;font-weight:600}.document-selection{position:absolute;right:12px;top:12px;z-index:10}.document-checkbox{accent-color:#f97316;cursor:pointer;height:18px;width:18px}.document-card.bulk-mode .document-name{transition:all .2s ease}.document-card.bulk-mode .document-name:not(.clickable){cursor:default}.profile-section{background:#fff;border-bottom:1px solid #e5e7eb;padding:16px 20px}.profile-main-btn{align-items:center;background:#f97316;border:none;border-radius:8px;box-shadow:0 2px 8px #f973164d;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px 16px;transition:all .3s ease;width:100%}.profile-main-btn:hover{background:#ea580c;box-shadow:0 4px 12px #f9731666;transform:translateY(-2px)}.profile-sidebar-header{align-items:center;background:#fff;border-bottom:2px solid #e5e7eb;display:flex;gap:12px;padding:20px}.back-to-dashboard-btn{align-items:center;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#1f2937;cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:4px;padding:8px 12px;transition:all .2s ease}.back-to-dashboard-btn:hover{background:#e5e7eb;transform:translateX(-2px)}.profile-sidebar-title{align-items:center;color:#1f2937;display:flex;font-size:18px;font-weight:700;gap:8px;margin:0}.profile-sidebar-content{flex:1 1;overflow-y:auto;padding:20px}.profile-view{gap:24px}.profile-info,.profile-view{display:flex;flex-direction:column}.profile-info{gap:16px}.profile-field{background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column;gap:6px;padding:12px}.profile-field label{color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.profile-field span{color:#1f2937;font-size:14px;font-weight:500}.role-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:12px;font-weight:600;gap:6px;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.role-badge.admin{background:linear-gradient(135deg,#f59e0b,#d97706);color:#1f2937}.role-badge.visor{background:linear-gradient(135deg,#6b7280,#4b5563);color:#f9fafb}.profile-actions{display:flex;flex-direction:column;gap:12px}.delete-account-btn,.edit-profile-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px 16px;transition:all .3s ease}.edit-profile-btn{background:linear-gradient(135deg,#f97316,#ea580c);box-shadow:0 2px 8px #f973164d;color:#fff}.edit-profile-btn:hover{background:linear-gradient(135deg,#ea580c,#f97316);box-shadow:0 4px 12px #f9731666;transform:translateY(-2px)}.delete-account-btn{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 2px 8px #dc26264d;color:#fff}.delete-account-btn:hover{background:linear-gradient(135deg,#b91c1c,#dc2626);box-shadow:0 4px 12px #dc262666;transform:translateY(-2px)}.profile-edit{gap:20px}.profile-edit,.profile-form{display:flex;flex-direction:column}.profile-form{gap:16px}.form-field{display:flex;flex-direction:column;gap:6px}.form-field label{color:#9ca3af;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.profile-input{background:#fff;border:1px solid #e5e7eb;border-radius:6px;color:#1f2937;font-size:14px;padding:10px 12px;transition:all .2s ease}.profile-input:focus{background:#fff;border-color:#f97316;box-shadow:0 0 0 3px #f973161a;outline:none}.profile-input::placeholder{color:#9ca3af}.profile-edit-actions{display:flex;flex-direction:column;gap:12px;margin-top:8px}.cancel-edit-btn,.save-profile-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px 16px;transition:all .3s ease}.save-profile-btn{background:linear-gradient(135deg,#16a34a,#15803d);box-shadow:0 2px 8px #16a34a4d;color:#fff}.save-profile-btn:hover{background:linear-gradient(135deg,#15803d,#16a34a);box-shadow:0 4px 12px #16a34a66;transform:translateY(-2px)}.cancel-edit-btn{background:#f3f4f6;border:1px solid #e5e7eb;box-shadow:0 2px 8px #0000000d;color:#1f2937}.cancel-edit-btn:hover{background:#e5e7eb;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}@media (max-width:768px){.profile-sidebar-content{padding:16px}.profile-field{padding:10px}.profile-actions{gap:10px}.delete-account-btn,.edit-profile-btn{font-size:13px;padding:10px 14px}.profile-input{font-size:13px;padding:8px 10px}}.backend-loading-modal{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.backend-loading-content{background:#2d3748;border:1px solid #4a5568;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:400px;padding:32px;text-align:center;width:90%}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #4a5568;border-radius:50%;border-top-color:#38bdf8;height:48px;margin:0 auto 24px;width:48px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.backend-loading-content h3{color:#e2e8f0;font-size:20px;font-weight:600;margin:0 0 12px}.backend-loading-content p{color:#a0aec0;font-size:14px;line-height:1.5;margin:0 0 16px}.backend-ready{background:#065f46;border:1px solid #10b981;border-radius:8px;margin-top:16px;padding:12px}.backend-ready p{color:#d1fae5;font-weight:500;margin:0}.download-app-modal-overlay{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.download-app-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.download-app-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:24px 24px 16px}.download-app-modal-header h2{color:#1f2937;font-size:1.5rem;font-weight:600;margin:0}.download-app-modal-header .close-btn{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;font-size:1.5rem;padding:4px;transition:all .2s}.download-app-modal-header .close-btn:hover{background-color:#f3f4f6;color:#374151}.download-app-modal-content{padding:24px}.download-app-info{text-align:center}.app-icon{margin-bottom:20px}.app-icon-placeholder{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 8px 20px #667eea4d;display:flex;font-size:2.5rem;height:80px;justify-content:center;margin:0 auto;width:80px}.download-app-info h3{color:#1f2937;font-size:1.5rem;font-weight:600;margin:0 0 12px}.app-description{color:#6b7280;font-size:1rem;line-height:1.6;margin-bottom:24px}.app-features{margin-bottom:24px;text-align:left}.app-features h4{color:#1f2937;font-size:1.1rem;font-weight:600;margin:0 0 12px}.app-features ul{list-style:none;margin:0;padding:0}.app-features li{align-items:center;color:#4b5563;display:flex;font-size:.95rem;gap:8px;padding:8px 0}.download-buttons{flex-wrap:wrap;gap:12px;margin-bottom:20px}.download-btn,.download-buttons{display:flex;justify-content:center}.download-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:.95rem;font-weight:500;gap:8px;min-width:140px;padding:12px 20px;transition:all .2s}.download-btn:disabled{cursor:not-allowed;opacity:.6}.android-btn{background:linear-gradient(135deg,#3ddc84,#2bb673);color:#fff}.android-btn:hover:not(:disabled){box-shadow:0 8px 20px #3ddc844d;transform:translateY(-2px)}.ios-btn{background:linear-gradient(135deg,#007aff,#0056b3);color:#fff}.ios-btn:hover:not(:disabled){box-shadow:0 8px 20px #007aff4d;transform:translateY(-2px)}.download-status{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px;text-align:center}.status-message{color:#64748b;font-size:.9rem;line-height:1.5;margin:0}.download-app-btn{align-items:center;background:#f97316;border:none;border-radius:8px;box-shadow:0 2px 8px #f973164d;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:8px;justify-content:center;margin-bottom:8px;padding:12px 16px;transition:all .2s;width:100%}.download-app-btn:hover{background:#ea580c;box-shadow:0 8px 20px #f9731666;transform:translateY(-2px)}.download-app-btn:active{transform:translateY(0)}.download-instructions{background:#f8fafc;border-left:4px solid #3b82f6;border-radius:8px;margin-top:20px;padding:16px}.download-instructions h4{color:#1f2937;font-size:16px;font-weight:600;margin-bottom:12px}.download-instructions ol{color:#4b5563;font-size:14px;line-height:1.6;margin:0;padding-left:20px}.download-instructions li{margin-bottom:8px}.download-features{background:#f0fdf4;border-left:4px solid #10b981;border-radius:8px;margin-top:16px;padding:16px}.download-features h4{color:#1f2937;font-size:16px;font-weight:600;margin-bottom:12px}.download-features ul{color:#4b5563;font-size:14px;line-height:1.6;margin:0;padding-left:20px}.download-features li{margin-bottom:6px}@media (max-width:768px){.invite-input-row{align-items:stretch!important;flex-direction:column!important;gap:12px!important}.invite-input-row input{min-width:auto!important}.users-table-container{border-radius:8px!important}.users-table-header{display:none!important}.user-table-row,.users-table-body{display:flex!important;flex-direction:column!important;gap:12px!important;padding:16px!important}.user-table-row{background:#fff!important;border:1px solid #e1e5e9!important;border-radius:8px!important;box-shadow:0 2px 8px #0000000d!important;grid-template-columns:none!important}.user-table-row:nth-child(2n){background:#f8f9fa!important}.user-cell{align-items:center!important;border-bottom:1px solid #f0f0f0!important;display:flex!important;justify-content:space-between!important;padding:4px 0!important}.user-cell:last-child{border-bottom:none!important}.user-cell:before{color:#666!important;content:attr(data-label) ": "!important;flex:0 0 auto!important;font-weight:700!important}.user-cell:first-child:before{content:"ID: "!important}.user-cell:nth-child(2):before{content:"Usuario: "!important}.user-cell:nth-child(3):before{content:"Email: "!important}.user-cell:nth-child(4):before{content:"Rol: "!important}.user-cell:nth-child(5):before{content:"Estado: "!important}.user-cell:nth-child(6):before{content:"Acciones: "!important}.admin-panel-container{margin:0!important;max-width:100%!important;min-height:auto!important;padding:16px!important}.admin-header h1{font-size:1.8rem!important}.admin-header p{font-size:.9rem!important}}.notification-container{display:flex;flex-direction:column;gap:12px;max-width:400px;pointer-events:none;position:fixed;right:20px;top:20px;z-index:10000}.notification{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1e293bf2;border:1px solid #94a3b833;border-radius:12px;box-shadow:0 10px 25px #0000004d;cursor:pointer;max-width:400px;min-width:320px;opacity:0;overflow:hidden;padding:0;pointer-events:auto;position:relative;transform:translateX(100%);transition:all .3s cubic-bezier(.4,0,.2,1)}.notification-visible{opacity:1;transform:translateX(0)}.notification-leaving{opacity:0;transform:translateX(100%)}.notification-content{align-items:flex-start;display:flex;gap:12px;padding:16px;position:relative}.notification-icon{flex-shrink:0;font-size:20px;margin-top:2px}.notification-body{flex:1 1;min-width:0}.notification-title{color:#1f2937;font-size:14px;font-weight:600;line-height:1.4;margin:0 0 4px}.notification-message{color:#1f2937;font-size:13px;line-height:1.4;margin:0}.notification-close{align-items:center;background:none;border:none;border-radius:4px;color:#1f2937;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;height:24px;justify-content:center;padding:4px;transition:all .2s ease;width:24px}.notification-close:hover{background:#1f29371a;color:#1f2937}.notification-progress{background:#94a3b81a;bottom:0;height:3px;left:0;overflow:hidden;position:absolute;right:0}.notification-progress-bar{animation:progressBar 5s linear forwards;background:linear-gradient(90deg,#60a5fa,#3b82f6);height:100%;transform:scaleX(1);transform-origin:left;width:100%}.notification-success{background:#10b9810d;border-left:4px solid #10b981}.notification-success .notification-progress-bar{background:linear-gradient(90deg,#10b981,#059669)}.notification-success .notification-icon{color:#10b981}.notification-error{background:#ef44440d;border-left:4px solid #ef4444}.notification-error .notification-progress-bar{background:linear-gradient(90deg,#ef4444,#dc2626)}.notification-error .notification-icon{color:#ef4444}.notification-warning{background:#f59e0b0d;border-left:4px solid #f59e0b}.notification-warning .notification-progress-bar{background:linear-gradient(90deg,#f59e0b,#d97706)}.notification-warning .notification-icon{color:#f59e0b}.notification-info{background:#3b82f60d;border-left:4px solid #3b82f6}.notification-info .notification-progress-bar{background:linear-gradient(90deg,#3b82f6,#2563eb)}.notification-info .notification-icon{color:#3b82f6}.notification-default{background:#8b5cf60d;border-left:4px solid #8b5cf6}.notification-default .notification-progress-bar{background:linear-gradient(90deg,#8b5cf6,#7c3aed)}.notification-default .notification-icon{color:#8b5cf6}@keyframes progressBar{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.notification:hover{box-shadow:0 15px 35px #0006;transform:translateX(-4px)}.notification-leaving:hover{transform:translateX(100%)}@media (max-width:768px){.notification-container{left:10px;max-width:none;right:10px;top:10px}.notification{max-width:none;min-width:auto}.notification-content{padding:14px}.notification-title{font-size:13px}.notification-message{font-size:12px}}.notification{animation:slideInRight .3s cubic-bezier(.4,0,.2,1)}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.notification-error{animation:pulseError 2s ease-in-out infinite}@keyframes pulseError{0%,to{box-shadow:0 10px 25px #0000004d}50%{box-shadow:0 10px 25px #ef444433}}.notification-success{animation:successGlow .6s ease-out}@keyframes successGlow{0%{box-shadow:0 10px 25px #0000004d}50%{box-shadow:0 15px 35px #10b9814d}to{box-shadow:0 10px 25px #0000004d}}.confirmation-modal-overlay{align-items:center;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.confirmation-modal{animation:slideInScale .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1e293bf2;border:1px solid #94a3b833;border-radius:16px;box-shadow:0 20px 40px #00000080;max-width:450px;overflow:hidden;padding:0;width:100%}.confirmation-header{align-items:center;border-bottom:1px solid #94a3b81a;display:flex;gap:12px;padding:20px 24px 16px}.confirmation-icon{flex-shrink:0;font-size:24px}.confirmation-title{color:#e2e8f0;flex:1 1;font-size:18px;font-weight:600;margin:0}.confirmation-body{padding:20px 24px}.confirmation-message{color:#cbd5e1;font-size:15px;line-height:1.5;margin:0}.confirmation-actions{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px 24px}.confirmation-btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;min-width:80px;padding:10px 20px;transition:all .2s ease}.confirmation-btn-cancel{background:#94a3b81a;border:1px solid #94a3b84d;color:#94a3b8}.confirmation-btn-cancel:hover{background:#94a3b833;border-color:#94a3b880;color:#e2e8f0}.confirmation-btn-confirm{background:linear-gradient(135deg,#dc3545,#c82333);border:1px solid #dc35454d;color:#fff;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.confirmation-btn-confirm:hover{background:linear-gradient(135deg,#c82333,#a02622);box-shadow:0 4px 12px #dc354566;transform:translateY(-1px)}.confirmation-btn-confirm:active{transform:translateY(0)}.confirmation-warning{border-left:4px solid #f59e0b}.confirmation-warning .confirmation-icon{color:#f59e0b}.confirmation-danger{border-left:4px solid #ef4444}.confirmation-danger .confirmation-icon{color:#ef4444}.confirmation-info{border-left:4px solid #3b82f6}.confirmation-info .confirmation-icon{color:#3b82f6}.confirmation-info .confirmation-btn-confirm{background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:#3b82f64d}.confirmation-info .confirmation-btn-confirm:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 12px #3b82f64d}@keyframes slideInScale{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}@media (max-width:768px){.confirmation-modal-overlay{padding:15px}.confirmation-modal{max-width:none}.confirmation-header{padding:16px 20px 12px}.confirmation-title{font-size:16px}.confirmation-body{padding:16px 20px}.confirmation-message{font-size:14px}.confirmation-actions{flex-direction:column-reverse;padding:12px 20px 20px}.confirmation-btn{padding:12px 20px;width:100%}}.confirmation-danger{animation:pulseDanger 2s ease-in-out infinite}@keyframes pulseDanger{0%,to{box-shadow:0 20px 40px #00000080}50%{box-shadow:0 20px 40px #ef444433}}.document-preview-overlay{animation:fadeIn .2s ease-out;background-color:#000000e6;bottom:0;display:flex;flex-direction:column;left:0;position:fixed;right:0;top:0;z-index:1000}.document-preview-header{align-items:center;background-color:#00000080;color:#fff;display:flex;justify-content:space-between;padding:15px 25px;z-index:1001}.preview-file-info{display:flex;flex-direction:column;gap:4px}.preview-filename{font-size:1.1rem;font-weight:500}.preview-page-info{color:#ccc;font-size:.9rem}.preview-actions{display:flex;gap:15px}.preview-action-btn{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;padding:5px;transition:background-color .2s;width:40px}.preview-action-btn:hover{background-color:#ffffff1a}.document-preview-content{flex:1 1;padding:20px;position:relative}.document-preview-content,.preview-media-container{align-items:center;display:flex;justify-content:center;overflow:hidden}.preview-media-container{height:100%;width:100%}.preview-image{max-height:80vh;max-width:75vw;object-fit:contain}.pdf-container,.preview-image{border-radius:4px;box-shadow:0 4px 20px #00000080}.pdf-container{background-color:#525659;display:block;height:100vh;overflow:hidden;padding:0;position:relative;width:90vw}.preview-iframe{border:none;display:block;height:100%;width:100%}.pdf-page canvas{box-shadow:0 4px 15px #0000004d;height:auto!important;max-width:100%}.preview-nav-btn{align-items:center;background-color:#00000080;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:3rem;height:60px;justify-content:center;padding:15px;position:absolute;top:50%;transform:translateY(-50%);transition:all .2s;width:60px;z-index:2000}.preview-nav-btn:hover:not(.disabled){background-color:#000c;transform:translateY(-50%) scale(1.1)}.preview-nav-btn.prev{left:20px}.preview-nav-btn.next{right:20px}.preview-nav-btn.disabled{cursor:default;display:none;opacity:.3}.unsupported-format{background-color:#fff;border-radius:8px;color:#333;padding:40px;text-align:center}.download-link{background-color:#007bff;border-radius:4px;color:#fff;display:inline-block;margin-top:15px;padding:10px 20px;text-decoration:none;transition:background-color .2s}.download-link:hover{background-color:#0056b3}.loading-spinner{color:#fff;font-size:1.2rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width:768px){.preview-nav-btn{font-size:2rem;height:40px;padding:10px;width:40px}.preview-nav-btn.prev{left:10px}.preview-nav-btn.next{right:10px}.pdf-container{height:70vh;padding:10px;width:95vw}.preview-image{max-height:70vh;max-width:95vw}}
/*# sourceMappingURL=main.6e31aa40.css.map*/