@font-face { font-family: "Paperlogy"; src: url("/fonts/Paperlogy-4Regular.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Paperlogy"; src: url("/fonts/Paperlogy-5Medium.woff2") format("woff2"); font-weight: 500; font-display: swap; }
@font-face { font-family: "Paperlogy"; src: url("/fonts/Paperlogy-6SemiBold.woff2") format("woff2"); font-weight: 600; font-display: swap; }
@font-face { font-family: "Paperlogy"; src: url("/fonts/Paperlogy-7Bold.woff2") format("woff2"); font-weight: 700; font-display: swap; }
@font-face { font-family: "Paperlogy"; src: url("/fonts/Paperlogy-8ExtraBold.woff2") format("woff2"); font-weight: 800; font-display: swap; }
@font-face { font-family: "Paperlogy"; src: url("/fonts/Paperlogy-9Black.woff2") format("woff2"); font-weight: 900; font-display: swap; }

:root {
  color-scheme: light;
  --bg: #f6f7fb;
  --surface: #ffffff;
  --surface-2: #eef0f7;
  --line: #dde1ec;
  --text: #171824;
  --muted: #717688;
  --accent: #5663f7;
  --accent-ink: #ffffff;
  --danger: #d93f48;
  --radius: 16px;
  --shadow: 0 24px 70px rgba(55, 61, 102, .1);
  font-family: "Paperlogy", system-ui, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; min-height: 100dvh; color: var(--text); background: radial-gradient(circle at 84% 4%, rgba(86,99,247,.09), transparent 27rem), var(--bg); }
body::before { content: ""; position: fixed; inset: 0; pointer-events: none; z-index: 10; opacity: .025; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E"); }
button, input, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; }
button { cursor: pointer; }
button:disabled { cursor: wait; opacity: .58; transform: none !important; }
::selection { color: #fff; background: var(--accent); }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible { outline: 3px solid rgba(86,99,247,.34); outline-offset: 3px; }

.site-header { position: sticky; top: 0; z-index: 20; height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 24px; max-width: 1440px; padding: 0 32px; margin: auto; border-bottom: 1px solid rgba(210,215,230,.72); background: rgba(246,247,251,.82); backdrop-filter: blur(18px) saturate(150%); -webkit-backdrop-filter: blur(18px) saturate(150%); }
.brand { display: inline-flex; align-items: center; gap: 12px; color: var(--text); text-decoration: none; font-weight: 850; letter-spacing: -.045em; }
.brand-mark { width: 30px; height: 30px; display: grid; place-items: center; color: var(--accent-ink); background: var(--accent); border-radius: 8px; font-size: 13px; letter-spacing: -.08em; transform: rotate(-4deg); }
.brand-product { color: var(--muted); font-weight: 560; }
.header-right { display: flex; align-items: center; gap: 14px; }
.auth-bar { margin: 0; display: flex; align-items: center; gap: 10px; color: var(--muted); font-size: 14px; }
.auth-bar a { color: var(--text); text-underline-offset: 4px; }
.quota-badge { max-width: 230px; overflow: hidden; padding: 5px 12px; border: 1px solid var(--line); border-radius: 999px; background: #eef0f7; color: var(--muted); font-size: 12px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.quota-badge.is-empty { color: var(--danger); border-color: rgba(217,63,72,.3); background: rgba(217,63,72,.08); }

.shell { max-width: 1440px; margin: auto; padding: 48px 32px 96px; }
.hero { min-height: min(720px, calc(100dvh - 120px)); display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(420px, .92fr); align-items: center; gap: clamp(44px, 6vw, 92px); padding: 40px 0 76px; }
.eyebrow { margin: 0 0 18px; color: var(--accent); font: 700 12px/1.2 ui-monospace, SFMono-Regular, Consolas, monospace; letter-spacing: .16em; text-transform: uppercase; }
.hero h1 { max-width: 820px; margin: 0; font-size: clamp(48px, 6.2vw, 90px); line-height: 1.06; letter-spacing: -.055em; font-weight: 800; text-wrap: balance; }
.hero h1 span { color: var(--muted); }
.hero-copy { max-width: 600px; margin: 28px 0 0; color: #64697b; font-size: clamp(16px, 1.4vw, 20px); line-height: 1.7; word-break: keep-all; }
.hero-side { align-self: center; display: grid; gap: 16px; }
.signal-figure { min-height: 460px; position: relative; overflow: hidden; isolation: isolate; border: 1px solid #d6daea; border-radius: 24px; background: radial-gradient(circle at 50% 48%, rgba(86,99,247,.2), transparent 32%), linear-gradient(145deg, #ffffff, #eceefa); box-shadow: 0 36px 100px rgba(61,68,130,.16); }
.signal-figure::before { content: ""; position: absolute; inset: 0; z-index: -1; background: repeating-linear-gradient(90deg, transparent 0 59px, rgba(43,48,84,.05) 60px), repeating-linear-gradient(0deg, transparent 0 59px, rgba(43,48,84,.05) 60px); mask-image: linear-gradient(to bottom, transparent, #000 20%, #000 80%, transparent); }
.signal-core { position: absolute; left: 50%; top: 50%; width: 142px; height: 142px; display: grid; place-items: center; align-content: center; color: var(--accent-ink); border: 1px solid rgba(255,255,255,.25); border-radius: 50%; background: var(--accent); box-shadow: 0 22px 54px rgba(86,99,247,.3); transform: translate(-50%, -50%); }
.signal-core span { font-size: 64px; line-height: .82; font-weight: 900; letter-spacing: -.08em; }
.signal-core small { margin-top: 10px; font: 700 9px/1 ui-monospace, monospace; letter-spacing: .18em; }
.orbit { position: absolute; left: 50%; top: 50%; border: 1px dashed rgba(61,67,110,.2); border-radius: 50%; transform: translate(-50%, -50%); }
.orbit-a { width: 310px; height: 310px; }
.orbit-b { width: 500px; height: 500px; }
.floating-brand { position: absolute; width: 62px; height: 62px; display: grid; place-items: center; border-radius: 18px; box-shadow: 0 16px 36px rgba(40,45,82,.2); }
.floating-brand img { width: 27px; height: 27px; object-fit: contain; }
.brand-naver { left: 12%; top: 22%; background: #03c75a; transform: rotate(-6deg); }
.brand-instagram { right: 11%; top: 16%; background: radial-gradient(circle at 30% 105%, #feda75 0 18%, #fa7e1e 33%, #d62976 58%, #962fbf 78%, #4f5bd5 100%); transform: rotate(5deg); }
.brand-tiktok { right: 16%; bottom: 16%; background: #171717; transform: rotate(-4deg); }
.brand-karrot { left: 15%; bottom: 12%; overflow: hidden; padding: 9px; background: #fff; transform: rotate(4deg); }
.brand-karrot img { width: 100%; height: 100%; object-fit: contain; }

.workspace { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(300px, .75fr); gap: 20px; align-items: start; }
.panel { border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); box-shadow: var(--shadow); }
.query-panel { padding: clamp(24px, 4vw, 48px); grid-column: 1 / -1; transition: padding .3s cubic-bezier(.16,1,.3,1); }
.query-panel-collapsed-bar { display: none; align-items: center; justify-content: space-between; gap: 12px; cursor: pointer; }
.query-panel-collapsed-bar span:first-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 700; font-size: 14px; color: var(--text); }
.query-panel-expand-hint { flex: 0 0 auto; color: var(--muted); font-size: 12px; }
.query-panel.is-collapsed { padding: 16px clamp(24px, 4vw, 48px); }
.query-panel.is-collapsed .query-panel-body { display: none; }
.query-panel.is-collapsed .query-panel-collapsed-bar { display: flex; }
.section-label { margin: 0 0 12px; color: var(--muted); font-size: 13px; font-weight: 700; }
.query-panel h2, .section-heading { margin: 0; font-size: clamp(28px, 4vw, 50px); line-height: 1.16; letter-spacing: -.04em; text-wrap: balance; }
.query-form { display: grid; grid-template-columns: 1fr auto; gap: 12px; margin-top: 34px; }
.query-form > .primary-btn { min-width: 190px; align-self: start; margin-top: 22px; }
.query-field { min-width: 0; }
.field-label { display: block; margin-bottom: 9px; color: #555a6d; font-size: 13px; font-weight: 700; }
.input, input[type="text"], input[type="password"], select { width: 100%; min-height: 54px; padding: 0 17px; color: var(--text); border: 1px solid #cfd3e1; border-radius: 12px; background: #fbfbfe; transition: border-color .25s, background .25s, transform .25s; }
textarea { width: 100%; padding: 14px 17px; color: var(--text); border: 1px solid #cfd3e1; border-radius: 12px; background: #fbfbfe; resize: vertical; transition: border-color .25s, background .25s; }
textarea:hover { border-color: #9ba1b8; }
textarea:focus { border-color: var(--accent); background: #ffffff; outline: none; }
.html-paste-field { grid-column: 1 / -1; }
.autofetch-row { grid-column: 1 / -1; display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.autofetch-row .field-hint { margin: 0; }
.field-hint { margin: 8px 0 0; color: var(--muted); font-size: 12px; line-height: 1.5; }
.chrome-url-chip { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border: 1px solid var(--line); border-radius: 999px; background: #eef0f7; color: var(--accent); font-weight: 700; vertical-align: middle; }
.chrome-url-chip:hover { border-color: var(--accent); }
.chrome-url-chip code { background: none; color: inherit; }
input::placeholder { color: #999dac; }
input:hover, select:hover { border-color: #9ba1b8; }
input:focus, select:focus { border-color: var(--accent); background: #ffffff; outline: none; }
.primary-btn, .secondary-btn, .ghost-btn, button { min-height: 46px; padding: 0 18px; border: 1px solid transparent; border-radius: 12px; font-weight: 760; transition: transform .2s, background .2s, border-color .2s, color .2s; }
.primary-btn { min-height: 54px; color: var(--accent-ink); background: var(--accent); white-space: nowrap; }
.primary-btn:hover { background: #4552e7; transform: translateY(-2px); }
.primary-btn:active, .secondary-btn:active, .ghost-btn:active, button:active { transform: scale(.98); }
.secondary-btn { color: var(--text); border-color: #cfd3e1; background: #eef0f7; }
.secondary-btn:hover { border-color: var(--accent); color: var(--accent); }
.ghost-btn { min-height: 36px; padding: 0 12px; color: var(--muted); border-color: var(--line); background: transparent; }
.ghost-btn:hover { color: var(--text); border-color: #969bb0; }
.danger-btn { min-height: 34px; padding: 0 12px; color: var(--danger); border: 1px solid rgba(255,128,117,.3); background: rgba(255,128,117,.08); }
.danger-btn:hover { background: rgba(255,128,117,.14); }

.status-line { min-height: 24px; margin: 16px 0 0; color: var(--accent); font-size: 14px; }
.error-line { min-height: 24px; margin: 4px 0 0; color: var(--danger); font-size: 14px; }
.status-line:empty, .error-line:empty { min-height: 0; margin-top: 0; }
.details-panel { padding: 30px; }
.details-panel.is-loading { position: relative; opacity: .55; pointer-events: none; animation: hw-pulse 1.1s ease-in-out infinite; }
.details-panel.is-loading dd { color: var(--muted); }
@keyframes hw-pulse { 0%, 100% { opacity: .45; } 50% { opacity: .85; } }
.panel-title { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 22px; }
summary.panel-title { justify-content: flex-start; cursor: pointer; user-select: none; list-style: none; }
summary.panel-title h3 { margin-right: auto; }
summary.panel-title::-webkit-details-marker { display: none; }
summary.panel-title::after { content: ""; width: 9px; height: 9px; flex: 0 0 auto; margin-left: 4px; border-right: 2px solid var(--muted); border-bottom: 2px solid var(--muted); transform: rotate(45deg) translateY(-2px); transition: transform .25s cubic-bezier(.16,1,.3,1), border-color .25s; }
summary.panel-title:hover::after { border-color: var(--accent); }
details[open] > summary.panel-title::after { transform: rotate(225deg) translate(-2px, -2px); }
details[open] > summary.panel-title { padding-bottom: 18px; border-bottom: 1px solid var(--line); }
.panel-title h3 { margin: 0; font-size: 20px; letter-spacing: -.035em; }
.panel-title small { color: var(--muted); }
.data-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; }
.data-item { min-height: 94px; padding: 18px 0; border-bottom: 1px solid var(--line); }
.data-item:nth-child(odd) { padding-right: 22px; }
.data-item:nth-child(even) { padding-left: 22px; border-left: 1px solid var(--line); }
.data-item dt { margin-bottom: 8px; color: var(--muted); font-size: 12px; }
.data-item dd { margin: 0; line-height: 1.45; word-break: break-all; }
#sales-estimate-item { margin: 10px 0; padding: 18px; border: 1px solid rgba(86,99,247,.18); border-radius: 12px; background: rgba(86,99,247,.055); }
#sales-estimate-item dt { color: var(--accent); }
#salesEstimateText { font-weight: 700; word-break: keep-all; }
.media-panel { padding: 20px; }
.preview-frame { min-height: 360px; display: grid; place-items: center; overflow: hidden; border-radius: 12px; background: #eef0f7; }
.preview-frame img { width: 100%; height: 100%; max-height: 520px; object-fit: contain; }
.empty-visual { max-width: 220px; color: #777c8f; text-align: center; line-height: 1.6; }
.json-panel { grid-column: 1 / -1; padding: 30px; }
.json-panel pre { max-height: 360px; overflow: auto; margin: 0; padding: 20px; color: #454a5e; border-radius: 12px; background: #eef0f7; font: 12px/1.7 ui-monospace, SFMono-Regular, Consolas, monospace; }
.locked-wrap { position: relative; }
.locked-wrap.is-locked .findings-list,
.locked-wrap.is-locked .review-columns,
.locked-wrap.is-locked .review-keyword-summary { filter: blur(6px); pointer-events: none; user-select: none; }
.locked-overlay { position: absolute; inset: 0; z-index: 5; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; padding: 20px; text-align: center; background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,.92) 32%); }
.locked-overlay p { max-width: 320px; margin: 0; font-weight: 700; }
.locked-overlay .primary-btn { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; }

.seller-trust { margin: 8px 0 38px; padding: 22px; border: 1px solid rgba(86,99,247,.16); border-radius: 14px; background: linear-gradient(135deg, rgba(86,99,247,.07), rgba(255,255,255,.72)); }
.seller-trust-head { display: flex; align-items: baseline; gap: 8px; margin-bottom: 12px; }
.seller-trust-head h3 { margin: 0; font-size: 16px; }
.seller-trust-head strong { font-size: 24px; font-weight: 800; color: var(--accent); }
.seller-trust-head small { color: var(--muted); }
.seller-badges { display: flex; flex-wrap: wrap; gap: 8px; }
.seller-badge { padding: 6px 14px; border-radius: 999px; font-size: 13px; font-weight: 700; }
.seller-badge.tone-good { color: #2f9e5b; background: rgba(47,158,91,.12); }
.seller-badge.tone-neutral { color: var(--muted); background: #eef0f7; }
.demo-charts { display: flex; gap: 24px; flex-wrap: wrap; margin-top: 18px; padding-top: 18px; border-top: 1px solid rgba(86,99,247,.12); }
.demo-chart-box { flex: 1 1 240px; min-width: 220px; }
.demo-chart-box .field-label { margin: 0 0 10px; font-size: 13px; font-weight: 700; color: var(--muted); }
.age-bar-row { display: flex; align-items: center; gap: 8px; margin-bottom: 6px; }
.age-bar-label { width: 32px; font-size: 12px; color: var(--muted); flex-shrink: 0; }
.age-bar-track { flex: 1; height: 12px; background: #eef0f7; border-radius: 999px; overflow: hidden; }
.age-bar-fill { height: 100%; background: var(--accent); border-radius: 999px; }
.age-bar-value { width: 34px; text-align: right; font-size: 12px; font-weight: 700; color: var(--text); flex-shrink: 0; }
.gender-bar { display: flex; height: 16px; border-radius: 999px; overflow: hidden; background: #eef0f7; }
.gender-bar-male { height: 100%; background: var(--accent); }
.gender-bar-female { height: 100%; background: #ff8fb1; }
.gender-legend { margin: 8px 0 0; font-size: 12px; color: var(--muted); }
.report-tabs { display: flex; gap: 4px; margin: 24px 0 20px; border-bottom: 1px solid var(--line); overflow-x: auto; }
.report-tab-btn { flex: 0 0 auto; padding: 10px 18px; border: none; background: none; font-size: 14px; font-weight: 700; color: var(--muted); border-bottom: 2px solid transparent; margin-bottom: -1px; white-space: nowrap; }
.report-tab-btn:hover { color: var(--text); }
.report-tab-btn.is-active { color: var(--accent); border-bottom-color: var(--accent); }
.report-tab-panel { display: none; }
.report-tab-panel.is-active { display: block; }
.findings-group-heading { margin: 22px 0 10px; font-size: 14px; font-weight: 700; color: var(--muted); }
.findings-group-heading:first-child { margin-top: 0; }
.tab-empty-state { padding: 28px; color: var(--muted); border: 1px dashed var(--line); border-radius: 12px; text-align: center; }
.social-channel-list { display: flex; flex-wrap: wrap; gap: 12px; }
.social-channel-link { display: flex; align-items: center; gap: 10px; padding: 14px 18px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); text-decoration: none; color: var(--text); transition: border-color .2s ease, transform .2s ease; }
.social-channel-link:hover { border-color: var(--accent); transform: translateY(-2px); }
.social-channel-platform { font-weight: 700; font-size: 14px; }
.social-channel-url { color: var(--muted); font-size: 12px; max-width: 260px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.social-channel-arrow { margin-left: 4px; color: var(--accent); }
.modal-overlay { position: fixed; inset: 0; z-index: 200; display: flex; align-items: center; justify-content: center; background: rgba(20,22,34,.5); padding: 20px; }
.modal-box { position: relative; max-width: 380px; width: 100%; padding: 32px 28px 28px; border-radius: 16px; background: var(--surface); box-shadow: 0 24px 70px rgba(0,0,0,.28); text-align: center; }
.modal-box h3 { margin: 0 0 12px; font-size: 19px; }
.modal-box p { margin: 0 0 22px; color: var(--muted); font-size: 14px; line-height: 1.6; }
.modal-box .primary-btn { display: inline-block; }
.modal-close { position: absolute; top: 12px; right: 12px; width: 30px; height: 30px; border: none; border-radius: 999px; background: var(--surface-2); font-size: 18px; line-height: 1; color: var(--muted); cursor: pointer; }
.modal-close:hover { color: var(--text); }
.seller-business-info { display: flex; flex-wrap: wrap; gap: 8px 28px; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); }
.business-info-row { display: flex; align-items: baseline; gap: 8px; font-size: 13px; }
.business-info-label { color: var(--muted); font-weight: 600; }
.business-info-value { color: var(--text); font-weight: 600; }
.review-keyword-summary { display: flex; gap: 24px; flex-wrap: wrap; margin-bottom: 24px; padding-bottom: 20px; border-bottom: 1px solid var(--line); }
.review-keyword-col { flex: 1 1 240px; min-width: 220px; }
.keyword-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.keyword-chips .keyword-chip { padding: 6px 12px; font-size: 12px; }
.keyword-chips .keyword-chip strong { margin-left: 4px; color: var(--accent); }
.keyword-chips-empty { color: var(--muted); font-size: 13px; }

.review-section { margin-top: 38px; padding-top: 30px; border-top: 1px solid var(--line); }
.review-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 14px; }
.review-col { padding: 18px; border-radius: 14px; background: #f6f7fb; }
.review-col h4 { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 0 0 14px; font-size: 15px; }
.review-col h4 span { color: var(--muted); font-size: 11px; font-weight: 600; }
.review-col-positive { border-top: 3px solid #2f9e5b; }
.review-col-negative { border-top: 3px solid var(--danger); }
.review-list { display: grid; gap: 10px; }
.review-item { padding: 14px 16px; border: 1px solid var(--line); border-radius: 12px; background: #fff; font-size: 13px; line-height: 1.6; }
.review-item .review-meta { display: block; margin-bottom: 6px; color: var(--muted); font-size: 12px; font-weight: 700; }
.review-empty { color: var(--muted); font-size: 13px; padding: 14px 0; }

.history-panel { grid-column: 1 / -1; padding: 24px 30px; overflow: hidden; }
.history-list { display: flex; gap: 10px; overflow-x: auto; padding: 2px 2px 10px; scroll-snap-type: x mandatory; scrollbar-color: #c7cbda transparent; }
.history-item { min-width: min(310px, 78vw); display: grid; gap: 12px; padding: 16px; border: 1px solid var(--line); border-radius: 12px; background: #fbfbfe; cursor: pointer; text-align: left; font: inherit; color: inherit; scroll-snap-align: start; transition: transform .24s cubic-bezier(.16,1,.3,1), border-color .24s, background .24s; }
.history-item:hover { border-color: rgba(86,99,247,.48); background: #f6f7ff; transform: translateY(-2px); }
.history-item .history-title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 700; }
.history-item .history-meta { color: var(--muted); font-size: 12px; }
.history-empty { color: var(--muted); font-size: 13px; padding: 8px 0; }

.keyword-panel { grid-column: 1 / -1; padding: 30px; }
.keyword-grid { display: flex; flex-wrap: wrap; gap: 9px; }
.keyword-chip { padding: 9px 14px; border: 1px solid #d6daea; border-radius: 999px; background: #f5f6fc; color: #4e546a; font-size: 13px; font-weight: 600; }
.keyword-grid .empty-visual { max-width: none; width: 100%; padding: 24px; border: 1px dashed var(--line); border-radius: 12px; }

.platform-select { padding: 84px 0 28px; border-top: 1px solid var(--line); }
.platform-heading { max-width: 700px; }
.platform-heading > p:last-child { max-width: 540px; margin: 20px 0 0; color: var(--muted); font-size: 17px; line-height: 1.7; word-break: keep-all; }
.platform-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: repeat(3, minmax(190px, auto)); gap: 16px; margin-top: 42px; }
.platform-card { --pointer-x: 50%; --pointer-y: 50%; --tilt-x: 0deg; --tilt-y: 0deg; position: relative; min-height: 190px; display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between; gap: 28px; overflow: hidden; padding: 26px; border: 0; border-radius: 20px; box-shadow: 0 20px 58px rgba(55,61,102,.14); text-align: left; transform: perspective(900px) translateY(0) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)); transform-style: preserve-3d; transition: transform .38s cubic-bezier(.16,1,.3,1), box-shadow .38s cubic-bezier(.16,1,.3,1); will-change: transform; }
.platform-card::before { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; opacity: 0; background: radial-gradient(240px circle at var(--pointer-x) var(--pointer-y), rgba(255,255,255,.38), rgba(255,255,255,.1) 34%, transparent 68%); transition: opacity .32s ease; }
.platform-card::after { content: ""; position: absolute; inset: -45% -80%; z-index: 1; pointer-events: none; opacity: 0; background: linear-gradient(105deg, transparent 42%, rgba(255,255,255,.28) 50%, transparent 58%); transform: translateX(-28%) rotate(8deg); transition: transform .7s cubic-bezier(.16,1,.3,1), opacity .28s ease; }
.platform-card > * { position: relative; z-index: 2; }
.platform-card:hover { transform: perspective(900px) translateY(-9px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)); box-shadow: 0 34px 80px rgba(55,61,102,.22); }
.platform-card:hover::before { opacity: 1; }
.platform-card:hover::after { opacity: 1; transform: translateX(30%) rotate(8deg); }
.platform-card:focus-visible { outline-color: var(--text); }
.platform-featured { grid-column: span 2; grid-row: span 2; min-height: 396px; padding: 34px; }
.platform-visual { width: 58px; height: 58px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.28); border-radius: 17px; background: rgba(255,255,255,.14); box-shadow: inset 0 1px rgba(255,255,255,.24); transform: translateZ(24px) rotate(0) scale(1); transition: transform .48s cubic-bezier(.16,1,.3,1), background .3s ease; }
.platform-visual img { width: 29px; height: 29px; object-fit: contain; transition: transform .48s cubic-bezier(.16,1,.3,1); }
.platform-featured .platform-visual { width: 82px; height: 82px; border-radius: 22px; }
.platform-featured .platform-visual img { width: 42px; height: 42px; }
.platform-content { display: grid; gap: 5px; color: #fff; transform: translateZ(14px); transition: transform .45s cubic-bezier(.16,1,.3,1); }
.platform-state { color: rgba(255,255,255,.72); font-size: 12px; font-weight: 600; }
.platform-name { font-size: clamp(24px, 2vw, 34px); line-height: 1.1; font-weight: 800; letter-spacing: -.035em; }
.platform-featured .platform-name { font-size: clamp(34px, 4vw, 58px); }
.platform-description { max-width: 320px; margin-top: 8px; color: rgba(255,255,255,.82); font-size: 15px; line-height: 1.55; word-break: keep-all; }
.platform-arrow { position: absolute; right: 24px; top: 22px; color: rgba(255,255,255,.82); font-size: 24px; transform: translateZ(20px); transition: transform .4s cubic-bezier(.16,1,.3,1); }
.platform-card:hover .platform-arrow { transform: translate3d(5px, -5px, 28px) rotate(8deg); }
.platform-card:hover .platform-visual { background: rgba(255,255,255,.22); transform: translate3d(0, -5px, 34px) rotate(-5deg) scale(1.08); }
.platform-card:hover .platform-visual img { transform: scale(1.08) rotate(5deg); }
.platform-card:hover .platform-content { transform: translate3d(0, -2px, 22px); }
.platform-naver { background: #03b753; }
.platform-coupang { border: 1px solid rgba(147,12,39,.22); background: linear-gradient(145deg, #e31b3d, #bd1230); }
.platform-coupang .platform-content { color: #fff; }
.platform-coupang .platform-state { color: rgba(255,255,255,.72); }
.platform-coupang .platform-arrow { color: rgba(255,255,255,.86); }
.platform-coupang::before { background: radial-gradient(240px circle at var(--pointer-x) var(--pointer-y), rgba(255,255,255,.34), rgba(255,255,255,.08) 38%, transparent 68%); }
.platform-visual-coupang { width: auto; min-width: 122px; padding: 0 13px; border-color: rgba(255,255,255,.42); background: #fff; box-shadow: 0 12px 26px rgba(97,5,24,.2); }
.coupang-mark { display: flex; align-items: center; font-size: 18px; font-weight: 900; letter-spacing: -.06em; }
.coupang-mark i { font-style: normal; }
.coupang-mark i:nth-child(1) { color: #ed1c24; }
.coupang-mark i:nth-child(2) { color: #f58220; }
.coupang-mark i:nth-child(3) { color: #fdb913; }
.coupang-mark i:nth-child(4) { color: #8dc63f; }
.coupang-mark i:nth-child(5) { color: #00a651; }
.coupang-mark i:nth-child(6) { color: #00aeef; }
.coupang-mark i:nth-child(7) { color: #0066b3; }
.platform-facebook { background: #0866ff; }
.platform-instagram { background: radial-gradient(circle at 20% 110%, #feda75 0 14%, #fa7e1e 30%, #d62976 57%, #962fbf 78%, #4f5bd5 100%); }
.platform-tiktok { background: #171717; }
.platform-karrot { background: #ff6f0f; }
.platform-visual span[aria-hidden] { font-size: 22px; font-weight: 800; color: #fff; }
.platform-visual-karrot { overflow: hidden; padding: 8px; background: #fff; }
.platform-visual-karrot img { width: 100%; height: 100%; object-fit: contain; }
.platform-panel { animation: reveal .5s cubic-bezier(.16,1,.3,1) both; }
.back-to-platforms { margin-bottom: 20px; }
.placeholder-panel { padding: clamp(24px, 4vw, 48px); }
.saved-link { margin-top: 24px; padding: 18px; border-radius: 12px; background: #eef0f7; }
.saved-link a { word-break: break-all; color: var(--accent); font-weight: 700; }

.report-section { margin-top: 20px; padding: clamp(24px, 4vw, 48px); overflow: hidden; }
.locked-state { margin-top: 26px; padding: 24px; border: 1px dashed #bfc4d5; border-radius: 12px; color: var(--muted); background: #f3f4f9; }
.locked-state a { color: var(--accent); font-weight: 700; text-underline-offset: 4px; }
.report-actions { display: flex; align-items: center; gap: 16px; margin-top: 28px; }

.risk-banner { display: flex; align-items: center; gap: 12px; margin: 28px 0 0; padding: 14px 18px; border: 1px solid rgba(217,63,72,.24); border-radius: 12px; color: #9f2630; background: rgba(217,63,72,.07); font-weight: 700; font-size: 14px; }
.risk-mark { width: 24px; height: 24px; flex: 0 0 auto; display: grid; place-items: center; color: #fff; border-radius: 50%; background: var(--danger); font-weight: 900; }

.report-summary-grid { display: grid; grid-template-columns: minmax(240px, .7fr) minmax(0, 1.3fr); gap: 28px; align-items: stretch; margin: 32px 0 44px; }
.score-overview { min-height: 250px; display: flex; flex-direction: column; justify-content: space-between; align-items: flex-start; padding: 24px; border-radius: 16px; background: #f3f4fa; }
.score-overview > p { margin: 0; color: var(--muted); font-size: 13px; font-weight: 700; }
.score-gauge { position: relative; width: 180px; height: 180px; }
.score-gauge svg { transform: rotate(-90deg); }
.gauge-track { fill: none; stroke: #eef0f7; stroke-width: 14; }
.gauge-fill { fill: none; stroke: var(--accent); stroke-width: 14; stroke-linecap: round; transition: stroke-dasharray .6s cubic-bezier(.16,1,.3,1), stroke .3s; }
.gauge-fill.tone-good { stroke: #2f9e5b; }
.gauge-fill.tone-warn { stroke: #d99a1f; }
.gauge-fill.tone-bad { stroke: #d93f48; }
.gauge-label { position: absolute; inset: 27px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; text-align: center; line-height: 1; }
.gauge-label span { display: inline-flex; align-items: center; justify-content: center; min-width: 42px; min-height: 22px; margin: 0 0 2px; padding: 0 9px; border-radius: 999px; color: var(--muted); background: #eef0f7; font-size: 11px; font-weight: 800; }
.gauge-label strong { display: block; font-size: 40px; font-weight: 800; letter-spacing: -.04em; line-height: 1; }
.gauge-label small { display: block; margin: 2px 0 0; color: var(--muted); font-size: 10px; line-height: 1; }

.category-summary { padding: 24px 8px; }
.category-summary h3 { margin: 0 0 28px; font-size: 20px; letter-spacing: -.03em; }
.category-bars { display: grid; gap: 26px; margin: 0; }
.category-bar-item { padding: 0; }
.category-bar-head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 10px; font-weight: 700; }
.category-bar-head small { color: var(--muted); font-weight: 600; }
.category-bar-head small i { margin-right: 7px; padding: 3px 7px; border-radius: 6px; background: color-mix(in srgb,var(--score-color) 10%,white); font-size: 9px; font-style: normal; font-weight: 800; }
.category-bar-track { height: 3px; overflow: visible; background: transparent; }
.category-bar-fill { height: 100%; border-radius: 999px; background: var(--accent); box-shadow: 0 0 0 1px rgba(86,99,247,.08); transition: width .6s cubic-bezier(.16,1,.3,1); }

.findings-section { padding-top: 30px; border-top: 1px solid var(--line); }
.findings-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.findings-list:empty::before { content: "보고서를 생성하면 개선 우선순위가 표시됩니다."; grid-column: 1 / -1; padding: 28px; color: var(--muted); border: 1px dashed var(--line); border-radius: 12px; text-align: center; }
.findings-group-heading { grid-column: 1 / -1; }
.finding-item { min-height: 146px; padding: 20px; border: 1px solid var(--line); border-radius: 12px; background: #ffffff; }
.finding-item.is-pass { opacity: .6; }
.finding-tag { display: inline-block; margin-bottom: 8px; padding: 3px 10px; border-radius: 999px; font-size: 11px; font-weight: 800; letter-spacing: -.01em; }
.finding-tag.tag-risk { color: #a7222b; background: rgba(217,63,72,.1); }
.finding-tag.tag-sales { color: #a06207; background: rgba(217,154,31,.14); }
.finding-tag.tag-exposure { color: #2749c9; background: rgba(86,99,247,.1); }
.finding-headline { margin: 0; font-weight: 700; line-height: 1.5; }
.finding-tip { margin: 6px 0 0; color: var(--muted); font-size: 13px; line-height: 1.6; }

.table-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: 12px; }
table { width: 100%; border-collapse: collapse; }
th, td { padding: 16px 18px; text-align: left; border-bottom: 1px solid var(--line); }
th { color: var(--muted); font-size: 12px; font-weight: 700; background: #eef0f7; }
td { font-size: 14px; }
tbody tr:last-child td { border-bottom: 0; }
tbody tr:hover { background: rgba(86,99,247,.045); }

.loading-screen { position: fixed; inset: 0; z-index: 100; display: grid; place-items: center; background: var(--bg); transition: opacity .65s cubic-bezier(.16,1,.3,1), visibility .65s; }
.loading-screen.is-hidden { opacity: 0; visibility: hidden; pointer-events: none; }
.loader-lockup { width: min(88vw, 880px); }
.loader-name { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: baseline; gap: clamp(18px,3vw,42px); overflow: hidden; font-size: clamp(38px,5.7vw,76px); line-height: 1.08; font-weight: 900; letter-spacing: -.055em; white-space: nowrap; }
.loader-brand { min-width: 0; animation: loader-rise .76s cubic-bezier(.16,1,.3,1) both; }
.loader-signal { display: inline-flex; color: var(--accent); letter-spacing: -.075em; }
.loader-signal i { display: inline-block; font-style: normal; opacity: 0; transform: translateY(54%) scale(.8); animation: signal-letter-in .46s cubic-bezier(.16,1,.3,1) forwards, signal-letter-pulse .8s ease-in-out .62s 1; }
.loader-signal i:nth-child(1) { animation-delay: .10s,.62s; }.loader-signal i:nth-child(2) { animation-delay: .15s,.67s; }.loader-signal i:nth-child(3) { animation-delay: .20s,.72s; }.loader-signal i:nth-child(4) { animation-delay: .25s,.77s; }.loader-signal i:nth-child(5) { animation-delay: .30s,.82s; }.loader-signal i:nth-child(6) { animation-delay: .35s,.87s; }
.loader-track { position: relative; height: 3px; margin-top: 22px; overflow: hidden; background: var(--line); }
.loader-track::before { content: ""; position: absolute; inset: 0; width: 42%; background: var(--accent); animation: loader-scan 1.08s cubic-bezier(.16,1,.3,1) both; }
.loader-track span { position: absolute; right: 0; top: 50%; width: 7px; height: 7px; border: 2px solid var(--accent); border-radius: 50%; opacity: 0; transform: translateY(-50%); animation: signal-dot .7s ease-out .68s both; }
.loader-caption { margin: 11px 0 0; color: #989daf; font: 700 9px/1.2 ui-monospace,monospace; letter-spacing: .2em; text-align: right; }
@keyframes loader-rise { from { opacity: 0; transform: translateY(108%); } to { opacity: 1; transform: translateY(0); } }
@keyframes signal-letter-in { to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes signal-letter-pulse { 0%,100% { color: var(--accent); text-shadow: none; } 50% { color: #7581ff; text-shadow: 0 0 22px rgba(86,99,247,.42); } }
@keyframes loader-scan { from { transform: translateX(-110%); } to { transform: translateX(240%); } }
@keyframes signal-dot { 0% { opacity: 0; box-shadow: 0 0 0 0 rgba(86,99,247,.38); } 45% { opacity: 1; } 100% { opacity: 0; box-shadow: 0 0 0 18px rgba(86,99,247,0); } }

.auth-layout { min-height: 100dvh; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(420px, .85fr); }
.auth-art { position: relative; overflow: hidden; padding: 44px; background: var(--accent); color: var(--accent-ink); }
.auth-art .brand { color: var(--accent-ink); }
.auth-art .brand-mark { color: var(--accent); background: var(--accent-ink); }
.auth-message { position: absolute; left: 44px; right: 44px; bottom: 44px; max-width: 760px; }
.auth-message h1 { margin: 0; font-size: clamp(56px, 7.5vw, 116px); line-height: 1.01; letter-spacing: -.06em; }
.auth-message p { max-width: 420px; margin: 26px 0 0; font-size: 18px; line-height: 1.55; }
.auth-panel { display: grid; place-items: center; padding: 44px; }
.auth-card { width: min(100%, 440px); }
.auth-card h2 { margin: 0 0 12px; font-size: 42px; line-height: 1.18; letter-spacing: -.04em; }
.auth-card > p { color: var(--muted); line-height: 1.6; }
.form-stack { display: grid; gap: 20px; margin-top: 34px; }
.form-stack .primary-btn { width: 100%; margin-top: 4px; }
.back-link { display: inline-block; margin-top: 26px; color: var(--muted); text-underline-offset: 5px; }
.back-link:hover { color: var(--text); }

.guide-shell { display: grid; grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr); gap: clamp(36px, 7vw, 104px); align-items: start; padding-top: 84px; }
.guide-intro { position: sticky; top: 124px; }
.guide-intro h1 { max-width: 620px; margin: 0; font-size: clamp(44px, 5.7vw, 76px); line-height: 1.06; letter-spacing: -.055em; }
.guide-intro > p:last-of-type { max-width: 480px; margin: 24px 0 0; color: var(--muted); font-size: 17px; line-height: 1.7; word-break: keep-all; }
.guide-download { display: inline-flex; align-items: center; justify-content: center; margin-top: 32px; text-decoration: none; }
.guide-panel { padding: clamp(24px, 4vw, 42px); }
.guide-panel .panel-title h2 { font-size: 26px; }
.guide-steps { margin: 12px 0 0; padding: 0; list-style: none; counter-reset: guide; }
.guide-steps li { counter-increment: guide; display: grid; grid-template-columns: 44px 1fr; gap: 18px; padding: 24px 0; border-bottom: 1px solid var(--line); }
.guide-steps li::before { content: counter(guide, decimal-leading-zero); width: 38px; height: 38px; display: grid; place-items: center; color: var(--accent); border: 1px solid #cfd3e8; border-radius: 11px; background: #f5f6fc; font: 700 12px/1 ui-monospace, monospace; }
.guide-steps strong { display: block; margin-bottom: 7px; font-size: 17px; }
.guide-steps p { margin: 0; color: var(--muted); line-height: 1.65; }
.chrome-url-chip { margin: 4px 5px 4px 0; }
.chrome-url-chip span { padding-left: 7px; border-left: 1px solid var(--line); font-size: 11px; }
.guide-note { margin-top: 26px; padding: 20px; border-radius: 12px; background: #f0f2fa; }
.guide-note strong { font-size: 14px; }
.guide-note p { margin: 7px 0 0; color: var(--muted); font-size: 13px; line-height: 1.65; }
.guide-panel > .back-link { margin-top: 28px; }

.admin-shell { max-width: 1440px; margin: auto; padding: 36px 32px 80px; }
.admin-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 48px; }
.admin-title h1 { margin: 0; font-size: clamp(44px, 6vw, 76px); line-height: 1.08; letter-spacing: -.05em; }
.admin-title p { margin: 14px 0 0; color: var(--muted); }
.admin-grid { display: grid; grid-template-columns: minmax(430px, .92fr) minmax(0, 1.08fr); gap: 20px; align-items: start; }
.admin-card { padding: 28px; }
.admin-card h2 { margin: 0 0 26px; font-size: 22px; letter-spacing: -.03em; }
.admin-card .panel-title h2 { margin: 0; }
.admin-member-form { margin-top: 0; }
.form-group { min-width: 0; margin: 0; padding: 22px 0 0; border: 0; border-top: 1px solid var(--line); }
.form-group legend { padding: 0 14px 0 0; font-size: 14px; font-weight: 800; }
.form-group legend span { margin-left: 7px; color: var(--muted); font-size: 11px; font-weight: 500; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.form-span { grid-column: 1 / -1; }
.admin-member-form > .primary-btn { width: 100%; }
.admin-list-card { overflow: hidden; }
.admin-list-card .table-wrap { max-height: 720px; }
.member-table { min-width: 1180px; }
.member-table th { position: sticky; top: 0; z-index: 1; }
.member-table td:nth-child(n+4):nth-child(-n+8) { max-width: 190px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

@media (prefers-reduced-motion: no-preference) {
  .hero-copy, .hero h1, .signal-figure { animation: reveal .8s cubic-bezier(.16,1,.3,1) both; }
  .hero-copy { animation-delay: .12s; }
  .signal-figure { animation-delay: .2s; }
  .floating-brand { animation: brand-float 5s ease-in-out infinite alternate; }
  .brand-instagram, .brand-karrot { animation-delay: -2.4s; }
  .orbit-a { animation: orbit-spin 24s linear infinite; }
  @keyframes reveal { from { opacity: 0; transform: translateY(28px); } }
  @keyframes brand-float { to { translate: 0 -9px; } }
  @keyframes orbit-spin { to { rotate: 360deg; } }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }
@media (prefers-reduced-motion: reduce) {
  .platform-card, .platform-card:hover { transform: none; }
  .platform-card::before, .platform-card::after { display: none; }
  .platform-card:hover .platform-visual, .platform-card:hover .platform-visual img, .platform-card:hover .platform-content, .platform-card:hover .platform-arrow { transform: none; }
}

/* Seller award language: trophy, laurel, and four metal grade families */
.seller-certificate-group { display: grid; grid-template-columns: repeat(auto-fit,minmax(164px,172px)); align-items: stretch; gap: 14px; }
.seller-certificate-group .seller-badge { width: 172px; height: 172px; flex: none; justify-self: start; }
.seller-certificate-group .badge-grade {
  --grade-color: #a66f43;
  --grade-dark: #6f4327;
  --grade-light: #f1c49b;
  position: relative;
  flex-direction: column;
  justify-content: center;
  gap: 13px;
  padding: 18px;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid color-mix(in srgb,var(--grade-color) 34%,white);
  border-radius: 20px;
  color: var(--grade-dark);
  background: radial-gradient(circle at 50% 31%,rgba(255,255,255,.95),color-mix(in srgb,var(--grade-light) 24%,white) 49%,color-mix(in srgb,var(--grade-color) 13%,white));
  box-shadow: inset 0 1px rgba(255,255,255,.92),inset 0 0 0 5px rgba(255,255,255,.44),0 14px 34px color-mix(in srgb,var(--grade-color) 18%,transparent);
  text-align: center;
  animation: certification-arrive .65s cubic-bezier(.16,1,.3,1) both,grade-card-breathe 4s ease-in-out 1s infinite;
}
.seller-certificate-group .badge-grade::before { content: ""; position: absolute; inset: 8px; z-index: -1; border: 1px solid color-mix(in srgb,var(--grade-color) 24%,transparent); border-radius: 14px; }
.seller-certificate-group .badge-grade::after { content: ""; position: absolute; inset: -45% -80%; z-index: 3; pointer-events: none; background: linear-gradient(108deg,transparent 43%,rgba(255,255,255,.75) 50%,transparent 57%); transform: translateX(-65%) rotate(5deg); animation: grade-metal-shine 4.8s cubic-bezier(.7,0,.2,1) infinite; }
.seller-certificate-group .badge-grade > * { position: relative; z-index: 2; }
.seller-certificate-group .badge-grade .seller-badge-icon { position: relative; width: 72px; height: 72px; display: grid; place-items: center; border: 5px solid rgba(255,255,255,.86); border-radius: 50%; color: #fff; background: radial-gradient(circle at 34% 28%,var(--grade-light),var(--grade-color) 48%,var(--grade-dark)); box-shadow: 0 0 0 3px color-mix(in srgb,var(--grade-color) 18%,transparent),0 13px 25px color-mix(in srgb,var(--grade-dark) 28%,transparent),inset 0 2px 3px rgba(255,255,255,.42); font-size: 0; }
.seller-certificate-group .badge-grade .seller-badge-icon::before { font-size: 18px; font-weight: 900; letter-spacing: -.05em; }
.seller-certificate-group .badge-grade .seller-badge-icon::after { content: ""; position: absolute; left: 50%; bottom: -11px; width: 28px; height: 18px; z-index: -1; background: linear-gradient(135deg,var(--grade-dark) 0 48%,transparent 49%),linear-gradient(225deg,var(--grade-color) 0 48%,transparent 49%); transform: translateX(-50%); }
.seller-certificate-group .badge-grade .seller-badge-copy { max-width: 140px; color: var(--grade-dark); font-size: 14px; font-weight: 800; letter-spacing: -.025em; }
.seller-certificate-group .badge-grade .seller-badge-copy::after { content: "NAVER STORE GRADE"; display: block; margin-top: 6px; color: color-mix(in srgb,var(--grade-dark) 58%,transparent); font: 700 7px/1 ui-monospace,monospace; letter-spacing: .1em; }
.grade-tier-power { --grade-color: #b77948 !important; --grade-dark: #754526 !important; --grade-light: #f4d2aa !important; }
.grade-tier-bigpower { --grade-color: #71879b !important; --grade-dark: #435465 !important; --grade-light: #dce7ed !important; }
.grade-tier-premium { --grade-color: #dfaa17 !important; --grade-dark: #8b6000 !important; --grade-light: #ffe483 !important; }
.grade-tier-platinum { --grade-color: #419fc5 !important; --grade-dark: #126080 !important; --grade-light: #bdeeff !important; }
.grade-tier-power .seller-badge-icon::before { content: "P" !important; }.grade-tier-bigpower .seller-badge-icon::before { content: "BP" !important; font-size: 15px !important; }.grade-tier-premium .seller-badge-icon::before { content: "PR" !important; font-size: 15px !important; }.grade-tier-platinum .seller-badge-icon::before { content: "PT" !important; font-size: 15px !important; }
@keyframes grade-metal-shine { 0%,62% { transform: translateX(-65%) rotate(5deg); opacity: 0; } 69% { opacity: 1; } 84%,100% { transform: translateX(65%) rotate(5deg); opacity: 0; } }
@keyframes grade-card-breathe { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-3px); } }

/* Top seller becomes a trophy; satisfaction becomes a laurel seal. */
.seller-certificate-group .badge-seller .seller-badge-icon,
.seller-certificate-group .badge-satisfaction .seller-badge-icon { position: relative; overflow: visible; }
.seller-certificate-group .badge-seller .seller-badge-icon::before { content: ""; width: 31px; height: 25px; border-radius: 4px 4px 14px 14px; background: linear-gradient(145deg,#65d7aa,#087e54); clip-path: polygon(0 0,100% 0,85% 76%,62% 76%,58% 100%,42% 100%,38% 76%,15% 76%); box-shadow: inset 0 2px rgba(255,255,255,.38); }
.seller-certificate-group .badge-seller .seller-badge-icon::after { content: ""; position: absolute; left: 50%; bottom: 10px; width: 30px; height: 5px; border-radius: 6px; background: #fff; transform: translateX(-50%); box-shadow: -22px -25px 0 -7px #fff,22px -25px 0 -7px #fff; }
.seller-certificate-group .badge-satisfaction .seller-badge-icon::before { content: "✓"; width: 38px; height: 38px; display: grid; place-items: center; border: 2px solid rgba(255,255,255,.88); border-radius: 50%; color: #fff; font-size: 23px; font-weight: 900; }
.seller-certificate-group .badge-satisfaction .seller-badge-icon::after { content: ""; position: absolute; inset: 6px; border: 2px dotted rgba(255,255,255,.56); border-radius: 50%; animation: certification-orbit 7s linear infinite; }
.seller-certificate-group .badge-seller .seller-badge-copy::after { content: "TOP SELLER TROPHY"; }
.seller-certificate-group .badge-satisfaction .seller-badge-copy::after { content: "CUSTOMER CHOICE"; }

/* Utility badges no longer share one square icon silhouette. */
.seller-info-group .badge-years .seller-badge-icon { border-radius: 50% 50% 42% 42%; clip-path: polygon(50% 0,94% 18%,88% 78%,50% 100%,12% 78%,6% 18%); }
.seller-info-group .badge-followers .seller-badge-icon { border-radius: 50%; }
.seller-info-group .badge-followers .seller-badge-icon::before { content: "+"; }
.seller-info-group .badge-visitors .seller-badge-icon { border-radius: 50% 50% 50% 8px; transform: rotate(-5deg); }
.seller-info-group .badge-visitors .seller-badge-icon::before { transform: rotate(5deg); }
.seller-info-group .badge-business .seller-badge-icon { border-radius: 7px; clip-path: polygon(50% 0,96% 25%,96% 75%,50% 100%,4% 75%,4% 25%); }
.seller-info-group .badge-representative .seller-badge-icon { border-radius: 50% 50% 9px 9px; }
.seller-category-group .badge-main-category .seller-badge-icon { border-radius: 50%; box-shadow: 0 0 0 5px rgba(86,99,247,.08); }
.seller-category-group .badge-sub-category .seller-badge-icon { border-radius: 4px 13px 13px 4px; }

/* Membership inquiry modal */
body.has-modal { overflow: hidden; }
.modal-overlay { padding: 24px; opacity: 0; background: rgba(25,28,49,.42); backdrop-filter: blur(0); -webkit-backdrop-filter: blur(0); transition: opacity .22s ease,backdrop-filter .3s ease; }
.modal-overlay.is-open { opacity: 1; backdrop-filter: blur(14px) saturate(120%); -webkit-backdrop-filter: blur(14px) saturate(120%); }
.modal-box { width: min(100%,560px); max-width: 560px; overflow: hidden; padding: 38px 40px 34px; border: 1px solid rgba(255,255,255,.82); border-radius: 22px; background: radial-gradient(circle at 92% 4%,rgba(86,99,247,.16),transparent 33%),rgba(255,255,255,.96); box-shadow: 0 42px 120px rgba(30,35,76,.28),inset 0 1px rgba(255,255,255,.9); text-align: left; transform: translateY(24px) scale(.96); opacity: 0; transition: transform .38s cubic-bezier(.16,1,.3,1),opacity .22s ease; }
.modal-overlay.is-open .modal-box { transform: translateY(0) scale(1); opacity: 1; }
.modal-box::before { content: ""; position: absolute; right: -80px; top: -100px; width: 240px; height: 240px; border: 1px solid rgba(86,99,247,.13); border-radius: 50%; box-shadow: 0 0 0 32px rgba(86,99,247,.035),0 0 0 68px rgba(86,99,247,.025); }
.modal-close { top: 18px; right: 18px; z-index: 3; width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid rgba(79,87,139,.12); border-radius: 50%; color: #666c7f; background: rgba(255,255,255,.72); font-size: 21px; transition: transform .2s ease,background .2s ease,color .2s ease; }
.modal-close:hover { color: var(--accent); background: #fff; transform: rotate(90deg); }
.modal-signal-mark { position: relative; width: 72px; height: 72px; display: grid; place-items: center; margin-bottom: 26px; color: #fff; border-radius: 50%; background: var(--accent); box-shadow: 0 18px 38px rgba(86,99,247,.28); }
.modal-signal-mark span { font-size: 34px; font-weight: 900; letter-spacing: -.08em; }
.modal-signal-mark i { position: absolute; inset: 0; border: 1px solid rgba(86,99,247,.38); border-radius: 50%; animation: modal-signal-wave 1.8s ease-out infinite; }.modal-signal-mark i:last-child { animation-delay: .55s; }
@keyframes modal-signal-wave { to { opacity: 0; transform: scale(1.75); } }
.modal-eyebrow { margin: 0 0 10px !important; color: var(--accent) !important; font: 700 9px/1.2 ui-monospace,monospace !important; letter-spacing: .15em; }
.modal-box h3 { max-width: 430px; margin: 0 0 15px; font-size: clamp(30px,4vw,42px); line-height: 1.08; letter-spacing: -.045em; }
.modal-description { max-width: 455px; margin: 0 0 24px !important; color: #6e7487 !important; font-size: 14px !important; line-height: 1.7 !important; word-break: keep-all; }
.modal-benefits { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin-bottom: 28px; }
.modal-benefits span { min-height: 74px; display: flex; flex-direction: column; justify-content: space-between; padding: 12px; border: 1px solid rgba(76,85,144,.11); border-radius: 12px; color: #4f5568; background: #f6f7fb; font-size: 11px; font-weight: 700; line-height: 1.4; }
.modal-benefits i { color: var(--accent); font: 700 9px/1 ui-monospace,monospace; font-style: normal; }
.modal-actions { display: grid; gap: 13px; }
.modal-kakao-btn { width: 100%; display: flex !important; align-items: center; justify-content: space-between !important; padding: 0 20px; text-decoration: none; }
.modal-kakao-btn b { font-size: 18px; }
.modal-login-link { justify-self: center; color: #73798b; font-size: 12px; text-underline-offset: 4px; }
.modal-login-link:hover { color: var(--accent); }

/* Newly added owned-site channel */
.platform-website { background: linear-gradient(145deg,#31374e,#171b2b); }
.platform-website::before { background: radial-gradient(240px circle at var(--pointer-x) var(--pointer-y),rgba(116,129,255,.44),rgba(255,255,255,.08) 42%,transparent 70%); }
.platform-visual-website { position: relative; color: #fff; border-color: rgba(255,255,255,.22); background: rgba(255,255,255,.09); }
.platform-visual-website::after { content: ""; position: absolute; inset: -6px; border: 1px solid rgba(134,145,255,.34); border-radius: 22px; animation: website-signal-ring 2.8s ease-out infinite; }
.platform-website:hover .platform-visual-website svg { transform: rotate(12deg) scale(1.08); }
@keyframes website-signal-ring { 0% { opacity: .65; transform: scale(.75); } 100% { opacity: 0; transform: scale(1.45); } }

@media (max-width: 620px) {
  .seller-certificate-group { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .seller-certificate-group .seller-badge,.seller-certificate-group .badge-grade { width: 100%; min-width: 0; height: auto; min-height: 154px; }
  .seller-certificate-group .badge-grade .seller-badge-icon { width: 62px; height: 62px; }
  .modal-overlay { align-items: flex-end; padding: 12px; }
  .modal-box { max-width: none; padding: 30px 22px max(24px,env(safe-area-inset-bottom)); border-radius: 22px 22px 16px 16px; transform: translateY(42px) scale(.98); }
  .modal-signal-mark { width: 58px; height: 58px; margin-bottom: 20px; }.modal-signal-mark span { font-size: 28px; }
  .modal-box h3 { padding-right: 34px; font-size: 31px; }
  .modal-benefits { grid-template-columns: 1fr; gap: 6px; }
  .modal-benefits span { min-height: 44px; flex-direction: row; align-items: center; justify-content: flex-start; gap: 12px; }
}
@media (hover: none) {
  .platform-card, .platform-card:hover { transform: none; }
  .platform-card::before, .platform-card::after { display: none; }
  .platform-card:hover .platform-visual, .platform-card:hover .platform-visual img, .platform-card:hover .platform-content, .platform-card:hover .platform-arrow { transform: none; }
}
@media (prefers-reduced-transparency: reduce) { .panel { background: #ffffff; } }

@media (max-width: 900px) {
  .site-header { padding: 0 20px; }
  .brand-product { display: none; }
  .shell { padding: 28px 20px 56px; }
  .hero { min-height: auto; grid-template-columns: 1fr; gap: 34px; padding: 34px 0 48px; }
  .hero h1 { font-size: clamp(46px, 12vw, 76px); line-height: 1.06; }
  .signal-figure { min-height: 220px; }
  .platform-select { padding-top: 64px; }
  .platform-grid { grid-template-columns: repeat(2, minmax(0,1fr)); grid-template-rows: auto; }
  .platform-featured { grid-column: span 2; grid-row: auto; min-height: 310px; }
  .workspace, .admin-grid { grid-template-columns: 1fr; }
  .guide-shell { grid-template-columns: 1fr; padding-top: 56px; }
  .guide-intro { position: static; }
  .report-summary-grid { grid-template-columns: minmax(220px, .7fr) minmax(0, 1.3fr); }
  .json-panel { grid-column: auto; }
  .auth-layout { grid-template-columns: 1fr; }
  .auth-art { min-height: 42dvh; padding: 28px; }
  .auth-message { left: 28px; right: 28px; bottom: 28px; }
  .auth-message h1 { font-size: clamp(46px, 13vw, 80px); line-height: 1.02; }
  .auth-message p { display: none; }
  .auth-panel { padding: 48px 24px; }
}
@media (max-width: 620px) {
  .site-header { height: 64px; }
  .site-header { gap: 10px; padding: 0 14px; }
  .header-right { min-width: 0; gap: 6px; }
  .quota-badge { max-width: 104px; padding: 4px 8px; font-size: 10px; }
  .auth-bar { flex-shrink: 0; gap: 5px; font-size: 11px; }
  .auth-bar .ghost-btn { min-height: 32px; padding: 0 8px; font-size: 10px; }
  .brand { gap: 8px; font-size: 13px; }
  .query-form { grid-template-columns: 1fr; }
  .query-form > .primary-btn { width: 100%; margin-top: 0; }
  .data-grid { grid-template-columns: 1fr; }
  .keyword-grid { grid-template-columns: 1fr; }
  .review-columns { grid-template-columns: 1fr; }
  .data-item:nth-child(odd), .data-item:nth-child(even) { padding: 17px 0; border-left: 0; }
  .details-panel, .json-panel { padding: 22px; }
  .preview-frame { min-height: 260px; }
  .report-actions, .score-header, .admin-top { align-items: stretch; flex-direction: column; }
  .report-summary-grid { grid-template-columns: 1fr; gap: 8px; }
  .score-overview { align-items: center; }
  .score-overview > p { align-self: flex-start; }
  .category-summary { padding: 24px 0; }
  .findings-list { grid-template-columns: 1fr; }
  .admin-shell { padding: 28px 20px 56px; }
  .form-grid { grid-template-columns: 1fr; }
  .form-span { grid-column: auto; }
  .guide-shell { padding-top: 40px; }
  .guide-intro h1 br { display: none; }
  .guide-steps li { grid-template-columns: 38px 1fr; gap: 14px; }
  th, td { padding: 13px 14px; }
  .loader-lockup { width: min(86vw, 520px); }
  .loader-name { grid-template-columns: 1fr; gap: 2px; font-size: clamp(38px, 12vw, 56px); white-space: normal; }
  .loader-signal { justify-self: end; }
  .hero { gap: 28px; padding-top: 26px; }
  .hero h1 br { display: none; }
  .signal-figure { min-height: 310px; }
  .signal-core { width: 112px; height: 112px; }
  .signal-core span { font-size: 50px; }
  .orbit-a { width: 240px; height: 240px; }
  .orbit-b { width: 360px; height: 360px; }
  .floating-brand { width: 50px; height: 50px; border-radius: 14px; }
  .floating-brand img { width: 23px; height: 23px; }
  .brand-karrot img { width: 100%; height: 100%; }
  .platform-select { padding-top: 52px; }
  .platform-grid { grid-template-columns: 1fr; }
  .platform-featured { grid-column: auto; min-height: 290px; }
  .platform-card { min-height: 170px; }
}

/* Full-screen SIGNAL transmission intro */
.loading-screen { min-height: 100dvh; overflow: hidden; background: #f4f6fb; }
.signal-loader { position: absolute; inset: 0; overflow: hidden; isolation: isolate; }
.signal-loader-desktop { display: block; }
.signal-loader-mobile { display: none; }
.signal-grid { position: absolute; inset: -12%; opacity: .46; background-image: linear-gradient(rgba(56,64,113,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(56,64,113,.075) 1px,transparent 1px); background-size: clamp(48px,4vw,84px) clamp(48px,4vw,84px); mask-image: radial-gradient(circle at 50% 48%,#000 10%,transparent 72%); transform: perspective(900px) rotateX(57deg) translateY(26%); transform-origin: center; animation: signal-grid-rise 1.5s cubic-bezier(.16,1,.3,1) both; }
.signal-sweep { position: absolute; left: 50%; top: 48%; width: min(92vw,1760px); aspect-ratio: 1; border-radius: 50%; background: conic-gradient(from -34deg,transparent 0 82%,rgba(86,99,247,.04) 88%,rgba(86,99,247,.26) 94%,transparent 100%); mask-image: radial-gradient(circle,transparent 0 17%,#000 17.3% 54%,transparent 54.3%); transform: translate(-50%,-50%) rotate(-26deg); animation: signal-radar-sweep 1.75s cubic-bezier(.3,.7,.2,1) .15s both; }
.signal-hub { position: absolute; left: 50%; top: 47%; width: clamp(126px,9vw,184px); aspect-ratio: 1; z-index: 4; display: grid; place-items: center; align-content: center; color: #fff; border: 1px solid rgba(255,255,255,.72); border-radius: 50%; background: linear-gradient(145deg,#6875ff,#4551df); box-shadow: 0 30px 80px rgba(67,78,215,.3),inset 0 1px 1px rgba(255,255,255,.45); transform: translate(-50%,-50%) scale(0); animation: signal-hub-arrive .8s cubic-bezier(.16,1,.3,1) .18s forwards; }
.signal-hub::after { content: ""; position: absolute; inset: 10px; border: 1px solid rgba(255,255,255,.19); border-radius: 50%; }
.signal-hub strong { font-size: clamp(58px,4.7vw,92px); line-height: .8; letter-spacing: -.08em; }
.signal-hub small { margin-top: 14px; font: 700 clamp(7px,.48vw,10px)/1 ui-monospace,monospace; letter-spacing: .2em; }
.signal-rings,.signal-rings i { position: absolute; inset: 0; border: 1px solid rgba(86,99,247,.38); border-radius: 50%; }
.signal-rings { pointer-events: none; }
.signal-rings i { animation: signal-broadcast 1.45s cubic-bezier(.2,.7,.2,1) infinite; }
.signal-rings i:nth-child(2) { animation-delay: .34s; }.signal-rings i:nth-child(3) { animation-delay: .68s; }
.signal-route { position: absolute; left: 50%; top: 47%; z-index: 2; height: 1px; width: clamp(210px,25vw,520px); overflow: hidden; background: linear-gradient(90deg,rgba(86,99,247,.7),rgba(86,99,247,.06)); transform-origin: left center; opacity: 0; animation: signal-route-open .72s cubic-bezier(.16,1,.3,1) forwards; }
.signal-route::after { content: ""; position: absolute; top: -2px; width: 5px; height: 5px; border-radius: 50%; background: var(--accent); box-shadow: 0 0 15px rgba(86,99,247,.8); animation: signal-packet 1.15s cubic-bezier(.3,.7,.2,1) infinite; }
.route-a { rotate: -23deg; animation-delay: .54s; }.route-b { rotate: 31deg; animation-delay: .63s; }.route-c { rotate: 157deg; animation-delay: .72s; }.route-d { rotate: 208deg; animation-delay: .81s; }
.route-a::after { animation-delay: .1s; }.route-b::after { animation-delay: .3s; }.route-c::after { animation-delay: .5s; }.route-d::after { animation-delay: .7s; }
.signal-node { position: absolute; z-index: 3; display: flex; align-items: center; gap: 10px; color: #777e92; font: 700 clamp(8px,.55vw,11px)/1 ui-monospace,monospace; letter-spacing: .12em; opacity: 0; animation: signal-node-on .55s cubic-bezier(.16,1,.3,1) forwards; }
.signal-node i { width: 14px; height: 14px; display: block; border: 3px solid #f4f6fb; border-radius: 50%; background: var(--accent); box-shadow: 0 0 0 1px rgba(86,99,247,.24),0 0 22px rgba(86,99,247,.4); }
.node-a { left: 73%; top: 27%; animation-delay: .88s; }.node-b { left: 76%; top: 69%; animation-delay: .98s; }.node-c { right: 74%; top: 27%; animation-delay: 1.08s; flex-direction: row-reverse; }.node-d { right: 76%; top: 69%; animation-delay: 1.18s; flex-direction: row-reverse; }
.signal-wordmark { position: absolute; left: clamp(32px,4vw,84px); right: clamp(32px,4vw,84px); bottom: clamp(80px,10vh,124px); z-index: 5; display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: baseline; gap: clamp(32px,5vw,96px); overflow: hidden; line-height: .86; font-weight: 900; letter-spacing: -.075em; white-space: nowrap; }
.signal-wordmark span { min-width: 0; color: #161824; font-size: clamp(58px,7.3vw,174px); animation: signal-word-up .9s cubic-bezier(.16,1,.3,1) .35s both; }
.signal-wordmark strong { color: var(--accent); font-size: clamp(54px,5.8vw,138px); animation: signal-word-up .9s cubic-bezier(.16,1,.3,1) .48s both; }
.signal-loader-meta { position: absolute; left: clamp(32px,4vw,84px); right: clamp(32px,4vw,84px); bottom: clamp(34px,4.5vh,58px); z-index: 5; display: flex; align-items: center; justify-content: space-between; color: #8b91a4; font: 700 clamp(8px,.55vw,11px)/1 ui-monospace,monospace; letter-spacing: .16em; }
.signal-loader-meta b { display: flex; align-items: center; gap: 9px; color: #555c70; font-weight: 700; }
.signal-loader-meta b i { width: 7px; height: 7px; border-radius: 50%; background: var(--accent); box-shadow: 0 0 0 0 rgba(86,99,247,.32); animation: signal-online 1s ease-out infinite; }
.signal-progress { position: absolute; left: clamp(32px,4vw,84px); right: clamp(32px,4vw,84px); bottom: clamp(58px,7vh,88px); height: 2px; overflow: hidden; background: #dfe3ee; }
.signal-progress i { display: block; width: 100%; height: 100%; background: var(--accent); transform-origin: left; animation: signal-progress-load 2.08s cubic-bezier(.5,0,.2,1) .1s both; }
@keyframes signal-grid-rise { from { opacity: 0; transform: perspective(900px) rotateX(68deg) translateY(42%); } }
@keyframes signal-radar-sweep { from { opacity: 0; transform: translate(-50%,-50%) rotate(-90deg) scale(.5); } 35% { opacity: 1; } to { opacity: .25; transform: translate(-50%,-50%) rotate(235deg) scale(1); } }
@keyframes signal-hub-arrive { 0% { transform: translate(-50%,-50%) scale(0); } 68% { transform: translate(-50%,-50%) scale(1.08); } 100% { transform: translate(-50%,-50%) scale(1); } }
@keyframes signal-broadcast { 0% { opacity: .72; transform: scale(.75); } 100% { opacity: 0; transform: scale(3.9); } }
@keyframes signal-route-open { from { opacity: 0; scale: 0 1; } to { opacity: 1; scale: 1 1; } }
@keyframes signal-packet { from { left: 0; opacity: 0; } 12% { opacity: 1; } 88% { opacity: 1; } to { left: 100%; opacity: 0; } }
@keyframes signal-node-on { from { opacity: 0; transform: scale(.7); } to { opacity: 1; transform: scale(1); } }
@keyframes signal-word-up { from { opacity: 0; transform: translateY(112%); } }
@keyframes signal-progress-load { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@keyframes signal-online { to { box-shadow: 0 0 0 13px rgba(86,99,247,0); } }

@media (min-width: 1920px) {
  .signal-wordmark span { font-size: clamp(140px,7.1vw,190px); }
  .signal-wordmark strong { font-size: clamp(112px,5.7vw,158px); }
  .signal-hub { width: clamp(178px,9vw,230px); }
  .signal-route { width: clamp(500px,26vw,700px); }
}

@media (max-width: 700px) {
  .signal-loader-desktop { display: none; }
  .signal-loader-mobile { display: grid; grid-template-rows: 1fr auto auto; align-items: center; padding: max(28px,env(safe-area-inset-top)) 24px max(30px,env(safe-area-inset-bottom)); }
  .mobile-signal-field { position: relative; width: min(92vw,430px); aspect-ratio: 1; align-self: center; justify-self: center; }
  .mobile-orbit { position: absolute; left: 50%; top: 50%; border: 1px solid rgba(86,99,247,.18); border-radius: 50%; transform: translate(-50%,-50%) scale(.2); opacity: 0; animation: mobile-orbit-open .85s cubic-bezier(.16,1,.3,1) forwards; }
  .orbit-one { width: 38%; height: 38%; animation-delay: .12s; }.orbit-two { width: 67%; height: 67%; animation-delay: .24s; }.orbit-three { width: 96%; height: 96%; animation-delay: .36s; }
  .mobile-orbit::after { content: ""; position: absolute; left: 50%; top: -4px; width: 8px; height: 8px; border: 2px solid #f4f6fb; border-radius: 50%; background: var(--accent); box-shadow: 0 0 18px rgba(86,99,247,.5); animation: mobile-node-blink .9s ease-in-out infinite alternate; }
  .orbit-two::after { left: 12%; top: 77%; animation-delay: .3s; }.orbit-three::after { left: 88%; top: 25%; animation-delay: .6s; }
  .mobile-hub { position: absolute; left: 50%; top: 50%; width: 108px; aspect-ratio: 1; display: grid; place-items: center; color: #fff; border-radius: 50%; background: linear-gradient(145deg,#6c78ff,#4551df); box-shadow: 0 22px 55px rgba(67,78,215,.3); transform: translate(-50%,-50%) scale(0); animation: signal-hub-arrive .78s cubic-bezier(.16,1,.3,1) .1s forwards; }
  .mobile-hub strong { font-size: 54px; line-height: 1; letter-spacing: -.08em; }
  .mobile-hub i { position: absolute; inset: -1px; border: 1px solid rgba(86,99,247,.5); border-radius: 50%; animation: signal-broadcast 1.35s cubic-bezier(.2,.7,.2,1) infinite; }
  .mobile-packet { position: absolute; left: 50%; top: 50%; width: 5px; height: 5px; border-radius: 50%; background: var(--accent); box-shadow: 0 0 14px rgba(86,99,247,.7); opacity: 0; }
  .packet-one { animation: mobile-packet-a 1.25s ease-out .45s infinite; }.packet-two { animation: mobile-packet-b 1.4s ease-out .68s infinite; }.packet-three { animation: mobile-packet-c 1.55s ease-out .82s infinite; }
  .mobile-wordmark { align-self: end; overflow: hidden; padding-bottom: 26px; }
  .mobile-wordmark span,.mobile-wordmark strong { display: block; font-size: clamp(46px,15.5vw,72px); line-height: .88; font-weight: 900; letter-spacing: -.075em; animation: signal-word-up .85s cubic-bezier(.16,1,.3,1) both; }
  .mobile-wordmark strong { color: var(--accent); animation-delay: .13s; }
  .mobile-wordmark small { display: block; margin-top: 18px; color: #9298aa; font: 700 8px/1 ui-monospace,monospace; letter-spacing: .2em; animation: signal-node-on .5s ease .65s both; }
  .mobile-loader-status { display: grid; gap: 11px; align-self: end; width: 100%; }
  .mobile-loader-status span { display: flex; align-items: center; gap: 8px; color: #686f82; font: 700 9px/1 ui-monospace,monospace; letter-spacing: .14em; }
  .mobile-loader-status span i { width: 6px; height: 6px; border-radius: 50%; background: var(--accent); animation: signal-online 1s ease-out infinite; }
  .mobile-loader-status b { height: 2px; overflow: hidden; background: #dfe3ee; }
  .mobile-loader-status b::after { content: ""; display: block; width: 100%; height: 100%; background: var(--accent); transform-origin: left; animation: signal-progress-load 2.08s cubic-bezier(.5,0,.2,1) .1s both; }
  @keyframes mobile-orbit-open { to { opacity: 1; transform: translate(-50%,-50%) scale(1); } }
  @keyframes mobile-node-blink { to { transform: scale(1.5); box-shadow: 0 0 25px rgba(86,99,247,.72); } }
  @keyframes mobile-packet-a { from { opacity: 1; transform: translate(-50%,-50%); } to { opacity: 0; transform: translate(31vw,-34vw); } }
  @keyframes mobile-packet-b { from { opacity: 1; transform: translate(-50%,-50%); } to { opacity: 0; transform: translate(-38vw,16vw); } }
  @keyframes mobile-packet-c { from { opacity: 1; transform: translate(-50%,-50%); } to { opacity: 0; transform: translate(28vw,29vw); } }
}

@media (prefers-reduced-motion: reduce) {
  .signal-grid,.signal-sweep,.signal-hub,.signal-rings i,.signal-route,.signal-route::after,.signal-node,.signal-wordmark span,.signal-wordmark strong,.signal-loader-meta b i,.signal-progress i,.mobile-orbit,.mobile-orbit::after,.mobile-hub,.mobile-hub i,.mobile-packet,.mobile-wordmark span,.mobile-wordmark strong,.mobile-wordmark small,.mobile-loader-status span i,.mobile-loader-status b::after { animation: none !important; opacity: 1; transform: none; }
  .signal-hub,.mobile-hub { transform: translate(-50%,-50%); }
}

/* SEO report visual system: data-first, single-accent, motion with reduced-motion fallback */
.report-section {
  --report-ink: #171a2b;
  --report-subtle: #777d91;
  --report-accent: #5663f7;
  --report-accent-deep: #3d48d8;
  --report-soft: #f4f5fb;
  --report-radius: 18px;
  position: relative;
  isolation: isolate;
  border-color: rgba(75, 86, 172, .16);
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(249,250,254,.98));
  box-shadow: 0 32px 90px rgba(56, 63, 117, .11);
}
.report-section::before { content: ""; position: absolute; inset: 0 0 auto; z-index: -1; height: 210px; border-radius: inherit; pointer-events: none; background: radial-gradient(circle at 88% 5%, rgba(86,99,247,.12), transparent 36%), linear-gradient(115deg, rgba(86,99,247,.045), transparent 42%); }
.report-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(240px,420px); gap: 32px; align-items: end; }
.report-heading-copy { margin: 0 0 5px; color: var(--report-subtle); font-size: 14px; line-height: 1.7; text-align: right; word-break: keep-all; }
.report-actions { margin-top: 34px; }

.report-tabs { position: relative; display: grid; grid-template-columns: repeat(4,minmax(140px,1fr)); gap: 7px; margin: 30px 0 28px; padding: 7px; overflow: auto; border: 1px solid rgba(78,87,151,.12); border-radius: 16px; background: rgba(238,240,247,.78); box-shadow: inset 0 1px 3px rgba(32,38,78,.04); }
.report-tab-btn { min-height: 54px; display: flex; align-items: center; justify-content: center; gap: 9px; margin: 0; padding: 0 18px; border: 0; border-radius: 11px; color: #757b8e; transition: color .24s ease, background .3s ease, box-shadow .3s ease, transform .2s ease; }
.report-tab-btn span { font: 700 10px/1 ui-monospace, monospace; color: #a2a7b8; }
.report-tab-btn:hover { color: var(--report-ink); background: rgba(255,255,255,.62); }
.report-tab-btn.is-active { color: var(--report-accent-deep); background: #fff; box-shadow: 0 8px 26px rgba(52,59,111,.1), inset 0 0 0 1px rgba(86,99,247,.1); }
.report-tab-btn.is-active span { color: var(--report-accent); }
.report-tab-panel.is-active.tab-enter { animation: report-tab-in .48s cubic-bezier(.16,1,.3,1) both; }
@keyframes report-tab-in { from { opacity: 0; transform: translateY(12px); } }

.report-summary-grid { grid-template-columns: minmax(280px,.72fr) minmax(0,1.28fr); gap: 18px; margin: 0; }
.score-overview, .category-summary { min-height: 310px; border: 1px solid rgba(78,87,151,.12); border-radius: var(--report-radius); background: rgba(255,255,255,.9); }
.score-overview { position: relative; overflow: hidden; padding: 26px; align-items: center; }
.score-overview::before { content: ""; position: absolute; width: 220px; height: 220px; right: -95px; top: -110px; border: 34px solid rgba(86,99,247,.055); border-radius: 50%; }
.score-kicker { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.score-kicker p { margin: 0; font-size: 16px; font-weight: 800; }
.score-kicker span, .trust-kicker, .chart-heading > div > span, .metric-heading span { color: #999fb1; font: 700 9px/1.2 ui-monospace, monospace; letter-spacing: .13em; }
.score-gauge { width: 205px; height: 205px; filter: drop-shadow(0 14px 24px rgba(72,82,190,.12)); }
.score-gauge svg { width: 205px; height: 205px; overflow: visible; }
.gauge-track { stroke: #eceef6; stroke-width: 10; }
.gauge-fill { stroke-width: 10; filter: drop-shadow(0 4px 5px rgba(86,99,247,.27)); transition: stroke-dasharray 1.15s cubic-bezier(.16,1,.3,1), stroke .3s; }
.gauge-label strong { font-size: 48px; }
.category-summary { padding: 28px 30px; }
.metric-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 34px; }
.metric-heading h3 { margin: 5px 0 0; font-size: 22px; }
.metric-heading p { max-width: 190px; margin: 0; color: var(--report-subtle); font-size: 12px; line-height: 1.55; text-align: right; }
.category-bars { gap: 25px; }
.category-bar-head { margin-bottom: 11px; font-size: 14px; }
.category-bar-head small { color: var(--score-color,var(--report-accent)); font-size: 13px; }
.category-bar-track { position: relative; height: 8px; overflow: hidden; border-radius: 99px; background: repeating-linear-gradient(90deg,#e9ebf4 0,#e9ebf4 calc(10% - 2px),transparent calc(10% - 2px),transparent 10%); }
.category-bar-fill { width: 0; border-radius: inherit; background: linear-gradient(90deg,color-mix(in srgb,var(--score-color) 82%,#202442),var(--score-color)); box-shadow: 0 0 18px color-mix(in srgb,var(--score-color) 26%,transparent); transition: width 1s cubic-bezier(.16,1,.3,1); }
.category-bar-item.is-drawn .category-bar-fill { width: var(--score-width); }
.category-bar-item.score-risk { --score-color: #d84b55; }
.category-bar-item.score-caution { --score-color: #d59620; }
.category-bar-item.score-good { --score-color: #5663f7; }
.category-bar-item.score-excellent { --score-color: #22966b; }

.seller-trust { margin: 0; padding: clamp(24px,3vw,38px); overflow: hidden; border-color: rgba(86,99,247,.17); border-radius: var(--report-radius); background: radial-gradient(circle at 92% 0,rgba(86,99,247,.13),transparent 28%), #fff; box-shadow: 0 18px 52px rgba(53,60,108,.07); }
.seller-trust-head { align-items: center; justify-content: space-between; margin-bottom: 24px; }
.seller-trust-head h3 { margin-top: 6px; font-size: 22px; }
.trust-score { display: flex; align-items: baseline; gap: 5px; }
.seller-trust-head .trust-score strong { font-size: 44px; letter-spacing: -.055em; }
.seller-trust-head .trust-score small { font-size: 13px; }
.seller-badges { gap: 18px; }
.seller-certificate-group { display: flex; flex-wrap: wrap; gap: 12px; }
.seller-info-group { display: flex; flex-wrap: wrap; gap: 9px; padding-top: 18px; border-top: 1px solid rgba(78,87,151,.1); }
.seller-category-group { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; padding-top: 18px; border-top: 1px solid rgba(78,87,151,.1); }
.seller-group-heading { grid-column: 1 / -1; display: flex; align-items: baseline; gap: 10px; margin-bottom: 2px; }
.seller-group-heading span { color: #999fb1; font: 700 9px/1.2 ui-monospace,monospace; letter-spacing: .13em; }
.seller-group-heading strong { font-size: 15px; }
.seller-badge { --badge-color: #687085; position: relative; display: inline-flex; align-items: center; gap: 9px; min-height: 42px; padding: 6px 14px 6px 7px; overflow: hidden; border: 1px solid color-mix(in srgb,var(--badge-color) 20%,white); border-radius: 13px; color: #414658; background: linear-gradient(180deg,#fff,color-mix(in srgb,var(--badge-color) 5%,white)); box-shadow: 0 6px 20px color-mix(in srgb,var(--badge-color) 10%,transparent); animation: badge-arrive .55s cubic-bezier(.16,1,.3,1) both; }
.seller-badge:nth-child(2) { animation-delay: .05s; }.seller-badge:nth-child(3) { animation-delay: .1s; }.seller-badge:nth-child(4) { animation-delay: .15s; }.seller-badge:nth-child(5) { animation-delay: .2s; }.seller-badge:nth-child(6) { animation-delay: .25s; }
@keyframes badge-arrive { from { opacity: 0; transform: translateY(8px) scale(.94); } }
.seller-badge.tone-good { --badge-color: #159461; color: #176b4d; background: linear-gradient(180deg,#fff,#edf9f4); }
.seller-badge-icon { width: 28px; height: 28px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 9px; color: #fff; background: var(--badge-color); box-shadow: inset 0 1px rgba(255,255,255,.28),0 4px 10px color-mix(in srgb,var(--badge-color) 24%,transparent); font: 800 11px/1 Paperlogy,sans-serif; }
.seller-badge-icon::before { content: "S"; }
.badge-seller .seller-badge-icon::before { content: "BEST"; font-size: 7px; }.badge-satisfaction .seller-badge-icon::before { content: "A+"; }.badge-years .seller-badge-icon::before { content: "YR"; }.badge-followers .seller-badge-icon::before { content: "+"; font-size: 18px; }.badge-category .seller-badge-icon::before { content: "#"; font-size: 16px; }.badge-business .seller-badge-icon::before { content: "B"; }.badge-representative .seller-badge-icon::before { content: "R"; }.badge-repurchase .seller-badge-icon::before { content: "RE"; font-size: 15px; }
.seller-badge-copy { line-height: 1.35; }
.seller-info-group .seller-badge { min-height: 38px; padding: 5px 12px 5px 6px; border-color: #e2e5ee; color: #61677a; background: #f7f8fb; box-shadow: none; }
.seller-info-group .seller-badge-icon { width: 26px; height: 26px; border-radius: 8px; background: #81889c; box-shadow: none; }
.seller-info-group .badge-business .seller-badge-icon,
.seller-info-group .badge-representative .seller-badge-icon,
.seller-info-group .badge-followers .seller-badge-icon,
.seller-info-group .badge-visitors .seller-badge-icon { background: #858c9f; }
.badge-visitors .seller-badge-icon::before { content: "V"; }

.seller-info-group .badge-years { --year-color: #7b8297; min-height: 52px; padding-right: 16px; border-color: color-mix(in srgb,var(--year-color) 20%,white); background: color-mix(in srgb,var(--year-color) 6%,white); color: color-mix(in srgb,var(--year-color) 72%,#202331); }
.seller-info-group .badge-years .seller-badge-icon { width: 38px; height: 38px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0; border-radius: 11px; background: var(--year-color); color: #fff; font-size: 17px; font-weight: 900; line-height: .9; box-shadow: 0 7px 15px color-mix(in srgb,var(--year-color) 22%,transparent); }
.badge-years .seller-badge-icon::before { content: none; }
.seller-info-group .badge-years .seller-badge-icon::after { content: "년"; margin: 2px 0 0 1px; font-size: 8px; font-weight: 700; }
.year-tier-new { --year-color: #8a91a4 !important; }
.year-tier-established { --year-color: #4f72d8 !important; }
.year-tier-veteran { --year-color: #7256c7 !important; }
.year-tier-legend { --year-color: #b27a14 !important; }
.year-tier-veteran .seller-badge-icon,
.year-tier-legend .seller-badge-icon { animation: year-medal-pulse 3.4s ease-in-out infinite; }
@keyframes year-medal-pulse { 0%,100% { transform: scale(1); } 50% { transform: scale(1.07); } }

.badge-grade .seller-badge-icon::before { content: none; }
.seller-info-group .badge-grade { --grade-color: #8a91a4; min-height: 52px; padding-right: 16px; border-color: color-mix(in srgb,var(--grade-color) 20%,white); background: color-mix(in srgb,var(--grade-color) 6%,white); color: color-mix(in srgb,var(--grade-color) 72%,#202331); }
.seller-info-group .badge-grade .seller-badge-icon { width: 38px; height: 38px; display: flex; align-items: center; justify-content: center; border-radius: 11px; background: var(--grade-color); color: #fff; font-size: 15px; font-weight: 900; box-shadow: 0 7px 15px color-mix(in srgb,var(--grade-color) 22%,transparent); }
.grade-tier-power { --grade-color: #b77948 !important; --grade-dark: #754526 !important; --grade-light: #f4d2aa !important; }
.grade-tier-bigpower { --grade-color: #71879b !important; --grade-dark: #435465 !important; --grade-light: #dce7ed !important; }
.grade-tier-premium { --grade-color: #dfaa17 !important; --grade-dark: #8b6000 !important; --grade-light: #ffe483 !important; }
.grade-tier-platinum { --grade-color: #419fc5 !important; --grade-dark: #126080 !important; --grade-light: #bdeeff !important; }
.grade-tier-premium .seller-badge-icon,
.grade-tier-platinum .seller-badge-icon { animation: year-medal-pulse 3.4s ease-in-out infinite; }

.seller-category-group .seller-badge { width: 100%; min-height: 92px; align-items: flex-start; padding: 17px; border-radius: 15px; box-shadow: none; }
.seller-category-group .seller-badge-icon { width: 38px; height: 38px; border-radius: 11px; font-size: 0; box-shadow: none; }
.seller-category-group .seller-badge-copy { display: block; padding-top: 2px; color: #34394c; font-size: 14px; font-weight: 800; }
.seller-badge-detail { display: block; max-width: 440px; margin-top: 7px; color: #858a9b; font-size: 11px; font-weight: 500; line-height: 1.55; word-break: keep-all; }
.seller-category-group .badge-main-category { border-color: rgba(86,99,247,.2); background: linear-gradient(145deg,rgba(86,99,247,.08),rgba(255,255,255,.92)); }
.seller-category-group .badge-main-category .seller-badge-icon { background: var(--report-accent); }
.seller-category-group .badge-main-category .seller-badge-icon::before { content: "MAIN"; font-size: 7px; }
.seller-category-group .badge-sub-category { border-color: #dfe3ec; background: linear-gradient(145deg,#f5f6fa,#fff); }
.seller-category-group .badge-sub-category .seller-badge-icon { background: #7b8398; }
.seller-category-group .badge-sub-category .seller-badge-icon::before { content: "SUB"; font-size: 8px; }
.seller-category-group .badge-followers { border-color: rgba(86,99,247,.2); background: linear-gradient(145deg,rgba(86,99,247,.06),rgba(255,255,255,.92)); }
.seller-category-group .badge-followers .seller-badge-icon { display: flex; align-items: center; justify-content: center; background: var(--report-accent); overflow: visible; }
.seller-category-group .badge-followers .seller-badge-icon::before { content: none; }
.seller-category-group .badge-followers .seller-badge-icon svg { width: 60%; height: 60%; fill: none; stroke: #fff; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; transition: transform .25s ease; }
.followers-tier-small .seller-badge-icon svg { transform: scale(.75); }
.followers-tier-medium .seller-badge-icon svg { transform: scale(1); }
.followers-tier-large .seller-badge-icon svg { transform: scale(1.3); }
.followers-tier-huge .seller-badge-icon svg { transform: scale(1.6); }

/* Primary Naver seller certifications */
.seller-badge.badge-seller,
.seller-badge.badge-satisfaction {
  --badge-color: #109765;
  width: 172px;
  height: 172px;
  flex: 0 0 172px;
  flex-direction: column;
  justify-content: center;
  gap: 13px;
  padding: 18px;
  isolation: isolate;
  border-color: rgba(24,151,103,.3);
  border-radius: 20px;
  color: #126847;
  background:
    radial-gradient(circle at 50% 36%, rgba(255,255,255,.96), rgba(238,252,246,.9) 46%, rgba(211,244,231,.92)),
    #eaf9f2;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.96),
    inset 0 0 0 5px rgba(255,255,255,.48),
    0 14px 35px rgba(16,151,101,.16);
  text-align: center;
  animation: certification-arrive .7s cubic-bezier(.16,1,.3,1) both, certification-glow 3.2s ease-in-out .8s infinite;
}
.seller-badge.badge-satisfaction { animation-delay: .09s, 1.35s; }
.seller-badge.badge-seller::before,
.seller-badge.badge-satisfaction::before {
  content: "";
  position: absolute;
  inset: 7px;
  z-index: -1;
  border: 1px solid rgba(16,151,101,.18);
  border-radius: 14px;
  background: conic-gradient(from 0deg, transparent 0 22%, rgba(45,207,146,.5) 29%, transparent 36% 72%, rgba(255,255,255,.92) 79%, transparent 87%);
  mask: linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask: linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  mask-composite: exclude;
  -webkit-mask-composite: xor;
  padding: 2px;
  animation: certification-orbit 5.5s linear infinite;
}
.seller-badge.badge-seller::after,
.seller-badge.badge-satisfaction::after {
  content: "";
  position: absolute;
  inset: -35% -80%;
  z-index: 3;
  pointer-events: none;
  background: linear-gradient(105deg,transparent 42%,rgba(255,255,255,.12) 46%,rgba(255,255,255,.88) 50%,rgba(255,255,255,.16) 54%,transparent 58%);
  transform: translateX(-62%) rotate(5deg);
  animation: certification-shine 3.8s cubic-bezier(.7,0,.2,1) infinite;
}
.seller-badge.badge-seller > *,
.seller-badge.badge-satisfaction > * { position: relative; z-index: 2; }
.seller-badge.badge-seller .seller-badge-icon,
.seller-badge.badge-satisfaction .seller-badge-icon {
  width: 68px;
  height: 68px;
  border: 5px solid rgba(255,255,255,.92);
  border-radius: 50%;
  background: linear-gradient(145deg,#28b77f,#087f54);
  box-shadow:
    0 0 0 3px rgba(16,151,101,.16),
    0 12px 24px rgba(8,127,84,.28),
    inset 0 2px 3px rgba(255,255,255,.38);
  animation: certification-emblem 2.8s ease-in-out infinite;
}
.seller-badge.badge-seller .seller-badge-icon::before { content: "BEST"; font-size: 10px; letter-spacing: .02em; }
.seller-badge.badge-satisfaction .seller-badge-icon::before { content: "A+"; font-size: 22px; }
.seller-badge.badge-seller .seller-badge-copy,
.seller-badge.badge-satisfaction .seller-badge-copy {
  max-width: 130px;
  color: #105c40;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: -.025em;
}
.seller-badge.badge-seller .seller-badge-copy::after,
.seller-badge.badge-satisfaction .seller-badge-copy::after {
  content: "NAVER CERTIFIED";
  display: block;
  margin-top: 6px;
  color: rgba(16,104,71,.58);
  font: 700 7px/1 ui-monospace,monospace;
  letter-spacing: .12em;
}
@keyframes certification-arrive {
  from { opacity: 0; transform: translateY(16px) scale(.88) rotate(-2deg); }
}
@keyframes certification-glow {
  0%,100% { box-shadow: inset 0 1px 0 rgba(255,255,255,.96),inset 0 0 0 5px rgba(255,255,255,.48),0 14px 35px rgba(16,151,101,.14); }
  50% { box-shadow: inset 0 1px 0 rgba(255,255,255,.96),inset 0 0 0 5px rgba(255,255,255,.62),0 18px 44px rgba(16,151,101,.3),0 0 0 5px rgba(44,199,142,.07); }
}
@keyframes certification-orbit { to { transform: rotate(360deg); } }
@keyframes certification-shine {
  0%,58% { transform: translateX(-62%) rotate(5deg); opacity: 0; }
  64% { opacity: 1; }
  82%,100% { transform: translateX(62%) rotate(5deg); opacity: 0; }
}
@keyframes certification-emblem {
  0%,100% { transform: translateY(0) scale(1); filter: saturate(1); }
  50% { transform: translateY(-3px) scale(1.045); filter: saturate(1.16); }
}

.demo-charts { grid-template-columns: minmax(0,1.45fr) minmax(270px,.55fr); gap: 16px; margin-top: 28px; padding-top: 28px; border-top-color: rgba(78,87,151,.12); }
.demo-chart-box { min-width: 0; padding: 24px; border: 1px solid rgba(78,87,151,.11); border-radius: var(--report-radius); background: #fafbfe; }
.chart-heading { display: flex; justify-content: space-between; align-items: start; gap: 18px; margin-bottom: 22px; }
.chart-heading .field-label { margin: 5px 0 0; color: var(--report-ink); font-size: 17px; }
.chart-heading > strong { color: var(--report-accent); font-size: 12px; }
.age-bars { display: grid; gap: 11px; }
.age-bar-row { display: grid; grid-template-columns: 38px minmax(0,1fr) 42px; gap: 11px; margin: 0; }
.age-bar-label { width: auto; color: #7d8294; }
.age-bar-track { height: 10px; overflow: visible; background: repeating-linear-gradient(90deg,#e9ebf3 0,#e9ebf3 calc(20% - 2px),transparent calc(20% - 2px),transparent 20%); }
.age-bar-fill { position: relative; min-width: 4px; background: linear-gradient(90deg,var(--report-accent-deep),#7180ff); box-shadow: 0 4px 12px rgba(86,99,247,.22); transition: width 1.1s cubic-bezier(.16,1,.3,1); }
.age-bar-fill::after { content: ""; position: absolute; right: -3px; top: 50%; width: 6px; height: 16px; border-radius: 4px; background: #fff; box-shadow: 0 0 0 2px var(--report-accent); transform: translateY(-50%); }
.age-bar-value { width: auto; font-variant-numeric: tabular-nums; }
.gender-visual { display: grid; grid-template-columns: 132px 1fr; gap: 22px; align-items: center; }
.gender-donut { --male-share: 180deg; position: relative; width: 132px; aspect-ratio: 1; display: grid; place-items: center; border-radius: 50%; background: conic-gradient(var(--report-accent) 0 var(--male-share),#cfd4e8 var(--male-share) 360deg); transform: rotate(-90deg) scale(.86); opacity: .5; transition: transform .9s cubic-bezier(.16,1,.3,1),opacity .5s; }
.gender-donut.is-animated { transform: rotate(0) scale(1); opacity: 1; }
.gender-donut::before { content: ""; position: absolute; inset: 13px; border-radius: 50%; background: #fafbfe; box-shadow: inset 0 0 0 1px rgba(78,87,151,.08); }
.gender-donut > div { position: relative; z-index: 1; display: grid; text-align: center; }
.gender-donut strong { font-size: 25px; letter-spacing: -.04em; }.gender-donut small { margin-top: 3px; color: var(--report-subtle); font-size: 10px; }
.gender-bar { height: 9px; background: #e5e8f2; }
.gender-bar-male { background: var(--report-accent); transition: width 1s cubic-bezier(.16,1,.3,1); }.gender-bar-female { background: #aeb5d0; transition: width 1s cubic-bezier(.16,1,.3,1); }
.gender-legend { line-height: 1.7; word-break: keep-all; }

.findings-section, .review-section { margin: 0; padding: 26px; border: 1px solid rgba(78,87,151,.12); border-radius: var(--report-radius); background: #fff; }
.findings-list { gap: 12px; }
.findings-group-heading { position: relative; margin: 18px 0 2px; padding: 0 0 10px 16px; color: var(--report-ink); font-size: 16px; }
.findings-group-heading::before { content: ""; position: absolute; left: 0; top: 2px; width: 4px; height: 17px; border-radius: 4px; background: var(--report-accent); }
.finding-item { position: relative; min-height: 156px; padding: 20px 20px 20px 24px; overflow: hidden; border-color: rgba(78,87,151,.12); border-radius: 14px; background: linear-gradient(145deg,#fff,#fafbfe); transition: transform .25s ease,border-color .25s ease,box-shadow .25s ease; }
.finding-item::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 3px; background: var(--report-accent); opacity: .75; }
.finding-item:hover { border-color: rgba(86,99,247,.32); box-shadow: 0 14px 30px rgba(54,61,110,.08); transform: translateY(-3px); }
.finding-item.is-pass { opacity: .66; }
.finding-tag { margin-bottom: 12px; padding: 5px 9px; border-radius: 7px; }
.finding-headline { font-size: 15px; }.finding-tip { margin-top: 9px; }

.review-section { margin-top: 0; padding-top: 26px; }
.review-keyword-summary { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; padding: 0; border: 0; }
.review-keyword-col { padding: 20px; border: 1px solid rgba(78,87,151,.1); border-radius: 14px; background: #fafbfe; }
.review-keyword-col:first-child { box-shadow: inset 3px 0 #25966b; }.review-keyword-col:last-child { box-shadow: inset 3px 0 var(--danger); }
.keyword-chips .keyword-chip { border-color: rgba(86,99,247,.14); background: #fff; box-shadow: 0 4px 13px rgba(49,56,102,.05); }
.review-columns { gap: 14px; margin-top: 16px; }
.review-col { padding: 20px; border: 1px solid rgba(78,87,151,.1); border-top-width: 3px; border-radius: 14px; background: #fafbfe; }
.review-item { border-color: rgba(78,87,151,.1); box-shadow: 0 7px 20px rgba(48,55,100,.045); transition: transform .25s ease,box-shadow .25s ease; }
.review-item:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(48,55,100,.08); }
.review-meta { font-variant-numeric: tabular-nums; }
.tab-empty-state { min-height: 240px; display: grid; place-items: center; border-radius: var(--report-radius); background: linear-gradient(145deg,#fafbfe,#f2f4fb); }

@media (max-width: 900px) {
  .report-heading { grid-template-columns: 1fr; gap: 12px; }.report-heading-copy { text-align: left; }
  .report-tabs { grid-template-columns: repeat(4,minmax(150px,1fr)); }
  .demo-charts { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
  .report-section { padding: 22px 16px; }
  .report-tabs { margin-inline: -4px; padding: 5px; grid-template-columns: repeat(4,minmax(126px,1fr)); }
  .report-tab-btn { min-height: 48px; padding: 0 12px; font-size: 12px; }
  .score-overview,.category-summary { min-height: auto; }.category-summary { padding: 24px 20px; }
  .metric-heading { display: block; }.metric-heading p { margin-top: 8px; text-align: left; }
  .seller-trust { padding: 22px 16px; }.seller-trust-head .trust-score strong { font-size: 36px; }
  .seller-badge { width: 100%; }
  .seller-badge.badge-seller,.seller-badge.badge-satisfaction { width: calc(50% - 5px); height: auto; min-height: 150px; flex: 1 1 calc(50% - 5px); padding: 14px 10px; }
  .seller-category-group { grid-template-columns: 1fr; }
  .seller-info-group .seller-badge { width: auto; flex: 1 1 auto; }
  .gender-visual { grid-template-columns: 110px 1fr; gap: 14px; }.gender-donut { width: 110px; }
  .review-keyword-summary { grid-template-columns: 1fr; }
  .findings-section,.review-section { padding: 20px 14px; }
}

/* Semantic redesign pass: seller awards, audience flow, diagnostics, and data surfaces */
.seller-certificate-group { display: grid; grid-template-columns: repeat(auto-fit,minmax(164px,172px)); gap: 14px; }
.seller-certificate-group .badge-grade {
  --grade-color: #b77948;
  --grade-dark: #754526;
  --grade-light: #f4d2aa;
  width: 172px;
  height: 172px;
  flex: 0 0 172px;
  flex-direction: column;
  justify-content: center;
  gap: 13px;
  padding: 18px;
  border-color: color-mix(in srgb,var(--grade-color) 32%,white);
  border-radius: 24px 24px 38px 38px;
  color: var(--grade-dark);
  background: radial-gradient(circle at 50% 29%,#fff 0 17%,color-mix(in srgb,var(--grade-light) 48%,white) 55%,color-mix(in srgb,var(--grade-color) 14%,white));
  box-shadow: inset 0 1px #fff,inset 0 0 0 5px rgba(255,255,255,.48),0 18px 40px color-mix(in srgb,var(--grade-color) 18%,transparent);
  text-align: center;
}
.seller-certificate-group .badge-grade::before { content: "STORE GRADE"; position: absolute; top: 14px; left: 0; right: 0; color: color-mix(in srgb,var(--grade-dark) 58%,transparent); font: 800 7px/1 ui-monospace,monospace; letter-spacing: .14em; }
.seller-certificate-group .badge-grade .seller-badge-icon { width: 72px; height: 72px; border: 5px solid rgba(255,255,255,.9); border-radius: 18px 18px 30px 30px; color: #fff; background: linear-gradient(150deg,var(--grade-light),var(--grade-color) 48%,var(--grade-dark)); box-shadow: 0 0 0 3px color-mix(in srgb,var(--grade-color) 18%,transparent),0 13px 26px color-mix(in srgb,var(--grade-color) 30%,transparent),inset 0 2px rgba(255,255,255,.36); font-size: 24px; }
.seller-certificate-group .badge-grade .seller-badge-icon::after { content: "TIER"; position: absolute; left: 50%; bottom: 9px; color: rgba(255,255,255,.78); font: 800 6px/1 ui-monospace,monospace; letter-spacing: .1em; transform: translateX(-50%); }
.seller-certificate-group .badge-grade .seller-badge-copy { max-width: 132px; color: var(--grade-dark); font-size: 15px; font-weight: 850; }
.seller-certificate-group .badge-grade.grade-tier-premium,
.seller-certificate-group .badge-grade.grade-tier-platinum { animation: badge-arrive .55s cubic-bezier(.16,1,.3,1) both,year-medal-pulse 3.4s ease-in-out .7s infinite; }
.seller-certificate-group .badge-seller {
  --badge-color: #5360e8;
  border-color: rgba(83,96,232,.28);
  color: #323b9f;
  background: radial-gradient(circle at 50% 34%,#fff 0 20%,#eef0ff 56%,#dfe3ff 100%);
  box-shadow: inset 0 1px #fff,inset 0 0 0 5px rgba(255,255,255,.5),0 18px 40px rgba(70,82,205,.18);
}
.seller-certificate-group .badge-seller .seller-badge-icon { border-radius: 18px 18px 25px 25px; background: linear-gradient(150deg,#6d79ff,#323db6); box-shadow: 0 0 0 3px rgba(83,96,232,.15),0 13px 26px rgba(47,57,171,.3),inset 0 2px rgba(255,255,255,.35); }
.seller-certificate-group .badge-seller .seller-badge-icon::before { content: "★"; width: 37px; height: 31px; display: grid; place-items: center; border-radius: 8px 8px 13px 13px; color: #684d00; background: linear-gradient(145deg,#fff0ad,#dda91c); box-shadow: 0 7px 14px rgba(178,126,7,.32); font-size: 17px; }
.seller-certificate-group .badge-seller .seller-badge-icon::after { content: ""; position: absolute; top: -11px; left: 14px; width: 30px; height: 17px; border: 5px solid #e8b830; border-bottom: 0; border-radius: 10px 10px 0 0; }
.seller-certificate-group .badge-seller .seller-badge-copy { color: #323b9f; }
.seller-certificate-group .badge-seller .seller-badge-copy::after { color: rgba(50,59,159,.55); }
.seller-certificate-group .badge-satisfaction {
  --badge-color: #15956a;
  border-color: rgba(21,149,106,.27);
  color: #126a4d;
  border-radius: 50% 50% 20px 20px;
  background: radial-gradient(circle at 50% 38%,#fff 0 18%,#eefaf5 54%,#d8f2e7 100%);
  box-shadow: inset 0 1px #fff,inset 0 0 0 5px rgba(255,255,255,.52),0 18px 40px rgba(20,139,99,.17);
}
.seller-certificate-group .badge-satisfaction .seller-badge-icon { border-radius: 50%; background: radial-gradient(circle at 38% 30%,#5dd2a7,#087e58); box-shadow: 0 0 0 5px rgba(21,149,106,.1),0 13px 26px rgba(8,126,88,.25); }
.seller-certificate-group .badge-satisfaction .seller-badge-icon::before { content: "✓"; font-size: 27px; }
.seller-certificate-group .badge-satisfaction .seller-badge-icon::after { content: ""; position: absolute; inset: -10px; border: 2px dotted rgba(21,149,106,.38); border-radius: 50%; animation: certification-orbit 8s linear infinite; }
.seller-certificate-group .badge-satisfaction .seller-badge-copy { color: #126a4d; }

/* Audience card: customer volume controls how many figures are visible and how large the crowd feels. */
.seller-category-group .badge-followers { grid-column: 1 / -1; min-height: 164px; display: grid; grid-template-columns: minmax(190px,.7fr) minmax(300px,1.3fr); grid-template-areas: "copy visual"; align-items: center; gap: 22px; overflow: hidden; padding: 24px 28px; border: 1px solid rgba(86,99,247,.18); border-radius: 20px; background: radial-gradient(circle at 82% 30%,rgba(86,99,247,.14),transparent 34%),linear-gradient(145deg,#f9faff,#eef1ff); }
.seller-category-group .badge-followers::before { content: "CUSTOMER NETWORK"; position: absolute; left: 28px; top: 22px; color: #9298af; font: 700 8px/1 ui-monospace,monospace; letter-spacing: .14em; }
.seller-category-group .badge-followers .seller-badge-copy { grid-area: copy; align-self: end; padding: 28px 0 8px; color: #252a3c; font-size: clamp(18px,2vw,27px); font-weight: 800; letter-spacing: -.04em; }
.seller-category-group .badge-followers .seller-badge-copy::after { content: "관심고객과 상품의 연결이 계속 성장하고 있습니다."; display: block; max-width: 270px; margin-top: 9px; color: #7b8195; font-size: 11px; font-weight: 500; line-height: 1.55; letter-spacing: 0; }
.seller-category-group .badge-followers .seller-badge-icon { grid-area: visual; position: relative; width: 100%; height: 116px; overflow: visible; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.followers-people { position: absolute; left: 6%; right: 8%; bottom: 25px; height: 76px; display: flex; align-items: flex-end; justify-content: center; gap: clamp(8px,2vw,20px); }
.followers-people i { --person-scale: 1; position: relative; width: calc(24px * var(--person-scale)); height: calc(43px * var(--person-scale)); display: block; opacity: 0; transform-origin: bottom; animation: customer-arrive .6s cubic-bezier(.16,1,.3,1) forwards,customer-bob 2.8s ease-in-out 1s infinite; }
.followers-people i::before { content: ""; position: absolute; left: 50%; top: 0; width: calc(16px * var(--person-scale)); height: calc(16px * var(--person-scale)); border-radius: 50%; background: linear-gradient(145deg,#7884ff,#4e5ae2); transform: translateX(-50%); box-shadow: 0 5px 12px rgba(75,87,220,.2); }
.followers-people i::after { content: ""; position: absolute; left: 50%; bottom: 0; width: calc(24px * var(--person-scale)); height: calc(24px * var(--person-scale)); border-radius: 12px 12px 7px 7px; background: linear-gradient(145deg,#aab1ff,#6671ef); transform: translateX(-50%); }
.followers-people i:nth-child(1) { --person-scale: .72; animation-delay: .08s,1.1s; }.followers-people i:nth-child(2) { --person-scale: .9; animation-delay: .16s,1.3s; }.followers-people i:nth-child(3) { --person-scale: 1.18; animation-delay: .24s,1.5s; }.followers-people i:nth-child(4) { --person-scale: .96; animation-delay: .32s,1.7s; }.followers-people i:nth-child(5) { --person-scale: .78; animation-delay: .4s,1.9s; }
.followers-tier-micro .followers-people i:nth-child(n+2),.followers-tier-tiny .followers-people i:nth-child(n+3),.followers-tier-small .followers-people i:nth-child(n+4),.followers-tier-medium .followers-people i:nth-child(n+5) { display: none; }
.followers-tier-micro .followers-people { transform: scale(.7); }.followers-tier-tiny .followers-people { transform: scale(.8); }.followers-tier-small .followers-people { transform: scale(.9); }.followers-tier-medium .followers-people { transform: scale(1); }.followers-tier-large .followers-people { transform: scale(1.08); }.followers-tier-huge .followers-people { transform: scale(1.18); }.followers-tier-mega .followers-people { transform: scale(1.3); }
.delivery-route { position: absolute; left: 3%; right: 3%; bottom: 3px; height: 2px; overflow: visible; background: repeating-linear-gradient(90deg,rgba(86,99,247,.18) 0 8px,transparent 8px 14px); }
.delivery-route i { position: absolute; left: 0; top: -10px; width: 18px; height: 16px; border: 2px solid var(--accent); border-radius: 3px; background: #fff; box-shadow: 0 5px 14px rgba(86,99,247,.22); animation: delivery-travel 3.4s cubic-bezier(.4,0,.2,1) infinite; }
.delivery-route i::before { content: ""; position: absolute; left: 50%; top: -2px; bottom: -2px; border-left: 1px solid rgba(86,99,247,.3); }
.delivery-route i::after { content: ""; position: absolute; left: 3px; right: 3px; top: 5px; border-top: 1px solid rgba(86,99,247,.3); }
@keyframes customer-arrive { from { opacity: 0; transform: translateY(18px) scale(.55); } to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes customer-bob { 0%,100% { translate: 0 0; } 50% { translate: 0 -4px; } }
@keyframes delivery-travel { 0% { left: 0; opacity: 0; transform: translateX(0) rotate(-2deg); } 8% { opacity: 1; } 86% { opacity: 1; } 100% { left: calc(100% - 18px); opacity: 0; transform: translateX(0) rotate(2deg); } }

/* Product data reads like a live extraction surface, not a generic card. */
.details-panel { position: relative; overflow: hidden; border-color: rgba(86,99,247,.17); background: linear-gradient(150deg,#fff 0 72%,#f2f4ff); box-shadow: 0 22px 62px rgba(55,62,116,.09); }
.details-panel::before { content: ""; position: absolute; right: -58px; top: -72px; width: 190px; height: 190px; border: 1px solid rgba(86,99,247,.11); border-radius: 50%; box-shadow: 0 0 0 28px rgba(86,99,247,.025),0 0 0 58px rgba(86,99,247,.018); }
.details-panel .panel-title { position: relative; align-items: center; justify-content: flex-start; padding-bottom: 20px; border-bottom: 1px solid rgba(86,99,247,.11); }
.details-panel .panel-title::before { content: "DATA"; width: 48px; height: 48px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 50%; color: #fff; background: var(--accent); box-shadow: 0 10px 24px rgba(86,99,247,.25); font: 800 8px/1 ui-monospace,monospace; letter-spacing: .06em; }
.details-panel .panel-title h3 { margin-right: auto; }
.details-panel .data-grid { counter-reset: product-field; gap: 0 24px; }
.details-panel .data-item { counter-increment: product-field; position: relative; padding-left: 32px; transition: background .25s ease,transform .25s ease; }
.details-panel .data-item::before { content: counter(product-field,decimal-leading-zero); position: absolute; left: 0; top: 20px; color: #a1a6ba; font: 700 9px/1 ui-monospace,monospace; }
.details-panel .data-item:hover { background: rgba(86,99,247,.035); transform: translateX(4px); }
.details-panel.is-loading { opacity: 1; animation: none; }
.details-panel.is-loading .data-item { overflow: hidden; }
.details-panel.is-loading .data-item::after { content: ""; position: absolute; inset: 12px 0; background: linear-gradient(100deg,transparent,rgba(86,99,247,.09),transparent); transform: translateX(-110%); animation: data-shimmer 1.15s ease-in-out infinite; }
@keyframes data-shimmer { to { transform: translateX(110%); } }

/* JSON-LD becomes a structured console with its own visual identity. */
.json-panel { position: relative; overflow: hidden; border-color: #242a43; color: #f4f6ff; background: radial-gradient(circle at 92% 4%,rgba(86,99,247,.24),transparent 28%),#171b2c; box-shadow: 0 28px 74px rgba(20,24,46,.2); }
.json-panel::before { content: "{"; position: absolute; right: 24px; top: -18px; color: rgba(117,129,255,.09); font: 900 150px/1 ui-monospace,monospace; }
.json-panel .panel-title { position: relative; align-items: center; justify-content: flex-start; }
.json-panel .panel-title::before { content: "{}"; width: 46px; height: 46px; display: grid; place-items: center; flex: 0 0 auto; border: 1px solid rgba(133,144,255,.3); border-radius: 13px; color: #aeb6ff; background: rgba(86,99,247,.12); font: 800 13px/1 ui-monospace,monospace; }
.json-panel .panel-title h3 { margin-right: auto; color: #fff; }.json-panel .panel-title small { color: #8990aa; }
.json-panel .empty-visual, .json-panel .meta-findings-list { position: relative; max-height: 420px; overflow: auto; margin: 0; padding: 48px 22px 22px; color: #cfd5ef; border: 1px solid rgba(141,150,195,.13); border-radius: 14px; background: rgba(8,11,23,.62); box-shadow: inset 0 1px rgba(255,255,255,.03); scrollbar-color: #4f587c transparent; display: flex; flex-direction: column; gap: 12px; }
.json-panel .empty-visual::before, .json-panel .meta-findings-list::before { content: "META  /  SUMMARY"; position: absolute; left: 20px; top: 16px; color: #747eaa; font: 700 8px/1 ui-monospace,monospace; letter-spacing: .16em; }
.meta-finding-item { padding: 14px 16px; border-radius: 10px; border-left: 3px solid #ff6d6d; background: rgba(255,255,255,.04); }
.meta-finding-item.severity-medium { border-left-color: #d99a1f; }
.meta-finding-item.severity-pass, .meta-finding-item.is-pass { border-left-color: #4fd88b; opacity: .8; }
.meta-finding-headline { margin: 0; color: #f4f6ff; font-size: 13px; font-weight: 700; line-height: 1.5; }
.meta-finding-tip { margin: 6px 0 0; color: #9ba2c2; font-size: 12px; line-height: 1.6; white-space: pre-line; }

/* Findings become a flowing diagnostic stream rather than a wall of cards. */
.findings-section { padding: 28px 30px; background: linear-gradient(180deg,#fff,#fafbfe); }
.findings-section > .panel-title { margin-bottom: 8px; padding-bottom: 22px; border-bottom: 1px solid rgba(78,87,151,.12); }
.findings-list { display: block; }
.findings-group-heading { position: relative; margin: 30px 0 0; padding: 13px 0 13px 18px; border-bottom: 1px solid rgba(78,87,151,.1); color: #252a3b; font-size: 17px; }
.findings-group-heading::before { top: 13px; height: 18px; }
.finding-item { --stream-color: var(--report-accent); position: relative; min-height: 0; display: grid; grid-template-columns: 46px 92px minmax(180px,.9fr) minmax(240px,1.25fr); gap: 16px; align-items: center; margin: 0; padding: 18px 8px; overflow: visible; border: 0; border-bottom: 1px solid rgba(78,87,151,.09); border-radius: 0; background: transparent; box-shadow: none; opacity: 1; transition: padding .3s cubic-bezier(.16,1,.3,1),background .3s ease; }
.finding-item::before { left: 0; top: 50%; width: 7px; height: 7px; border-radius: 50%; background: var(--stream-color); box-shadow: 0 0 0 5px color-mix(in srgb,var(--stream-color) 10%,transparent); transform: translateY(-50%); opacity: 1; }
.finding-item::after { content: ""; position: absolute; left: 3px; top: 50%; width: 0; height: 1px; background: linear-gradient(90deg,var(--stream-color),transparent); transition: width .45s cubic-bezier(.16,1,.3,1); }
.finding-item:hover { padding-left: 22px; border-color: rgba(78,87,151,.09); border-bottom-color: rgba(86,99,247,.16); background: linear-gradient(90deg,color-mix(in srgb,var(--stream-color) 5%,white),transparent); box-shadow: none; transform: none; }
.finding-item:hover::after { width: 42%; }
.finding-item.is-pass { opacity: .58; --stream-color: #7a8297; }
.finding-index { color: #a0a6b9; font: 700 10px/1 ui-monospace,monospace; }
.finding-tag { justify-self: start; margin: 0; }
.finding-headline { margin: 0; font-size: 14px; line-height: 1.55; }
.finding-tip { margin: 0; color: #777e92; font-size: 12px; line-height: 1.6; }

@media (max-width: 900px) {
  .seller-category-group .badge-followers { grid-template-columns: .85fr 1.15fr; }
  .finding-item { grid-template-columns: 38px 86px minmax(0,1fr); }
  .finding-tip { grid-column: 3; }
}
@media (max-width: 620px) {
  .seller-certificate-group { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .seller-certificate-group .badge-grade { width: 100%; height: auto; min-height: 150px; flex: 1 1 auto; padding: 14px 10px; }
  .seller-category-group .badge-followers { grid-template-columns: 1fr; grid-template-areas: "copy" "visual"; min-height: 280px; padding: 22px 18px; }
  .seller-category-group .badge-followers .seller-badge-copy { align-self: auto; padding-top: 28px; }
  .seller-category-group .badge-followers .seller-badge-icon { height: 118px; }
  .details-panel .data-item { padding-left: 28px; }
  .json-panel pre { padding-inline: 15px; }
  .findings-section { padding: 22px 16px; }
  .finding-item { grid-template-columns: 34px minmax(0,1fr); gap: 9px 12px; padding: 17px 4px; }
  .finding-tag { grid-column: 2; grid-row: 1; justify-self: end; }
  .finding-headline,.finding-tip { grid-column: 2; }
  .finding-headline { font-size: 13px; }
}

@media (prefers-reduced-motion: reduce) {
  .followers-people i,.delivery-route i,.details-panel.is-loading .data-item::after { animation: none !important; opacity: 1; }
}

/* Report refinement: animated score instrumentation */
.score-overview { isolation: isolate; }
.score-overview::after { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(110deg,transparent 28%,rgba(86,99,247,.08) 43%,transparent 58%); transform: translateX(-120%); animation: score-surface-scan 5.8s ease-in-out infinite; }
.score-gauge::before,.score-gauge::after { content: ""; position: absolute; inset: 21px; border: 1px dashed rgba(86,99,247,.14); border-radius: 50%; animation: gauge-orbit 12s linear infinite; }
.score-gauge::after { inset: 39px; border-style: dotted; animation-direction: reverse; animation-duration: 8s; }
.score-gauge.is-measuring { animation: gauge-arrive .85s cubic-bezier(.16,1,.3,1) both; }
.score-gauge.is-measuring .gauge-fill { animation: gauge-energy 2.5s ease-in-out 1.1s infinite; }
.gauge-label { z-index: 2; }
.category-summary { position: relative; overflow: hidden; }
.category-summary::after { content: ""; position: absolute; top: 0; bottom: 0; left: -15%; width: 12%; pointer-events: none; background: linear-gradient(90deg,transparent,rgba(255,255,255,.9),transparent); animation: metric-sweep 6.2s ease-in-out infinite; }
.category-bar-item { transition: transform .3s ease; }
.category-bar-item:hover { transform: translateX(6px); }
.category-bar-fill { position:relative; overflow:hidden; }
.category-bar-fill::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent); transform: translateX(-100%); animation: bar-signal 3.6s ease-in-out infinite; }
@keyframes score-surface-scan { 0%,50% { transform: translateX(-120%); } 72%,100% { transform: translateX(120%); } }
@keyframes gauge-orbit { to { transform: rotate(360deg); } }
@keyframes gauge-arrive { from { opacity: 0; transform: scale(.78) rotate(-18deg); } }
@keyframes gauge-energy { 0%,100% { filter: drop-shadow(0 4px 5px rgba(86,99,247,.2)); } 50% { filter: drop-shadow(0 0 10px currentColor); } }
@keyframes metric-sweep { 0%,55% { left: -15%; } 82%,100% { left: 115%; } }
@keyframes bar-signal { 0%,56% { transform: translateX(-100%); } 78%,100% { transform: translateX(100%); } }

/* Five functional report tabs with a clear active signal. */
.report-tabs { grid-template-columns: repeat(5,minmax(132px,1fr)); padding: 8px; }
.report-tab-btn { position: relative; overflow: hidden; }
.report-tab-btn::after { content: ""; position: absolute; left: 18%; right: 18%; bottom: 5px; height: 2px; border-radius: 99px; background: var(--report-accent); transform: scaleX(0); transition: transform .35s cubic-bezier(.16,1,.3,1); }
.report-tab-btn.is-active::after { transform: scaleX(1); }
.report-tab-btn.is-active { transform: translateY(-1px); }

/* Certification rail: grade first, store age last. */
.seller-certificate-group { align-items: stretch; grid-template-columns: repeat(auto-fit,minmax(164px,172px)); }
.seller-certificate-group .badge-grade,.seller-certificate-group .badge-seller,.seller-certificate-group .badge-satisfaction,.seller-certificate-group .badge-years,.seller-certificate-group .badge-repurchase { width: 172px; height: 172px; min-width: 172px; flex: 0 0 172px; }
.seller-certificate-group .badge-years { --year-color:#7256c7; --year-shape:18px; flex-direction: column; justify-content: center; gap: 12px; padding: 18px; border-color: color-mix(in srgb,var(--year-color) 26%,white); border-radius: var(--year-shape); color: color-mix(in srgb,var(--year-color) 76%,#202331); background: radial-gradient(circle at 50% 31%,#fff 0 18%,color-mix(in srgb,var(--year-color) 7%,white) 58%,color-mix(in srgb,var(--year-color) 15%,white)); box-shadow: inset 0 1px #fff,inset 0 0 0 5px rgba(255,255,255,.5),0 18px 40px color-mix(in srgb,var(--year-color) 16%,transparent); text-align:center; }
.seller-certificate-group .badge-years::before { content: "STORE HISTORY"; position: absolute; top: 15px; left: 0; right: 0; color: color-mix(in srgb,var(--year-color) 56%,transparent); font: 800 7px/1 ui-monospace,monospace; letter-spacing:.14em; }
.seller-certificate-group .badge-years .seller-badge-icon { position: relative; width: 70px; height: 70px; display: grid; place-items: center; border: 5px solid rgba(255,255,255,.88); border-radius: var(--year-shape); color:#fff; background: linear-gradient(150deg,color-mix(in srgb,var(--year-color) 60%,white),var(--year-color)); box-shadow: 0 0 0 3px color-mix(in srgb,var(--year-color) 15%,transparent),0 13px 26px color-mix(in srgb,var(--year-color) 26%,transparent); font-size:27px; font-weight:900; line-height:1; }
.seller-certificate-group .badge-years .seller-badge-icon::after { content:"년"; position:absolute; right:8px; bottom:7px; font-size:8px; font-weight:800; opacity:.75; }
.seller-certificate-group .badge-years .seller-badge-copy { max-width:140px; color:inherit; font-size:14px; font-weight:850; }
.seller-certificate-group .year-age-1 { --year-color:#8590a5; --year-shape:14px; }
.seller-certificate-group .year-age-2 { --year-color:#6081b7; --year-shape:24px 12px 24px 12px; }
.seller-certificate-group .year-age-3 { --year-color:#5274d1; --year-shape:50% 50% 18px 18px; }
.seller-certificate-group .year-age-4 { --year-color:#4163c5; --year-shape:12px 28px 12px 28px; }
.seller-certificate-group .year-age-5 { --year-color:#645ac8; --year-shape:50%; }
.seller-certificate-group .year-age-6 { --year-color:#7452c4; --year-shape:28px 28px 12px 12px; }
.seller-certificate-group .year-age-7 { --year-color:#8150bd; --year-shape:34px 12px; }
.seller-certificate-group .year-age-8 { --year-color:#714cc5; --year-shape:22px; clip-path:polygon(18% 0,82% 0,100% 18%,100% 82%,82% 100%,18% 100%,0 82%,0 18%); }
.seller-certificate-group .year-age-9 { --year-color:#9a5e9e; --year-shape:44px 44px 16px 16px; }
.seller-certificate-group .year-age-10 { --year-color:#b27a14; --year-shape:50% 50% 12px 12px; }

/* Indoor parcel hub for interested-customer volume. */
.seller-category-group { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
.seller-category-group .badge-followers { min-height: 244px; grid-template-columns: minmax(230px,.62fr) minmax(420px,1.38fr); background: linear-gradient(145deg,#f8f9ff,#e9edff); }
.seller-category-group .badge-followers .seller-badge-icon { height: 186px; overflow:hidden; border:1px solid rgba(86,99,247,.13); border-radius:18px; background: linear-gradient(#dfe4f4 0 14%,#eef1fa 14% 72%,#d7dcec 72%); box-shadow: inset 0 1px rgba(255,255,255,.8),0 14px 32px rgba(58,68,139,.12); }
.seller-category-group .badge-followers .seller-badge-icon::after { content:"HYPEWORKS LOGISTICS HUB"; position:absolute; left:18px; top:12px; color:#737c9c; font:800 7px/1 ui-monospace,monospace; letter-spacing:.12em; }
.seller-category-group .badge-followers .seller-badge-icon::before { content:""; position:absolute; left:18px; right:18px; top:38px; height:82px; border-radius:8px 8px 3px 3px; background: repeating-linear-gradient(90deg,#c7cede 0 2px,transparent 2px 72px),linear-gradient(180deg,#f8f9fd,#e2e6f0); box-shadow: inset 0 -5px #c5cbdb; }
.followers-people { left:20%; right:auto; bottom:68px; z-index:4; width:46%; height:68px; gap:10px; transform-origin:bottom; }
.followers-people i { filter:drop-shadow(0 5px 7px rgba(46,57,121,.16)); }
.delivery-route { left:5%; right:5%; bottom:28px; z-index:3; height:24px; border:3px solid #8e96ad; border-radius:4px; background: repeating-linear-gradient(90deg,#6c748d 0 4px,#b9c0d1 4px 16px); box-shadow: 0 8px 0 #c2c8d8,0 12px 12px rgba(46,55,100,.16); }
.delivery-route::before { content:""; position:absolute; inset:-5px -2px auto; height:6px; background:repeating-linear-gradient(90deg,#f8f9fd 0 10px,#79829c 10px 13px); }
.delivery-route::after { content:"SCAN"; position:absolute; right:19%; bottom:22px; width:42px; height:70px; display:grid; place-items:start center; padding-top:8px; border:4px solid #6672e8; border-bottom:0; border-radius:9px 9px 0 0; color:#5663f7; background:linear-gradient(90deg,transparent 46%,rgba(86,99,247,.28) 48% 52%,transparent 54%); font:800 6px/1 ui-monospace,monospace; letter-spacing:.08em; animation:hub-scanner 1.4s ease-in-out infinite alternate; }
.delivery-route i { top:-14px; z-index:2; width:28px; height:25px; border-width:2px; background:linear-gradient(135deg,#fff 0 48%,#e8ebf8 49%); animation-duration:4.2s; }
@keyframes hub-scanner { to { box-shadow:0 0 24px rgba(86,99,247,.35),inset 0 -34px rgba(86,99,247,.07); } }
.seller-category-group .badge-main-category,.seller-category-group .badge-sub-category { min-height:112px; display:grid; grid-template-columns:52px minmax(0,1fr); align-items:center; column-gap:14px; }
.seller-category-group .badge-main-category { grid-column:1 / -1; }
.seller-category-group .badge-main-category .seller-badge-copy,.seller-category-group .badge-sub-category .seller-badge-copy { min-width:0; overflow-wrap:anywhere; line-height:1.45; }
.seller-category-group .badge-main-category .seller-badge-detail,.seller-category-group .badge-sub-category .seller-badge-detail { max-width:none; }

/* Age points and gender-aware semantic colors. */
.age-bar-value { min-width:48px; text-align:right; }
.gender-chart-box { --gender-primary:#5663f7; --gender-secondary:#cfd4e8; transition:border-color .35s ease,background .35s ease,box-shadow .35s ease; }
.gender-chart-box.is-male-dominant { --gender-primary:#3979d7; --gender-secondary:#dbe7f8; border-color:rgba(57,121,215,.22); background:linear-gradient(145deg,#fafcff,#edf5ff); }
.gender-chart-box.is-female-dominant { --gender-primary:#db668e; --gender-secondary:#f5dce6; border-color:rgba(219,102,142,.22); background:linear-gradient(145deg,#fffafd,#fff0f6); }
.gender-donut { background:conic-gradient(#3979d7 0 var(--male-share),#db668e var(--male-share) 360deg); box-shadow:0 16px 35px color-mix(in srgb,var(--gender-primary) 20%,transparent); }
.gender-donut strong,.gender-chart-box .chart-heading > strong { color:var(--gender-primary); }
.gender-bar-male { background:#3979d7; }.gender-bar-female { background:#db668e; }

/* Full-canvas analyst sequence while extension and server analysis are active. */
body.is-analyzing { overflow:hidden; }
.analysis-loading-screen { position:fixed; inset:0; z-index:120; display:grid; place-items:center; min-height:100dvh; padding:clamp(20px,4vw,70px); visibility:hidden; opacity:0; pointer-events:none; background:radial-gradient(circle at 72% 18%,rgba(86,99,247,.17),transparent 29%),linear-gradient(145deg,#f7f8fc,#edf0f8); transition:opacity .45s ease,visibility .45s; }
.analysis-loading-screen.is-active { visibility:visible; opacity:1; pointer-events:auto; }
.analysis-stage { width:min(1500px,94vw); min-height:min(790px,86dvh); display:grid; grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr); align-items:center; gap:clamp(40px,7vw,110px); }
.analysis-room { position:relative; height:min(680px,76dvh); overflow:hidden; border:1px solid rgba(72,84,165,.16); border-radius:32px; background:linear-gradient(180deg,#e7ebf6 0 68%,#cdd3e2 68% 71%,#e3e6ee 71%); box-shadow:0 42px 100px rgba(43,51,105,.16),inset 0 1px #fff; perspective:900px; }
.analysis-window { position:absolute; left:7%; top:8%; width:45%; height:32%; display:grid; grid-template-columns:repeat(3,1fr); gap:4px; padding:8px; border:6px solid #c2c9da; background:#929db8; box-shadow:0 16px 30px rgba(42,53,100,.12); }
.analysis-window i { background:linear-gradient(155deg,#cbd6ff,#f8f9ff 48%,#aebbed); }
.analysis-window span { position:absolute; inset:0; background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.65) 49%,transparent 62%); animation:window-light 5s ease-in-out infinite; }
.analysis-board { position:absolute; right:7%; top:10%; width:31%; height:28%; padding:28px 24px; border:8px solid #d2d7e3; background:#fbfcff; box-shadow:0 14px 30px rgba(41,49,91,.1); }
.analysis-board span { display:block; width:76%; height:7px; margin-bottom:15px; border-radius:9px; background:#d7dbea; }
.analysis-board span:nth-child(2){width:52%}.analysis-board span:nth-child(3){width:68%}
.analysis-board b { position:absolute; right:20px; bottom:20px; width:66px; height:66px; border:10px solid #5663f7; border-top-color:#dfe3f3; border-radius:50%; animation:board-chart 2.6s ease-in-out infinite; }
.analysis-desk { position:absolute; left:17%; right:8%; bottom:10%; height:25%; border-radius:12px 12px 4px 4px; background:linear-gradient(180deg,#626c87 0 16%,#3c445e 17%); box-shadow:0 24px 35px rgba(37,44,77,.25); }
.analysis-monitor { position:absolute; right:12%; bottom:52%; width:36%; height:160%; overflow:hidden; border:11px solid #252b40; border-radius:13px; background:#151a2d; box-shadow:0 18px 30px rgba(20,26,53,.3); }
.analysis-monitor::after { content:""; position:absolute; left:50%; bottom:-42px; width:72px; height:42px; border-bottom:10px solid #343b52; transform:translateX(-50%); }
.analysis-monitor span { position:absolute; inset:0; background:linear-gradient(100deg,transparent,rgba(86,99,247,.19),transparent); animation:monitor-scan 2.4s linear infinite; }
.analysis-monitor i { display:block; height:8px; margin:24px 20px -11px; border-radius:8px; background:linear-gradient(90deg,#5663f7 0 68%,#2b324d 68%); animation:monitor-line 1.7s ease-in-out infinite alternate; }
.analysis-monitor i:nth-child(3){width:67%;animation-delay:.2s}.analysis-monitor i:nth-child(4){width:82%;animation-delay:.4s}
.analysis-keyboard { position:absolute; right:11%; bottom:17%; width:40%; height:18px; border-radius:4px; background:repeating-linear-gradient(90deg,#aeb5c8 0 7px,#737d98 7px 9px); transform:skewX(-18deg); }
.analysis-person { position:absolute; left:20%; bottom:25%; width:210px; height:280px; z-index:3; }
.analyst-head { position:absolute; left:66px; top:2px; width:78px; height:88px; border-radius:46% 52% 45% 48%; background:linear-gradient(145deg,#f2c8ae,#c98f76); box-shadow:inset 0 17px #252b3e; }
.analyst-body { position:absolute; left:35px; top:77px; width:145px; height:190px; border-radius:54px 54px 18px 18px; background:linear-gradient(145deg,#6673ef,#343da6); box-shadow:inset 18px 0 rgba(255,255,255,.07); }
.analyst-arm { position:absolute; left:145px; top:110px; width:120px; height:28px; border-radius:20px; background:#4d58d7; transform-origin:left; animation:analyst-writing 1.05s ease-in-out infinite alternate; }
.analyst-arm::after { content:""; position:absolute; right:-12px; width:28px; height:28px; border-radius:50%; background:#ddb099; }
.analysis-paper { position:absolute; right:11%; bottom:30%; z-index:5; width:135px; height:174px; padding:28px 18px; border-radius:5px; background:#fff; box-shadow:0 12px 30px rgba(35,42,80,.18); transform:rotate(-3deg); animation:paper-breathe 2.2s ease-in-out infinite; }
.analysis-paper span { display:block; height:5px; margin-bottom:13px; border-radius:4px; background:#d7dbea; }.analysis-paper span:nth-child(2){width:72%}.analysis-paper span:nth-child(3){width:86%}
.analysis-paper i { position:absolute; right:16px; bottom:18px; width:38px; height:38px; border:7px solid #5663f7; border-radius:50%; }
.analysis-signal-wave { position:absolute; left:8%; bottom:7%; display:flex; align-items:end; gap:5px; height:34px; }
.analysis-signal-wave i { width:5px; height:10px; border-radius:5px; background:#5663f7; animation:signal-eq .8s ease-in-out infinite alternate; }.analysis-signal-wave i:nth-child(2){height:28px;animation-delay:.15s}.analysis-signal-wave i:nth-child(3){height:18px;animation-delay:.3s}
.analysis-copy { max-width:480px; }
.analysis-kicker { color:#5663f7; font:800 10px/1 ui-monospace,monospace; letter-spacing:.16em; }
.analysis-copy h2 { max-width:480px; margin:18px 0 16px; font-size:clamp(36px,4.4vw,72px); line-height:1.02; letter-spacing:-.06em; word-break:keep-all; }
.analysis-copy p { min-height:52px; margin:0; color:#6e758a; font-size:15px; line-height:1.75; word-break:keep-all; }
.analysis-progress { height:4px; margin-top:34px; overflow:hidden; border-radius:8px; background:#dce0ec; }.analysis-progress i { display:block; width:32%; height:100%; border-radius:inherit; background:#5663f7; animation:analysis-progress 2s cubic-bezier(.4,0,.2,1) infinite; }
.analysis-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; margin-top:18px; color:#a0a5b4; font-size:11px; font-weight:700; }.analysis-steps span { transition:color .3s,transform .3s; }.analysis-steps .is-active { color:#5663f7; transform:translateY(-2px); }.analysis-steps .is-complete { color:#4b5266; }
.analysis-popup-notice { display:flex; align-items:flex-start; gap:10px; margin-top:22px; padding:12px 16px; border:1px solid rgba(86,99,247,.22); border-radius:12px; background:rgba(86,99,247,.07); color:#3c4470; font-size:13px; font-weight:600; line-height:1.6; }
.analysis-popup-mark { flex:0 0 auto; width:20px; height:20px; display:grid; place-items:center; border-radius:50%; background:#5663f7; color:#fff; font-size:12px; font-weight:900; }
@keyframes window-light { 0%,45%{transform:translateX(-110%)}75%,100%{transform:translateX(110%)} }
@keyframes board-chart { 50%{transform:rotate(120deg) scale(1.06)} }
@keyframes monitor-scan { to{transform:translateX(100%)} }
@keyframes monitor-line { to{filter:brightness(1.5);transform:scaleX(.72);transform-origin:left} }
@keyframes analyst-writing { to{transform:rotate(12deg) translate(10px,7px)} }
@keyframes paper-breathe { 50%{transform:rotate(-1deg) translateY(-5px)} }
@keyframes signal-eq { to{height:34px;opacity:.45} }
@keyframes analysis-progress { from{transform:translateX(-110%)}to{transform:translateX(330%)} }

@media (max-width:900px) {
  .report-tabs { grid-template-columns:repeat(5,minmax(140px,1fr)); }
  .seller-category-group .badge-followers { grid-template-columns:1fr; grid-template-areas:"copy" "visual"; min-height:390px; }
  .seller-category-group .badge-followers .seller-badge-icon { height:200px; }
  .analysis-stage { grid-template-columns:1fr; gap:24px; width:min(680px,94vw); min-height:auto; }
  .analysis-room { height:min(480px,55dvh); }
  .analysis-copy { max-width:none; text-align:center; }.analysis-copy h2{margin-inline:auto;font-size:clamp(32px,7vw,52px)}.analysis-copy p{min-height:44px}
}
@media (max-width:620px) {
  .seller-certificate-group .badge-grade,.seller-certificate-group .badge-seller,.seller-certificate-group .badge-satisfaction,.seller-certificate-group .badge-years,.seller-certificate-group .badge-repurchase { width:100%; min-width:0; height:auto; min-height:150px; }
  .seller-category-group .badge-followers { min-height:350px; }
  .seller-category-group .badge-main-category,.seller-category-group .badge-sub-category { grid-column:1; min-height:104px; }
  .analysis-loading-screen { padding:16px; }
  .analysis-stage { width:100%; }
  .analysis-room { height:48dvh; min-height:330px; border-radius:22px; }
  .analysis-window { left:5%; width:44%; }.analysis-board{right:5%;width:38%;padding:18px 12px}.analysis-board b{width:46px;height:46px;border-width:7px}
  .analysis-person { left:6%; bottom:21%; transform:scale(.72); transform-origin:bottom left; }
  .analysis-desk { left:13%; right:4%; bottom:8%; }.analysis-monitor{right:5%;width:47%}.analysis-paper{right:5%;bottom:28%;transform:scale(.72) rotate(-3deg);transform-origin:right bottom}
  .analysis-copy h2 { margin-top:12px; font-size:30px; }.analysis-copy p{font-size:12px}.analysis-progress{margin-top:18px}.analysis-steps{font-size:9px}
}

/* Advertising surfaces: one moving marquee, one promotional banner and a wide-screen sticky rail. */
.side-ad-rail {
  position:fixed;
  z-index:14;
  top:96px;
  right:max(22px,calc((100vw - 1440px) / 2 - 214px));
  width:184px;
  display:grid;
  gap:14px;
}
.side-ad {
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  overflow:hidden;
  padding:18px;
  border:1px solid rgba(86,99,247,.17);
  border-radius:19px;
  color:#23283b;
  background:#f9faff;
  box-shadow:0 20px 48px rgba(48,55,100,.12);
  text-decoration:none;
  isolation:isolate;
  transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s ease,border-color .35s ease;
}
.side-ad::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:radial-gradient(circle at 86% 10%,rgba(86,99,247,.18),transparent 34%),linear-gradient(145deg,rgba(255,255,255,.92),rgba(236,239,252,.82));
}
.side-ad:hover,.side-ad:focus-visible { border-color:rgba(86,99,247,.42); box-shadow:0 28px 62px rgba(48,55,100,.18); transform:translateY(-5px); }
.side-ad-portrait { aspect-ratio:3 / 4; }
.side-ad-square { aspect-ratio:1; }
.ad-slot-label { color:#6d74a0; font:800 8px/1 ui-monospace,monospace; letter-spacing:.14em; }
.side-ad-copy { display:grid; gap:7px; }
.side-ad-copy strong { font-size:15px; line-height:1.42; letter-spacing:-.025em; }
.side-ad-copy small { color:#858b9f; font-size:9px; }
.side-ad-cta { align-self:flex-start; color:#4652dd; font-size:10px; font-weight:800; }
.side-ad-signal { position:relative; width:74px; height:74px; display:grid; place-items:center; margin:auto; }
.side-ad-signal b { position:relative; z-index:2; width:42px; height:42px; display:grid; place-items:center; border-radius:13px; color:#fff; background:#5663f7; box-shadow:0 10px 25px rgba(86,99,247,.34); font-size:20px; }
.side-ad-signal i { position:absolute; inset:8px; border:1px solid rgba(86,99,247,.28); border-radius:50%; animation:ad-signal-ring 2.8s ease-out infinite; }
.side-ad-signal i:nth-child(2) { animation-delay:1.35s; }
.side-ad-meter { height:34px; display:flex; align-items:flex-end; gap:5px; }
.side-ad-meter i { width:8px; border-radius:4px 4px 2px 2px; background:#5663f7; animation:ad-meter 1.8s ease-in-out infinite alternate; }
.side-ad-meter i:nth-child(1){height:12px}.side-ad-meter i:nth-child(2){height:22px;animation-delay:.2s}.side-ad-meter i:nth-child(3){height:31px;animation-delay:.4s}.side-ad-meter i:nth-child(4){height:18px;animation-delay:.6s}

.hero-ad-marquee {
  min-height:58px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) 34px;
  align-items:center;
  gap:16px;
  overflow:hidden;
  padding:0 16px 0 18px;
  border:1px solid rgba(86,99,247,.16);
  border-radius:14px;
  color:#252a3c;
  background:rgba(255,255,255,.78);
  box-shadow:0 14px 32px rgba(55,61,102,.08);
  text-decoration:none;
}
.hero-ad-kicker { color:#5663f7; font:800 9px/1 ui-monospace,monospace; letter-spacing:.13em; white-space:nowrap; }
.hero-ad-viewport { min-width:0; overflow:hidden; mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); }
.hero-ad-track { width:max-content; display:flex; align-items:center; gap:38px; animation:hero-ad-flow 18s linear infinite; }
.hero-ad-track b { font-size:13px; white-space:nowrap; }
.hero-ad-track i { color:#7b8193; font-size:11px; font-style:normal; white-space:nowrap; }
.hero-ad-arrow { width:28px; height:28px; display:grid; place-items:center; border-radius:9px; color:#fff; background:#5663f7; transition:transform .25s ease; }
.hero-ad-marquee:hover .hero-ad-arrow { transform:translate(2px,-2px); }

.signal-promo-banner {
  position:relative;
  min-height:260px;
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);
  align-items:center;
  gap:44px;
  overflow:hidden;
  margin:8px 0 76px;
  padding:38px clamp(32px,5vw,70px);
  border:1px solid rgba(86,99,247,.18);
  border-radius:24px;
  color:#202536;
  background:linear-gradient(116deg,#ffffff 0%,#f5f6ff 45%,#e9ecff 100%);
  box-shadow:0 28px 76px rgba(55,61,102,.11);
}
.signal-promo-banner::after { content:""; position:absolute; width:460px; height:460px; right:-190px; top:-220px; border:1px solid rgba(86,99,247,.13); border-radius:50%; box-shadow:0 0 0 70px rgba(86,99,247,.035),0 0 0 140px rgba(86,99,247,.025); pointer-events:none; }
.signal-promo-copy { position:relative; z-index:2; }
.signal-promo-copy > span { color:#5663f7; font:800 10px/1 ui-monospace,monospace; letter-spacing:.16em; }
.signal-promo-copy h2 { max-width:720px; margin:13px 0 12px; font-size:clamp(28px,3.2vw,48px); line-height:1.08; letter-spacing:-.045em; }
.signal-promo-copy p { margin:0; color:#70768a; font-size:14px; line-height:1.65; }
.signal-promo-cta { min-height:44px; margin-top:21px; padding:0 17px; border:0; border-radius:11px; color:#fff; background:#5663f7; font-weight:800; box-shadow:0 12px 25px rgba(86,99,247,.24); transition:transform .25s ease,box-shadow .25s ease; }
.signal-promo-cta:hover { transform:translateY(-3px); box-shadow:0 17px 32px rgba(86,99,247,.3); }
.signal-promo-visual { position:relative; z-index:1; min-height:190px; }
.promo-radar { position:absolute; left:50%; top:50%; width:146px; height:146px; display:grid; place-items:center; border-radius:50%; transform:translate(-50%,-50%); }
.promo-radar strong { position:relative; z-index:2; width:76px; height:76px; display:grid; place-items:center; border-radius:24px; color:#fff; background:#5663f7; box-shadow:0 18px 46px rgba(86,99,247,.35); font-size:38px; }
.promo-radar i { position:absolute; inset:0; border:1px solid rgba(86,99,247,.22); border-radius:50%; animation:promo-radar-pulse 3.6s ease-out infinite; }
.promo-radar i:nth-child(2){animation-delay:1.1s}.promo-radar i:nth-child(3){animation-delay:2.2s}
.promo-data-card { position:absolute; min-width:96px; display:grid; gap:4px; padding:12px 14px; border:1px solid rgba(86,99,247,.16); border-radius:13px; background:rgba(255,255,255,.9); box-shadow:0 15px 36px rgba(51,57,97,.12); animation:promo-card-float 4.5s ease-in-out infinite; }
.promo-data-card span { color:#858ba1; font:800 8px/1 ui-monospace,monospace; letter-spacing:.1em; }
.promo-data-card b { color:#333b91; font-size:19px; }
.promo-card-a { left:3%; top:8%; }.promo-card-b { right:1%; top:14%; animation-delay:.8s }.promo-card-c { right:10%; bottom:3%; animation-delay:1.6s }

.footer-ad-banner {
  position:relative;
  display:grid;
  grid-template-columns:104px minmax(0,1fr) auto;
  align-items:center;
  gap:30px;
  overflow:hidden;
  margin-top:80px;
  padding:34px 38px;
  border-radius:22px;
  color:#fff;
  background:#222638;
  box-shadow:0 30px 72px rgba(28,31,50,.2);
}
.footer-ad-banner::before { content:""; position:absolute; inset:0; pointer-events:none; background:radial-gradient(circle at 78% 0%,rgba(86,99,247,.55),transparent 34%),linear-gradient(100deg,transparent 30%,rgba(255,255,255,.035)); }
.footer-ad-mark,.footer-ad-copy,.footer-ad-action { position:relative; z-index:1; }
.footer-ad-mark { width:90px; height:90px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.18); border-radius:26px; background:rgba(255,255,255,.07); }
.footer-ad-mark span { font-size:28px; font-weight:900; }
.footer-ad-mark i { position:absolute; inset:14px; border:1px solid rgba(255,255,255,.18); border-radius:50%; animation:ad-signal-ring 2.8s ease-out infinite; }
.footer-ad-copy > span { color:#aeb5ff; font:800 9px/1 ui-monospace,monospace; letter-spacing:.16em; }
.footer-ad-copy h2 { margin:10px 0 8px; font-size:clamp(24px,2.5vw,38px); line-height:1.12; letter-spacing:-.04em; }
.footer-ad-copy p { margin:0; color:#b9bdc9; font-size:13px; }
.footer-ad-action { justify-self:end; }
.footer-ad-cta { min-height:50px; display:flex; align-items:center; justify-content:center; padding:0 19px; border:1px solid rgba(255,255,255,.2); border-radius:12px; color:#252a3c; background:#fff; font-weight:850; white-space:nowrap; list-style:none; cursor:pointer; transition:transform .25s ease,background .25s ease; }
.footer-ad-cta::-webkit-details-marker { display:none; }
.footer-ad-cta:hover { background:#eef0ff; transform:translateY(-3px); }
.footer-ad-cta span { margin-left:7px; color:#5663f7; }
.advertiser-detail { position:absolute; right:0; bottom:calc(100% + 12px); width:min(390px,82vw); display:flex; flex-wrap:wrap; gap:8px; padding:16px; border:1px solid rgba(255,255,255,.13); border-radius:14px; background:#2d3248; box-shadow:0 20px 48px rgba(14,16,28,.28); }
.advertiser-detail span { padding:8px 10px; border:1px solid rgba(255,255,255,.12); border-radius:9px; color:#d9dced; background:rgba(255,255,255,.055); font-size:11px; font-weight:700; }
.advertiser-detail p { flex-basis:100%; margin:5px 0 0; color:#aeb3c2; font-size:11px; }
.site-footer { max-width:1440px; min-height:116px; display:flex; align-items:center; justify-content:space-between; gap:24px; margin:auto; padding:28px 32px; color:#858a9b; }
.site-footer p { margin:0; font-size:12px; }

@keyframes ad-signal-ring { 0%{opacity:.7;transform:scale(.48)} 75%,100%{opacity:0;transform:scale(1.25)} }
@keyframes ad-meter { to{height:9px;opacity:.4} }
@keyframes hero-ad-flow { to{transform:translateX(-50%)} }
@keyframes promo-radar-pulse { 0%{opacity:.65;transform:scale(.46)} 80%,100%{opacity:0;transform:scale(1.1)} }
@keyframes promo-card-float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-8px)} }

@media (max-width:1859px) { .side-ad-rail { display:none; } }
@media (max-width:900px) {
  .signal-promo-banner { grid-template-columns:1fr; gap:24px; margin-bottom:54px; }
  .signal-promo-visual { min-height:170px; }
  .footer-ad-banner { grid-template-columns:78px minmax(0,1fr); }
  .footer-ad-mark { width:72px; height:72px; border-radius:21px; }
  .footer-ad-action { grid-column:1 / -1; justify-self:stretch; }
  .footer-ad-cta { width:100%; }
}
@media (max-width:620px) {
  .hero-ad-marquee { grid-template-columns:minmax(0,1fr) 32px; min-height:54px; padding-left:14px; }
  .hero-ad-kicker { display:none; }
  .hero-ad-track { gap:28px; }
  .signal-promo-banner { min-height:0; margin:0 0 46px; padding:27px 20px; border-radius:19px; }
  .signal-promo-copy h2 br,.footer-ad-copy h2 br { display:none; }
  .signal-promo-copy h2 { font-size:31px; }
  .signal-promo-visual { min-height:150px; transform:scale(.88); }
  .promo-card-a { left:-5%; }.promo-card-b { right:-6%; }.promo-card-c { right:2%; }
  .footer-ad-banner { grid-template-columns:1fr; gap:18px; margin-top:52px; padding:26px 20px; border-radius:19px; }
  .footer-ad-mark { width:62px; height:62px; border-radius:18px; }
  .footer-ad-copy h2 { font-size:28px; }
  .site-footer { align-items:flex-start; flex-direction:column; padding:28px 20px 38px; }
}
@media (prefers-reduced-motion:reduce) {
  .side-ad-signal i,.side-ad-meter i,.hero-ad-track,.promo-radar i,.promo-data-card,.footer-ad-mark i { animation:none !important; }
}
@media (prefers-reduced-motion:reduce) {
  .score-overview::after,.score-gauge::before,.score-gauge::after,.score-gauge.is-measuring,.score-gauge.is-measuring .gauge-fill,.category-summary::after,.category-bar-fill::after,.delivery-route::after,.analysis-window span,.analysis-board b,.analysis-monitor span,.analysis-monitor i,.analyst-arm,.analysis-paper,.analysis-signal-wave i,.analysis-progress i { animation:none !important; }
}

/* Scoped product-data loader: no people, no viewport takeover. */
body.is-analyzing { overflow:auto; }
.analysis-data-zone { position:relative; grid-column:1 / -1; display:grid; grid-template-columns:minmax(0,1.6fr) minmax(300px,.75fr); gap:20px; align-items:stretch; min-width:0; }
.analysis-data-zone > .details-panel,.analysis-data-zone > .media-panel { height:100%; min-height:560px; }
.analysis-data-zone > .media-panel { display:flex; flex-direction:column; }
.analysis-data-zone .preview-frame { flex:1; min-height:0; }
.analysis-data-zone .preview-frame img { max-height:none; }
.analysis-loading-screen { position:absolute; inset:0; z-index:12; min-height:0; padding:clamp(28px,4vw,56px); display:grid; grid-template-columns:minmax(260px,.82fr) minmax(320px,1.18fr); place-items:center; gap:clamp(28px,5vw,72px); overflow:hidden; visibility:hidden; opacity:0; pointer-events:none; border:1px solid rgba(86,99,247,.2); border-radius:18px; background:rgba(246,248,253,.96); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); box-shadow:0 24px 70px rgba(49,58,119,.16),inset 0 1px rgba(255,255,255,.9); transition:opacity .35s ease,visibility .35s; }
.analysis-loading-screen.is-active { visibility:visible; opacity:1; pointer-events:auto; }
.data-loader-visual { position:relative; width:min(360px,100%); aspect-ratio:1; display:grid; place-items:center; border:1px solid rgba(86,99,247,.13); border-radius:26px; overflow:hidden; background:radial-gradient(circle at 50% 50%,rgba(86,99,247,.12),transparent 38%),linear-gradient(145deg,#fff,#edf0fb); box-shadow:inset 0 1px #fff,0 20px 50px rgba(54,63,125,.11); }
.data-loader-grid { position:absolute; inset:0; opacity:.42; background-image:linear-gradient(rgba(86,99,247,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(86,99,247,.1) 1px,transparent 1px); background-size:32px 32px; mask-image:radial-gradient(circle,#000 25%,transparent 78%); }
.data-loader-core { position:relative; z-index:3; width:92px; height:92px; display:grid; place-items:center; border:1px solid rgba(86,99,247,.28); border-radius:24px; color:#fff; background:linear-gradient(145deg,#6c77ff,#3e49cf); box-shadow:0 18px 36px rgba(67,78,207,.28),inset 0 1px rgba(255,255,255,.42); animation:data-core-pulse 2.2s cubic-bezier(.4,0,.2,1) infinite; }
.data-loader-core span { font-size:38px; font-weight:900; letter-spacing:-.08em; }
.data-loader-core i { position:absolute; right:12px; top:12px; width:8px; height:8px; border-radius:50%; background:#fff; box-shadow:0 0 16px #fff; animation:data-status-blink 1s ease-in-out infinite alternate; }
.data-loader-orbit { position:absolute; z-index:2; border:1px solid rgba(86,99,247,.22); border-radius:50%; animation:data-orbit-spin 6s linear infinite; }
.data-loader-orbit.orbit-one { width:190px; height:190px; }
.data-loader-orbit.orbit-two { width:282px; height:282px; animation-direction:reverse; animation-duration:9s; }
.data-loader-orbit i { position:absolute; width:12px; height:12px; border:3px solid #fff; border-radius:4px; background:#5663f7; box-shadow:0 7px 18px rgba(86,99,247,.28); }
.data-loader-orbit i:nth-child(1){left:50%;top:-6px}.data-loader-orbit i:nth-child(2){right:-6px;top:50%}.data-loader-orbit i:nth-child(3){left:12%;bottom:9%}
.data-loader-orbit.orbit-two i { width:9px; height:9px; border-radius:50%; background:#8e97ee; }.data-loader-orbit.orbit-two i:nth-child(1){left:20%;top:4%}.data-loader-orbit.orbit-two i:nth-child(2){right:8%;top:72%}
.data-loader-scan { position:absolute; z-index:4; left:8%; right:8%; top:0; height:2px; background:linear-gradient(90deg,transparent,#5663f7,transparent); box-shadow:0 8px 28px rgba(86,99,247,.4); animation:data-scan-y 2.6s cubic-bezier(.4,0,.2,1) infinite; }
.analysis-loading-screen .analysis-copy { max-width:520px; text-align:left; }
.analysis-loading-screen .analysis-copy h2 { max-width:520px; margin:14px 0 12px; font-size:clamp(28px,3.2vw,48px); line-height:1.08; letter-spacing:-.055em; }
.analysis-loading-screen .analysis-copy p { min-height:46px; font-size:13px; }
.analysis-loading-screen .analysis-progress { margin-top:25px; }
@keyframes data-core-pulse { 0%,100%{transform:scale(1);filter:saturate(1)}50%{transform:scale(1.06);filter:saturate(1.18)} }
@keyframes data-status-blink { to{opacity:.35;transform:scale(.72)} }
@keyframes data-orbit-spin { to{transform:rotate(360deg)} }
@keyframes data-scan-y { 0%{top:5%;opacity:0}12%{opacity:1}88%{opacity:1}100%{top:95%;opacity:0} }

@media (max-width:900px) {
  .analysis-data-zone { grid-template-columns:1fr; }
  .analysis-data-zone > .details-panel,.analysis-data-zone > .media-panel { min-height:auto; }
  .analysis-data-zone > .media-panel { min-height:430px; }
  .analysis-loading-screen { grid-template-columns:1fr; align-content:center; gap:22px; }
  .data-loader-visual { width:min(260px,70vw); }
  .analysis-loading-screen .analysis-copy { text-align:center; }
}
@media (max-width:620px) {
  .analysis-data-zone { gap:14px; }
  .analysis-data-zone > .media-panel { min-height:360px; }
  .analysis-loading-screen { padding:22px 18px; border-radius:16px; }
  .data-loader-visual { width:min(210px,64vw); border-radius:20px; }
  .data-loader-core { width:68px;height:68px;border-radius:19px}.data-loader-core span{font-size:29px}.data-loader-orbit.orbit-one{width:142px;height:142px}.data-loader-orbit.orbit-two{width:194px;height:194px}
  .analysis-loading-screen .analysis-copy h2 { font-size:26px; }.analysis-loading-screen .analysis-copy p{font-size:11px;min-height:36px}.analysis-loading-screen .analysis-steps{margin-top:12px}
}
@media (prefers-reduced-motion:reduce) {
  .data-loader-core,.data-loader-core i,.data-loader-orbit,.data-loader-scan { animation:none !important; }
}

/* Editorial category list and object-only seller certifications. */
.seller-certificate-group { display:flex; flex-wrap:wrap; align-items:flex-end; gap:clamp(24px,4vw,52px); padding:14px 6px 30px; }
.seller-certificate-group > .seller-badge { width:150px !important; min-width:150px !important; height:188px !important; min-height:188px !important; display:flex; flex-direction:column; justify-content:flex-end; gap:14px; padding:0 !important; overflow:visible; border:0 !important; border-radius:0 !important; background:none !important; box-shadow:none !important; clip-path:none !important; text-align:center; }
.seller-certificate-group > .seller-badge::before,.seller-certificate-group > .seller-badge::after { content:none !important; }
.seller-certificate-group > .seller-badge .seller-badge-icon { width:96px; height:96px; flex:0 0 96px; margin:auto auto 0; animation:credential-float 3.5s ease-in-out infinite; }
.seller-certificate-group > .seller-badge:nth-child(2) .seller-badge-icon { animation-delay:.3s; }.seller-certificate-group > .seller-badge:nth-child(3) .seller-badge-icon { animation-delay:.6s; }.seller-certificate-group > .seller-badge:nth-child(4) .seller-badge-icon { animation-delay:.9s; }
.seller-certificate-group > .seller-badge .seller-badge-copy { max-width:150px; margin:0 auto; color:#30364a; font-size:16px; font-weight:850; letter-spacing:-.035em; }
.seller-certificate-group > .seller-badge .seller-badge-copy::after { margin-top:7px; color:#969caf; font-size:7px; }
.seller-certificate-group .badge-grade .seller-badge-icon { border-radius:24px 24px 38px 38px; }
.seller-certificate-group .badge-seller .seller-badge-icon { border-radius:22px 22px 34px 34px; }
.seller-certificate-group .badge-satisfaction .seller-badge-icon { border-radius:50%; }
.seller-certificate-group .badge-years .seller-badge-icon { border-radius:var(--year-shape); }
.seller-certificate-group .badge-years .seller-badge-copy { color:#30364a; }
.seller-certificate-group .badge-years .seller-badge-copy::after { content:"STORE HISTORY"; display:block; }
@keyframes credential-float { 0%,100%{transform:translateY(0);filter:saturate(1)}50%{transform:translateY(-7px);filter:saturate(1.12)} }

.seller-category-group .badge-main-category { grid-column:1 / -1; min-height:0; display:grid; grid-template-columns:64px minmax(0,1fr); align-items:start; gap:20px; padding:28px 0 8px; border:0; border-top:1px solid rgba(78,87,151,.12); border-radius:0; background:none; box-shadow:none; }
.seller-category-group .badge-main-category .seller-badge-icon { width:54px; height:54px; margin-top:2px; border-radius:16px; box-shadow:0 10px 24px rgba(86,99,247,.18); }
.seller-category-group .badge-main-category .seller-badge-copy { padding:0; color:#24293a; font-size:20px; line-height:1.35; letter-spacing:-.04em; }
.category-token-list { display:flex; flex-wrap:wrap; gap:9px 10px; margin-top:17px; }
.category-token { display:inline-flex; align-items:center; min-height:36px; padding:7px 13px; border:1px solid rgba(86,99,247,.13); border-radius:10px; color:#565d73; background:#f7f8fd; font-size:13px; font-weight:650; line-height:1.35; letter-spacing:-.02em; transition:color .22s ease,border-color .22s ease,background .22s ease,transform .22s ease; }
.category-token:hover { color:#3f4bd4; border-color:rgba(86,99,247,.32); background:#eef0ff; transform:translateY(-2px); }

@media (max-width:620px) {
  .seller-certificate-group { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 10px; padding-inline:0; }
  .seller-certificate-group > .seller-badge { width:100% !important; min-width:0 !important; height:164px !important; min-height:164px !important; }
  .seller-certificate-group > .seller-badge .seller-badge-icon { width:82px;height:82px;flex-basis:82px}.seller-certificate-group > .seller-badge .seller-badge-copy{font-size:14px}
  .seller-category-group .badge-main-category { grid-template-columns:1fr; gap:14px; padding-top:22px; }
  .seller-category-group .badge-main-category .seller-badge-copy { font-size:18px; }
  .category-token-list { gap:8px; margin-top:14px; }.category-token{font-size:12px;padding:7px 11px}
}
@media (prefers-reduced-motion:reduce) {
  .seller-certificate-group > .seller-badge .seller-badge-icon { animation:none !important; }
}

/* Seven-stage interested-customer network visualization. */
.seller-category-group .badge-followers { --tier-accent:#6875e8; --tier-soft:#edf0ff; min-height:278px; background:radial-gradient(circle at 82% 28%,color-mix(in srgb,var(--tier-accent) 15%,transparent),transparent 34%),linear-gradient(145deg,#fafbff,var(--tier-soft)); }
.followers-tier-micro { --tier-accent:#8991aa !important; --tier-soft:#f2f3f7 !important; }
.followers-tier-tiny { --tier-accent:#7383bc !important; --tier-soft:#f0f3fa !important; }
.followers-tier-small { --tier-accent:#6177d2 !important; --tier-soft:#edf1ff !important; }
.followers-tier-medium { --tier-accent:#5663f7 !important; --tier-soft:#e9edff !important; }
.followers-tier-large { --tier-accent:#4654dc !important; --tier-soft:#e5e9ff !important; }
.followers-tier-huge { --tier-accent:#3946c4 !important; --tier-soft:#e1e5ff !important; }
.followers-tier-mega { --tier-accent:#27339f !important; --tier-soft:#dce1ff !important; }
.seller-category-group .badge-followers .seller-badge-copy { font-size:clamp(22px,2.4vw,32px); }
.seller-category-group .badge-followers .seller-badge-copy::after { content:"고객 규모에 따라 네트워크의 밀도와 확산 단계를 시각화합니다."; max-width:330px; font-size:12px; }
.seller-category-group .badge-followers .seller-badge-icon { display:grid; grid-template-columns:minmax(230px,1fr) minmax(126px,.42fr); align-items:center; gap:18px; height:205px; padding:20px 22px 54px; border-color:color-mix(in srgb,var(--tier-accent) 18%,white); background:linear-gradient(145deg,rgba(255,255,255,.92),color-mix(in srgb,var(--tier-soft) 80%,white)); }
.seller-category-group .badge-followers .seller-badge-icon::before { inset:0; height:auto; border:0; border-radius:0; background-image:linear-gradient(color-mix(in srgb,var(--tier-accent) 8%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--tier-accent) 8%,transparent) 1px,transparent 1px); background-size:28px 28px; box-shadow:none; mask-image:linear-gradient(90deg,#000,transparent 72%); }
.seller-category-group .badge-followers .seller-badge-icon::after { content:"CUSTOMER SIGNAL MAP"; left:18px; top:14px; color:color-mix(in srgb,var(--tier-accent) 62%,#5f667c); }
.customer-network-map { position:relative; width:100%; height:126px; display:grid; place-items:center; transform:scale(var(--crowd-scale)); transform-origin:center; transition:transform .65s cubic-bezier(.16,1,.3,1); }
.network-rings { position:absolute; inset:50% auto auto 50%; width:112px; height:112px; transform:translate(-50%,-50%); }
.network-rings i { position:absolute; inset:0; border:1px solid color-mix(in srgb,var(--tier-accent) 24%,transparent); border-radius:50%; animation:customer-ring 2.8s ease-out infinite; }.network-rings i:nth-child(2){animation-delay:.8s}.network-rings i:nth-child(3){animation-delay:1.6s}
.network-pulse { position:absolute; left:50%; top:50%; z-index:4; width:46px; height:46px; display:grid; place-items:center; border:5px solid rgba(255,255,255,.9); border-radius:16px; color:#fff; background:linear-gradient(145deg,color-mix(in srgb,var(--tier-accent) 65%,white),var(--tier-accent)); box-shadow:0 0 0 4px color-mix(in srgb,var(--tier-accent) 12%,transparent),0 12px 26px color-mix(in srgb,var(--tier-accent) 28%,transparent); transform:translate(-50%,-50%); }
.network-pulse::before { content:"S"; font-size:18px; font-weight:900; }
.network-pulse::after { content:""; position:absolute; inset:-10px; border:1px dashed color-mix(in srgb,var(--tier-accent) 38%,transparent); border-radius:20px; animation:network-hub-spin 8s linear infinite; }
.network-links { position:absolute; inset:0; z-index:1; }
.network-links i { position:absolute; left:50%; top:50%; width:36%; height:1px; background:linear-gradient(90deg,color-mix(in srgb,var(--tier-accent) 55%,transparent),transparent); transform-origin:left; }.network-links i:nth-child(1){transform:rotate(-148deg)}.network-links i:nth-child(2){transform:rotate(-32deg)}.network-links i:nth-child(3){transform:rotate(145deg)}.network-links i:nth-child(4){transform:rotate(28deg)}
.customer-network-map .followers-people { position:absolute; inset:0; z-index:3; width:auto; height:auto; display:flex; align-items:center; justify-content:space-between; gap:0; transform:none; }
.customer-network-map .followers-people i { --person-scale:1; position:relative; width:45px; height:45px; display:grid; place-items:center; flex:0 0 45px; opacity:0; border:1px solid color-mix(in srgb,var(--tier-accent) 18%,white); border-radius:15px; background:rgba(255,255,255,.92); box-shadow:0 10px 22px color-mix(in srgb,var(--tier-accent) 14%,transparent); animation:network-person-in .62s cubic-bezier(.16,1,.3,1) forwards,network-person-float 3s ease-in-out 1s infinite; }
.customer-network-map .followers-people i::before { top:8px; width:12px; height:12px; background:var(--tier-accent); box-shadow:none; }
.customer-network-map .followers-people i::after { bottom:7px; width:23px; height:14px; border-radius:12px 12px 6px 6px; background:linear-gradient(145deg,color-mix(in srgb,var(--tier-accent) 58%,white),var(--tier-accent)); }
.customer-network-map .followers-people i:nth-child(1){align-self:flex-start}.customer-network-map .followers-people i:nth-child(2){align-self:flex-end}.customer-network-map .followers-people i:nth-child(3){align-self:flex-start}.customer-network-map .followers-people i:nth-child(4){align-self:flex-end}.customer-network-map .followers-people i:nth-child(5){align-self:flex-start}
.badge-followers[data-people="1"] .followers-people i:nth-child(n+2),.badge-followers[data-people="2"] .followers-people i:nth-child(n+3),.badge-followers[data-people="3"] .followers-people i:nth-child(n+4),.badge-followers[data-people="4"] .followers-people i:nth-child(n+5) { display:none; }
.badge-followers[data-people="1"] .followers-people,.badge-followers[data-people="2"] .followers-people { justify-content:space-around; }.badge-followers[data-people="3"] .followers-people,.badge-followers[data-people="4"] .followers-people { justify-content:space-between; }
.audience-tier { align-self:stretch; display:flex; flex-direction:column; justify-content:center; gap:6px; padding-left:18px; border-left:1px solid color-mix(in srgb,var(--tier-accent) 18%,transparent); text-align:left; }
.audience-tier small { color:#8b91a5; font-size:9px; font-weight:700; }.audience-tier strong { color:#2b3145; font-size:16px; line-height:1.25; letter-spacing:-.035em; }.audience-tier em { width:max-content; padding:5px 8px; border-radius:7px; color:var(--tier-accent); background:color-mix(in srgb,var(--tier-accent) 9%,white); font:800 8px/1 ui-monospace,monospace; letter-spacing:.08em; font-style:normal; }
.seller-category-group .badge-followers .delivery-route { left:22px; right:22px; bottom:22px; height:18px; border-color:color-mix(in srgb,var(--tier-accent) 46%,#777f96); background:repeating-linear-gradient(90deg,color-mix(in srgb,var(--tier-accent) 45%,#5f667b) 0 4px,#c5cad8 4px 16px); }
.seller-category-group .badge-followers .delivery-route::after { right:12%; height:54px; color:var(--tier-accent); border-color:var(--tier-accent); animation:none; }
.seller-category-group .badge-followers .delivery-route i { border-color:var(--tier-accent); animation-duration:4.4s; }
@keyframes customer-ring { from{opacity:.7;transform:scale(.35)}to{opacity:0;transform:scale(1.35)} }
@keyframes network-hub-spin { to{transform:rotate(360deg)} }
@keyframes network-person-in { from{opacity:0;transform:translateY(14px) scale(.65)}to{opacity:1;transform:translateY(0) scale(1)} }
@keyframes network-person-float { 50%{translate:0 -5px} }

@media (max-width:900px) {
  .seller-category-group .badge-followers .seller-badge-icon { grid-template-columns:1fr 140px; }
}
@media (max-width:620px) {
  .seller-category-group .badge-followers { min-height:430px; }
  .seller-category-group .badge-followers .seller-badge-icon { height:238px; grid-template-columns:1fr; grid-template-rows:1fr auto; gap:8px; padding:24px 16px 48px; }
  .customer-network-map { height:125px; transform:scale(1); }
  .audience-tier { align-self:auto; display:grid; grid-template-columns:1fr auto; padding:10px 0 0; border-left:0; border-top:1px solid color-mix(in srgb,var(--tier-accent) 18%,transparent); }.audience-tier small{grid-column:1}.audience-tier strong{grid-column:1}.audience-tier em{grid-column:2;grid-row:1 / 3;align-self:center}
}
@media (prefers-reduced-motion:reduce) {
  .network-rings i,.network-pulse::after,.customer-network-map .followers-people i { animation:none !important; opacity:1; }
}

/* Top seller as a true trophy object, without a square badge shell. */
.seller-certificate-group .badge-seller .seller-badge-icon {
  position:relative;
  width:118px;
  height:108px;
  flex-basis:108px;
  overflow:visible;
  border:0;
  border-radius:0;
  background:
    radial-gradient(circle at 17% 35%,transparent 0 13px,#d89b13 14px 19px,transparent 20px),
    radial-gradient(circle at 83% 35%,transparent 0 13px,#d89b13 14px 19px,transparent 20px);
  box-shadow:none;
  filter:drop-shadow(0 15px 16px rgba(172,116,5,.24));
}
.seller-certificate-group .badge-seller .seller-badge-icon::before {
  content:"★";
  position:absolute;
  left:50%;
  top:5px;
  width:76px;
  height:64px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:9px 9px 32px 32px;
  color:#725000;
  background:linear-gradient(115deg,#c78b0b 0,#ffe58a 26%,#e9b82d 52%,#fff0a5 70%,#b97800 100%);
  clip-path:polygon(0 0,100% 0,91% 61%,76% 84%,60% 91%,58% 100%,42% 100%,40% 91%,24% 84%,9% 61%);
  box-shadow:inset 0 3px 3px rgba(255,255,255,.48),inset 0 -8px 12px rgba(128,78,0,.16);
  transform:translateX(-50%);
  font-size:24px;
  text-shadow:0 1px rgba(255,255,255,.46);
  animation:trophy-metal-glow 3.4s ease-in-out infinite;
}
.seller-certificate-group .badge-seller .seller-badge-icon::after {
  content:"";
  position:absolute;
  left:50%;
  bottom:1px;
  width:72px;
  height:40px;
  background:
    linear-gradient(90deg,transparent 0 27px,#d89a10 27px 45px,transparent 45px) 0 0 / 72px 25px no-repeat,
    linear-gradient(110deg,#a86b00,#f2c342 44%,#fff0a0 58%,#986000) 50% 23px / 58px 13px no-repeat,
    linear-gradient(90deg,#8f5700,#e0aa24 24%,#ffe381 50%,#b87800) 50% 36px / 72px 4px no-repeat;
  border-radius:0 0 8px 8px;
  transform:translateX(-50%);
}
.seller-certificate-group .badge-seller .seller-badge-copy { color:#55400b; }
.seller-certificate-group .badge-seller .seller-badge-copy::after { content:"NAVER TOP SELLER"; color:rgba(99,72,4,.53); }
@keyframes trophy-metal-glow {
  0%,100% { filter:brightness(1) saturate(1); transform:translateX(-50%) rotate(0); }
  50% { filter:brightness(1.13) saturate(1.08); transform:translateX(-50%) rotate(-1.5deg); }
}
@media (prefers-reduced-motion:reduce) {
  .seller-certificate-group .badge-seller .seller-badge-icon::before { animation:none !important; }
}

/* Findings interaction: keep the signal emphasis beside the copy, never through it. */
.finding-item::after { content:none !important; }
.finding-item:hover::before {
  transform:translateY(-50%) scale(1.38);
  box-shadow:0 0 0 7px color-mix(in srgb,var(--stream-color) 12%,transparent);
}
.finding-item:hover {
  padding-left:18px;
  background:linear-gradient(90deg,color-mix(in srgb,var(--stream-color) 6%,white),transparent 72%);
}

/* Auto-classified social channel directory. */
.social-channel-list {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:12px;
}
.social-channel-link {
  --social-accent:#5663f7;
  --social-soft:#eef0ff;
  position:relative;
  min-width:0;
  display:grid;
  grid-template-columns:48px minmax(0,1fr) 32px;
  align-items:center;
  gap:14px;
  min-height:82px;
  padding:14px 14px 14px 16px;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--social-accent) 16%,#dfe3ef);
  border-radius:14px;
  color:var(--text);
  background:linear-gradient(112deg,color-mix(in srgb,var(--social-soft) 68%,white),white 64%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82);
  text-decoration:none;
  transition:transform .28s cubic-bezier(.16,1,.3,1),border-color .28s ease,box-shadow .28s ease;
}
.social-channel-link::before {
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  background:var(--social-accent);
  opacity:.72;
}
.social-channel-link:hover {
  border-color:color-mix(in srgb,var(--social-accent) 34%,#dfe3ef);
  box-shadow:0 14px 30px color-mix(in srgb,var(--social-accent) 12%,transparent),inset 0 1px 0 rgba(255,255,255,.9);
  transform:translateY(-3px);
}
.social-channel-link:active { transform:translateY(-1px) scale(.99); }
.social-channel-link:focus-visible { outline:3px solid color-mix(in srgb,var(--social-accent) 30%,transparent); outline-offset:3px; }
.social-channel-icon {
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:13px;
  color:#fff;
  background:var(--social-accent);
  box-shadow:0 8px 18px color-mix(in srgb,var(--social-accent) 22%,transparent);
  font:900 15px/1 ui-sans-serif,system-ui,sans-serif;
  transition:transform .28s cubic-bezier(.16,1,.3,1);
}
.social-channel-link:hover .social-channel-icon { transform:scale(1.07) rotate(-2deg); }
.social-channel-icon img { width:25px; height:25px; display:block; object-fit:contain; }
.social-channel-copy { min-width:0; display:grid; gap:5px; }
.social-channel-platform { color:#222739; font-size:14px; font-weight:800; line-height:1.25; }
.social-channel-url { overflow:hidden; color:#7a8196; font-size:12px; line-height:1.35; text-overflow:ellipsis; white-space:nowrap; }
.social-channel-arrow {
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  justify-self:end;
  border-radius:10px;
  color:var(--social-accent);
  background:color-mix(in srgb,var(--social-accent) 8%,white);
  font-size:15px;
  transition:transform .28s cubic-bezier(.16,1,.3,1);
}
.social-channel-link:hover .social-channel-arrow { transform:translate(2px,-2px); }
.social-platform-naver-blog,.social-platform-naver-cafe,.social-platform-naver-band { --social-accent:#03a94f; --social-soft:#eaf9f0; }
.social-platform-instagram { --social-accent:#cf3d78; --social-soft:#fff0f6; }
.social-platform-youtube { --social-accent:#e33b42; --social-soft:#fff0f1; }
.social-platform-tiktok { --social-accent:#202536; --social-soft:#f1f2f5; }
.social-platform-facebook { --social-accent:#3975d5; --social-soft:#edf4ff; }
.social-platform-x,.social-platform-threads { --social-accent:#272b35; --social-soft:#f1f2f4; }
.social-platform-kakao { --social-accent:#8c7600; --social-soft:#fff9d9; }
.social-platform-kakao .social-channel-icon { color:#29230d; background:#f6dc32; }

@media (max-width:620px) {
  .social-channel-list { grid-template-columns:1fr; }
  .social-channel-link { min-height:76px; grid-template-columns:44px minmax(0,1fr) 30px; gap:12px; padding:12px 12px 12px 14px; }
  .social-channel-icon { width:44px; height:44px; border-radius:12px; }
}
@media (prefers-reduced-motion:reduce) {
  .social-channel-link,.social-channel-icon,.social-channel-arrow,.finding-item::before { transition:none !important; }
}

/* Keep every seller credential on one visual and typographic baseline. */
.seller-certificate-group {
  align-items:start;
}
.seller-certificate-group > .seller-badge {
  display:grid;
  grid-template-columns:1fr;
  grid-template-rows:116px minmax(48px,auto);
  align-items:start;
  justify-items:center;
  justify-content:stretch;
  gap:12px;
  height:188px !important;
  min-height:188px !important;
}
.seller-certificate-group > .seller-badge .seller-badge-icon {
  align-self:center;
  justify-self:center;
  margin:0 !important;
  animation:none !important;
}
.seller-certificate-group > .seller-badge .seller-badge-copy {
  align-self:start;
  min-height:48px;
  margin:0 auto;
}
.seller-certificate-group .badge-seller .seller-badge-icon {
  width:118px;
  height:112px;
  flex-basis:112px;
  padding:0;
  overflow:visible;
  background-repeat:no-repeat;
  background-position:center center;
  filter:none !important;
}
.seller-certificate-group .badge-seller .seller-badge-icon::before {
  top:2px;
  box-shadow:
    inset 0 3px 3px rgba(255,255,255,.48),
    inset 0 -8px 12px rgba(128,78,0,.16),
    0 14px 18px rgba(172,116,5,.18);
}
.seller-certificate-group .badge-seller .seller-badge-icon::after {
  bottom:7px;
  filter:drop-shadow(0 8px 7px rgba(132,84,0,.18));
}

/* Dedicated trophy DOM avoids legacy pseudo-element compositing artifacts. */
.seller-certificate-group .badge-seller .seller-badge-icon {
  display:grid;
  place-items:center;
  background:none !important;
}
.seller-certificate-group .badge-seller .seller-badge-icon::before,
.seller-certificate-group .badge-seller .seller-badge-icon::after {
  content:none !important;
  display:none !important;
}
.seller-trophy-object {
  position:relative;
  width:112px;
  height:108px;
  display:block;
}
.seller-trophy-cup {
  position:absolute;
  left:50%;
  top:5px;
  z-index:2;
  width:72px;
  height:62px;
  display:grid;
  place-items:center;
  border-radius:8px 8px 30px 30px;
  color:#725000;
  background:linear-gradient(115deg,#bd7d00 0,#ffe58a 25%,#e4ad17 50%,#fff0a5 69%,#aa6700 100%);
  clip-path:polygon(0 0,100% 0,91% 61%,76% 84%,60% 91%,58% 100%,42% 100%,40% 91%,24% 84%,9% 61%);
  box-shadow:inset 0 3px 3px rgba(255,255,255,.5),inset 0 -8px 12px rgba(128,78,0,.16),0 12px 17px rgba(172,116,5,.2);
  transform:translateX(-50%);
  font:normal 24px/1 sans-serif;
  animation:trophy-cup-shine 3.4s ease-in-out infinite;
}
.seller-trophy-object::before,
.seller-trophy-object::after {
  content:"";
  position:absolute;
  top:25px;
  z-index:1;
  width:29px;
  height:30px;
  border:6px solid #d89b13;
  border-radius:50%;
}
.seller-trophy-object::before { left:2px; }
.seller-trophy-object::after { right:2px; }
.seller-trophy-stem {
  position:absolute;
  left:50%;
  top:61px;
  width:16px;
  height:25px;
  border-radius:0 0 5px 5px;
  background:linear-gradient(90deg,#b87800,#ffe17a 48%,#b87800);
  transform:translateX(-50%);
}
.seller-trophy-base {
  position:absolute;
  left:50%;
  bottom:5px;
  width:66px;
  height:17px;
  border-radius:7px 7px 4px 4px;
  background:linear-gradient(110deg,#995d00,#f2c342 42%,#fff0a0 58%,#8f5700);
  box-shadow:0 6px 10px rgba(132,84,0,.16);
  transform:translateX(-50%);
}
@keyframes trophy-cup-shine {
  0%,100% { filter:brightness(1) saturate(1); transform:translateX(-50%) rotate(0); }
  50% { filter:brightness(1.12) saturate(1.06); transform:translateX(-50%) rotate(-1deg); }
}
@media (prefers-reduced-motion:reduce) {
  .seller-trophy-cup { animation:none !important; }
}

/* Analysis workbench: history, extracted data and preview share one loading scope. */
.analysis-data-zone {
  position:relative;
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:minmax(0,1.62fr) minmax(300px,.74fr);
  gap:16px;
  align-items:stretch;
  min-width:0;
  padding:14px;
  border:1px solid rgba(86,99,247,.11);
  border-radius:24px;
  background:linear-gradient(145deg,rgba(255,255,255,.58),rgba(238,241,250,.7));
  box-shadow:inset 0 1px rgba(255,255,255,.88),0 22px 58px rgba(55,61,102,.07);
}
.analysis-data-zone > .history-panel {
  grid-column:1 / -1;
  padding:22px 24px;
  box-shadow:none;
}
.analysis-data-zone > .details-panel,
.analysis-data-zone > .media-panel {
  min-height:560px;
  height:100%;
  box-shadow:none;
}
.analysis-data-zone > .panel {
  border-color:rgba(86,99,247,.14);
  background:rgba(252,252,254,.94);
}
.analysis-data-zone .history-panel .panel-title {
  margin-bottom:16px;
}
.analysis-data-zone .history-list {
  padding-bottom:5px;
}
.history-item {
  position:relative;
  min-height:76px;
  padding:15px 17px;
  overflow:hidden;
  border-color:rgba(86,99,247,.13);
  border-radius:14px;
  background:#f8f9fd;
}
.history-item::after {
  content:"";
  position:absolute;
  inset:auto 14px 0;
  height:2px;
  background:var(--accent);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .28s cubic-bezier(.16,1,.3,1);
}
.history-item:hover::after,.history-item:focus-visible::after { transform:scaleX(1); }

.analysis-loading-screen {
  inset:14px;
  border-radius:20px;
  background:rgba(245,247,252,.97);
}
.analysis-loading-screen::before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(circle at 80% 14%,rgba(86,99,247,.12),transparent 28%);
}
.analysis-loading-screen > * { position:relative; }

/* Functional actions remain recognisable while carrying the SIGNAL identity. */
.analysis-submit-btn,
.report-generate-btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:11px;
  overflow:hidden;
  white-space:nowrap;
}
.analysis-submit-btn {
  min-width:206px;
  box-shadow:0 12px 26px rgba(86,99,247,.22);
}
.analysis-submit-btn:hover { box-shadow:0 17px 34px rgba(86,99,247,.28); }
.btn-signal-icon {
  position:relative;
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  flex:0 0 24px;
}
.btn-signal-icon::before {
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:#fff;
}
.btn-signal-icon i {
  position:absolute;
  inset:50% auto auto 50%;
  width:8px;
  height:8px;
  border:1px solid rgba(255,255,255,.74);
  border-radius:50%;
  opacity:0;
  transform:translate(-50%,-50%) scale(.35);
  animation:button-signal-wave 2.4s ease-out infinite;
}
.btn-signal-icon i:nth-child(2){animation-delay:.7s}.btn-signal-icon i:nth-child(3){animation-delay:1.4s}
.report-actions {
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:24px;
}
.report-generate-btn {
  min-width:168px;
  min-height:50px;
  color:#3f49c9;
  border-color:rgba(86,99,247,.24);
  background:#f0f2ff;
}
.report-generate-btn:hover {
  color:#fff;
  border-color:var(--accent);
  background:var(--accent);
  box-shadow:0 12px 28px rgba(86,99,247,.2);
}
.report-btn-icon {
  position:relative;
  width:22px;
  height:24px;
  display:grid;
  gap:3px;
  align-content:center;
  padding:5px 4px;
  border:1px solid currentColor;
  border-radius:6px;
}
.report-btn-icon i { display:block; height:1px; background:currentColor; opacity:.7; }
.query-panel-collapsed-bar {
  min-height:42px;
  grid-template-columns:34px minmax(0,1fr) auto;
}
.query-panel.is-collapsed .query-panel-collapsed-bar { display:grid; }
.collapsed-query-icon {
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:9px;
  color:#fff;
  background:var(--accent);
  font-size:12px;
  font-weight:900;
}
.query-panel-expand-hint {
  min-height:32px;
  display:inline-flex;
  align-items:center;
  padding:0 11px;
  border:1px solid rgba(86,99,247,.16);
  border-radius:9px;
  color:#4651d4;
  background:#f1f3ff;
  font-weight:700;
}
@keyframes button-signal-wave {
  0%{opacity:.8;transform:translate(-50%,-50%) scale(.35)}
  78%,100%{opacity:0;transform:translate(-50%,-50%) scale(2.7)}
}

/* Score-weighted finding landscape. */
.findings-section {
  padding:24px;
  background:#fafbfe;
}
.findings-section > .panel-title {
  margin-bottom:18px;
  padding-bottom:17px;
}
.findings-list {
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:14px;
  align-items:start;
}
.finding-category {
  grid-column:span 6;
  min-width:0;
  padding:18px;
  border:1px solid rgba(88,96,138,.13);
  border-radius:18px;
  background:rgba(248,249,252,.9);
  transition:border-color .3s ease,background .3s ease,transform .3s cubic-bezier(.16,1,.3,1);
}
.finding-category-featured {
  grid-column:span 8;
  background:linear-gradient(145deg,#f6f7fc,#eef0f8);
}
.finding-category-standard { grid-column:span 6; }
.finding-category-compact { grid-column:span 4; }
.finding-category:hover {
  border-color:rgba(86,99,247,.22);
  background:#f7f8fd;
}
.findings-group-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:0 0 14px;
  padding:0 0 13px;
  border-bottom:1px solid rgba(78,87,151,.1);
}
.findings-group-heading::before { content:none; }
.findings-group-heading h4 {
  margin:0;
  color:#2b3042;
  font-size:16px;
  letter-spacing:-.025em;
}
.findings-group-heading strong {
  color:#73798e;
  font-size:24px;
  line-height:1;
  letter-spacing:-.05em;
}
.finding-category-featured .findings-group-heading strong { color:#4c57df; font-size:31px; }
.findings-group-heading strong small { margin-left:3px; font-size:10px; font-weight:700; letter-spacing:0; }
.finding-card-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-auto-flow:row;
  grid-auto-columns:minmax(0,1fr);
  gap:10px;
}
.finding-category-compact .finding-card-grid {
  grid-template-columns:minmax(0,1fr);
  grid-auto-columns:minmax(0,1fr);
}
.finding-category-compact .finding-item,
.finding-category-compact .finding-weight-strong,
.finding-category-compact .finding-weight-medium,
.finding-category-compact .finding-weight-quiet {
  grid-column:1 / -1;
  width:100%;
  min-width:0;
}
.finding-item {
  --drop-x:50%;
  --drop-y:50%;
  --drop-rotate-x:0deg;
  --drop-rotate-y:0deg;
  position:relative;
  min-width:0;
  min-height:116px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:10px;
  margin:0;
  padding:15px;
  overflow:hidden;
  border:1px solid #e0e3eb;
  border-radius:18px 15px 20px 16px;
  color:#626879;
  background:#f1f2f5;
  box-shadow:none;
  opacity:1;
  filter:grayscale(.72) saturate(.55);
  transform:perspective(800px) rotateX(0) rotateY(0) translateY(0);
  transition:transform .34s cubic-bezier(.16,1,.3,1),border-radius .34s cubic-bezier(.16,1,.3,1),border-color .28s ease,background .28s ease,color .28s ease,filter .28s ease,opacity .28s ease,box-shadow .28s ease;
}
.finding-item::before {
  content:"";
  position:absolute;
  inset:0;
  width:auto;
  height:auto;
  border-radius:inherit;
  background:radial-gradient(170px circle at var(--drop-x) var(--drop-y),rgba(255,255,255,.92),transparent 64%);
  box-shadow:none;
  opacity:0;
  transform:none;
  transition:opacity .28s ease;
  pointer-events:none;
}
.finding-item::after {
  content:"" !important;
  position:absolute;
  inset:auto 14px 0;
  width:auto;
  height:3px;
  background:var(--stream-color);
  opacity:0;
  transform:scaleX(.2);
  transform-origin:left;
  transition:opacity .28s ease,transform .38s cubic-bezier(.16,1,.3,1);
}
.finding-item > * { position:relative; z-index:1; }
.finding-card-grid:hover .finding-item:not(:hover):not(:focus-visible) { opacity:.56; filter:grayscale(1) saturate(.25); }
.finding-item:hover,.finding-item:focus-visible {
  z-index:2;
  padding:15px;
  border-color:color-mix(in srgb,var(--stream-color) 38%,#dfe2ec);
  border-radius:25px 15px 24px 17px;
  color:#262b3c;
  background:color-mix(in srgb,var(--stream-color) 6%,#fcfcfe);
  box-shadow:0 16px 34px color-mix(in srgb,var(--stream-color) 13%,transparent);
  opacity:1;
  filter:none;
  transform:perspective(800px) rotateX(var(--drop-rotate-x)) rotateY(var(--drop-rotate-y)) translateY(-4px) scale(1.012);
}
.finding-item:hover::before,.finding-item:focus-visible::before { opacity:1; }
.finding-item:hover::after,.finding-item:focus-visible::after { opacity:1; transform:scaleX(1); }
.finding-weight-strong { grid-column:span 2; min-height:132px; }
.finding-weight-strong .finding-headline { font-size:15px; }
.finding-weight-quiet { min-height:100px; }
.finding-card-meta {
  display:flex;
  align-items:center;
  gap:8px;
}
.finding-index { margin-right:auto; color:#9ba0af; }
.finding-tag { justify-self:auto; margin:0; }
.finding-points {
  color:#9297a8;
  font:800 10px/1 ui-monospace,monospace;
}
.finding-headline { margin:0; color:inherit; font-size:13px; font-weight:760; line-height:1.5; }
.finding-tip {
  margin:auto 0 0;
  color:#7a8092;
  font-size:11px;
  line-height:1.55;
  opacity:.7;
  transition:opacity .25s ease,color .25s ease;
}
.finding-item:hover .finding-tip,.finding-item:focus-visible .finding-tip { color:#62697d; opacity:1; }
.finding-item.is-pass { opacity:1; --stream-color:#5663f7; }

@media (max-width:1020px) {
  .finding-category-featured,.finding-category-standard { grid-column:span 12; }
  .finding-category-compact { grid-column:span 6; }
}
@media (max-width:760px) {
  .analysis-data-zone { grid-template-columns:1fr; padding:10px; border-radius:19px; }
  .analysis-data-zone > .history-panel,.analysis-data-zone > .details-panel,.analysis-data-zone > .media-panel { grid-column:1; min-height:auto; }
  .analysis-data-zone > .media-panel { min-height:380px; }
  .analysis-loading-screen { inset:10px; }
  .findings-section { padding:18px 14px; }
  .findings-list { grid-template-columns:1fr; }
  .finding-category,.finding-category-featured,.finding-category-standard,.finding-category-compact { grid-column:1; padding:15px; }
  .finding-card-grid { grid-template-columns:1fr; }
  .finding-weight-strong { grid-column:1; }
  .finding-item { min-height:0; }
  .report-actions { align-items:stretch; flex-direction:column; }
  .report-generate-btn { width:100%; }
}
@media (prefers-reduced-motion:reduce) {
  .btn-signal-icon i { animation:none !important; opacity:.28; }
  .finding-item,.finding-item::before,.finding-item::after,.finding-category,.history-item::after { transition:none !important; }
  .finding-item:hover,.finding-item:focus-visible { transform:none; }
}

@media (max-width:620px) {
  .seller-certificate-group > .seller-badge {
    grid-template-rows:102px minmax(44px,auto);
    height:164px !important;
    min-height:164px !important;
    gap:10px;
  }
  .seller-certificate-group .badge-seller .seller-badge-icon {
    width:108px;
    height:100px;
    flex-basis:100px;
    transform:scale(.9);
  }
}

/* Hero album: the whole visual is the sliding advertising canvas. */
.hero-album{position:relative;min-width:0;overflow:hidden;border:1px solid #d6daea;border-radius:24px;background:#f7f8fd;box-shadow:0 36px 100px rgba(61,68,130,.16)}
.hero-album-track{display:flex;width:100%;transform:translate3d(var(--hero-album-offset,0%),0,0);transition:transform .72s cubic-bezier(.22,1,.36,1);will-change:transform}
.hero-album-slide{position:relative;flex:0 0 100%;width:100%;min-height:460px;overflow:hidden;border:0;border-radius:0;box-shadow:none}
.hero-album .signal-figure{min-height:460px}
.hero-album-controls{position:absolute;z-index:8;left:50%;bottom:12px;display:flex;align-items:center;gap:7px;padding:4px 6px;border:1px solid rgba(86,99,247,.14);border-radius:10px;background:rgba(255,255,255,.86);box-shadow:0 8px 20px rgba(44,50,88,.1);backdrop-filter:blur(12px);transform:translateX(-50%)}
.hero-album-arrow{width:20px;height:20px;min-height:0;min-width:0;display:grid;place-items:center;padding:0;border:0;border-radius:7px;font-size:11px;color:#444b67;background:#eef0f7;transition:color .2s ease,background .2s ease,transform .2s ease}
.hero-album-arrow:hover{color:#fff;background:#5663f7;transform:scale(1.06)}
.hero-album-dots{display:flex;align-items:center;gap:4px}.hero-album-dots button{width:5px;height:5px;min-height:0;min-width:0;padding:0;border:0;border-radius:50%;background:#cbd0df;transition:width .3s ease,background .3s ease,border-radius .3s ease}.hero-album-dots button.is-active{width:16px;border-radius:4px;background:#5663f7}
.hero-ad-slide{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:58px 54px 78px;color:#24293b;text-decoration:none;isolation:isolate}
.hero-ad-slide::before{content:"";position:absolute;inset:0;z-index:-2;background:repeating-linear-gradient(90deg,transparent 0 59px,rgba(43,48,84,.045) 60px),repeating-linear-gradient(0deg,transparent 0 59px,rgba(43,48,84,.045) 60px)}
.hero-ad-slide::after{content:"";position:absolute;z-index:-1;width:440px;height:440px;right:-120px;top:-160px;border:1px solid rgba(86,99,247,.14);border-radius:50%;box-shadow:0 0 0 72px rgba(86,99,247,.035),0 0 0 144px rgba(86,99,247,.025)}
.hero-ad-slide-partner{background:radial-gradient(circle at 82% 22%,rgba(86,99,247,.2),transparent 35%),linear-gradient(145deg,#fff,#edf0ff)}
.hero-ad-slide-network{color:#fff;background:radial-gradient(circle at 84% 25%,rgba(104,116,255,.54),transparent 32%),linear-gradient(145deg,#282d42,#171a28)}
.hero-ad-slide-network::before{opacity:.22}.hero-ad-slide-network::after{border-color:rgba(255,255,255,.13);box-shadow:0 0 0 72px rgba(255,255,255,.025),0 0 0 144px rgba(255,255,255,.018)}
.album-ad-kicker{margin-bottom:18px;color:#5663f7;font:800 9px/1 ui-monospace,monospace;letter-spacing:.16em}.hero-ad-slide-network .album-ad-kicker{color:#aeb5ff}
.hero-ad-slide>strong{max-width:390px;font-size:clamp(32px,3.2vw,48px);line-height:1.08;letter-spacing:-.045em}.hero-ad-slide>p{max-width:360px;margin:18px 0 0;color:#71778c;font-size:14px;line-height:1.65;word-break:keep-all}.hero-ad-slide-network>p{color:#b8bdcc}
.album-ad-cta{display:inline-flex;align-items:center;gap:9px;margin-top:25px;font-size:13px;font-weight:850}.album-ad-cta b{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;color:#fff;background:#5663f7}
.album-ad-visual{position:absolute;right:38px;top:50%;width:170px;height:170px;display:grid;place-items:center;transform:translateY(-50%)}.album-ad-visual span{position:relative;z-index:2;width:76px;height:76px;display:grid;place-items:center;border-radius:24px;color:#fff;background:#5663f7;box-shadow:0 18px 42px rgba(86,99,247,.34);font-size:27px;font-weight:900}.album-ad-visual i{position:absolute;inset:0;border:1px solid rgba(86,99,247,.24);border-radius:50%;animation:album-ad-pulse 3.4s ease-out infinite}.album-ad-visual i:nth-child(2){animation-delay:1.1s}.album-ad-visual i:nth-child(3){animation-delay:2.2s}
.album-network-bars{position:absolute;right:46px;bottom:92px;width:168px;height:150px;display:flex;align-items:flex-end;gap:12px}.album-network-bars i{flex:1;border-radius:9px 9px 3px 3px;background:linear-gradient(#7f8aff,#5663f7);box-shadow:0 10px 24px rgba(86,99,247,.22);animation:album-bar 2.4s ease-in-out infinite alternate}.album-network-bars i:nth-child(1){height:38%}.album-network-bars i:nth-child(2){height:62%;animation-delay:.2s}.album-network-bars i:nth-child(3){height:88%;animation-delay:.4s}.album-network-bars i:nth-child(4){height:70%;animation-delay:.6s}.album-network-bars i:nth-child(5){height:100%;animation-delay:.8s}
@keyframes album-ad-pulse{0%{opacity:.72;transform:scale(.4)}78%,100%{opacity:0;transform:scale(1.08)}}@keyframes album-bar{to{height:24%;opacity:.5}}
@media(max-width:1020px){.hero-album-slide,.hero-album .signal-figure{min-height:430px}}
@media(max-width:620px){.hero-album{border-radius:20px}.hero-album-slide,.hero-album .signal-figure{min-height:310px}.hero-ad-slide{padding:35px 25px 64px}.hero-ad-slide>strong{max-width:260px;font-size:31px}.hero-ad-slide>p{max-width:250px;margin-top:12px;font-size:12px}.album-ad-kicker{margin-bottom:12px}.album-ad-cta{margin-top:17px}.album-ad-visual{right:-28px;width:120px;height:120px;opacity:.62}.album-network-bars{right:18px;bottom:68px;width:92px;height:92px;opacity:.62}.hero-album-controls{bottom:8px}.hero-album-arrow{width:19px;height:19px;min-height:0;min-width:0}}
@media(prefers-reduced-motion:reduce){.hero-album-track{transition:none}.album-ad-visual i,.album-network-bars i{animation:none!important}}

/* Findings board: equal hierarchy, fluid content grid, no score-sized cards. */
.findings-section {
  padding:clamp(22px,3vw,38px);
  border:1px solid rgba(72,80,128,.12);
  border-radius:22px;
  background:linear-gradient(145deg,#fbfcff,#f5f7fc);
  box-shadow:0 24px 64px rgba(49,56,98,.07);
}
.findings-section > .panel-title {
  margin-bottom:8px;
  padding-bottom:22px;
  border-bottom:0;
}
.findings-list {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:0;
}
.finding-category,
.finding-category-featured,
.finding-category-standard,
.finding-category-compact {
  grid-column:1 / -1;
  width:100%;
  min-width:0;
  padding:26px 0 30px;
  border:0;
  border-top:1px solid rgba(72,80,128,.11);
  border-radius:0;
  background:transparent;
  transition:none;
}
.finding-category:hover,
.finding-category-featured:hover,
.finding-category-standard:hover,
.finding-category-compact:hover {
  border-color:rgba(72,80,128,.11);
  background:transparent;
  transform:none;
}
.findings-group-heading {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
  margin:0 0 17px;
  padding:0;
  border:0;
}
.findings-group-heading h4 {
  position:relative;
  display:flex;
  align-items:center;
  gap:11px;
  font-size:18px;
  font-weight:850;
}
.findings-group-heading h4::before {
  content:"";
  width:9px;
  height:9px;
  flex:0 0 9px;
  border:3px solid #5663f7;
  border-radius:50%;
  box-shadow:0 0 0 5px rgba(86,99,247,.09);
}
.findings-group-heading strong,
.finding-category-featured .findings-group-heading strong {
  display:inline-flex;
  align-items:baseline;
  gap:3px;
  padding:7px 10px;
  border:1px solid rgba(86,99,247,.12);
  border-radius:10px;
  color:#4d57d4;
  background:#eef0ff;
  font-size:17px;
  letter-spacing:-.03em;
}
.findings-group-heading strong small { margin:0; color:#777eaa; font-size:9px; }
.finding-card-grid,
.finding-category-compact .finding-card-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));
  grid-auto-flow:row;
  grid-auto-columns:minmax(0,1fr);
  gap:12px;
}
.finding-item,
.finding-category-compact .finding-item,
.finding-category-compact .finding-weight-strong,
.finding-category-compact .finding-weight-medium,
.finding-category-compact .finding-weight-quiet,
.finding-weight-strong,
.finding-weight-medium,
.finding-weight-quiet {
  grid-column:auto;
  width:100%;
  min-width:0;
  min-height:142px;
  display:flex;
  flex-direction:column;
  gap:13px;
  padding:18px 18px 17px;
  overflow:hidden;
  border:1px solid rgba(78,86,132,.12);
  border-radius:16px;
  color:#555c70;
  background:rgba(255,255,255,.74);
  box-shadow:0 7px 22px rgba(52,59,101,.035);
  opacity:1;
  filter:none;
  transform:perspective(900px) rotateX(0) rotateY(0) translateY(0);
  transition:transform .38s cubic-bezier(.16,1,.3,1),border-color .28s ease,background .28s ease,color .28s ease,box-shadow .32s ease,opacity .25s ease;
}
.finding-item::before {
  content:"";
  position:absolute;
  inset:-55%;
  width:auto;
  height:auto;
  border-radius:42% 58% 61% 39% / 45% 38% 62% 55%;
  background:radial-gradient(circle at var(--drop-x) var(--drop-y),rgba(86,99,247,.12),rgba(86,99,247,.035) 34%,transparent 64%);
  opacity:0;
  transform:rotate(-8deg) scale(.82);
  transition:opacity .3s ease,transform .7s cubic-bezier(.16,1,.3,1);
  pointer-events:none;
}
.finding-item::after {
  content:"" !important;
  position:absolute;
  inset:auto 18px 0;
  width:auto;
  height:2px;
  border-radius:2px;
  background:#5663f7;
  opacity:0;
  transform:scaleX(.15);
  transform-origin:left;
  transition:opacity .25s ease,transform .45s cubic-bezier(.16,1,.3,1);
}
.finding-card-grid:hover .finding-item:not(:hover):not(:focus-visible) {
  opacity:.64;
  filter:grayscale(.62) saturate(.55);
}
.finding-item:hover,.finding-item:focus-visible {
  z-index:2;
  padding:18px 18px 17px;
  border-color:rgba(86,99,247,.28);
  border-radius:16px;
  color:#282d40;
  background:#fff;
  box-shadow:0 20px 48px rgba(54,62,114,.12);
  opacity:1;
  filter:none;
  transform:perspective(900px) rotateX(var(--drop-rotate-x)) rotateY(var(--drop-rotate-y)) translateY(-5px);
}
.finding-item:hover::before,.finding-item:focus-visible::before { opacity:1; transform:rotate(7deg) scale(1); }
.finding-item:hover::after,.finding-item:focus-visible::after { opacity:1; transform:scaleX(1); }
.finding-card-meta { min-height:25px; gap:8px; }
.finding-index { color:#a0a6b7; font:800 10px/1 ui-monospace,monospace; }
.finding-points { padding:5px 7px; border-radius:7px; color:#767d91; background:#f0f2f6; font-size:9px; }
.finding-headline,.finding-weight-strong .finding-headline { margin:0; color:inherit; font-size:14px; font-weight:800; line-height:1.55; word-break:keep-all; }
.finding-tip { margin:auto 0 0; color:#858b9c; font-size:11px; line-height:1.65; opacity:.82; word-break:keep-all; }
.finding-item.is-pass { --stream-color:#5663f7; opacity:1; }

@media(max-width:760px) {
  .findings-section { padding:20px 16px; border-radius:18px; }
  .finding-category,.finding-category-featured,.finding-category-standard,.finding-category-compact { padding:22px 0 24px; }
  .finding-card-grid,.finding-category-compact .finding-card-grid { grid-template-columns:minmax(0,1fr); }
  .finding-item { min-height:0; }
}
@media(prefers-reduced-motion:reduce) {
  .finding-item,.finding-item::before,.finding-item::after { transition:none!important; }
  .finding-item:hover,.finding-item:focus-visible { transform:none; }
}

/* Semantic finding labels stay visually distinct regardless of card score. */
.finding-tag {
  display:inline-flex;
  align-items:center;
  min-height:25px;
  margin:0;
  padding:5px 9px;
  border:1px solid transparent;
  border-radius:7px;
  font-size:10px;
  font-weight:850;
  line-height:1;
  letter-spacing:-.01em;
}
.finding-tag.tag-exposure {
  color:#3447c7;
  border-color:#cfd5ff;
  background:#eef1ff;
  box-shadow:inset 0 1px rgba(255,255,255,.72);
}
.finding-tag.tag-risk {
  color:#b12d38;
  border-color:#f2cbd0;
  background:#fff0f2;
  box-shadow:inset 0 1px rgba(255,255,255,.72);
}
.finding-tag.tag-sales {
  color:#95610b;
  border-color:#ecd7ad;
  background:#fff7e7;
  box-shadow:inset 0 1px rgba(255,255,255,.72);
}

/* Ranked findings board. Scores control order only, never card dimensions. */
.findings-section {
  padding:clamp(20px,2.8vw,34px);
  border:1px solid rgba(73,81,126,.12);
  border-radius:24px;
  background:#f4f6fb;
  box-shadow:0 26px 70px rgba(44,51,91,.08);
}
.findings-section > .panel-title {
  margin:0 0 20px;
  padding:0 0 20px;
  border-bottom:1px solid rgba(73,81,126,.1);
}
.findings-list {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:16px;
}
.finding-category,
.finding-category-strong,
.finding-category-steady,
.finding-category-focus {
  grid-column:1;
  width:100%;
  min-width:0;
  padding:0;
  overflow:hidden;
  border:1px solid rgba(72,80,125,.13);
  border-radius:19px;
  background:rgba(255,255,255,.82);
  box-shadow:0 12px 34px rgba(48,55,96,.055);
  animation:finding-section-enter .52s cubic-bezier(.16,1,.3,1) both;
}
.finding-category:nth-child(2){animation-delay:.06s}.finding-category:nth-child(3){animation-delay:.12s}
.finding-category:hover,
.finding-category-strong:hover,
.finding-category-steady:hover,
.finding-category-focus:hover {
  border-color:rgba(72,80,125,.18);
  background:rgba(255,255,255,.9);
  transform:none;
}
.findings-group-heading {
  display:grid;
  grid-template-columns:52px minmax(0,1fr) auto;
  align-items:center;
  gap:16px;
  margin:0;
  padding:20px 22px;
  border:0;
  border-bottom:1px solid rgba(72,80,125,.09);
  background:linear-gradient(105deg,rgba(255,255,255,.98),rgba(246,247,252,.92));
}
.finding-category:first-child .findings-group-heading {
  background:linear-gradient(105deg,#f8f9ff,#eef1ff);
}
.finding-category-rank {
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border:1px solid rgba(86,99,247,.15);
  border-radius:13px;
  color:#67708f;
  background:#eef0f7;
  font:900 12px/1 ui-monospace,monospace;
}
.finding-category:first-child .finding-category-rank {
  color:#fff;
  border-color:#5663f7;
  background:#5663f7;
  box-shadow:0 10px 24px rgba(86,99,247,.25);
}
.finding-category-copy { min-width:0; display:grid; gap:5px; }
.findings-group-heading .finding-category-copy h4 {
  display:block;
  margin:0;
  color:#24293a;
  font-size:19px;
  font-weight:880;
  letter-spacing:-.035em;
}
.findings-group-heading .finding-category-copy h4::before { content:none; }
.finding-category-copy p { margin:0; color:#858b9d; font-size:11px; line-height:1.5; word-break:keep-all; }
.finding-category-score { min-width:86px; display:grid; justify-items:end; gap:3px; }
.finding-category-score > span { color:#9298aa; font-size:9px; font-weight:750; }
.findings-group-heading .finding-category-score strong,
.finding-category:first-child .findings-group-heading .finding-category-score strong {
  display:flex;
  align-items:baseline;
  gap:3px;
  padding:0;
  border:0;
  border-radius:0;
  color:#33394e;
  background:transparent;
  font-size:27px;
  font-weight:900;
  letter-spacing:-.055em;
}
.finding-category:first-child .finding-category-score strong { color:#4e59df; }
.findings-group-heading .finding-category-score strong small { margin:0; color:#858ba3; font-size:9px; letter-spacing:0; }
.finding-card-grid,
.finding-category-compact .finding-card-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));
  grid-auto-flow:row;
  gap:12px;
  padding:16px;
}
.finding-item,
.finding-weight-strong,
.finding-weight-medium,
.finding-weight-quiet,
.finding-category-compact .finding-item {
  --finding-accent:#5663f7;
  grid-column:auto;
  width:100%;
  min-width:0;
  min-height:172px;
  display:flex;
  flex-direction:column;
  gap:14px;
  margin:0;
  padding:18px;
  overflow:hidden;
  border:1px solid rgba(76,84,129,.12);
  border-radius:15px;
  color:#343a4d;
  background:#fff;
  box-shadow:0 8px 22px rgba(48,55,96,.045);
  opacity:1;
  filter:none;
  transform:perspective(900px) rotateX(0) rotateY(0) translateY(0);
  transition:transform .34s cubic-bezier(.16,1,.3,1),border-color .25s ease,box-shadow .3s ease,opacity .25s ease,filter .25s ease;
}
.finding-card-tag-risk{--finding-accent:#d84c57}.finding-card-tag-sales{--finding-accent:#c48924}.finding-card-tag-exposure{--finding-accent:#5663f7}
.finding-item::before {
  content:"";
  position:absolute;
  inset:0;
  width:auto;
  height:auto;
  border-radius:inherit;
  background:radial-gradient(230px circle at var(--drop-x) var(--drop-y),color-mix(in srgb,var(--finding-accent) 11%,transparent),transparent 68%);
  opacity:0;
  transform:none;
  transition:opacity .28s ease;
  pointer-events:none;
}
.finding-item::after {
  content:""!important;
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  height:auto;
  border-radius:0 3px 3px 0;
  background:var(--finding-accent);
  opacity:.42;
  transform:scaleY(.34);
  transform-origin:center;
  transition:opacity .25s ease,transform .4s cubic-bezier(.16,1,.3,1);
}
.finding-card-grid:hover .finding-item:not(:hover):not(:focus-visible) { opacity:.56; filter:grayscale(.72) saturate(.45); }
.finding-item:hover,.finding-item:focus-visible {
  z-index:2;
  padding:18px;
  border-color:color-mix(in srgb,var(--finding-accent) 28%,#dfe2ec);
  border-radius:15px;
  color:#262b3c;
  background:#fff;
  box-shadow:0 18px 42px color-mix(in srgb,var(--finding-accent) 11%,transparent);
  opacity:1;
  filter:none;
  transform:perspective(900px) rotateX(var(--drop-rotate-x)) rotateY(var(--drop-rotate-y)) translateY(-4px);
}
.finding-item:hover::before,.finding-item:focus-visible::before { opacity:1; transform:none; }
.finding-item:hover::after,.finding-item:focus-visible::after { opacity:1; transform:scaleY(1); }
.finding-card-meta {
  min-height:25px;
  display:grid;
  grid-template-columns:auto auto auto minmax(0,1fr);
  align-items:center;
  gap:7px;
}
.finding-index {
  width:25px;
  height:25px;
  display:grid;
  place-items:center;
  margin:0;
  border-radius:7px;
  color:#7b8296;
  background:#f0f2f7;
  font:850 9px/1 ui-monospace,monospace;
}
.finding-state { min-height:25px; display:inline-flex; align-items:center; padding:5px 8px; border-radius:7px; font-size:9px; font-weight:850; line-height:1; white-space:nowrap; }
.finding-state.is-strong { color:#13794d; background:#eaf8f1; }
.finding-state.is-action { color:#ad3540; background:#fff0f2; }
.finding-points { justify-self:end; padding:0; color:#7d8498; background:transparent; font:800 9px/1 ui-monospace,monospace; white-space:nowrap; }
.finding-headline,.finding-weight-strong .finding-headline { margin:0; color:inherit; font-size:15px; font-weight:820; line-height:1.58; word-break:keep-all; }
.finding-tip-box { margin-top:auto; display:grid; gap:7px; padding-top:12px; border-top:1px solid rgba(76,84,129,.09); }
.finding-tip-label { color:var(--finding-accent); font:850 8px/1 ui-monospace,monospace; letter-spacing:.11em; }
.finding-tip { margin:0; color:#7e8598; font-size:11px; line-height:1.65; opacity:1; word-break:keep-all; }

@keyframes finding-section-enter { from{opacity:0;transform:translateY(14px)} to{opacity:1;transform:translateY(0)} }
@media(max-width:760px) {
  .findings-section { padding:18px 14px; border-radius:19px; }
  .findings-group-heading { grid-template-columns:42px minmax(0,1fr) auto; gap:11px; padding:16px; }
  .finding-category-rank { width:38px; height:38px; border-radius:11px; }
  .finding-category-copy p { display:none; }
  .findings-group-heading .finding-category-copy h4 { font-size:16px; }
  .finding-category-score { min-width:58px; }
  .findings-group-heading .finding-category-score strong,.finding-category:first-child .findings-group-heading .finding-category-score strong { font-size:22px; }
  .finding-card-grid,.finding-category-compact .finding-card-grid { grid-template-columns:minmax(0,1fr); padding:12px; }
  .finding-item { min-height:0; }
  .finding-card-meta { grid-template-columns:auto auto auto; }
  .finding-points { grid-column:1 / -1; justify-self:start; }
}
@media(prefers-reduced-motion:reduce) {
  .finding-category { animation:none!important; }
  .finding-item,.finding-item::before,.finding-item::after { transition:none!important; }
  .finding-item:hover,.finding-item:focus-visible { transform:none; }
}

/* Summary signal dashboard and softer finding interactions. */
.report-tab-panel[data-tab-panel="summary"] {
  --summary-product:#d09a39;
  --summary-sales:#289270;
  --summary-keyword:#6973e9;
}
.report-summary-grid {
  grid-template-columns:minmax(330px,.84fr) minmax(0,1.36fr);
  gap:16px;
}
.score-overview,.category-summary {
  min-height:360px;
  border-color:rgba(72,80,125,.11);
  border-radius:22px;
  background:rgba(255,255,255,.92);
  box-shadow:0 18px 48px rgba(47,54,94,.06);
}
.score-overview {
  display:grid;
  grid-template-columns:minmax(180px,1fr) minmax(156px,.68fr);
  grid-template-rows:auto 1fr;
  align-items:center;
  gap:10px 22px;
  padding:28px;
  isolation:isolate;
}
.score-overview::before {
  width:260px;
  height:260px;
  right:-130px;
  top:-140px;
  border:1px solid rgba(105,115,233,.12);
  background:radial-gradient(circle,rgba(105,115,233,.07),transparent 68%);
}
.score-overview::after {
  content:"";
  position:absolute;
  inset:auto -12% -45% 20%;
  z-index:-1;
  height:220px;
  pointer-events:none;
  background:radial-gradient(ellipse,rgba(104,115,233,.09),transparent 66%);
}
.score-kicker {
  grid-column:1 / -1;
  align-items:flex-start;
  padding-bottom:18px;
  border-bottom:1px solid rgba(72,80,125,.09);
}
.score-kicker > div { display:grid; gap:7px; }
.score-kicker p { font-size:20px; letter-spacing:-.035em; }
.score-kicker > small { max-width:175px; color:#8b91a3; font-size:11px; line-height:1.55; text-align:right; word-break:keep-all; }
.score-orbit-gauge {
  width:220px;
  height:220px;
  justify-self:center;
  filter:drop-shadow(0 18px 26px rgba(64,73,143,.1));
}
.score-orbit-gauge::before,.score-orbit-gauge::after { content:none; }
.score-orbit-gauge svg { width:220px; height:220px; transform:rotate(-90deg); overflow:visible; }
.orbit-track,.orbit-fill { fill:none; stroke-width:7; }
.orbit-track { stroke:#eef0f6; }
.orbit-fill {
  stroke-linecap:round;
  stroke-dashoffset:var(--orbit-offset);
  transition:stroke-dashoffset 1.25s cubic-bezier(.16,1,.3,1);
}
.score-orbit-gauge:not(.is-measuring) .orbit-fill { stroke-dashoffset:var(--orbit-start,408)!important; }
.orbit-product { stroke:var(--summary-product); --orbit-start:408; }
.orbit-sales { stroke:var(--summary-sales); --orbit-start:333; }
.orbit-keyword { stroke:var(--summary-keyword); --orbit-start:258; }
.score-orbit-gauge .gauge-label { gap:2px; }
.score-orbit-gauge .gauge-label span { padding:4px 9px; color:#697086; background:#f0f2f8; }
.score-orbit-gauge .gauge-label strong { color:#202535; font-size:48px; letter-spacing:-.065em; }
.score-orbit-gauge .gauge-label small { color:#8d93a4; font-size:10px; }
.score-orbit-legend { display:grid; gap:4px; align-self:center; }
.score-orbit-key {
  --orbit-color:var(--summary-product);
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:9px;
  min-height:42px;
  padding:7px 4px;
  border-bottom:1px solid rgba(72,80,125,.08);
}
.score-orbit-key:last-child { border-bottom:0; }
.score-orbit-key::before { content:""; width:8px; height:8px; border-radius:3px; background:var(--orbit-color); box-shadow:0 0 0 5px color-mix(in srgb,var(--orbit-color) 10%,transparent); }
.score-orbit-key.orbit-sales { --orbit-color:var(--summary-sales); }
.score-orbit-key.orbit-keyword { --orbit-color:var(--summary-keyword); }
.score-orbit-key span { color:#656b7f; font-size:11px; font-weight:720; }
.score-orbit-key strong { color:#292e3f; font-family:Paperlogy,sans-serif; font-size:18px; font-weight:850; letter-spacing:-.04em; }
.score-orbit-key strong small { margin-left:2px; color:#9399aa; font-size:9px; }
.category-summary {
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:34px 38px;
  overflow:hidden;
  background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(247,248,252,.9));
}
.category-summary::before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,transparent 49.8%,rgba(105,115,233,.035) 50%,transparent 50.2%);
  background-size:18% 100%;
}
.category-summary::after { opacity:.38; }
.metric-heading { position:relative; z-index:1; margin-bottom:38px; }
.metric-heading h3 { font-size:24px; letter-spacing:-.04em; }
.category-bars { position:relative; z-index:1; gap:28px; }
.category-bar-head { margin-bottom:12px; }
.category-bar-head > span { color:#303548; font-size:14px; font-weight:820; }
.category-bar-head small { display:flex; align-items:center; gap:8px; font-family:Paperlogy,sans-serif; font-weight:800; }
.category-bar-head small i { border-radius:7px; background:color-mix(in srgb,var(--score-color) 10%,white); }
.category-bar-track { height:10px; background:repeating-linear-gradient(90deg,#e9ebf3 0,#e9ebf3 calc(10% - 2px),transparent calc(10% - 2px),transparent 10%); }
.category-bar-fill { box-shadow:none; }

.finding-category-rank,
.finding-index,
.finding-points,
.findings-group-heading .finding-category-score strong,
.findings-group-heading .finding-category-score strong small {
  font-family:Paperlogy,sans-serif;
  font-variant-numeric:tabular-nums;
}
.finding-category-rank { font-size:13px; font-weight:820; letter-spacing:-.02em; }
.finding-item::before {
  width:88px;
  height:88px;
  inset:auto;
  left:calc(var(--drop-x,50%) - 44px);
  top:calc(var(--drop-y,50%) - 44px);
  border-radius:50%;
  background:radial-gradient(circle,color-mix(in srgb,var(--finding-accent) 7%,white),color-mix(in srgb,var(--finding-accent) 2%,transparent) 46%,transparent 72%);
  filter:blur(3px);
}
.finding-card-grid:hover .finding-item:not(:hover):not(:focus-visible) { opacity:.72; filter:grayscale(.28) saturate(.74); }
.finding-item:hover,.finding-item:focus-visible {
  border-color:color-mix(in srgb,var(--finding-accent) 16%,#e4e6ee);
  background:#fff;
  box-shadow:0 14px 34px color-mix(in srgb,var(--finding-accent) 7%,transparent);
  transform:perspective(900px) rotateX(var(--drop-rotate-x,0deg)) rotateY(var(--drop-rotate-y,0deg)) translateY(-2px);
}

/* Integer precision scale: 100 subdivisions with stronger 10-point guides. */
.category-bar-track {
  height:12px;
  isolation:isolate;
  overflow:hidden;
  border-radius:5px;
  background:#e9ebf2;
}
.category-bar-track::before,
.category-bar-track::after {
  content:"";
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
}
.category-bar-track::before {
  background:repeating-linear-gradient(90deg,transparent 0,transparent calc(1% - 1px),rgba(255,255,255,.76) calc(1% - 1px),rgba(255,255,255,.76) 1%);
}
.category-bar-track::after {
  background:repeating-linear-gradient(90deg,transparent 0,transparent calc(10% - 1px),rgba(93,100,132,.24) calc(10% - 1px),rgba(93,100,132,.24) 10%);
}
.category-bar-fill {
  position:relative;
  z-index:1;
  height:100%;
  border-radius:5px 2px 2px 5px;
}
.category-score-scale {
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,1fr) auto;
  align-items:start;
  margin-top:-12px;
  padding-top:12px;
  color:#949aab;
  font-family:Paperlogy,sans-serif;
  font-size:8px;
  font-variant-numeric:tabular-nums;
}
.category-score-scale::before {
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:5px;
  background:repeating-linear-gradient(90deg,rgba(102,109,140,.28) 0,rgba(102,109,140,.28) 1px,transparent 1px,transparent 1%);
  mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.36));
}
.category-score-scale span:nth-child(2),.category-score-scale span:nth-child(3),.category-score-scale span:nth-child(4) { justify-self:center; }
.category-score-scale span:nth-child(5) { justify-self:end; }
.category-score-scale small {
  position:absolute;
  right:0;
  top:-14px;
  padding:3px 6px;
  border-radius:5px;
  color:#7d8498;
  background:rgba(255,255,255,.82);
  font-size:8px;
  font-weight:750;
}
.finding-item:hover::after,.finding-item:focus-visible::after { opacity:.58; }

@media(max-width:980px) {
  .report-summary-grid { grid-template-columns:1fr; }
  .score-overview { grid-template-columns:minmax(190px,.8fr) minmax(150px,.6fr); }
}
@media(max-width:620px) {
  .score-overview,.category-summary { border-radius:18px; }
  .score-overview { grid-template-columns:1fr; padding:22px 18px; }
  .score-kicker > small { display:none; }
  .score-orbit-gauge { width:210px; height:210px; }
  .score-orbit-gauge svg { width:210px; height:210px; }
  .score-orbit-legend { width:100%; grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px; }
  .score-orbit-key { grid-template-columns:1fr; justify-items:center; gap:5px; border:0; border-radius:12px; background:#f7f8fb; }
  .score-orbit-key::before { width:20px; height:4px; border-radius:99px; box-shadow:none; }
  .score-orbit-key span { text-align:center; }
  .category-summary { padding:26px 18px; }
  .metric-heading { align-items:flex-start; margin-bottom:30px; }
  .metric-heading p { display:none; }
}
@media(prefers-reduced-motion:reduce) {
  .orbit-fill { transition:none!important; }
  .category-summary::after { animation:none!important; }
}

/* Newly added seller signals: semantic objects instead of fallback initials. */
.seller-certificate-group .badge-repurchase {
  --repurchase-color:#1a9b70;
  --repurchase-dark:#0c6f50;
}
.seller-certificate-group .badge-repurchase .seller-badge-icon {
  position:relative;
  display:grid;
  place-items:center;
  overflow:visible;
  border-radius:50%;
  color:#fff;
  background:radial-gradient(circle at 34% 26%,#62d6af,var(--repurchase-color) 47%,var(--repurchase-dark));
  box-shadow:0 0 0 7px color-mix(in srgb,var(--repurchase-color) 10%,transparent),0 18px 32px color-mix(in srgb,var(--repurchase-dark) 22%,transparent),inset 0 2px 3px rgba(255,255,255,.38);
}
.seller-certificate-group .badge-repurchase .seller-badge-icon::before,
.seller-certificate-group .badge-repurchase .seller-badge-icon::after { content:none; display:none; }
.repurchase-tier-start { --repurchase-color:#7391a1;--repurchase-dark:#526d7b; }
.repurchase-tier-growing { --repurchase-color:#28a87d;--repurchase-dark:#147659; }
.repurchase-tier-strong { --repurchase-color:#198f74;--repurchase-dark:#0c6452; }
.repurchase-tier-elite { --repurchase-color:#7568df;--repurchase-dark:#4f46a8; }
.repurchase-cycle { position:relative; width:100%; height:100%; display:grid; place-content:center; align-items:baseline; grid-template-columns:auto auto; z-index:1; }
.repurchase-cycle::before { content:""; position:absolute; inset:14px; border:1px dashed rgba(255,255,255,.48); border-radius:50%; animation:repurchase-ring 8s linear infinite; }
.repurchase-cycle strong { position:relative; z-index:2; font-family:Paperlogy,sans-serif; font-size:24px; font-weight:900; line-height:1; letter-spacing:-.06em; }
.repurchase-cycle small { position:relative; z-index:2; margin-left:2px; font-size:8px; font-weight:750; }
.repurchase-arrow { position:absolute; z-index:2; width:25px; height:25px; border:4px solid rgba(255,255,255,.94); border-radius:50%; border-left-color:transparent; }
.repurchase-arrow::after { content:""; position:absolute; width:0; height:0; border:5px solid transparent; }
.repurchase-arrow.arrow-one { right:9px; top:14px; transform:rotate(-25deg); }
.repurchase-arrow.arrow-one::after { right:-7px; bottom:-5px; border-left-color:#fff; transform:rotate(26deg); }
.repurchase-arrow.arrow-two { left:9px; bottom:14px; transform:rotate(155deg); }
.repurchase-arrow.arrow-two::after { right:-7px; bottom:-5px; border-left-color:#fff; transform:rotate(26deg); }
.seller-certificate-group .badge-repurchase .seller-badge-copy { color:#235646; line-height:1.32; }
.seller-certificate-group .badge-repurchase .seller-badge-copy::after { content:"RETURNING CUSTOMER"; display:block; margin-top:7px; color:color-mix(in srgb,var(--repurchase-dark) 55%,#9aa0af); font:700 7px/1 ui-monospace,monospace; letter-spacing:.1em; }
.seller-certificate-group .badge-repurchase .seller-badge-detail {
  display:block;
  margin:5px 0 0;
  color:#8a918f;
  font-size:9px;
  font-weight:600;
  line-height:1.35;
}

.seller-info-group .badge-visitors {
  min-height:54px;
  padding:7px 15px 7px 7px;
  border-color:#dfe4ee;
  background:linear-gradient(145deg,#f8f9fc,#fff);
}
.seller-info-group .badge-visitors .seller-badge-icon {
  width:39px;
  height:39px;
  position:relative;
  border-radius:50% 50% 50% 10px;
  color:#fff;
  background:linear-gradient(145deg,#7580a4,#4f587a);
  transform:rotate(-5deg);
}
.seller-info-group .badge-visitors .seller-badge-icon::before { content:""; width:15px; height:10px; border:2px solid #fff; border-radius:50%; transform:rotate(5deg); }
.seller-info-group .badge-visitors .seller-badge-icon::after { content:""; position:absolute; width:4px; height:4px; border-radius:50%; background:#fff; transform:rotate(5deg); }
.seller-info-group .badge-visitors .seller-badge-copy { font-size:12px; font-weight:780; }
.seller-info-group .badge-visitors .seller-badge-detail { margin-top:2px; font-size:9px; }

@keyframes repurchase-ring { to { transform:rotate(360deg); } }
@media(prefers-reduced-motion:reduce) { .repurchase-cycle::before { animation:none!important; } }

/* Findings hover restraint: never paint a color field across card content. */
.finding-item::before,
.finding-item:hover::before,
.finding-item:focus-visible::before {
  content:none!important;
  display:none!important;
  background:none!important;
  box-shadow:none!important;
}
.finding-item::after {
  width:2px!important;
  opacity:.24!important;
}
.finding-item:hover,
.finding-item:focus-visible {
  border-color:color-mix(in srgb,var(--finding-accent) 12%,#e5e7ef)!important;
  background:#fff!important;
  box-shadow:0 10px 24px rgba(48,55,96,.055)!important;
}
.finding-item:hover::after,
.finding-item:focus-visible::after {
  opacity:.62!important;
}

/* Loading guidance: a visible, calm operational notice. */
.analysis-loading-screen .analysis-copy {
  display:flex;
  flex-direction:column;
}
.analysis-popup-notice {
  position:relative;
  display:grid;
  grid-template-columns:46px minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  min-height:88px!important;
  margin:24px 0 0!important;
  padding:15px 16px!important;
  overflow:hidden;
  border:1px solid rgba(86,99,247,.2)!important;
  border-radius:16px!important;
  color:#30364d!important;
  background:linear-gradient(115deg,rgba(255,255,255,.96),rgba(238,241,255,.92))!important;
  box-shadow:0 15px 34px rgba(59,68,135,.09),inset 0 1px rgba(255,255,255,.9);
}
.analysis-popup-notice::before {
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:4px;
  background:#5663f7;
}
.analysis-popup-notice::after {
  content:"";
  position:absolute;
  right:-28px;
  top:-42px;
  width:120px;
  height:120px;
  border:1px solid rgba(86,99,247,.1);
  border-radius:50%;
  pointer-events:none;
}
.analysis-popup-mark {
  position:relative;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid rgba(86,99,247,.16);
  border-radius:13px;
  color:#fff;
  background:linear-gradient(145deg,#6975ff,#4652d8);
  box-shadow:0 9px 20px rgba(71,83,214,.2),inset 0 1px rgba(255,255,255,.35);
}
.analysis-popup-mark::before {
  content:"!";
  position:relative;
  z-index:2;
  font-family:Paperlogy,sans-serif;
  font-size:17px;
  font-weight:900;
}
.analysis-popup-mark i {
  position:absolute;
  inset:-5px;
  border:1px solid rgba(86,99,247,.18);
  border-radius:16px;
  animation:analysis-notice-pulse 2.4s ease-out infinite;
}
.analysis-popup-copy { min-width:0; display:grid; gap:5px; text-align:left; }
.analysis-popup-copy strong { color:#282e43; font-size:13px; font-weight:840; letter-spacing:-.025em; }
.analysis-popup-copy > span { color:#747b91; font-size:11px; font-weight:560; line-height:1.55; word-break:keep-all; }
.analysis-popup-state {
  position:relative;
  z-index:1;
  min-width:max-content;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 10px;
  border:1px solid rgba(86,99,247,.13);
  border-radius:10px;
  color:#4c57d6;
  background:rgba(255,255,255,.72);
  font-size:9px;
  font-weight:820;
}
.analysis-popup-state i { width:6px; height:6px; border-radius:50%; background:#5663f7; box-shadow:0 0 0 4px rgba(86,99,247,.1); animation:analysis-state-blink 1.25s ease-in-out infinite alternate; }
@keyframes analysis-notice-pulse { from { opacity:.7; transform:scale(.9); } to { opacity:0; transform:scale(1.18); } }
@keyframes analysis-state-blink { to { opacity:.35; transform:scale(.76); } }

@media(max-width:900px) {
  .analysis-popup-notice { width:min(560px,100%); margin-inline:auto!important; text-align:left; }
}
@media(max-width:620px) {
  .analysis-popup-notice { grid-template-columns:40px minmax(0,1fr); gap:11px; min-height:0!important; margin-top:17px!important; padding:13px 13px!important; border-radius:14px!important; }
  .analysis-popup-mark { width:38px; height:38px; border-radius:11px; }
  .analysis-popup-copy strong { font-size:12px; }
  .analysis-popup-copy > span { font-size:10px; }
  .analysis-popup-state { grid-column:2; justify-self:start; margin-top:1px; padding:6px 8px; }
}
@media(prefers-reduced-motion:reduce) {
  .analysis-popup-mark i,.analysis-popup-state i { animation:none!important; }
}

/* Visual hierarchy: the report is primary, structured data is supporting evidence. */
.json-panel {
  min-height:190px;
  padding:24px 28px!important;
  border-color:rgba(72,80,125,.13)!important;
  color:#30364b!important;
  background:linear-gradient(145deg,#f5f6fa,#eceff6)!important;
  box-shadow:0 16px 38px rgba(45,52,89,.075)!important;
}
.json-panel::before { right:26px; top:-29px; color:rgba(86,99,247,.055)!important; font-size:128px!important; }
.json-panel .panel-title { margin-bottom:18px; }
.json-panel .panel-title::before {
  width:42px!important;
  height:42px!important;
  border-color:rgba(86,99,247,.17)!important;
  color:#5b65cc!important;
  background:rgba(255,255,255,.74)!important;
  box-shadow:0 7px 18px rgba(64,72,130,.07);
}
.json-panel .panel-title h3 { color:#30364a!important; font-size:18px; }
.json-panel .panel-title small { color:#8a90a3!important; }
.json-panel .empty-visual,
.json-panel .meta-findings-list {
  min-height:74px;
  max-height:360px;
  padding:36px 18px 15px!important;
  border-color:rgba(86,99,247,.1)!important;
  color:#6f768b!important;
  background:rgba(255,255,255,.6)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.8)!important;
  scrollbar-color:#aeb4c9 transparent;
}
.json-panel .empty-visual::before,
.json-panel .meta-findings-list::before { left:17px; top:13px; color:#969db4!important; }
.json-panel .meta-finding-item { border-left-width:2px; color:#33394d; background:rgba(255,255,255,.66); }
.json-panel .meta-finding-headline { color:#343a4e; }

.report-section {
  position:relative;
  isolation:isolate;
  margin-top:34px;
  padding:clamp(30px,4vw,54px)!important;
  overflow:hidden;
  border:2px solid transparent!important;
  border-radius:26px!important;
  background:linear-gradient(#fff,#fff) padding-box,linear-gradient(115deg,#5663f7 0%,#9ba3ff 32%,#dfe2ff 67%,#5663f7 100%) border-box!important;
  box-shadow:0 34px 90px rgba(58,67,145,.16),0 8px 24px rgba(52,59,105,.07)!important;
}
.report-section::before {
  content:"";
  position:absolute;
  inset:0!important;
  z-index:-2!important;
  height:auto!important;
  border-radius:inherit;
  background:radial-gradient(circle at 88% 0,rgba(86,99,247,.16),transparent 29%),linear-gradient(125deg,rgba(86,99,247,.045),transparent 44%)!important;
}
.report-section::after {
  content:"";
  position:absolute;
  right:-125px;
  top:-145px;
  z-index:-1;
  width:330px;
  height:330px;
  border:1px solid rgba(86,99,247,.12);
  border-radius:50%;
  box-shadow:0 0 0 48px rgba(86,99,247,.025),0 0 0 96px rgba(86,99,247,.018);
  pointer-events:none;
}
.report-priority-bar {
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin:-6px 0 32px;
  padding-bottom:17px;
  border-bottom:1px solid rgba(86,99,247,.13);
}
.report-priority-bar > span { display:flex; align-items:center; gap:9px; color:#4c57d7; font:800 9px/1 Paperlogy,sans-serif; letter-spacing:.11em; }
.report-priority-bar > span i { width:8px; height:8px; border:2px solid #5663f7; border-radius:3px; box-shadow:0 0 0 5px rgba(86,99,247,.08); transform:rotate(45deg); }
.report-priority-bar small { color:#9298aa; font-size:10px; font-weight:650; }
.report-heading { position:relative; z-index:1; grid-template-columns:minmax(0,1.1fr) minmax(300px,.7fr); align-items:center; gap:46px; }
.report-heading .section-label { margin-bottom:11px; color:#5663f7; font-size:11px; font-weight:820; }
.report-heading .section-heading { font-size:clamp(40px,5vw,68px); line-height:.98; letter-spacing:-.065em; }
.report-capability-list { display:flex; flex-wrap:wrap; gap:7px; margin-top:22px; }
.report-capability-list span { min-height:30px; display:inline-flex; align-items:center; padding:6px 10px; border:1px solid rgba(86,99,247,.12); border-radius:9px; color:#626a83; background:rgba(255,255,255,.68); font-size:10px; font-weight:730; }
.report-heading-side { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:20px; padding:20px 0 2px 24px; border-left:1px solid rgba(86,99,247,.12); }
.report-heading-copy { max-width:320px; margin:0!important; color:#747b91; font-size:12px; line-height:1.75; text-align:left!important; }
.report-module-count { display:flex; align-items:flex-end; gap:8px; }
.report-module-count strong { color:#5663f7; font-family:Paperlogy,sans-serif; font-size:44px; font-weight:900; line-height:.8; letter-spacing:-.07em; }
.report-module-count span { color:#9298aa; font:750 7px/1.25 ui-monospace,monospace; letter-spacing:.08em; }
.report-actions { position:relative; z-index:1; margin-top:30px; }
.report-generate-btn {
  min-width:190px;
  min-height:56px;
  color:#fff!important;
  border-color:#5663f7!important;
  background:linear-gradient(135deg,#6571ff,#4652d8)!important;
  box-shadow:0 16px 34px rgba(70,82,216,.25)!important;
}
.report-generate-btn:hover { background:linear-gradient(135deg,#727cff,#515ddd)!important; box-shadow:0 20px 40px rgba(70,82,216,.31)!important; }
.report-btn-icon { border-color:rgba(255,255,255,.55)!important; }
.report-btn-icon::before { background:#fff!important; }

@media(max-width:900px) {
  .report-heading { grid-template-columns:1fr; gap:28px; }
  .report-heading-side { grid-template-columns:minmax(0,1fr) auto; padding:20px 0 0; border-left:0; border-top:1px solid rgba(86,99,247,.11); }
}
@media(max-width:620px) {
  .json-panel { min-height:170px; padding:20px!important; }
  .report-section { margin-top:24px; padding:25px 19px!important; border-radius:20px!important; }
  .report-priority-bar { align-items:flex-start; margin-bottom:25px; }
  .report-priority-bar small { max-width:125px; text-align:right; line-height:1.45; }
  .report-heading .section-heading { font-size:39px; }
  .report-heading-side { grid-template-columns:1fr; gap:16px; }
  .report-module-count { justify-self:start; }
  .report-actions { align-items:stretch; }
  .report-generate-btn { width:100%; }
}

/* Unified product intelligence workspace. */
.analysis-workspace {
  position:relative;
  isolation:isolate;
  grid-column:1 / -1;
  min-width:0;
  padding:clamp(18px,2.2vw,32px);
  overflow:hidden;
  border:1px solid rgba(86,99,247,.18);
  border-radius:26px;
  background:
    radial-gradient(circle at 94% 0,rgba(86,99,247,.105),transparent 27%),
    linear-gradient(145deg,rgba(255,255,255,.98),rgba(246,247,252,.96));
  box-shadow:0 26px 72px rgba(51,59,111,.105),inset 0 1px rgba(255,255,255,.95);
}
.analysis-workspace::before {
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:clamp(120px,19vw,300px);
  height:3px;
  background:linear-gradient(90deg,#5663f7,rgba(86,99,247,.08));
}
.analysis-workspace-head {
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-bottom:22px;
  padding:0 3px 20px;
  border-bottom:1px solid rgba(70,78,126,.11);
}
.analysis-workspace-title { display:flex; align-items:center; gap:14px; min-width:0; }
.analysis-workspace-mark {
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:14px;
  color:#fff;
  background:#5663f7;
  box-shadow:0 11px 24px rgba(70,82,216,.22),inset 0 1px rgba(255,255,255,.38);
  font-family:Paperlogy,sans-serif;
  font-size:19px;
  font-weight:900;
  letter-spacing:-.07em;
}
.analysis-workspace-title h2 { margin:0; color:#24293a; font-size:clamp(20px,2vw,26px); font-weight:850; letter-spacing:-.045em; }
.analysis-workspace-title p { margin:5px 0 0; color:#7b8297; font-size:12px; font-weight:560; line-height:1.55; }
.analysis-workspace-flow { display:flex; align-items:center; gap:10px; flex:0 0 auto; color:#777f96; font-size:10px; font-weight:760; }
.analysis-workspace-flow span { min-width:34px; text-align:center; }
.analysis-workspace-flow i { width:24px; height:1px; background:rgba(86,99,247,.25); }
.analysis-workspace .analysis-data-zone {
  grid-column:auto;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.analysis-workspace > .analysis-loading-screen {
  inset:0;
  min-height:100%;
  grid-template-rows:auto minmax(120px,1fr);
  align-content:stretch;
  column-gap:clamp(28px,5vw,72px);
  row-gap:0;
  padding-top:clamp(44px,5vw,76px);
  border-radius:inherit;
}
.analysis-workspace > .analysis-loading-screen > .data-loader-visual { grid-column:1; grid-row:1; }
.analysis-workspace > .analysis-loading-screen > .analysis-copy { grid-column:2; grid-row:1; }
.analysis-loading-ad {
  grid-column:1 / -1;
  grid-row:2;
  align-self:end;
  width:100%;
  min-height:78px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:15px;
  margin-top:28px;
  padding:14px 16px;
  border:1px dashed rgba(86,99,247,.28);
  border-radius:14px;
  color:#4f566d;
  background:rgba(255,255,255,.58);
}
.analysis-loading-ad-mark {
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:11px;
  color:#6670cf;
  background:#eef0ff;
  font:850 11px/1 ui-monospace,monospace;
}
.analysis-loading-ad-copy { min-width:0; display:grid; gap:3px; text-align:left; }
.analysis-loading-ad-copy strong { color:#30364a; font-size:13px; font-weight:820; }
.analysis-loading-ad-copy small { color:#858ca0; font-size:10px; line-height:1.5; }
.analysis-loading-ad a {
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:38px;
  padding:9px 12px;
  border:1px solid rgba(86,99,247,.18);
  border-radius:10px;
  color:#4b56d4;
  background:#fff;
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
}
.analysis-loading-ad a:hover { border-color:rgba(86,99,247,.38); background:#f7f8ff; transform:translateY(-1px); }
.analysis-loading-ad a:active { transform:translateY(0) scale(.98); }
.analysis-workspace .analysis-data-zone > .panel,
.analysis-workspace .analysis-support-grid > .panel {
  border-color:rgba(86,99,247,.125);
  background:rgba(255,255,255,.78);
  box-shadow:0 12px 30px rgba(48,55,96,.052);
}
.analysis-support-grid {
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
  gap:16px;
  align-items:stretch;
  margin-top:16px;
}
.analysis-support-grid > .keyword-panel,
.analysis-support-grid > .json-panel {
  grid-column:auto;
  min-width:0;
  height:100%;
  margin:0;
}
.analysis-support-grid > .keyword-panel { min-height:220px; padding:24px 28px; }
.analysis-support-grid > .json-panel { min-height:220px; }

/* The browser-verification notice precedes progress so the reason is read first. */
.analysis-loading-screen .analysis-popup-notice {
  order:0;
  min-height:108px!important;
  margin:20px 0 0!important;
  padding:17px 18px!important;
  border:2px solid rgba(86,99,247,.26)!important;
  background:linear-gradient(120deg,#fff,rgba(235,238,255,.96))!important;
  box-shadow:0 18px 42px rgba(59,68,135,.13),inset 0 1px rgba(255,255,255,.98);
}
.analysis-loading-screen .analysis-popup-copy { gap:7px; }
.analysis-loading-screen .analysis-popup-copy strong { color:#20263a; font-size:clamp(15px,1.2vw,17px); font-weight:900; line-height:1.35; }
.analysis-loading-screen .analysis-popup-copy > span { color:#626a82; font-size:12px; font-weight:650; line-height:1.65; }
.analysis-loading-screen .analysis-progress { order:1; margin-top:22px; }
.analysis-loading-screen .analysis-steps { order:2; }

#product-info-panel {
  margin-top:clamp(40px,5vw,68px);
}

@media(max-width:1060px) {
  .analysis-support-grid { grid-template-columns:1fr; }
  .analysis-workspace-flow { display:none; }
}
@media(max-width:900px) {
  .analysis-workspace { padding:20px; border-radius:22px; }
  .analysis-workspace-head { align-items:flex-start; margin-bottom:18px; }
  .analysis-support-grid { margin-top:14px; gap:14px; }
  .analysis-loading-screen .analysis-popup-notice { width:min(590px,100%); }
  .analysis-workspace > .analysis-loading-screen { grid-template-rows:auto auto minmax(100px,1fr); align-content:stretch; padding-top:34px; }
  .analysis-workspace > .analysis-loading-screen > .data-loader-visual { grid-column:1; grid-row:1; }
  .analysis-workspace > .analysis-loading-screen > .analysis-copy { grid-column:1; grid-row:2; }
  .analysis-loading-ad { grid-column:1; grid-row:3; }
}
@media(max-width:620px) {
  .analysis-workspace { padding:14px; border-radius:18px; }
  .analysis-workspace-head { padding:3px 2px 16px; }
  .analysis-workspace-mark { width:40px; height:40px; border-radius:12px; }
  .analysis-workspace-title p { max-width:235px; font-size:10px; }
  .analysis-support-grid > .keyword-panel,
  .analysis-support-grid > .json-panel { min-height:0; padding:19px!important; }
  .analysis-loading-screen .analysis-popup-notice { min-height:0!important; margin-top:15px!important; padding:13px!important; }
  .analysis-loading-screen .analysis-popup-copy strong { font-size:13px; }
  .analysis-loading-screen .analysis-popup-copy > span { font-size:10px; line-height:1.55; }
  .analysis-loading-screen .analysis-progress { margin-top:16px; }
  .analysis-workspace > .analysis-loading-screen { padding-top:24px; }
  .analysis-loading-ad { grid-template-columns:38px minmax(0,1fr); gap:11px; min-height:0; margin-top:20px; padding:12px; }
  .analysis-loading-ad-mark { width:38px; height:38px; }
  .analysis-loading-ad a { grid-column:2; justify-self:start; min-height:34px; padding:7px 10px; }
  #product-info-panel { margin-top:32px; }
}
@media(prefers-reduced-motion:reduce) {
  .analysis-workspace *,
  .analysis-workspace *::before,
  .analysis-workspace *::after { animation-duration:.01ms!important; animation-iteration-count:1!important; }
}
