/* Free URL Index Checker (index-checker.php, js/index-checker.js). */
.ic-card, .ic-results, .ic-how { max-width: 820px; margin: 0 auto var(--space-6); }
.ic-top { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); flex-wrap: wrap; margin-bottom: var(--space-4); }
.ic-top__label { display: flex; align-items: center; gap: var(--space-2); min-width: 0; }
.ic-top__label h2 { margin: 0; font-size: var(--text-base, 1rem); font-weight: 600; }
.ic-top__label .material-symbols-rounded { color: var(--accent-text, var(--accent)); }
.ic-dot { width: 8px; height: 8px; border-radius: 50%; display: inline-block; flex: none; font-style: normal; }
.ic-dot--google { background: #4285f4; }
.ic-dot--bing { background: #00a4a6; }
.ic-input { width: 100%; min-height: 190px; resize: vertical; font-family: var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace); font-size: var(--text-sm); line-height: 1.6; }
.ic-bar { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); flex-wrap: wrap; margin-top: var(--space-4); }
.ic-bar__info { display: flex; flex-direction: column; gap: 2px; min-width: 0; font-size: var(--text-sm); }
.ic-bar__hint { color: var(--text-tertiary); font-size: var(--text-xs); }
.ic-bar__actions { display: flex; align-items: center; gap: var(--space-2); flex-wrap: wrap; }
.ic-upload { cursor: pointer; }
.ic-results__head { display: flex; align-items: baseline; justify-content: space-between; gap: var(--space-3); flex-wrap: wrap; margin-bottom: var(--space-3); }
.ic-results__head h2 { margin: 0; font-size: var(--text-base, 1rem); font-weight: 600; }
.ic-results__meta { color: var(--text-secondary); font-size: var(--text-sm); }
.ic-list { list-style: none; margin: 0; padding: 0; max-height: 560px; overflow-y: auto; border: 1px solid var(--border-glass); border-radius: var(--radius-md); }
.ic-row { display: grid; grid-template-columns: 36px minmax(0, 1fr) auto auto; align-items: center; gap: var(--space-3); padding: var(--space-2) var(--space-3); border-bottom: 1px solid var(--border-glass); }
.ic-row:last-child { border-bottom: 0; }
.ic-row:hover { background: var(--surface-2); }
.ic-row__num { color: var(--text-tertiary); font-size: var(--text-xs); text-align: right; }
.ic-row__url { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-family: var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace); font-size: var(--text-sm); }
.ic-row__chip { font-size: var(--text-xs); color: var(--text-tertiary); padding: 2px 8px; border-radius: 999px; border: 1px solid var(--border-glass); white-space: nowrap; }
.ic-row.is-checked .ic-row__chip { color: var(--status-success); border-color: color-mix(in srgb, var(--status-success) 35%, transparent); background: var(--status-success-bg); }
.ic-row__check { white-space: nowrap; }
.ic-how h2 { display: flex; align-items: center; gap: var(--space-2); margin: 0 0 var(--space-3); font-size: var(--text-base, 1rem); }
.ic-how ol { margin: 0 0 var(--space-4); padding-left: 1.25rem; color: var(--text-secondary); line-height: 1.7; }
.ic-how p { color: var(--text-secondary); font-size: var(--text-sm); line-height: 1.65; margin: 0 0 var(--space-3); }
.ic-how code { padding: 1px 6px; border-radius: 4px; background: var(--surface-2); font-size: .9em; }
@media (max-width: 640px) {
    .ic-row { grid-template-columns: 28px minmax(0, 1fr) auto; }
    .ic-row__chip { display: none; }
    .ic-bar__actions { width: 100%; }
    .ic-bar__actions .btn--primary { flex: 1; justify-content: center; }
}

