.dashboard{min-height:100vh;background:#f5f7fa}.dashboard-header{background:linear-gradient(135deg,#06c,#004080);padding:60px 0;box-shadow:0 4px 20px #0000001a}.header-content{max-width:1200px;margin:0 auto;padding:0 20px;text-align:center}.welcome-section{margin-bottom:40px}.main-title{color:#fff;font-size:48px;font-weight:700;margin-bottom:15px;display:flex;align-items:center;justify-content:center;gap:15px}.pump-icon{font-size:50px;color:#4caf50}.subtitle{color:#fffffff2;font-size:28px;font-weight:300;margin-bottom:25px}.welcome-features{display:flex;justify-content:center;gap:20px;margin-bottom:25px;flex-wrap:wrap}.feature-badge{background:#fff3;color:#fff;padding:8px 20px;border-radius:25px;font-size:16px;display:flex;align-items:center;gap:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3)}.welcome-description{color:#ffffffe6;font-size:18px;line-height:1.6;max-width:800px;margin:0 auto 30px}.tech-stack{border-top:1px solid rgba(255,255,255,.2);padding-top:20px}.tech-stack h3{color:#fffc;font-size:16px;font-weight:400;display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:10px}.grails-icon{font-size:20px;color:#78c257}.api-message{color:#ffffffb3;font-size:14px;font-weight:300}.dashboard-content{max-width:1200px;margin:0 auto;padding:40px 20px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:25px;margin-bottom:40px}.stat-card{background:#fff;border-radius:15px;padding:25px;box-shadow:0 2px 10px #00000014;transition:all .3s ease;display:flex;align-items:center;gap:20px}.stat-card:hover{transform:translateY(-5px);box-shadow:0 5px 20px #00000026}.stat-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0}.stat-card.environment .stat-icon{background:linear-gradient(135deg,#06c,#004080);color:#fff}.stat-card.version .stat-icon{background:linear-gradient(135deg,#08f,#05a);color:#fff}.stat-card.grails .stat-icon{background:linear-gradient(135deg,#0af,#07c);color:#fff}.stat-card.groovy .stat-icon{background:linear-gradient(135deg,#0c8,#085);color:#fff}.stat-content h3{font-size:14px;color:#6b7280;font-weight:600;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:24px;font-weight:700;color:#1f2937;margin:0}.stat-label{font-size:12px;color:#9ca3af;font-weight:500}.info-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:25px;margin-bottom:40px}.info-card{background:#fff;border-radius:15px;padding:30px;box-shadow:0 2px 10px #00000014}.info-header{display:flex;align-items:center;gap:12px;margin-bottom:25px;padding-bottom:15px;border-bottom:2px solid #f3f4f6}.info-header h2{font-size:20px;color:#1f2937;font-weight:600}.info-icon{font-size:24px;color:#06c}.info-content{display:flex;flex-direction:column;gap:15px}.info-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #f9fafb}.info-label{font-size:14px;color:#6b7280;font-weight:500}.info-value{font-size:14px;color:#1f2937;font-weight:600}.status-enabled{color:#10b981;display:flex;align-items:center;gap:5px}.status-disabled{color:#ef4444}.artefacts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.artefact-item{text-align:center;padding:15px;background:#f9fafb;border-radius:10px}.artefact-count{font-size:32px;font-weight:700;color:#06c;margin-bottom:5px}.artefact-label{font-size:12px;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.expandable-section{background:#fff;border-radius:15px;margin-bottom:25px;box-shadow:0 2px 10px #00000014;overflow:hidden}.section-header{display:flex;justify-content:space-between;align-items:center;padding:25px 30px;cursor:pointer;transition:background .3s ease}.section-header:hover{background:#f9fafb}.section-header h2{font-size:20px;color:#1f2937;font-weight:600;display:flex;align-items:center;gap:12px}.section-icon{color:#06c}.expand-button{background:none;border:none;font-size:20px;color:#6b7280;cursor:pointer;transition:color .3s ease}.expand-button:hover{color:#06c}.section-content{padding:0 30px 30px;border-top:1px solid #f3f4f6}.controllers-list{display:flex;flex-direction:column;gap:12px;margin-top:20px}.controller-item{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background:#f9fafb;border-radius:10px;transition:background .3s ease}.controller-item:hover{background:#f3f4f6}.controller-name{font-size:14px;font-weight:600;color:#1f2937;font-family:Courier New,monospace}.controller-logical{font-size:13px;color:#6b7280;display:flex;align-items:center;gap:5px}.small-icon{font-size:12px;color:#9ca3af}.plugins-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px;margin-top:20px}.plugin-card{padding:15px;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-radius:10px;border:1px solid #e5e7eb;transition:all .3s ease}.plugin-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.plugin-name{font-size:14px;font-weight:600;color:#1f2937;margin-bottom:5px}.plugin-version{font-size:12px;color:#06c;font-weight:500}.no-items{text-align:center;color:#9ca3af;font-size:14px;padding:20px;font-style:italic}.features-section{background:#f8f9fa;padding:80px 20px}.features-container{max-width:1200px;margin:0 auto}.features-title{text-align:center;font-size:36px;font-weight:700;color:#1f2937;margin-bottom:10px}.features-subtitle{text-align:center;font-size:18px;color:#6b7280;margin-bottom:60px}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:40px;margin-bottom:60px}.feature-card{background:#fff;padding:40px 30px;border-radius:15px;box-shadow:0 4px 20px #00000014;transition:all .3s ease;text-align:center}.feature-card:hover{transform:translateY(-10px);box-shadow:0 10px 40px #0066cc26}.feature-icon{width:80px;height:80px;margin:0 auto 25px;background:linear-gradient(135deg,#06c,#004080);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:36px;color:#fff}.feature-card h3{font-size:24px;font-weight:700;color:#1f2937;margin-bottom:15px}.feature-card p{font-size:16px;line-height:1.6;color:#6b7280}.cta-section{text-align:center;padding:40px 20px}.cta-button{background:linear-gradient(135deg,#06c,#004080);color:#fff;border:none;padding:18px 40px;font-size:18px;font-weight:600;border-radius:50px;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:10px;box-shadow:0 4px 20px #0066cc4d}.cta-button:hover{transform:translateY(-3px);box-shadow:0 8px 30px #06c6}.cta-arrow{transition:transform .3s ease}.cta-button:hover .cta-arrow{transform:translate(5px)}.cta-text{margin-top:15px;font-size:14px;color:#6b7280}.data-sources-section{margin:60px 0;padding:40px;background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000001a}.data-sources-title{text-align:center;font-size:32px;font-weight:700;color:#1f2937;margin-bottom:10px}.data-sources-subtitle{text-align:center;font-size:16px;color:#6b7280;margin-bottom:40px}.data-sources-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:30px}.data-source-card{background:#f8f9fa;border-radius:15px;padding:30px;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.data-source-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px #0000001a}.data-source-icon{width:60px;height:60px;background:linear-gradient(135deg,#06c,#004080);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;color:#fff;font-size:24px}.data-source-card h3{font-size:20px;font-weight:600;color:#1f2937;margin-bottom:15px}.data-source-card p{font-size:14px;line-height:1.6;color:#6b7280}.dashboard-footer{background:linear-gradient(135deg,#004080,#002040);color:#fff;text-align:center;padding:20px;margin-top:0}.dashboard-footer p{font-size:14px;opacity:.9}@media (max-width: 768px){.stats-grid,.info-section{grid-template-columns:1fr}.data-sources-section{margin:40px 0;padding:20px}.data-sources-grid{grid-template-columns:1fr;gap:20px}.data-source-card{padding:20px}.data-sources-title{font-size:24px}.artefacts-grid,.plugins-grid{grid-template-columns:1fr}.dashboard-header h1{font-size:28px}.welcome-message{font-size:16px}}.app-navigation{background:linear-gradient(135deg,#06c,#004080);padding:15px;display:flex;justify-content:center;gap:10px;box-shadow:0 2px 10px #0000001a}.app-navigation button{background:#fff3;color:#fff;border:2px solid transparent;padding:10px 25px;border-radius:25px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:8px}.nav-icon{font-size:18px}.app-navigation button:hover{background:#ffffff4d;transform:translateY(-2px)}.app-navigation button.active{background:#fff;color:#06c;border-color:#fff}.auth-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:#06c}.auth-container{max-width:450px;margin:50px auto;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;overflow:hidden}.auth-header{background:linear-gradient(135deg,#06c,#004080);padding:30px;text-align:center}.auth-header h1{color:#fff;font-size:28px;margin:0;font-weight:700}.auth-tabs{display:flex;background-color:#f8f9fa;border-bottom:1px solid #e9ecef}.auth-tabs button{flex:1;padding:15px;border:none;background:transparent;cursor:pointer;font-size:16px;font-weight:600;color:#6c757d;transition:all .3s ease;position:relative}.auth-tabs button.active{background-color:#fff;color:#06c}.auth-tabs button.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:3px;background:linear-gradient(135deg,#06c,#004080)}.auth-tabs button:hover:not(.active){background-color:#e9ecef}.auth-form{padding:40px}.auth-form h2{margin-bottom:30px;text-align:center;color:#333;font-size:24px}.form-group{margin-bottom:25px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#495057;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.form-group input{width:100%;padding:12px 15px;border:2px solid #e9ecef;border-radius:8px;font-size:16px;transition:all .3s ease;background:#f8f9fa}.form-group input:focus{outline:none;border-color:#06c;background:#fff;box-shadow:0 0 0 3px #0066cc1a}.auth-form button{width:100%;padding:14px;background:linear-gradient(135deg,#06c,#004080);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px}.auth-form button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 20px #06c6}.auth-form button:disabled{background:linear-gradient(135deg,#6c757d,#5a6268);cursor:not-allowed;transform:none}.error-message{background-color:#f8d7da;color:#721c24;padding:12px 15px;border-radius:8px;margin-bottom:25px;border:1px solid #f5c6cb;font-size:14px;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.auth-dashboard{min-height:calc(100vh - 60px);background:#f5f7fa}.auth-dashboard-header{background:linear-gradient(135deg,#06c,#004080);padding:30px;box-shadow:0 4px 20px #0000001a;display:flex;justify-content:space-between;align-items:center}.auth-dashboard-header h1{color:#fff;margin:0;font-size:32px;font-weight:700}.logout-btn{background:#fff3;color:#fff;border:2px solid white;padding:10px 25px;border-radius:25px;cursor:pointer;font-size:16px;font-weight:600;transition:all .3s ease}.logout-btn:hover{background:#fff;color:#06c}.auth-dashboard-content{max-width:900px;margin:40px auto;padding:0 20px;display:grid;grid-template-columns:1fr 1fr;gap:30px}.user-info,.welcome-message{background:#fff;padding:30px;border-radius:12px;box-shadow:0 2px 10px #00000014}.user-info h3,.welcome-message h3{margin-bottom:20px;color:#333;font-size:22px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.user-info p{margin-bottom:15px;color:#666;font-size:16px;line-height:1.6}.user-info strong{color:#333;font-weight:600;margin-right:10px}.welcome-message p{color:#666;font-size:16px;line-height:1.8;margin-bottom:15px}@media (max-width: 768px){.auth-dashboard-content{grid-template-columns:1fr;margin:20px auto}.auth-container{margin:20px;max-width:none}.auth-dashboard-header{flex-direction:column;gap:20px;text-align:center}.auth-dashboard-header h1{font-size:24px}}.search-view{min-height:100vh;background:linear-gradient(135deg,#06c,#004080);padding:20px}.search-header{text-align:center;color:#fff;margin-bottom:30px}.search-header h1{font-size:2.5rem;margin-bottom:10px}.search-header .subtitle{font-size:1.1rem;opacity:.9}.search-controls{background:#fff;border-radius:15px;padding:20px;margin-bottom:20px;box-shadow:0 4px 6px #0000001a}.search-bar{position:relative;margin-bottom:20px}.search-bar .search-icon{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:#999;font-size:1.2rem}.search-bar input{width:100%;padding:12px 15px 12px 45px;border:2px solid #e0e0e0;border-radius:10px;font-size:1rem;transition:border-color .3s}.search-bar input:focus{outline:none;border-color:#667eea}.control-buttons{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.filter-toggle{padding:10px 20px;background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s}.filter-toggle.active{background:#667eea;color:#fff;border-color:#667eea}.sort-control{display:flex;align-items:center;gap:10px;padding:10px 15px;background:#f5f5f5;border-radius:8px}.sort-control select{border:none;background:transparent;font-size:.95rem;cursor:pointer;outline:none}.view-toggle{display:flex;gap:5px;margin-left:auto}.view-toggle button{padding:10px;background:#fff;border:2px solid #e0e0e0;cursor:pointer;transition:all .3s}.view-toggle button:first-child{border-radius:8px 0 0 8px}.view-toggle button:last-child{border-radius:0 8px 8px 0}.view-toggle button.active{background:#667eea;color:#fff;border-color:#667eea}.data-mode-toggle{display:flex;align-items:center;gap:10px;padding:10px 15px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.data-mode-toggle .mode-buttons{display:flex;gap:2px}.data-mode-toggle button{padding:8px 12px;background:#fff;border:1px solid #dee2e6;border-radius:6px;cursor:pointer;transition:all .3s;font-size:.85rem;font-weight:500;color:#495057}.data-mode-toggle button:first-child{border-radius:6px 0 0 6px}.data-mode-toggle button:last-child{border-radius:0 6px 6px 0;border-left:none}.data-mode-toggle button.active{background:#28a745;color:#fff;border-color:#28a745}.data-mode-toggle button:hover:not(.active){background:#e9ecef;border-color:#adb5bd}.search-content{display:flex;gap:20px}.filters-sidebar{width:280px;background:#fff;border-radius:15px;padding:20px;height:fit-content;position:sticky;top:20px}.filters-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.filters-header h3{color:#333;font-size:1.3rem}.clear-filters{padding:6px 12px;background:#ff6b6b;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;transition:background .3s}.clear-filters:hover{background:#ff5252}.filter-section{margin-bottom:25px}.filter-section h4{color:#555;margin-bottom:12px;font-size:1rem}.checkbox-group{display:flex;flex-direction:column;gap:8px}.checkbox-group label{display:flex;align-items:center;gap:8px;cursor:pointer;color:#666;transition:color .3s}.checkbox-group label:hover{color:#667eea}.checkbox-group input[type=checkbox]{width:18px;height:18px;cursor:pointer}.range-inputs{display:flex;gap:10px;align-items:center;margin-bottom:10px}.range-inputs input{flex:1;padding:8px;border:1px solid #ddd;border-radius:6px;font-size:.9rem;min-width:60px;max-width:80px}.range-slider{width:100%;cursor:pointer}.rating-filter{display:flex;flex-direction:column;gap:8px}.rating-filter label{display:flex;align-items:center;gap:10px;cursor:pointer}.rating-filter .stars{display:flex;gap:2px}.rating-filter .stars .filled{color:#ffc107}.results-section{flex:1}.results-header{background:#fff;padding:15px 20px;border-radius:10px;margin-bottom:20px}.results-count{color:#666;font-size:1rem}.results-grid{display:grid;gap:20px}.results-grid.grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.results-grid.list{grid-template-columns:1fr}.pump-card{background:#fff;border-radius:15px;overflow:hidden;transition:transform .3s,box-shadow .3s;cursor:pointer}.pump-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #00000026}.card-image{position:relative;height:200px;background:#f5f5f5;overflow:hidden;display:flex;align-items:center;justify-content:center}.card-image img{max-height:100%;width:auto;display:block;object-fit:contain}.card-image .clickable-image{cursor:pointer;transition:opacity .3s ease,transform .3s ease}.card-image .clickable-image:hover{opacity:.8;transform:scale(1.02)}.bookmark-btn{position:absolute;top:10px;right:10px;padding:10px;background:#fff;border:none;border-radius:50%;cursor:pointer;font-size:1.2rem;color:#667eea;transition:all .3s;box-shadow:0 2px 5px #0000001a}.bookmark-btn:hover{transform:scale(1.1);box-shadow:0 4px 10px #0003}.card-content{padding:20px}.card-header{margin-bottom:15px}.card-header h3{color:#333;font-size:1.3rem;margin-bottom:5px}.card-header .model{color:#666;font-size:.95rem}.card-specs{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:15px}.results-grid.list .card-specs{grid-template-columns:repeat(4,1fr)}.spec{display:flex;flex-direction:column;gap:3px}.spec .label{color:#999;font-size:.85rem}.spec .value{color:#333;font-weight:600;font-size:.95rem}.card-rating{display:flex;align-items:center;gap:10px;margin-bottom:15px}.card-rating .stars{display:flex;align-items:center;gap:2px}.card-rating .stars svg{color:#ddd;font-size:.9rem}.card-rating .stars svg.filled{color:#ffc107}.card-rating .rating-value{color:#333;font-weight:600;margin-left:5px}.card-rating .reviews{color:#999;font-size:.9rem}.card-features{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.feature-tag{padding:4px 10px;background:#f0f0ff;color:#667eea;border-radius:15px;font-size:.85rem}.card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:15px;border-top:1px solid #f0f0f0}.price{display:flex;align-items:baseline;gap:2px}.price .currency{color:#999;font-size:1rem}.price .amount{color:#333;font-size:1.5rem;font-weight:700}.view-details-btn{padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:transform .3s}.view-details-btn:hover{transform:scale(1.05)}.no-results{background:#fff;border-radius:15px;padding:60px 20px;text-align:center}.no-results h3{color:#333;margin-bottom:10px}.no-results p{color:#666}.loading-container{background:#fff;border-radius:15px;padding:60px 20px;text-align:center;box-shadow:0 4px 6px #0000001a;min-height:400px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:20px}.loading-spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #0066cc;border-radius:50%;animation:spin 1s linear infinite}.loading-text{font-size:1.3rem;font-weight:600;color:#333;margin:0}.loading-subtext{font-size:1rem;color:#666;opacity:.8;margin:0}@media (max-width: 1024px){.search-content{flex-direction:column}.filters-sidebar{width:100%;position:static}}@media (max-width: 768px){.search-header h1{font-size:2rem}.results-grid.grid{grid-template-columns:1fr}.control-buttons{justify-content:space-between}.view-toggle{margin-left:0}}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:10px}.results-count{font-size:1.1rem;color:#333;font-weight:500}.page-info{color:#666;font-size:.9rem;margin-left:10px}.items-per-page{display:flex;align-items:center;gap:8px}.items-per-page label{font-size:.9rem;color:#666}.items-per-page select{padding:5px 10px;border:1px solid #ddd;border-radius:5px;background:#fff;font-size:.9rem}.pagination-controls{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:30px;padding:20px;background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a}.pagination-btn{display:flex;align-items:center;gap:5px;padding:8px 16px;background:#06c;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:.9rem;transition:all .3s ease}.pagination-btn:hover:not(.disabled){background:#0052a3;transform:translateY(-1px)}.pagination-btn.disabled{background:#ccc;cursor:not-allowed;opacity:.6}.pagination-numbers{display:flex;gap:5px}.pagination-number{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#fff;border:2px solid #ddd;border-radius:5px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .3s ease}.pagination-number:hover{border-color:#06c;background:#f0f8ff}.pagination-number.active{background:#06c;color:#fff;border-color:#06c}@media (max-width: 768px){.results-header{flex-direction:column;align-items:flex-start}.pagination-controls{flex-wrap:wrap;gap:5px}.pagination-btn{padding:6px 12px;font-size:.8rem}.pagination-number{width:35px;height:35px;font-size:.8rem}}.analyze-view{min-height:100vh;background:linear-gradient(135deg,#06c,#004080);padding:20px}.analyze-header{text-align:center;color:#fff;margin-bottom:30px}.analyze-header h1{font-size:2.5rem;margin-bottom:10px}.analyze-header .subtitle{font-size:1.1rem;opacity:.9}.analyze-content{max-width:1400px;margin:0 auto}.empty-state{background:#fff;border-radius:15px;padding:80px 40px;text-align:center}.empty-icon{font-size:4rem;color:#ddd;margin-bottom:20px}.empty-state h2{color:#333;margin-bottom:10px}.empty-state p{color:#666;margin-bottom:30px}.empty-actions{display:flex;gap:15px;justify-content:center}.primary-btn,.secondary-btn{padding:12px 30px;border-radius:8px;border:none;cursor:pointer;font-size:1rem;display:flex;align-items:center;gap:8px;transition:all .3s}.primary-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.primary-btn:hover:not(:disabled){transform:scale(1.05)}.secondary-btn{background:#fff;color:#667eea;border:2px solid #667eea}.secondary-btn:hover{background:#f0f0ff}.comparison-grid{background:#fff;border-radius:15px;overflow:hidden;margin-bottom:30px}.comparison-header{display:grid;grid-template-columns:200px repeat(auto-fit,minmax(250px,1fr));background:#f8f9fa;border-bottom:2px solid #e0e0e0}.header-cell{padding:20px;border-right:1px solid #e0e0e0;position:relative}.header-cell:last-child{border-right:none}.add-btn{width:100%;padding:12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .3s}.add-btn:hover:not(:disabled){transform:scale(1.05)}.add-btn:disabled{opacity:.5;cursor:not-allowed}.product-header{text-align:center}.remove-btn{position:absolute;top:10px;right:10px;padding:8px;background:#ff6b6b;color:#fff;border:none;border-radius:50%;cursor:pointer;transition:all .3s}.remove-btn:hover{background:#ff5252;transform:scale(1.1)}.product-header img{width:100%;max-width:150px;height:100px;object-fit:cover;border-radius:8px;margin-bottom:10px}.product-header h3{color:#333;font-size:1.1rem;margin-bottom:5px}.product-header p{color:#666;font-size:.9rem;margin-bottom:15px}.overall-score{display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff}.score-label{font-size:.85rem;opacity:.9}.score-value{font-size:1.5rem;font-weight:700}.comparison-body{padding:20px 0}.comparison-section{margin-bottom:30px}.comparison-section h4{padding:15px 20px;background:#f0f0ff;color:#667eea;font-size:1.1rem;margin:0}.comparison-row{display:grid;grid-template-columns:200px repeat(auto-fit,minmax(250px,1fr));border-bottom:1px solid #f0f0f0}.comparison-row:hover{background:#fafafa}.row-label{padding:15px 20px;background:#f8f9fa;color:#555;font-weight:500;border-right:1px solid #e0e0e0;display:flex;align-items:center;gap:8px}.info-icon{color:#999;font-size:.9rem;cursor:help}.row-cell{padding:15px 20px;text-align:center;border-right:1px solid #f0f0f0;color:#333}.row-cell:last-child{border-right:none}.comparison-value{position:relative;font-weight:600}.comparison-value.best{color:#51cf66}.best-badge{display:inline-block;margin-left:8px;padding:2px 8px;background:#51cf66;color:#fff;border-radius:12px;font-size:.75rem;font-weight:400}.energy-badge{display:inline-block;padding:4px 12px;background:#51cf66;color:#fff;border-radius:5px;font-weight:700;font-size:.9rem}.feature-yes{color:#51cf66;font-size:1.2rem}.feature-no{color:#ddd;font-size:1.2rem}.comparison-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:20px}.chart-card{background:#fff;border-radius:15px;padding:25px}.chart-card h3{color:#333;margin-bottom:25px}.bar-chart{display:flex;justify-content:space-around;align-items:flex-end;height:300px;padding:20px;background:#f8f9fa;border-radius:10px}.bar-group{display:flex;flex-direction:column;align-items:center;flex:1}.bar-label{color:#666;font-size:.9rem;margin-bottom:10px}.bars{display:flex;gap:15px;align-items:flex-end;height:250px}.bar-item{display:flex;flex-direction:column;align-items:center}.bar{width:40px;background:linear-gradient(to top,#667eea,#764ba2);border-radius:5px 5px 0 0;position:relative;display:flex;align-items:flex-start;justify-content:center;padding-top:5px;transition:all .3s}.bar.scop{background:linear-gradient(to top,#667eea,#764ba2)}.bar.cop{background:linear-gradient(to top,#51cf66,#3fb950)}.bar.eer{background:linear-gradient(to top,#ffc107,#ff9800)}.bar:hover{transform:scaleY(1.05)}.bar-value{color:#fff;font-size:.9rem;font-weight:700}.bar-name{color:#999;font-size:.8rem;margin-top:5px}.scatter-chart{position:relative;width:100%;height:300px;background:#f8f9fa;border-radius:10px;border-left:2px solid #ddd;border-bottom:2px solid #ddd}.x-axis{position:absolute;bottom:0;left:0;width:100%;height:20px;display:flex;justify-content:space-between;align-items:center;padding:0 10px}.x-axis .axis-tick{position:relative;color:#666;font-size:.8rem}.x-axis .axis-tick:before{content:"";position:absolute;top:-5px;left:50%;width:1px;height:5px;background:#ddd}.y-axis{position:absolute;top:0;left:0;height:100%;width:20px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;padding:10px 0}.y-axis .axis-tick{position:relative;color:#666;font-size:.8rem}.y-axis .axis-tick:before{content:"";position:absolute;right:-5px;top:50%;width:5px;height:1px;background:#ddd}.scatter-point{position:absolute;width:12px;height:12px;background:#667eea;border-radius:50%;transform:translate(-50%,50%);cursor:pointer;transition:all .3s}.scatter-point:hover{transform:translate(-50%,50%) scale(1.5);z-index:10}.point-label{position:absolute;top:-20px;left:50%;transform:translate(-50%);white-space:nowrap;font-size:.8rem;color:#666;background:#fff;padding:2px 6px;border-radius:4px;opacity:0;transition:opacity .3s}.scatter-point:hover .point-label{opacity:1}.chart-axis-x{position:absolute;bottom:-25px;right:10px;color:#999;font-size:.9rem}.chart-axis-y{position:absolute;left:-35px;top:10px;color:#999;font-size:.9rem;transform:rotate(-90deg);transform-origin:left center}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:15px;padding:30px;max-width:600px;width:90%;max-height:70vh;overflow-y:auto}.modal-content h2{color:#333;margin-bottom:20px}.modal-list{display:flex;flex-direction:column;gap:15px;margin-bottom:20px}.modal-empty{text-align:center;padding:40px;color:#666}.modal-empty button{margin-top:20px;padding:10px 20px;background:#667eea;color:#fff;border:none;border-radius:8px;cursor:pointer}.modal-item{display:flex;align-items:center;gap:15px;padding:15px;background:#f8f9fa;border-radius:10px;cursor:pointer;transition:all .3s;position:relative}.modal-item:hover:not(.disabled){background:#f0f0ff;transform:translate(5px)}.modal-item.disabled{opacity:.5;cursor:not-allowed}.modal-item img{width:80px;height:60px;object-fit:cover;border-radius:5px}.modal-item h4{color:#333;margin-bottom:5px}.modal-item p{color:#666;font-size:.9rem}.already-added{position:absolute;right:15px;padding:5px 10px;background:#ff6b6b;color:#fff;border-radius:5px;font-size:.85rem}.modal-close{width:100%;padding:12px;background:#667eea;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;transition:all .3s}.modal-close:hover{background:#5a6fd4}@media (max-width: 1200px){.comparison-header,.comparison-row{grid-template-columns:150px repeat(auto-fit,minmax(200px,1fr))}.comparison-charts{grid-template-columns:1fr}}@media (max-width: 768px){.comparison-header,.comparison-row{grid-template-columns:1fr}.row-label{background:#667eea;color:#fff;text-align:center}.header-cell{border-right:none;border-bottom:1px solid #e0e0e0}.row-cell{border-right:none}}.export-view{min-height:100vh;background:linear-gradient(135deg,#06c,#004080);padding:20px}.export-header{text-align:center;color:#fff;margin-bottom:30px}.export-header h1{font-size:2.5rem;margin-bottom:10px}.export-header .subtitle{font-size:1.1rem;opacity:.9}.export-content{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1fr 400px;gap:20px}.export-main{background:#fff;border-radius:15px;overflow:hidden}.selection-panel{padding:25px}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.panel-header h3{color:#333;font-size:1.3rem}.selection-controls{display:flex;align-items:center;gap:20px}.select-all-btn{padding:8px 16px;background:#667eea;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .3s}.select-all-btn:hover{background:#5a6fd4}.selection-count{color:#666;font-size:.95rem}.items-list{display:grid;gap:15px;max-height:600px;overflow-y:auto;padding-right:10px}.items-list::-webkit-scrollbar{width:8px}.items-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.items-list::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.items-list::-webkit-scrollbar-thumb:hover{background:#555}.empty-bookmarks{text-align:center;padding:60px 20px;color:#999}.empty-icon{font-size:3rem;margin-bottom:15px;color:#ddd}.empty-bookmarks p{margin-bottom:20px}.empty-bookmarks a{display:inline-block;padding:10px 20px;background:#667eea;color:#fff;text-decoration:none;border-radius:6px;transition:all .3s}.empty-bookmarks a:hover{background:#5a6fd4}.export-item{display:flex;align-items:center;gap:15px;padding:15px;background:#f8f9fa;border-radius:10px;cursor:pointer;transition:all .3s;position:relative;border:2px solid transparent}.export-item:hover{background:#f0f0ff}.export-item.selected{background:#f0f0ff;border-color:#667eea}.item-checkbox{width:24px;height:24px;border:2px solid #ddd;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .3s}.export-item.selected .item-checkbox{background:#667eea;border-color:#667eea}.item-checkbox svg{color:#fff;font-size:1rem}.export-item img{width:80px;height:60px;object-fit:cover;border-radius:5px}.item-info{flex:1}.item-info h4{color:#333;margin-bottom:5px}.item-info p{color:#666;font-size:.9rem;margin-bottom:3px}.item-price{color:#667eea;font-weight:700}.export-item .remove-btn{padding:8px;background:#ff6b6b;color:#fff;border:none;border-radius:50%;cursor:pointer;opacity:0;transition:all .3s}.export-item:hover .remove-btn{opacity:1}.export-item .remove-btn:hover{background:#ff5252;transform:scale(1.1)}.clear-all-btn{width:100%;margin-top:20px;padding:12px;background:#ff6b6b;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .3s}.clear-all-btn:hover{background:#ff5252}.export-sidebar{display:flex;flex-direction:column;gap:20px}.format-selection,.include-options,.export-summary{background:#fff;border-radius:15px;padding:25px}.format-selection h3,.include-options h3,.export-summary h3{color:#333;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.format-options{display:flex;flex-direction:column;gap:10px}.format-options label{display:flex;align-items:center;gap:12px;padding:12px;background:#f8f9fa;border-radius:8px;cursor:pointer;transition:all .3s;border:2px solid transparent}.format-options label:hover{background:#f0f0ff}.format-options label.active{background:#f0f0ff;border-color:#667eea}.format-options input[type=radio]{display:none}.format-options svg{font-size:1.3rem;color:#667eea}.format-options span{color:#333;font-weight:500}.options-list{display:flex;flex-direction:column;gap:12px}.options-list label{display:flex;align-items:center;gap:10px;cursor:pointer;color:#555;transition:color .3s}.options-list label:hover{color:#667eea}.options-list input[type=checkbox]{width:18px;height:18px;cursor:pointer}.summary-content{display:flex;flex-direction:column;gap:12px}.summary-item{display:flex;justify-content:space-between;padding:10px;background:#f8f9fa;border-radius:6px}.summary-item span{color:#666}.summary-item strong{color:#333;font-size:1.1rem}.export-btn{width:100%;padding:15px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:all .3s}.export-btn:hover:not(:disabled){transform:scale(1.02);box-shadow:0 5px 15px #667eea66}.export-btn:disabled{opacity:.5;cursor:not-allowed}.export-btn svg{font-size:1.3rem}@media (max-width: 1200px){.export-content{grid-template-columns:1fr}.export-sidebar{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.export-btn{grid-column:1 / -1}}@media (max-width: 768px){.export-header h1{font-size:2rem}.panel-header{flex-direction:column;gap:15px;align-items:flex-start}.selection-controls{width:100%;justify-content:space-between}.export-sidebar{grid-template-columns:1fr}}.detail-view{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.detail-header{margin-bottom:20px}.back-btn{padding:10px 20px;background:#fff;color:#667eea;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:1rem;transition:all .3s}.back-btn:hover{transform:translate(-5px);box-shadow:0 4px 10px #0000001a}.detail-content{display:flex;gap:20px}.detail-main{flex:1}.product-showcase{background:#fff;border-radius:15px;padding:30px;margin-bottom:20px;display:grid;grid-template-columns:400px 1fr;gap:40px}.product-image{position:relative;background:#f5f5f5;border-radius:10px;overflow:hidden;height:300px}.product-image img{width:100%;height:100%;object-fit:cover}.product-image .bookmark-btn{position:absolute;top:15px;right:15px;padding:12px;background:#fff;border:none;border-radius:50%;cursor:pointer;font-size:1.3rem;color:#667eea;box-shadow:0 4px 10px #0000001a;transition:all .3s}.product-image .bookmark-btn:hover{transform:scale(1.1)}.product-image .upload-image-btn{position:absolute;bottom:15px;right:15px;padding:12px;background:#667eea;border:none;border-radius:50%;cursor:pointer;font-size:1.3rem;color:#fff;box-shadow:0 4px 10px #667eea4d;transition:all .3s}.product-image .upload-image-btn:hover:not(:disabled){transform:scale(1.1);background:#764ba2}.product-image .upload-image-btn:disabled{opacity:.6;cursor:not-allowed}.product-image .upload-image-btn .uploading{animation:spin 1s linear infinite}.product-info{display:flex;flex-direction:column;gap:20px}.product-title h1{color:#333;font-size:2rem;margin-bottom:5px}.product-title h2{color:#555;font-size:1.3rem;font-weight:400;margin-bottom:10px}.product-type{display:inline-block;padding:6px 15px;background:#f0f0ff;color:#667eea;border-radius:20px;font-size:.9rem}.product-rating{display:flex;align-items:center;gap:15px}.product-rating .stars{display:flex;align-items:center;gap:3px}.product-rating .stars svg{color:#ddd;font-size:1.1rem}.product-rating .stars svg.filled{color:#ffc107}.product-rating .rating-value{color:#333;font-weight:700;margin-left:8px}.product-rating .reviews{color:#666;font-size:.95rem}.product-highlights{display:flex;gap:30px;padding:20px;background:#f8f9fa;border-radius:10px}.highlight{display:flex;align-items:center;gap:12px}.highlight svg{font-size:1.5rem;color:#667eea}.highlight div{display:flex;flex-direction:column}.highlight .label{color:#999;font-size:.85rem}.highlight .value{color:#333;font-size:1.1rem;font-weight:700}.product-features h3{color:#333;margin-bottom:15px}.features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.feature-item{display:flex;align-items:center;gap:10px;color:#555}.feature-item svg{color:#51cf66;font-size:1rem}.product-price{display:flex;align-items:center;justify-content:space-between;padding-top:20px;border-top:2px solid #f0f0f0}.price-tag{display:flex;align-items:baseline;gap:5px}.price-tag .currency{color:#999;font-size:1.3rem}.price-tag .amount{color:#333;font-size:2rem;font-weight:700}.cta-button{padding:15px 40px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;font-size:1.1rem;cursor:pointer;transition:transform .3s}.cta-button:hover{transform:scale(1.05)}.detail-tabs{background:#fff;border-radius:15px;overflow:hidden}.tabs-header{display:flex;background:#f8f9fa;border-bottom:2px solid #e0e0e0}.tabs-header button{flex:1;padding:20px;background:transparent;border:none;color:#666;font-size:1rem;cursor:pointer;transition:all .3s;position:relative}.tabs-header button:hover{background:#f0f0f0}.tabs-header button.active{color:#667eea;background:#fff}.tabs-header button.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:3px;background:#667eea}.tabs-content{padding:30px}.tab-panel h3{color:#333;margin-bottom:25px;font-size:1.4rem}.specs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px}.spec-group{background:#f8f9fa;padding:20px;border-radius:10px}.spec-group h4{color:#555;margin-bottom:15px;padding-bottom:10px;border-bottom:2px solid #e0e0e0}.spec-item{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #e8e8e8}.spec-item:last-child{border-bottom:none}.spec-label{color:#666;font-size:.95rem}.spec-value{color:#333;font-weight:600}.energy-class{padding:3px 10px;background:#51cf66;color:#fff;border-radius:5px;font-size:.9rem}.performance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:25px}.performance-card{background:#f8f9fa;padding:25px;border-radius:10px}.performance-card .icon{font-size:2rem;color:#667eea;margin-bottom:15px}.performance-card h4{color:#333;margin-bottom:20px}.temp-range{display:flex;justify-content:space-around}.temp-item{text-align:center}.temp-item .label{display:block;color:#999;font-size:.9rem;margin-bottom:8px}.temp-item .value{display:block;color:#333;font-size:1.3rem;font-weight:700}.temp-item .value.highlight{color:#667eea;font-size:1.5rem}.consumption-data{display:flex;flex-direction:column;gap:15px}.data-item{display:flex;justify-content:space-between;padding:12px;background:#fff;border-radius:8px}.data-item .label{color:#666}.data-item .value{font-weight:700;color:#333}.data-item .value.green{color:#51cf66}.installation-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:25px}.install-card{background:#f8f9fa;padding:25px;border-radius:10px}.install-card .icon{font-size:2rem;color:#667eea;margin-bottom:15px}.install-card h4{color:#333;margin-bottom:20px}.install-item{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #e0e0e0}.install-item:last-child{border-bottom:none}.requirements-list{list-style:none;padding:0}.requirements-list li{display:flex;align-items:center;gap:12px;padding:10px 0;color:#555}.requirements-list li svg{color:#51cf66;font-size:1rem}.efficiency-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-bottom:30px}.efficiency-card{background:#f8f9fa;padding:25px;border-radius:10px;text-align:center}.efficiency-card h4{color:#555;margin-bottom:15px}.efficiency-value{font-size:2.5rem;font-weight:700;color:#667eea;margin-bottom:15px}.efficiency-bar{height:10px;background:#e0e0e0;border-radius:5px;overflow:hidden;margin-bottom:10px}.efficiency-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .5s ease}.efficiency-desc{color:#999;font-size:.85rem}.energy-label{background:#f8f9fa;padding:25px;border-radius:10px}.energy-label h4{color:#333;margin-bottom:20px}.energy-scale{display:flex;gap:5px}.energy-grade{flex:1;padding:15px 10px;text-align:center;background:#e0e0e0;color:#999;font-weight:700;font-size:.9rem;transition:all .3s}.energy-grade:first-child{border-radius:8px 0 0 8px;background:#00a651;color:#fff}.energy-grade:nth-child(2){background:#51b748;color:#fff}.energy-grade:nth-child(3){background:#8bc53f;color:#fff}.energy-grade:nth-child(4){background:#fbb040}.energy-grade:nth-child(5){background:#f58220}.energy-grade:nth-child(6){background:#ed1c24;color:#fff}.energy-grade:last-child{border-radius:0 8px 8px 0;background:#b71c1c;color:#fff}.energy-grade.active{transform:scale(1.2);box-shadow:0 4px 15px #0003;z-index:1;position:relative}.detail-sidebar{width:350px}.sidebar-card{background:#fff;border-radius:15px;padding:25px;margin-bottom:20px}.sidebar-card h3{color:#333;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.action-btn{width:100%;padding:12px;margin-bottom:10px;background:#fff;color:#667eea;border:2px solid #667eea;border-radius:8px;font-size:1rem;cursor:pointer;transition:all .3s}.action-btn:hover{background:#f0f0ff}.action-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none}.action-btn.primary:hover{transform:scale(1.02)}.similar-items{display:flex;flex-direction:column;gap:15px}.similar-item{display:flex;gap:15px;padding:15px;background:#f8f9fa;border-radius:10px;cursor:pointer;transition:all .3s}.similar-item:hover{background:#f0f0ff;transform:translate(5px)}.similar-item img{width:80px;height:60px;object-fit:cover;border-radius:5px}.similar-item h4{color:#333;font-size:.95rem;margin-bottom:5px}.similar-item p{color:#666;font-size:.85rem;margin-bottom:3px}.similar-item .price{color:#667eea;font-weight:700}@media (max-width: 1400px){.detail-content{flex-direction:column}.detail-sidebar{width:100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:20px}}@media (max-width: 1024px){.product-showcase,.efficiency-grid{grid-template-columns:1fr}}@media (max-width: 768px){.product-highlights{flex-direction:column;gap:15px}.features-grid,.specs-grid{grid-template-columns:1fr}.tabs-header{flex-direction:column}.tabs-header button{border-bottom:1px solid #e0e0e0}}.detail-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;padding:40px 20px;background:linear-gradient(135deg,#667eea,#764ba2);position:relative;overflow:hidden}.detail-loading:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{left:-100%}to{left:100%}}.loading-content{display:flex;flex-direction:column;align-items:center;gap:30px;text-align:center;z-index:1}.loading-skeleton{display:flex;flex-direction:column;gap:20px;width:100%;max-width:1200px}.skeleton-header{display:flex;align-items:center;gap:20px;margin-bottom:20px}.skeleton-back-btn{width:120px;height:40px;background:#fff3;border-radius:8px;animation:pulse 1.5s ease-in-out infinite}.skeleton-main{display:grid;grid-template-columns:400px 1fr;gap:40px;background:#fff;border-radius:15px;padding:30px;box-shadow:0 10px 30px #0000001a}.skeleton-image{width:400px;height:300px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);border-radius:10px;animation:pulse 1.5s ease-in-out infinite;position:relative;overflow:hidden}.skeleton-image:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:shimmer 2s infinite}.skeleton-info{display:flex;flex-direction:column;gap:20px}.skeleton-title{height:40px;width:70%;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);border-radius:8px;animation:pulse 1.5s ease-in-out infinite}.skeleton-subtitle{height:30px;width:50%;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);border-radius:6px;animation:pulse 1.5s ease-in-out infinite}.skeleton-highlights{display:flex;gap:30px;padding:20px;background:#f8f9fa;border-radius:10px}.skeleton-highlight{display:flex;flex-direction:column;gap:8px}.skeleton-highlight-icon{width:24px;height:24px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);border-radius:50%;animation:pulse 1.5s ease-in-out infinite}.skeleton-highlight-label{height:16px;width:60px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);border-radius:4px;animation:pulse 1.5s ease-in-out infinite}.skeleton-highlight-value{height:20px;width:80px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);border-radius:4px;animation:pulse 1.5s ease-in-out infinite}.skeleton-features{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.skeleton-feature{height:20px;width:90%;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);border-radius:4px;animation:pulse 1.5s ease-in-out infinite}.skeleton-price{display:flex;justify-content:space-between;align-items:center;padding-top:20px;border-top:2px solid #f0f0f0}.skeleton-price-tag{display:flex;align-items:baseline;gap:5px}.skeleton-currency{height:24px;width:20px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);border-radius:4px;animation:pulse 1.5s ease-in-out infinite}.skeleton-amount{height:32px;width:120px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);border-radius:4px;animation:pulse 1.5s ease-in-out infinite}.skeleton-cta{height:48px;width:150px;background:linear-gradient(90deg,#667eea 25%,#764ba2,#667eea 75%);border-radius:10px;animation:pulse 1.5s ease-in-out infinite}.skeleton-tabs{background:#fff;border-radius:15px;overflow:hidden;margin-top:20px}.skeleton-tabs-header{display:flex;background:#f8f9fa;border-bottom:2px solid #e0e0e0}.skeleton-tab{flex:1;height:60px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);animation:pulse 1.5s ease-in-out infinite}.skeleton-tab-content{padding:30px}.skeleton-spec-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px}.skeleton-spec-group{background:#f8f9fa;padding:20px;border-radius:10px}.skeleton-spec-group-title{height:24px;width:60%;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);border-radius:4px;animation:pulse 1.5s ease-in-out infinite;margin-bottom:15px}.skeleton-spec-item{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #e8e8e8}.skeleton-spec-item:last-child{border-bottom:none}.skeleton-spec-label{height:16px;width:80px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);border-radius:4px;animation:pulse 1.5s ease-in-out infinite}.skeleton-spec-value{height:16px;width:60px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);border-radius:4px;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.loading-spinner{width:60px;height:60px;border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;animation:spin 1s linear infinite}.loading-text{color:#fff;font-size:1.2rem;font-weight:500;margin-bottom:10px}.loading-subtext{color:#fffc;font-size:1rem;max-width:400px;text-align:center;line-height:1.5}@media (max-width: 1024px){.skeleton-main{grid-template-columns:1fr}.skeleton-image{width:100%;max-width:400px;height:250px;margin:0 auto}}@media (max-width: 768px){.skeleton-highlights{flex-direction:column;gap:15px}.skeleton-features{grid-template-columns:1fr}.skeleton-price{flex-direction:column;gap:15px;align-items:flex-start}.skeleton-tabs-header{flex-direction:column}.skeleton-spec-grid{grid-template-columns:1fr}}.legal-notice-container{max-width:1200px;margin:0 auto;padding:2rem;min-height:calc(100vh - 100px)}.legal-notice-content{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 10px #0000001a}.legal-notice-content h1{color:#2c3e50;margin-bottom:2rem;text-align:center;font-size:2.5rem;border-bottom:2px solid #3498db;padding-bottom:1rem}.legal-section{margin-bottom:2rem;padding:1.5rem;background:#f8f9fa;border-radius:8px;border-left:4px solid #3498db}.legal-section h2{color:#2c3e50;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem;font-size:1.5rem}.legal-section h2 svg{color:#3498db}.legal-info{color:#34495e;line-height:1.6}.legal-info p{margin-bottom:.5rem}.legal-info strong{color:#2c3e50}.legal-info a{color:#3498db;text-decoration:none}.legal-info a:hover{text-decoration:underline}@media (max-width: 768px){.legal-notice-container,.legal-notice-content{padding:1rem}.legal-notice-content h1{font-size:2rem}.legal-section{padding:1rem}.legal-section h2{font-size:1.3rem}}.App{min-height:100vh;background:linear-gradient(135deg,#06c,#004080)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;color:#fff}.spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-container p{font-size:18px;font-weight:500}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;color:#fff;text-align:center;padding:20px}.error-container h2{font-size:28px;margin-bottom:15px;color:#ff6b6b}.error-container p{font-size:16px;margin-bottom:25px;color:#ffffffe6}.error-container button{background:#fff;color:#06c;border:none;padding:12px 30px;font-size:16px;font-weight:600;border-radius:25px;cursor:pointer;transition:all .3s ease}.error-container button:hover{transform:translateY(-2px);box-shadow:0 5px 15px #0003}.feature-page{min-height:calc(100vh - 60px);background:#fff;padding:60px 20px;text-align:center}.feature-page h1{font-size:36px;color:#1f2937;margin-bottom:20px}.feature-page p{font-size:18px;color:#6b7280}.app-navigation .user-info{background:#ffffff4d;color:#fff;cursor:default;font-weight:400;font-style:italic}.app-navigation .user-info:hover{transform:none;background:#ffffff4d}.feature-login-btn{background:linear-gradient(135deg,#06c,#004080);color:#fff;border:none;padding:14px 30px;font-size:16px;font-weight:600;border-radius:25px;cursor:pointer;transition:all .3s ease;margin-top:30px;display:inline-flex;align-items:center;gap:8px}.feature-login-btn:hover{transform:translateY(-2px);box-shadow:0 5px 20px #06c6}.app-footer{background:#1f2937;color:#fff;padding:1rem 0;margin-top:auto}.footer-content{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.footer-content p{margin:0;font-size:.9rem;color:#d1d5db}.footer-link{background:none;border:none;color:#3498db;cursor:pointer;font-size:.9rem;text-decoration:none;padding:0;transition:color .3s ease}.footer-link:hover{color:#2980b9;text-decoration:underline}@media (max-width: 768px){.footer-content{flex-direction:column;text-align:center;gap:.5rem}}.contact-form-container{max-width:600px;margin:40px auto;padding:30px;background:#fff;border-radius:15px;box-shadow:0 8px 32px #0000001a}.contact-form-header{text-align:center;margin-bottom:30px}.contact-icon{font-size:48px;color:#06c;margin-bottom:15px}.contact-form-header h2{color:#333;margin-bottom:10px;font-size:28px}.contact-form-header p{color:#666;font-size:16px}.contact-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:#333;display:flex;align-items:center;gap:8px}.input-icon{color:#06c}.form-control{padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:16px;transition:all .3s ease}.form-control:focus{outline:none;border-color:#06c;box-shadow:0 0 0 3px #0066cc1a}textarea.form-control{resize:vertical;min-height:120px}.btn{padding:12px 24px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-primary{background:#06c;color:#fff}.btn-primary:hover{background:#0052a3;transform:translateY(-2px)}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#5a6268}.btn-block{width:100%}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.success-message{text-align:center;padding:40px}.success-icon{font-size:64px;color:#28a745;margin-bottom:20px}.success-message h2{color:#333;margin-bottom:15px}.success-message p{color:#666;margin-bottom:25px}.alert{padding:12px 16px;border-radius:8px;margin-bottom:20px;display:flex;align-items:center;gap:10px}.alert-danger{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.alert-icon{color:#721c24}.captcha-container{margin:20px 0;padding:20px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.captcha-loading{display:flex;align-items:center;justify-content:center;color:#666;font-size:14px}.captcha-question label{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.captcha-refresh-btn{background:none;border:none;color:#06c;cursor:pointer;padding:5px;border-radius:4px;transition:all .3s ease}.captcha-refresh-btn:hover{background:#0066cc1a;color:#0052a3}.captcha-error{color:#721c24;text-align:center}.text-muted{color:#6c757d;font-size:14px;margin-top:5px}.mr-2{margin-right:8px}@media (max-width: 768px){.contact-form-container{margin:20px;padding:20px}.contact-form-header h2{font-size:24px}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#06c,#004080);min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{min-height:100vh}
