@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600&display=swap";:root{--bg-dark: #0B0F19;--bg-card: rgba(30, 41, 59, .4);--bg-card-hover: rgba(30, 41, 59, .6);--text-primary: #FFFFFF;--text-secondary: #E2E8F0;--text-muted: #94A3B8;--accent-primary: #8B5CF6;--accent-secondary: #06B6D4;--accent-gradient: linear-gradient(135deg, #8B5CF6 0%, #06B6D4 100%);--accent-glow: 0 0 20px rgba(139, 92, 246, .5);--aws-color: #FF9900;--azure-color: #0078D4;--gcp-color: #4285F4;--success: #10B981;--success-bg: rgba(16, 185, 129, .2);--error: #EF4444;--error-bg: rgba(239, 68, 68, .2);--glass-border: 1px solid rgba(255, 255, 255, .08);--glass-shine: 1px solid rgba(255, 255, 255, .15);--radius-lg: 16px;--radius-md: 12px;--radius-sm: 8px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,sans-serif;background-color:var(--bg-dark);color:var(--text-primary);line-height:1.6;min-height:100vh;background-image:radial-gradient(circle at 15% 50%,rgba(139,92,246,.08),transparent 25%),radial-gradient(circle at 85% 30%,rgba(6,182,212,.08),transparent 25%)}h1,h2,h3,h4,h5,h6{font-family:Outfit,sans-serif;color:var(--text-primary);font-weight:600}.app{min-height:100vh;display:flex;flex-direction:column}.app-layout{display:flex;flex-direction:column;align-items:center;padding:2rem;flex:1;max-width:1000px;margin:0 auto;width:100%}.main-content{width:100%;display:flex;flex-direction:column;gap:2rem}@media (max-width: 1200px){.app-layout{padding:1rem}}.header{padding:3rem 1rem 1rem;text-align:center;position:relative}.header-content{max-width:800px;margin:0 auto}.logo{display:inline-flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.logo-icon-svg{width:48px;height:48px;filter:drop-shadow(0 0 10px rgba(6,182,212,.3))}.logo-text{font-family:Outfit,sans-serif;font-size:.9rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:#fff}.header h1{font-size:2.5rem;margin-bottom:.75rem;letter-spacing:-.02em}.header-subtitle{font-size:1.1rem;color:var(--text-secondary)}.glass-card{background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:var(--glass-border);border-top:var(--glass-shine);border-radius:var(--radius-lg);padding:2rem;box-shadow:0 8px 32px #0000004d}.welcome-card{text-align:center}.welcome-card h2{font-size:1.5rem;margin-bottom:1rem;color:#fff}.welcome-card p{color:var(--text-secondary);max-width:600px;margin:0 auto 2rem}.welcome-features{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.feature{display:flex;align-items:center;gap:.75rem}.feature span:not(.feature-icon-text){color:#fff;font-weight:500}.feature-icon-text{background:linear-gradient(135deg,#8b5cf6,#06b6d4);color:#fff;padding:.35rem .85rem;border-radius:20px;font-size:.75rem;font-weight:700;border:none;box-shadow:0 2px 8px #8b5cf666;text-transform:uppercase;letter-spacing:.5px}.config-header{margin-bottom:2rem}.config-subtitle{color:var(--text-secondary)}.form-section{background:#0003;border-radius:var(--radius-md);padding:1.5rem;margin-bottom:1.5rem;border:1px solid rgba(255,255,255,.03)}.section-header h4{color:var(--text-secondary);font-size:.85rem;text-transform:uppercase;letter-spacing:1px;margin-bottom:0}.form-section .section-header{margin-bottom:1.5rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:2rem}.form-group-modern label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-secondary);margin-bottom:.75rem}.info-icon{width:16px;height:16px;opacity:.6;transition:opacity .2s}.info-icon:hover{opacity:1;color:var(--accent-secondary)}.input-with-slider{display:flex;align-items:center;gap:1rem}.slider{flex:1;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ffffff1a;border-radius:3px;outline:none}.slider::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;background:var(--accent-secondary);border-radius:50%;cursor:pointer;box-shadow:0 0 10px #06b6d480;transition:transform .2s}.slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.number-input,.select-input{background:#0000004d;border:1px solid rgba(255,255,255,.1);color:var(--text-primary);padding:.6rem 1rem;border-radius:var(--radius-sm);font-family:Inter,sans-serif;font-size:.95rem;transition:all .2s}.number-input:focus,.select-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px #8b5cf633}.number-input{width:80px;text-align:center}.select-input{width:100%;cursor:pointer}.input-hint{display:block;font-size:.75rem;color:var(--text-muted);margin-top:.5rem}.regions-section .section-header{display:flex;align-items:center;gap:.75rem}.regions-section .section-header .info-icon{width:16px;height:16px;color:var(--text-muted)}.regions-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.region-logo svg{width:20px;height:20px}.compare-button{width:100%;padding:1.25rem;background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:#fff;font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:600;letter-spacing:.5px;cursor:pointer;transition:all .3s ease;box-shadow:var(--accent-glow);position:relative;overflow:hidden}.compare-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 0 30px #8b5cf6b3}.compare-button:disabled{opacity:.7;cursor:not-allowed;filter:grayscale(.5)}.results-section{display:flex;flex-direction:column;gap:2rem;animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.results-summary{display:flex;gap:2rem;padding:1rem;background:#ffffff08;border-radius:var(--radius-md);margin-top:1rem}.summary-item{display:flex;flex-direction:column}.summary-item.highlight{background:#10b9811a;padding:.75rem 1rem;border-radius:var(--radius-sm);border:1px solid rgba(16,185,129,.2)}.summary-label{color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:1px;display:block;margin-bottom:.25rem}.summary-value{font-size:1.1rem;font-weight:500}.summary-value.best-price{color:var(--success);font-weight:700;font-size:1.4rem;text-shadow:0 0 10px rgba(16,185,129,.3)}.price-comparison-chart{background:#0003;border-radius:var(--radius-md);padding:1.5rem}.price-comparison-chart h3{font-size:1.1rem;margin-bottom:1.5rem;color:var(--text-primary)}.chart-row{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.chart-provider-name{color:var(--text-secondary);font-size:.85rem;font-weight:600}.chart-bar{height:36px;border-radius:6px;display:flex;align-items:center;justify-content:flex-end;padding-right:1rem;font-weight:600;font-size:.9rem;box-shadow:0 2px 4px #0003}.chart-bar.cheapest-bar{background:var(--success)!important;box-shadow:0 0 15px #10b98166}.best-price-badge{background:var(--success-bg);color:var(--success);font-size:.7rem;padding:.25rem .5rem;border-radius:4px;font-weight:700;border:1px solid rgba(16,185,129,.3)}.comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.provider-column{background:#1e293b4d;border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-lg);overflow:hidden;transition:transform .3s}.provider-column:hover{transform:translateY(-5px);border-color:#ffffff1a}.provider-column.best-provider{border:1px solid var(--success);box-shadow:0 0 20px #10b98126}.provider-header{padding:1.5rem;text-align:center;background:#0003}.provider-logo{width:64px;height:64px;margin:0 auto 1rem;background:#fff;border-radius:16px;padding:12px;box-shadow:0 4px 12px #00000026}.recommended-badge{background:var(--success);color:#fff;font-size:.75rem;font-weight:700;padding:.25rem .75rem;border-radius:20px;display:inline-block;margin-top:.5rem;box-shadow:0 2px 10px #10b98166}.instance-list{padding:1rem}.instance-item{background:#ffffff08;border-radius:var(--radius-sm);padding:1rem;margin-bottom:.75rem;border:1px solid transparent;transition:all .2s}.instance-item:hover{background:#ffffff0d}.instance-item.cheapest{background:#10b9810d;border-color:#10b9814d}.instance-type{font-family:Outfit,sans-serif;font-weight:600;font-size:1.1rem;color:var(--text-primary);margin-bottom:.25rem}.instance-family{font-size:.8rem;color:var(--text-muted);margin-bottom:.75rem}.instance-specs{display:flex;gap:1rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.05)}.spec{display:flex;flex-direction:column}.spec-label{font-size:.7rem;color:var(--text-muted);text-transform:uppercase}.spec-value{font-weight:600;color:var(--text-secondary)}.price-breakdown{font-size:.85rem;color:var(--text-muted);margin-bottom:.75rem}.price-row{display:flex;justify-content:space-between;margin-bottom:.25rem}.price-row.savings{color:var(--success)}.price-info{text-align:right}.price-monthly{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.price-hourly{font-size:.8rem;color:var(--text-muted)}.price-diff-indicator{text-align:right;font-size:.8rem;color:var(--error);margin-top:.25rem}.footer{text-align:center;padding:2rem;color:var(--text-muted);font-size:.9rem;margin-top:auto}.price-update-info{display:flex;align-items:center;justify-content:center;gap:.5rem;margin:.75rem 0;padding:.75rem 1rem;background:#8b5cf61a;border:1px solid rgba(139,92,246,.2);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.85rem}.price-update-info .update-icon{font-size:1rem}.price-update-info strong{color:var(--text-primary)}.price-update-info .prices-count{color:var(--text-muted);font-size:.8rem}.footer-links a{color:var(--text-secondary);text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--accent-secondary)}.link-separator{margin:0 .5rem;color:var(--text-muted);opacity:.5}.section-hint{font-size:.8rem;color:var(--text-muted);margin-left:auto}.region-label{display:flex;align-items:center;gap:.5rem}.region-logo{display:flex;align-items:center;justify-content:center;width:24px;height:24px}.region-logo svg{width:18px;height:18px}.region-group{min-width:200px}.region-select{width:100%}.chart-container{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.chart-logo{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:6px;background:#fff;box-shadow:0 2px 6px #0000001a}.chart-logo svg{width:22px;height:22px}.chart-provider{display:flex;align-items:center;gap:.75rem;min-width:120px;margin-bottom:.5rem}.chart-bar-container{display:flex;align-items:center;gap:.75rem;flex:1}.chart-price{color:#fff;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.3)}.price-difference{font-size:.8rem;color:var(--error);white-space:nowrap}.no-data{color:var(--text-muted);font-style:italic;font-size:.9rem}.savings-banner{background:linear-gradient(135deg,#10b98126,#06b6d426);border:1px solid rgba(16,185,129,.3);border-radius:var(--radius-md);padding:1rem 1.5rem;text-align:center;color:var(--success);font-size:1rem}.savings-banner strong{color:#34d399;font-weight:700}.annual-estimate{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}.annual-estimate h4{font-size:.9rem;color:var(--text-secondary);margin-bottom:1rem;text-align:center}.annual-grid{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap}.annual-item{text-align:center;padding:.75rem 1.5rem;background:#ffffff08;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.05)}.annual-item.cheapest{background:#10b9811a;border-color:#10b9814d}.annual-provider{display:block;font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:.25rem}.annual-price{font-weight:600;color:var(--text-primary);font-size:1rem}.annual-item.cheapest .annual-price{color:var(--success)}.category-info{margin-top:1rem;padding:1rem;background:#8b5cf61a;border-radius:var(--radius-sm);border:1px solid rgba(139,92,246,.2)}.category-desc{display:block;color:var(--text-secondary);font-size:.9rem;margin-bottom:.75rem}.category-families{display:flex;gap:.5rem;flex-wrap:wrap}.family-tag{font-size:.75rem;padding:.25rem .5rem;border-radius:4px;background:#ffffff0d;color:var(--text-muted)}.family-tag.aws{border-left:3px solid var(--aws-color)}.family-tag.azure{border-left:3px solid var(--azure-color)}.family-tag.gcp{border-left:3px solid var(--gcp-color)}.best-label{background:var(--success);color:#fff;font-size:.7rem;font-weight:700;padding:.25rem .5rem;border-radius:4px;display:inline-block;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.error-card{background:var(--error-bg);border:1px solid var(--error);color:var(--error)}.spinner{display:inline-block;width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-right:.5rem}@keyframes spin{to{transform:rotate(360deg)}}.provider-svg{width:100%;height:100%;object-fit:contain}.provider-name{font-family:Outfit,sans-serif;font-weight:600;font-size:1rem;color:#fff;margin-top:.5rem}.provider-region{font-size:.85rem;color:#ffffffb3;margin-top:.25rem}.no-instances-msg{color:var(--text-muted);font-style:italic;text-align:center;padding:1rem}.tooltip{position:relative;cursor:help}.tooltip:after{content:attr(data-tip);position:absolute;bottom:125%;left:50%;transform:translate(-50%);background:var(--bg-dark);border:1px solid rgba(255,255,255,.1);color:var(--text-secondary);padding:.5rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;width:max-content;max-width:250px;opacity:0;visibility:hidden;transition:all .2s;z-index:100;line-height:1.4;box-shadow:0 4px 12px #0000004d}.tooltip:hover:after{opacity:1;visibility:visible}.mobile-ad{display:none!important}.mode-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;background:#0003;padding:.5rem;border-radius:var(--radius-lg);border:var(--glass-border)}.mode-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 1.5rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:#fff;font-family:Outfit,sans-serif;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease}.mode-tab svg{width:20px;height:20px;stroke:currentColor}.mode-tab:hover{color:#fff;background:#ffffff1a;border-color:#8b5cf680}.mode-tab.active{background:var(--accent-gradient);color:#fff;box-shadow:var(--accent-glow)}.mode-tab.active svg{stroke:#fff}@media (max-width: 600px){.mode-tabs{flex-direction:column}.mode-tab{padding:.75rem 1rem;font-size:.9rem}}@media (max-width: 1200px){.mobile-ad{display:flex!important;justify-content:center;padding:1rem 0;width:100%}.ad-placeholder.mobile{width:100%;max-width:320px;height:100px;position:static}}.results-header h2{font-size:1.5rem;margin-bottom:.5rem}.section-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem}.educational-section,.faq-section,.about-section{margin-top:1rem}.educational-section h2,.faq-section h2,.about-section h2{font-size:1.75rem;margin-bottom:.75rem;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.section-intro{color:var(--text-secondary);font-size:1rem;line-height:1.7;margin-bottom:1.5rem;max-width:800px}.guides-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.guide-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);padding:1.5rem;transition:all .3s ease}.guide-card:hover{background:#ffffff0d;border-color:#8b5cf64d;transform:translateY(-2px)}.guide-card h3{font-size:1.1rem;margin-bottom:.75rem;color:var(--text-primary)}.guide-card p{color:var(--text-muted);font-size:.9rem;line-height:1.6}.provider-overview{margin-top:2rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.08)}.provider-overview h3{font-size:1.25rem;margin-bottom:1.25rem;color:var(--text-primary)}.provider-cards-spotlight{display:flex;flex-wrap:wrap;gap:1.5rem}.spotlight-card{--hsl: var(--hue), var(--saturation), var(--lightness);flex:1 1 280px;padding:1.5rem;display:grid;grid-template-rows:auto auto auto 1fr auto;align-items:start;gap:1rem;color:var(--text-primary);background-color:#1e293b99;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);position:relative;overflow:hidden}.spotlight-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:radial-gradient(600px circle at var(--mouse-x, 50%) var(--mouse-y, 50%),hsla(var(--hsl),.15),transparent 40%);opacity:0;transition:opacity .3s ease;pointer-events:none;z-index:0}.spotlight-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:radial-gradient(400px circle at var(--mouse-x, 50%) var(--mouse-y, 50%),hsla(var(--hsl),.4),transparent 40%);opacity:0;transition:opacity .3s ease;pointer-events:none;z-index:0;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;padding:1px}.spotlight-card:hover:before,.spotlight-card:hover:after{opacity:1}.spotlight-card.aws-spotlight{--hue: 36;--saturation: 100%;--lightness: 50%}.spotlight-card.azure-spotlight{--hue: 210;--saturation: 100%;--lightness: 50%}.spotlight-card.gcp-spotlight{--hue: 217;--saturation: 89%;--lightness: 61%}.spotlight-card__header{display:flex;align-items:center;gap:.75rem;position:relative;z-index:1}.spotlight-card__header h4{font-size:1.05rem;font-weight:600;color:var(--text-primary);margin:0}.spotlight-card__header .provider-svg{width:32px;height:32px}.spotlight-card p{color:var(--text-secondary);font-size:.9rem;line-height:1.6;margin:0;position:relative;z-index:1}.spotlight-card__features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem;position:relative;z-index:1}.spotlight-card__features li{color:var(--text-muted);font-size:.85rem;line-height:1.4;display:flex;align-items:center;gap:.5rem}.spotlight-card__features li:before{content:"✓";color:hsla(var(--hsl),1);font-weight:700;flex-shrink:0}.spotlight-card__cta{display:block;align-self:end;text-align:center;text-decoration:none;color:#fff;background-color:#0006;padding:.75em 1em;border-radius:var(--radius-sm);font-size:.9rem;font-weight:600;transition:all .3s ease;margin-top:.5rem;position:relative;z-index:1}.spotlight-card__cta:hover{background-color:hsla(var(--hsl),.7);box-shadow:0 0 20px hsla(var(--hsl),.4)}.faq-list{display:flex;flex-direction:column;gap:.75rem}.faq-item{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-md);overflow:hidden;transition:all .3s ease}.faq-item:hover{border-color:#ffffff1f}.faq-item[open]{background:#ffffff0a;border-color:#8b5cf64d}.faq-question{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;cursor:pointer;list-style:none;font-weight:500;color:var(--text-primary);transition:all .2s ease}.faq-question::-webkit-details-marker{display:none}.faq-question:hover{color:var(--accent-primary)}.faq-question span{flex:1;padding-right:1rem}.faq-chevron{width:20px;height:20px;color:var(--text-muted);transition:transform .3s ease;flex-shrink:0}.faq-item[open] .faq-chevron{transform:rotate(180deg);color:var(--accent-primary)}.faq-answer{padding:0 1.5rem 1.5rem;animation:fadeIn .3s ease}.faq-answer p{color:var(--text-secondary);font-size:.95rem;line-height:1.7;margin:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.about-content{display:flex;flex-direction:column;gap:1rem}.about-content>p{color:var(--text-secondary);font-size:.95rem;line-height:1.7}.about-content>p strong{color:var(--text-primary)}.about-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:1rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.08)}.about-feature{display:flex;flex-direction:column;gap:.25rem;padding:1rem;background:#ffffff05;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.05)}.about-feature strong{color:var(--accent-secondary);font-size:.95rem}.about-feature span{color:var(--text-muted);font-size:.85rem}.footer-copyright{margin-top:1rem;color:var(--text-muted);font-size:.85rem}@media (max-width: 768px){.header h1{font-size:1.75rem}.header-subtitle{font-size:.95rem}.welcome-features{flex-direction:column;align-items:center;gap:1rem}.form-row{grid-template-columns:1fr;gap:1.5rem}.results-summary{flex-direction:column;gap:1rem}.comparison-grid{grid-template-columns:1fr}.annual-grid{flex-direction:column;align-items:center}.chart-row{flex-direction:column;align-items:flex-start}.chart-bar-container{width:100%}.guides-grid{grid-template-columns:1fr}.provider-cards-spotlight{flex-direction:column}.spotlight-card{flex:1 1 100%}.educational-section h2,.faq-section h2,.about-section h2{font-size:1.4rem}.faq-question{padding:1rem;font-size:.95rem}.faq-answer{padding:0 1rem 1rem}}.articles-section{margin-top:2rem}.articles-section h2{font-size:1.75rem;color:var(--text-primary);margin-bottom:.75rem;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.articles-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-top:2rem}.article-card{background:var(--bg-card);border:var(--glass-border);border-radius:var(--radius-lg);padding:2rem;transition:all .3s ease}.article-card:hover{border-color:#8b5cf64d;box-shadow:0 8px 32px #8b5cf626}.article-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.article-tag{background:var(--accent-gradient);color:#fff;padding:4px 12px;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.article-date{color:var(--text-muted);font-size:.85rem}.article-card h3{color:var(--text-primary);font-size:1.4rem;margin-bottom:1rem;line-height:1.3}.article-summary{color:var(--text-secondary);font-size:1rem;line-height:1.6;margin-bottom:1rem}.article-expand{margin-top:1rem}.article-read-more{display:flex;align-items:center;gap:.5rem;color:var(--accent-primary);cursor:pointer;font-weight:600;padding:.75rem 0;list-style:none;transition:color .3s ease}.article-read-more::-webkit-details-marker{display:none}.article-read-more:hover{color:var(--accent-secondary)}.article-read-more .expand-icon{width:18px;height:18px;transition:transform .3s ease}.article-expand[open] .expand-icon{transform:rotate(180deg)}.article-content{padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1);margin-top:1rem}.article-content p{color:var(--text-secondary);line-height:1.8;margin-bottom:1.25rem;font-size:1rem}.article-content p:last-child{margin-bottom:0}.footer-legal{margin:1.5rem 0;padding:1rem 0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}.footer-legal-link{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:color .3s ease}.footer-legal-link:hover{color:var(--accent-primary)}@media (min-width: 768px){.articles-grid{grid-template-columns:1fr}}@media (max-width: 640px){.article-card{padding:1.25rem}.article-card h3{font-size:1.2rem}.article-header{flex-direction:column;align-items:flex-start;gap:.5rem}.footer-legal{display:flex;flex-direction:column;align-items:center;gap:.5rem}.footer-legal .link-separator{display:none}}.creator-link{color:var(--accent-primary);text-decoration:none;font-weight:600;transition:color .3s ease}.creator-link:hover{color:var(--accent-secondary);text-decoration:underline}.pricing-sources{margin:2rem 0;padding:1.5rem;background:#8b5cf60d;border-radius:var(--radius-md);border:1px solid rgba(139,92,246,.2)}.pricing-sources h3{font-size:1.2rem;margin-bottom:.75rem;color:var(--text-primary)}.pricing-sources>p{color:var(--text-muted);margin-bottom:1.25rem;font-size:.95rem}.sources-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.source-card{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.25rem 1rem;background:#ffffff08;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.08);text-decoration:none;transition:all .3s ease}.source-card:hover{background:#ffffff14;border-color:#ffffff26;transform:translateY(-2px)}.source-card.aws-source:hover{border-color:var(--aws-color);box-shadow:0 4px 20px #ff990026}.source-card.azure-source:hover{border-color:var(--azure-color);box-shadow:0 4px 20px #0078d426}.source-card.gcp-source:hover{border-color:var(--gcp-color);box-shadow:0 4px 20px #4285f426}.source-logo{width:40px;height:40px;display:flex;align-items:center;justify-content:center}.source-logo svg{width:100%;height:100%}.source-name{color:var(--text-primary);font-weight:600;font-size:.95rem;text-align:center}.source-url{color:var(--text-muted);font-size:.8rem;text-align:center}.footer-disclaimer{color:var(--text-muted);font-size:.85rem;margin-top:.5rem}@media (max-width: 640px){.sources-grid{grid-template-columns:1fr}.source-card{flex-direction:row;text-align:left}.source-logo{width:32px;height:32px}}.excel-upload-container{width:100%}.upload-section{padding:2rem}.upload-header{text-align:center;margin-bottom:2rem}.upload-header h3{font-size:1.5rem;margin-bottom:.5rem;color:var(--text-primary)}.upload-subtitle{color:#fff;font-size:.95rem}.drop-zone{border:2px dashed rgba(139,92,246,.3);border-radius:var(--radius-lg);padding:3rem 2rem;text-align:center;cursor:pointer;transition:all .3s ease;background:#0003;margin-bottom:1.5rem}.drop-zone:hover{border-color:var(--accent-primary);background:#8b5cf60d}.drop-zone.dragging{border-color:var(--accent-secondary);background:#06b6d41a;border-style:solid;transform:scale(1.01)}.drop-zone.has-file{border-color:var(--success);background:#10b9810d;padding:1.5rem}.upload-icon{width:48px;height:48px;color:var(--accent-primary);margin-bottom:1rem;opacity:.8}.drop-text{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem}.drop-primary{font-size:1.1rem;color:var(--text-primary);font-weight:500}.drop-secondary{font-size:.9rem;color:#ffffffd9}.supported-formats{font-size:.8rem;color:#fffc}.file-preview{display:flex;align-items:center;gap:1rem;padding:.5rem}.file-icon{width:40px;height:40px;color:var(--success)}.file-info{display:flex;flex-direction:column;text-align:left;flex:1}.file-name{font-weight:500;color:var(--text-primary);font-size:.95rem}.file-size{font-size:.8rem;color:#ffffffd9}.remove-file-btn{background:#ef444433;border:1px solid rgba(239,68,68,.3);color:var(--error);width:32px;height:32px;border-radius:50%;font-size:1.2rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.remove-file-btn:hover{background:#ef44444d}.upload-error{display:flex;align-items:center;gap:.75rem;background:var(--error-bg);border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-sm);padding:.75rem 1rem;color:var(--error);font-size:.9rem;margin-bottom:1.5rem}.warning-icon{width:20px;height:20px;flex-shrink:0}.analyze-button{width:100%;padding:1.25rem;background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:#fff;font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:var(--accent-glow);margin-bottom:2rem}.analyze-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 0 30px #8b5cf6b3}.analyze-button:disabled{opacity:.5;cursor:not-allowed;filter:grayscale(.3)}.format-info{background:#0003;border-radius:var(--radius-md);padding:1.5rem;border:1px solid rgba(255,255,255,.03)}.format-info h4{font-size:.9rem;color:#fff;margin-bottom:1rem;text-transform:uppercase;letter-spacing:1px}.native-exports-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.native-export-item{background:#ffffff08;border-radius:var(--radius-sm);padding:1rem;border:1px solid rgba(255,255,255,.05);transition:all .2s}.native-export-item:hover{background:#ffffff0d;border-color:#ffffff1a}.native-export-item.aws-export{border-left:3px solid var(--aws-color)}.native-export-item.azure-export{border-left:3px solid var(--azure-color)}.native-export-item.gcp-export{border-left:3px solid var(--gcp-color)}.export-provider{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;font-weight:600;color:#fff}.export-provider svg{width:20px;height:20px}.export-sources{margin:0;padding-left:1.25rem;font-size:.8rem}.export-sources li{color:#ffffffd9;margin-bottom:.35rem}.export-sources code{font-family:Courier New,monospace;font-size:.7rem;background:#0000004d;padding:.15rem .4rem;border-radius:3px;color:var(--accent-secondary)}.columns-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.column-item{background:#ffffff08;border-radius:var(--radius-sm);padding:.75rem;border:1px solid rgba(255,255,255,.05)}.column-item.required{border-color:var(--accent-primary);background:#8b5cf61a}.column-name{display:block;font-family:Courier New,monospace;font-size:.85rem;color:var(--text-primary);margin-bottom:.25rem}.column-tag{font-size:.7rem;color:var(--accent-primary);text-transform:uppercase;font-weight:600}.column-desc{font-size:.75rem;color:#ffffffd9}.analysis-results{padding:2rem;animation:fadeIn .5s ease-out}.results-header-section{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.results-title-area h3{font-size:1.5rem;margin-bottom:.25rem}.results-count{font-size:.9rem;color:#ffffffd9}.new-upload-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#fff;padding:.5rem 1rem;border-radius:var(--radius-sm);font-size:.85rem;cursor:pointer;transition:all .2s}.new-upload-btn:hover{background:#ffffff1a;border-color:var(--accent-primary);color:var(--text-primary)}.analysis-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:2rem}.summary-card{background:#0003;border-radius:var(--radius-md);padding:1.25rem;border:1px solid rgba(255,255,255,.05);text-align:center}.summary-card.highlight{background:#10b9811a;border-color:#10b9814d}.summary-card-label{display:block;font-size:.75rem;color:#ffffffe6;text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem}.summary-card-value{font-size:1.4rem;font-weight:700;color:var(--text-primary)}.summary-card-value.savings{color:var(--success);text-shadow:0 0 10px rgba(16,185,129,.3)}.insights-section{background:#8b5cf61a;border:1px solid rgba(139,92,246,.2);border-radius:var(--radius-md);padding:1.25rem;margin-bottom:2rem}.insights-section h4{font-size:.9rem;color:var(--accent-primary);margin-bottom:.75rem}.recommendations-list{margin:0;padding-left:1.25rem}.recommendations-list li{color:#fff;font-size:.9rem;margin-bottom:.5rem}.instances-table-section{margin-bottom:2rem}.instances-table-section h4{font-size:1rem;margin-bottom:1rem;color:var(--text-primary)}.instances-table{background:#0003;border-radius:var(--radius-md);overflow:hidden;border:1px solid rgba(255,255,255,.05)}.table-header{display:grid;grid-template-columns:30px 80px 1fr 120px 50px 100px 100px 90px 90px;gap:.5rem;padding:.75rem 1rem;background:#0000004d;border-bottom:1px solid rgba(255,255,255,.05);font-size:.75rem;color:#ffffffe6;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.table-row-wrapper{border-bottom:1px solid rgba(255,255,255,.03)}.table-row-wrapper:last-child{border-bottom:none}.table-row{display:grid;grid-template-columns:30px 80px 1fr 120px 50px 100px 100px 90px 90px;gap:.5rem;padding:.75rem 1rem;align-items:center;cursor:pointer;transition:background .2s}.table-row:hover{background:#ffffff08}.table-row.expanded{background:#8b5cf60d}.col-expand{display:flex;align-items:center;justify-content:center}.chevron-icon{width:16px;height:16px;color:#ffffffe6;transition:transform .2s}.chevron-icon.expanded{transform:rotate(180deg)}.col-provider{display:flex;align-items:center;gap:.5rem}.provider-mini-logo{width:24px;height:24px}.provider-name-small{font-size:.75rem;color:#fff;font-weight:600}.col-instance{display:flex;flex-direction:column}.instance-type-name{font-weight:500;color:var(--text-primary);font-size:.9rem}.instance-region{font-size:.75rem;color:#ffffffd9}.col-specs{font-size:.85rem;color:#fff}.unknown-specs{color:#fffc}.col-qty{text-align:center;font-weight:500}.col-excel,.col-public{font-size:.9rem;font-weight:500}.col-status{display:flex;justify-content:center}.status-badge{font-size:.7rem;padding:.25rem .5rem;border-radius:4px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.status-good{background:#10b98133;color:var(--success);border:1px solid rgba(16,185,129,.3)}.status-badge.status-bad{background:#ef444433;color:var(--error);border:1px solid rgba(239,68,68,.3)}.status-badge.status-fair{background:#fbbf2433;color:#fbbf24;border:1px solid rgba(251,191,36,.3)}.status-badge.status-unknown{background:#6b728033;color:#fff;border:1px solid rgba(107,114,128,.3)}.col-savings{text-align:right}.savings-value{color:var(--success);font-weight:600}.alternatives-section{background:#0003;padding:1rem 1rem 1rem 3rem;border-top:1px solid rgba(255,255,255,.05)}.alternatives-header{font-size:.8rem;color:#ffffffe6;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.5px}.alternatives-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem}.alternative-card{background:#ffffff08;border-radius:var(--radius-sm);padding:.75rem;border:1px solid rgba(255,255,255,.05);position:relative}.alternative-card.cheapest{border-color:var(--success);background:#10b9810d}.cheapest-badge{position:absolute;top:-8px;right:8px;background:var(--success);color:#fff;font-size:.6rem;padding:.15rem .4rem;border-radius:3px;font-weight:700;text-transform:uppercase}.alt-provider{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#ffffffe6;margin-bottom:.5rem}.alt-provider svg{width:18px;height:18px}.alt-instance{font-weight:600;color:var(--text-primary);font-size:.9rem;margin-bottom:.25rem}.alt-specs{font-size:.8rem;color:#fff;margin-bottom:.5rem}.alt-price{font-weight:700;color:var(--text-primary);font-size:1rem}.alternative-card.cheapest .alt-price{color:var(--success)}.alt-region{font-size:.7rem;color:#ffffffd9;margin-top:.25rem}.provider-distribution{background:#0003;border-radius:var(--radius-md);padding:1.5rem;border:1px solid rgba(255,255,255,.05)}.provider-distribution h4{font-size:.9rem;color:#fff;margin-bottom:1rem}.distribution-bars{display:flex;flex-direction:column;gap:.75rem}.distribution-item{display:grid;grid-template-columns:100px 1fr 50px;gap:1rem;align-items:center}.dist-label{display:flex;align-items:center;gap:.5rem}.dist-label svg{width:20px;height:20px}.dist-label span:not(.dist-count){font-size:.8rem;color:#fff;font-weight:500}.dist-count{font-size:.75rem;color:#ffffffd9;margin-left:auto}.dist-bar-container{height:8px;background:#ffffff0d;border-radius:4px;overflow:hidden}.dist-bar{height:100%;border-radius:4px;transition:width .5s ease}.dist-bar.aws{background:var(--aws-color)}.dist-bar.azure{background:var(--azure-color)}.dist-bar.gcp{background:var(--gcp-color)}.dist-bar.unknown{background:#6b7280}.dist-percent{font-size:.8rem;color:#ffffffe6;text-align:right}.upload-info-section{margin-top:2rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.08)}.upload-info-section h4{font-size:1.1rem;color:var(--text-primary);margin-bottom:1.25rem}.upload-benefits{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.benefit-item{display:flex;gap:1rem;padding:1rem;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-md);transition:all .3s ease}.benefit-item:hover{background:#ffffff0a;border-color:#8b5cf633}.benefit-icon{font-size:1.5rem;line-height:1;flex-shrink:0}.benefit-content{display:flex;flex-direction:column;gap:.25rem}.benefit-content strong{color:var(--text-primary);font-size:.95rem}.benefit-content p{color:var(--text-muted);font-size:.85rem;line-height:1.5;margin:0}.upload-privacy-note{background:#10b98114;border:1px solid rgba(16,185,129,.2);border-radius:var(--radius-md);padding:1rem;font-size:.85rem;color:var(--text-secondary);line-height:1.5}.upload-privacy-note strong{color:var(--success)}@media (max-width: 900px){.table-header,.table-row{grid-template-columns:30px 60px 1fr 50px 80px 80px}.col-specs,.col-savings,.col-public{display:none}.summary-card-value{font-size:1.2rem}}@media (max-width: 600px){.upload-section,.analysis-results{padding:1.25rem}.drop-zone{padding:2rem 1rem}.columns-grid{grid-template-columns:1fr 1fr}.table-header,.table-row{grid-template-columns:1fr 50px 80px 80px;font-size:.8rem}.col-expand,.col-provider{display:none}.alternatives-section{padding-left:1rem}.alternatives-grid{grid-template-columns:1fr}.benefit-item{flex-direction:column;gap:.5rem}}.legal-page{min-height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e);padding:20px}.back-button{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:8px;cursor:pointer;font-size:1rem;transition:all .3s ease;margin-bottom:30px}.back-button svg{width:20px;height:20px}.back-button:hover{background:#fff3;transform:translate(-5px)}.legal-content{max-width:900px;margin:0 auto;background:#fffffffa;border-radius:16px;padding:50px 60px;box-shadow:0 20px 60px #0000004d;color:#333;line-height:1.8}.legal-content h1{font-size:2.5rem;color:#1a1a2e;margin-bottom:10px;border-bottom:3px solid #8B5CF6;padding-bottom:15px}.legal-content .last-updated{color:#666;font-style:italic;margin-bottom:40px}.legal-content .section-intro{font-size:1.15rem;color:#555;margin-bottom:40px;line-height:1.8}.legal-content h2{font-size:1.5rem;color:#1a1a2e;margin-top:40px;margin-bottom:20px;padding-bottom:10px;border-bottom:1px solid #eee}.legal-content h3{font-size:1.2rem;color:#2563eb;margin-top:25px;margin-bottom:15px}.legal-content section{margin-bottom:30px}.legal-content p{margin-bottom:15px;color:#444}.legal-content ul{margin:15px 0;padding-left:25px}.legal-content li{margin-bottom:10px;color:#444}.legal-content li strong{color:#1a1a2e}.legal-content a{color:#8b5cf6;text-decoration:none;transition:color .3s ease}.legal-content a:hover{color:#6d28d9;text-decoration:underline}.contact-info{list-style:none;background:#f8f9fa;padding:20px;border-radius:8px;margin-top:15px}.contact-info li{padding:8px 0}.compliance-notice,.acceptance-notice{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);padding:25px;border-radius:12px;margin-top:40px;border-left:4px solid #8B5CF6}.compliance-notice h2,.acceptance-notice h2{margin-top:0;border-bottom:none;padding-bottom:0}.contact-page .contact-section{margin-bottom:50px}.contact-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:25px;margin-top:30px}.contact-card{background:linear-gradient(135deg,#f8f9fa,#fff);padding:30px;border-radius:12px;border:1px solid #e5e7eb;text-align:center;transition:all .3s ease}.contact-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #0000001a;border-color:#8b5cf6}.contact-card__icon{width:60px;height:60px;background:linear-gradient(135deg,#8b5cf6,#6d28d9);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.contact-card__icon svg{width:28px;height:28px;color:#fff}.contact-card h3{margin:0 0 10px;color:#1a1a2e;font-size:1.1rem}.contact-card p{color:#666;font-size:.9rem;margin-bottom:15px}.contact-link{display:inline-block;color:#8b5cf6!important;font-weight:600;font-size:.95rem}.team-info{background:#f8f9fa;padding:25px;border-radius:12px;margin-top:25px}.team-info h3{margin-top:0}.team-info ul{list-style:none;padding-left:0}.team-info li{padding:10px 0;border-bottom:1px solid #eee}.team-info li:last-child{border-bottom:none}.report-link{display:inline-block;background:linear-gradient(135deg,#8b5cf6,#6d28d9);color:#fff!important;padding:12px 24px;border-radius:8px;margin-top:15px;font-weight:600;transition:all .3s ease}.report-link:hover{transform:translateY(-2px);box-shadow:0 5px 20px #8b5cf666;text-decoration:none!important}.social-section{background:linear-gradient(135deg,#1a1a2e,#16213e);padding:30px;border-radius:12px;color:#fff;margin-top:40px}.social-section h2{color:#fff;border-bottom-color:#fff3;margin-top:0}.social-section p{color:#ffffffe6}.social-note{background:#ffffff1a;padding:20px;border-radius:8px;margin-top:20px}.social-note p{margin:0;font-style:italic}.about-us-section{margin-top:40px}.creator-link{color:#8b5cf6;text-decoration:none;font-weight:600;transition:color .3s ease}.creator-link:hover{color:#06b6d4;text-decoration:underline}@media (max-width: 768px){.legal-content{padding:30px 25px}.legal-content h1{font-size:1.8rem}.legal-content h2{font-size:1.3rem}.contact-cards{grid-template-columns:1fr}}*{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,#667eea,#764ba2);min-height:100vh;padding:20px}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