/* ---- Motion. All of it is switched off for visitors who ask for reduced motion. ---- */
.ic-page { position: relative; overflow: hidden; }
.ic-page > .container { position: relative; z-index: 1; }
.ic-orb { position: absolute; border-radius: 50%; filter: blur(70px); opacity: .35; pointer-events: none; z-index: 0; }
.ic-orb--a { width: 420px; height: 420px; top: 40px; left: -120px; background: radial-gradient(circle, var(--accent), transparent 70%); }
.ic-orb--b { width: 380px; height: 380px; top: 360px; right: -120px; background: radial-gradient(circle, #4285f4, transparent 70%); }
.ic-hero { position: relative; }
.ic-radar { position: relative; width: 112px; height: 112px; margin: 0 auto var(--space-4); display: grid; place-items: center; }
.ic-radar__ring { position: absolute; inset: 0; border-radius: 50%; border: 1.5px solid color-mix(in srgb, var(--accent) 55%, transparent); }
.ic-radar__ring:nth-child(2) { inset: 18px; opacity: .7; }
.ic-radar__ring:nth-child(3) { inset: 36px; opacity: .5; }
.ic-radar__sweep { position: absolute; inset: 0; border-radius: 50%; background: conic-gradient(from 0deg, color-mix(in srgb, var(--accent) 55%, transparent), transparent 30%); -webkit-mask: radial-gradient(circle, transparent 0 14%, #000 15%); mask: radial-gradient(circle, transparent 0 14%, #000 15%); }
.ic-radar__blip { position: absolute; width: 7px; height: 7px; border-radius: 50%; background: var(--accent); box-shadow: 0 0 10px var(--accent); }
.ic-radar__blip--1 { top: 18px; left: 70px; }
.ic-radar__blip--2 { top: 70px; left: 22px; }
.ic-radar__blip--3 { top: 84px; left: 82px; }
.ic-radar__icon { position: relative; font-size: 30px; color: var(--accent-text, var(--accent)); }
.ic-card { position: relative; }
.ic-card::before { content: ''; position: absolute; inset: -1px; border-radius: inherit; padding: 1px; background: linear-gradient(120deg, var(--accent), #4285f4, #00a4a6, var(--accent)); background-size: 300% 300%; -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; opacity: .55; pointer-events: none; }
.ic-bar__info strong { display: inline-block; }
[data-ic-generate] { position: relative; overflow: hidden; }
[data-ic-generate]::after { content: ''; position: absolute; top: 0; bottom: 0; width: 40%; left: -60%; background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .35), transparent); transform: skewX(-20deg); }

@media (prefers-reduced-motion: no-preference) {
    .ic-orb--a { animation: ic-float 14s ease-in-out infinite; }
    .ic-orb--b { animation: ic-float 18s ease-in-out infinite reverse; }
    .ic-radar__ring { animation: ic-ring 3.2s ease-out infinite; }
    .ic-radar__ring:nth-child(2) { animation-delay: .5s; }
    .ic-radar__ring:nth-child(3) { animation-delay: 1s; }
    .ic-radar__sweep { animation: ic-spin 3.6s linear infinite; }
    .ic-radar__blip { animation: ic-blip 3.6s ease-in-out infinite; }
    .ic-radar__blip--2 { animation-delay: 1.2s; }
    .ic-radar__blip--3 { animation-delay: 2.4s; }
    .ic-radar__icon { animation: ic-bob 3s ease-in-out infinite; }
    .ic-hero h1 { background: linear-gradient(100deg, var(--text-primary) 20%, var(--accent-text, var(--accent)) 50%, var(--text-primary) 80%); background-size: 220% 100%; -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; animation: ic-shine 6s linear infinite; }
    .ic-card { animation: ic-rise .7s cubic-bezier(.2, .8, .2, 1) both; }
    .ic-card::before { animation: ic-gradient 6s ease infinite; }
    .ic-how { animation: ic-rise .7s .15s cubic-bezier(.2, .8, .2, 1) both; }
    .ic-results { animation: ic-rise .5s cubic-bezier(.2, .8, .2, 1) both; }
    [data-ic-generate]::after { animation: ic-sheen 3.4s ease-in-out infinite; }
    .ic-card.has-urls [data-ic-generate] { animation: ic-pulse 1.8s ease-out infinite; }
    .is-bump { animation: ic-bump .35s ease-out; }
    .ic-row { animation: ic-row-in .4s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(var(--i, 0) * 45ms); }
    .ic-row.is-checked .ic-row__chip { animation: ic-flash .6s ease-out; }
}
@keyframes ic-float { 0%, 100% { transform: translate(0, 0); } 50% { transform: translate(40px, 30px); } }
@keyframes ic-ring { 0% { transform: scale(.6); opacity: .9; } 100% { transform: scale(1.25); opacity: 0; } }
@keyframes ic-spin { to { transform: rotate(360deg); } }
@keyframes ic-blip { 0%, 100% { opacity: .15; transform: scale(.7); } 50% { opacity: 1; transform: scale(1.3); } }
@keyframes ic-bob { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-4px); } }
@keyframes ic-shine { to { background-position: -220% 0; } }
@keyframes ic-rise { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }
@keyframes ic-gradient { 0%, 100% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } }
@keyframes ic-sheen { 0%, 55% { left: -60%; } 100% { left: 130%; } }
@keyframes ic-pulse { 0% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--accent) 55%, transparent); } 100% { box-shadow: 0 0 0 14px transparent; } }
@keyframes ic-bump { 0% { transform: scale(1); } 40% { transform: scale(1.5); } 100% { transform: scale(1); } }
@keyframes ic-row-in { from { opacity: 0; transform: translateX(-14px); } to { opacity: 1; transform: none; } }
@keyframes ic-flash { 0% { transform: scale(1.25); } 100% { transform: scale(1); } }
