@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap";:root{--bg-primary:#f8fafc;--bg-surface:#fff;--bg-surface-glass:#ffffffbf;--border-color:#e2e8f0;--border-glow:#0f172a14;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--accent-color:#f97316;--accent-rgb:249, 115, 22;--accent-light:#ffedd5;--success:#10b981;--success-light:#d1fae5;--danger:#ef4444;--danger-light:#fee2e2;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #00000014, 0 2px 4px -2px #00000014;--shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -4px #00000014;--shadow-glow:0 0 20px #f9731614;--font-heading:"Outfit", sans-serif;--font-body:"Inter", sans-serif;--border-radius-sm:8px;--border-radius-md:16px;--border-radius-lg:24px;--transition-speed:.3s}:root:has(#theme-toggle:checked){--bg-primary:#060913;--bg-surface:#0e1322;--bg-surface-glass:#0e1322bf;--border-color:#1e293b;--border-glow:#f59e0b26;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#64748b;--accent-color:#f97316;--accent-rgb:249, 115, 22;--accent-light:#f973161f;--success-light:#10b9811f;--danger-light:#ef44441f;--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 10px 15px -3px #0000004d, 0 4px 6px -4px #0000004d;--shadow-lg:0 20px 25px -5px #0006, 0 10px 10px -5px #0006;--shadow-glow:0 0 25px #f9731626}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-body);min-height:100vh;transition:background-color var(--transition-speed), color var(--transition-speed);accent-color:var(--accent-color);-webkit-font-smoothing:antialiased;flex-direction:column;line-height:1.6;display:flex}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em;font-weight:700}a{color:inherit;transition:color var(--transition-speed);text-decoration:none}.visually-hidden{clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.header-bar{z-index:50;background:radial-gradient(circle at bottom right, var(--accent-light), transparent 60%), var(--bg-surface-glass);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);width:calc(100% - 2rem);max-width:1200px;box-shadow:var(--shadow-sm);transition:background-color var(--transition-speed), border-color var(--transition-speed);border-radius:16px;margin:1rem auto;position:sticky;top:1rem}.header-container{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:1rem 1.5rem;display:flex}.brand{align-items:center;gap:0;display:flex}.brand-logo-svg,.brand-logo-img{object-fit:contain;width:48px;height:48px;transition:transform var(--transition-speed);border-radius:8px;margin:-8px 4px -8px -8px}.brand:hover .brand-logo-svg,.brand:hover .brand-logo-img{transform:rotate(-10deg)scale(1.05)}.brand-text{background:linear-gradient(135deg, var(--text-primary) 30%, var(--accent-color) 100%);-webkit-text-fill-color:transparent;font-size:1.5rem;font-weight:800;font-family:var(--font-heading);-webkit-background-clip:text}.nav-links{align-items:center;gap:1.5rem;list-style:none;display:flex}.nav-item button{color:var(--text-secondary);font-family:var(--font-body);cursor:pointer;border-radius:var(--border-radius-sm);transition:color var(--transition-speed), background-color var(--transition-speed);background:0 0;border:none;padding:.5rem .75rem;font-size:.95rem;font-weight:500}.nav-item button:hover,.nav-item button.active{color:var(--text-primary);background-color:var(--accent-light)}.controls{align-items:center;gap:1rem;display:flex}.btn-toggle{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-secondary);font-family:var(--font-body);cursor:pointer;transition:all var(--transition-speed);border-radius:20px;align-items:center;gap:.4rem;padding:.4rem .8rem;font-size:.85rem;font-weight:600;display:flex}.btn-toggle:hover{background-color:var(--border-color);color:var(--text-primary)}.theme-switch-label{border:1px solid var(--border-color);background:var(--bg-primary);cursor:pointer;width:38px;height:38px;transition:all var(--transition-speed);color:var(--text-secondary);border-radius:50%;justify-content:center;align-items:center;display:flex}.theme-switch-label:hover{color:var(--text-primary);background:var(--border-color);transform:scale(1.05)}.theme-switch-label svg{stroke:currentColor;stroke-width:2px;fill:none;width:18px;height:18px}:root:not(:has(#theme-toggle:checked)) .sun-icon{display:none}:root:has(#theme-toggle:checked) .moon-icon{display:none}.main-wrapper{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:2rem 1.5rem}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade{animation:.4s ease-out forwards fadeIn}.animate-slide{animation:.5s cubic-bezier(.16,1,.3,1) forwards slideUp}.glass-card{background:var(--bg-surface-glass);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);box-shadow:var(--shadow-md);border-radius:var(--border-radius-md);transition:transform var(--transition-speed) cubic-bezier(.16, 1, .3, 1), box-shadow var(--transition-speed), border-color var(--transition-speed);padding:1.75rem}.glass-card:hover{border-color:var(--border-glow);box-shadow:var(--shadow-lg), var(--shadow-glow)}.app-section{display:none}.app-section.active{display:block}.hero-block{text-align:center;border-radius:var(--border-radius-lg);background:radial-gradient(circle at top left, var(--accent-light), transparent 60%);margin-bottom:2rem;padding:3rem 1rem 4rem}.hero-title{margin-bottom:1.25rem;font-size:2.75rem;line-height:1.15}.hero-subtitle{color:var(--text-secondary);max-width:650px;margin:0 auto 2rem;font-size:1.15rem}.hero-buttons{justify-content:center;gap:1rem;display:flex}.btn-primary{background:var(--accent-color);color:#fff;border-radius:var(--border-radius-sm);cursor:pointer;box-shadow:0 4px 10px rgba(var(--accent-rgb), .3);transition:all var(--transition-speed);border:none;align-items:center;gap:.5rem;padding:.8rem 1.5rem;font-weight:600;display:inline-flex}.btn-primary:hover{background:var(--text-primary);box-shadow:0 6px 15px rgba(var(--accent-rgb), .4);transform:translateY(-2px)}.btn-secondary{background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-primary);border-radius:var(--border-radius-sm);cursor:pointer;transition:all var(--transition-speed);align-items:center;gap:.5rem;padding:.8rem 1.5rem;font-weight:600;display:inline-flex}.btn-secondary:hover{border-color:var(--text-primary);background:var(--bg-primary);transform:translateY(-2px)}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-bottom:3.5rem;display:grid}.kpi-card{border-radius:var(--border-radius-md);border:1px solid var(--border-color);background:var(--bg-surface);box-shadow:var(--shadow-sm);flex-direction:column;gap:.5rem;padding:1.5rem;display:flex}.kpi-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:600}.kpi-value{color:var(--text-primary);font-size:2.25rem;font-weight:800;font-family:var(--font-heading);align-items:baseline;gap:.25rem;display:flex}.kpi-subtext{color:var(--text-muted);font-size:.8rem}.kpi-icon{color:var(--accent-color);opacity:.8;align-self:flex-end}.charts-block-title{text-align:center;margin-bottom:1.5rem;font-size:1.75rem}.charts-grid{grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:2rem;margin-bottom:2rem;display:grid}.chart-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-md);padding:1.5rem}.chart-title{color:var(--text-primary);margin-bottom:1rem;font-size:1.1rem;font-weight:600}.svg-chart-container{width:100%;height:240px}.svg-chart-container svg{width:100%;height:100%;overflow:visible}.search-controls{flex-direction:column;gap:1.5rem;margin-bottom:2rem;display:flex}.search-main-row{gap:1rem;display:flex}.search-input-wrapper{flex:1;position:relative}.search-input-wrapper svg{color:var(--text-muted);pointer-events:none;width:20px;height:20px;position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.search-input-field{border:1px solid var(--border-color);background:var(--bg-surface);width:100%;color:var(--text-primary);border-radius:var(--border-radius-sm);font-family:var(--font-body);box-shadow:var(--shadow-sm);transition:all var(--transition-speed);outline:none;padding:.85rem 1rem .85rem 2.75rem;font-size:1rem}.search-input-field:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-light)}.filters-row{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.filter-group{align-items:center;gap:.5rem;display:flex}.filter-label{color:var(--text-secondary);font-size:.85rem;font-weight:600}.select-dropdown{background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);font-family:var(--font-body);cursor:pointer;transition:all var(--transition-speed);outline:none;padding:.5rem 1.5rem .5rem .75rem;font-size:.9rem}.select-dropdown:focus{border-color:var(--accent-color)}.sort-chips{align-items:center;gap:.5rem;margin-left:auto;display:flex}.chip-btn{background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-speed);border-radius:20px;padding:.4rem .8rem;font-size:.8rem;font-weight:500}.chip-btn.active,.chip-btn:hover{background:var(--accent-color);border-color:var(--accent-color);color:#fff}.company-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem;display:grid}.company-card{flex-direction:column;justify-content:space-between;height:100%;display:flex}.company-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.company-card-title{align-items:center;gap:.75rem;display:flex}.company-logo{background:var(--bg-primary);border-radius:var(--border-radius-sm);border:1px solid var(--border-color);justify-content:center;align-items:center;width:48px;height:48px;font-size:1.75rem;display:flex}.company-name{font-size:1.25rem;font-weight:700}.badge-verified{background-color:var(--success-light);color:var(--success);text-transform:uppercase;letter-spacing:.05em;border-radius:4px;align-items:center;gap:.25rem;padding:.2rem .5rem;font-size:.7rem;font-weight:700;display:inline-flex}.badge-unverified{background-color:var(--border-color);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-radius:4px;padding:.2rem .5rem;font-size:.7rem;font-weight:700;display:inline-flex}.rating-badge{background:var(--accent-light);color:var(--accent-color);border-radius:var(--border-radius-sm);align-items:center;gap:.25rem;padding:.3rem .6rem;font-size:1.1rem;font-weight:700;display:flex}.company-desc{color:var(--text-secondary);line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:1.25rem;font-size:.88rem;display:-webkit-box;overflow:hidden}.company-metadata{color:var(--text-muted);border-top:1px solid var(--border-color);grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.25rem;padding-top:.75rem;font-size:.8rem;display:grid}.company-meta-item{align-items:center;gap:.35rem;display:flex}.company-card-footer{justify-content:space-between;align-items:center;display:flex}.reviews-stat{color:var(--text-secondary);font-size:.85rem;font-weight:500}.detail-header-row{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.btn-back{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;gap:.35rem;font-size:.95rem;font-weight:600;display:flex}.btn-back:hover{color:var(--text-primary)}.company-detail-headline{align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.company-detail-logo{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius-md);width:72px;height:72px;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;font-size:2.5rem;display:flex}.company-detail-meta{flex:1}.company-detail-meta h1{align-items:center;gap:.75rem;font-size:2rem;line-height:1.1;display:flex}.company-website-link{color:var(--accent-color);align-items:center;gap:.25rem;margin-top:.25rem;font-size:.9rem;font-weight:500;display:inline-flex}.company-website-link:hover{text-decoration:underline}.detail-grid{grid-template-columns:2fr 1fr;gap:2rem;margin-bottom:3rem;display:grid}.ratings-breakdown-card{grid-template-columns:1fr 1fr;gap:2rem;display:grid}.rating-category-block h3{border-bottom:2px solid var(--border-color);color:var(--text-primary);align-items:center;gap:.4rem;margin-bottom:1rem;padding-bottom:.5rem;font-size:1rem;display:flex}.rating-metric-row{margin-bottom:1rem}.rating-metric-label{color:var(--text-secondary);justify-content:space-between;margin-bottom:.25rem;font-size:.85rem;font-weight:500;display:flex}.metric-value-text{color:var(--text-primary);font-weight:700}.progress-bar-wrapper{background:var(--border-color);border-radius:3px;height:6px;position:relative;overflow:hidden}.progress-bar-fill{border-radius:3px;height:100%;transition:width .6s ease-out}.fill-high{background-color:var(--success)}.fill-mid{background-color:var(--accent-color)}.fill-low{background-color:var(--danger)}.rating-dist-card{flex-direction:column;justify-content:center;display:flex}.rating-dist-row{color:var(--text-secondary);align-items:center;gap:.75rem;margin-bottom:.6rem;font-size:.85rem;display:flex}.rating-dist-label{align-items:center;gap:.25rem;width:50px;font-weight:600;display:flex}.rating-dist-bar{background:var(--border-color);border-radius:4px;flex:1;height:8px;overflow:hidden}.rating-dist-fill{background:var(--accent-color);border-radius:4px;height:100%;transition:width .6s ease-out}.rating-dist-count{text-align:right;width:25px;font-weight:700}.reviews-section-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:.75rem;display:flex}.reviews-filter-bar{gap:.5rem;display:flex}.review-filter-btn{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-secondary);border-radius:var(--border-radius-sm);cursor:pointer;transition:all var(--transition-speed);padding:.4rem .8rem;font-size:.85rem;font-weight:500}.review-filter-btn.active,.review-filter-btn:hover{background:var(--text-primary);color:#fff;border-color:var(--text-primary)}.reviews-list{flex-direction:column;gap:1.5rem;display:flex}.review-item-card{border:1px solid var(--border-color);border-radius:var(--border-radius-md);background:var(--bg-surface);box-shadow:var(--shadow-sm);padding:1.5rem}.review-item-header{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.review-author-info{flex-direction:column;display:flex}.review-author-role{color:var(--text-primary);align-items:center;gap:.5rem;font-size:.95rem;font-weight:700;display:flex}.role-tag{text-transform:uppercase;border-radius:4px;padding:.15rem .4rem;font-size:.7rem;font-weight:700}.role-tag.guard-tag{background-color:var(--accent-light);color:var(--accent-color)}.role-tag.client-tag{background-color:var(--border-color);color:var(--text-secondary)}.review-metadata{color:var(--text-muted);gap:.75rem;margin-top:.15rem;font-size:.8rem;display:flex}.review-stars-row{align-items:center;gap:.25rem;display:flex}.review-star-svg{width:16px;height:16px;fill:var(--accent-color);color:var(--accent-color)}.review-star-svg.empty{fill:none;color:var(--text-muted)}.review-body-title{margin-bottom:.75rem;font-size:1.15rem;font-weight:700}.review-columns{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem;margin-bottom:1.25rem;display:grid}.review-column-block{border-left:3px solid var(--border-color);padding-left:.75rem}.review-column-block.pros-block{border-color:var(--success)}.review-column-block.cons-block{border-color:var(--danger)}.review-column-heading{text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:.25rem;margin-bottom:.25rem;font-size:.85rem;font-weight:700;display:flex}.review-column-heading.pros-heading{color:var(--success)}.review-column-heading.cons-heading{color:var(--danger)}.review-column-content{color:var(--text-secondary);font-size:.9rem}.review-general-comment{background:var(--bg-primary);border-radius:var(--border-radius-sm);border-left:3px solid var(--accent-color);margin-bottom:1.25rem;padding:1rem;font-size:.92rem}.review-comment-heading{color:var(--accent-color);text-transform:uppercase;margin-bottom:.25rem;font-size:.8rem;font-weight:700}.review-comment-text{color:var(--text-secondary)}.review-action-footer{color:var(--text-muted);border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;padding-top:.75rem;font-size:.82rem;display:flex}.review-helpful-actions{align-items:center;gap:.5rem;display:flex}.review-helpful-btn{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-speed);border-radius:4px;align-items:center;gap:.25rem;padding:.25rem .5rem;display:flex}.review-helpful-btn:hover{background:var(--accent-light);color:var(--accent-color);border-color:var(--accent-color)}.review-helpful-btn svg{width:14px;height:14px}.review-report-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:.25rem;display:flex}.review-report-btn:hover{color:var(--danger)}.review-report-btn svg{width:14px;height:14px}dialog{border-radius:var(--border-radius-md);background:var(--bg-surface);color:var(--text-primary);border:none;outline:none;width:90%;max-width:600px;margin:auto;padding:0;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}dialog::backdrop{-webkit-backdrop-filter:blur(8px);background-color:#00000080}dialog:not([open]){display:none}.modal-header{border-bottom:1px solid var(--border-color);background:var(--bg-primary);justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.modal-title{align-items:center;gap:.5rem;font-size:1.25rem;font-weight:700;display:flex}.btn-close-modal{color:var(--text-secondary);cursor:pointer;transition:all var(--transition-speed);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:.25rem;display:flex}.btn-close-modal:hover{background:var(--border-color);color:var(--text-primary)}.modal-body{max-height:70vh;padding:1.5rem;overflow-y:auto}.modal-footer{border-top:1px solid var(--border-color);background:var(--bg-primary);justify-content:space-between;padding:1rem 1.5rem;display:flex}.anonymity-shield{background:var(--accent-light);border:1px solid var(--accent-color);border-radius:var(--border-radius-sm);gap:1rem;margin-bottom:1.5rem;padding:1rem;display:flex}.anonymity-shield svg{color:var(--accent-color);flex-shrink:0;width:24px;height:24px}.anonymity-title{color:var(--accent-color);margin-bottom:.25rem;font-size:.9rem;font-weight:700}.anonymity-desc{color:var(--text-secondary);font-size:.82rem;line-height:1.4}.form-step-indicator{color:var(--accent-color);text-transform:uppercase;margin-bottom:.5rem;font-size:.8rem;font-weight:700}.form-group{flex-direction:column;gap:.4rem;margin-bottom:1.25rem;display:flex}.form-label-styled{color:var(--text-secondary);font-size:.88rem;font-weight:600}.form-input-styled{background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-primary);border-radius:var(--border-radius-md);font-family:var(--font-body);outline:none;width:100%;padding:.85rem 1rem;font-size:.95rem;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:inset 0 2px 4px #00000005}.form-input-styled:hover{border-color:#cbd5e1;box-shadow:inset 0 2px 8px #0000000a}.form-input-styled:focus{border-color:var(--accent-color);transform:translateY(-1px);box-shadow:0 0 0 4px #f9731626,inset 0 2px 4px #00000005}.form-input-styled:invalid:not(:placeholder-shown){border-color:var(--danger);box-shadow:0 0 0 3px var(--danger-light)}.form-input-help{color:var(--text-muted);font-size:.75rem}.form-step-content{display:none}.form-step-content.active{display:block}.role-select-group{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.role-radio-label{border:2px solid var(--border-color);border-radius:var(--border-radius-md);cursor:pointer;text-align:center;background:var(--bg-surface);flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1rem;transition:all .3s cubic-bezier(.34,1.56,.64,1);display:flex;position:relative;box-shadow:0 4px 6px #00000005}.role-radio-label:hover{background:var(--bg-primary);border-color:#cbd5e1;transform:translateY(-4px);box-shadow:0 10px 15px #0000000d}.role-radio-label:has(input:checked){border-color:var(--accent-color);background:#f973160d;transform:translateY(-2px)scale(1.02);box-shadow:0 0 0 4px #f9731626}.role-radio-label svg{width:32px;height:32px;color:var(--text-secondary)}.role-radio-label:has(input:checked) svg{color:var(--accent-color)}.role-radio-title{font-size:.95rem;font-weight:700}.stars-input-container{align-items:center;gap:.5rem;display:flex}.star-rating-widget{flex-direction:row-reverse;display:inline-flex}.star-rating-widget input[type=radio]{display:none}.star-rating-widget label{cursor:pointer;color:var(--text-muted);padding:.25rem;transition:all .2s cubic-bezier(.175,.885,.32,1.275);display:inline-block}.star-rating-widget label svg{fill:none;stroke:#94a3b8;stroke-width:1.5px;width:32px;height:32px;transition:all .2s ease-out}.star-rating-widget label:hover,.star-rating-widget label:hover~label,.star-rating-widget input[type=radio]:checked~label{color:#fbbf24;transform:scale(1.15)}.star-rating-widget label:hover svg,.star-rating-widget label:hover~label svg,.star-rating-widget input[type=radio]:checked~label svg{fill:#fbbf24;stroke:#f59e0b;filter:drop-shadow(0 2px 4px #f59e0b66)}footer{border-top:1px solid var(--border-color);background:var(--bg-surface);transition:background-color var(--transition-speed), border-color var(--transition-speed);margin-top:auto}.footer-container{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;max-width:1200px;margin:0 auto;padding:2rem 1.5rem;display:flex}.footer-info{max-width:600px}.footer-text{color:var(--text-secondary);font-size:.85rem}.footer-logo{font-size:1.25rem;font-weight:800;font-family:var(--font-heading);margin-bottom:.5rem}@media (width<=768px){.header-container{flex-direction:column;gap:1rem}.nav-links{justify-content:center;gap:.5rem;width:100%}.controls{justify-content:center;width:100%}.hero-title{font-size:2rem}.charts-grid,.detail-grid,.ratings-breakdown-card{grid-template-columns:1fr}.search-main-row{flex-direction:column}.sort-chips{width:100%;margin-left:0;padding-bottom:.5rem;overflow-x:auto}dialog{width:95%}.footer-container{text-align:center;flex-direction:column}}@media (width<=480px){.hero-buttons{flex-direction:column;width:100%}.btn-primary,.btn-secondary{justify-content:center;width:100%}.role-select-group{grid-template-columns:1fr}}.autocomplete-container{position:relative}.autocomplete-input-wrapper{width:100%;position:relative}.autocomplete-clear-btn{cursor:pointer;color:var(--text-muted);z-index:10;font-size:1.4rem;line-height:1;transition:color .2s;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.autocomplete-clear-btn:hover{color:var(--text-primary)}.autocomplete-spinner{border:2px solid var(--border-color);border-top:2px solid var(--accent-color);pointer-events:none;z-index:10;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite autocomplete-spin;position:absolute;top:50%;right:12px;transform:translateY(-50%)}@keyframes autocomplete-spin{0%{transform:translateY(-50%)rotate(0)}to{transform:translateY(-50%)rotate(360deg)}}.autocomplete-suggestions-list{border:1px solid var(--border-color);border-radius:var(--border-radius-sm);background:var(--bg-surface);width:100%;max-height:280px;box-shadow:var(--shadow-lg,0 10px 25px -5px #0000004d);z-index:9999;padding:.5rem 0;animation:.2s cubic-bezier(.16,1,.3,1) autocomplete-fadeInDown;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto}@keyframes autocomplete-fadeInDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.autocomplete-section-header{text-transform:uppercase;color:var(--accent-color);letter-spacing:.05em;border-bottom:1px solid var(--border-color);margin-top:.5rem;margin-bottom:.25rem;padding:.5rem 1rem .25rem;font-size:.75rem;font-weight:700}.autocomplete-section-header:first-of-type{margin-top:0}.autocomplete-suggestion-item{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.75rem;padding:.65rem 1rem;transition:background .2s,transform .1s;display:flex}.autocomplete-suggestion-item:hover,.autocomplete-suggestion-item.active{background:var(--bg-surface-hover,#ffffff14)}.autocomplete-suggestion-item:active{transform:scale(.99)}.autocomplete-suggestion-logo{border:1px solid var(--border-color);background:#ffffff0d;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.25rem;display:flex}.autocomplete-suggestion-info{flex-direction:column;flex-grow:1;min-width:0;display:flex}.autocomplete-suggestion-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:600;overflow:hidden}.autocomplete-suggestion-meta{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;margin-top:.1rem;font-size:.75rem;overflow:hidden}.autocomplete-no-results{text-align:center;color:var(--text-muted);padding:1.5rem 1rem;font-size:.9rem}.modal-body::-webkit-scrollbar-thumb{border-radius:4px;background:#0003!important}[data-theme=dark] .modal-body::-webkit-scrollbar-thumb{background:#fff3!important}.modal-body::-webkit-scrollbar-track{background:#00000005!important}@keyframes modal-pop{0%{opacity:0;transform:scale(.95)translateY(10px)}50%{transform:scale(1.02)translateY(-2px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes backdrop-fade{0%{-webkit-backdrop-filter:blur();backdrop-filter:blur();background-color:#0000}to{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#00000080}}dialog[open]{animation:.4s cubic-bezier(.175,.885,.32,1.275) forwards modal-pop}dialog[open]::backdrop{animation:.3s ease-out forwards backdrop-fade}.manifesto-dialog{max-width:500px;box-shadow:none;background:0 0;overflow:visible}.manifesto-content{background:var(--bg-surface);text-align:center;border:1px solid var(--border-color);background-image:linear-gradient(to bottom right, var(--bg-surface), var(--bg-primary));border-radius:24px;padding:3rem 2rem 2.5rem;position:relative;box-shadow:0 25px 50px -12px #00000080,0 0 0 1px #ffffff1a}.manifesto-icon-wrapper{border:4px solid var(--bg-surface);opacity:0;background:linear-gradient(135deg,#f97316,#fbbf24);border-radius:50%;justify-content:center;align-items:center;width:70px;height:70px;animation:.6s cubic-bezier(.175,.885,.32,1.275) .3s forwards bounce-in;display:flex;position:absolute;top:-30px;left:50%;transform:translate(-50%);box-shadow:0 10px 15px -3px #f9731666}@keyframes bounce-in{0%{opacity:0;transform:translate(-50%,20px)scale(.5)}to{opacity:1;transform:translate(-50%)scale(1)}}.manifesto-icon{color:#fff;width:32px;height:32px}.manifesto-title{background:linear-gradient(90deg,#f97316,#fbbf24);-webkit-text-fill-color:transparent;letter-spacing:-.02em;-webkit-background-clip:text;margin-bottom:1.5rem;font-size:1.5rem;font-weight:800}.manifesto-body p{color:var(--text-secondary);margin-bottom:1rem;font-size:.95rem;line-height:1.6}.manifesto-body p strong{color:var(--text-primary);font-weight:700}.manifesto-btn{background:linear-gradient(135deg,#f97316,#ea580c);border-radius:12px;width:100%;margin-top:1rem;padding:1rem;font-size:1.1rem;transition:all .3s;box-shadow:0 4px 14px #ea580c66}.manifesto-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ea580c99}.gartner-quadrant-wrapper{flex-direction:column;gap:1.5rem;margin-bottom:2rem;padding:2rem;display:flex;overflow:hidden}.gartner-header{text-align:center}.gartner-header h2{color:var(--text-primary);margin-bottom:.5rem;font-size:1.5rem}.gartner-header p{color:var(--text-secondary);font-size:.95rem}.gartner-container{aspect-ratio:1;background:var(--bg-surface);border:2px solid var(--border-color);border-radius:var(--border-radius-lg);flex-direction:column;width:100%;max-width:800px;margin:0 auto;display:flex;position:relative;box-shadow:inset 0 0 40px #00000005}.gartner-grid-layout{border-radius:calc(var(--border-radius-lg) - 2px);grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;width:100%;height:100%;display:grid;position:relative;overflow:hidden}.quadrant{border:1px dashed var(--border-color);padding:1rem;display:flex;position:relative}.quadrant-title{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.05em;opacity:.4;pointer-events:none;font-size:.85rem;font-weight:700}.quad-top-left{background:linear-gradient(135deg,#ef44440d 0%,#0000 100%);justify-content:flex-start;align-items:flex-start}.quad-top-right{background:linear-gradient(225deg,#10b98114 0%,#0000 100%);justify-content:flex-end;align-items:flex-start}.quad-bottom-left{background:linear-gradient(45deg,#64748b0d 0%,#0000 100%);justify-content:flex-start;align-items:flex-end}.quad-bottom-right{background:linear-gradient(315deg,#f973160d 0%,#0000 100%);justify-content:flex-end;align-items:flex-end}.gartner-axis-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;pointer-events:none;z-index:10;font-size:.8rem;font-weight:600;position:absolute}.y-axis-label{transform-origin:50%;top:50%;left:-2rem;transform:translateY(-50%)rotate(-90deg)}.x-axis-label{bottom:-2rem;left:50%;transform:translate(-50%)}.gartner-plot-area{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.gartner-dot{background:var(--bg-surface);border:3px solid var(--accent-color);pointer-events:auto;cursor:pointer;z-index:5;border-radius:50%;width:20px;height:20px;transition:transform .2s cubic-bezier(.175,.885,.32,1.275),box-shadow .2s,z-index;animation:.5s cubic-bezier(.175,.885,.32,1.275) backwards pop-in;position:absolute;transform:translate(-50%,50%);box-shadow:0 4px 6px #0000001a}.gartner-dot:hover{z-index:20;transform:translate(-50%,50%)scale(1.5);box-shadow:0 8px 15px #f9731666}.gartner-dot .tooltip{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;pointer-events:none;text-align:center;min-width:160px;padding:.75rem 1rem;transition:all .2s;position:absolute;bottom:120%;left:50%;transform:translate(-50%)translateY(10px)}.gartner-dot .tooltip:after{content:"";border-style:solid;border-width:6px;border-color:var(--bg-surface) transparent transparent transparent;margin-left:-6px;position:absolute;top:100%;left:50%}.gartner-dot .tooltip:before{content:"";border-style:solid;border-width:7px;border-color:var(--border-color) transparent transparent transparent;margin-left:-7px;position:absolute;top:100%;left:50%}.gartner-dot:hover .tooltip{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.tooltip-title{font-family:var(--font-heading);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin-bottom:.25rem;font-size:.95rem;font-weight:700;overflow:hidden}.tooltip-stats{color:var(--text-secondary);flex-direction:column;gap:.15rem;font-size:.8rem;display:flex}@keyframes pop-in{0%{opacity:0;transform:translate(-50%,50%)scale(0)}to{opacity:1;transform:translate(-50%,50%)scale(1)}}@media (width<=768px){.gartner-container{aspect-ratio:auto;height:400px}.quadrant-title{font-size:.7rem}.y-axis-label,.x-axis-label{display:none}}
