:root{--category-primary:#10b981;--category-primary-light:#34d399;--category-primary-dark:#059669;--category-surface:#ffffff;--category-surface-elevated:#f8fafc;--category-muted:#64748b;--category-border:#e2e8f0;--category-dark-color:#0f172a;--category-light-color:#475569;--category-light-border:#e2e8f0;--category-hero-bg:#0a1628;--category-hero-text:#e2e8f0;--shadow-sm:0 1px 2px 0 rgb(0 0 0 / 0.05);--shadow-md:0 4px 6px -1px rgb(0 0 0 / 0.07), 0 2px 4px -2px rgb(0 0 0 / 0.05);--shadow-lg:0 10px 15px -3px rgb(0 0 0 / 0.08), 0 4px 6px -4px rgb(0 0 0 / 0.05);--shadow-xl:0 20px 25px -5px rgb(0 0 0 / 0.08), 0 8px 10px -6px rgb(0 0 0 / 0.04);--primary:var(--category-primary);--primary-dark:var(--category-primary-dark);--border:var(--category-border);--surface:var(--category-surface);--shadow-soft:var(--shadow-lg);--surface-muted:#f0fdf4;--text-main:var(--category-dark-color);--text-muted:var(--category-light-color);}
@keyframes ipFadeUp{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}
@keyframes ipFloat{0%,100%{transform:translateY(0);}50%{transform:translateY(-10px);}}
@keyframes ipPulseGlow{0%,100%{box-shadow:0 0 24px rgba(16,185,129,0.12),0 25px 50px -12px rgba(0,0,0,0.4);}50%{box-shadow:0 0 40px rgba(16,185,129,0.22),0 25px 50px -12px rgba(0,0,0,0.4);}}
@keyframes ipSlideIn{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:translateY(0);}}
@keyframes ipCursorBlink{0%,100%{opacity:1;}50%{opacity:0;}}
@keyframes ipMeshDrift{0%{transform:translate(0,0);}100%{transform:translate(32px,32px);}}
.ip-category-page{background:var(--category-surface-elevated);}
.ip-hero{position:relative;padding:72px 0 80px;background:linear-gradient(165deg,#0a1628 0%,#0f2744 45%,#0a1f35 100%);color:var(--category-hero-text);overflow:hidden;}
.ip-hero-mesh{position:absolute;inset:0;background-image:linear-gradient(rgba(16,185,129,0.06) 1px,transparent 1px),linear-gradient(90deg,rgba(16,185,129,0.06) 1px,transparent 1px);background-size:40px 40px;animation:ipMeshDrift 20s linear infinite;opacity:0.5;}
.ip-hero-glow{position:absolute;width:400px;height:400px;border-radius:50%;filter:blur(100px);opacity:0.35;pointer-events:none;}
.ip-hero-glow--left{top:-100px;left:-100px;background:radial-gradient(circle,#10b981 0%,transparent 70%);}
.ip-hero-glow--right{bottom:-120px;right:-80px;background:radial-gradient(circle,#06b6d4 0%,transparent 70%);}
.ip-hero-badge{display:inline-flex;align-items:center;gap:0.5rem;padding:0.35rem 1rem;border-radius:999px;font-size:0.7rem;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--category-primary-light);border:1px solid rgba(16,185,129,0.35);background:rgba(16,185,129,0.1);opacity:0;animation:ipFadeUp 0.5s ease forwards;}
.ip-hero-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--category-primary);box-shadow:0 0 8px var(--category-primary);}
.ip-hero-title{font-size:clamp(2rem,4.5vw,3.25rem);font-weight:800;line-height:1.1;letter-spacing:-0.03em;margin:1.25rem 0 1rem;color:#f8fafc;opacity:0;animation:ipFadeUp 0.5s ease forwards;animation-delay:0.1s;}
.ip-hero-lead{font-size:1.0625rem;line-height:1.7;color:#94a3b8;max-width:540px;margin-bottom:1.75rem;opacity:0;animation:ipFadeUp 0.5s ease forwards;animation-delay:0.2s;}
.ip-hero-actions{display:flex;flex-wrap:wrap;gap:0.75rem;margin-bottom:2rem;opacity:0;animation:ipFadeUp 0.5s ease forwards;animation-delay:0.3s;}
.ip-btn{display:inline-flex;align-items:center;justify-content:center;padding:0.75rem 1.5rem;border-radius:12px;font-size:0.9375rem;font-weight:600;text-decoration:none;transition:all 0.25s ease;}
.ip-btn--primary{background:linear-gradient(135deg,var(--category-primary),var(--category-primary-dark));color:#fff;box-shadow:0 4px 14px rgba(16,185,129,0.35);}
.ip-btn--primary:hover{color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px rgba(16,185,129,0.45);}
.ip-btn--ghost{border:1.5px solid rgba(148,163,184,0.4);color:#e2e8f0;background:rgba(255,255,255,0.05);}
.ip-btn--ghost:hover{color:#fff;border-color:var(--category-primary-light);background:rgba(16,185,129,0.1);}
.ip-hero-stats{display:flex;flex-wrap:wrap;gap:1rem;margin:0;opacity:0;animation:ipFadeUp 0.5s ease forwards;animation-delay:0.4s;}
.ip-stat{flex:1;min-width:100px;padding:1rem 1.25rem;border-radius:14px;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);}
.ip-stat dt{font-size:0.65rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:#64748b;margin-bottom:0.25rem;}
.ip-stat dd{font-size:1.25rem;font-weight:700;color:#f1f5f9;margin:0;}
.ip-terminal{background:linear-gradient(145deg,#0f172a 0%,#1e293b 100%);border:1px solid rgba(255,255,255,0.1);border-radius:16px;overflow:hidden;animation:ipFloat 7s ease-in-out infinite,ipPulseGlow 5s ease-in-out infinite,ipFadeUp 0.6s ease forwards;animation-delay:0.3s;opacity:0;animation-fill-mode:forwards;}
.ip-terminal-bar{display:flex;align-items:center;gap:0.5rem;padding:0.875rem 1.25rem;background:rgba(0,0,0,0.25);border-bottom:1px solid rgba(255,255,255,0.06);}
.ip-terminal-dot{width:10px;height:10px;border-radius:50%;}
.ip-terminal-dot--red{background:#ef4444;}
.ip-terminal-dot--yellow{background:#eab308;}
.ip-terminal-dot--green{background:#22c55e;}
.ip-terminal-label{margin-left:auto;font-size:0.7rem;color:#64748b;font-family:'SF Mono','Fira Code',monospace;}
.ip-terminal-body{padding:1.25rem 1.5rem;font-family:'SF Mono','Fira Code',monospace;font-size:0.8125rem;line-height:1.8;}
.ip-terminal-line{margin:0;color:#94a3b8;}
.ip-terminal-prompt{color:var(--category-primary-light);margin-right:0.5rem;}
.ip-terminal-output{color:#6ee7b7;padding-left:1.25rem;}
.ip-terminal-output.is-typing{opacity:0.6;}
.ip-cursor-blink{animation:ipCursorBlink 1s step-end infinite;color:var(--category-primary-light);}
.ip-tools-section{padding:4rem 0 5rem;}
.ip-tools-header{margin-bottom:2.5rem;}
.ip-tools-heading{margin-bottom:1.5rem;}
.ip-section-eyebrow{display:block;font-size:0.7rem;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--category-primary);margin-bottom:0.5rem;}
.ip-section-title{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:800;color:var(--category-dark-color);letter-spacing:-0.02em;margin-bottom:0.75rem;}
.ip-section-subtitle{font-size:1.0625rem;color:var(--category-light-color);line-height:1.7;max-width:640px;margin:0;}
.ip-tools-controls{display:flex;flex-direction:column;gap:1rem;}
.ip-search-wrap{position:relative;display:flex;align-items:center;}
.ip-search-icon{position:absolute;left:1rem;color:var(--category-muted);pointer-events:none;}
.ip-search-input{width:100%;padding:0.875rem 1rem 0.875rem 2.75rem;border-radius:12px;border:1.5px solid var(--category-border);font-size:0.9375rem;background:var(--category-surface);color:var(--category-dark-color);transition:border-color 0.2s ease,box-shadow 0.2s ease;}
.ip-search-input:focus{outline:none;border-color:var(--category-primary);box-shadow:0 0 0 3px rgba(16,185,129,0.15);}
.ip-filter-pills{display:flex;flex-wrap:wrap;gap:0.5rem;}
.ip-filter-pill{padding:0.5rem 1.125rem;border-radius:999px;font-size:0.8125rem;font-weight:600;color:var(--category-light-color);background:var(--category-surface);border:1.5px solid var(--category-border);cursor:pointer;transition:all 0.2s ease;}
.ip-filter-pill:hover{border-color:var(--category-primary);color:var(--category-primary-dark);}
.ip-filter-pill.is-active{background:var(--category-primary);border-color:var(--category-primary);color:#fff;}
.ip-tools-empty{text-align:center;color:var(--category-muted);padding:2rem;font-size:1rem;}
.ip-tool-col{opacity:0;animation:ipSlideIn 0.45s ease forwards;}
.ip-tool-col:nth-child(1){animation-delay:0.05s;}
.ip-tool-col:nth-child(2){animation-delay:0.1s;}
.ip-tool-col:nth-child(3){animation-delay:0.15s;}
.ip-tool-col:nth-child(4){animation-delay:0.2s;}
.ip-tool-col:nth-child(5){animation-delay:0.25s;}
.ip-tool-col:nth-child(6){animation-delay:0.3s;}
.ip-tool-col:nth-child(7){animation-delay:0.35s;}
.ip-tool-col:nth-child(8){animation-delay:0.4s;}
.ip-tool-col:nth-child(9){animation-delay:0.45s;}
.ip-tool-col:nth-child(10){animation-delay:0.5s;}
.ip-tool-col:nth-child(11){animation-delay:0.55s;}
.ip-tool-col:nth-child(12){animation-delay:0.6s;}
.ip-tool-col:nth-child(13){animation-delay:0.65s;}
.ip-tool-col:nth-child(14){animation-delay:0.7s;}
.ip-tool-col:nth-child(15){animation-delay:0.75s;}
.ip-tool-col:nth-child(16){animation-delay:0.8s;}
.ip-tool-col:nth-child(17){animation-delay:0.85s;}
.ip-tool-col:nth-child(18){animation-delay:0.9s;}
.ip-tool-col.is-hidden{display:none;}
.ip-tool-card{position:relative;display:flex;flex-direction:column;height:100%;padding:1.75rem 1.5rem;text-decoration:none;background:var(--category-surface);border-radius:16px;border:1.5px solid var(--category-border);box-shadow:var(--shadow-sm);transition:all 0.3s cubic-bezier(0.4,0,0.2,1);overflow:hidden;}
.ip-tool-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--category-primary),var(--category-primary-light));transform:scaleX(0);transform-origin:left;transition:transform 0.3s ease;}
.ip-tool-card:hover{transform:translateY(-5px);box-shadow:0 12px 24px rgba(16,185,129,0.12),var(--shadow-md);border-color:rgba(16,185,129,0.3);}
.ip-tool-card:hover::before{transform:scaleX(1);}
.ip-tool-tag{position:absolute;top:1rem;right:1rem;font-size:0.65rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;padding:0.25rem 0.6rem;border-radius:6px;background:var(--surface-muted);color:var(--category-primary-dark);}
.ip-tool-icon{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,rgba(16,185,129,0.12),rgba(16,185,129,0.04));border:1px solid rgba(16,185,129,0.1);display:grid;place-items:center;margin-bottom:1.25rem;transition:transform 0.3s ease;}
.ip-tool-card:hover .ip-tool-icon{transform:scale(1.06);}
.ip-tool-icon img{width:32px;height:32px;object-fit:contain;}
.ip-tool-name{font-size:1.0625rem;font-weight:700;color:var(--category-dark-color);margin-bottom:0.5rem;line-height:1.3;transition:color 0.2s ease;}
.ip-tool-card:hover .ip-tool-name{color:var(--category-primary-dark);}
.ip-tool-desc{font-size:0.875rem;color:var(--category-light-color);line-height:1.55;margin-bottom:1.25rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex:1;}
.ip-tool-cta{display:inline-flex;align-items:center;gap:0.4rem;font-size:0.8125rem;font-weight:600;color:var(--category-primary);margin-top:auto;}
.ip-tool-cta svg{transition:transform 0.25s ease;}
.ip-tool-card:hover .ip-tool-cta svg{transform:translateX(4px);}
.ip-capabilities{padding:5rem 0;background:var(--category-surface);}
.ip-capabilities-header{text-align:center;margin-bottom:3rem;}
.ip-capabilities-header .ip-section-subtitle{margin:0 auto;}
.ip-cap-card{height:100%;padding:2rem 1.75rem;border-radius:18px;background:var(--category-surface-elevated);border:1.5px solid var(--category-border);transition:all 0.3s ease;}
.ip-cap-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:rgba(16,185,129,0.25);}
.ip-cap-icon{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,rgba(16,185,129,0.14),rgba(16,185,129,0.05));border:1px solid rgba(16,185,129,0.12);display:grid;place-items:center;margin-bottom:1.25rem;color:var(--category-primary);}
.ip-cap-title{font-size:1.125rem;font-weight:700;color:var(--category-dark-color);margin-bottom:0.5rem;}
.ip-cap-text{font-size:0.9375rem;color:var(--category-light-color);line-height:1.6;margin:0;}
.ip-guide{padding:4rem 0 1rem;}
.ip-guide-card,.ip-limit-card,.ip-tip-card{background:var(--category-surface);border-radius:20px;padding:2rem 2.25rem;border:1.5px solid var(--category-border);box-shadow:var(--shadow-sm);}
.ip-guide-heading{font-size:1.5rem;font-weight:800;color:var(--category-dark-color);margin-bottom:1rem;}
.ip-guide-card p{font-size:0.9875rem;color:var(--category-light-color);line-height:1.7;margin-bottom:1rem;}
.ip-guide-card a{color:var(--category-primary-dark);font-weight:600;text-decoration:underline;text-underline-offset:2px;}
.ip-guide-card a:hover{color:var(--category-primary);}
.ip-limit-card{margin-bottom:1.25rem;border-color:rgba(239,68,68,0.2);background:linear-gradient(135deg,#fff 0%,#fef2f2 100%);}
.ip-limit-heading{font-size:1.125rem;font-weight:700;color:#991b1b;margin-bottom:0.75rem;}
.ip-limit-card p{font-size:0.9rem;color:var(--category-light-color);margin-bottom:1rem;}
.ip-limit-list{list-style:none;padding:0;margin:0;}
.ip-limit-list li{position:relative;padding:0.5rem 0 0.5rem 1.25rem;font-size:0.9rem;color:#7f1d1d;line-height:1.55;}
.ip-limit-list li::before{content:"";position:absolute;left:0;top:0.85rem;width:6px;height:6px;border-radius:50%;background:#ef4444;}
.ip-tip-card{background:linear-gradient(135deg,rgba(16,185,129,0.08),rgba(16,185,129,0.02));border-color:rgba(16,185,129,0.25);}
.ip-tip-label{font-size:0.7rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--category-primary-dark);margin-bottom:0.5rem;}
.ip-tip-card p{font-size:0.9375rem;color:var(--category-dark-color);margin:0;line-height:1.6;font-weight:500;}
.bmc-ip .faq-section{padding:4rem 0 5rem;}
@media (min-width:768px){.ip-tools-controls{flex-direction:row;align-items:center;justify-content:space-between;}.ip-search-wrap{flex:1;max-width:360px;}}
@media (max-width:991.98px){.ip-hero{padding:56px 0 64px;}.ip-capabilities,.ip-guide{padding:3.5rem 0;}}
@media (max-width:767.98px){.ip-hero{padding:48px 0 56px;}.ip-hero-actions{flex-direction:column;}.ip-btn{width:100%;}.ip-stat{min-width:calc(50% - 0.5rem);}.ip-guide-card,.ip-limit-card,.ip-tip-card{padding:1.5rem;}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;}}
