.header{background:#fff;box-shadow:0 2px 4px #0000001a;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-content{align-items:center;display:flex;justify-content:space-between;padding:16px 0}.logo{color:#1f2937;font-size:24px;font-weight:700;text-decoration:none;transition:color .2s ease}.logo:hover{color:#4f46e5}.nav ul{display:flex;gap:8px;list-style:none;margin:0;padding:0}.nav a{border-radius:8px;color:#6b7280;display:block;font-weight:500;padding:12px 20px;position:relative;text-decoration:none;transition:all .2s ease}.nav a:hover{background-color:#f3f4f6;color:#1f2937}.nav a.active{background-color:#4f46e5;color:#fff;font-weight:600}.nav a.active:after{background:#4f46e5;border-radius:50%;bottom:-2px;content:"";height:6px;left:50%;position:absolute;transform:translateX(-50%);width:6px}.user-info{align-items:center;display:flex;gap:16px}.user-details{align-items:flex-end;gap:2px}.user-email{font-size:14px;font-weight:600}.user-role{border-radius:12px;font-size:12px;font-weight:600;letter-spacing:.5px;padding:2px 8px;text-transform:uppercase}.role-user{background:#d1fae5}.user-status{border-radius:8px;font-size:11px;font-weight:600;letter-spacing:.3px;padding:1px 6px;text-transform:uppercase}.logout-btn{background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .2s ease}.logout-btn:hover{background:#dc2626;transform:translateY(-1px)}@media (max-width:768px){.header-content{flex-direction:column;gap:16px;padding:12px 0}.nav ul{flex-wrap:wrap;gap:4px;justify-content:center}.nav a{font-size:14px;padding:8px 12px}.user-info{flex-direction:column;gap:8px;text-align:center}.user-details{align-items:center}.logo{font-size:20px}}@media (max-width:480px){.nav ul{flex-direction:column;gap:2px;width:100%}.nav a{padding:10px;text-align:center}}.checkbox-group,.checkbox-group-container{display:flex;flex-direction:column}.checkbox-group{gap:8px;overflow-y:auto}.checkbox-item{align-items:center;cursor:pointer;display:flex;padding:4px 0}.checkbox-item:hover{background-color:#f5f5f5}.checkbox-item input{margin-right:8px}.search-box{margin-bottom:10px;position:relative}.search-input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 30px 8px 10px;width:100%}.clear-search{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;font-size:18px;height:20px;justify-content:center;position:absolute;right:5px;top:50%;transform:translateY(-50%);width:20px}.no-results{font-style:italic;padding:10px 0}.selected-info{color:#1976d2;font-size:12px;margin-top:8px;text-align:right}.filter-panel{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:15px;width:250px}.filter-section{margin-bottom:20px;overflow:hidden}.filter-section h3{align-items:center;cursor:pointer;display:flex;font-size:16px;font-weight:600;justify-content:space-between;margin-bottom:10px;margin-top:0}.filter-section .toggle-icon{font-weight:700;margin-left:5px}.filter-section .selected-count{color:#666;font-size:14px;margin-left:5px}.filter-section input[type=text]{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px;margin-bottom:8px;padding:8px;width:100%}.checkbox-group-container{box-sizing:border-box;max-height:200px;overflow-y:auto;width:100%}.search-button{background-color:#1976d2;border:none;border-radius:4px;box-sizing:border-box;color:#fff;cursor:pointer;font-weight:600;padding:10px;transition:background-color .2s;width:100%}.search-button:hover{background-color:#1565c0}.clear-button{background-color:#f5f5f5;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;color:#333;cursor:pointer;font-weight:600;margin-top:10px;padding:10px;transition:background-color .2s;width:100%}.clear-button:hover{background-color:#e0e0e0}.price-change-options{display:flex;flex-direction:column;gap:8px}.price-change-options .checkbox-item{border-radius:4px;padding:6px 0;transition:background-color .2s}.price-change-options .checkbox-item:hover{background-color:#f0f0f0;padding-left:4px}.price-change-options input[type=checkbox]{margin-right:8px}.price-change-options span{color:#333;font-size:14px}.filter-help{background-color:#f8f9fa;border-left:3px solid #007bff;border-radius:4px;margin-top:10px;padding:8px}.filter-help small{color:#6c757d;font-size:12px;line-height:1.3}.selected-filters-display{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:16px}.selected-filters-header{align-items:center;border-bottom:1px solid #dee2e6;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.selected-filters-header h3{color:#495057;font-size:18px;font-weight:600;margin:0}.clear-all-btn{background:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .2s ease}.clear-all-btn:hover{background:#c82333;transform:translateY(-1px)}.selected-filters-content{display:flex;flex-direction:column;gap:16px}.filter-group{background:#fff;border:1px solid #e9ecef;border-radius:6px;padding:12px}.filter-group-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.filter-group-label{color:#495057;font-size:14px;font-weight:600}.clear-group-btn{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:4px 8px;transition:background-color .2s ease}.clear-group-btn:hover{background:#545b62}.filter-tags{display:flex;flex-wrap:wrap;gap:8px}.filter-tag{align-items:center;background:#007bff;border-radius:20px;box-shadow:0 1px 3px #007bff4d;color:#fff;display:inline-flex;font-size:13px;line-height:1;padding:6px 10px;transition:all .2s ease}.filter-tag:hover{background:#0056b3;box-shadow:0 2px 5px #007bff66;transform:translateY(-1px)}.filter-tag-text{margin-right:6px;white-space:nowrap}.remove-filter-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:700;height:18px;justify-content:center;line-height:1;transition:background-color .2s ease;width:18px}.remove-filter-btn:hover{background:#ffffff4d;transform:scale(1.1)}@media (max-width:768px){.selected-filters-header{align-items:stretch;flex-direction:column;gap:12px}.filter-group-header{align-items:stretch;flex-direction:column;gap:8px}.filter-tags{justify-content:center}.clear-all-btn,.clear-group-btn{text-align:center;width:100%}}.filter-tag{animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.loading-container{padding:40px;text-align:center}.spinner{animation:spin 1s linear infinite;border:4px solid #0000001a;border-radius:50%;border-top-color:#1976d2;height:40px;margin-bottom:15px;width:40px}.modal-backdrop{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}.modal-content{background-color:#fff;border-radius:8px;box-shadow:0 4px 20px #00000040;max-height:90vh;max-width:900px;overflow-y:auto;position:relative;width:90%}.close-button{background:none;border:none;color:#666;cursor:pointer;font-size:24px;position:absolute;right:15px;top:15px;z-index:10}.close-button:hover{color:#333}.modal-header{border-bottom:1px solid #eee;padding:20px 25px;position:relative}.modal-header h2{color:#333;font-size:20px;margin:0;padding-right:30px}.tire-id{color:#888;font-size:12px;margin-top:5px}.modal-body{padding:20px 25px}.tire-info-columns{grid-gap:25px;display:grid;gap:25px;grid-template-columns:1fr 1fr}.info-section{margin-bottom:25px}.info-section h3{border-bottom:1px solid #eee;color:#444;font-size:16px;margin-bottom:15px;margin-top:0;padding-bottom:8px}.info-grid{grid-row-gap:10px;display:grid;grid-template-columns:120px 1fr;row-gap:10px}.info-label{color:#666;font-size:14px;font-weight:600}.info-value{color:#333;font-size:14px}.price-value{color:#222;font-size:16px;font-weight:600}.source-link{color:#4a90e2;display:inline-block;font-size:14px;padding:5px 0;text-decoration:none}.source-link:hover{text-decoration:underline}.price-history{margin-top:10px;max-height:300px;overflow-y:auto}.price-history-table{border-collapse:collapse;font-size:13px;width:100%}.price-history-table td,.price-history-table th{border-bottom:1px solid #eee;padding:8px 12px;text-align:left}.price-history-table th{background-color:#f5f5f5;color:#555;font-weight:600;position:-webkit-sticky;position:sticky;top:0;z-index:1}.price-decrease{color:#dc3545}.price-increase{color:#28a745}.no-history{color:#888;font-style:italic;padding:20px 0;text-align:center}.percent-change{font-size:12px;margin-left:5px;opacity:.8}.price-history-error,.price-history-loading{align-items:center;display:flex;justify-content:center;min-height:150px}.price-history-error{color:#dc3545;text-align:center}.price-history-stats{border-top:1px solid #eee;margin-top:15px;padding-top:15px}.stat{display:flex;font-size:13px;justify-content:space-between;margin-bottom:8px}.stat-label{color:#666}.stat-label,.stat-value{font-weight:600}@media (max-width:768px){.tire-info-columns{grid-template-columns:1fr}.modal-content{width:95%}}.tire-list{margin-top:20px}.tire-count{font-weight:500;margin-bottom:15px}.tire-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.tire-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;cursor:pointer;display:flex;flex-direction:column;padding:15px;transition:transform .2s,box-shadow .2s}.tire-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-3px)}.tire-header{margin-bottom:10px}.tire-header h3{font-size:16px;margin:0 0 5px}.tire-brand{color:#666;font-size:14px}.tire-dimension{font-size:18px;font-weight:600;margin-bottom:10px}.tire-details{margin-bottom:15px}.detail-item{display:flex;margin-bottom:5px}.detail-label{color:#666;width:70px}.tire-footer{align-items:center;display:flex;justify-content:space-between;margin-top:auto}.tire-price{font-size:18px;font-weight:600}.price-change{font-size:14px}.price-decreased{color:#2e7d32}.price-increased{color:#d32f2f}.no-results{background-color:#fff;color:#666;padding:30px;text-align:center}.action-buttons,.no-results{border-radius:8px;box-shadow:0 2px 4px #0000001a}.action-buttons{background:#fff;flex-direction:column;gap:12px;margin:20px 0;padding:20px}.action-button{border:none;border-radius:6px;cursor:pointer;font-size:16px;letter-spacing:.5px;padding:12px 24px;text-transform:uppercase}.action-button:disabled{cursor:not-allowed;opacity:.6}.database-button{background:linear-gradient(135deg,#4caf50,#388e3c);color:#fff}.database-button:hover:not(:disabled){background:linear-gradient(135deg,#388e3c,#2e7d32);box-shadow:0 4px 8px #4caf504d;transform:translateY(-2px)}.csv-button{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff}.csv-button:hover:not(:disabled){background:linear-gradient(135deg,#1976d2,#1565c0);box-shadow:0 4px 8px #2196f34d;transform:translateY(-2px)}.guest-notice{animation:fadeIn .3s ease-in;background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:2px solid #90caf9;padding:16px}.guest-notice small{display:block;line-height:1.4}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (min-width:768px){.action-buttons{align-items:center;flex-direction:row;justify-content:center}.guest-notice{flex:1 1;margin-left:16px;margin-top:0;max-width:300px}}@media (max-width:480px){.action-button{font-size:14px;padding:10px 20px}}.error-container{align-items:flex-start;background-color:#ffebee;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;margin-bottom:20px;padding:20px}.error-icon{flex-shrink:0;margin-right:15px}.error-content{flex-grow:1}.error-content h3{color:#d32f2f;font-size:18px;margin-bottom:8px;margin-top:0}.error-content p{color:#333;margin-bottom:15px;margin-top:0}.retry-button{background-color:#d32f2f;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:8px 16px;transition:background-color .2s}.retry-button:hover{background-color:#b71c1c}.home-page{padding:20px 0}.home-page,.results-container{flex-grow:1}.error-message{background-color:#ffebee;color:#d32f2f}.error-message,.search-url{border-radius:4px;padding:15px}.search-url{background-color:#f5f5f5;margin-bottom:20px;word-break:break-all}.search-url h3{color:#333;font-size:16px;margin-bottom:10px;margin-top:0}.search-url a{color:#1976d2;text-decoration:none}.search-url a:hover{text-decoration:underline}@media (max-width:768px){.page-content{flex-direction:column}.filter-panel,.filter-panel-skeleton{margin-bottom:20px;width:100%}}.pagination-container{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;display:flex;flex-direction:column;gap:16px;margin:20px 0;padding:16px}.pagination-info{color:#6c757d;font-size:14px;justify-content:space-between}.items-info{font-weight:500}.per-page-selector{align-items:center;display:flex;gap:8px}.per-page-selector label{font-weight:500}.per-page-selector select{background:#fff;border:1px solid #ced4da;border-radius:4px;font-size:14px;padding:4px 8px}.per-page-selector select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.pagination-controls{flex-wrap:wrap;justify-content:center}.pagination-btn{background:#fff;border:1px solid #dee2e6;border-radius:4px;color:#495057;cursor:pointer;font-size:14px;font-weight:500;min-width:60px;padding:8px 12px;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background:#e9ecef;border-color:#adb5bd}.pagination-btn:disabled{background:#f8f9fa;cursor:not-allowed;opacity:.6}.pagination-pages{align-items:center;display:flex;gap:4px}.pagination-page{background:#fff;border:1px solid #dee2e6;border-radius:4px;color:#495057;cursor:pointer;font-size:14px;font-weight:500;min-width:40px;padding:8px 12px;transition:all .2s ease}.pagination-page:hover:not(:disabled){background:#e9ecef;border-color:#adb5bd}.pagination-page.active{background:#007bff;border-color:#007bff;color:#fff}.pagination-page.active:hover{background:#0056b3;border-color:#0056b3}.pagination-page:disabled{cursor:not-allowed;opacity:.6}.pagination-dots{color:#6c757d;font-weight:500;padding:8px 4px}.pagination-summary{color:#6c757d;font-size:14px;font-weight:500;text-align:center}@media (max-width:768px){.pagination-container{gap:12px}.pagination-info{align-items:stretch;flex-direction:column;gap:8px;text-align:center}.pagination-controls{gap:4px}.pagination-btn{font-size:12px;min-width:50px;padding:6px 8px}.pagination-page{font-size:12px;min-width:32px;padding:6px 8px}.pagination-pages{gap:2px}}@media (max-width:480px){.pagination-pages{justify-content:flex-start;max-width:200px;overflow-x:auto}.pagination-btn{font-size:11px;min-width:40px;padding:4px 6px}.pagination-page{font-size:11px;min-width:28px;padding:4px 6px}}.price-change-filter{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:15px 0;padding:15px}.price-change-toggle{align-items:center;cursor:pointer;display:flex;-webkit-user-select:none;user-select:none}.price-change-toggle input{height:0;opacity:0;position:absolute;width:0}input:checked+.toggle-slider{background-color:#4a90e2}input:focus+.toggle-slider{box-shadow:0 0 1px #4a90e2}.toggle-label{color:#444}.toggle-slider:after{content:"₴"}.today-change-filter{background-color:#fff3e0;border:1px solid #ffe0b2;border-radius:8px;margin:15px 0;padding:15px}.today-change-toggle{align-items:center;cursor:pointer;display:flex;-webkit-user-select:none;user-select:none}.today-change-toggle input{height:0;opacity:0;position:absolute;width:0}.toggle-slider{background-color:#ccc;border-radius:34px;display:inline-block;flex-shrink:0;height:24px;margin-right:12px;position:relative;transition:.4s;width:50px}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:4px;content:"";height:16px;left:4px;position:absolute;transition:.4s;width:16px}input:checked+.toggle-slider{background-color:#ff9800}input:focus+.toggle-slider{box-shadow:0 0 1px #ff9800}input:checked+.toggle-slider:before{transform:translateX(26px)}.toggle-label{color:#e65100;font-size:14px;font-weight:500}.toggle-slider:after{color:#fff;content:"📅";font-size:14px;opacity:0;position:absolute;right:7px;top:2px;transition:.4s}input:checked+.toggle-slider:after{opacity:1}.database-tires-page{padding:20px 0}.database-tires-page h1{color:#333;font-size:28px;margin-bottom:20px}.left-section,.page-content{display:flex;gap:20px}.left-section{flex-direction:column;flex-shrink:0;width:300px}.left-section .selected-filters-display{margin-bottom:0}.filter-panel-skeleton{align-items:center;background:#f8f8f8;border-radius:8px;display:flex;height:600px;justify-content:center;width:100%}.results-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;flex:1 1;min-height:600px;padding:20px}.filter-controls{margin-bottom:20px}.tires-table-container{overflow:auto}.tires-count{color:#555;font-weight:700;margin-bottom:15px}.tires-table{border-collapse:collapse;font-size:14px;width:100%}.tires-table td,.tires-table th{border-bottom:1px solid #eee;padding:12px 15px;text-align:left}.tires-table th{background-color:#f5f5f5;color:#333;cursor:pointer;font-weight:600;position:-webkit-sticky;position:sticky;top:0;-webkit-user-select:none;user-select:none}.tires-table th.sortable:hover{background-color:#e9e9e9}.tires-table tbody tr:hover{background-color:#f9f9f9}.price-increased{color:#28a745;font-weight:600}.price-decreased{color:#dc3545;font-weight:600}.view-details-btn{background:#4a90e2;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;transition:background .2s}.view-details-btn:hover{background:#3a7bc8}.no-tires-message{color:#888;font-size:16px;padding:40px;text-align:center}.today-change{background-color:#fff8e1}.today-change:hover{background-color:#ffecb3!important}.today-change .price-decreased,.today-change .price-increased{position:relative}.today-change .price-decreased:after,.today-change .price-increased:after{background:#ff9800;border-radius:2px;color:#fff;content:"TODAY";font-size:8px;font-weight:700;padding:2px 4px;position:absolute;right:-10px;top:-5px}.today-filter-active{background:#ff9800;border-radius:10px;color:#fff;display:inline-block;font-size:10px;font-weight:700;margin-left:8px;padding:2px 6px;vertical-align:middle}.today-changes-count{color:#e65100;font-weight:600;margin-left:8px}@media (max-width:1024px){.page-content{flex-direction:column}.left-section{width:100%}.filter-panel-skeleton{height:300px}}.auth-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-form-wrapper{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:450px;padding:40px;width:100%}.auth-header{margin-bottom:32px;text-align:center}.auth-header h2{color:#1f2937;font-size:28px;font-weight:700;margin:0 0 8px}.auth-header p{color:#6b7280;font-size:16px;margin:0}.auth-form{gap:20px}.auth-form,.form-group{display:flex;flex-direction:column}.form-group{gap:6px}.form-group label{color:#374151;font-size:14px;font-weight:600}.form-group input,.form-group select{background:#fff;border:2px solid #e5e7eb;border-radius:8px;font-size:16px;padding:12px 16px;transition:all .2s ease}.form-group input:focus,.form-group select:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a;outline:none}.form-group input:disabled,.form-group select:disabled{background-color:#f9fafb;border-color:#d1d5db;color:#6b7280;cursor:not-allowed}.form-help{color:#6b7280;font-size:12px;line-height:1.4;margin-top:4px}.auth-button{background:linear-gradient(135deg,#4f46e5,#7c3aed);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:8px;padding:14px 20px;transition:all .2s ease}.auth-button:hover:not(:disabled){box-shadow:0 10px 15px -3px #0000001a;transform:translateY(-1px)}.auth-button:disabled{background:#9ca3af;box-shadow:none;cursor:not-allowed;transform:none}.error-message{background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626}.error-message,.success-message{font-size:14px;margin-bottom:8px;padding:12px 16px}.success-message{background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;color:#16a34a}.auth-footer{border-top:1px solid #e5e7eb;margin-top:24px;padding-top:24px;text-align:center}.auth-footer p{color:#6b7280;font-size:14px;margin:0}.auth-link{color:#4f46e5;font-weight:600;text-decoration:none;transition:color .2s ease}.auth-link:hover{color:#7c3aed;text-decoration:underline}@media (max-width:480px){.auth-container{padding:10px}.auth-form-wrapper{padding:24px}.auth-header h2{font-size:24px}.auth-header p{font-size:14px}}.auth-button:disabled:after{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:currentcolor;content:"";display:inline-block;height:16px;margin-left:8px;width:16px}.dashboard-container{background:#f8fafc;min-height:100vh;padding:20px}.dashboard-content{margin:0 auto;max-width:1200px}.dashboard-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;justify-content:space-between;margin-bottom:32px;padding:24px}.dashboard-header h1{color:#1f2937;font-size:28px;font-weight:700;margin:0}.logout-button{background:#ef4444;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .2s ease}.logout-button:hover{background:#dc2626;transform:translateY(-1px)}.user-info-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:32px;padding:24px}.user-info-card h2{color:#1f2937;font-size:20px;font-weight:600;margin:0 0 20px}.user-details{display:flex;flex-direction:column;gap:12px}.detail-row{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:8px 0}.detail-row:last-child{border-bottom:none}.label{color:#6b7280;font-weight:600}.value{color:#1f2937;font-weight:500}.role-admin{font-weight:700}.role-user{color:#059669}.role-guest,.role-user{font-weight:600}.status-approved{color:#059669;font-weight:600}.status-pending{color:#d97706;font-weight:600}.status-rejected{color:#dc2626;font-weight:600}.status-message{border-radius:12px;margin-bottom:32px;padding:20px}.status-message.pending{background:#fef3c7;border:1px solid #f59e0b}.status-message.rejected{background:#fee2e2;border:1px solid #ef4444}.status-message h3{color:#1f2937;margin:0 0 8px}.status-message p{color:#6b7280;margin:0}.dashboard-actions{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px}.dashboard-actions h2{color:#1f2937;font-size:20px;font-weight:600;margin:0 0 24px}.action-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.action-card{background:#f8fafc;border:2px solid #e5e7eb;border-radius:12px;padding:24px;transition:all .2s ease}.action-card:hover{border-color:#4f46e5;box-shadow:0 4px 6px -1px #0000001a;transform:translateY(-2px)}.action-card.admin-card{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b}.action-card h3{color:#1f2937;font-size:18px;font-weight:600;margin:0 0 12px}.action-card p{color:#6b7280;line-height:1.5;margin:0 0 16px}.action-button{background:#4f46e5;border-radius:8px;color:#fff;display:inline-block;font-weight:600;padding:10px 20px;text-decoration:none;transition:all .2s ease}.action-button:hover{background:#4338ca;transform:translateY(-1px)}.admin-button{background:#f59e0b}.admin-button:hover{background:#d97706}.guest-info{background:linear-gradient(135deg,#e0f2fe,#b3e5fc);border-color:#29b6f6}.guest-permissions{display:flex;flex-direction:column;gap:8px;margin-top:16px}.permission{font-size:14px;font-weight:500;padding:4px 0}.permission.allowed{color:#2e7d32}.permission.denied{color:#d32f2f}.guest-notice{background:#e3f2fd;border:1px solid #90caf9;border-radius:8px;margin-top:12px;padding:12px;text-align:center}.guest-notice small{color:#1565c0;font-weight:500}.pending-container{align-items:center;background:#f8fafc;display:flex;justify-content:center;min-height:100vh;padding:20px}.pending-content{background:#fff;border-radius:12px;box-shadow:0 10px 15px -3px #0000001a;max-width:500px;padding:48px;text-align:center}.pending-icon{font-size:64px;margin-bottom:24px}.pending-content h1{color:#1f2937;font-size:28px;font-weight:700;margin:0 0 24px}.pending-content p{color:#6b7280;line-height:1.6;margin:0 0 16px}.pending-actions{display:flex;gap:16px;justify-content:center;margin-top:32px}.dashboard-button{background:#4f46e5;border-radius:8px;color:#fff;font-weight:600;padding:12px 24px;text-decoration:none;transition:all .2s ease}.dashboard-button:hover{background:#4338ca;transform:translateY(-1px)}.loading-container{align-items:center;background:#f8fafc;display:flex;flex-direction:column;justify-content:center;min-height:100vh}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#4f46e5;height:40px;margin-bottom:16px;width:40px}.access-denied{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin:20px;padding:48px;text-align:center}.access-denied h2{color:#dc2626;margin-bottom:16px}.access-denied p{color:#6b7280;margin-bottom:24px}.access-denied a{color:#4f46e5;font-weight:600;text-decoration:none}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.dashboard-header{flex-direction:column;gap:16px;text-align:center}.action-cards{grid-template-columns:1fr}.detail-row,.pending-actions{flex-direction:column}.detail-row{align-items:flex-start;gap:4px}}.admin-panel{background:#f8fafc;min-height:100vh;padding:20px 0}.admin-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;justify-content:space-between;margin-bottom:32px;padding:24px}.admin-header h1{color:#1f2937;font-size:28px;font-weight:700;margin:0}.admin-actions{display:flex;gap:12px}.backup-btn{background:#10b981;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:12px 20px;transition:all .2s ease}.backup-btn:hover:not(:disabled){background:#059669;transform:translateY(-1px)}.backup-btn:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.backup-message{border-radius:8px;font-weight:500;margin-bottom:24px;padding:16px}.backup-message.success{background:#d1fae5;border:1px solid #10b981;color:#065f46}.backup-message.error{background:#fee2e2;border:1px solid #ef4444;color:#991b1b}.users-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.section-header h2{color:#1f2937;font-size:20px;font-weight:600;margin:0}.filters{align-items:center;display:flex;gap:8px}.filters label{color:#6b7280;font-weight:500}.filters select{background:#fff;border:2px solid #e5e7eb;border-radius:6px;color:#1f2937;font-weight:500;padding:8px 12px}.filters select:focus{border-color:#4f46e5;outline:none}.error-message{align-items:center;background:#fee2e2;border-radius:8px;color:#991b1b;display:flex;justify-content:space-between;margin-bottom:20px;padding:16px}.retry-btn{background:#ef4444;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px}.loading-spinner{color:#6b7280;font-size:16px;padding:40px;text-align:center}.users-count{color:#6b7280;font-weight:500;margin-bottom:16px}.users-table-container{border:1px solid #e5e7eb;border-radius:8px;overflow-x:auto}.users-table{background:#fff;border-collapse:collapse;width:100%}.users-table th{background:#f9fafb;border-bottom:1px solid #e5e7eb;color:#374151;font-weight:600;padding:12px 16px;text-align:left}.users-table td{border-bottom:1px solid #f3f4f6;padding:12px 16px;vertical-align:middle}.users-table tbody tr:hover{background:#f9fafb}.user-email{color:#1f2937;font-weight:500}.role-badge,.status-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.role-admin{background:#fee2e2;color:#dc2626}.role-user{background:#dbeafe;color:#2563eb}.role-guest{background:#f3f4f6;color:#6b7280}.status-approved{background:#d1fae5;color:#065f46}.status-pending{background:#fef3c7;color:#92400e}.status-rejected{background:#fee2e2;color:#991b1b}.action-buttons{display:flex;gap:8px}.approve-btn,.reject-btn{border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .2s ease}.approve-btn{background:#10b981;color:#fff}.approve-btn:hover:not(:disabled){background:#059669}.reject-btn{background:#ef4444;color:#fff}.reject-btn:hover:not(:disabled){background:#dc2626}.approve-btn:disabled,.reject-btn:disabled{background:#9ca3af;cursor:not-allowed}.pagination{border-top:1px solid #e5e7eb;justify-content:space-between;margin-top:24px;padding-top:20px}.pagination,.pagination-info{align-items:center;display:flex}.per-page-select{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:6px 10px}.pagination-controls{align-items:center;display:flex;gap:8px}.page-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:14px;font-weight:500;padding:8px 12px;transition:all .2s ease}.page-btn:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.page-btn:disabled{background:#f9fafb;color:#9ca3af;cursor:not-allowed}.page-info{color:#374151;font-weight:500;margin:0 16px}.no-users{color:#6b7280;font-size:16px;padding:48px;text-align:center}@media (max-width:768px){.admin-header{flex-direction:column;gap:16px;text-align:center}.section-header{align-items:flex-start;flex-direction:column;gap:12px}.pagination{flex-direction:column;gap:16px}.users-table{font-size:14px}.users-table td,.users-table th{padding:8px 12px}.action-buttons{flex-direction:column;gap:4px}}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}.app{display:flex;flex-direction:column;min-height:100vh}.container{margin:0 auto;max-width:1200px;padding:0 15px}
/*# sourceMappingURL=main.8daeb292.css.map*/