.ip-hero{align-items:center;min-height:50vh;padding:8rem 0 4rem;display:flex;position:relative;overflow:hidden}.ip-hero-bg{z-index:0;position:absolute;inset:0;overflow:hidden}.ip-hero-orb{filter:blur(80px);opacity:.5;border-radius:50%;position:absolute}.ip-hero-orb-1{background:linear-gradient(135deg, hsl(var(--primary)) 0%, hsl(var(--accent)) 100%);width:500px;height:500px;animation:8s ease-in-out infinite float;top:-150px;right:-100px}.ip-hero-orb-2{background:linear-gradient(135deg, hsl(var(--accent)) 0%, hsl(var(--primary)) 100%);width:350px;height:350px;animation:10s ease-in-out infinite reverse float;bottom:-100px;left:-100px}@keyframes float{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-20px)rotate(5deg)}}.ip-hero-grid{background-image:linear-gradient(to right, hsl(var(--foreground) / .03) 1px, transparent 1px), linear-gradient(to bottom, hsl(var(--foreground) / .03) 1px, transparent 1px);background-size:40px 40px;position:absolute;inset:0}.ip-hero-content{z-index:1;text-align:center;max-width:800px;margin:0 auto;position:relative}.ip-hero-badge{background:hsl(var(--primary) / .1);border:1px solid hsl(var(--primary) / .2);color:hsl(var(--primary));border-radius:9999px;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.5rem 1rem;font-size:.875rem;display:inline-flex}.ip-hero-badge .badge-dot{background:hsl(var(--primary));border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}.ip-hero-title{color:hsl(var(--foreground));margin-bottom:1rem;font-size:clamp(2.5rem,6vw,4.5rem);font-weight:800;line-height:1.1}.ip-hero-subtitle{color:hsl(var(--muted-foreground));max-width:600px;margin:0 auto 2rem;font-size:1.25rem;line-height:1.6}.ip-hero-buttons{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.section-header{text-align:center;margin-bottom:3rem}.section-title{color:hsl(var(--foreground));margin-bottom:1rem;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700}.section-subtitle{color:hsl(var(--muted-foreground));max-width:600px;margin:0 auto;font-size:1.125rem}.ip-lookup-section{background:hsl(var(--background));padding:4rem 0}.ip-lookup-header{text-align:center;margin-bottom:3rem}.ip-lookup-grid{grid-template-columns:1fr 1fr;gap:2rem;max-width:1200px;margin:0 auto;display:grid}@media (width<=1024px){.ip-lookup-grid{grid-template-columns:1fr}}.ip-result-card,.ip-manual-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:16px;transition:all .3s;overflow:hidden}.ip-result-card:hover,.ip-manual-card:hover{border-color:hsl(var(--primary) / .3);box-shadow:0 20px 40px -20px hsl(var(--primary) / .15)}.ip-card-header{border-bottom:1px solid hsl(var(--border));background:hsl(var(--muted) / .3);justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.ip-card-title-group{align-items:center;gap:1rem;display:flex}.ip-card-icon{background:linear-gradient(135deg, hsl(var(--primary)) 0%, hsl(var(--accent)) 100%);color:#fff;border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.ip-card-header h3{color:hsl(var(--foreground));margin-bottom:.25rem;font-size:1.125rem;font-weight:600}.ip-card-header p{color:hsl(var(--muted-foreground));font-size:.875rem}.ip-address-display{color:hsl(var(--primary));font-family:JetBrains Mono,monospace;font-size:.875rem}.ip-refresh-btn{background:hsl(var(--secondary));border:1px solid hsl(var(--border));width:40px;height:40px;color:hsl(var(--muted-foreground));cursor:pointer;border-radius:10px;justify-content:center;align-items:center;transition:all .2s;display:flex}.ip-refresh-btn:hover{background:hsl(var(--primary));color:#fff;border-color:hsl(var(--primary))}.ip-refresh-btn.loading svg{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ip-loading{padding:1.5rem}.ip-skeleton-row{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.ip-skeleton-row:last-child{margin-bottom:0}.ip-skeleton{background:linear-gradient(90deg, hsl(var(--muted)) 25%, hsl(var(--muted) / .5) 50%, hsl(var(--muted)) 75%);background-size:200% 100%;border-radius:6px;animation:1.5s infinite shimmer}.ip-skeleton-label{width:100px;height:16px}.ip-skeleton-value{flex:1;height:20px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ip-details{padding:1.5rem}.ip-detail-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}@media (width<=480px){.ip-detail-grid{grid-template-columns:1fr}}.ip-detail-item{background:hsl(var(--muted) / .3);border-radius:10px;flex-direction:column;gap:.25rem;padding:.75rem;display:flex}.ip-detail-label{color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.5px;font-size:.75rem;font-weight:500}.ip-detail-value{color:hsl(var(--foreground));font-family:JetBrains Mono,monospace;font-size:.95rem;font-weight:600}.ip-flags-row{border-top:1px solid hsl(var(--border));gap:1rem;margin-top:1.5rem;padding-top:1.5rem;display:flex}.ip-flag-item{background:hsl(var(--muted) / .3);color:hsl(var(--muted-foreground));border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;display:flex}.ip-flag-indicator{background:hsl(var(--muted-foreground));border-radius:50%;width:10px;height:10px}.ip-flag-item.active .ip-flag-indicator{background:hsl(var(--destructive));box-shadow:0 0 8px hsl(var(--destructive) / .5)}.ip-flag-item.inactive .ip-flag-indicator{background:hsl(var(--accent));box-shadow:0 0 8px hsl(var(--accent) / .5)}.ip-error{text-align:center;padding:3rem 1.5rem}.ip-error-icon{background:hsl(var(--destructive) / .1);width:60px;height:60px;color:hsl(var(--destructive));border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1rem;display:flex}.ip-error p{color:hsl(var(--muted-foreground));margin-bottom:1rem}.ip-manual-form{border-bottom:1px solid hsl(var(--border));padding:1.5rem}.ip-input-wrapper{gap:.75rem;display:flex}@media (width<=480px){.ip-input-wrapper{flex-direction:column}}.ip-input{background:hsl(var(--background));border:1px solid hsl(var(--border));color:hsl(var(--foreground));border-radius:10px;flex:1;padding:.875rem 1rem;font-family:JetBrains Mono,monospace;font-size:.95rem;transition:all .2s}.ip-input:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 3px hsl(var(--primary) / .1);outline:none}.ip-input::placeholder{color:hsl(var(--muted-foreground));font-family:Inter,sans-serif}.ip-lookup-btn{background:linear-gradient(135deg, hsl(var(--primary)) 0%, hsl(var(--accent)) 100%);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:10px;align-items:center;gap:.5rem;padding:.875rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .3s;display:inline-flex}.ip-lookup-btn:hover{box-shadow:0 10px 30px -10px hsl(var(--primary) / .5);transform:translateY(-2px)}.ip-lookup-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.ip-manual-results{padding:1.5rem}.ip-manual-placeholder{text-align:center;padding:3rem 1.5rem}.ip-manual-placeholder .placeholder-icon{background:hsl(var(--muted) / .5);width:60px;height:60px;color:hsl(var(--muted-foreground));border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1rem;display:flex}.ip-manual-placeholder p{color:hsl(var(--muted-foreground));font-size:.95rem}.ip-features-section{background:hsl(var(--muted) / .3);padding:6rem 0}.ip-features-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;max-width:1200px;margin:0 auto;display:grid}.ip-feature-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:16px;padding:2rem;transition:all .3s}.ip-feature-card:hover{border-color:hsl(var(--primary) / .3);box-shadow:0 20px 40px -20px hsl(var(--primary) / .15);transform:translateY(-4px)}.ip-feature-icon{background:linear-gradient(135deg, hsl(var(--primary) / .1) 0%, hsl(var(--accent) / .1) 100%);width:56px;height:56px;color:hsl(var(--primary));border-radius:14px;justify-content:center;align-items:center;margin-bottom:1.25rem;display:flex}.ip-feature-card h3{color:hsl(var(--foreground));margin-bottom:.75rem;font-size:1.125rem;font-weight:600}.ip-feature-card p{color:hsl(var(--muted-foreground));font-size:.95rem;line-height:1.6}.ip-examples-section{background:hsl(var(--background));padding:6rem 0}.ip-code-container{background:hsl(var(--code-bg));max-width:800px;box-shadow:0 25px 50px -12px hsl(var(--primary) / .2);border-radius:16px;margin:0 auto;overflow:hidden}.ip-code-tabs{background:hsl(var(--code-bg));border-bottom:1px solid hsl(var(--foreground) / .1);padding:0 1rem;display:flex}.ip-code-tab{color:hsl(var(--code-foreground) / .6);cursor:pointer;background:0 0;border:none;padding:1rem 1.5rem;font-size:.875rem;font-weight:500;transition:all .2s;position:relative}.ip-code-tab:hover{color:hsl(var(--code-foreground))}.ip-code-tab.active{color:hsl(var(--primary))}.ip-code-tab.active:after{content:"";background:hsl(var(--primary));height:2px;position:absolute;bottom:0;left:0;right:0}.ip-code-block,.ip-response-block{padding:1.5rem}.ip-code-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.ip-code-label{text-transform:uppercase;letter-spacing:.5px;color:hsl(var(--code-foreground) / .5);font-size:.75rem;font-weight:600}.ip-copy-btn{background:hsl(var(--foreground) / .1);color:hsl(var(--code-foreground) / .7);cursor:pointer;border:none;border-radius:6px;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.75rem;transition:all .2s;display:inline-flex}.ip-copy-btn:hover{background:hsl(var(--foreground) / .15);color:hsl(var(--code-foreground))}.ip-copy-btn.copied{background:hsl(var(--accent) / .2);color:hsl(var(--accent))}.ip-code-block pre,.ip-response-block pre{color:hsl(var(--code-foreground));margin:0;font-family:JetBrains Mono,monospace;font-size:.875rem;line-height:1.6;overflow-x:auto}.ip-response-block{border-top:1px solid hsl(var(--foreground) / .1);background:hsl(var(--code-bg) / .5)}.ip-usecases-section{background:hsl(var(--muted) / .3);padding:6rem 0}.ip-usecases-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;max-width:1200px;margin:0 auto;display:grid}.ip-usecase-card{background:hsl(var(--card));border:1px solid hsl(var(--border));text-align:center;border-radius:16px;padding:2rem;transition:all .3s}.ip-usecase-card:hover{border-color:hsl(var(--primary) / .3);box-shadow:0 20px 40px -20px hsl(var(--primary) / .15);transform:translateY(-4px)}.ip-usecase-icon{background:linear-gradient(135deg, hsl(var(--primary)) 0%, hsl(var(--accent)) 100%);color:#fff;border-radius:16px;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 1.25rem;display:flex}.ip-usecase-card h3{color:hsl(var(--foreground));margin-bottom:.75rem;font-size:1.125rem;font-weight:600}.ip-usecase-card p{color:hsl(var(--muted-foreground));font-size:.95rem;line-height:1.6}.ip-pricing-section{background:hsl(var(--background));padding:6rem 0}.ip-pricing-card{text-align:center;border-radius:24px;margin:0 auto;padding:3rem}.ip-pricing-content h2{color:hsl(var(--foreground));margin-bottom:.75rem;font-size:2rem;font-weight:700}.ip-pricing-content>p{color:hsl(var(--muted-foreground));margin-bottom:2.5rem;font-size:1.125rem}.ip-pricing-tiers{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2.5rem;display:grid}@media (width<=768px){.ip-pricing-tiers{grid-template-columns:1fr}}.ip-pricing-tier{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:16px;padding:1.5rem;position:relative}.ip-pricing-tier.featured{border-color:hsl(var(--primary));box-shadow:0 10px 40px -10px hsl(var(--primary) / .3)}.ip-pricing-badge{background:linear-gradient(135deg, hsl(var(--primary)) 0%, hsl(var(--accent)) 100%);color:#fff;border-radius:9999px;padding:.25rem .75rem;font-size:.75rem;font-weight:600;position:absolute;top:-10px;left:50%;transform:translate(-50%)}.ip-pricing-tier h4{color:hsl(var(--foreground));margin-bottom:.5rem;font-size:1rem;font-weight:600}.ip-pricing-value{color:hsl(var(--primary));margin-bottom:.5rem;font-size:2rem;font-weight:700}.ip-pricing-value span{color:hsl(var(--muted-foreground));font-size:.875rem;font-weight:400}.ip-pricing-tier p{color:hsl(var(--muted-foreground));font-size:.875rem}.ip-pricing-buttons{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.ip-faq-section{background:hsl(var(--muted) / .3);padding:6rem 0}.ip-faq-list{max-width:800px;margin:0 auto}.ip-faq-item{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:12px;margin-bottom:1rem;transition:all .3s;overflow:hidden}.ip-faq-item:hover{border-color:hsl(var(--primary) / .3)}.ip-faq-trigger{width:100%;color:hsl(var(--foreground));text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;font-size:1rem;font-weight:500;transition:all .2s;display:flex}.ip-faq-trigger:hover{background:hsl(var(--muted) / .3)}.ip-faq-trigger svg{color:hsl(var(--muted-foreground));transition:transform .3s}.ip-faq-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.ip-faq-content{padding:0 1.5rem 1.25rem;display:none}.ip-faq-content p{color:hsl(var(--muted-foreground));font-size:.95rem;line-height:1.7}.ip-faq-item.open .ip-faq-content{animation:.3s fadeIn;display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.footer{background:hsl(var(--card));border-top:1px solid hsl(var(--border));padding:4rem 0 2rem}.footer-grid{grid-template-columns:1fr 2fr;gap:4rem;margin-bottom:3rem;display:grid}@media (width<=768px){.footer-grid{grid-template-columns:1fr;gap:2rem}}.footer-brand .logo{margin-bottom:1rem}.footer-desc{color:hsl(var(--muted-foreground));font-size:.95rem;line-height:1.6}.footer-links{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}@media (width<=480px){.footer-links{grid-template-columns:repeat(2,1fr)}}.footer-column h4{color:hsl(var(--foreground));text-transform:uppercase;letter-spacing:.5px;margin-bottom:1rem;font-size:.875rem;font-weight:600}.footer-column ul{list-style:none}.footer-column li{margin-bottom:.5rem}.footer-column a{color:hsl(var(--muted-foreground));font-size:.875rem;transition:color .2s}.footer-column a:hover{color:hsl(var(--primary))}.footer-bottom{border-top:1px solid hsl(var(--border));text-align:center;padding-top:2rem}.footer-bottom p{color:hsl(var(--muted-foreground));font-size:.875rem}
