/* Fonts are served from this site (/assets/fonts), subset to the characters the site uses. All are SIL Open Font License 1.1; see LICENSE-*.txt in that folder. */
@font-face { font-family: 'IBM Plex Sans'; font-weight: 400; font-style: normal; font-display: swap; src: url('/assets/fonts/plex-sans-400-latin.woff2') format('woff2'); }
@font-face { font-family: 'IBM Plex Sans'; font-weight: 500; font-style: normal; font-display: swap; src: url('/assets/fonts/plex-sans-500-latin.woff2') format('woff2'); }
@font-face { font-family: 'IBM Plex Sans'; font-weight: 600; font-style: normal; font-display: swap; src: url('/assets/fonts/plex-sans-600-latin.woff2') format('woff2'); }
@font-face { font-family: 'IBM Plex Mono'; font-weight: 500; font-style: normal; font-display: swap; src: url('/assets/fonts/plex-mono-500-latin.woff2') format('woff2'); }
@font-face { font-family: 'IBM Plex Mono'; font-weight: 600; font-style: normal; font-display: swap; src: url('/assets/fonts/plex-mono-600-latin.woff2') format('woff2'); }
@font-face { font-family: 'M PLUS Rounded 1c'; font-weight: 800; font-style: normal; font-display: swap; src: url('/assets/fonts/mplus-rounded-800-latin.woff2') format('woff2'); }
@font-face { font-family: 'Zen Kaku Gothic New'; font-weight: 500; font-style: normal; font-display: swap; src: url('/assets/fonts/zen-kaku-500-latin.woff2') format('woff2'); unicode-range: U+0020-007E, U+00A0-017F, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2013-2014, U+2018-201E, U+2022, U+2026, U+2030, U+2039-203A, U+20AC, U+20B9, U+2122, U+2190-2193, U+2212, U+2248; }
@font-face { font-family: 'Zen Kaku Gothic New'; font-weight: 500; font-style: normal; font-display: swap; src: url('/assets/fonts/zen-kaku-500-jp.woff2') format('woff2'); unicode-range: U+3000-303F, U+3040-30FF, U+4E00-9FFF, U+FF01-FF5E; }
@font-face { font-family: 'Zen Kaku Gothic New'; font-weight: 700; font-style: normal; font-display: swap; src: url('/assets/fonts/zen-kaku-700-latin.woff2') format('woff2'); unicode-range: U+0020-007E, U+00A0-017F, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2013-2014, U+2018-201E, U+2022, U+2026, U+2030, U+2039-203A, U+20AC, U+20B9, U+2122, U+2190-2193, U+2212, U+2248; }
@font-face { font-family: 'Zen Kaku Gothic New'; font-weight: 700; font-style: normal; font-display: swap; src: url('/assets/fonts/zen-kaku-700-jp.woff2') format('woff2'); unicode-range: U+3000-303F, U+3040-30FF, U+4E00-9FFF, U+FF01-FF5E; }
@font-face { font-family: 'Zen Kaku Gothic New'; font-weight: 900; font-style: normal; font-display: swap; src: url('/assets/fonts/zen-kaku-900-latin.woff2') format('woff2'); unicode-range: U+0020-007E, U+00A0-017F, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2013-2014, U+2018-201E, U+2022, U+2026, U+2030, U+2039-203A, U+20AC, U+20B9, U+2122, U+2190-2193, U+2212, U+2248; }
@font-face { font-family: 'Zen Kaku Gothic New'; font-weight: 900; font-style: normal; font-display: swap; src: url('/assets/fonts/zen-kaku-900-jp.woff2') format('woff2'); unicode-range: U+3000-303F, U+3040-30FF, U+4E00-9FFF, U+FF01-FF5E; }
/* Last Founder public site styles */
:root {
  --ink: #101418; --ink-2: #2A333C; --muted: #3D4752; --line: #DDE2E7; --line-2: #8A96A3; --field: #7A8794;
  --bg: #FFFFFF; --soft: #F2F4F6; --blue: #1747C9; --blue-d: #0F318F; --blue-soft: #E8EEFC;
  --green: #0E6B4F; --green-d: #0A4A37; --green-soft: #E3F4EC; --orange-d: #6E3105; --orange: #8A3D07; --orange-soft: #FDF0E4;
  --red: #B42318; --accent: #1747C9;
  --sans: 'IBM Plex Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --display: 'Zen Kaku Gothic New', 'Hiragino Kaku Gothic ProN', 'Yu Gothic', 'IBM Plex Sans', system-ui, sans-serif;
  --mono: 'IBM Plex Mono', ui-monospace, Menlo, Consolas, monospace;
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; font-family: var(--sans); color: var(--ink); background: var(--bg); line-height: 1.5; }
img, svg { display: inline-block; vertical-align: middle; }
a { color: var(--blue); }
a:hover { color: var(--blue-d); }
:focus-visible { outline: 3px solid var(--blue); outline-offset: 2px; }
h1, h2, h3 { font-family: var(--display); font-weight: 700; line-height: 1.12; letter-spacing: -0.012em; margin: 0 0 12px; }
h1 { font-size: clamp(36px, 5.6vw, 62px); font-weight: 900; letter-spacing: -0.025em; line-height: 1.04; }
h2 { font-size: clamp(26px, 3.2vw, 34px); }
h3 { font-size: 19px; }
p { margin: 0 0 12px; }
.wrap { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.narrow { max-width: 860px; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.skip { position: absolute; left: 16px; top: -80px; background: var(--ink); color: #fff; padding: 12px 16px; border-radius: 8px; z-index: 50; }
.skip:focus { top: 12px; }
.muted { color: var(--muted); }
.mono, .domain-name { font-family: var(--mono); font-weight: 600; overflow-wrap: anywhere; }
.fine { font-size: 13px; color: var(--muted); }
.req { color: #8A1C12; }
.icon { flex: 0 0 auto; }


.site-header { border-bottom: 1px solid var(--line); background: #fff; }
.header-row { display: flex; flex-wrap: wrap; gap: 10px 20px; align-items: center; justify-content: space-between; padding-top: 12px; padding-bottom: 12px; }
.brand { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; color: var(--ink); min-height: 44px; }
.brand:hover { color: var(--ink); }
.brand-mark { width: 40px; height: 40px; flex: 0 0 auto; display: inline-flex; }
.brand-mark svg { width: 40px; height: 40px; display: block; }
.brand-text { display: flex; flex-direction: column; line-height: 1.1; }
.brand-name { font-family: var(--display); font-weight: 900; font-size: 22px; letter-spacing: -0.02em; line-height: 1.1; }
.brand-name span { color: var(--blue); }
.brand-tag { font-size: 12px; font-weight: 500; color: var(--muted); margin-top: 3px; }
.footer-tag { color: #fff; font-weight: 600; margin-bottom: 0; }
.main-nav { display: flex; flex-wrap: wrap; gap: 0 18px; font-weight: 500; font-size: 15px; min-width: 0; }
.main-nav a { color: var(--ink); text-decoration: none; padding: 12px 0; }
.main-nav a:hover, .main-nav a[aria-current="page"] { color: var(--blue); }
.header-tools { display: flex; align-items: center; gap: 10px; margin-left: auto; flex: 0 0 auto; }
.currency { position: relative; display: inline-flex; flex: 0 0 auto; }
.cur-face { display: inline-flex; align-items: center; gap: 5px; min-height: 42px; padding: 0 8px 0 10px; border: 1px solid var(--line-2); border-radius: 10px; background: #fff; color: var(--ink); font-size: 14px; font-weight: 600; white-space: nowrap; }
.cur-sym { color: var(--muted); font-weight: 700; }
.cur-sym:empty { display: none; }
.cur-caret { color: var(--muted); flex: 0 0 auto; }
/* The select covers its own face exactly: invisible, but still the thing you click, tab to and hear. */
.currency select { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; border: 0; margin: 0; padding: 0; font: inherit; cursor: pointer; -webkit-appearance: none; appearance: none; }
/* The select is invisible, so its focus ring has to be drawn on the face the person can see. */
.currency:has(select:focus-visible) .cur-face { outline: 2px solid var(--blue); outline-offset: 2px; }
@supports not selector(:has(*)) { .currency:focus-within .cur-face { outline: 2px solid var(--blue); outline-offset: 2px; } }
.currency:hover .cur-face { background: var(--soft); }
.cart-link { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 1px solid var(--line-2); border-radius: 10px; color: var(--ink); }
.cart-link:hover { background: var(--soft); color: var(--ink); }
.cart-count { position: absolute; top: -7px; right: -7px; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 999px; background: var(--blue); color: #fff; font-size: 12px; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; }

.btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 0 20px; border-radius: 10px; border: 1px solid transparent; font: inherit; font-weight: 600; font-size: 15px; text-decoration: none; cursor: pointer; white-space: nowrap; }
.btn-lg { min-height: 54px; font-size: 17px; padding: 0 26px; }
.btn-sm { min-height: 40px; padding: 0 14px; font-size: 14px; }
.btn-primary { background: var(--blue); color: #fff; }
.btn-primary:hover { background: var(--blue-d); color: #fff; }
.btn-dark { background: var(--ink); color: #fff; }
.btn-dark:hover { background: var(--ink-2); color: #fff; }
.btn-outline { background: #fff; color: var(--ink); border-color: var(--ink); }
.btn-outline:hover { background: var(--soft); color: var(--ink); }
.link-arrow { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; min-height: 44px; }

.price { display: inline-flex; flex-direction: column; gap: 2px; }
.price-main { font-weight: 600; }
.price-alt { font-size: 13px; color: var(--muted); }
.price-md .price-main { font-family: var(--display); font-weight: 700; font-size: 22px; }
.price-lg .price-main { font-family: var(--display); font-weight: 700; font-size: 30px; }
.price-xl .price-main { font-family: var(--display); font-weight: 700; font-size: 40px; }
.price-lg .price-alt, .price-xl .price-alt { font-size: 15px; }
.price-alt:empty { display: none; }
.money { white-space: nowrap; }

.hero { background: var(--soft); }
.hero-row { display: flex; flex-wrap: wrap; gap: 44px; align-items: center; padding-top: clamp(44px, 7vw, 80px); padding-bottom: clamp(44px, 7vw, 80px); }
.hero-copy { flex: 999 1 500px; min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.hero-copy h1 { margin: 0; }
.eyebrow { display: inline-flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 600; letter-spacing: 0; color: var(--blue); }
.eyebrow::before { content: ''; width: 18px; height: 3px; border-radius: 2px; background: var(--blue); flex: none; }
.eyebrow .icon { display: none; }
.eyebrow.on-dark::before { background: #FFD27A; }
.jp { font-family: var(--display); font-weight: 700; font-size: .92em; letter-spacing: .08em; color: var(--muted); padding-left: 8px; border-left: 1px solid var(--line-2); }
.on-dark .jp, .dark .jp { color: #C4CCD4; border-color: #5a6672; }
.eyebrow-sm { font-size: 13px; font-weight: 600; color: var(--muted); text-transform: uppercase; letter-spacing: 0.06em; }
.lead { font-size: clamp(17px, 1.6vw, 19px); color: var(--muted); max-width: 600px; }
.search { display: flex; flex-wrap: wrap; gap: 10px; }
.search input { flex: 1 1 240px; min-width: 0; height: 56px; padding: 0 18px; border: 1px solid var(--field); border-radius: 12px; font: inherit; font-size: 17px; background: #fff; color: var(--ink); }
.popular { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; font-size: 14px; color: var(--muted); }
.popular a { font-family: var(--mono); min-height: 40px; display: inline-flex; align-items: center; padding: 0 14px; border: 1px solid var(--line-2); border-radius: 999px; background: #fff; color: var(--ink); text-decoration: none; }

.card { background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 24px; display: flex; flex-direction: column; gap: 14px; }
.card.soft { background: var(--soft); }
.featured { flex: 1 1 320px; min-width: 0; box-shadow: 0 12px 32px rgba(16, 20, 24, 0.08); }
.featured-name { font-family: var(--mono); font-weight: 600; font-size: clamp(26px, 3vw, 34px); overflow-wrap: anywhere; }
.card-top { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; }
.badge-ok { font-size: 13px; font-weight: 600; color: var(--green-d); background: var(--green-soft); padding: 4px 10px; border-radius: 999px; }
.trust-list { list-style: none; margin: 0; padding: 14px 0 0; border-top: 1px solid var(--line); display: flex; flex-direction: column; gap: 9px; font-size: 15px; }
.trust-list li { display: flex; gap: 10px; align-items: center; }
.trust-list .icon { color: var(--green); }
.trust-list.small { font-size: 14px; }

.why { border-bottom: 1px solid var(--line); }
.why-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 24px; padding-top: 36px; padding-bottom: 36px; }
.why p { color: var(--muted); font-size: 15px; margin: 0; }
.h-sm { font-size: 17px; margin-bottom: 6px; }
.h-md { font-size: clamp(22px, 2.6vw, 28px); }

.section { padding: clamp(48px, 8vw, 76px) 0; }
.section-tight { padding: 0 0 clamp(48px, 8vw, 76px); }
.section-head { display: flex; flex-wrap: wrap; gap: 12px 20px; justify-content: space-between; align-items: center; margin-bottom: 20px; }
.section-head h2 { margin: 0; }
.soft-bg { background: var(--soft); }
.dark { background: var(--ink); color: #fff; }
.dark h2 { color: #fff; }
.lead-dark { color: #C4CCD4; font-size: 17px; max-width: 640px; }
.split { display: flex; flex-wrap: wrap; gap: 44px; align-items: flex-start; }
.split > * { flex: 1 1 360px; min-width: 0; }
.row-between { display: flex; justify-content: space-between; gap: 12px; }

.grid-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 16px; }
.domain-card h3 { font-size: 21px; margin: 0; }
.domain-card .btn { margin-top: auto; }
.tag { font-size: 13px; font-weight: 600; color: var(--muted); background: var(--soft); padding: 4px 10px; border-radius: 999px; }
.plan-flag { font-size: 13px; font-weight: 600; color: var(--orange); }
.plan-pill { font-size: 13px; font-weight: 600; color: var(--orange-d); background: var(--orange-soft); padding: 4px 10px; border-radius: 999px; white-space: nowrap; }

.alert-box { background: var(--blue-soft); border-radius: 18px; padding: clamp(22px, 4vw, 38px); display: flex; flex-wrap: wrap; gap: 20px 40px; align-items: center; }
.alert-box > div { flex: 1 1 300px; }
.alert-box p { margin: 0; color: var(--ink-2); }
.alert-form { flex: 999 1 380px; min-width: 0; display: flex; flex-direction: column; gap: 8px; }
.inline-form { display: flex; flex-wrap: wrap; gap: 10px; }
.inline-form input { flex: 1 1 220px; min-width: 0; height: 52px; padding: 0 16px; border: 1px solid var(--field); border-radius: 12px; font: inherit; font-size: 16px; }
.ok-msg { color: var(--blue-d); font-weight: 600; font-size: 17px; }
.err-msg { color: var(--red); font-weight: 500; margin: 0; }
.ok-banner { background: var(--green-soft); border: 1px solid #9FD9BD; color: var(--green-d); border-radius: 12px; padding: 16px 20px; font-weight: 600; margin: 16px 0; }

.steps { list-style: none; padding: 0; margin: 28px 0 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 16px; }
.steps li { border: 1px solid #4A5560; border-radius: 14px; padding: 22px; display: flex; flex-direction: column; gap: 8px; }
.step-n { font-family: var(--mono); color: #8FB0FF; }
.step-t { font-family: var(--display); font-weight: 600; font-size: 19px; }
.step-d { color: #C4CCD4; font-size: 15px; }

details { background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: 16px 20px; margin-top: 12px; }
summary { font-weight: 600; font-size: 17px; cursor: pointer; min-height: 28px; }
details p { margin: 12px 0 0; color: var(--muted); }
.safe-note { color: var(--green-d); font-weight: 500; }

.form-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; }
.field { display: flex; flex-direction: column; gap: 6px; }
.field.full, .form-grid .full { grid-column: 1 / -1; }
.field label { font-size: 14px; font-weight: 600; }
.field input, .field select, .field textarea { min-height: 48px; padding: 0 14px; border: 1px solid var(--field); border-radius: 10px; font: inherit; font-size: 16px; color: var(--ink); background: #fff; width: 100%; }
.field textarea { padding: 12px 14px; resize: vertical; }
.field input[aria-invalid="true"], .field textarea[aria-invalid="true"] { border: 2px solid var(--red); }
.field .error { color: var(--red); font-size: 14px; }
.hint { font-size: 13px; color: var(--muted); }
.check { display: flex; gap: 12px; align-items: flex-start; font-size: 15px; line-height: 1.5; min-height: 44px; }
.check input { width: 20px; height: 20px; margin: 2px 0 0; flex: 0 0 auto; accent-color: var(--blue); }
.check.inline { align-items: center; align-self: end; }
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.form-end { display: flex; justify-content: flex-end; }
::placeholder { color: #5B6672; opacity: 1; }

.page-pad { padding-top: 36px; padding-bottom: 72px; }
.filters { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; margin: 20px 0 24px; padding: 18px; border: 1px solid var(--line); border-radius: 14px; }
.filters .field { flex: 1 1 150px; }
.filters .grow { flex: 3 1 240px; }
.table-box { position: relative; overflow-x: auto; border: 1px solid var(--line); border-radius: 14px; }
table { width: 100%; min-width: 620px; border-collapse: collapse; font-size: 15px; }
th { text-align: left; background: var(--soft); padding: 13px 18px; font-weight: 600; }
td { padding: 14px 18px; border-top: 1px solid var(--line); vertical-align: middle; }
td.right { text-align: right; }
.empty { padding: 20px 0; }

.crumbs { font-size: 14px; color: var(--muted); padding-top: 14px; }
.crumbs a { display: inline-block; padding: 10px 0; }
.domain-layout { display: flex; flex-wrap: wrap; gap: 36px; align-items: flex-start; padding-top: 8px; padding-bottom: 72px; }
.domain-main { flex: 999 1 560px; min-width: 0; display: flex; flex-direction: column; gap: 36px; }
.domain-main h2 { font-size: 25px; }
.domain-hero { background: var(--ink); color: #fff; border-radius: 20px; padding: clamp(32px, 6vw, 60px) clamp(22px, 4vw, 40px); display: flex; flex-direction: column; gap: 16px; align-items: flex-start; }
.domain-hero p { color: #C4CCD4; font-size: 18px; max-width: 580px; margin: 0; }
.domain-h1 { font-family: var(--mono); font-weight: 600; font-size: clamp(38px, 6vw, 62px); margin: 0; overflow-wrap: anywhere; color: #fff; }
.badge-verified { display: inline-flex; gap: 6px; align-items: center; font-size: 13px; font-weight: 600; color: var(--ink); background: #9FE3C4; padding: 5px 12px; border-radius: 999px; }
.tag-row { display: flex; flex-wrap: wrap; gap: 8px; }
.tag-row span { font-size: 14px; background: var(--ink-2); padding: 6px 12px; border-radius: 999px; }
.facts { margin: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 1px; background: var(--line); border: 1px solid var(--line); border-radius: 14px; overflow: hidden; }
.facts div { background: #fff; padding: 16px 20px; }
.facts dt { font-size: 13px; color: var(--muted); }
.facts dd { margin: 4px 0 0; font-weight: 600; }

.swatches { display: flex; flex-wrap: wrap; gap: 6px; }
.swatches button { min-height: 40px; display: inline-flex; gap: 8px; align-items: center; padding: 0 12px; border: 1px solid var(--line-2); border-radius: 999px; background: #fff; font: inherit; font-size: 14px; cursor: pointer; }
.swatches button[aria-pressed="true"] { border: 2px solid var(--ink); font-weight: 600; }
.dot { width: 14px; height: 14px; border-radius: 50%; }
.dot-blue { background: #1747C9; } .dot-green { background: #0E6B4F; } .dot-plum { background: #6B2F8F; } .dot-dark { background: #101418; }
.preview-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 14px; }
.pv { margin: 0; border: 1px solid var(--line); border-radius: 14px; overflow: hidden; display: flex; flex-direction: column; }
.pv figcaption { padding: 10px 14px; border-top: 1px solid var(--line); font-size: 13px; color: var(--muted); }
.pv-bar { background: var(--soft); padding: 10px 12px; border-bottom: 1px solid var(--line); }
.pv-url { display: block; background: #fff; border-radius: 6px; padding: 4px 10px; font-family: var(--mono); font-size: 12px; color: var(--ink-2); overflow-wrap: anywhere; }
.pv-body { padding: 18px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.pv-word { font-family: var(--display); font-weight: 700; font-size: 20px; }
.pv-line { font-family: var(--display); font-weight: 600; }
.pv-btn { align-self: flex-start; font-size: 13px; font-weight: 600; color: #fff; padding: 8px 14px; border-radius: 8px; }
.accent-text { color: var(--accent); }
.accent-bg { background: var(--accent); }
.accent-border { border-top: 5px solid var(--accent); }
.pv-icon-wrap { flex: 1; background: var(--soft); padding: 24px; display: flex; flex-direction: column; gap: 10px; align-items: center; justify-content: center; }
.pv-icon { width: 84px; height: 84px; border-radius: 20px; color: #fff; display: flex; align-items: center; justify-content: center; font-family: var(--display); font-weight: 700; font-size: 40px; }
.pv-app { font-size: 14px; font-weight: 600; }
.pv-card-wrap { flex: 1; background: var(--soft); padding: 22px; display: flex; align-items: center; justify-content: center; }
.pv-card { width: 100%; max-width: 230px; aspect-ratio: 1.75; background: #fff; border-radius: 8px; box-shadow: 0 6px 16px rgba(16, 20, 24, 0.12); padding: 16px; display: flex; flex-direction: column; justify-content: space-between; }
.pv-card .pv-word { font-size: 17px; }
.pv-small { font-size: 11px; line-height: 1.5; color: var(--ink-2); overflow-wrap: anywhere; }

.protect { list-style: none; margin: 0 0 14px; padding: 0; border: 1px solid var(--line); border-radius: 14px; }
.protect li { display: flex; gap: 16px; padding: 16px 20px; border-top: 1px solid var(--line); }
.protect li:first-child { border-top: 0; }
.protect span { font-family: var(--mono); color: var(--blue); font-weight: 600; }
.warn-note { background: var(--orange-soft); color: var(--orange-d); border-radius: 12px; padding: 14px 18px; }
.similar { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px; }
.similar a { border: 1px solid var(--line); border-radius: 12px; padding: 16px; text-decoration: none; color: var(--ink); display: flex; flex-direction: column; gap: 4px; }

.buybox { flex: 1 1 340px; min-width: 0; box-shadow: 0 12px 32px rgba(16, 20, 24, 0.08); position: relative; }
.buy-price { display: flex; flex-direction: column; gap: 4px; }
.tabs { display: flex; gap: 4px; background: var(--soft); border-radius: 12px; padding: 4px; }
.tabs button { flex: 1; min-height: 44px; border: 0; border-radius: 9px; background: transparent; font: inherit; font-size: 15px; color: var(--muted); cursor: pointer; }
.tabs button[aria-selected="true"] { background: #fff; color: var(--ink); font-weight: 600; box-shadow: 0 1px 3px rgba(16, 20, 24, 0.12); }
.stack { display: flex; flex-direction: column; gap: 14px; }
.js .tab-panel[hidden] { display: none; }
.plan-calc { background: var(--soft); border-radius: 12px; padding: 14px 16px; display: flex; flex-direction: column; gap: 8px; font-size: 15px; }
.plan-calc .total { border-top: 1px solid var(--line); padding-top: 8px; }
.two-btn { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 8px; }
.two-btn .btn { white-space: normal; padding: 0 12px; text-align: center; font-size: 14px; }
.tabs button { font-size: 14px; padding: 0 6px; }
.sold-pill { align-self: flex-start; font-weight: 700; color: var(--blue-d); background: var(--blue-soft); padding: 6px 14px; border-radius: 999px; }

.legal h2 { margin-top: 44px; padding-top: 12px; border-top: 1px solid var(--line); }
.legal h3 { margin-top: 26px; }
.legal ul { padding-left: 20px; }
.legal li { margin-bottom: 6px; }
.toc { display: flex; flex-wrap: wrap; gap: 4px 20px; margin: 16px 0; }
.toc a { padding: 8px 0; }

.site-footer { background: var(--ink); color: #C4CCD4; }
.site-footer .wrap { padding-top: 52px; padding-bottom: 28px; }
.footer-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 28px; }
.footer-brand { font-family: var(--display); font-weight: 700; font-size: 21px; color: #fff; }
.footer-about p { font-size: 14px; margin-top: 10px; }
.site-footer nav { display: flex; flex-direction: column; font-size: 14px; }
.site-footer nav a { color: #DCE2E8; padding: 7px 0; }
.footer-head { font-weight: 600; color: #fff; margin-bottom: 6px; }
.footer-base { border-top: 1px solid #36404A; margin-top: 32px; padding-top: 22px; display: flex; flex-wrap: wrap; gap: 10px 24px; justify-content: space-between; font-size: 13px; }

/* ---------- Founder Intelligence: Name my idea ---------- */
.btn-light { background: #fff; color: var(--ink); }
.btn-light:hover { background: var(--blue-soft); color: var(--ink); }
.btn[aria-busy="true"] { opacity: .75; pointer-events: none; }
.ai-badge { align-self: flex-start; display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; color: var(--blue-d); background: var(--blue-soft); padding: 5px 12px; border-radius: 999px; }
.ai-badge.on-dark { background: rgba(255,255,255,.14); color: #fff; }
.idea-link { font-size: 15px; }
.idea-hero { background: var(--soft); }
.idea-hero-row { display: flex; flex-wrap: wrap; gap: 40px; align-items: flex-start; padding-top: clamp(40px, 6vw, 72px); padding-bottom: clamp(40px, 6vw, 72px); }
.idea-copy { flex: 1 1 340px; min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.idea-copy h1 { margin: 0; }
.trust-list.plain { border-top: 0; padding-top: 0; }
.idea-form { flex: 999 1 460px; min-width: 0; gap: 18px; box-shadow: 0 12px 32px rgba(16, 20, 24, 0.08); }
.idea-form textarea { min-height: 130px; }
.chip-field { border: 0; margin: 0; padding: 0; }
.chip-field legend { font-size: 14px; font-weight: 600; margin-bottom: 8px; padding: 0; }
.chip-row { display: flex; flex-wrap: wrap; gap: 8px; }
.chip-radio { position: relative; }
.chip-radio input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.chip-radio span { display: inline-flex; align-items: center; min-height: 42px; padding: 0 16px; border: 1px solid var(--line-2); border-radius: 999px; background: #fff; font-size: 15px; cursor: pointer; }
.chip-radio input:checked + span { background: var(--ink); color: #fff; border-color: var(--ink); font-weight: 600; }
.chip-radio input:focus-visible + span { outline: 3px solid var(--blue); outline-offset: 2px; }
.form-2 { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 14px; }
.example-row { display: flex; flex-wrap: wrap; gap: 10px; }
.example { text-align: left; max-width: 100%; min-height: 44px; padding: 10px 16px; border: 1px solid var(--line); border-radius: 12px; background: #fff; font: inherit; font-size: 14px; color: var(--ink-2); cursor: pointer; }
.example:hover { border-color: var(--blue); color: var(--ink); }
.examples { padding-top: 32px; }
.ai-steps { list-style: none; padding: 0; margin: 20px 0 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; }
.ai-steps li { background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 20px; display: flex; flex-direction: column; gap: 6px; }
.ai-steps .step-n { color: var(--blue); }
.ai-steps span:last-child { color: var(--muted); font-size: 15px; }
.idea-promo { background: var(--blue); color: #fff; border-radius: 18px; padding: clamp(24px, 4vw, 40px); display: flex; flex-wrap: wrap; gap: 20px 40px; align-items: center; justify-content: space-between; }
.idea-promo-copy { flex: 1 1 340px; display: flex; flex-direction: column; gap: 10px; }
.idea-promo h2 { color: #fff; margin: 0; font-size: clamp(24px, 2.8vw, 30px); }
.idea-promo p { margin: 0; color: #E8EEFC; font-size: 16px; max-width: 620px; }

.idea-results { display: flex; flex-direction: column; gap: 40px; }
.idea-top { display: flex; flex-direction: column; gap: 10px; }
.idea-top h1 { margin: 0; }
.idea-top p { margin: 0; }
.idea-quote { font-size: 17px; font-style: italic; max-width: 820px; }
.concept-card { background: var(--ink); color: #fff; border-radius: 20px; padding: clamp(24px, 4vw, 40px); display: flex; flex-direction: column; gap: 20px; }
.eyebrow-light { font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: #8FB0FF; }
.concept-line { font-family: var(--display); font-size: clamp(20px, 2.4vw, 26px); line-height: 1.35; margin: 0; max-width: 900px; }
.concept-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 20px; border-top: 1px solid #36404A; padding-top: 20px; }
.concept-grid p, .concept-grid li { color: #DCE2E8; font-size: 15px; margin: 0; }
.h-xs { font-family: var(--sans); font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: .06em; color: #C4CCD4; margin: 0 0 10px; }
ul.clean { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 6px; }
.concept-card .tag-row span { background: var(--ink-2); color: #fff; }
.match-pill { font-size: 12px; font-weight: 600; color: var(--green-d); background: var(--green-soft); padding: 3px 10px; border-radius: 999px; }
.match-why { font-size: 14px; color: var(--muted); margin: 0; }
.idea-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 14px; margin-top: 16px; }
.idea-card { border: 1px solid var(--line); border-radius: 14px; padding: 18px; display: flex; flex-direction: column; gap: 8px; background: #fff; cursor: pointer; }
.idea-card:has(input:checked) { border: 2px solid var(--blue); padding: 17px; background: var(--blue-soft); }
.idea-card-top { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.idea-card input { width: 22px; height: 22px; accent-color: var(--blue); flex: 0 0 auto; }
.idea-name { font-family: var(--display); font-weight: 700; font-size: 22px; overflow-wrap: anywhere; }
.idea-style { align-self: flex-start; font-size: 12px; font-weight: 600; color: var(--muted); background: var(--soft); padding: 3px 10px; border-radius: 999px; }
.idea-why { font-size: 14px; color: var(--ink-2); }
.idea-ext { font-family: var(--mono); font-size: 13px; color: var(--muted); margin-top: auto; overflow-wrap: anywhere; display: flex; flex-direction: column; gap: 6px; }
.ext-chip { display: flex; justify-content: space-between; align-items: center; gap: 8px; flex-wrap: wrap; padding: 6px 8px; border-radius: 8px; background: var(--soft); color: var(--ink-2); }
.avail { font-family: var(--sans); font-size: 12px; font-weight: 600; border-radius: 999px; padding: 2px 8px; white-space: nowrap; }
.avail:empty { display: none; }
.avail.free { background: var(--green-soft); color: var(--green-d); }
.avail.taken { background: #FDECEA; color: var(--red); }
.avail.unknown, .avail.checking { background: #fff; color: var(--muted); border: 1px solid var(--line); }
.avail.unknown a { color: var(--blue); }
.legend { display: inline-flex; gap: 6px; flex-wrap: wrap; vertical-align: middle; }
.refine-box { border: 1px dashed var(--line-2); border-radius: 18px; padding: 22px; display: grid; gap: 14px; background: var(--soft); }
.refine-box h2 { margin: 0 0 4px; }
.refine-box p { margin: 0; }
.refine-form { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.refine-form fieldset { border: 0; margin: 0; padding: 0; }
.hint-row { display: flex; justify-content: space-between; gap: 12px; align-items: baseline; flex-wrap: wrap; }
.count { font-size: 13px; color: var(--muted); font-variant-numeric: tabular-nums; }
.count.count-low { color: var(--orange); font-weight: 600; }
.picked-count { margin: 0 auto 0 0; font-size: 14px; }
.form-end { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; justify-content: flex-end; }
.send-box { background: var(--soft); border-radius: 18px; padding: clamp(22px, 4vw, 36px); display: flex; flex-wrap: wrap; gap: 24px 40px; }
.send-box > div { flex: 1 1 280px; }
.send-box > form { flex: 999 1 460px; min-width: 0; }
.send-box h2 { margin-top: 0; }
.next-steps { padding-left: 22px; display: flex; flex-direction: column; gap: 10px; max-width: 860px; }

@media (max-width: 640px) {
  .header-row { justify-content: flex-start; }
  .search .btn { width: 100%; }
  .domain-hero p { font-size: 16px; }
}
/* Between phone and full desktop the brand, the six nav links and the tools cannot share one line
   (they need about 1085px). Rather than letting one of them fall wherever it lands, the nav takes a
   row of its own and the tools stay beside the brand, top right, where people look for them. */
@media (min-width: 641px) {
  .header-row { row-gap: 2px; }
  .main-nav { order: 3; flex-basis: 100%; gap: 0 20px; padding-bottom: 2px; }
  .header-tools { order: 2; }
}

@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; } }

/* ---------- Update 2: reply status, premium, cart, payments, deals, Assist, Domain Academy ---------- */
.reply-live { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 500; color: var(--muted); }
.reply-live .dot { width: 9px; height: 9px; border-radius: 50%; background: var(--line-2); flex: 0 0 auto; }
.reply-live.is-online .dot { background: #18A058; box-shadow: 0 0 0 3px rgba(24, 160, 88, .2); }
.reply-live.is-away .dot { background: #E5A00D; }
.reply-live.on-dark { color: #fff; }
.reply-box { padding: 10px 12px; border-radius: 10px; background: var(--soft); }
.premium-badge { display: inline-flex; align-items: center; gap: 5px; font-size: 12px; font-weight: 700; color: #5C3D00; background: #FFE8B0; padding: 4px 10px; border-radius: 999px; letter-spacing: .02em; }
.domain-card.is-premium { border-color: #E5B23A; box-shadow: 0 0 0 1px #F3D27A inset; }
.premium-band { background: linear-gradient(135deg, #0F1D4A 0%, #101418 70%); color: #fff; }
.premium-band h2 { color: #fff; }
.premium-band .domain-card { color: var(--ink); }
.eyebrow.on-dark, .link-arrow.on-dark { color: #FFD27A; display: inline-flex; align-items: center; gap: 6px; }
.pop-premium { display: inline-flex; align-items: center; gap: 4px; background: #FFE8B0; border-color: #E5B23A !important; color: #5C3D00 !important; }
.card-actions { display: flex; gap: 8px; align-items: center; margin-top: auto; flex-wrap: wrap; }
.card-actions .btn-outline { flex: 1 1 auto; }
.domain-card .card-actions .btn { margin-top: 0; }
.btn-cart { background: #fff; color: var(--ink); border-color: var(--line-2); }
.btn-cart:hover { background: var(--soft); color: var(--ink); }
.btn-cart[aria-pressed="true"] { background: var(--blue-soft); border-color: var(--blue); color: var(--blue-d); }
.btn-cart.btn-icon .cart-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.btn-cart.btn-icon { width: 46px; padding: 0; position: relative; }
.btn-cart.btn-icon.btn-sm { width: 40px; }
.btn-block { width: 100%; }
html:not(.js) [data-cart-add] { display: none; }
.row-actions { display: flex; gap: 6px; justify-content: flex-end; align-items: center; }
.opts { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; }
.badge-row { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.btn-ghost { background: transparent; color: var(--blue); border-color: transparent; text-decoration: underline; }
.btn-ghost:hover { color: var(--blue-d); background: var(--blue-soft); }
.small { font-size: 14px; }
.pay-choice, .budget { border: 0; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.pay-choice legend, .budget legend, .budget-filter legend { font-weight: 600; font-size: 15px; margin-bottom: 6px; padding: 0; }
.pay-opt { display: flex; gap: 10px; align-items: flex-start; padding: 12px; border: 1px solid var(--line); border-radius: 12px; cursor: pointer; }
.pay-opt:has(input:checked) { border-color: var(--blue); background: var(--blue-soft); }
.pay-opt input { width: 20px; height: 20px; margin-top: 2px; accent-color: var(--blue); flex: 0 0 auto; }
.pay-opt > span { display: flex; flex-direction: column; gap: 3px; }
.pay-opt strong { display: inline-flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.rec { font-style: normal; font-size: 12px; font-weight: 700; color: var(--green-d); background: var(--green-soft); padding: 2px 8px; border-radius: 999px; }
.amount-row, .budget-row { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.amount-row select, .budget-row select { flex: 0 0 auto; min-height: 48px; border: 1px solid var(--field); border-radius: 10px; padding: 0 8px; font: inherit; background: #fff; }
.amount-row input, .budget-row input { flex: 1 1 110px; min-width: 0; min-height: 48px; border: 1px solid var(--field); border-radius: 10px; padding: 0 12px; font: inherit; font-size: 16px; }
.usd-hint:empty { display: none; }
fieldset.budget-filter { border: 0; margin: 0; padding: 0; min-width: 0; }
.filter-checks { display: flex; gap: 6px 18px; flex-wrap: wrap; align-items: center; }
/* Cart */
.cart-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 420px); gap: 24px; align-items: start; }
.cart-items { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.cart-items li { display: flex; gap: 10px; align-items: center; justify-content: space-between; flex-wrap: wrap; padding: 12px 14px; border: 1px solid var(--line); border-radius: 12px; }
.cart-items li a { font-weight: 600; font-size: 17px; margin-right: auto; }
/* Deal page */
.deal-head { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; align-items: flex-start; margin: 8px 0 18px; }
.deal-head h1 { margin: 6px 0; font-size: clamp(26px, 4vw, 38px); overflow-wrap: anywhere; }
.deal-state { font-weight: 700; font-size: 14px; padding: 8px 14px; border-radius: 999px; background: var(--soft); white-space: nowrap; }
.st-countered { background: #FFE8B0; color: #5C3D00; }
.st-agreed { background: var(--green-soft); color: var(--green-d); }
.st-declined, .st-closed, .st-gone { background: #F1F3F5; color: var(--muted); }
.st-waiting { background: var(--blue-soft); color: var(--blue-d); }
.deal-link { margin-bottom: 20px; }
.deal-link input { font-family: var(--mono); font-size: 14px; background: var(--soft); }
.deal-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 340px); gap: 24px; align-items: start; }
.stack-lg { display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.deal-actions form { margin: 0; }
.counter-box summary, .more-ext summary { cursor: pointer; font-weight: 600; color: var(--blue); min-height: 44px; display: flex; align-items: center; }
.timeline { list-style: none; margin: 0; padding: 0 0 0 18px; border-left: 2px solid var(--line); display: flex; flex-direction: column; gap: 14px; }
.timeline li { position: relative; display: flex; flex-direction: column; gap: 2px; }
.timeline li::before { content: ''; position: absolute; left: -25px; top: 6px; width: 12px; height: 12px; border-radius: 50%; background: var(--line-2); }
.timeline li.tl-owner::before { background: var(--blue); }
.tl-note { color: var(--muted); font-style: italic; }
.tl-when { font-size: 13px; color: var(--muted); }
.pay-panel { border-color: #9FD9BD; }
.pay-details { display: grid; gap: 10px; margin: 0; }
.pay-details div { display: grid; grid-template-columns: 130px 1fr; gap: 10px; padding: 10px 12px; background: var(--soft); border-radius: 10px; }
.pay-details dt { font-weight: 600; }
.pay-details dd { margin: 0; overflow-wrap: anywhere; white-space: pre-line; }
.deal-items { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.deal-items li { display: flex; justify-content: space-between; gap: 10px; }
.mono { font-family: var(--mono); }
/* Name my idea: extension chips */
.chip-check { position: relative; }
.chip-check input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.chip-check span { display: inline-flex; align-items: center; min-height: 38px; padding: 0 12px; border: 1px solid var(--line-2); border-radius: 999px; background: #fff; font-family: var(--mono); font-size: 14px; cursor: pointer; }
.chip-check input:checked + span { background: var(--blue); color: #fff; border-color: var(--blue); }
.chip-check input:focus-visible + span { outline: 3px solid var(--blue); outline-offset: 2px; }
.hint-inline { font-weight: 400; color: var(--muted); font-size: 14px; }
.more-ext { display: flex; flex-direction: column; gap: 6px; }
.more-ext[open] { gap: 6px; }
.more-ext .ext-chip { margin-top: 6px; }
/* Assist */
.assist-grid { display: grid; grid-template-columns: 1fr; gap: 14px; align-items: start; }
.assist-col { display: flex; flex-direction: column; gap: 10px; }
.assist-col h3 { margin: 0 0 4px; }
.assist-topic { background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 0 16px; }
.assist-topic[open] { padding-bottom: 14px; border-color: var(--blue); }
.assist-topic summary { list-style: none; cursor: pointer; display: flex; flex-direction: column; gap: 2px; padding: 14px 0; min-height: 44px; }
.assist-topic summary::-webkit-details-marker { display: none; }
.assist-group { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--blue); }
.assist-answer { gap: 12px; }
.assist-quick { background: var(--blue-soft); border-radius: 12px; padding: 16px; display: flex; flex-direction: column; gap: 8px; }
.assist-quick p { margin: 0; }
/* Domain Academy */
.assets-hero { background: linear-gradient(135deg, #0F1D4A 0%, #101418 75%); color: #fff; padding: 56px 0 44px; }
.assets-hero h1 { color: #fff; margin: 10px 0; font-size: clamp(30px, 5vw, 48px); max-width: 820px; }
.chip-links { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.chip-links a { color: #fff; text-decoration: none; border: 1px solid rgba(255,255,255,.35); border-radius: 999px; padding: 8px 16px; min-height: 40px; display: inline-flex; align-items: center; }
.chip-links a[aria-current="page"], .chip-links a:hover { background: #fff; color: var(--ink); }
.post-tag { align-self: flex-start; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--blue); }
.post-lead { margin-bottom: 24px; }
.post-lead h2 { font-size: clamp(24px, 3.4vw, 34px); margin: 0; }
.post-lead h2 a, .post-card h3 a { color: var(--ink); text-decoration: none; }
.post-lead h2 a:hover, .post-card h3 a:hover { color: var(--blue); text-decoration: underline; }
.post-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 18px; margin-bottom: 28px; }
.post-card h3 { margin: 0; font-size: 19px; }
.post-card p { margin: 0; }
.article { max-width: 760px; }
.article-head { display: flex; flex-direction: column; gap: 8px; margin: 14px 0 26px; }
.article-head h1 { margin: 0; font-size: clamp(30px, 4.6vw, 46px); }
.article-body { font-size: 18px; line-height: 1.7; }
.article-body h2 { font-size: 24px; margin: 30px 0 8px; }
.article-body ul { padding-left: 22px; }
.assets-cta { margin: 28px 0 16px; }
.share-row { max-width: 200px; margin-top: 12px; }
@media (max-width: 860px) {
  .cart-layout, .deal-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  /* Currency, cart and the account button share one row and must never push past the screen. */
  .header-tools { width: 100%; justify-content: space-between; gap: 8px; min-width: 0; flex-wrap: nowrap; }
  .header-tools .currency { flex: 1 1 auto; min-width: 0; }
  /* Full width on a phone, but the symbol and code stay together on the left; only the arrow moves right. */
  .cur-face { width: 100%; }
  .cur-face .cur-caret { margin-left: auto; }
  .account-slot { flex: 0 0 auto; min-width: 0; }
  .account-slot .btn { max-width: 110px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; display: inline-block; line-height: 40px; padding: 0 12px; }
  .pay-details div { grid-template-columns: 1fr; gap: 2px; }
  }
#guides-title { margin-top: 28px; }
.cart-count[hidden], .reply-live [hidden] { display: none; }
[hidden] { display: none !important; }
.budget-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.chip-btn { min-height: 36px; padding: 0 12px; border: 1px solid var(--line-2); border-radius: 999px; background: #fff; font: inherit; font-size: 13px; cursor: pointer; color: var(--ink); }
.chip-btn:hover { background: var(--blue-soft); border-color: var(--blue); }
.filters .field.budget-filter { flex: 1 1 100%; }
.budget-filter .budget-row { max-width: 620px; flex-wrap: nowrap; }
.budget-filter .budget-row select { width: auto; flex: 0 0 auto; }
.budget-filter .budget-row input { width: auto; flex: 1 1 100px; min-width: 0; }

/* Add-to-cart celebration */
.btn-cart[aria-pressed="true"] { background: linear-gradient(135deg, #E3F4EC, #E8EEFC); border-color: #0E6B4F; color: #0A4A37; }
.btn-cart.pop { animation: cart-pop .45s ease; }
@keyframes cart-pop { 0% { transform: scale(1); } 40% { transform: scale(1.12); } 100% { transform: scale(1); } }
.cart-celebrate { position: fixed; right: 16px; bottom: 16px; z-index: 60; width: min(380px, calc(100vw - 32px)); box-sizing: border-box; padding: 20px 20px 16px;
  border-radius: 18px; color: #fff; background: linear-gradient(135deg, #1747C9 0%, #3B2A9E 55%, #B5651D 100%); box-shadow: 0 18px 50px rgba(16, 20, 24, .35);
  display: flex; flex-direction: column; gap: 8px; transform: translateY(24px) scale(.96); opacity: 0; pointer-events: none; transition: transform .35s ease, opacity .35s ease; overflow: hidden; }
.cart-celebrate.show { transform: none; opacity: 1; pointer-events: auto; }
.cc-title { font-family: var(--display); font-size: 20px; }
.cc-text { margin: 0; color: #E8EEFC; }
.cc-close { position: absolute; top: 8px; right: 8px; width: 36px; height: 36px; border: 0; border-radius: 50%; background: rgba(255,255,255,.15); color: #fff; font-size: 20px; cursor: pointer; }
.cc-steps { list-style: none; margin: 6px 0 4px; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 4px; font-size: 11px; font-weight: 600; text-align: center; }
.cc-steps li { padding-top: 10px; border-top: 4px solid rgba(255,255,255,.25); color: #C9D6FF; }
.cc-steps li.done { border-top-color: #FFB020; color: #fff; }
.cc-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.cc-actions .btn { min-height: 42px; }
.btn-ghost-light { background: transparent; color: #fff; border-color: rgba(255,255,255,.5); }
.btn-ghost-light:hover { background: rgba(255,255,255,.12); color: #fff; }
.cc-sparks { position: absolute; left: 34px; top: 30px; width: 0; height: 0; }
.cc-sparks i { position: absolute; width: 7px; height: 7px; border-radius: 50%; background: #FFB020; opacity: 0; }
.cart-celebrate.show .cc-sparks i { animation: spark .9s ease-out forwards; }
.cc-sparks i:nth-child(3n) { background: #fff; }
.cc-sparks i:nth-child(3n+1) { background: #8FB0FF; }
@keyframes spark { 0% { opacity: 1; transform: rotate(var(--a)) translateX(0) scale(1); } 100% { opacity: 0; transform: rotate(var(--a)) translateX(var(--d)) scale(.4); } }
@media (prefers-reduced-motion: reduce) { .cart-celebrate, .cart-celebrate.show .cc-sparks i, .btn-cart.pop { animation: none; transition: none; } }

/* Deal progress and payment */
.deal-track { list-style: none; margin: 4px 0 8px; padding: 0; display: grid; grid-template-columns: repeat(5, 1fr); gap: 6px; }
.deal-track li { display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center; font-size: 13px; color: var(--muted); position: relative; }
.deal-track li::before { content: ''; position: absolute; top: 16px; left: -50%; width: 100%; height: 3px; background: var(--line); z-index: 0; }
.deal-track li:first-child::before { display: none; }
.deal-track li.done::before, .deal-track li.now::before { background: var(--green); }
.dt-dot { position: relative; z-index: 1; width: 34px; height: 34px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-weight: 700; background: #fff; border: 2px solid var(--line-2); }
.deal-track li.done .dt-dot { background: var(--green); border-color: var(--green); color: #fff; }
.deal-track li.now .dt-dot { border-color: var(--blue); color: var(--blue); box-shadow: 0 0 0 4px var(--blue-soft); }
.deal-track li.done, .deal-track li.now { color: var(--ink); font-weight: 600; }
.pay-summary { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; padding: 16px; border-radius: 14px; background: var(--soft); }
.pay-summary > div { display: flex; flex-direction: column; gap: 4px; }
.pay-amount { font-family: var(--display); font-size: 26px; }
.ref-row { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; font-size: 20px; }
.pay-methods { display: flex; flex-direction: column; gap: 14px; }
.pm-tabs { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 8px; }
.pm-tabs button { text-align: left; display: flex; flex-direction: column; gap: 2px; padding: 12px 14px; min-height: 64px; border: 1px solid var(--line); border-radius: 12px; background: #fff; font: inherit; cursor: pointer; color: var(--ink); }
.pm-tabs button span { font-size: 12px; color: var(--muted); }
.pm-tabs button[aria-selected="true"] { border: 2px solid var(--blue); padding: 11px 13px; background: var(--blue-soft); }
.pm-panel { border: 1px solid var(--line); border-radius: 14px; padding: 18px; display: flex; flex-direction: column; gap: 12px; }
.upi-box { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 18px; align-items: start; }
.qr { width: 180px; height: 180px; border-radius: 12px; border: 1px solid var(--line); background: #fff; padding: 6px; box-sizing: border-box; }
.qr svg { width: 100%; height: 100%; display: block; }
.stack-sm { display: flex; flex-direction: column; gap: 10px; }
.stack-sm p { margin: 0; }
.copy-row { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; padding: 10px 12px; border-radius: 10px; background: var(--soft); }
.cr-label { font-weight: 600; min-width: 70px; }
.cr-value { flex: 1 1 160px; overflow-wrap: anywhere; }
.bank-box { display: flex; flex-direction: column; gap: 8px; align-items: flex-start; }
.bank-details { margin: 0; width: 100%; box-sizing: border-box; white-space: pre-wrap; overflow-wrap: anywhere; font-family: var(--mono); font-size: 14px; padding: 12px 14px; border-radius: 10px; background: var(--soft); }
.paid-form h3 { margin: 0; }
.final-sale span { font-size: 14px; }
.complete-box { display: flex; flex-direction: column; gap: 10px; padding: 18px; border-radius: 14px; background: var(--green-soft); }
.complete-box p { margin: 0; }
.complete-badge { align-self: flex-start; display: inline-flex; gap: 6px; align-items: center; font-weight: 700; color: #fff; background: var(--green); padding: 6px 14px; border-radius: 999px; }
.st-complete { background: var(--green); color: #fff; }
@media (max-width: 640px) {
  .upi-box { grid-template-columns: 1fr; }
  .qr { width: 200px; height: 200px; }
  .deal-track { grid-template-columns: repeat(5, minmax(0, 1fr)); font-size: 11px; }
  .dt-dot { width: 28px; height: 28px; }
  .deal-track li::before { top: 13px; }
}

/* Final-sale terms */
.final-sale-terms { margin: 28px 0; padding: 20px 22px; border: 2px solid var(--orange); border-radius: 14px; background: var(--orange-soft); }
.final-sale-terms h3 { margin-top: 0; color: var(--orange-d); }
.final-sale-terms ol { padding-left: 22px; margin: 10px 0; }
.final-sale-terms li { margin-bottom: 8px; }

/* Trending extensions */
.trend-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 16px; margin-top: 18px; }
.trend-card { background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 18px; display: flex; flex-direction: column; gap: 10px; transition: transform .15s ease, box-shadow .15s ease; }
.trend-card:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(16, 20, 24, .08); }
.trend-card p { margin: 0; font-size: 15px; color: var(--ink-2); }
.trend-top { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.trend-ext { font-family: var(--mono); font-weight: 700; font-size: 26px; color: var(--blue); }
.trend-tag { display: inline-block; font-size: 12px; font-weight: 600; color: var(--green-d); background: var(--green-soft); padding: 3px 10px; border-radius: 999px; white-space: nowrap; }
.trend-links { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 14px; margin-top: auto; font-size: 14px; font-weight: 600; }
.trend-note { background: var(--soft); border-radius: 12px; padding: 12px 14px; font-size: 15px; margin: 14px 0 0; }
.trend-strip { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 6px 0 14px; }
.trend-strip-label { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 600; color: var(--muted); }
.chip-btn[aria-pressed="true"] { background: var(--blue); border-color: var(--blue); color: #fff; }
.choose-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; }
.choose-grid p { margin: 0; font-size: 15px; }
.region-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 18px; }
.ext-pill { font-family: var(--mono); font-size: 14px; padding: 4px 10px; border-radius: 999px; background: var(--soft); color: var(--ink-2); text-decoration: none; }
.ext-pill.on { background: var(--blue-soft); color: var(--blue-d); font-weight: 600; }

/* Next steps */
.next-list { list-style: none; counter-reset: nx; padding: 0; margin: 0; display: grid; gap: 10px; }
.next-list li { counter-increment: nx; display: grid; grid-template-columns: 34px 1fr auto; gap: 2px 12px; align-items: start; padding: 12px; border-radius: 12px; background: var(--soft); }
.next-list li::before { content: counter(nx); grid-row: span 2; width: 30px; height: 30px; border-radius: 50%; background: var(--green); color: #fff; font-weight: 700; display: grid; place-items: center; }
.next-list li span { grid-column: 2; font-size: 14px; color: var(--ink-2); }
.next-list li a { grid-column: 3; grid-row: 1 / span 2; align-self: center; font-weight: 600; font-size: 14px; white-space: nowrap; }

/* ---------- Naming Studio ---------- */
.studio-hero { position: relative; overflow: hidden; color: #fff; padding: clamp(40px, 6vw, 72px) 0;
  background: radial-gradient(1200px 500px at 85% -10%, rgba(76, 120, 255, .45), transparent 60%),
              radial-gradient(800px 400px at 0% 110%, rgba(255, 176, 32, .18), transparent 60%),
              linear-gradient(160deg, #0B1230 0%, #0F1E5A 55%, #1747C9 130%); }
.studio-hero::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .55;
  background-image: radial-gradient(1.5px 1.5px at 12% 22%, #fff, transparent), radial-gradient(1px 1px at 38% 8%, #fff, transparent),
    radial-gradient(1.5px 1.5px at 63% 30%, #fff, transparent), radial-gradient(1px 1px at 82% 14%, #fff, transparent),
    radial-gradient(1px 1px at 92% 52%, #fff, transparent), radial-gradient(1.5px 1.5px at 22% 70%, #fff, transparent),
    radial-gradient(1px 1px at 50% 88%, #fff, transparent), radial-gradient(1px 1px at 72% 76%, #fff, transparent); }
.studio-hero .wrap { position: relative; display: grid; gap: 28px; }
.studio-head { display: grid; gap: 14px; max-width: 760px; }
.studio-head h1, .studio-hero h1 { color: #fff; font-size: clamp(30px, 5vw, 50px); margin: 0; }
.lead-dark { color: #D6DEFF; font-size: 18px; margin: 0; }
.studio-journey { list-style: none; padding: 0; margin: 4px 0 0; display: flex; flex-wrap: wrap; gap: 8px 18px; font-size: 14px; font-weight: 600; color: #C9D4FF; }
.studio-journey li { display: inline-flex; align-items: center; gap: 8px; }
.studio-journey span { width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; background: rgba(255,255,255,.14); color: #fff; font-size: 13px; }
.studio-form { color: var(--ink); max-width: 900px; border: 0; box-shadow: 0 30px 60px rgba(4, 10, 40, .45); }
.studio-label { font-family: var(--display); font-size: 20px; font-weight: 700; }
.starter-row { display: flex; flex-wrap: wrap; gap: 8px; margin: 4px 0 10px; }
.idea-coach { list-style: none; padding: 0; margin: 10px 0 0; display: flex; flex-wrap: wrap; gap: 8px; }
.idea-coach li { font-size: 13px; font-weight: 600; padding: 5px 12px 5px 10px; border-radius: 999px; background: var(--soft); color: var(--muted); display: inline-flex; align-items: center; gap: 6px; transition: background .2s ease, color .2s ease; }
.idea-coach li::before { content: "○"; font-size: 12px; }
.idea-coach li.done { background: var(--green-soft); color: var(--green-d); }
.idea-coach li.done::before { content: "✓"; }
.coach-tip { margin: 8px 0 0; font-size: 14px; color: var(--muted); }
.coach-tip.good { color: var(--green-d); font-weight: 600; }
.feel-row .chip-radio span { flex-direction: column; align-items: flex-start; justify-content: center; border-radius: 14px; padding: 8px 14px; line-height: 1.2; }
.feel-row .chip-radio small { font-size: 12px; font-weight: 400; opacity: .8; }
.ext-more { margin-top: 10px; }
.ext-more summary { cursor: pointer; font-weight: 600; font-size: 14px; color: var(--blue); padding: 6px 0; }
.studio-go { width: 100%; font-size: 18px; min-height: 56px; background: linear-gradient(90deg, #1747C9, #3B6BFF); border: 0; }
.studio-gets { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 14px; }
.studio-gets > div { display: grid; gap: 6px; padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.studio-gets span:last-child { font-size: 14px; color: var(--muted); }
.get-n { font-family: var(--display); font-size: 30px; font-weight: 800; color: var(--blue); line-height: 1; }
.example small { display: block; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--blue); margin-bottom: 2px; }

.studio-hero.slim { padding: clamp(32px, 5vw, 56px) 0; }
.studio-hero .idea-quote { color: #D6DEFF; margin: 0; }
.studio-tags { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.studio-tags span { font-size: 13px; font-weight: 600; padding: 4px 12px; border-radius: 999px; background: rgba(255,255,255,.14); }
.studio-tags a { color: #fff; font-size: 14px; font-weight: 600; margin-left: 6px; }
.studio-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; max-width: 620px; }
.studio-stats div { background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.16); border-radius: 14px; padding: 12px 14px; display: grid; }
.studio-stats strong { font-family: var(--display); font-size: 26px; }
.studio-stats span { font-size: 13px; color: #C9D4FF; }
.board-filters { display: flex; flex-wrap: wrap; gap: 8px 10px; align-items: center; margin: 4px 0 6px; }
.board-filters .check { margin-left: auto; font-size: 14px; }
.idea-card.owned { border: 2px solid #E8A317; padding: 17px; background: linear-gradient(180deg, #FFF8E6, #fff 60%); cursor: default; box-shadow: 0 10px 24px rgba(232, 163, 23, .15); }
.owned-flag { align-self: flex-start; display: inline-flex; align-items: center; gap: 5px; font-size: 12px; font-weight: 700; color: #6A4300; background: #FFE7A8; padding: 3px 10px; border-radius: 999px; }
.idea-card .mono-ish { font-family: var(--mono); font-size: 20px; }
.owned-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: auto; }
.heart { position: relative; display: inline-grid; place-items: center; width: 38px; height: 38px; flex: 0 0 auto; }
.heart input { position: absolute; inset: 0; opacity: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; }
.heart span { font-size: 24px; line-height: 1; color: var(--line-2); transition: transform .15s ease, color .15s ease; }
.heart input:checked + span { color: #E0245E; transform: scale(1.15); }
.heart input:checked + span::before { content: "♥"; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -52%); }
.heart input:checked + span { color: transparent; }
.heart input:checked + span::before { color: #E0245E; }
.heart input:focus-visible + span { outline: 3px solid var(--blue); outline-offset: 4px; border-radius: 50%; }
.idea-card.picked { border: 2px solid #E0245E; padding: 17px; background: #FFF5F8; }
.idea-card:has(input:checked) { border-color: #E0245E; background: #FFF5F8; }
.shortlist-bar { position: fixed; left: 50%; bottom: 16px; transform: translateX(-50%); z-index: 40; display: flex; gap: 18px; align-items: center; justify-content: space-between;
  width: min(560px, calc(100% - 32px)); padding: 14px 20px; border-radius: 999px; background: var(--ink); color: #fff; text-decoration: none; font-weight: 600; box-shadow: 0 16px 40px rgba(16, 20, 24, .35); }
.shortlist-bar:hover { color: #fff; background: #000; }
@media (max-width: 560px) { .studio-stats strong { font-size: 20px; } .board-filters .check { margin-left: 0; } }
.studio-hero .ai-badge { justify-self: start; }
.studio-hero + .section-tight { padding-top: clamp(36px, 5vw, 56px); }
.refine-select { min-height: 42px; padding: 0 12px; border: 1px solid var(--line-2); border-radius: 999px; background: #fff; font: inherit; font-size: 15px; }

/* ---------- Domain Academy: the vault ---------- */
.assets-hero.vault { position: relative; overflow: hidden; padding: clamp(48px, 7vw, 88px) 0;
  background: radial-gradient(900px 420px at 90% 0%, rgba(232, 163, 23, .28), transparent 60%), linear-gradient(150deg, #0B1230 0%, #101418 70%); }
.gold-text { background: linear-gradient(90deg, #F6C55B, #E8A317 50%, #FFE29A); -webkit-background-clip: text; background-clip: text; color: transparent; }
.vault-sales { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; margin-top: 28px; max-width: 980px; }
.vault-sale { display: grid; gap: 2px; padding: 14px 16px; border-radius: 14px; border: 1px solid rgba(246, 197, 91, .35); background: rgba(255, 255, 255, .05); }
.vault-sale strong { font-family: var(--display); font-size: 26px; color: #F6C55B; }
.vault-sale span { color: #fff; font-size: 15px; }
.vault-sale small { color: #AEB8C4; }
.vault-source { color: #AEB8C4; font-size: 13px; margin: 14px 0 0; max-width: 760px; }
.vault-source a { color: #F6C55B; }
.assets-page { display: grid; gap: clamp(40px, 6vw, 64px); }
.assets-page h2 { margin-top: 4px; }
.da-journey { list-style: none; padding: 0; margin: 20px 0 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 14px; counter-reset: j; }
.journey-step { position: relative; display: grid; gap: 6px; align-content: start; padding: 20px 18px; border-radius: 18px; border: 1px solid var(--line); background: #fff; }
.journey-step p { margin: 0; font-size: 15px; color: var(--ink-2); }
.journey-step h3 { margin: 0; }
.journey-step .link-arrow { margin-top: 6px; font-size: 15px; }
.journey-n { width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; font-weight: 800; color: #3A2600; background: linear-gradient(135deg, #FFE29A, #E8A317); }
.journey-k { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #9A6A00; }
.checker { display: grid; gap: 16px; border: 2px solid #F3D48A; background: linear-gradient(180deg, #FFFBF0, #fff); }
.checker h2 { margin: 0; }
.checker .inline-form input { font-family: var(--mono); font-size: 17px; }
.checker-out { display: grid; gap: 12px; }
.chk-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; }
.chk-name { font-size: 22px; font-weight: 700; overflow-wrap: anywhere; }
.chk-band { font-weight: 700; padding: 6px 14px; border-radius: 999px; }
.chk-top { background: #FFE7A8; color: #5A3A00; } .chk-good { background: var(--green-soft); color: var(--green-d); }
.chk-ok { background: var(--blue-soft); color: var(--blue-d); } .chk-low { background: #FDECEA; color: var(--red); }
.chk-rows { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.chk-rows li { display: grid; grid-template-columns: 130px 1fr; gap: 4px 12px; align-items: center; }
.chk-rows small { grid-column: 2; color: var(--muted); }
.chk-bar { height: 10px; border-radius: 999px; background: var(--soft); overflow: hidden; }
.chk-bar i { display: block; height: 100%; border-radius: 999px; background: linear-gradient(90deg, #E8A317, #1747C9); }
.chk-tips { margin: 0; padding-left: 20px; }
.compare-table th.hl, .compare-table td.hl { background: #FFF8E6; font-weight: 600; }
.compare-table thead th.hl { color: #6A4300; }
.compare-table th[scope="row"] { white-space: nowrap; }
.rules-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px; margin-top: 16px; }
.rules-grid div { display: grid; gap: 4px; padding: 16px 18px; border-left: 4px solid #E8A317; background: var(--soft); border-radius: 0 12px 12px 0; }
.rules-grid span { font-size: 15px; color: var(--ink-2); }
.chip-links.light a { color: var(--ink); border-color: var(--line-2); }
.chip-links.light a[aria-current="page"], .chip-links.light a:hover { background: var(--ink); color: #fff; }
.chip-links.light { margin: 0 0 18px; }
.h-lg { font-size: clamp(24px, 3.4vw, 34px); margin: 0; }
.post-lead h3 a { color: var(--ink); text-decoration: none; }
.disclaimer-box { padding: 16px 18px; border-radius: 12px; background: var(--orange-soft); border: 1px solid #F1C9A5; font-size: 14px; color: var(--orange-d); }
@media (max-width: 560px) { .chk-rows li { grid-template-columns: 1fr; } .chk-rows small { grid-column: 1; } .compare-table th[scope="row"] { white-space: normal; } }
.assets-page > * { min-width: 0; }
.global-band { background: var(--blue-soft); border-block: 1px solid #D3DEFA; }
.global-row { display: flex; flex-wrap: wrap; gap: 10px 26px; align-items: center; padding-top: 14px; padding-bottom: 14px; font-size: 15px; color: var(--ink-2); }
.global-title { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; color: var(--blue-d); }
.pay-switch .btn { white-space: normal; height: auto; min-height: 44px; text-align: left; max-width: 100%; }

/* Browse list on phones: each name becomes a card, so View and Add to cart are always visible */
.names-table .domain-name { overflow-wrap: normal; word-break: keep-all; }
.price-main { white-space: nowrap; }
@media (max-width: 640px) {
  .names-box { overflow: visible; border: 0; border-radius: 0; }
  .names-table { min-width: 0; display: block; }
  .names-table thead { display: none; }
  .names-table tbody { display: grid; gap: 12px; }
  .names-table tr { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px 12px; align-items: center; padding: 14px 16px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
  .names-table td { display: block; padding: 0; border: 0; }
  .names-table td:nth-child(1) { grid-column: 1 / -1; font-size: 18px; overflow-wrap: anywhere; }
  .names-table td:nth-child(2) { grid-column: 1; font-size: 14px; }
  .names-table td:nth-child(3) { grid-column: 2; grid-row: 2 / span 2; text-align: right; }
  .names-table td:nth-child(4) { grid-column: 1; }
  .names-table td:nth-child(4) .opts:empty { display: none; }
  .names-table td.right { grid-column: 1 / -1; text-align: left; margin-top: 4px; }
  .names-table .row-actions { justify-content: flex-start; }
  .names-table .row-actions .btn { flex: 1 1 auto; }
}
@media (max-width: 520px) {
  .deal-track { grid-template-columns: 1fr; gap: 0; font-size: 14px; }
  .deal-track li { flex-direction: row; text-align: left; gap: 12px; padding: 6px 0; overflow-wrap: anywhere; }
  .deal-track li::before { top: -50%; left: 15px; width: 3px; height: 100%; }
  .deal-track li .dt-dot { flex: 0 0 auto; position: relative; z-index: 1; }
}
.filters-toggle { display: none; }
@media (max-width: 640px) {
  .filters-toggle { display: flex; width: 100%; margin-bottom: 12px; }
  form.filters:not(.open) { display: none; }
  .names-table .btn-cart.btn-icon { width: auto; padding: 0 14px; }
  .names-table .btn-cart.btn-icon .cart-label { position: static; width: auto; height: auto; overflow: visible; clip: auto; margin-left: 6px; }
}
/* Domain page: price and buy button at the top when the buy box drops below the content */
.mobile-buy { display: none; }
@media (max-width: 1000px) {
  .mobile-buy { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; width: 100%; box-sizing: border-box;
    padding: 14px 16px; border-radius: 14px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.18); }
  .mobile-buy .small { color: #C4CCD4; display: block; }
  .mobile-buy .price-main { color: #fff; }
  .mobile-buy .price-alt { color: #C4CCD4; }
}
.sold-banner { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; color: #fff !important; }
.sold-banner a { color: #fff; }
.studio-stats a { color: #fff; font-weight: 600; }
.chip-n { display: inline-block; min-width: 18px; margin-left: 4px; padding: 0 5px; border-radius: 999px; background: var(--soft); font-size: 11px; font-weight: 700; color: var(--muted); }
.chip-btn[aria-pressed="true"] .chip-n { background: rgba(255,255,255,.25); color: #fff; }
.chip-btn.chip-empty { border-style: dashed; color: var(--muted); }
/* Name my idea: collection-only results */
.collection-board .idea-card.owned { cursor: default; }
.no-match { display: grid; gap: 14px; border: 2px dashed #F3D48A; background: #FFFCF3; }
.no-match h2 { margin: 0; }
.no-match p { margin: 0; }

/* ===== Copy buttons and "Check it yourself" ===== */
.name-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; min-width: 0; }
.name-row .domain-name, .name-row .mono { min-width: 0; overflow-wrap: anywhere; }
.hero-name { margin-bottom: 4px; }
.copy-name { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; min-width: 36px; padding: 0 10px; border: 1px solid var(--line-2); border-radius: 8px; background: #fff; color: var(--ink-2); font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; }
.copy-name:hover { background: var(--soft); border-color: var(--ink-2); }
.copy-name.copy-lg { min-height: 44px; padding: 0 16px; font-size: 15px; }
.copy-name.is-copied { background: var(--green-soft); border-color: var(--green); color: var(--green-d); }
.card-verify { margin: 8px 0 0; }
.verify-link { display: inline-flex; align-items: center; gap: 5px; min-height: 32px; font-size: 13px; font-weight: 600; text-decoration: none; }
.verify-link:hover { text-decoration: underline; }
.verify-panel { display: grid; gap: 16px; margin: 20px 0; }
.verify-head { display: flex; flex-wrap: wrap; gap: 12px 20px; align-items: flex-start; justify-content: space-between; }
.verify-head h2 { display: flex; align-items: center; gap: 8px; margin-bottom: 4px; }
.verify-head p { margin: 0; max-width: 56ch; }
.verify-copy { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; padding: 10px 12px; background: var(--soft); border-radius: 12px; min-width: 0; max-width: 100%; }
.verify-name { font-size: 16px; overflow-wrap: anywhere; }
.whois-box { display: grid; gap: 10px; }
.whois-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; }
.whois-out { padding: 14px 16px; border-radius: 12px; border: 1px solid var(--line); background: var(--soft); display: grid; gap: 6px; }
.whois-out p { margin: 0; }
.whois-out.is-ok { background: var(--green-soft); border-color: #9CD3BD; }
.whois-out.is-warn { background: var(--orange-soft); border-color: #F1C79C; }
.whois-out.is-info, .whois-out.is-wait { background: var(--blue-soft); border-color: #B9C9F3; }
.whois-fact { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 2px 14px; border-top: 1px solid rgba(0,0,0,.08); padding-top: 6px; }
.verify-more summary { cursor: pointer; font-weight: 600; min-height: 44px; display: flex; align-items: center; }
.verify-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.verify-list li { display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: center; justify-content: space-between; padding: 12px; border: 1px solid var(--line); border-radius: 12px; }
.verify-list li > div { display: flex; flex-direction: column; gap: 2px; flex: 1 1 260px; min-width: 0; }
.verify-note { padding: 12px 14px; border-radius: 12px; background: var(--blue-soft); }
.verify-note p { margin: 0 0 6px; }
.verify-note p:last-child { margin: 0; }
.owned-tools { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; margin-top: 8px; }

/* ===== Country finder ===== */
.country-search { max-width: 460px; }
.region-chips { margin: 12px 0; }
.country-list { list-style: none; margin: 14px 0 0; padding: 0; display: grid; grid-template-columns: 1fr; gap: 12px; }
@media (min-width: 640px) { .country-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 980px) { .country-list { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.country-card { display: flex; flex-direction: column; gap: 10px; padding: 14px; border: 1px solid var(--line); border-radius: 14px; background: #fff; min-width: 0; }
.country-card[hidden] { display: none; }
.country-top { display: flex; align-items: center; gap: 10px; }
.country-code { flex: 0 0 auto; min-width: 38px; padding: 4px 8px; text-align: center; font-family: var(--mono); font-weight: 600; font-size: 13px; background: var(--ink); color: #fff; border-radius: 8px; }
.country-name { margin: 0; font-size: 17px; overflow-wrap: anywhere; }
.country-exts { display: flex; flex-wrap: wrap; gap: 6px; }
.ext-pill { display: inline-flex; align-items: center; gap: 6px; min-height: 32px; padding: 0 12px; border: 1px solid var(--line-2); border-radius: 999px; background: #fff; color: var(--ink); font-family: var(--mono); font-size: 14px; font-weight: 600; text-decoration: none; }
.ext-pill span { font-family: var(--sans); font-weight: 500; font-size: 12px; color: inherit; }
.ext-pill.on { background: var(--blue); border-color: var(--blue); color: #fff; }
.ext-pill.on:hover { background: var(--blue-d); color: #fff; }
.rule-pill { align-self: flex-start; padding: 4px 10px; border-radius: 999px; font-size: 12px; font-weight: 600; }
.rule-open { background: var(--green-soft); color: var(--green-d); }
.rule-local { background: var(--orange-soft); color: var(--orange-d); }
.rule-check { background: var(--soft); color: var(--ink-2); }
.country-ask { font-size: 14px; font-weight: 600; margin-top: auto; }
.country-global-title { margin-top: 28px; }

/* ===== Home "Start your project" ===== */
.start-card { display: grid; gap: 18px; border: 2px solid var(--blue-soft); background: linear-gradient(180deg, #fff, var(--blue-soft)); }
.start-head { display: flex; flex-direction: column; gap: 8px; }
.start-head h2 { margin: 0; }
.start-head p { margin: 0; max-width: 70ch; }
.start-form { display: grid; gap: 16px; }
.start-form legend { font-size: 14px; font-weight: 600; padding: 0; margin-bottom: 8px; }
.chip-field { border: 0; margin: 0; padding: 0; min-width: 0; }
.start-go { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; }
.start-go .fine { flex: 1 1 260px; }
.purpose-field { margin-bottom: 4px; }
.hint-inline { font-weight: 400; color: var(--muted); }
.invest-note { padding: 12px 14px; border-radius: 12px; background: var(--orange-soft); border: 1px solid #F1C79C; color: var(--orange-d); font-size: 14px; }

/* ===== Deal page: delivery, price lock, tax ===== */
.dest-box { display: grid; gap: 10px; margin: 0; padding: 14px; border: 1px solid var(--line-2); border-radius: 14px; min-width: 0; }
.dest-box legend { font-weight: 700; padding: 0 6px; }
.dest-summary { display: grid; gap: 6px; background: var(--green-soft); border-color: #9CD3BD; }
.dest-summary p { margin: 0; overflow-wrap: anywhere; }
.rec { font-style: normal; font-size: 12px; font-weight: 600; padding: 2px 8px; border-radius: 999px; background: var(--green-soft); color: var(--green-d); }
.lock-box { padding: 14px 16px; border-radius: 14px; background: var(--blue-soft); border: 1px solid #B9C9F3; }
.lock-box strong:first-child { display: flex; align-items: center; gap: 8px; margin-bottom: 4px; }
.lock-box p { margin: 0 0 6px; }
.lock-box p:last-child { margin: 0; }
.totals { margin: 0; display: grid; gap: 0; border: 1px solid var(--line); border-radius: 12px; overflow: hidden; }
.totals > div { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 2px 12px; padding: 10px 14px; border-top: 1px solid var(--line); }
.totals > div:first-child { border-top: 0; }
.totals dt { color: var(--muted); }
.totals dd { margin: 0; font-weight: 600; }
.totals-sum { background: var(--soft); font-size: 18px; }
.totals-sum dt { color: var(--ink); font-weight: 700; }
.billing-form { padding: 12px 0 0; }
.price-note { font-size: 13px; color: var(--muted); margin: 6px 0 0; }
.deal-copy { display: inline-flex; vertical-align: middle; margin-left: 8px; }

/* ===== Small-screen polish ===== */
@media (max-width: 640px) {
  select, input, textarea { font-size: 16px; }
  .fine, .small { font-size: 13px; }
  .btn-sm { min-height: 44px; }
  .copy-name { min-height: 44px; min-width: 44px; }
  .verify-copy { width: 100%; justify-content: space-between; }
  .verify-list li .btn { width: 100%; justify-content: center; }
  .whois-row .btn { width: 100%; justify-content: center; }
  .totals-sum { font-size: 16px; }
  .start-go .btn { width: 100%; justify-content: center; }
}
.verify-panel, .verify-panel > *, .verify-head > * { min-width: 0; max-width: 100%; }
.verify-panel { grid-template-columns: minmax(0, 1fr); }
.verify-name { min-width: 0; }
.verify-list { grid-template-columns: minmax(0, 1fr); }
.verify-list li { min-width: 0; }
.verify-list li > div { flex-basis: 200px; }
.verify-more { min-width: 0; }
.whois-row .btn { white-space: normal; text-align: left; height: auto; min-height: 44px; padding-top: 8px; padding-bottom: 8px; }
.pv-small, .example small { font-size: 12px; }
@media (max-width: 640px) {
  .currency select, .cur-face { font-size: 16px; }
  input[readonly] { font-size: 16px; }
}
.trend-links a { display: inline-flex; align-items: center; min-height: 36px; }
.verify-list li .btn { white-space: normal; text-align: center; height: auto; min-height: 44px; padding-top: 8px; padding-bottom: 8px; line-height: 1.3; }
.country-more-row { display: flex; justify-content: center; margin-top: 14px; }
.country-more-row button[hidden] { display: none; }
.deal-items li { display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: center; justify-content: space-between; }
.deal-items .name-row { gap: 8px; }
.widened .idea-grid { margin-top: 4px; }
.widen-help { margin-top: 18px; display: grid; gap: 8px; }
.widen-help h3 { margin: 0; }
.widen-help p { margin: 0; }
.amount-said { display: block; font-size: 13px; font-weight: 600; color: var(--ink-2); min-height: 18px; }
.amount-said:empty { min-height: 0; }

/* ===== Browse: one aligned search bar instead of three rows of boxes ===== */
.filter-bar { margin: 18px 0 24px; padding: 16px; border: 1px solid var(--line); border-radius: 14px; background: #fff; display: grid; gap: 12px; }
.fb-main { display: grid; gap: 12px; grid-template-columns: 1fr; align-items: end; }
/* Tablet: two rows of three, rather than six controls squeezed onto one line. */
@media (min-width: 620px) and (max-width: 979px) {
  .fb-main { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fb-main .fb-grow { grid-column: 1 / -1; }
}
/* Desktop: two even rows of four, so nothing is squeezed or cut off. */
@media (min-width: 980px) {
  .fb-main { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .fb-main .fb-go { width: 100%; }
}
.fb-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.fb-field label { font-size: 13px; font-weight: 600; color: var(--muted); }
.fb-field input, .fb-field select {
  width: 100%; min-width: 0; height: 48px; padding: 0 12px; font: inherit; font-size: 16px;
  border: 1px solid var(--field); border-radius: 10px; background: #fff; color: var(--ink);
}
.fb-field select { padding-right: 26px; padding-left: 10px; text-overflow: ellipsis; }
@media (min-width: 980px) and (max-width: 1159px) { .fb-field select, .fb-field input { font-size: 15px; } }
.fb-go { height: 48px; white-space: nowrap; }
.fb-custom { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding: 12px; background: var(--soft); border-radius: 10px; }
.fb-custom[hidden] { display: none; }
.fb-custom select { height: 44px; border: 1px solid var(--field); border-radius: 10px; padding: 0 8px; font: inherit; background: #fff; flex: 0 0 auto; }
.fb-custom input { height: 44px; border: 1px solid var(--field); border-radius: 10px; padding: 0 12px; font: inherit; font-size: 16px; flex: 1 1 120px; min-width: 0; }
.fb-custom .amount-said { flex: 1 1 100%; }
.fb-extras { display: flex; flex-wrap: wrap; gap: 10px 20px; align-items: center; }
.fb-clear { font-size: 14px; font-weight: 600; margin-left: auto; min-height: 36px; display: inline-flex; align-items: center; }
.filters-toggle { display: none; }
@media (max-width: 619px) {
  .filters-toggle { display: inline-flex; width: 100%; justify-content: center; margin-top: 14px; }
  .filter-bar.is-folded { display: none; }
}
@media (max-width: 979px) { .fb-go { width: 100%; } }

/* ===== Common questions: answer, then where to go ===== */
.faq-item { border: 1px solid var(--line); border-radius: 12px; background: #fff; margin-bottom: 10px; }
.faq-item summary { cursor: pointer; font-weight: 600; padding: 14px 16px; min-height: 48px; display: flex; align-items: center; }
.faq-item[open] summary { border-bottom: 1px solid var(--line); }
.faq-body { padding: 14px 16px 16px; }
.faq-body > :first-child { margin-top: 0; }
.faq-body ol { margin: 0 0 12px; padding-left: 22px; display: grid; gap: 6px; }
.faq-body p { margin: 0 0 10px; }
.faq-links { display: flex; flex-wrap: wrap; gap: 8px 16px; margin: 12px 0 0 !important; }
.faq-go { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; font-weight: 600; font-size: 15px; text-decoration: none; }
.faq-go:hover { text-decoration: underline; }

/* ===== Payment plans page ===== */
.plans-page { display: grid; gap: 28px; }
.plans-page h1 { display: flex; align-items: center; gap: 10px; margin: 0; }
.plan-example { display: grid; gap: 12px; }
.plan-example .totals { margin: 0; }
.good-note { display: flex; gap: 8px; align-items: flex-start; margin: 0; padding: 12px 14px; border-radius: 10px; background: var(--green-soft); color: var(--green-d); font-size: 15px; }
.plan-steps { list-style: none; counter-reset: step; margin: 0; padding: 0; display: grid; gap: 12px; }
.plan-steps li { counter-increment: step; display: grid; grid-template-columns: 34px 1fr; gap: 4px 12px; align-items: start; padding: 14px; border: 1px solid var(--line); border-radius: 12px; }
.plan-steps li::before { content: counter(step); grid-row: span 2; display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 50%; background: var(--ink); color: #fff; font-family: var(--display); font-weight: 700; font-size: 14px; }
.plan-steps strong { font-size: 16px; }
.plan-steps span { color: var(--muted); font-size: 15px; }
.warn-box { background: #FFFCF3; border: 2px solid #F3D48A; }
.plan-rules { margin: 0; padding-left: 20px; display: grid; gap: 10px; }
.plan-rules li { font-size: 15px; }
.plan-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.plan-list li { display: flex; flex-wrap: wrap; gap: 8px 14px; align-items: center; justify-content: space-between; padding: 12px 14px; border: 1px solid var(--line); border-radius: 12px; }
.plan-list-price { display: flex; flex-direction: column; gap: 2px; }
.plan-next { display: grid; gap: 12px; }

/* ===== Ask us to find a name ===== */
.request-page { display: grid; gap: 24px; }
.request-page h1 { display: flex; align-items: center; gap: 10px; margin: 0; }
.ask-grid { display: grid; gap: 10px; grid-template-columns: 1fr; }
@media (min-width: 680px) { .ask-grid { grid-template-columns: 1fr 1fr; } }
.ask-opt { display: flex; gap: 10px; align-items: flex-start; padding: 12px 14px; border: 1px solid var(--line); border-radius: 12px; cursor: pointer; background: #fff; }
.ask-opt:has(input:checked) { border-color: var(--blue); background: var(--blue-soft); }
.ask-opt input { width: 20px; height: 20px; margin-top: 2px; accent-color: var(--blue); flex: 0 0 auto; }
.ask-opt > span { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.request-form legend { font-size: 15px; font-weight: 600; padding: 0; margin-bottom: 10px; }
.request-alt { display: grid; gap: 12px; }
.request-done { display: grid; gap: 20px; }
.save-form { margin: 0; }
.btn-block { width: 100%; justify-content: center; }
.save-hint { text-align: center; margin: 0; }
@media (max-width: 400px) {
  .btn { max-width: 100%; white-space: normal; text-align: center; height: auto; min-height: 48px; padding-top: 10px; padding-bottom: 10px; line-height: 1.3; }
  .account-slot .btn { min-height: 40px; }
}

/* "Show password" must be a real tap target, not a word squeezed into a corner. */
.pass-wrap { position: relative; display: flex; align-items: center; }
.pass-wrap input { flex: 1 1 auto; min-width: 0; padding-right: 86px; }
.pass-see { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); min-height: 40px; min-width: 72px;
  padding: 0 12px; border: 1px solid var(--line-2); border-radius: 8px; background: #fff; color: var(--ink-2);
  font: inherit; font-size: 14px; font-weight: 600; cursor: pointer; }
.pass-see:hover { background: var(--soft); }
.nf-links { display: flex; flex-wrap: wrap; gap: 6px 10px; align-items: center; }

/* ---------- Domain Anime: the guide character ---------- */
/* The corner helper sits above the shortlist bar (z 40) but below the cart celebration (z 60), so a
   confirmation is never hidden behind it. */
.da-dock { position: fixed; right: 16px; bottom: 16px; z-index: 50; display: flex; flex-direction: column;
  align-items: flex-end; gap: 10px; transition: bottom .2s ease, opacity .2s ease, transform .2s ease; }
.da-dock[hidden] { display: none; }
body.has-shortlist-bar .da-dock { bottom: 84px; }
/* The cart's confirmation appears in this same corner and is the more useful thing to read at that
   moment, so the helper steps aside completely rather than stacking two panels on top of each other. */
body.da-celebrating .da-dock { opacity: 0; transform: translateY(10px); pointer-events: none; }

.da-launch { display: inline-flex; align-items: center; gap: 10px; padding: 6px 16px 6px 6px; border: 1px solid var(--line-2);
  border-radius: 999px; background: #fff; color: var(--ink); font: inherit; cursor: pointer; text-align: left;
  box-shadow: 0 10px 28px rgba(16, 20, 24, .16); transition: transform .16s ease, box-shadow .16s ease; }
.da-launch:hover { transform: translateY(-2px); box-shadow: 0 14px 34px rgba(16, 20, 24, .22); }
.da-launch:focus-visible { outline: 2px solid var(--blue); outline-offset: 3px; }
.da-launch-art { width: 46px; height: 46px; flex: 0 0 auto; border-radius: 50%; overflow: hidden;
  background: linear-gradient(160deg, #DCE6FF, #B9CCFF); display: flex; align-items: flex-end; justify-content: center; }
.da-launch-svg { display: block; margin-bottom: -2px; }
.da-launch-text { display: flex; flex-direction: column; line-height: 1.2; }
.da-launch-text strong { font-size: 14px; font-weight: 700; }
.da-launch-text span { font-size: 12px; color: var(--muted); }
.da-dock.is-open .da-launch { display: none; }

.da-panel { width: min(372px, calc(100vw - 32px)); max-height: min(78vh, 640px); overflow-y: auto; box-sizing: border-box;
  background: #fff; border: 1px solid var(--line-2); border-radius: 18px; box-shadow: 0 24px 60px rgba(16, 20, 24, .26); }
.da-panel[hidden] { display: none; }
.da-panel-top { display: flex; align-items: flex-start; gap: 12px; padding: 16px 16px 10px;
  background: linear-gradient(160deg, #EDF2FF, #FFFFFF); border-radius: 18px 18px 0 0; }
.da-panel-art { width: 54px; height: 54px; flex: 0 0 auto; border-radius: 50%; overflow: hidden;
  background: linear-gradient(160deg, #DCE6FF, #B9CCFF); display: flex; align-items: flex-end; justify-content: center; }
.da-panel-top > div { flex: 1 1 auto; min-width: 0; }
.da-kicker { display: block; font-size: 11px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: var(--blue); }
.da-panel-top h2 { margin: 2px 0 0; font-size: 17px; line-height: 1.25; }
.da-close { flex: 0 0 auto; width: 34px; height: 34px; display: inline-flex; align-items: center; justify-content: center;
  border: 1px solid transparent; border-radius: 9px; background: transparent; color: var(--muted); cursor: pointer; }
.da-close:hover { background: #fff; border-color: var(--line-2); color: var(--ink); }
.da-close:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; }

.da-panel-body { padding: 4px 16px 16px; }
.da-says { margin: 6px 0 12px; font-size: 15px; line-height: 1.55; }
.da-points { margin: 0 0 14px; padding-left: 18px; display: flex; flex-direction: column; gap: 8px;
  font-size: 14px; line-height: 1.5; color: var(--ink); }
.da-links { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; }
.da-links a { display: inline-flex; align-items: center; min-height: 36px; padding: 0 12px; border: 1px solid var(--line-2);
  border-radius: 999px; font-size: 13px; font-weight: 600; text-decoration: none; color: var(--ink); background: #fff; }
.da-links a:hover { background: var(--soft); color: var(--ink); }
.da-safety { border: 1px solid var(--line); border-radius: 12px; background: var(--soft); padding: 10px 12px; margin-bottom: 12px; }
.da-safety summary { display: flex; align-items: center; gap: 8px; font-weight: 600; font-size: 14px; cursor: pointer; }
.da-safety summary::-webkit-details-marker { display: none; }
.da-safety ul { margin: 10px 0 8px; padding-left: 18px; display: flex; flex-direction: column; gap: 7px; font-size: 13px; line-height: 1.5; }
.da-fine { margin: 0; font-size: 12px; line-height: 1.5; color: var(--muted); }
.da-honest { padding-top: 10px; border-top: 1px solid var(--line); }

/* A slow, small breathing motion: enough to feel alive, never enough to pull the eye off the page. */
@keyframes da-breathe { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-2.5px); } }
.da-launch-svg { animation: da-breathe 4.5s ease-in-out infinite; }
.da-dock.is-cheering .da-launch-svg { animation: da-breathe .8s ease-in-out 3; }
/* Once dismissed the button stays available but stops asking for attention. */
.da-dock.is-dismissed .da-launch-text { display: none; }
.da-dock.is-dismissed .da-launch { padding: 6px; }

@media (max-width: 560px) {
  .da-dock { right: 12px; bottom: 12px; left: 12px; align-items: stretch; }
  .da-launch { align-self: flex-end; }
  .da-panel { width: 100%; max-height: 74vh; }
}
@media (prefers-reduced-motion: reduce) {
  .da-launch, .da-launch-svg, .da-panel-svg, .da-dock { transition: none; animation: none; }
}

.da-faces { position: absolute; width: 0; height: 0; overflow: hidden; }

/* ---------- Domain Anime: the guide page ---------- */
.da-hero { background: linear-gradient(165deg, #EDF2FF 0%, #F8FAFF 60%, #FFFFFF 100%); padding: clamp(32px, 5vw, 60px) 0 clamp(28px, 4vw, 48px); }
.da-hero-row { display: flex; align-items: center; gap: clamp(20px, 4vw, 56px); }
.da-hero-copy { flex: 1 1 auto; min-width: 0; }
.da-hero-copy h1 { margin: 12px 0 10px; }
.da-hero-art { flex: 0 0 auto; display: flex; align-items: flex-end; justify-content: center;
  width: 230px; height: 230px; border-radius: 50%; overflow: hidden; background: linear-gradient(160deg, #DCE6FF, #AFC6FF); }
.da-hero-links { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }

.da-jump { border-bottom: 1px solid var(--line); background: #fff; position: sticky; top: 0; z-index: 30; }
.da-jump .wrap { display: flex; gap: 6px; overflow-x: auto; padding-top: 10px; padding-bottom: 10px; scrollbar-width: thin; }
.da-jump a { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; padding: 8px 14px; border-radius: 999px;
  font-size: 14px; font-weight: 600; color: var(--ink); text-decoration: none; }
.da-jump a:hover { background: var(--soft); color: var(--ink); }
.da-jump a span { display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px;
  border-radius: 50%; background: var(--blue); color: #fff; font-size: 12px; }

.da-stages { display: flex; flex-direction: column; gap: clamp(28px, 4vw, 48px); padding: clamp(32px, 5vw, 56px) 20px; }
.da-stage { display: flex; gap: clamp(18px, 3vw, 36px); align-items: flex-start; scroll-margin-top: 72px; }
.da-stage-aside { flex: 0 0 auto; display: flex; flex-direction: column; align-items: center; gap: 8px; }
.da-stage-art { width: 108px; height: 108px; border-radius: 50%; overflow: hidden; display: flex; align-items: flex-end;
  justify-content: center; background: linear-gradient(160deg, #E6EDFF, #C3D4FF); }
.da-stage-n { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--blue); }
.da-stage-main { flex: 1 1 auto; min-width: 0; }
.da-stage-main h2 { margin: 0 0 8px; }
.da-stage-says { margin: 0 0 14px; font-size: 17px; line-height: 1.6; color: var(--ink); }
.da-stage-steps { margin: 0 0 14px; padding-left: 22px; display: flex; flex-direction: column; gap: 10px; line-height: 1.6; }
.da-warn { display: flex; gap: 10px; align-items: flex-start; margin: 0 0 14px; padding: 12px 14px; border-radius: 12px;
  background: #FFF6E6; border: 1px solid #FFE0A8; font-size: 14px; line-height: 1.55; }
.da-warn .icon { flex: 0 0 auto; color: #9A6300; margin-top: 1px; }

.da-safety-head { display: flex; gap: 20px; align-items: center; margin-bottom: 20px; }
.da-safety-art { flex: 0 0 auto; width: 96px; height: 96px; border-radius: 50%; overflow: hidden; display: flex;
  align-items: flex-end; justify-content: center; background: linear-gradient(160deg, #E6EDFF, #C3D4FF); }
.da-rules { list-style: none; margin: 0 0 14px; padding: 0; display: grid; gap: 10px; }
.da-rules li { display: flex; gap: 10px; align-items: flex-start; padding: 14px 16px; border-radius: 12px;
  background: #fff; border: 1px solid var(--line-2); line-height: 1.55; }
.da-rules .icon { flex: 0 0 auto; color: #18A058; margin-top: 2px; }

.da-terms { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 16px; margin-top: 20px; }
.da-term { padding: 18px; border: 1px solid var(--line-2); border-radius: 14px; background: #fff; }
.da-term h3 { margin: 0 0 8px; font-size: 16px; }
.da-term p { margin: 0 0 12px; font-size: 14px; line-height: 1.6; color: var(--muted); }
.da-term a { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 600; text-decoration: none; }

.da-outro { display: flex; gap: 20px; align-items: center; }
.da-outro-art { flex: 0 0 auto; width: 112px; height: 112px; border-radius: 50%; overflow: hidden; display: flex;
  align-items: flex-end; justify-content: center; background: linear-gradient(160deg, #E6EDFF, #C3D4FF); }

@media (max-width: 760px) {
  .da-hero-row { flex-direction: column-reverse; align-items: flex-start; }
  .da-hero-art { width: 150px; height: 150px; align-self: center; }
  .da-stage { flex-direction: column; }
  .da-stage-aside { flex-direction: row; align-items: center; gap: 12px; }
  .da-stage-art { width: 72px; height: 72px; }
  .da-safety-head, .da-outro { flex-direction: column; align-items: flex-start; }
}
.da-promo { display: flex; align-items: center; gap: 16px; padding: 16px 18px; margin-bottom: 22px;
  border: 1px solid var(--line-2); border-radius: 16px; background: linear-gradient(160deg, #EDF2FF, #FFFFFF); }
.da-promo-art { flex: 0 0 auto; width: 84px; height: 84px; border-radius: 50%; overflow: hidden; display: flex;
  align-items: flex-end; justify-content: center; background: linear-gradient(160deg, #DCE6FF, #B9CCFF); }
.da-promo > div { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.da-promo strong { font-size: 16px; }
.da-promo span { font-size: 14px; line-height: 1.55; color: var(--muted); }
.da-promo .btn { flex: 0 0 auto; }
@media (max-width: 620px) { .da-promo { flex-direction: column; align-items: flex-start; } }

/* ---------- Domain Anime: asking it something ---------- */
.da-ask { margin: 0 0 14px; }
.da-ask-row { display: flex; gap: 8px; }
.da-ask input { flex: 1 1 auto; min-width: 0; min-height: 42px; padding: 0 12px; border: 1px solid var(--line-2);
  border-radius: 10px; font: inherit; font-size: 14px; background: #fff; color: var(--ink); }
.da-ask input:focus-visible { outline: 2px solid var(--blue); outline-offset: 1px; }
.da-ask-row .btn { flex: 0 0 auto; min-height: 42px; padding: 0 14px; }
.da-suggest { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 9px; }
.da-suggest button { padding: 6px 11px; border: 1px dashed var(--line-2); border-radius: 999px; background: #fff;
  font: inherit; font-size: 12.5px; color: var(--muted); cursor: pointer; text-align: left; }
.da-suggest button:hover { border-style: solid; border-color: var(--blue); color: var(--blue); }
.da-answer { margin: 0 0 14px; }
.da-answer[hidden] { display: none; }
.da-a-card { padding: 12px 14px; border: 1px solid var(--line-2); border-radius: 12px; background: #fff; margin-bottom: 8px; }
.da-a-card > strong { display: block; font-size: 14px; margin-bottom: 3px; }
.da-a-card .da-a-group { display: inline-block; font-size: 11px; font-weight: 700; letter-spacing: .07em;
  text-transform: uppercase; color: var(--blue); margin-bottom: 5px; }
.da-a-card ol { margin: 8px 0 0; padding-left: 18px; display: flex; flex-direction: column; gap: 7px;
  font-size: 13px; line-height: 1.55; }
.da-a-card p { margin: 0; font-size: 13px; line-height: 1.55; color: var(--muted); }
.da-a-note { font-size: 13px; line-height: 1.55; color: var(--muted); margin: 0 0 8px; }
.da-thinking { display: flex; align-items: center; gap: 9px; font-size: 14px; color: var(--muted); padding: 6px 0; }
.da-thinking i { width: 7px; height: 7px; border-radius: 50%; background: var(--blue); display: inline-block;
  animation: da-pulse 1.1s ease-in-out infinite; }
.da-thinking i:nth-child(2) { animation-delay: .15s; } .da-thinking i:nth-child(3) { animation-delay: .3s; }
@keyframes da-pulse { 0%, 100% { opacity: .25; transform: translateY(0); } 50% { opacity: 1; transform: translateY(-3px); } }
@media (prefers-reduced-motion: reduce) { .da-thinking i { animation: none; opacity: .6; } }
/* Figures taken from this exact page, set apart from the general advice below them. */
.da-facts { list-style: none; margin: 6px 0 12px; padding: 10px 12px; border-radius: 10px;
  background: #EDF2FF; border: 1px solid #D4E0FF; display: flex; flex-direction: column; gap: 7px;
  font-size: 13.5px; line-height: 1.5; }
.da-facts li { display: flex; gap: 8px; }
.da-facts li::before { content: "·"; color: var(--blue); font-weight: 700; }
.da-a-fine { margin: 9px 0 0; font-size: 11.5px; line-height: 1.5; color: var(--muted); }
.da-a-gen { padding: 11px 13px; border: 1px dashed var(--line-2); border-radius: 12px; background: var(--soft); margin-bottom: 8px; }
.da-a-genlabel { display: block; font-size: 10.5px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase;
  color: var(--muted); margin-bottom: 5px; }
.da-a-gen p { margin: 0; font-size: 13.5px; line-height: 1.55; }

/* ---------- Sold names ---------- */
.sold-band{background:var(--soft,#f4f6fb)}
.sold-grid{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.sold-card a{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid var(--line,#dfe3ee);border-radius:12px;background:#fff;text-decoration:none;color:inherit;height:100%}
.sold-card a:hover,.sold-card a:focus-visible{border-color:var(--accent,#1747c9)}
.sold-card .domain-name{font-weight:700;overflow-wrap:anywhere}
.sold-price{font-weight:700;color:#0b6b3a}
.sold-when{font-size:.85rem;color:var(--muted,#5b6475)}
.sold-amount{display:flex;flex-direction:column;gap:2px;margin:8px 0}

/* ---------- New-name alerts, explained ---------- */
.alert-explained{display:grid;gap:20px;align-items:start}
.alert-points{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.alert-points li{padding-left:0}
@media (min-width:900px){.alert-explained{grid-template-columns:1.4fr 1fr}}

/* ---------- Back button ---------- */
.back-row{background:var(--soft);border-bottom:1px solid var(--line)}
.back-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:6px 4px;font-weight:600;font-size:14px;color:var(--ink-2);text-decoration:none}
.back-link:hover,.back-link:focus-visible{color:var(--blue)}
.back-link .back-ico{transform:rotate(180deg);transition:transform .15s}
.back-link:hover .back-ico{transform:rotate(180deg) translateX(3px)}

/* ---------- Smart search dropdown ---------- */
.search .search-box{flex:1 1 240px;min-width:0;position:relative}
.search .search-box input{width:100%;box-sizing:border-box}
.sx{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:40;background:#fff;border:1px solid var(--line-2);border-radius:14px;box-shadow:0 18px 40px rgba(16,20,24,.18);padding:6px;max-height:min(440px,70vh);overflow:auto;text-align:left}
.sx[hidden]{display:none}
.sx-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 12px;border-radius:10px;color:var(--ink);text-decoration:none}
.sx-row:hover,.sx-row.is-active{background:var(--blue-soft)}
.sx-main{display:flex;flex-direction:column;gap:2px;min-width:0}
.sx-name{font-family:'IBM Plex Mono',ui-monospace,monospace;font-weight:600;font-size:16px;overflow-wrap:anywhere}
.sx-hit{background:#FFF3C4;border-radius:3px}
.sx-ext{color:var(--blue);font-weight:600}
.sx-why{font-size:13px;color:var(--muted)}
.sx-price{display:flex;flex-direction:column;align-items:flex-end;flex:none;text-align:right}
.sx-price .price-main{font-weight:700;font-size:16px}
.sx-price .price-alt{font-size:11px;color:var(--muted);max-width:150px}
.sx-more,.sx-empty,.sx-sold{padding:10px 12px;font-size:14px;color:var(--ink-2)}
.sx-more a{font-weight:600}
.sx-sold{border-top:1px solid var(--line)}
@media (max-width:640px){.sx-price .price-alt{display:none}}

/* ---------- Browse: active filters ---------- */
.active-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
.active-filters[hidden]{display:none}
.af-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--blue);background:var(--blue-soft);color:var(--blue-d);border-radius:999px;font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.af-chip:hover,.af-chip:focus-visible{background:#d7e2fb}

/* ---------- Title-card look: anime-inspired, kept professional ---------- */
/* Quiet speed lines behind the hero, drawn in CSS so nothing extra is downloaded. */
.hero { background:
  radial-gradient(circle at 92% 12%, rgba(23,71,201,.10) 0 2px, transparent 2.5px) 0 0 / 14px 14px,
  repeating-linear-gradient(102deg, transparent 0 34px, rgba(23,71,201,.035) 34px 36px),
  var(--soft); }
@media (prefers-reduced-motion: no-preference) { .domain-card, .sold-card a, .trend-card { transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease; } }
/* Name cards: a crisp "manga panel" offset on hover instead of a soft blur. */
.domain-card:hover, .sold-card a:hover { transform: translate(-2px, -2px); box-shadow: 4px 4px 0 var(--blue); border-color: var(--blue); }
.domain-card.is-premium:hover { box-shadow: 4px 4px 0 #E5B23A; border-color: #E5B23A; }
.price-main { font-variant-numeric: tabular-nums; }
.section-head h2, .page-pad > h1 { text-wrap: balance; }

/* ---------- Founder Intelligence: what to expect ---------- */
.fi-honest{margin-top:28px;padding:20px 22px;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:12px;background:#fff}
.fi-cols{display:grid;gap:18px}
.fi-cols ul{margin:8px 0 0;padding-left:20px;display:grid;gap:6px}
@media (min-width:760px){.fi-cols{grid-template-columns:1fr 1fr}}

.da-hello{margin:0 0 10px;padding:8px 12px;border-radius:10px;background:var(--blue-soft);color:var(--blue-d);font-size:14px;font-weight:600}
.da-hello[hidden]{display:none}

.sx-rows{display:block}
.sx-notes:empty{display:none}

/* ---------- In-page status panel (replaces the two top bars) ---------- */
.live-strip{background:var(--soft);padding:0 0 clamp(20px,3vw,32px)}
.ls-card{display:grid;grid-template-columns:auto 1fr;gap:10px 16px;align-items:center;padding:14px 18px;background:#fff;border:2px solid var(--ink);border-radius:14px;box-shadow:5px 5px 0 var(--blue)}
.ls-avatar{width:56px;height:56px;border-radius:50%;background:var(--blue-soft);border:2px solid var(--ink);overflow:hidden;display:block}
.ls-avatar svg{display:block;width:100%;height:100%}
.ls-say{position:relative;min-width:0}
.ls-tag{display:block;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--blue-d)}
.ls-say p{margin:2px 0 0;font-weight:600;overflow-wrap:anywhere}
.ls-chips{grid-column:1/-1;list-style:none;margin:4px 0 0;padding:10px 0 0;border-top:1px dashed var(--line-2);display:flex;flex-wrap:wrap;gap:8px 22px}
.ls-chips li{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--ink)}
@media (min-width:900px){
  .ls-card{grid-template-columns:auto minmax(200px,1fr) auto}
  .ls-chips{grid-column:auto;margin:0;padding:0 0 0 18px;border-top:0;border-left:1px dashed var(--line-2);flex-direction:column;gap:4px}
}
.footer-only{margin:18px 0 0;padding:12px 14px;border:1px solid rgba(255,255,255,.25);border-radius:10px;font-size:14px}

/* ---------- Help page: aligned guide grid ---------- */
.assist-jump{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px}
.assist-jump a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid var(--line-2);border-radius:999px;background:#fff;color:var(--ink);font-weight:600;text-decoration:none}
.assist-jump a span{font-size:12px;background:var(--blue-soft);color:var(--blue-d);border-radius:999px;padding:1px 8px}
.assist-block{margin:0 0 30px;scroll-margin-top:16px}
.assist-block-title{margin:0 0 12px;font-family:var(--display);font-size:22px;padding-bottom:8px;border-bottom:2px solid var(--ink)}
.assist-topic summary{min-height:84px;justify-content:center}
@media (min-width:640px){.assist-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.assist-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.assist-grid{grid-auto-flow:row dense}
.assist-topic[open]{grid-column:1/-1}
.only-here{display:flex;gap:10px;align-items:flex-start;margin:16px 0 0;padding:12px 14px;border:2px solid var(--ink);border-radius:12px;background:#fff;font-size:14px;box-shadow:3px 3px 0 var(--blue)}
.only-here svg{flex:0 0 auto;margin-top:3px;color:var(--blue)}

/* ---------- Currency popup: aligned columns ---------- */
.currency.has-pop select{pointer-events:none}
.currency .cur-btn{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;border:0;background:transparent;cursor:pointer;border-radius:10px}
.currency:has(.cur-btn:focus-visible) .cur-face{outline:2px solid var(--blue);outline-offset:2px}
.currency.is-open .cur-face{border-color:var(--blue);background:var(--blue-soft)}
.currency.is-open .cur-caret{transform:rotate(180deg)}
.cur-pop{position:absolute;z-index:60;top:calc(100% + 6px);right:0;left:auto;list-style:none;margin:0;padding:6px;width:max-content;min-width:100%;max-width:min(320px,calc(100vw - 32px));max-height:min(340px,60vh);overflow-y:auto;background:#fff;border:2px solid var(--ink);border-radius:12px;box-shadow:4px 4px 0 var(--blue);text-align:left}
.cur-pop[hidden]{display:none}
.cur-pop li{display:grid;grid-template-columns:3.4em 3.4em minmax(0,1fr);align-items:center;gap:0 6px;min-height:40px;padding:0 10px;border-radius:8px;cursor:pointer;font-size:14px;color:var(--ink)}
.cur-pop li.is-active,.cur-pop li:hover{background:var(--blue-soft)}
.cur-pop li[aria-selected="true"]{font-weight:700;box-shadow:inset 3px 0 0 var(--blue)}
.co-sym{text-align:right;color:var(--muted);font-weight:700}
.co-code{font-family:var(--mono);font-weight:600}
.co-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}
@media (max-width:640px){.cur-pop{left:0;right:auto;min-width:min(300px,calc(100vw - 32px))}.cur-pop li{min-height:44px;font-size:16px}}

/* ---------- Round 2: rounded wordmark, dark header with speed lines, Domain Anime in the header ---------- */
:root { --brandfont: 'M PLUS Rounded 1c', var(--display); --gold: #FFC45C; }
.site-header { position: relative; background: linear-gradient(100deg, #0F1D4A 0%, #15348F 58%, #1747C9 100%); border-bottom: 3px solid #FFB020; color: #fff; }
.site-header::before { content: ""; position: absolute; inset: 0; pointer-events: none;
  background: repeating-linear-gradient(104deg, transparent 0 46px, rgba(255,255,255,.055) 46px 48px),
              radial-gradient(circle at 96% 20%, rgba(255,255,255,.12) 0 2px, transparent 2.5px) 0 0 / 14px 14px; }
.site-header .header-row { position: relative; }
.brand, .brand:hover { color: #fff; }
.brand-name { font-family: var(--brandfont); font-weight: 900; font-size: 23px; letter-spacing: -0.01em; }
.brand-name span { color: var(--gold); }
.brand-tag { color: #C9D6FF; }
.main-nav a { color: #fff; }
.main-nav a:hover, .main-nav a[aria-current="page"] { color: var(--gold); }
.main-nav a[aria-current="page"] { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 8px; }
.site-header .cart-link { color: #fff; border-color: rgba(255,255,255,.6); background: rgba(255,255,255,.1); }
.site-header .cart-link:hover { background: rgba(255,255,255,.22); color: #fff; }
.site-header :focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }
.site-header .currency:has(.cur-btn:focus-visible) .cur-face, .site-header .currency:has(select:focus-visible) .cur-face { outline-color: var(--gold); }
.footer-brand { font-family: var(--brandfont); font-weight: 900; }
.hd-anime { display: none; align-items: center; flex: 0 0 auto; text-decoration: none; }
.hd-anime-art { width: 48px; height: 48px; border-radius: 50%; overflow: hidden; display: block; background: #E8EEFC; border: 3px solid #FFB020; box-shadow: 3px 3px 0 rgba(0,0,0,.3); }
.hd-anime-art svg { display: block; width: 100%; height: 100%; }
.hd-anime:hover .hd-anime-art { transform: translateY(-1px) rotate(-4deg); }
@media (min-width: 1280px) { .hd-anime { display: inline-flex; } }
@media (max-width: 640px) { .hd-anime { display: inline-flex; margin-left: auto; } .hd-anime-art { width: 44px; height: 44px; } }

/* Browse: the answer after "Show names" */
.result-say{margin:0 0 14px;padding:12px 16px;border-radius:12px;background:var(--green-soft);color:var(--green-d);font-weight:600;border:1px solid #9FD7BF;scroll-margin-top:16px}
.result-say.is-none{background:var(--orange-soft);color:var(--orange-d);border-color:#F1C7A0}
.result-say[hidden]{display:none}
.result-say:focus{outline:none}

/* ---------- Round 3: anime title-card wordmark ---------- */
:root { --brandfont: 'M PLUS Rounded 1c', var(--display); }
.brand-name { font-family: var(--brandfont); font-weight: 400; font-size: 22px; letter-spacing: .01em; line-height: 1.15; text-shadow: 2px 2px 0 #0B1640; }
.brand-name span { background: linear-gradient(180deg, #FFE08A 0%, #FFC45C 45%, #FF9F1C 100%); -webkit-background-clip: text; background-clip: text; color: transparent; text-shadow: none; filter: drop-shadow(2px 2px 0 #0B1640); }
@supports not ((-webkit-background-clip: text) or (background-clip: text)) { .brand-name span { color: #FFC45C; } }
.brand-tag { letter-spacing: .02em; }
.footer-brand { font-family: var(--brandfont); font-weight: 400; font-size: 22px; letter-spacing: .01em; }
.footer-brand::after { content: ""; display: block; width: 56px; height: 4px; margin-top: 8px; border-radius: 2px; background: linear-gradient(90deg, #FFD36B, #FF9F1C); }
@media (max-width: 380px) { .brand-name { font-size: 19px; } }
@media (max-width: 360px) { .hd-anime { display: none; } }
.footer-brand { display: inline-flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.footer-brand::after { flex: 0 0 100%; max-width: 56px; }
.footer-mark svg { width: 34px; height: 34px; display: block; }
.footer-brand .fb-gold { color: #FFC45C; }

/* Live checks under email and name boxes */
.check-note{display:block;margin-top:6px;font-size:14px;line-height:1.45}
.check-note:empty{display:none}
.check-note.is-bad{color:var(--red);font-weight:600}
.check-note.is-ok{color:var(--green)}
.check-fix{margin-left:4px;min-height:36px;padding:4px 12px;border:1px solid var(--red);border-radius:999px;background:#fff;color:var(--red);font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.check-fix:hover{background:#FDECEA}
input[aria-invalid="true"]{border-color:var(--red)}
.check-note.is-hint{color:var(--orange-d);font-weight:600}
.check-note.is-hint .check-fix{border-color:var(--orange-d);color:var(--orange-d)}
.footer-brand .fb-gold{background:linear-gradient(180deg,#FFE08A 0%,#FFC45C 45%,#FF9F1C 100%);-webkit-background-clip:text;background-clip:text;color:transparent}

/* Browse: closest names when nothing matches every filter */
.nearest{margin:18px 0 22px;padding:18px;border:2px solid var(--ink);border-radius:14px;background:#fff;box-shadow:4px 4px 0 var(--blue)}
.nearest[hidden]{display:none}
.nearest h2{margin:0 0 6px}
.nearest-lead{margin:0 0 8px;color:var(--muted)}
.nearest-relax{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.nearest-chip{min-height:44px;padding:0 14px;border:1px solid var(--blue);border-radius:999px;background:var(--blue-soft);color:var(--blue-d);font:inherit;font-weight:600;cursor:pointer;text-align:left}
.nearest-chip:hover{background:#D6E2FC}
.nearest-list{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:10px}
.nearest-item{display:grid;grid-template-columns:1fr auto;gap:2px 12px;align-items:baseline;padding:12px 14px;border:1px solid var(--line);border-radius:12px}
.nearest-name{font-size:18px;font-weight:600}
.nearest-price{font-weight:700;font-variant-numeric:tabular-nums}
.nearest-why{grid-column:1/-1;font-size:14px;color:var(--muted)}
.nearest-fi{margin:0;font-size:15px}
@media(min-width:760px){.nearest-list{grid-template-columns:1fr 1fr}}
.nearest-item{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 14px}
.nearest-name{white-space:nowrap;overflow-wrap:normal;word-break:keep-all}
.nearest-why{flex:1 0 100%}
.nearest-chip{height:auto;padding:10px 14px;line-height:1.35}

/* Thin full-width colour line above the header: manga ink strip with a moving colour slash */
.top-line{height:6px;width:100%;position:relative;overflow:hidden;background:linear-gradient(90deg,#FF3B6B 0%,#FF9F1C 18%,#FFD23F 36%,#2ED47A 54%,#1FB6FF 74%,#7B4DFF 100%);border-bottom:1px solid #0B1640}
.top-line::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(115deg,transparent 0 14px,rgba(255,255,255,.55) 14px 17px,transparent 17px 40px);mix-blend-mode:soft-light}
@media (prefers-reduced-motion:no-preference){.top-line::after{animation:tl-slide 6s linear infinite}}
@keyframes tl-slide{from{transform:translateX(0)}to{transform:translateX(40px)}}

/* Keep "Last Founder" tight */
.brand-name{letter-spacing:0;word-spacing:.06em;font-size:22px;text-shadow:1px 1px 0 #0B1640}
.brand-name span{filter:drop-shadow(1px 1px 0 #0B1640)}
.footer-brand{letter-spacing:0;word-spacing:.06em}
@media (max-width:380px){.brand-name{font-size:18px}}

/* ---------- Home: anime title-card hero ---------- */
.hero{position:relative;overflow:hidden;color:#fff;background:
  radial-gradient(circle at 18% 22%,rgba(255,255,255,.07) 0 2px,transparent 2.6px) 0 0/16px 16px,
  repeating-conic-gradient(from 8deg at 78% 46%,rgba(255,255,255,.07) 0 4deg,transparent 4deg 11deg),
  radial-gradient(ellipse at 78% 46%,#2C5BE8 0%,#15348F 42%,#0B1640 100%)}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:34px;background:var(--soft);clip-path:polygon(0 100%,0 55%,22% 20%,24% 55%,58% 8%,60% 45%,100% 0,100% 100%)}
.hero-row{position:relative;z-index:1;padding-bottom:clamp(64px,8vw,96px)}
.hero .eyebrow{color:#FFD36B}
.hero .eyebrow::before{background:#FFD36B}
.hero .eyebrow .jp{color:#fff;border-color:rgba(255,255,255,.45)}
.hero-copy h1{color:#fff;text-shadow:3px 3px 0 #FF3B6B,6px 6px 0 #0B1640;text-wrap:balance}
.hero .lead{color:#E6ECFF}
.hero .search-box input{border:3px solid #0B1640;box-shadow:4px 4px 0 #FFB020}
.hero .btn-primary{border:3px solid #0B1640;box-shadow:4px 4px 0 #FF3B6B}
.hero .idea-link{color:#FFD36B}
.hero .idea-link:hover{color:#fff}
.hero .popular{color:#E6ECFF}
.hero .popular a{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.4);color:#fff}
.hero .popular a:hover{background:rgba(255,255,255,.24)}
.hero .popular a.pop-premium{background:#FFB020;border-color:#0B1640;color:#0B1640}
.hero .featured{position:relative;border:3px solid #0B1640;box-shadow:7px 7px 0 #FFB020;color:var(--ink)}
@media (min-width:900px){.hero .featured{transform:rotate(1.6deg)}}
.hero .featured::before{content:"NEW";position:absolute;top:-16px;right:-12px;width:54px;height:54px;display:grid;place-items:center;font:900 13px/1 var(--display);color:#0B1640;background:#FFD23F;clip-path:polygon(50% 0,62% 18%,82% 8%,82% 30%,100% 38%,86% 54%,96% 74%,74% 76%,68% 96%,50% 82%,32% 96%,26% 76%,4% 74%,14% 54%,0 38%,18% 30%,18% 8%,38% 18%);transform:rotate(12deg)}
/* manga-panel sections below */
.why{background:#fff;border-top:4px solid #0B1640}
.why-grid>div{padding:16px 18px;border:2px solid #0B1640;border-radius:4px;background:#fff;box-shadow:4px 4px 0 var(--blue)}
.why-grid>div:nth-child(2){box-shadow:4px 4px 0 #FF3B6B}
.why-grid>div:nth-child(3){box-shadow:4px 4px 0 #FFB020}
.section-head h2{position:relative;display:inline-block}
.section-head h2::after{content:"";display:block;height:5px;margin-top:6px;background:linear-gradient(90deg,#FF3B6B,#FFB020 50%,#1FB6FF);transform:skewX(-20deg);width:72px}
.domain-card{border:2px solid #0B1640;border-radius:6px}
.site-header .brand-mark svg{filter:drop-shadow(0 0 1px rgba(255,255,255,.9))}

/* ---------- Name Generator ---------- */
.ng-hero .idea-form{gap:16px}
.ng-letter input{max-width:120px;text-transform:uppercase}
.ng-link{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;border:0;background:none;color:var(--blue-d);font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.ng-link:hover{color:var(--blue)}
.ng-out[hidden],.ng-saved[hidden],.ng-map[hidden],.ng-note[hidden]{display:none}
.ng-host{display:flex;gap:14px;align-items:center;margin:0 0 18px;padding:12px 16px;background:#fff;border:2px solid var(--ink);border-radius:14px;box-shadow:5px 5px 0 var(--blue)}
.ng-host-art{flex:none;width:64px;height:64px;border-radius:50%;background:var(--blue-soft);border:2px solid var(--ink);overflow:hidden;display:block}
.ng-host-art svg{display:block;width:100%;height:100%}
.ng-host-say{min-width:0}
.ng-host-say p{margin:2px 0 0;font-weight:600;overflow-wrap:anywhere}
.ng-host-say p:focus{outline:none}
.ng-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.ng-card{display:flex;flex-direction:column;gap:6px;padding:16px;background:#fff;border:2px solid var(--ink);border-radius:6px;box-shadow:4px 4px 0 var(--blue)}
.ng-card:nth-child(3n+2){box-shadow:4px 4px 0 #FFB020}
.ng-card:nth-child(3n){box-shadow:4px 4px 0 #FF3B6B}
.ng-name{margin:0;font-family:var(--brandfont);font-weight:400;font-size:28px;line-height:1.15;overflow-wrap:anywhere}
.ng-kind{align-self:flex-start;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--blue-d);background:var(--blue-soft);padding:3px 9px;border-radius:999px}
.ng-mean{margin:0;color:var(--muted);font-size:15px}
.ng-off{margin:0;font-size:14px;color:var(--orange-d);font-weight:600}
.ng-actions{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-top:auto;padding-top:8px}
.ng-actions .btn{min-height:44px;padding:0 16px}
.ng-more{display:flex;justify-content:center;margin:20px 0 10px}
.ng-saved,.ng-map,.ng-note{margin-top:26px}
.ng-saved-list{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.ng-saved-item{display:inline-flex;align-items:center;gap:6px;padding:4px 6px 4px 14px;border:1px solid var(--line-2);border-radius:999px;background:#fff}
.ng-map-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));margin-top:12px}
.ng-map-card{padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:12px}
.ng-map-card h3{margin:0 0 8px;font-size:17px}
.ng-dl{margin:0;display:grid;gap:4px}
.ng-dl div{display:flex;justify-content:space-between;gap:12px;font-size:15px}
.ng-dl dt{color:var(--muted)}
.ng-dl dd{margin:0;font-weight:600}
.ng-check{margin:8px 0 14px;padding-left:20px;display:grid;gap:8px}
.ng-steps{margin:8px 0 12px;padding-left:22px;display:grid;gap:8px}
.ng-promo .da-promo{margin:0}
.ng-form .chip-check span,.ng-form .chip-radio span{min-height:44px}
.ng-save[aria-pressed="true"]{background:var(--blue-soft);border-color:var(--blue);color:var(--blue-d)}
.ng-save[aria-pressed="true"]::before{content:"✓ " / ""}
.ng-saved-wrap{padding-bottom:0}
.ng-saved-wrap .ng-saved{margin-top:0}
.ng-saved-wrap:has(.ng-saved[hidden]){display:none}

/* ---- Name Generator v3: A-Z strip, language groups, scores ---- */
.az-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:6px}
.az-chip{position:relative;display:block}
.az-chip input{position:absolute;opacity:0;width:1px;height:1px}
.az-chip span{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--line-2);border-radius:8px;background:#fff;font-family:var(--brandfont);font-size:18px;cursor:pointer}
.az-any{grid-column:span 2}
.az-any span{font-family:inherit;font-size:15px;font-weight:600}
.az-chip input:checked + span{background:var(--ink);color:#fff;border-color:var(--ink);box-shadow:3px 3px 0 var(--pg,var(--blue))}
.az-chip input:focus-visible + span{outline:3px solid var(--blue);outline-offset:2px}
.ng-lang-group{display:grid;gap:6px;margin-top:8px}
.ng-lang-h{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.ng-all span{font-weight:700}
.ng-heard{margin-top:8px}
.ng-heard[hidden]{display:none}
.ng-heard-h{margin:0 0 6px;font-size:14px;color:var(--muted)}
.ng-heard-row{display:flex;flex-wrap:wrap;gap:6px}
.ng-heard-chip{min-height:44px;padding:0 14px;border:1px solid var(--blue);border-radius:999px;background:var(--blue-soft);color:var(--blue-d);font:inherit;font-weight:600;cursor:pointer}
.ng-heard-chip[aria-pressed="false"]{background:#fff;color:var(--muted);border-color:var(--line-2);text-decoration:line-through}
.ng-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.ng-fit{flex:none;font-size:12px;font-weight:700;padding:3px 9px;border-radius:999px;border:1px solid var(--ink);background:#fff}
.ng-fit-strong{background:#D9F7E4}
.ng-fit-good{background:#FFF1C9}
.ng-fit-fair{background:#FFE0E6}
.ng-meters{display:grid;gap:2px;margin:4px 0}
.ng-meter{display:grid;grid-template-columns:92px 1fr 28px;gap:8px;align-items:center;font-size:13px}
.ng-meter meter{width:100%;height:10px}
.ng-meter-n{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums}
.ng-line{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.ng-line-h{font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-right:2px}
.ng-chip{min-height:44px;padding:0 12px;border:1px dashed var(--ink);border-radius:8px;background:#fff;font:inherit;font-size:14px;cursor:pointer}
.ng-chip:hover{background:var(--blue-soft)}
.ng-end{font-family:var(--mono);font-size:13px;padding:2px 8px;border-radius:6px;background:#F3F3F6;overflow-wrap:anywhere}

/* ---- Unique look for every page: colour + motif + episode band ---- */
body[data-page="home"]{--pg:#2B63F0}
body[data-page="names"]{--pg:#1747C9}
body[data-page="premium"]{--pg:#D98200}
body[data-page="studio"]{--pg:#C21D58}
body[data-page="assist"]{--pg:#0E9F8E}
body[data-page="guide"]{--pg:#C2410C}
body[data-page="assets"]{--pg:#15803D}
body[data-page="extensions"]{--pg:#0369A1}
body[data-page="cart"]{--pg:#B4236B}
body[data-page="request"]{--pg:#7C3AED}
body[data-page="plans"]{--pg:#0F766E}
body[data-page="account"]{--pg:#334155}
body[data-page="legal"]{--pg:#475569}
body[data-page="deal"]{--pg:#166534}
body[data-page="lost"]{--pg:#9333EA}
body[data-page="detail"]{--pg:#1D4ED8}
body{--pg:var(--blue)}
.pg-band{position:relative;overflow:hidden;background:#F1F4FF;background:color-mix(in srgb,var(--pg) 11%,#fff);border-bottom:2px solid var(--ink)}
.pg-band .wrap{position:relative;z-index:1;display:flex;align-items:center;gap:12px;min-height:36px}
.pg-band::before{content:"";position:absolute;inset:0 0 0 auto;width:min(55%,640px);opacity:.55;background-color:transparent}
.pg-ep{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.08em;background:var(--ink);color:#fff;padding:2px 8px;border-radius:4px}
.pg-lab{font-weight:700;font-size:14px;color:var(--ink)}
.pg-jp{margin-left:auto;font-family:"Zen Kaku Gothic New",sans-serif;font-weight:900;font-size:18px;color:color-mix(in srgb,var(--pg) 65%,#000);letter-spacing:.12em}
/* one motif per page */
.pg-home::before,.pg-names::before{background-image:linear-gradient(var(--pg) 1px,transparent 1px),linear-gradient(90deg,var(--pg) 1px,transparent 1px);background-size:14px 14px}
.pg-premium::before{background-image:repeating-conic-gradient(from 0deg at 100% 50%,var(--pg) 0 6deg,transparent 6deg 16deg)}
.pg-studio::before{background-image:repeating-linear-gradient(100deg,var(--pg) 0 3px,transparent 3px 26px);clip-path:polygon(0 0,100% 0,100% 55%,92% 85%,84% 55%,70% 100%,58% 55%,44% 80%,30% 50%,16% 90%,0 55%)}
.pg-assist::before{background-image:radial-gradient(circle,var(--pg) 5px,transparent 5.5px);background-size:30px 36px}
.pg-guide::before{background-image:linear-gradient(135deg,transparent 50%,var(--pg) 50%);background-size:24px 12px}
.pg-assets::before{background:linear-gradient(var(--pg),var(--pg));clip-path:polygon(0 100%,0 80%,12% 80%,12% 60%,26% 60%,26% 45%,40% 45%,40% 30%,56% 30%,56% 15%,100% 15%,100% 100%)}
.pg-extensions::before{background-image:repeating-radial-gradient(circle at 85% 50%,transparent 0 9px,var(--pg) 9px 10px)}
.pg-cart::before{background-image:radial-gradient(circle at 0 50%,#fff 6px,transparent 6.5px);background-size:100% 18px;border-left:3px dashed var(--pg)}
.pg-request::before{background-image:repeating-radial-gradient(circle at 80% 50%,transparent 0 7px,var(--pg) 7px 9px)}
.pg-plans::before{background-image:linear-gradient(var(--pg) 1px,transparent 1px),linear-gradient(90deg,var(--pg) 1px,transparent 1px);background-size:28px 12px}
.pg-account::before{background-image:radial-gradient(circle at 70% 50%,var(--pg) 9px,transparent 10px),linear-gradient(var(--pg),var(--pg));background-size:100% 100%,24px 2px;background-repeat:no-repeat;background-position:0 0,72% 62%}
.pg-legal::before{background-image:repeating-linear-gradient(0deg,var(--pg) 0 1px,transparent 1px 9px)}
.pg-deal::before{background-image:repeating-linear-gradient(45deg,var(--pg) 0 6px,transparent 6px 16px)}
.pg-lost::before{background-image:radial-gradient(var(--pg) 1px,transparent 1.5px);background-size:7px 7px;opacity:.7}
.pg-detail::before{background:radial-gradient(ellipse at 85% 50%,var(--pg),transparent 65%)}
/* the page's own colour reaches into the page */
main h1::after{content:"";display:block;width:56px;height:5px;margin-top:10px;background:var(--pg);border-radius:3px}
.ng-host{box-shadow:5px 5px 0 var(--pg)}.ng-card:nth-child(3n+1){box-shadow:4px 4px 0 var(--pg)}
@media (max-width:640px){.pg-jp{font-size:16px}.pg-band::before{width:45%}}
.st-actions{display:flex;flex-wrap:wrap;gap:10px}
.st-actions .btn{flex:1 1 220px;justify-content:center}
.ng-more{flex-wrap:wrap;gap:10px}
.st-buy{scroll-margin-top:72px}
.st-buy .lead{max-width:720px}
.st-buy .buy-form{margin-top:16px;max-width:900px}

/* ---- "We received it" card with the Domain Anime character ---- */
.thanks{display:flex;gap:20px;align-items:center;margin:20px 0;padding:22px;background:linear-gradient(135deg,#F2FBF6,#FFF8E6);border:2px solid var(--ink);border-radius:18px;box-shadow:6px 6px 0 var(--pg,var(--green-d,#15803D))}
.thanks-art{flex:none;width:96px;height:96px;border-radius:50%;background:#fff;border:2px solid var(--ink);overflow:hidden;display:block}
.thanks-art svg{display:block;width:100%;height:100%}
.thanks-body{min-width:0}
.thanks-eyebrow{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--green-d,#15803D)}
.thanks-tick{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--green-d,#15803D);color:#fff;font-size:12px}
.thanks-jp{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:900;letter-spacing:.12em;text-transform:none;color:var(--ink);opacity:.55}
.thanks-h{margin:6px 0 6px;font-size:clamp(22px,4vw,30px);line-height:1.15}
.thanks-body p{margin:0 0 10px;color:var(--ink);font-size:16px}
.thanks-next{list-style:none;counter-reset:tn;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.thanks-next li{counter-increment:tn;display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 8px;background:#fff;border:1px solid var(--line-2);border-radius:999px;font-size:14px;font-weight:600}
.thanks-next li::before{content:counter(tn);display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--ink);color:#fff;font-size:12px}
@media (max-width:560px){.thanks{flex-direction:column;text-align:center;align-items:center}.thanks-eyebrow{justify-content:center}.thanks-next{justify-content:center}}
@media (prefers-reduced-motion:no-preference){.thanks-art{animation:thanksPop .6s cubic-bezier(.2,1.4,.4,1) both}@keyframes thanksPop{from{transform:scale(.6) rotate(-8deg);opacity:0}to{transform:none;opacity:1}}}

/* ---- Option boxes: closed shows the choice, one click opens every option ---- */
.opt-stack{display:grid;gap:10px;margin:4px 0 8px}
.opt-box{border:2px solid var(--ink);border-radius:14px;background:#fff;box-shadow:3px 3px 0 var(--pg,var(--blue))}
.opt-box[open]{box-shadow:5px 5px 0 var(--pg,var(--blue))}
.opt-box>summary{list-style:none;display:flex;align-items:center;gap:10px;min-height:52px;padding:8px 14px;cursor:pointer;font-weight:700}
.opt-box>summary::-webkit-details-marker{display:none}
.opt-box>summary:focus-visible{outline:3px solid var(--blue);outline-offset:2px;border-radius:12px}
.opt-t{flex:0 1 auto}
.opt-sum{flex:1 1 0;min-width:0;text-align:right;font-weight:600;font-size:14px;color:var(--pg,var(--blue-d));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.opt-chev{flex:none;width:10px;height:10px;border-right:3px solid var(--ink);border-bottom:3px solid var(--ink);transform:rotate(45deg) translateY(-2px);transition:transform .2s}
.opt-box[open] .opt-chev{transform:rotate(-135deg) translateY(-2px)}
.opt-body{padding:4px 14px 16px;display:grid;gap:8px;border-top:1px dashed var(--line-2)}
.opt-body .hint{margin:6px 0 0}
.chip-check input:disabled + span{opacity:.45;cursor:not-allowed;border-style:dashed}
.chip-check small{font-size:11px;font-weight:400}
@media (max-width:560px){.opt-box>summary{flex-wrap:wrap}.opt-sum{flex-basis:100%;text-align:left;order:3;white-space:normal}.opt-chev{margin-left:auto}}
@media (prefers-reduced-motion:reduce){.opt-chev{transition:none}}
.where-check{margin:12px 0 4px;border:1px dashed var(--ink);border-radius:10px;background:#fff}
.where-check>summary{cursor:pointer;padding:10px 14px;font-weight:700;min-height:44px;display:flex;align-items:center}
.where-check ol{margin:0;padding:0 16px 14px 34px;display:grid;gap:8px;font-size:15px}

/* ---------- Share kit on name pages ---------- */
.share-kit { margin-top: 40px; }
.share-kit .sk-head { margin-bottom: 18px; }
.sk-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 24px; align-items: start; }
.sk-card { position: relative; margin: 0; padding: 20px 22px 16px; border-radius: 22px; overflow: hidden; color: #fff; background: linear-gradient(135deg, #0C1740, #1747C9); border: 3px solid var(--ink, #0C1740); box-shadow: 6px 6px 0 var(--pg, #FF3B6B); isolation: isolate; }
.sk-card.sk-premium { background: linear-gradient(135deg, #0C1740, #3B1D6B); }
.sk-bg { position: absolute; inset: 0; z-index: -1; background: repeating-conic-gradient(from 0deg at 82% 62%, rgba(255,255,255,.09) 0 4deg, transparent 4deg 9deg), radial-gradient(rgba(255,255,255,.12) 1.5px, transparent 1.5px) 0 0 / 20px 20px; }
.sk-top { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.sk-brand { font-family: var(--brandfont, inherit); font-size: 18px; letter-spacing: .02em; }
.sk-kana { font-family: 'Zen Kaku Gothic New', sans-serif; font-size: 13px; opacity: .6; }
.sk-foil { margin-left: auto; padding: 5px 12px; border-radius: 999px; background: #FFB020; color: #0C1740; font-weight: 700; font-size: 12px; letter-spacing: .06em; }
.sk-foil.sk-plain { background: #fff; }
.sk-name { margin: 22px 0 10px; font-family: var(--brandfont, inherit); line-height: 1.05; text-shadow: 3px 3px 0 #0C1740; overflow-wrap: anywhere; }
.sk-xl { font-size: clamp(40px, 7vw, 68px); } .sk-lg { font-size: clamp(34px, 6vw, 54px); } .sk-md { font-size: clamp(28px, 5vw, 42px); } .sk-sm { font-size: clamp(22px, 4vw, 32px); }
.sk-tags { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0 0 20px; padding: 0; }
.sk-tags li { padding: 5px 12px; border-radius: 999px; background: rgba(255,255,255,.16); font-size: 13px; font-weight: 600; }
.sk-bottom { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; }
.sk-price { background: #fff; color: #0C1740; border-radius: 14px; padding: 10px 16px; display: grid; gap: 1px; }
.sk-price span { font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #5A6275; }
.sk-price strong { font-family: var(--brandfont, inherit); font-size: clamp(26px, 5vw, 38px); line-height: 1.1; }
.sk-price small { font-size: 11px; color: #5A6275; }
.sk-hero { display: flex; align-items: flex-end; gap: 8px; }
.sk-bubble { background: #FFB020; color: #0C1740; font-weight: 700; font-size: 12px; line-height: 1.3; padding: 8px 10px; border-radius: 12px 12px 2px 12px; margin-bottom: 14px; }
.sk-avatar { display: block; width: 84px; height: 84px; border-radius: 50%; background: #fff; border: 3px solid var(--pg, #FF3B6B); overflow: hidden; flex: none; }
.sk-avatar svg { width: 100%; height: 100%; display: block; }
.sk-url { margin-top: 12px; font-family: 'IBM Plex Mono', monospace; font-size: 12px; opacity: .85; overflow-wrap: anywhere; }
.sk-side { display: grid; gap: 12px; }
.sk-tone { border: 0; padding: 0; margin: 0; min-width: 0; }
.sk-tone legend { font-weight: 600; margin-bottom: 8px; padding: 0; }
.sk-text { width: 100%; box-sizing: border-box; padding: 12px 14px; border: 1px solid var(--line-2); border-radius: 12px; font: inherit; font-size: 15px; line-height: 1.5; resize: vertical; background: #fff; color: var(--ink); }
.sk-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.sk-apps { display: flex; flex-wrap: wrap; gap: 8px; }
.sk-app { display: inline-flex; align-items: center; min-height: 40px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--line-2); background: #fff; color: var(--ink); text-decoration: none; font-size: 14px; font-weight: 600; }
.sk-app:hover { border-color: var(--pg, var(--blue)); }
@media (max-width: 820px) { .sk-grid { grid-template-columns: 1fr; } }
@media (max-width: 420px) { .sk-bubble { display: none; } .sk-card { padding: 16px 16px 12px; } }
.share-kit [hidden] { display: none !important; }

/* ---------- Episode title cards (EP 01, EP 02 ...) ---------- */
.pg-band{border-bottom:3px solid var(--ink)}
.pg-band .wrap{min-height:58px;gap:16px}
.pg-ep{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:21px;font-weight:700;letter-spacing:.04em;line-height:1;background:var(--pg);color:#fff;padding:9px 18px 9px 14px;border:2.5px solid var(--ink);border-radius:2px;box-shadow:4px 4px 0 var(--ink);transform:skewX(-12deg);margin-left:6px;text-shadow:1px 1px 0 rgba(0,0,0,.35)}
.pg-ep span{font-size:11px;letter-spacing:.2em;background:var(--ink);color:#fff;padding:3px 6px;text-shadow:none}
.pg-lab{font-size:22px;font-weight:800;letter-spacing:-.01em;position:relative;padding-bottom:2px}
.pg-lab::after{content:"";position:absolute;left:0;right:-10px;bottom:-3px;height:4px;background:var(--pg);transform:skewX(-30deg)}
.pg-prog{display:inline-flex;gap:3px;margin-left:8px}
.pg-prog i{width:8px;height:14px;border:1.5px solid var(--ink);background:#fff;transform:skewX(-14deg)}
.pg-prog i.done{background:var(--ink)}
.pg-prog i.now{background:var(--pg);height:20px;margin-top:-6px}
.pg-jp{font-size:34px;font-weight:900;letter-spacing:.14em;color:#fff;-webkit-text-stroke:2px var(--ink);paint-order:stroke fill;text-shadow:3px 3px 0 var(--pg);margin-right:4px}
.pg-band::before{opacity:.7}
@media (max-width:820px){.pg-prog{display:none}}
@media (max-width:640px){.pg-band .wrap{min-height:48px;gap:10px}.pg-ep{font-size:17px;padding:7px 12px 7px 10px;box-shadow:3px 3px 0 var(--ink)}.pg-lab{font-size:17px}.pg-jp{font-size:24px;-webkit-text-stroke:1.5px var(--ink)}}
.pg-jp{white-space:nowrap;flex:none}
.pg-lab{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:360px){.pg-jp{display:none}}

/* ---------- Payment choice, pay guide and the cart page ---------- */
.cart-left { display: grid; gap: 20px; align-content: start; min-width: 0; }
.cart-page .cart-layout:has(#cart-form[hidden]) { grid-template-columns: minmax(0, 1fr); max-width: 860px; }
.pay-why { margin: 0 0 4px; padding: 10px 12px; border-radius: 10px; background: var(--soft); border-left: 4px solid var(--pg, var(--blue)); font-size: 14px; line-height: 1.45; }
.pay-opt { position: relative; padding: 14px; border-width: 2px; transition: border-color .15s, box-shadow .15s; }
.pay-opt .po-body { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.pay-opt .po-head { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.pay-opt .po-best { font-size: 13.5px; font-weight: 600; color: var(--ink-2); }
.po-list { list-style: none; margin: 2px 0 0; padding: 0; display: grid; gap: 4px; font-size: 13.5px; line-height: 1.4; }
.po-list li { display: grid; grid-template-columns: 18px 1fr; gap: 6px; }
.po-list li span { font-weight: 800; }
.po-list .yes span { color: var(--green-d, #0F7A3E); }
.po-list .no span { color: #B45309; }
.pay-opt .rec { display: none; background: #FFB020; color: #0C1740; font-weight: 800; letter-spacing: .02em; }
.pay-opt.is-pick .rec { display: inline-block; }
.pay-opt.is-pick { border-color: var(--pg, var(--blue)); box-shadow: 4px 4px 0 var(--pg, var(--blue)); }
.pay-opt:has(input:checked) { background: var(--blue-soft); }
.pay-opt:has(input:focus-visible) { outline: 3px solid #FFB020; outline-offset: 2px; }
.pay-guide { display: grid; gap: 12px; border: 2px solid var(--ink); box-shadow: 5px 5px 0 var(--pg, var(--blue)); }
.pg-top { display: flex; gap: 12px; align-items: center; }
.pg-top h2 { margin: 2px 0 0; }
.pg-ico { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 12px; background: var(--pg, var(--blue)); color: #fff; border: 2px solid var(--ink); flex: none; }
.pg-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.pg-list li { display: grid; gap: 2px; padding: 10px 12px; border-radius: 10px; background: var(--soft); border: 1px solid var(--line); }
.pg-list li strong { font-size: 14px; }
.pg-list li span { font-size: 14px; color: var(--ink-2); line-height: 1.45; }
.pg-tip { margin: 0; padding: 10px 12px; border-radius: 10px; background: #FFF4D6; border: 1px solid #F1C45B; font-size: 14px; }
.pg-tip button { margin-left: 8px; }
.pg-limit { margin: 0; }
.cart-how { display: grid; gap: 14px; }
.cart-how-head { display: flex; gap: 12px; align-items: center; }
.cart-how-head h2 { margin: 2px 0 0; }
.cart-how-av { display: block; width: 64px; height: 64px; border-radius: 50%; overflow: hidden; border: 2px solid var(--ink); background: #fff; flex: none; }
.cart-how-av svg { width: 100%; height: 100%; display: block; }
.cart-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 10px; }
.cart-steps li { display: grid; gap: 3px; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.cart-steps li span { font-family: var(--mono); font-weight: 700; font-size: 12px; color: #fff; background: var(--ink); width: max-content; padding: 2px 8px; border-radius: 4px; transform: skewX(-12deg); }
.cart-steps li em { font-style: normal; font-size: 13.5px; color: var(--ink-2); }
.picks-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 10px; }
.pick { display: grid; gap: 2px; padding: 12px; border: 1px solid var(--line); border-radius: 12px; text-decoration: none; color: var(--ink); background: #fff; }
.pick:hover { border-color: var(--pg, var(--blue)); }
.pick .domain-name { font-weight: 700; font-size: 15px; overflow-wrap: anywhere; }
@media (max-width: 640px) { .pay-opt { padding: 12px; } }
.pick .money { font-size: 14px; }
.az-chip.has span::after { content: ""; position: absolute; top: 5px; right: 6px; width: 7px; height: 7px; border-radius: 50%; background: var(--pg, var(--blue)); border: 1.5px solid #fff; }
.az-chip.has span { box-shadow: inset 0 -3px 0 var(--pg, var(--blue)); }
#ng-az-note a { font-weight: 700; }

/* ---------- Price design, buy tabs, and the one-choice payment cards ---------- */
.price-main { font-family: var(--brandfont); font-weight: 400; letter-spacing: .01em; font-variant-numeric: tabular-nums; color: var(--ink); }
.price-md .price-main { font-size: 26px; line-height: 1.1; background: linear-gradient(transparent 64%, color-mix(in srgb, var(--pg, var(--blue)) 28%, #fff) 64%); display: inline-block; padding: 0 4px; margin-left: -4px; }
.price-lg .price-main { font-size: 36px; line-height: 1.1; text-shadow: 2px 2px 0 color-mix(in srgb, var(--pg, var(--blue)) 40%, #fff); }
.price-xl .price-main { font-size: clamp(44px, 9vw, 60px); line-height: 1.05; text-shadow: 3px 3px 0 var(--pg, var(--blue)); }
.price-xl::after { content: ""; display: block; width: 84px; height: 6px; margin-top: 6px; border-radius: 3px; background: var(--pg, var(--blue)); transform: skewX(-24deg); }
.price-xl .price-alt, .price-lg .price-alt { font-weight: 600; }
.sx-price .price-main, .names-table .price-main { font-family: 'M PLUS Rounded 1c', var(--display); font-weight: 800; font-size: 16px; background: none; text-shadow: none; }
.money { font-weight: 700; font-variant-numeric: tabular-nums; }
.mobile-buy .price-main { text-shadow: none; background: none; }
.price-note .money, .cart-items .money { color: var(--ink); }

.tabs { background: transparent; padding: 0; gap: 8px; display: grid; grid-template-columns: repeat(auto-fit, minmax(0, 1fr)); }
.tabs button { min-height: 48px; border: 2px solid var(--ink); border-radius: 10px; background: #fff; color: var(--ink); font-weight: 700; font-size: 14.5px; position: relative; box-shadow: 0 3px 0 var(--tc, var(--ink)); transition: transform .12s, box-shadow .12s; }
.tabs button::before { content: ""; position: absolute; left: 8px; top: 8px; width: 8px; height: 8px; border-radius: 50%; background: var(--tc); }
.tabs button:hover { transform: translateY(-1px); }
.tabs button[aria-selected="true"] { background: var(--tc); color: #fff; box-shadow: 4px 4px 0 var(--ink); transform: translate(-1px, -1px) skewX(-4deg); font-weight: 800; }
.tabs button[aria-selected="true"]::before { background: #fff; }
#t-buy { --tc: #1747C9; } #t-offer { --tc: #C2185B; } #t-swap { --tc: #0F766E; } #t-plan { --tc: #B45309; }
#tab-buy { --tc: #1747C9; } #tab-offer { --tc: #C2185B; } #tab-swap { --tc: #0F766E; } #tab-plan { --tc: #B45309; }
.tab-panel { border-top: 4px solid var(--tc, var(--ink)); padding-top: 14px; margin-top: 12px; }
@media (max-width: 520px) { .tabs { grid-template-columns: 1fr 1fr; } .tabs button { font-size: 14px; } }

/* Escrow or private deal: choose exactly one */
.pay-choice legend .pc-only { margin-left: 8px; font-size: 12px; font-weight: 800; color: #fff; background: var(--ink); padding: 2px 8px; border-radius: 999px; letter-spacing: .04em; text-transform: uppercase; }
.pay-opt { position: relative; background: #fff; border: 2px solid var(--line-2); opacity: .92; padding-left: 14px; overflow: hidden; --pc: #1747C9; }
.pay-direct { --pc: #7C3AED; }
.pay-opt::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 6px; background: var(--pc); }
.pay-opt input { margin-left: 4px; }
.pay-escrow { background-image: radial-gradient(color-mix(in srgb, var(--pc) 16%, transparent) 1.5px, transparent 1.6px); background-size: 14px 14px; }
.pay-direct { background-image: repeating-linear-gradient(135deg, color-mix(in srgb, var(--pc) 9%, transparent) 0 8px, transparent 8px 18px); }
.pay-opt:has(input:checked) { opacity: 1; border-color: var(--pc); border-width: 3px; background-color: color-mix(in srgb, var(--pc) 9%, #fff); box-shadow: 5px 5px 0 var(--pc); transform: translate(-1px, -1px); }
.pay-opt:has(input:checked)::after { content: "✓ Chosen" / ""; position: absolute; right: 0; top: 0; padding: 4px 12px 4px 14px; background: var(--pc); color: #fff; font-weight: 800; font-size: 12px; letter-spacing: .05em; border-bottom-left-radius: 10px; }
.pay-opt:not(:has(input:checked)) .po-list, .pay-opt:not(:has(input:checked)) .po-best { opacity: .8; }
.pay-opt.is-pick { box-shadow: none; }
.pay-opt.is-pick:has(input:checked) { box-shadow: 5px 5px 0 var(--pc); }
.pay-direct .po-head strong { color: #5B21B6; }
.pay-escrow .po-head strong { color: #1747C9; }

/* ---------- Domain Anime: new look ---------- */
.da-launch { background: linear-gradient(135deg, #0C1740, #1747C9); color: #fff; border: 2.5px solid #0B1640; box-shadow: 4px 4px 0 #FFB020; padding: 6px 18px 6px 6px; border-radius: 999px; }
.da-launch:hover { box-shadow: 6px 6px 0 #FFB020; transform: translate(-1px, -2px); }
.da-launch-art { background: #fff; border: 2px solid #FFB020; }
.da-launch-text strong { font-family: var(--brandfont); font-weight: 400; font-size: 17px; letter-spacing: .02em; color: #fff; text-shadow: 2px 2px 0 #0B1640; }
.da-launch-text span { color: #FFD27A; font-weight: 700; font-size: 12px; display: inline-flex; align-items: center; gap: 6px; }
.da-live { width: 8px; height: 8px; border-radius: 50%; background: #3EE07E; box-shadow: 0 0 0 3px rgba(62, 224, 126, .25); }
.da-panel { border: 3px solid #0B1640; border-radius: 18px; box-shadow: 6px 6px 0 #FFB020, 0 18px 40px rgba(11, 22, 64, .25); overflow-x: hidden; }
.da-panel-top { position: relative; background: linear-gradient(135deg, #0C1740, #1747C9); color: #fff; padding: 16px; border-bottom: 3px solid #0B1640; isolation: isolate; }
.da-panel-top::before { content: ""; position: absolute; inset: 0; z-index: -1; opacity: .5; background: repeating-conic-gradient(from 0deg at 92% 30%, rgba(255,255,255,.12) 0 4deg, transparent 4deg 10deg); }
.da-panel-art { background: #fff; border: 2.5px solid #FFB020; }
.da-kicker { font-family: var(--brandfont); font-weight: 400; font-size: 15px; letter-spacing: .03em; text-transform: none; color: #FFD27A; }
.da-kicker em { font-style: normal; font-family: var(--body, inherit); font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; background: #FFB020; color: #0B1640; padding: 2px 6px; border-radius: 999px; margin-left: 6px; vertical-align: 2px; }
.da-panel-top h2 { color: #fff; }
.da-close { color: #fff; background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.3); }
.da-close:hover { color: #0B1640; }
.da-says { font-size: 15px; }
.da-links a { border: 2px solid #0B1640; font-weight: 700; box-shadow: 2px 2px 0 #0B1640; }
.da-trend { margin: 0 0 14px; padding: 10px; border-radius: 12px; background: #F3F6FF; border: 1px dashed #9FB4F0; }
.da-trend-label { display: block; font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #1747C9; margin-bottom: 6px; }
.da-trend-row { display: flex; flex-wrap: wrap; gap: 6px; }
.da-trend-row a { display: inline-flex; flex-direction: column; padding: 5px 10px; border-radius: 10px; background: #fff; border: 1.5px solid #0B1640; text-decoration: none; color: #0B1640; line-height: 1.15; }
.da-trend-row b { font-family: var(--mono); font-size: 14px; }
.da-trend-row small { font-size: 11px; color: var(--muted); }
.da-ask-row input { border: 2px solid #0B1640; border-radius: 12px; }
.da-ask-row .btn { border: 2px solid #0B1640; box-shadow: 2px 2px 0 #FFB020; }
.da-suggest button { border: 1.5px solid #0B1640; border-radius: 999px; background: #fff; font-weight: 600; }
.da-suggest button:last-child { background: #FFF4D6; border-color: #B7791F; }
.da-a-names { border: 2px solid #0B1640; border-radius: 14px; padding: 12px; margin-bottom: 10px; background: linear-gradient(180deg, #FFF8E6, #fff); box-shadow: 3px 3px 0 #FFB020; }
.da-a-names ul { list-style: none; margin: 8px 0; padding: 0; display: grid; gap: 6px; }
.da-a-names li { display: grid; grid-template-columns: 1fr auto; gap: 0 8px; align-items: baseline; padding: 8px 10px; background: #fff; border: 1px solid var(--line); border-radius: 10px; }
.da-a-names li a { font-weight: 700; overflow-wrap: anywhere; }
.da-a-names li small { grid-column: 1 / -1; color: var(--muted); font-size: 12px; }
.da-a-more { font-weight: 700; font-size: 13px; }

/* Home: meet Domain Anime */
.anime-promo { display: grid; grid-template-columns: auto 1fr; gap: 28px; align-items: center; padding: 28px; border: 3px solid #0B1640; border-radius: 22px; background: linear-gradient(135deg, #0C1740, #1747C9); color: #fff; box-shadow: 8px 8px 0 #FFB020; position: relative; overflow: hidden; isolation: isolate; }
.anime-promo::before { content: ""; position: absolute; inset: 0; z-index: -1; opacity: .45; background: repeating-conic-gradient(from 0deg at 14% 50%, rgba(255,255,255,.12) 0 4deg, transparent 4deg 10deg); }
.ap-art { width: 180px; height: 180px; border-radius: 50%; background: #fff; border: 4px solid #FFB020; overflow: hidden; }
.ap-art svg { width: 100%; height: 100%; display: block; }
.anime-promo h2 { margin: 6px 0 8px; color: #fff; font-family: var(--brandfont); font-weight: 400; font-size: clamp(30px, 5vw, 44px); text-shadow: 3px 3px 0 #0B1640; letter-spacing: .01em; }
.anime-promo p { color: #D6DEFF; margin: 0 0 14px; max-width: 620px; }
.ap-list { list-style: none; margin: 0 0 18px; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.ap-list li { padding: 6px 12px; border-radius: 999px; background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.3); font-size: 14px; font-weight: 600; }
.ap-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.ap-actions .btn-amber { background: #FFB020; color: #0B1640; border: 2.5px solid #0B1640; box-shadow: 3px 3px 0 #0B1640; font-weight: 800; }
@media (max-width: 720px) { .anime-promo { grid-template-columns: 1fr; text-align: left; padding: 20px; } .ap-art { width: 120px; height: 120px; } }
.pick { align-content: start; gap: 4px; }
.pick-name { text-decoration: none; color: var(--ink); }
.pick-name:hover { text-decoration: underline; }
.pick .pick-add { margin-top: 6px; justify-self: start; }
.pick[hidden] { display: none; }

/* Escrow and private deal, both highlighted; the chosen one gets the tag */
.pay-opt { opacity: 1; border-color: var(--pc); background-color: color-mix(in srgb, var(--pc) 5%, #fff); box-shadow: 3px 3px 0 color-mix(in srgb, var(--pc) 45%, #fff); }
.pay-opt:not(:has(input:checked)) .po-list, .pay-opt:not(:has(input:checked)) .po-best { opacity: 1; }
.pay-opt:not(:has(input:checked))::after { content: "Choose" / ""; position: absolute; right: 0; top: 0; padding: 4px 12px 4px 14px; background: color-mix(in srgb, var(--pc) 14%, #fff); color: var(--pc); font-weight: 800; font-size: 12px; letter-spacing: .04em; border-bottom-left-radius: 10px; }
.pay-direct:has(input:checked) { background-image: repeating-linear-gradient(135deg, color-mix(in srgb, #7C3AED 14%, transparent) 0 8px, transparent 8px 18px); }
.da-a-names li { grid-template-columns: 1fr; gap: 2px; }
.da-a-names li a { font-size: 15px; }
.da-a-names li .money { font-size: 14px; }
.pay-opt .po-head { padding-right: 78px; }
.pay-choice { min-width: 0; }
@media (max-width: 760px) { .cart-layout, .deal-grid { grid-template-columns: minmax(0, 1fr); } }

/* ---------- Price tag: one design for every price on the site ---------- */
.price { align-items: flex-start; }
.price-main {
  display: inline-flex; align-items: center; width: max-content; max-width: 100%;
  padding: 3px 12px; margin: 2px 0 4px; border: 2px solid var(--ink); border-radius: 10px;
  background: linear-gradient(135deg, #FFF6DC 0%, #FFE6A8 100%); color: var(--ink);
  box-shadow: 3px 3px 0 var(--pg, var(--blue)); text-shadow: none; transform: skewX(-4deg);
}
.price-md .price-main { background: linear-gradient(135deg, #FFF6DC 0%, #FFE6A8 100%); margin-left: 0; padding: 3px 12px; display: inline-flex; }
.price-lg .price-main { padding: 4px 14px; box-shadow: 4px 4px 0 var(--pg, var(--blue)); text-shadow: none; }
.price-xl .price-main { padding: 6px 16px; border-width: 3px; border-radius: 14px; box-shadow: 5px 5px 0 var(--pg, var(--blue)); text-shadow: none; }
.price-xl::after { display: none; }
.sx-price .price-main, .names-table .price-main { padding: 2px 8px; border-width: 1.5px; border-radius: 8px; box-shadow: 2px 2px 0 var(--pg, var(--blue)); background: linear-gradient(135deg, #FFF6DC 0%, #FFE6A8 100%); }
.mobile-buy .price-main { color: var(--ink); box-shadow: 2px 2px 0 #FFB020; }
.is-premium .price-main, .sk-premium .price-main { background: linear-gradient(135deg, #FFE9A8 0%, #FFC94D 100%); }
.price-alt { margin-left: 2px; }

/* Selected chips always stay readable, including endings with no names yet and while hovered */
.chip-btn[aria-pressed="true"], .chip-btn.chip-empty[aria-pressed="true"], .chip-btn[aria-pressed="true"]:hover {
  background: var(--ink); border: 2px solid var(--ink); border-style: solid; color: #fff; font-weight: 700; box-shadow: 3px 3px 0 var(--pg, var(--blue));
}
.chip-btn[aria-pressed="true"] .chip-n { background: #FFB020; color: #0B1640; }
.chip-btn.chip-empty:not([aria-pressed="true"]):hover { color: var(--ink); }
body[data-page="premium"] .pg-ep { color: #0B1640; text-shadow: none; }
body[data-page="premium"] .pg-ep span { color: #fff; }

/* ---------- Magic lines ---------- */
.magic-line { position: relative; margin: 14px 0 16px; padding: 14px 16px 14px 18px; border: 2.5px solid #FFB020; border-radius: 14px; background: linear-gradient(135deg, rgba(255,176,32,.16), rgba(255,59,107,.12)); box-shadow: 4px 4px 0 #FFB020; overflow: hidden; isolation: isolate; }
.magic-line::before { content: ""; position: absolute; inset: 0; z-index: -1; opacity: .35; background: repeating-conic-gradient(from 0deg at 100% 0%, rgba(255,255,255,.18) 0 3deg, transparent 3deg 9deg); }
.ml-kana { position: absolute; right: 12px; top: 8px; font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 900; font-size: 13px; letter-spacing: .12em; color: #FFD27A; opacity: .9; }
.ml-head { margin: 0 0 4px; font-family: var(--brandfont); font-weight: 400; font-size: clamp(22px, 4.2vw, 30px); line-height: 1.15; color: #fff; text-shadow: 2px 2px 0 #0B1640; padding-right: 64px; }
.ml-head strong { color: #FFD27A; font-weight: 400; }
.ml-sub { margin: 0; color: #E6ECFF; font-size: 15px; line-height: 1.5; }
.ml-sub strong { color: #fff; }
.ml-sub a { color: #FFD27A; font-weight: 700; }
.magic-line.is-sold { border-color: #9CA3AF; box-shadow: 4px 4px 0 #6B7280; background: rgba(255,255,255,.06); }
.card-line { margin: 2px 0 4px; font-size: 13px; font-weight: 700; color: #B4236B; letter-spacing: .01em; }
.card-line::before { content: "✦ " / ""; color: #FFB020; }
.footer-motto { margin: 0 0 10px; font-family: var(--brandfont); font-size: 20px; color: #FFD27A; letter-spacing: .02em; }
.founder-band { padding: 8px 0 28px; }
.fb-row { display: grid; grid-template-columns: 1.3fr 1fr auto; gap: 24px; align-items: center; padding: 26px; border: 3px solid #0B1640; border-radius: 22px; background: linear-gradient(120deg, #FFF4D6, #FFE1EA); box-shadow: 8px 8px 0 #0B1640; }
.fb-kicker { display: inline-block; font-family: var(--mono); font-weight: 700; font-size: 12px; letter-spacing: .12em; color: #fff; background: #0B1640; padding: 4px 10px; border-radius: 4px; transform: skewX(-10deg); }
.fb-copy h2 { margin: 10px 0 8px; font-family: var(--brandfont); font-weight: 400; font-size: clamp(28px, 4.6vw, 42px); line-height: 1.1; color: #0B1640; }
.fb-copy h2 em { font-style: normal; color: #C2185B; text-shadow: 2px 2px 0 #FFB020; }
.fb-copy p { margin: 0; color: #2A3550; }
.fb-steps { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.fb-steps li { display: grid; grid-template-columns: 64px 1fr; gap: 10px; align-items: center; padding: 8px 10px; background: #fff; border: 2px solid #0B1640; border-radius: 12px; }
.fb-steps b { font-family: var(--brandfont); font-weight: 400; font-size: 20px; color: #fff; background: #1747C9; text-align: center; border-radius: 8px; padding: 2px 0; transform: skewX(-8deg); }
.fb-steps li:nth-child(2) b { background: #C2185B; }
.fb-steps li:nth-child(3) b { background: #0B1640; color: #FFD27A; }
.fb-steps span { font-size: 14px; color: #2A3550; }
.btn-amber { background: #FFB020; color: #0B1640; border: 2.5px solid #0B1640; box-shadow: 3px 3px 0 #0B1640; font-weight: 800; }
@media (max-width: 900px) { .fb-row { grid-template-columns: 1fr; padding: 20px; box-shadow: 5px 5px 0 #0B1640; } }

/* ---------- Home: "Starting something?" card, compact purpose tiles ---------- */
.start-card { position: relative; border: 3px solid #0B1640; border-radius: 22px; box-shadow: 8px 8px 0 #FFB020; overflow: hidden; isolation: isolate;
  background: radial-gradient(rgba(23,71,201,.10) 1.4px, transparent 1.5px) 0 0 / 16px 16px, linear-gradient(160deg, #FFFFFF 0%, #F2F6FF 55%, #FFF1E0 100%); }
.start-card::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 8px; background: linear-gradient(90deg, #1747C9, #C2185B, #FFB020); }
.start-card::after { content: "名前探し"; position: absolute; right: 18px; top: 18px; z-index: -1; font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 900; font-size: clamp(30px, 6vw, 56px); letter-spacing: .1em; color: transparent; -webkit-text-stroke: 1.5px rgba(23,71,201,.22); }
.start-head h2 { font-family: var(--brandfont); font-weight: 400; font-size: clamp(26px, 4.4vw, 38px); line-height: 1.12; color: #0B1640; letter-spacing: .01em; }
.start-form legend { font-weight: 800; }
.purpose-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px; }
.purpose-tile { position: relative; display: flex; align-items: center; gap: 8px; min-height: 48px; padding: 6px 10px; border: 2px solid #C9D3EA; border-radius: 12px; background: #fff; cursor: pointer; transition: transform .12s, box-shadow .12s, border-color .12s; }
.purpose-tile input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.purpose-tile .pt-ico { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; background: #EEF2FF; color: #1747C9; flex: none; }
.purpose-tile .pt-t { font-size: 14px; font-weight: 700; line-height: 1.2; color: #0B1640; }
.purpose-tile:hover { border-color: #1747C9; transform: translateY(-1px); }
.purpose-tile:has(input:checked) { border-color: #0B1640; background: #0B1640; box-shadow: 3px 3px 0 #FFB020; transform: translate(-1px, -1px); }
.purpose-tile:has(input:checked) .pt-t { color: #fff; }
.purpose-tile:has(input:checked) .pt-ico { background: #FFB020; color: #0B1640; }
.purpose-tile:has(input:focus-visible) { outline: 3px solid #FFB020; outline-offset: 2px; }
.pt-invest .pt-ico { background: #FFF4D6; color: #B45309; }
@media (max-width: 520px) { .purpose-grid { grid-template-columns: 1fr 1fr; gap: 6px; } .purpose-tile { min-height: 44px; padding: 5px 8px; } .purpose-tile .pt-t { font-size: 13px; } .purpose-tile .pt-ico { width: 26px; height: 26px; } }
@media (min-width: 900px) { .purpose-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
.start-card::after { top: auto; bottom: 14px; right: 18px; }

/* ---------- Name first: the name is the hero, the price is quiet ---------- */
.name-plate { position: relative; display: inline-flex; align-items: baseline; flex-wrap: wrap; max-width: 100%; margin: 2px 0; padding: 8px 14px 9px;
  border: 2.5px solid #0B1640; border-radius: 12px; background: linear-gradient(135deg, #0C1740 0%, #1747C9 100%); color: #fff;
  box-shadow: 4px 4px 0 var(--pg, #FF3B6B); font-family: var(--brandfont); font-weight: 400; font-size: clamp(22px, 5.6vw, 28px); line-height: 1.1; letter-spacing: .01em; overflow-wrap: anywhere; }
.name-plate .np-base { color: #fff; text-shadow: 2px 2px 0 #0B1640; }
.name-plate .np-ext { color: #FFD27A; }
.domain-card .name-row { align-items: center; gap: 10px; }
.is-premium .name-plate { background: linear-gradient(135deg, #2A1258 0%, #6D28D9 100%); box-shadow: 4px 4px 0 #FFB020; }
/* the price on cards and lists steps back */
.domain-card .price-main, .pick .money { padding: 0; border: 0; background: none; box-shadow: none; transform: none; font-family: 'M PLUS Rounded 1c', var(--display); font-weight: 800; font-size: 19px; color: #2A3550; }
.domain-card .price-alt { font-size: 12px; }
.names-table .price-main { padding: 0; border: 0; background: none; box-shadow: none; transform: none; font-size: 15px; color: #2A3550; }
.names-table .domain-name, .pick .domain-name { font-family: var(--brandfont); font-weight: 400; font-size: 19px; }
.names-table .np-base, .pick .np-base { color: #0B1640; }
.names-table .np-ext, .pick .np-ext { color: #C2185B; }
/* tier tags */
.tier { display: inline-flex; align-items: center; gap: 5px; padding: 4px 10px; border-radius: 999px; font-size: 12px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; border: 1.5px solid currentColor; white-space: nowrap; }
.tier > span { font-size: 11px; letter-spacing: 0; }
.tier-super { color: #fff; background: linear-gradient(135deg, #6D28D9, #C2185B); border-color: #0B1640; box-shadow: 2px 2px 0 #FFB020; }
.tier-prem { color: #7A4B00; background: #FFE6A8; border-color: #D98200; }
.tier-ess { color: #0F5F57; background: #DDF5EF; border-color: #0F766E; }
.tier-sector { color: #1747C9; background: #EEF2FF; border-color: #9FB4F0; }
.card-verify { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; }
.picks-grid, .cart-steps { grid-template-columns: repeat(auto-fit, minmax(min(170px, 100%), 1fr)); } .pick { min-width: 0; }
.pick .domain-name, .pick .money { white-space: normal; overflow-wrap: anywhere; min-width: 0; } .pick .btn { max-width: 100%; }

/* ---------- The Last Founder brand font, served from this site so it shows everywhere (also offline) ---------- */
@font-face { font-family: 'LF Brand'; src: url('/assets/fonts/lf-brand.woff2') format('woff2'); font-display: swap; font-weight: 100 900; font-style: normal; }
:root { --brandfont: 'LF Brand', 'Unbounded', 'M PLUS Rounded 1c', var(--display); }

/* Every domain name, everywhere: the brand font, with the ending in colour */
.domain-name, .domain-h1, .sx-name, .cart-items li > a, .similar .domain-name, .match-card .domain-name, .mt-name, .deal-name {
  font-family: var(--brandfont); font-weight: 400; letter-spacing: .02em; }
.domain-name .np-ext, .domain-h1 .np-ext { color: #C2185B; }
/* Name page: the name sits on the same navy-and-gold plate as the logo */
.domain-h1 { display: inline-flex; flex-wrap: wrap; align-items: baseline; max-width: 100%; padding: 8px 18px 10px; border: 3px solid #FFB020; border-radius: 16px;
  background: linear-gradient(135deg, #0C1740, #1747C9); color: #fff; box-shadow: 5px 5px 0 #FFB020; font-size: clamp(32px, 8vw, 58px); line-height: 1.08; overflow-wrap: anywhere; text-shadow: 3px 3px 0 #0B1640; }
.domain-h1 .np-base { color: #fff; }
.domain-h1 .np-ext { color: #FFD27A; }
.domain-h1::after { display: none; }
@media (max-width: 760px) { .names-table .tier { white-space: normal; font-size: 10.5px; padding: 3px 8px; line-height: 1.2; } }
.names-table .tier { max-width: 100%; }

/* ---------- Domain names: one simple, premium style everywhere (no background) ---------- */
@font-face { font-family: 'LF Name'; src: url('/assets/fonts/lf-name.woff2') format('woff2'); font-display: swap; font-weight: 700; font-style: normal; }
:root { --namefont: 'LF Name', 'Sora', 'IBM Plex Sans', system-ui, sans-serif; --name-ink: #0B1640; --name-gold: #B07A12; }
.domain-name, .domain-h1, .sx-name, .cart-items li > a, .pick .domain-name, .names-table .domain-name, .similar .domain-name, .name-plate {
  font-family: var(--namefont); font-weight: 700; letter-spacing: -0.01em; text-shadow: none; }
.name-plate, .is-premium .name-plate { display: inline; padding: 0; margin: 0; border: 0; border-radius: 0; background: none; box-shadow: none; color: var(--name-ink); font-size: clamp(22px, 5.4vw, 26px); line-height: 1.2; overflow-wrap: anywhere; }
.name-plate .np-base, .names-table .np-base, .pick .np-base, .domain-name .np-base { color: var(--name-ink); text-shadow: none; }
.name-plate .np-ext, .names-table .np-ext, .pick .np-ext, .domain-name .np-ext { color: var(--name-gold); font-weight: 700; }
.names-table .domain-name, .pick .domain-name { font-size: 18px; }
/* name page: plain name on the dark hero, ending in soft gold */
.domain-h1 { display: block; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; text-shadow: none; color: #fff; font-size: clamp(34px, 8vw, 56px); line-height: 1.08; letter-spacing: -0.02em; }
.domain-h1 .np-base { color: #fff; }
.domain-h1 .np-ext { color: #F3C969; }
.domain-h1::after { display: block; content: ""; width: 64px; height: 3px; margin-top: 12px; border-radius: 2px; background: #F3C969; }
.sk-name { font-family: var(--namefont); font-weight: 700; letter-spacing: -0.01em; text-shadow: none; }

/* ---------- Tier tags: Legendary, Elite, Founder's Pick (no stars) ---------- */
.tier, .premium-badge { display: inline-flex; align-items: center; gap: 7px; padding: 5px 12px 5px 10px; border-radius: 8px; border: 1.5px solid; font-family: var(--namefont); font-size: 11.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; white-space: nowrap; box-shadow: none; line-height: 1.1; }
.tier > span:not(.tier-gem) { display: none; }
.tier-gem { width: 9px; height: 9px; transform: rotate(45deg); border-radius: 2px; flex: none; }
.tier-legend { color: #F6D27A; background: linear-gradient(135deg, #0B0F1E 0%, #2A2140 100%); border-color: #C9A24A; position: relative; overflow: hidden; }
.tier-legend .tier-gem { background: linear-gradient(135deg, #FFE7A3, #C9A24A); box-shadow: 0 0 6px rgba(246,210,122,.8); }
.tier-legend::after { content: ""; position: absolute; top: 0; bottom: 0; width: 40%; left: -60%; background: linear-gradient(100deg, transparent, rgba(255,255,255,.35), transparent); animation: tier-shine 3.2s ease-in-out infinite; }
@keyframes tier-shine { 0%, 60% { left: -60%; } 100% { left: 130%; } }
@media (prefers-reduced-motion: reduce) { .tier-legend::after { animation: none; display: none; } }
.tier-elite { color: #4C1D95; background: #F3EEFF; border-color: #7C3AED; }
.tier-elite .tier-gem { background: #7C3AED; }
.tier-pick { color: #0B1640; background: #fff; border-color: #0B1640; }
.tier-pick .tier-gem { background: #14B8A6; }
.tier-sector { color: #1747C9; background: #EEF2FF; border-color: #9FB4F0; }
.tier-sector .tier-gem { background: #1747C9; }
.featured-name { font-family: var(--namefont); font-weight: 700; letter-spacing: -0.01em; color: var(--name-ink); overflow-wrap: anywhere; word-break: normal; font-size: clamp(26px, 6.6vw, 38px); line-height: 1.12; }
.featured-name, .name-plate, .domain-h1, .domain-name { overflow-wrap: break-word; }
.featured-name { font-size: clamp(22px, 6vw, 34px); }
.featured-name .np-ext { color: var(--name-gold); }
.pop-gem { display: inline-block; background: #0B1640; margin-right: 6px; vertical-align: 1px; }
.verify-name, a.mono[href^="/names/"], .ml-sub strong, .ml-head strong, .crumb-name { font-family: var(--namefont); font-weight: 700; letter-spacing: -0.01em; }
.crumb-name { font-size: inherit; }
.featured .price-main { padding: 0; border: 0; background: none; box-shadow: none; transform: none; font-family: "M PLUS Rounded 1c", var(--display); font-weight: 800; font-size: 28px; color: #2A3550; }

/* ---------- The Last Founder logo keeps its own paint-brush font (only the logo) ---------- */
@font-face { font-family: 'LF Logo'; src: url('/assets/fonts/lf-logo.woff2') format('woff2'); font-display: swap; font-weight: 100 900; font-style: normal; }
:root { --logofont: 'LF Logo', 'Rubik Wet Paint', var(--brandfont); }
.brand-name, .footer-brand, .sk-brand { font-family: var(--logofont); font-weight: 400; letter-spacing: .01em; }

/* ---------- Add-to-cart pop-up: smart, light, premium ---------- */
.cart-celebrate.cc2 { background: #fff; color: #0B1640; border: 3px solid #0B1640; border-radius: 20px; box-shadow: 6px 6px 0 #FFB020, 0 18px 40px rgba(11,22,64,.25); padding: 16px 16px 14px; display: grid; gap: 10px; overflow: hidden; }
.cc2::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 6px; background: linear-gradient(90deg, #1747C9, #C2185B, #FFB020); }
.cc2 .cc-close { background: #F1F4FB; color: #0B1640; top: 12px; right: 10px; font-size: 20px; }
.cc2 .cc-close:hover { background: #E3E8F5; }
.cc-top { display: flex; align-items: center; gap: 10px; padding-right: 40px; margin-top: 4px; }
.cc-tick { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #14B8A6; color: #fff; font-weight: 900; flex: none; border: 2px solid #0B1640; box-shadow: 2px 2px 0 #0B1640; }
.cc-tt { display: grid; gap: 1px; min-width: 0; }
.cc-kicker { font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #0F766E; }
.cc2 .cc-title { font-family: var(--brandfont); font-weight: 700; font-size: 17px; line-height: 1.2; color: #0B1640; }
.cc-item { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; flex-wrap: wrap; padding: 10px 12px; border-radius: 12px; background: #F6F8FE; border: 1px solid #DCE3F4; }
.cc-name { font-family: var(--namefont); font-weight: 700; font-size: 20px; letter-spacing: -0.01em; overflow-wrap: anywhere; }
.cc-name .np-base { color: #0B1640; } .cc-name .np-ext { color: #B07A12; }
.cc-item .money, .cc-sum .money, .cc-pair .money { font-weight: 800; color: #2A3550; white-space: nowrap; }
.cc-sum { display: flex; justify-content: space-between; align-items: baseline; font-size: 14px; color: #4A5470; padding: 0 2px; }
.cc-pair { display: grid; gap: 6px; padding: 10px 12px; border-radius: 12px; border: 2px dashed #B07A12; background: #FFFBF0; }
.cc-pair-lab { font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #8A5A00; }
.cc-pair-row { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.cc-pair-row .cc-name { font-size: 17px; margin-right: auto; }
.cc-pair-add { min-height: 36px; padding: 0 14px; border-radius: 999px; border: 2px solid #0B1640; background: #FFB020; color: #0B1640; font-weight: 800; cursor: pointer; box-shadow: 2px 2px 0 #0B1640; }
.cc-pair-add:hover { transform: translate(-1px, -1px); box-shadow: 3px 3px 0 #0B1640; }
.cc-tip { margin: 0; font-size: 13.5px; color: #4A5470; padding-left: 10px; border-left: 3px solid #1747C9; }
.cc2 .cc-steps li { border-top-color: #E3E8F5; color: #8A93AB; font-weight: 600; }
.cc2 .cc-steps li.done { border-top-color: #FFB020; color: #0B1640; }
.cc2 .cc-actions { display: grid; grid-template-columns: 1.3fr 1fr; gap: 8px; }
.cc-go { background: #0B1640; color: #fff; border: 2px solid #0B1640; font-weight: 800; justify-content: center; box-shadow: 3px 3px 0 #FFB020; }
.cc-go:hover { color: #fff; transform: translate(-1px, -1px); }
.cc-keep { background: #fff; color: #0B1640; border: 2px solid #C9D3EA; font-weight: 700; justify-content: center; }
@media (max-width: 520px) { .cart-celebrate.cc2 { left: 10px; right: 10px; bottom: 10px; width: auto; border-radius: 18px; } }

/* ---------- The story behind the name ---------- */
.word-story { position: relative; margin-top: 28px; padding: 20px; border: 3px solid #0B1640; border-radius: 20px; background: radial-gradient(rgba(23,71,201,.09) 1.3px, transparent 1.4px) 0 0 / 16px 16px, linear-gradient(160deg, #fff, #F4F7FF 60%, #FFF6E6); box-shadow: 6px 6px 0 #FFB020; display: grid; gap: 16px; overflow: hidden; }
.ws-head h2 { margin: 2px 0 0; font-family: var(--brandfont); font-weight: 700; font-size: clamp(20px, 4.4vw, 28px); color: #0B1640; }
.ws-kana { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 900; font-size: 13px; letter-spacing: .14em; color: #C2185B; }
.ws-parts { display: flex; flex-wrap: wrap; align-items: stretch; gap: 8px; }
.ws-part { flex: 1 1 180px; display: grid; gap: 3px; padding: 12px 14px; border-radius: 14px; background: #fff; border: 2px solid #0B1640; box-shadow: 3px 3px 0 #1747C9; }
.ws-part strong { font-family: var(--namefont); font-weight: 700; font-size: 22px; color: #0B1640; letter-spacing: -0.01em; }
.ws-part span { font-size: 14px; color: #4A5470; line-height: 1.4; }
.ws-plus { align-self: center; font-family: var(--brandfont); font-weight: 700; font-size: 24px; color: #FFB020; text-shadow: 2px 2px 0 #0B1640; }
.ws-lab { display: block; font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: #1747C9; margin-bottom: 8px; }
.ws-family ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.ws-family li { padding: 6px 12px; border-radius: 999px; background: #0B1640; color: #fff; font-size: 13.5px; font-weight: 700; }
.ws-family li:nth-child(2) { background: #1747C9; } .ws-family li:nth-child(3) { background: #6D28D9; } .ws-family li:nth-child(4) { background: #C2185B; }
.ws-family li + li::before { content: "→ " / ""; color: #FFD27A; }
.ws-family p { margin: 10px 0 0; font-size: 14.5px; color: #2A3550; line-height: 1.55; }
.ws-grid { display: grid; grid-template-columns: 1.4fr 1fr; gap: 16px; }
.ws-why { margin: 0; padding-left: 0; list-style: none; display: grid; gap: 6px; }
.ws-why li { position: relative; padding-left: 22px; font-size: 14.5px; color: #2A3550; line-height: 1.45; }
.ws-why li::before { content: "✦" / ""; position: absolute; left: 0; top: 0; color: #FFB020; }
.ws-suits { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 6px; }
.ws-suits li { padding: 5px 10px; border-radius: 8px; border: 1.5px solid #0F766E; background: #E9F8F4; color: #0F5F57; font-size: 13px; font-weight: 700; }
.word-story .fine { margin: 0; }
@media (max-width: 640px) { .ws-grid { grid-template-columns: 1fr; } .word-story { padding: 16px; box-shadow: 4px 4px 0 #FFB020; } .ws-plus { width: 100%; text-align: center; } }

/* Add-to-cart pop-up, anime paint style: Domain Anime speaks, one name, one smart pick, two buttons */
.cart-celebrate.cc2 { background: radial-gradient(rgba(11,22,64,.07) 1.4px, transparent 1.5px) 0 0 / 14px 14px, linear-gradient(170deg, #FFFDF6 0%, #FFF4DA 100%); gap: 12px; }
.cc2::before { height: 8px; background: repeating-linear-gradient(115deg, #1747C9 0 22px, #C2185B 22px 44px, #FFB020 44px 66px); }
.cc-head { display: flex; align-items: flex-start; gap: 10px; padding-right: 36px; margin-top: 6px; }
.cc-av { display: grid; place-items: center; width: 62px; height: 62px; border-radius: 50%; overflow: hidden; flex: none; background: #fff; border: 3px solid #0B1640; box-shadow: 3px 3px 0 #FFB020; font-weight: 900; }
.cc-av svg { width: 100%; height: 100%; display: block; }
.cc-bubble { position: relative; flex: 1; min-width: 0; padding: 10px 12px; background: #fff; border: 2.5px solid #0B1640; border-radius: 14px 14px 14px 4px; box-shadow: 3px 3px 0 #0B1640; display: grid; gap: 3px; }
.cc-bubble::before { content: ""; position: absolute; left: -10px; top: 18px; width: 12px; height: 12px; background: #fff; border-left: 2.5px solid #0B1640; border-bottom: 2.5px solid #0B1640; transform: rotate(45deg); }
.cc-bubble .cc-title { font-size: 15.5px; position: relative; z-index: 1; background: linear-gradient(transparent 62%, rgba(255,176,32,.45) 62%); justify-self: start; }
.cc-say { font-size: 13.5px; color: #4A5470; line-height: 1.4; position: relative; z-index: 1; }
.cc2 .cc-item { background: #fff; border: 2px solid #0B1640; box-shadow: 3px 3px 0 #1747C9; align-items: center; }
.cc-left { display: grid; gap: 2px; min-width: 0; }
.cc2 .cc-kicker { color: #0F766E; font-size: 10.5px; }
.cc2 .cc-pair { background: #fff; border: 2px dashed #C2185B; }
.cc2 .cc-pair-lab { color: #C2185B; }
.cc2 .cc-actions { grid-template-columns: 1.2fr 1fr; }
@media (prefers-reduced-motion: no-preference) { .cart-celebrate.cc2.show .cc-av { animation: cc-bob 1.2s ease-in-out 2; } }
@keyframes cc-bob { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-4px) rotate(-3deg); } }

/* ---------- In-cart highlight and the header count ---------- */
.btn-cart[aria-pressed="true"] { background: #0F766E; border: 2px solid #0B1640; color: #fff; box-shadow: 3px 3px 0 #FFB020; position: relative; font-weight: 800; }
.btn-cart[aria-pressed="true"]:hover { background: #0D655E; color: #fff; }
.btn-cart[aria-pressed="true"] svg { stroke: #fff; }
.btn-cart.btn-icon[aria-pressed="true"]::after { content: "✓" / ""; position: absolute; top: -8px; right: -8px; width: 20px; height: 20px; border-radius: 50%; background: #FFB020; color: #0B1640; border: 2px solid #0B1640; font-size: 11px; font-weight: 900; display: grid; place-items: center; line-height: 1; }
.cart-count { min-width: 22px; height: 22px; top: -9px; right: -9px; background: #FF3B6B; color: #fff; border: 2px solid #0B1640; font-size: 12px; font-weight: 900; box-shadow: 2px 2px 0 #FFB020; }
.site-header .cart-link.has-items { background: #FFB020; color: #0B1640; border: 2px solid #0B1640; box-shadow: 3px 3px 0 #0B1640; }
.site-header .cart-link.has-items:hover { background: #FFC24D; color: #0B1640; }
.cart-count.bump { animation: count-bump .6s cubic-bezier(.3,1.6,.5,1); }
@keyframes count-bump { 0% { transform: scale(1); } 35% { transform: scale(1.7); background: #FFB020; color: #0B1640; } 100% { transform: scale(1); } }
.cart-link.glow { animation: cart-glow 1.2s ease-out; }
@keyframes cart-glow { 0% { box-shadow: 0 0 0 0 rgba(255,176,32,.9); } 100% { box-shadow: 0 0 0 14px rgba(255,176,32,0); } }
@media (prefers-reduced-motion: reduce) { .cart-count.bump, .cart-link.glow { animation: none; } }
.domain-card:has(.btn-cart[aria-pressed="true"]), .names-table tr:has(.btn-cart[aria-pressed="true"]) td { background: linear-gradient(180deg, #F0FBF8, #fff); }
.domain-card:has(.btn-cart[aria-pressed="true"]) { outline: 3px solid #0F766E; outline-offset: -3px; position: relative; }
.domain-card:has(.btn-cart[aria-pressed="true"])::after { content: "✓ In your cart" / ""; position: absolute; top: 0; left: 50%; transform: translate(-50%, -50%); padding: 3px 12px; border-radius: 999px; background: #0F766E; color: #fff; border: 2px solid #0B1640; font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; box-shadow: 2px 2px 0 #FFB020; }

/* Similar names with Add to cart */
.similar .sim-card { display: grid; gap: 8px; padding: 14px; border: 2px solid #DCE3F4; border-radius: 14px; background: #fff; align-content: start; }
.similar .sim-card:hover { border-color: #0B1640; box-shadow: 3px 3px 0 #FFB020; }
.similar .sim-card .tier { justify-self: start; }
.sim-link { text-decoration: none; }
.sim-link .domain-name { font-size: 19px; overflow-wrap: anywhere; }
.sim-foot { display: flex; align-items: center; justify-content: space-between; gap: 8px; flex-wrap: wrap; }
.sim-price .money { font-weight: 800; color: #2A3550; }
.similar .sim-card:has(.btn-cart[aria-pressed="true"]) { border-color: #0F766E; background: #F0FBF8; }
.nearest-item .nearest-add { margin-top: 6px; justify-self: start; }
.da-a-names li .da-add { justify-self: start; margin-top: 4px; min-height: 34px; padding: 0 12px; }
.similar .sim-link { border: 0; padding: 0; border-radius: 0; background: none; display: block; }

/* ---------- Fast Founder → Last Founder, new look ---------- */
.fb2 { padding: 10px 0 30px; }
.fb2-card { position: relative; display: grid; grid-template-columns: 1.15fr 1fr; gap: 28px; align-items: center; padding: clamp(22px, 4vw, 40px); border-radius: 26px; overflow: hidden; isolation: isolate;
  background: radial-gradient(120% 140% at 100% 0%, #3B1D6B 0%, #0B1640 55%, #060B22 100%); color: #fff; border: 2px solid #0B1640; box-shadow: 0 20px 50px rgba(11,22,64,.35); }
.fb2-card::before { content: ""; position: absolute; inset: 0; z-index: -1; opacity: .35; background: repeating-linear-gradient(115deg, rgba(255,255,255,.07) 0 2px, transparent 2px 26px); }
.fb2-card::after { content: ""; position: absolute; right: -80px; top: -80px; width: 260px; height: 260px; border-radius: 50%; z-index: -1; background: radial-gradient(circle, rgba(255,176,32,.35), transparent 65%); }
.fb2-kicker { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 0 0 10px; font-family: var(--namefont); font-weight: 700; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; }
.fb2-fast { padding: 5px 12px; border-radius: 999px; border: 1.5px solid #7FD4FF; color: #7FD4FF; }
.fb2-arrow { color: #FFB020; font-size: 18px; letter-spacing: 0; }
.fb2-last { padding: 5px 12px; border-radius: 999px; background: linear-gradient(90deg, #FFB020, #FF3B6B); color: #0B1640; }
.fb2-copy h2 { margin: 0 0 10px; font-family: var(--brandfont); font-weight: 700; font-size: clamp(30px, 5.4vw, 52px); line-height: 1.05; letter-spacing: -0.01em; color: #fff; }
.fb2-grad { background: linear-gradient(90deg, #FFD27A 0%, #FFB020 40%, #FF3B6B 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.fb2-lead { margin: 0 0 18px; color: #C9D3F5; font-size: 16px; line-height: 1.55; max-width: 520px; }
.fb2-cta { background: #FFB020; color: #0B1640; border: 0; font-weight: 800; min-height: 48px; padding: 0 22px; box-shadow: 0 0 0 4px rgba(255,176,32,.25); }
.fb2-cta:hover { background: #FFC24D; color: #0B1640; }
.fb2-steps { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; position: relative; }
.fb2-steps::before { content: ""; position: absolute; left: 27px; top: 22px; bottom: 22px; width: 2px; background: linear-gradient(#7FD4FF, #FFB020, #FF3B6B); opacity: .7; }
.fb2-steps li { position: relative; display: grid; grid-template-columns: 56px 1fr; grid-template-rows: auto auto; column-gap: 12px; padding: 12px 14px 12px 10px; border-radius: 16px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.14); backdrop-filter: blur(2px); }
.fb2-steps b { grid-row: 1 / span 2; display: grid; place-items: center; width: 56px; height: 56px; border-radius: 16px; font-family: var(--namefont); font-weight: 700; font-size: 15px; letter-spacing: .02em; color: #0B1640; background: #7FD4FF; transform: rotate(-4deg); }
.fb2-steps li:nth-child(2) b { background: #FFB020; }
.fb2-steps li:nth-child(3) b { background: linear-gradient(135deg, #FF3B6B, #C2185B); color: #fff; }
.fb2-lv { font-size: 11px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: #FFD27A; align-self: end; }
.fb2-steps li > span:last-child { color: #E6ECFF; font-size: 14.5px; line-height: 1.4; }
@media (max-width: 860px) { .fb2-card { grid-template-columns: 1fr; } }

/* ---------- Escrow or private deal: the buyer's own choice ---------- */
.pc2-row { display: grid; gap: 6px; }
.pc2-or { justify-self: center; display: inline-grid; place-items: center; width: 40px; height: 26px; border-radius: 999px; background: #0B1640; color: #FFD27A; font-family: var(--namefont); font-weight: 700; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; }
.pc2 .po-tag { justify-self: start; font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; padding: 2px 8px; border-radius: 6px; }
.pc2 .pay-escrow .po-tag { background: #E8EEFF; color: #1747C9; }
.pc2 .pay-direct .po-tag { background: #F1E9FF; color: #6D28D9; }
.pc2 .pay-direct { background-color: #FBF8FF; }
.pc2 .pay-direct .po-head strong { color: #5B21B6; font-size: 17px; }
.pc2 .pay-escrow .po-head strong { font-size: 17px; }
.pc2-done { position: relative; display: grid; grid-template-columns: auto 1fr; gap: 6px 12px; margin-top: 8px; padding: 14px; border-radius: 16px; border: 2.5px solid #0B1640; color: #fff; overflow: hidden; isolation: isolate; box-shadow: 4px 4px 0 #FFB020; }
.pc2-done.is-escrow { background: linear-gradient(135deg, #0C1740, #1747C9); }
.pc2-done.is-direct { background: linear-gradient(135deg, #2A1258, #7C3AED 70%, #C2185B); }
.pc2-done::before { content: ""; position: absolute; inset: 0; z-index: -1; opacity: .35; background: repeating-conic-gradient(from 0deg at 12% 30%, rgba(255,255,255,.18) 0 4deg, transparent 4deg 11deg); }
.pc2-badge { grid-row: span 2; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; background: #fff; border: 2.5px solid #0B1640; font-size: 24px; box-shadow: 2px 2px 0 #FFB020; }
.pc2-dt { display: grid; gap: 1px; }
.pc2-kick { font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: #FFD27A; }
.pc2-dt strong { font-family: var(--brandfont); font-weight: 700; font-size: 17px; }
.pc2-next { grid-column: 1 / -1; margin: 4px 0 0; padding-left: 20px; display: grid; gap: 4px; font-size: 13.5px; line-height: 1.4; color: #EEF2FF; }
.pc2-change { grid-column: 1 / -1; font-size: 12px; color: #C9D3F5; }
.pc2-burst { position: absolute; left: 36px; top: 36px; width: 0; height: 0; }
.pc2-burst i { position: absolute; width: 7px; height: 7px; border-radius: 2px; background: #FFB020; opacity: 0; transform: rotate(var(--a)) translateY(0); }
.pc2-burst i:nth-child(3n) { background: #fff; } .pc2-burst i:nth-child(3n+1) { background: #FF3B6B; }
.pc2-done.pop .pc2-burst i { animation: pc2-burst .9s ease-out forwards; }
.pc2-done.pop { animation: pc2-pop .45s cubic-bezier(.3,1.5,.5,1); }
@keyframes pc2-burst { 0% { opacity: 1; transform: rotate(var(--a)) translateY(0); } 100% { opacity: 0; transform: rotate(var(--a)) translateY(-70px); } }
@keyframes pc2-pop { 0% { transform: scale(.96); } 100% { transform: scale(1); } }
@media (prefers-reduced-motion: reduce) { .pc2-done.pop, .pc2-done.pop .pc2-burst i { animation: none; } }
/* nothing chosen yet: both cards look equally inviting */
.pc2:not(:has(input:checked)) .pay-opt { opacity: 1; }
.pc2 .pay-opt:not(:has(input:checked))::after { content: "Tap to choose" / ""; }
.pc-only { white-space: nowrap; display: inline-block; }
.pc2 .pay-choice .error, .pc2 > .error { display: block; margin-top: 6px; }
.pc2:has(.pay-direct[hidden]) .pc2-or { display: none; }

/* ---------- Anime "choose your path" payment cards ---------- */
.pc2 > legend { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; font-family: var(--brandfont); font-weight: 700; font-size: 18px; color: #0B1640; margin-bottom: 8px; }
.pc-kana { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 900; font-size: 14px; letter-spacing: .1em; color: #C2185B; }
.pc2 .pay-opt { display: grid; grid-template-columns: auto 1fr; gap: 12px; padding: 14px 14px 14px 16px; border: 3px solid #0B1640; border-radius: 18px; box-shadow: 4px 4px 0 #0B1640; background-color: #fff; opacity: 1; transition: transform .15s, box-shadow .15s; overflow: hidden; }
.pc2 .pay-opt::before { width: 8px; }
.pc2 .pay-opt input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.pc2 .pay-opt:hover { transform: translate(-1px, -2px); box-shadow: 5px 6px 0 #0B1640; }
.po-emblem { display: grid; place-items: center; width: 54px; height: 54px; border-radius: 50%; font-size: 26px; border: 3px solid #0B1640; box-shadow: 2px 2px 0 #0B1640; align-self: start; }
.pay-escrow .po-emblem { background: radial-gradient(circle at 35% 30%, #CFE0FF, #7FA6FF); }
.pay-direct .po-emblem { background: radial-gradient(circle at 35% 30%, #EBDDFF, #B28BFF); }
.pc2 .po-head strong { font-family: var(--brandfont); font-weight: 700; font-size: 20px !important; }
.pc2 .pay-escrow { background-image: radial-gradient(rgba(23,71,201,.10) 1.4px, transparent 1.5px); background-size: 14px 14px; }
.pc2 .pay-direct { background-image: repeating-linear-gradient(135deg, rgba(124,58,237,.08) 0 8px, transparent 8px 18px); }
.pc2 .pay-opt:has(input:checked) { transform: translate(-2px, -2px); }
.pc2 .pay-escrow:has(input:checked) { background-color: #EEF3FF; box-shadow: 6px 6px 0 #1747C9, 0 0 0 4px rgba(23,71,201,.18); }
.pc2 .pay-direct:has(input:checked) { background-color: #F5EEFF; box-shadow: 6px 6px 0 #7C3AED, 0 0 0 4px rgba(124,58,237,.18); }
.pc2 .pay-opt:has(input:checked)::after { content: "CHOSEN!" / ""; top: 10px; right: -6px; padding: 4px 16px 4px 12px; border-radius: 6px 0 0 6px; transform: rotate(6deg); font-family: var(--brandfont); font-weight: 700; font-size: 12px; letter-spacing: .08em; box-shadow: 2px 2px 0 #0B1640; }
.pc2 .pay-opt:not(:has(input:checked))::after { content: "TAP TO CHOOSE" / ""; top: 10px; right: 0; border-radius: 6px 0 0 6px; font-size: 10.5px; }
.pc2 .pay-opt:has(input:checked) .po-emblem { animation: po-pop .5s cubic-bezier(.3,1.6,.5,1); }
@keyframes po-pop { 0% { transform: scale(.7) rotate(-12deg); } 100% { transform: scale(1) rotate(0); } }
.pc2:has(.pay-escrow input:checked) .pay-direct, .pc2:has(.pay-direct input:checked) .pay-escrow { filter: saturate(.75); }
.pc2-or { width: 46px; height: 46px; border-radius: 50%; background: #FFB020; color: #0B1640; border: 3px solid #0B1640; font-family: var(--brandfont); font-size: 13px; box-shadow: 2px 2px 0 #0B1640; margin: -14px 0; z-index: 2; position: relative; transform: rotate(-8deg); }
@media (prefers-reduced-motion: reduce) { .pc2 .pay-opt:has(input:checked) .po-emblem { animation: none; } }
@media (max-width: 400px) { .po-emblem { width: 44px; height: 44px; font-size: 21px; } .pc2 .pay-opt { gap: 10px; padding: 12px; } }

/* ---------- Payment choice: professional, clear selected state (overrides the earlier styles) ---------- */
.pc2 > legend { display: block; font-family: inherit; font-weight: 700; font-size: 16px; color: var(--ink); margin-bottom: 6px; }
.pc-hint { margin-left: 6px; font-size: 13px; font-weight: 500; color: var(--muted); }
.pc2 .pay-why { background: #F6F7F9; border-left: 3px solid #C9CED8; color: #3C4350; }
.pc2-row { gap: 10px; }
.pc2 .pay-opt, .pc2 .pay-escrow, .pc2 .pay-direct { display: grid; grid-template-columns: 22px 1fr; gap: 12px; padding: 14px 16px; border: 1.5px solid #D5DAE3; border-radius: 12px; background: #fff; background-image: none; box-shadow: none; transform: none; filter: none; opacity: 1; cursor: pointer; transition: border-color .15s, background-color .15s, box-shadow .15s; overflow: visible; }
.pc2 .pay-opt::before, .pc2 .pay-opt::after, .pc2 .pay-opt:not(:has(input:checked))::after, .pc2 .pay-opt:has(input:checked)::after { content: none; display: none; }
.pc2 .pay-opt:hover { border-color: #9AA6BD; transform: none; box-shadow: none; }
.pc2 .pay-opt input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.po-radio { width: 20px; height: 20px; margin-top: 2px; border-radius: 50%; border: 2px solid #9AA6BD; background: #fff; display: grid; place-items: center; }
.po-radio::after { content: ""; width: 10px; height: 10px; border-radius: 50%; background: transparent; }
.pc2 .po-head { padding-right: 0; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.pc2 .po-head strong { display: inline-flex; align-items: center; gap: 6px; font-family: inherit; font-weight: 700; font-size: 16px !important; color: var(--ink) !important; }
.pc2 .po-head strong svg { color: #4A5470; }
.pc2 .rec, .pc2 .pay-opt.is-pick .rec { display: none; }
.pc2 .pay-escrow .rec { display: inline-block; background: #EEF2F7; color: #3C4350; font-weight: 600; font-size: 11.5px; padding: 2px 8px; border-radius: 999px; border: 1px solid #D5DAE3; }
.pc2 .po-tag, .pc2 .pay-escrow .po-tag, .pc2 .pay-direct .po-tag { background: none; color: var(--muted); padding: 0; font-size: 11.5px; font-weight: 700; letter-spacing: .06em; }
.pc2 .po-best { font-size: 14px; font-weight: 500; color: #3C4350; }
.pc2 .po-list { font-size: 13.5px; }
/* selected */
.pc2 .pay-opt:has(input:checked) { border: 2px solid #1747C9; background: #F3F6FE; box-shadow: 0 0 0 3px rgba(23,71,201,.12); padding: 13.5px 15.5px; }
.pc2 .pay-opt:has(input:checked) .po-radio { border-color: #1747C9; }
.pc2 .pay-opt:has(input:checked) .po-radio::after { background: #1747C9; }
.pc2 .pay-opt:has(input:checked) .po-head strong::after { content: "Selected"; margin-left: 4px; font-size: 11.5px; font-weight: 700; color: #fff; background: #1747C9; padding: 2px 8px; border-radius: 999px; }
.pc2:has(input:checked) .pay-opt:not(:has(input:checked)) { background: #FAFBFC; }
.pc2 .pay-opt:has(input:focus-visible) { outline: 3px solid #1747C9; outline-offset: 2px; }
/* confirmation: plain and calm */
.pc2-done, .pc2-done.is-escrow, .pc2-done.is-direct { background: #F6F7F9; color: var(--ink); border: 1px solid #D5DAE3; box-shadow: none; animation: none; }
.pc2-done::before { content: none; }
.pc2-badge { width: 28px; height: 28px; border-radius: 50%; background: #1747C9; color: #fff; border: 0; box-shadow: none; font-size: 14px; font-weight: 800; }
.pc2-kick { color: #1747C9; }
.pc2-dt strong { font-family: inherit; font-size: 15px; }
.pc2-next { color: #3C4350; }
.pc2-change { color: var(--muted); }
.pc2 label.pay-escrow .rec { display: inline-block; background: #EEF2F7; color: #3C4350; font-weight: 600; font-size: 11.5px; padding: 2px 8px; border-radius: 999px; border: 1px solid #D5DAE3; margin: 0; }
.studio-go { white-space: normal; height: auto; min-height: 56px; padding: 10px 16px; line-height: 1.2; text-align: center; min-width: 0; }
@media (max-width: 760px) {
  .names-table tr { grid-template-columns: auto minmax(0, 1fr); }
  .names-table td:nth-child(2) { grid-column: 1; grid-row: 3; align-self: center; }
  .names-table td:nth-child(3) { grid-column: 2; grid-row: 3; text-align: right; }
  .names-table td:nth-child(4) { grid-column: 1 / -1; grid-row: 4; }
  .names-table td.right { grid-row: 5; }
  .names-table .tier { white-space: nowrap; }
}

/* ---------- Request a name: calm, professional, with the guide ---------- */
.req-hero { display: grid; grid-template-columns: auto 1fr; gap: 18px; align-items: start; margin-bottom: 18px; padding: 20px; border-radius: 18px; border: 1.5px solid #D5DAE3; background: linear-gradient(160deg, #FFFFFF 0%, #F4F7FF 100%); }
.req-av { display: block; width: 96px; height: 96px; border-radius: 50%; overflow: hidden; background: #fff; border: 2px solid #1747C9; flex: none; }
.req-av svg { width: 100%; height: 100%; display: block; }
.req-kicker { display: block; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #1747C9; }
.req-copy h1 { margin: 4px 0 10px; font-family: var(--brandfont); font-weight: 700; font-size: clamp(26px, 4.6vw, 36px); line-height: 1.12; color: var(--ink); }
.req-copy h1::after { display: none; }
.req-bubble { position: relative; margin: 0 0 12px; padding: 12px 14px; background: #fff; border: 1.5px solid #D5DAE3; border-radius: 4px 14px 14px 14px; color: #3C4350; font-size: 15px; line-height: 1.55; }
.req-trust { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.req-trust li { padding: 4px 10px; border-radius: 999px; background: #EEF2F7; color: #3C4350; font-size: 13px; font-weight: 600; }
.req-trust li::before { content: "✓ " / ""; color: #0F766E; font-weight: 800; }
.request-form { border: 1.5px solid #D5DAE3; box-shadow: 0 8px 24px rgba(16,20,24,.06); }
.request-form legend, .request-form > .field > label { font-weight: 700; }
.ask-opt { border: 1.5px solid #D5DAE3 !important; border-radius: 12px !important; background: #fff; transition: border-color .15s, background-color .15s; }
.ask-opt:hover { border-color: #9AA6BD !important; }
.ask-opt:has(input:checked) { border: 2px solid #1747C9 !important; background: #F3F6FE !important; box-shadow: 0 0 0 3px rgba(23,71,201,.12); }
.ask-opt:has(input:checked) strong { color: #1747C9; }
@media (max-width: 560px) { .req-hero { grid-template-columns: 1fr; padding: 16px; } .req-av { width: 72px; height: 72px; } }
/* small polish from the walkthrough */
@media (max-width: 640px) { .pg-lab { white-space: normal; overflow: visible; text-overflow: clip; line-height: 1.15; font-size: 15px; } }
.da-kicker em { white-space: nowrap; display: inline-block; }
@media (max-width: 520px) { .da-dock:not(.is-open) .da-launch-text { display: none; } .da-dock:not(.is-open) .da-launch { padding: 5px; } }

/* ---------- Accounts: one aligned layout for sign in, sign up, confirm email and reset ---------- */
.auth-page { max-width: 1080px; }
.auth-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: 28px; align-items: start; }
.auth-main { padding: 28px; gap: 16px; border: 1.5px solid #D5DAE3; box-shadow: 0 10px 30px rgba(16,20,24,.07); }
.auth-title { font-size: clamp(28px, 4vw, 36px); margin: 0; }
.auth-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; padding: 4px; background: var(--soft); border-radius: 12px; }
.auth-tabs a { display: flex; align-items: center; justify-content: center; min-height: 44px; border-radius: 9px; font-weight: 700; color: var(--ink-2); text-decoration: none; }
.auth-tabs a[aria-current="page"] { background: #fff; color: var(--blue); box-shadow: 0 1px 3px rgba(16,20,24,.12); }
.auth-steps { list-style: none; margin: 0; padding: 0; display: flex; gap: 8px; flex-wrap: wrap; }
.auth-steps li { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 600; color: var(--muted); }
.auth-steps li + li::before { content: ""; width: 18px; height: 2px; background: var(--line-2); margin-right: 2px; }
.auth-steps span { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 50%; border: 2px solid var(--line-2); font-size: 13px; }
.auth-steps .now { color: var(--blue); } .auth-steps .now span { border-color: var(--blue); background: var(--blue); color: #fff; }
.auth-steps .done { color: var(--green); } .auth-steps .done span { border-color: var(--green); background: var(--green-soft); }
.btn-google { width: 100%; background: #fff; color: var(--ink); border: 1.5px solid #B9C2CF; }
.auth-rec { margin: 0 0 10px; font-size: .92rem; color: var(--ink-2); }
.auth-rec-badge { display: inline-block; margin-right: 6px; padding: 2px 9px; border-radius: 999px; background: var(--soft); border: 1px solid #B9C2CF; color: var(--ink); font-weight: 700; font-size: .78rem; }
.btn-google:hover { background: var(--soft); color: var(--ink); border-color: var(--ink-2); }
.auth-or { display: flex; align-items: center; gap: 12px; margin: 0; color: var(--muted); font-size: 14px; }
.auth-or::before, .auth-or::after { content: ""; flex: 1; height: 1px; background: var(--line); }
.auth-main .stack > .btn-lg { width: 100%; }
.auth-links { margin: 0; text-align: center; }
.auth-resend { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; }
.code-input { font-family: var(--mono); font-size: 26px; letter-spacing: .3em; text-align: center; max-width: 260px; }
.account-alt { margin: 4px 0 0; text-align: center; }
.auth-side { padding: 28px; border-radius: 18px; background: linear-gradient(160deg, #0F1D4A 0%, #15348F 70%, #1747C9 100%); color: #fff; display: flex; flex-direction: column; gap: 14px; }
.auth-side .eyebrow { color: #FFD27A; } .auth-side .eyebrow::before { background: #FFD27A; }
.auth-side h2 { color: #fff; font-size: clamp(24px, 3vw, 30px); margin: 0; }
.auth-side a { color: #FFD27A; }
.auth-benefits { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
.auth-benefits li { display: grid; grid-template-columns: 34px 1fr; gap: 10px; align-items: start; }
.auth-benefits .icon { width: 34px; height: 34px; padding: 6px; border-radius: 10px; background: rgba(255,255,255,.12); color: #FFD27A; }
.auth-benefits strong { display: block; }
.auth-benefits span { color: #DCE4FF; font-size: 15px; }
.auth-benefits strong { color: #fff; }
@media (max-width: 860px) { .auth-grid { grid-template-columns: 1fr; } .auth-side { order: 2; } .auth-main { padding: 20px; } }

/* account home */
.account-home .account-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; flex-wrap: wrap; margin-bottom: 18px; }
.account-home h1 { font-size: clamp(30px, 4.4vw, 44px); margin: 4px 0; }
.acct-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-bottom: 20px; }
.acct-stats div { border: 1px solid var(--line); border-radius: 14px; padding: 14px 16px; background: #fff; display: flex; flex-direction: column; }
.acct-stats strong { font-size: 28px; font-family: var(--sans); font-weight: 700; font-variant-numeric: tabular-nums lining-nums; line-height: 1.1; }
.acct-stats span { color: var(--muted); font-size: 14px; font-weight: 600; }
.acct-stats .hot { border-color: #F2B15A; background: var(--orange-soft); }
.acct-stats .hot strong { color: var(--orange-d); }
.acct-grid { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 20px; align-items: start; margin-bottom: 20px; }
.deal-list, .saved-list, .acct-links { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.deal-row { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 12px; flex-wrap: wrap; }
.deal-row.your-move { border: 2px solid var(--blue); background: #F5F8FF; }
.deal-row-main { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.deal-row-side { display: flex; align-items: center; gap: 8px; }
.deal-next { display: inline-flex; align-items: center; gap: 4px; font-size: 14px; font-weight: 700; color: var(--ink-2); }
.your-move .deal-next { color: var(--blue); }
.saved-list li { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; }
.acct-links a { font-weight: 600; }
.acct-pass { max-width: 460px; }
@media (max-width: 860px) { .acct-grid { grid-template-columns: 1fr; } .acct-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* ---------- Deal page: the whole journey, and messages with Last Founder ---------- */
.journey { list-style: none; margin: 0 0 18px; padding: 14px 16px; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 6px; border: 1px solid var(--line); border-radius: 14px; background: #fff; counter-reset: j; }
.journey li { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 6px; font-size: 13px; font-weight: 600; color: var(--muted); position: relative; }
.journey li::before { counter-increment: j; content: counter(j); display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 50%; border: 2px solid var(--line-2); background: #fff; font-weight: 800; position: relative; z-index: 1; }
.journey li + li::after { content: ""; position: absolute; top: 15px; right: 50%; width: 100%; height: 2px; background: var(--line); }
.journey li.done { color: var(--green); } .journey li.done::before { content: "✓"; border-color: var(--green); background: var(--green-soft); color: var(--green-d); }
.journey li.done + li::after, .journey li.done + li.done::after { background: var(--green); }
.journey li.now { color: var(--blue); } .journey li.now::before { border-color: var(--blue); background: var(--blue); color: #fff; }
.journey li.stop { color: var(--red); } .journey li.stop::before { content: "×"; border-color: var(--red); color: var(--red); }
@media (max-width: 640px) { .journey { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 14px; } .journey li:nth-child(4)::after { display: none; } }
.thread { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; max-height: 420px; overflow-y: auto; }
.thread li { max-width: 86%; padding: 10px 14px; border-radius: 14px; white-space: pre-wrap; overflow-wrap: anywhere; }
.thread .m-buyer { align-self: flex-end; background: var(--blue-soft); border-bottom-right-radius: 4px; }
.thread .m-owner { align-self: flex-start; background: var(--soft); border-bottom-left-radius: 4px; }
.thread .m-who { display: block; font-size: 12px; font-weight: 700; color: var(--muted); margin-bottom: 2px; white-space: normal; }
.thread-empty { color: var(--muted); }
.msg-form textarea { min-height: 96px; }
.deal-account { border: 1.5px dashed var(--line-2); }
/* name page: from here to owning it */
.path-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px; counter-reset: ps; }
.path-steps li { position: relative; display: flex; flex-direction: column; gap: 6px; padding: 16px 16px 14px; border: 1px solid var(--line); border-radius: 14px; background: #fff; counter-increment: ps; }
.path-steps li::before { content: counter(ps); display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 50%; background: var(--blue-soft); color: var(--blue); font-weight: 800; }
.path-steps strong { font-size: 16px; }
.path-steps span { color: var(--muted); font-size: 15px; flex: 1 1 auto; }
.path-steps a { font-weight: 600; font-size: 14px; }
.paused-strip { background: var(--orange-soft); border-bottom: 1px solid #F2B15A; color: var(--orange-d); }
.paused-strip .wrap { display: flex; gap: 10px; align-items: flex-start; padding-top: 10px; padding-bottom: 10px; font-size: 15px; }
.paused-strip .icon { margin-top: 3px; }
/* Account numbers in a plain, clear figure style (the display font's zero looks like a letter O). */
.acct-stats strong { font-family: var(--sans); font-weight: 700; font-variant-numeric: tabular-nums lining-nums; letter-spacing: -0.01em; }

/* ---------- Buy box: four clear ways to buy (replaces the coloured tab buttons) ---------- */
.tabs.buy-ways { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8px; background: transparent; padding: 0; }
.buy-ways button { --tc: #1747C9; --tc-soft: #EEF3FE; position: relative; display: grid; grid-template-columns: 28px 1fr; grid-template-areas: "ic t" "s s"; column-gap: 8px; row-gap: 4px; align-items: center;
  min-height: 0; padding: 10px 11px; text-align: left; border: 1.5px solid #D5DAE3; border-radius: 12px; background: #fff; color: var(--ink);
  font: inherit; cursor: pointer; box-shadow: none; transform: none; transition: border-color .15s, background-color .15s, box-shadow .15s; }
.buy-ways button::before { display: none; }
.buy-ways button:hover { border-color: var(--tc); transform: none; }
.buy-ways .bw-ic { grid-area: ic; width: 28px; height: 28px; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; background: var(--tc-soft); color: var(--tc); }
.buy-ways .bw-ic .icon { width: 16px; height: 16px; }
.buy-ways .bw-t { grid-area: t; font-weight: 700; font-size: 14.5px; line-height: 1.15; padding-right: 14px; min-width: 0; }
.buy-ways .bw-s { grid-area: s; font-size: 12.5px; color: var(--muted); line-height: 1.3; font-weight: 500; }
.buy-ways button[aria-selected="true"] { background: var(--tc-soft); border: 2px solid var(--tc); padding: 9.5px 10.5px; box-shadow: 0 0 0 3px color-mix(in srgb, var(--tc) 14%, transparent); transform: none; color: var(--ink); font-weight: 400; }
.buy-ways button[aria-selected="true"] .bw-ic { background: var(--tc); color: #fff; }
.buy-ways button[aria-selected="true"] .bw-t { color: var(--tc); }
.buy-ways button[aria-selected="true"]::after { content: "✓"; position: absolute; top: 7px; right: 7px; width: 17px; height: 17px; border-radius: 50%; background: var(--tc); color: #fff; font-size: 10px; font-weight: 800; display: flex; align-items: center; justify-content: center; }
.buy-ways button:focus-visible { outline: 3px solid var(--tc); outline-offset: 2px; }
#t-buy { --tc: #1747C9; --tc-soft: #EEF3FE; } #t-offer { --tc: #B4235A; --tc-soft: #FCEEF3; } #t-swap { --tc: #0F766E; --tc-soft: #E8F5F3; } #t-plan { --tc: #A4510A; --tc-soft: #FDF2E7; }
.buy-ways button:nth-child(odd):last-child { grid-column: 1 / -1; }
@media (max-width: 340px) { .tabs.buy-ways { grid-template-columns: 1fr; } }

/* ---------- "Added to your cart" card: clear, calm, one next step ---------- */
.cart-pop { position: fixed; right: 16px; bottom: 16px; z-index: 70; width: min(390px, calc(100vw - 32px)); box-sizing: border-box; background: #fff; color: var(--ink);
  border: 2px solid #0C1740; border-radius: 18px; box-shadow: 5px 5px 0 #FFB020, 0 18px 40px rgba(12,23,64,.22); overflow: hidden;
  transform: translateY(16px); opacity: 0; pointer-events: none; transition: transform .2s ease, opacity .2s ease; }
.cart-pop.show { transform: none; opacity: 1; pointer-events: auto; }
.cp-head { display: grid; grid-template-columns: 46px 1fr auto; gap: 10px; align-items: center; padding: 12px 12px 12px 14px; color: #fff;
  background: repeating-linear-gradient(104deg, transparent 0 40px, rgba(255,255,255,.07) 40px 42px), linear-gradient(100deg, #0F1D4A, #1747C9); }
.cp-av { width: 46px; height: 46px; border-radius: 50%; background: #fff; border: 2px solid #FFC45C; overflow: hidden; display: inline-flex; align-items: center; justify-content: center; }
.cp-av svg { width: 100%; height: 100%; display: block; }
.cp-htext { display: flex; flex-direction: column; min-width: 0; }
.cp-title { font-size: 17px; font-weight: 800; line-height: 1.2; }
.cp-sub { font-size: 13px; color: #DCE4FF; }
.cp-close { width: 34px; height: 34px; border-radius: 50%; border: 0; background: rgba(255,255,255,.14); color: #fff; font-size: 20px; line-height: 1; cursor: pointer; }
.cp-close:hover { background: rgba(255,255,255,.26); }
.cp-item { display: grid; grid-template-columns: 26px 1fr auto; gap: 10px; align-items: center; margin: 12px 14px 0; padding: 10px 12px; border: 1.5px solid #9FD9BD; background: var(--green-soft); border-radius: 12px; }
.cp-tick { width: 24px; height: 24px; border-radius: 50%; background: var(--green); color: #fff; font-size: 13px; font-weight: 800; display: inline-flex; align-items: center; justify-content: center; }
.cp-name { display: flex; justify-content: space-between; gap: 8px; align-items: baseline; min-width: 0; flex-wrap: wrap; }
.cp-name .cc-name { font-family: var(--namefont, var(--mono)); font-weight: 700; font-size: 17px; overflow-wrap: anywhere; }
.cp-name .cc-name .np-ext { color: #A4510A; }
.cp-name .money { font-size: 15px; }
.cp-undo { border: 0; background: none; color: var(--muted); font: inherit; font-size: 13px; text-decoration: underline; cursor: pointer; padding: 4px; }
.cp-sum { display: flex; justify-content: space-between; gap: 10px; margin: 8px 16px 0; font-size: 14px; color: var(--ink-2); }
.cp-total { font-weight: 700; color: var(--ink); }
.cp-steps { list-style: none; margin: 12px 14px 0; padding: 10px 12px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; background: var(--soft); border-radius: 12px; counter-reset: none; }
.cp-steps li { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 4px; font-size: 12.5px; font-weight: 600; color: var(--muted); line-height: 1.25; }
.cp-n { width: 24px; height: 24px; border-radius: 50%; border: 2px solid var(--line-2); background: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 800; }
.cp-steps .done { color: var(--green-d); } .cp-steps .done .cp-n { border-color: var(--green); background: var(--green); color: #fff; }
.cp-steps .next { color: var(--blue); } .cp-steps .next .cp-n { border-color: var(--blue); color: var(--blue); }
.cp-note { margin: 8px 16px 0; font-size: 13px; color: var(--muted); }
.cp-actions { display: grid; grid-template-columns: 1.4fr 1fr; gap: 8px; padding: 12px 14px 14px; }
.cp-actions .btn { min-height: 46px; width: 100%; padding: 0 10px; white-space: normal; text-align: center; line-height: 1.2; }
.cp-pair { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; padding: 10px 14px; border-top: 1px solid var(--line); background: #FAFBFD; font-size: 13.5px; }
.cp-pair-lab { color: var(--muted); font-weight: 600; }
.cp-pair .cc-name { font-family: var(--namefont, var(--mono)); font-weight: 700; }
.cp-pair .money { color: var(--ink-2); }
.cp-pair-add { margin-left: auto; border: 1.5px solid var(--blue); background: #fff; color: var(--blue); font: inherit; font-weight: 700; font-size: 13px; padding: 5px 12px; border-radius: 999px; cursor: pointer; }
.cp-pair-add:hover { background: var(--blue-soft); }
@media (max-width: 520px) { .cart-pop { left: 10px; right: 10px; bottom: 10px; width: auto; } }
@media (prefers-reduced-motion: reduce) { .cart-pop { transition: none; } }

/* ---------- Required "I agree" tick box: a clear card with a big tick and a warning inside it ---------- */
.consent-box { position: relative; margin: 4px 0 2px; padding: 14px 16px; border: 2px solid #0B1640; border-radius: 14px;
  background: linear-gradient(180deg, #F6F8FF 0%, #fff 100%); box-shadow: 4px 4px 0 #F5B935; transition: border-color .15s, box-shadow .15s, background .15s; }
.consent-box .check.consent { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 12px; align-items: start; min-height: 0; cursor: pointer; margin: 0; }
.consent-box .check.consent input { position: absolute; opacity: 0; width: 28px; height: 28px; margin: 0; top: 14px; left: 16px; cursor: pointer; z-index: 2; }
.consent-tick { grid-column: 1; width: 28px; height: 28px; border: 2px solid #0B1640; border-radius: 8px; background: #fff;
  display: grid; place-items: center; pointer-events: none; transition: background .15s, transform .15s; }
.consent-tick::after { content: ''; width: 8px; height: 14px; border: solid #fff; border-width: 0 3px 3px 0; transform: rotate(45deg) scale(0); margin-top: -3px; transition: transform .15s; }
.consent-text { grid-column: 2; font-family: var(--sans); font-size: 15px; font-weight: 500; line-height: 1.55; color: #0B1640; letter-spacing: -0.005em; }
.consent-text a { color: var(--accent); font-weight: 600; text-underline-offset: 3px; }
.consent-text .req { color: var(--red); font-weight: 700; }
.consent-box input:focus-visible + .consent-tick { outline: 3px solid var(--accent); outline-offset: 3px; }
.consent-box:hover .consent-tick { transform: scale(1.06); }
.consent-box input:checked + .consent-tick { background: var(--green); border-color: var(--green); }
.consent-box input:checked + .consent-tick::after { transform: rotate(45deg) scale(1); }
.consent-box.is-done { border-color: var(--green); background: var(--green-soft); box-shadow: 4px 4px 0 #7FD1AE; }
.consent-box.is-bad { border-color: var(--red); background: #FFF5F4; box-shadow: 4px 4px 0 #F3A79F; animation: consent-nudge .35s ease; }
.consent-box.is-bad .consent-tick { border-color: var(--red); }
.consent-err { display: flex !important; gap: 10px; align-items: flex-start; margin: 12px 0 0; padding: 10px 12px; border-radius: 10px;
  background: var(--red); color: #fff !important; font-family: var(--sans); font-size: 14px !important; font-weight: 600; line-height: 1.45; }
.consent-err-ic { flex: 0 0 22px; width: 22px; height: 22px; border-radius: 50%; background: #fff; color: var(--red);
  display: grid; place-items: center; font-weight: 800; font-size: 14px; line-height: 1; }
@keyframes consent-nudge { 0%, 100% { transform: translateX(0); } 25% { transform: translateX(-5px); } 75% { transform: translateX(5px); } }
@media (prefers-reduced-motion: reduce) { .consent-box, .consent-tick, .consent-tick::after { transition: none; } .consent-box.is-bad { animation: none; } }
@media (max-width: 520px) { .consent-box { padding: 12px 12px; } .consent-box .check.consent input { left: 12px; top: 12px; } .consent-text { font-size: 14.5px; } }

/* ---------- Six-digit email code: six cells, one real box underneath ---------- */
.otp-field { gap: 8px; }
.otp-label { font-family: var(--namefont); font-weight: 600; font-size: 15px; color: #0B1640; }
.otp { position: relative; max-width: 420px; }
.otp .otp-cells { display: none; }
.otp.is-ready .otp-cells { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) 6px repeat(3, minmax(0, 1fr)); gap: 10px; }
.otp-cell:nth-child(4) { grid-column: 5; }
.otp.is-ready .otp-input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; padding: 0; border: 0; outline: 0; background: transparent;
  color: transparent; caret-color: transparent; font-size: 16px; letter-spacing: 0; text-indent: -9999px; z-index: 2; cursor: text; box-shadow: none; }
.otp.is-ready .otp-input::placeholder { color: transparent; }
.otp.is-ready .otp-input::selection { background: transparent; }
.otp-cell { position: relative; display: grid; place-items: center; aspect-ratio: 5 / 6; min-height: 52px; border: 2px solid #C9D2E3; border-radius: 14px;
  background: linear-gradient(180deg, #fff 0%, #F4F7FF 100%); font-family: var(--brandfont); font-weight: 800; font-size: clamp(22px, 6vw, 30px); color: #0B1640;
  font-variant-numeric: tabular-nums; transition: border-color .15s, box-shadow .15s, transform .15s, background .15s; }
.otp-cell.is-filled { border-color: #0B1640; background: #fff; box-shadow: 3px 3px 0 #F5B935; transform: translateY(-1px); }
.otp-cell.is-active { border-color: var(--accent); box-shadow: 0 0 0 4px rgba(23, 71, 201, .16); }
.otp-cell.is-active::after { content: ''; position: absolute; left: 50%; top: 27%; width: 2px; height: 46%; margin-left: -1px; background: var(--accent); border-radius: 2px; animation: otp-caret 1s steps(1) infinite; }
.otp.is-full .otp-cell { border-color: var(--green); box-shadow: 3px 3px 0 #7FD1AE; }
.otp.is-full .otp-cell.is-active::after { display: none; }
.otp.is-focus.is-full .otp-cells { outline: 3px solid var(--accent); outline-offset: 4px; border-radius: 16px; }
.otp.is-ready.is-bad .otp-cell, .otp-field:has(.error) .otp-cell { border-color: var(--red); }
@keyframes otp-caret { 50% { opacity: 0; } }
.otp-meta { display: flex; flex-wrap: wrap; gap: 6px 14px; align-items: center; margin: 2px 0 0; font-size: 14px; color: var(--muted); }
.otp-timer { font-variant-numeric: tabular-nums; font-weight: 600; color: #0B1640; }
.otp-timer.is-low { color: var(--orange); }
.otp-timer.is-out { color: var(--red); }
.otp-tries { padding: 2px 10px; border-radius: 999px; background: var(--orange-soft); color: var(--orange-d); font-weight: 700; font-size: 13px; }
.otp-safe { display: flex; gap: 8px; align-items: flex-start; margin: 2px 0 0; padding: 8px 12px; border-radius: 10px; background: #F1F4FB; color: #2A333C; font-size: 13.5px; line-height: 1.45; }
.otp-safe svg { flex: 0 0 auto; margin-top: 2px; color: var(--accent); }
.auth-resend button[disabled] { opacity: .7; cursor: not-allowed; text-decoration: none; font-variant-numeric: tabular-nums; }
@media (prefers-reduced-motion: reduce) { .otp-cell { transition: none; } .otp-cell.is-active::after { animation: none; } }
@media (max-width: 420px) { .otp.is-ready .otp-cells { gap: 6px; } .otp-cell { min-height: 46px; border-radius: 11px; } .otp.is-ready .otp-cells { grid-template-columns: repeat(3, minmax(0, 1fr)) 2px repeat(3, minmax(0, 1fr)); } }

/* ---------- Deal guide: the anime helper on a private deal page ---------- */
.deal-guide { position: relative; overflow: hidden; margin: 18px 0 22px; padding: 20px 22px; border: 2px solid #0B1640; border-radius: 18px; color: #fff;
  background: linear-gradient(125deg, #0B1640 0%, #13286E 55%, #1747C9 100%); box-shadow: 6px 6px 0 #F5B935; }
.deal-guide::before { content: ''; position: absolute; inset: 0; pointer-events: none; opacity: .18;
  background: repeating-linear-gradient(115deg, transparent 0 22px, rgba(255,255,255,.55) 22px 23px, transparent 23px 60px); }
.deal-guide::after { content: ''; position: absolute; right: -40px; top: -40px; width: 180px; height: 180px; border-radius: 50%; pointer-events: none;
  background: radial-gradient(circle, rgba(245,185,53,.35), transparent 70%); }
.dg-head { position: relative; z-index: 1; display: grid; grid-template-columns: 84px minmax(0, 1fr); gap: 18px; align-items: start; }
.dg-av { display: grid; place-items: center; width: 84px; height: 84px; border-radius: 50%; background: #fff; border: 3px solid #F5B935; box-shadow: 0 0 0 4px rgba(255,255,255,.12); overflow: hidden; }
.dg-av svg { width: 76px; height: 76px; margin-top: 8px; }
.dg-bubble { position: relative; padding: 14px 16px 16px; border-radius: 14px; background: rgba(255,255,255,.97); color: #0B1640; box-shadow: 3px 3px 0 rgba(11,22,64,.35); }
.dg-bubble::before { content: ''; position: absolute; left: -10px; top: 26px; border: 10px solid transparent; border-left: 0; border-right-color: rgba(255,255,255,.97); }
.dg-kicker { display: inline-block; margin-bottom: 4px; padding: 2px 10px; border-radius: 999px; background: #0B1640; color: #F5B935; font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.dg-bubble h2 { margin: 2px 0 6px; font-family: var(--brandfont); font-size: clamp(19px, 2.4vw, 24px); color: #0B1640; }
.dg-bubble p { margin: 0 0 12px; font-family: var(--sans); font-size: 15px; line-height: 1.55; color: #22304F; }
.dg-go { background: #F5B935; color: #0B1640; border: 2px solid #0B1640; box-shadow: 3px 3px 0 #0B1640; font-weight: 800; }
.dg-go:hover { transform: translate(-1px, -1px); box-shadow: 4px 4px 0 #0B1640; }
.dg-go:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
.dg-tips { position: relative; z-index: 1; display: grid; gap: 8px; margin: 14px 0 0 102px; padding: 0; list-style: none; }
.dg-tips li { display: flex; gap: 8px; align-items: flex-start; font-size: 14px; line-height: 1.5; color: #E8EEFF; }
.dg-tips svg { flex: 0 0 auto; margin-top: 3px; color: #7FE0B4; }
.dg-tips a { color: #FFD36B; font-weight: 700; }
.dg-celebrating { box-shadow: 6px 6px 0 #7FD1AE; }
.dg-serious { background: linear-gradient(125deg, #1B2333 0%, #2A3550 100%); box-shadow: 6px 6px 0 #8A96A3; }
@media (max-width: 600px) {
  .deal-guide { padding: 16px 14px; }
  .dg-head { grid-template-columns: 60px minmax(0, 1fr); gap: 12px; }
  .dg-av { width: 60px; height: 60px; } .dg-av svg { width: 54px; height: 54px; margin-top: 6px; }
  .dg-bubble::before { top: 18px; }
  .dg-tips { margin-left: 0; }
  .dg-kicker { font-size: 11px; letter-spacing: .02em; white-space: nowrap; }
}

/* ---------- Deal safety checklist ---------- */
.deal-safety { border: 2px solid #0B1640; box-shadow: 4px 4px 0 #F5B935; }
.ds-list { display: grid; gap: 12px; margin: 10px 0 12px; padding: 0; list-style: none; }
.ds-list li { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 10px; align-items: start; font-size: 14px; line-height: 1.5; color: #2A333C; }
.ds-list strong { display: block; color: #0B1640; font-size: 14.5px; }
.ds-list .mono { display: inline; font-size: 13px; overflow-wrap: anywhere; }
.ds-ic { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; background: var(--green-soft); color: var(--green); }

/* ---------- "Best for" line: on cards, lists and name pages ---------- */
.best-for { display: flex; flex-wrap: wrap; gap: 4px 8px; align-items: baseline; margin: 6px 0 4px; font-size: 13.5px; line-height: 1.4; color: #2A333C; }
.best-for .bf-k { flex: 0 0 auto; padding: 1px 8px; border-radius: 999px; background: #0B1640; color: #F5B935; font-size: 11px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.best-for .bf-v { min-width: 0; font-weight: 600; }
.best-for.bf-lg { font-size: 15px; margin: 10px 0; }
.best-for.bf-lg .bf-k { font-size: 12px; }
.deal-hero .best-for .bf-v, .on-dark .best-for .bf-v { color: #E8EEFF; }
.deal-hero .best-for .bf-k { background: #F5B935; color: #0B1640; }

/* ---------- Browse: one page for every name ---------- */
.browse-lead { max-width: 760px; margin: -4px 0 14px; color: var(--muted); font-size: 16px; }
.quick-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 12px; }
.qt { display: inline-flex; align-items: center; gap: 6px; min-height: 42px; padding: 6px 16px; border: 2px solid #0B1640; border-radius: 999px; background: #fff; color: #0B1640;
  font: inherit; font-weight: 700; font-size: 15px; cursor: pointer; transition: transform .12s, box-shadow .12s, background .12s; }
.qt:hover { transform: translate(-1px, -1px); box-shadow: 3px 3px 0 #0B1640; }
.qt[aria-pressed="true"] { background: #0B1640; color: #fff; box-shadow: 3px 3px 0 #F5B935; }
.qt-premium[aria-pressed="true"] { background: linear-gradient(135deg, #0B1640, #1747C9); }
.qt-premium svg { color: #F5B935; }
.qt-n { display: inline-grid; place-items: center; min-width: 24px; height: 22px; padding: 0 6px; border-radius: 999px; background: #EEF2FB; color: #0B1640; font-size: 12.5px; font-weight: 800; }
.qt[aria-pressed="true"] .qt-n { background: #F5B935; }
.qt:focus-visible { outline: 3px solid var(--accent); outline-offset: 3px; }
.biz-strip { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 0 0 14px; }
.biz-strip-label { font-weight: 800; font-size: 14px; color: #0B1640; }
.browse-tools { display: flex; flex-wrap: wrap; gap: 10px 16px; align-items: center; justify-content: space-between; margin: 0 0 10px; }
.browse-tools #result-count { margin: 0; }
.bt-right { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.view-switch { display: inline-flex; padding: 3px; border: 2px solid #0B1640; border-radius: 999px; background: #fff; }
.view-switch button { min-height: 34px; padding: 4px 14px; border: 0; border-radius: 999px; background: none; color: #0B1640; font: inherit; font-weight: 700; font-size: 14px; cursor: pointer; }
.view-switch button[aria-pressed="true"] { background: #0B1640; color: #fff; }
.view-switch button:focus-visible { outline: 3px solid var(--accent); outline-offset: 2px; }

/* Cards view: the same rows, drawn as cards */
.names-box.is-cards { overflow: visible; border: 0; border-radius: 0; }
.names-box.is-cards .names-table, .names-box.is-cards .names-table tbody { display: block; min-width: 0; }
.names-box.is-cards .names-table thead { display: none; }
.names-box.is-cards .names-table tbody { display: grid; grid-template-columns: repeat(auto-fill, minmax(270px, 1fr)); gap: 16px; }
.names-box.is-cards .names-table tr { display: flex; flex-direction: column; gap: 8px; padding: 16px 16px 14px; border: 2px solid #0B1640; border-radius: 16px; background: #fff;
  box-shadow: 4px 4px 0 #DCE3F2; transition: transform .12s, box-shadow .12s; }
.names-box.is-cards .names-table tr:hover { transform: translate(-1px, -1px); box-shadow: 5px 5px 0 #F5B935; }
.names-box.is-cards .names-table tr[data-premium="1"] { box-shadow: 4px 4px 0 #F5B935; }
.names-box.is-cards .names-table tr[hidden] { display: none; }
.names-box.is-cards .names-table td { display: block; padding: 0; border: 0; text-align: left; }
.names-box.is-cards .names-table td:nth-child(1) { font-size: 19px; order: 1; }
.names-box.is-cards .names-table td:nth-child(2) { order: 0; }
.names-box.is-cards .names-table td:nth-child(3) { order: 2; }
.names-box.is-cards .names-table td:nth-child(3) .price-main { font-size: 20px; }
.names-box.is-cards .names-table td:nth-child(4) { order: 3; }
.names-box.is-cards .names-table td:nth-child(4) .opts:empty { display: none; }
.names-box.is-cards .names-table td.right { order: 4; margin-top: auto; padding-top: 6px; }
.names-box.is-cards .row-actions { justify-content: flex-start; flex-wrap: wrap; }
.names-box.is-cards .row-actions .btn { flex: 1 1 auto; }

/* Compare */
.cmp-pick { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 2px 10px; border: 1.5px solid #C9D2E3; border-radius: 999px; font-size: 13px; font-weight: 700; color: #2A333C; cursor: pointer; user-select: none; }
.cmp-pick input { width: 16px; height: 16px; margin: 0; accent-color: var(--accent); }
.cmp-pick.is-on { border-color: var(--accent); background: #EEF3FF; color: var(--accent); }
.cmp-pick:has(input:disabled) { opacity: .5; cursor: not-allowed; }
.compare-tray { position: fixed; left: 50%; bottom: 18px; z-index: 60; transform: translateX(-50%); display: flex; gap: 10px; align-items: center; max-width: calc(100vw - 24px);
  padding: 10px 12px 10px 18px; border: 2px solid #0B1640; border-radius: 999px; background: #fff; box-shadow: 5px 5px 0 #F5B935; }
.compare-tray .ct-text { font-weight: 700; color: #0B1640; font-size: 14px; }
.compare-dialog { width: min(920px, calc(100vw - 24px)); max-height: calc(100vh - 40px); padding: 0; border: 2px solid #0B1640; border-radius: 18px; box-shadow: 6px 6px 0 #F5B935; }
.compare-dialog::backdrop { background: rgba(11, 22, 64, .55); }
.cmp-head { display: flex; justify-content: space-between; align-items: center; padding: 14px 18px; background: #0B1640; color: #fff; }
.cmp-head h2 { margin: 0; color: #fff; font-size: 20px; }
.cmp-x { width: 36px; height: 36px; border: 0; border-radius: 50%; background: rgba(255,255,255,.15); color: #fff; font-size: 22px; cursor: pointer; }
.cmp-x:focus-visible { outline: 3px solid #F5B935; }
.cmp-body { overflow-x: auto; padding: 8px 18px; }
.cmp-table { width: 100%; border-collapse: collapse; min-width: 480px; }
.cmp-table th { width: 120px; text-align: left; font-size: 13px; color: var(--muted); font-weight: 700; }
.cmp-table th, .cmp-table td { padding: 10px 8px; border-bottom: 1px solid var(--line); vertical-align: top; font-size: 14.5px; }
.cmp-table tr:last-child th, .cmp-table tr:last-child td { border-bottom: 0; }
.cmp-name { font-size: 16px; font-weight: 700; }
.cmp-note { padding: 0 18px 14px; margin: 0; }
@media (max-width: 640px) {
  .qt { min-height: 38px; padding: 4px 12px; font-size: 14px; }
  .names-box.is-cards .names-table tbody { grid-template-columns: 1fr; }
  .compare-tray { bottom: 10px; border-radius: 14px; flex-wrap: wrap; justify-content: center; }
}
@media (prefers-reduced-motion: reduce) { .qt, .names-box.is-cards .names-table tr { transition: none; } }
.names-box.is-cards .names-table tbody { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); }
.names-box.is-cards .name-row { flex-wrap: wrap; row-gap: 6px; }
.names-box.is-cards .domain-name { overflow-wrap: anywhere; word-break: normal; min-width: 0; }
.cmp-table .btn-cart.btn-icon { width: auto; padding: 0 14px; }
.cmp-table .btn-cart.btn-icon .cart-label { position: static; width: auto; height: auto; overflow: visible; clip: auto; margin-left: 6px; white-space: nowrap; }
@media (max-width: 640px) { .names-box.is-cards .names-table tbody { grid-template-columns: 1fr; } }
.names-box.is-cards .names-table tr { align-items: stretch; grid-template-columns: none; }
.names-box.is-cards .names-table td, .names-box.is-cards .names-table td:nth-child(n) { grid-column: auto; grid-row: auto; text-align: left; }
.names-box.is-cards .names-table td:nth-child(2) > * { margin-left: 0; margin-right: auto; }
@media (max-width: 640px) {
  .biz-strip { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 6px; scrollbar-width: thin; -webkit-overflow-scrolling: touch; }
  .biz-strip .chip-btn, .biz-strip-label { flex: 0 0 auto; }
}

/* ---------- Name Studio: names we own that fit, shown first ---------- */
.ng-owned { margin: 18px 0 26px; padding: 20px; border: 2px solid #0B1640; border-radius: 18px; background: linear-gradient(180deg, #FFF9EA 0%, #fff 70%); box-shadow: 5px 5px 0 #F5B935; }
.ng-owned.is-empty { background: #F7F8FA; box-shadow: 4px 4px 0 #DCE3F2; }
.ngo-head { display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: center; }
.ngo-head h2 { margin: 0; font-size: clamp(20px, 2.6vw, 26px); }
.ngo-badge { display: inline-flex; gap: 6px; align-items: center; padding: 3px 12px; border-radius: 999px; background: #0B1640; color: #F5B935; font-size: 12.5px; font-weight: 800; letter-spacing: .03em; text-transform: uppercase; }
.ngo-say { margin: 8px 0 14px; color: #2A333C; }
.ngo-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.ngo-card { display: flex; flex-direction: column; gap: 6px; padding: 14px; border: 2px solid #0B1640; border-radius: 14px; background: #fff; box-shadow: 3px 3px 0 #DCE3F2; }
.ngo-card.is-top { box-shadow: 4px 4px 0 #1747C9; }
.ngo-top { display: flex; gap: 6px; min-height: 22px; }
.ngo-best { padding: 1px 10px; border-radius: 999px; background: var(--green); color: #fff; font-size: 12px; font-weight: 800; }
.ngo-prem { padding: 1px 10px; border-radius: 999px; background: #F5B935; color: #0B1640; font-size: 12px; font-weight: 800; }
.ngo-name { font-family: var(--namefont); font-weight: 700; font-size: 21px; color: #0B1640; text-decoration: none; overflow-wrap: anywhere; }
.ngo-name .ngo-ext { color: var(--name-gold, #B07A12); }
.ngo-name:hover .ngo-base { text-decoration: underline; }
.ngo-why { margin: 0; font-size: 13.5px; color: var(--muted); }
.ngo-price { display: flex; flex-wrap: wrap; gap: 4px 10px; align-items: baseline; margin: 2px 0 6px; font-weight: 800; font-size: 18px; color: #0B1640; }
.ngo-plan { font-size: 12.5px; font-weight: 600; color: var(--green); }
.ngo-card .btn { margin-top: auto; align-self: flex-start; }
.ng-fresh-h { display: flex; gap: 8px; align-items: center; margin: 6px 0 12px; font-size: clamp(20px, 2.6vw, 26px); }

/* ---------- Home spotlight: a new name every 30 minutes, with a card flip ---------- */
.hero .featured::before { content: attr(data-sticker); }
.spot-face { transform-origin: 50% 50%; transition: transform .26s ease-in, opacity .26s ease-in; }
.featured.is-flipping .spot-face { transform: perspective(700px) rotateX(88deg); opacity: 0; }
.featured.is-landing .spot-face { animation: spot-land .38s cubic-bezier(.2,.9,.3,1.2); }
@keyframes spot-land { from { transform: perspective(700px) rotateX(-70deg); opacity: 0; } to { transform: none; opacity: 1; } }
.spot-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.spot-actions .btn { flex: 0 0 auto; }
.spot-actions .link-arrow { flex-basis: 100%; }
.spot-next { margin: 10px 0 0; }
.featured [data-spot-tier]:empty { display: none; }
@media (prefers-reduced-motion: reduce) { .spot-face { transition: none; } .featured.is-landing .spot-face { animation: none; } }
.otp-cell { user-select: none; -webkit-user-select: none; }
.otp.is-bad .otp-cell { border-color: var(--red); }
.otp-clear { min-height: 32px; padding: 2px 12px; border: 1.5px solid #C9D2E3; border-radius: 999px; background: #fff; color: #0B1640; font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
.otp-clear:hover { border-color: #0B1640; }
.otp-clear:focus-visible { outline: 3px solid var(--accent); outline-offset: 2px; }

/* Share card: the name always fits on one line, and the bottom row never spills out of the card. */
.sk-card { container-type: inline-size; }
.sk-name { white-space: nowrap; overflow: visible; overflow-wrap: normal; }
.sk-name { font-size: clamp(22px, 7vw, 34px); }
.sk-n3 { font-size: min(15cqi, calc(90cqi / 1.86)); }
.sk-n4 { font-size: min(15cqi, calc(90cqi / 2.48)); }
.sk-n5 { font-size: min(15cqi, calc(90cqi / 3.1)); }
.sk-n6 { font-size: min(15cqi, calc(90cqi / 3.72)); }
.sk-n7 { font-size: min(15cqi, calc(90cqi / 4.34)); }
.sk-n8 { font-size: min(15cqi, calc(90cqi / 4.96)); }
.sk-n9 { font-size: min(15cqi, calc(90cqi / 5.58)); }
.sk-n10 { font-size: min(15cqi, calc(90cqi / 6.2)); }
.sk-n11 { font-size: min(15cqi, calc(90cqi / 6.82)); }
.sk-n12 { font-size: min(15cqi, calc(90cqi / 7.44)); }
.sk-n13 { font-size: min(15cqi, calc(90cqi / 8.06)); }
.sk-n14 { font-size: min(15cqi, calc(90cqi / 8.68)); }
.sk-n15 { font-size: min(15cqi, calc(90cqi / 9.3)); }
.sk-n16 { font-size: min(15cqi, calc(90cqi / 9.92)); }
.sk-n17 { font-size: min(15cqi, calc(90cqi / 10.54)); }
.sk-n18 { font-size: min(15cqi, calc(90cqi / 11.16)); }
.sk-n19 { font-size: min(15cqi, calc(90cqi / 11.78)); }
.sk-n20 { font-size: min(15cqi, calc(90cqi / 12.4)); }
.sk-n21 { font-size: min(15cqi, calc(90cqi / 13.02)); }
.sk-n22 { font-size: min(15cqi, calc(90cqi / 13.64)); }
.sk-n23 { font-size: min(15cqi, calc(90cqi / 14.26)); }
.sk-n24 { font-size: min(15cqi, calc(90cqi / 14.88)); }
.sk-n25 { font-size: min(15cqi, calc(90cqi / 15.5)); }
.sk-n26 { font-size: min(15cqi, calc(90cqi / 16.12)); }
.sk-n27 { font-size: min(15cqi, calc(90cqi / 16.74)); }
.sk-n28 { font-size: min(15cqi, calc(90cqi / 17.36)); }
.sk-n29 { font-size: min(15cqi, calc(90cqi / 17.98)); }
.sk-n30 { font-size: min(15cqi, calc(90cqi / 18.6)); }
.sk-n31 { font-size: min(15cqi, calc(90cqi / 19.22)); }
.sk-n32 { font-size: min(15cqi, calc(90cqi / 19.84)); }
.sk-n33 { font-size: min(15cqi, calc(90cqi / 20.46)); }
.sk-n34 { font-size: min(15cqi, calc(90cqi / 21.08)); }
.sk-n35 { font-size: min(15cqi, calc(90cqi / 21.7)); }
.sk-n36 { font-size: min(15cqi, calc(90cqi / 22.32)); }
.sk-n37 { font-size: min(15cqi, calc(90cqi / 22.94)); }
.sk-n38 { font-size: min(15cqi, calc(90cqi / 23.56)); }
.sk-n39 { font-size: min(15cqi, calc(90cqi / 24.18)); }
.sk-n40 { font-size: min(15cqi, calc(90cqi / 24.8)); }
.sk-bottom { flex-wrap: wrap; row-gap: 10px; }
.sk-price { min-width: 0; }
@container (max-width: 470px) { .sk-bubble { display: none; } .sk-avatar { width: 72px; height: 72px; } .sk-price { padding: 8px 12px; } }
@container (max-width: 250px) { .sk-avatar { display: none; } }

/* Compact name cards: smaller, quicker to scan, more names in view. */
.grid-cards { grid-template-columns: repeat(auto-fill, minmax(232px, 1fr)); gap: 14px; }
.domain-card { padding: 14px 14px 14px; gap: 6px; }
.domain-card .name-row { display: flex; align-items: center; justify-content: space-between; gap: 8px; flex-wrap: nowrap; }
.domain-card .name-plate { font-size: clamp(18px, 4.6vw, 21px); line-height: 1.15; overflow-wrap: anywhere; min-width: 0; }
.domain-card .copy-name { min-width: 32px; min-height: 32px; width: 32px; padding: 0; justify-content: center; flex: none; }
.domain-card .copy-name .copy-label { display: none; }
.domain-card .card-line { display: none; }
.domain-card .best-for { margin: 2px 0; font-size: 13px; line-height: 1.35; }
.domain-card .price-main { font-size: 20px; }
.domain-card .price-alt { font-size: 11.5px; }
.domain-card .card-verify { margin: 0; font-size: 12.5px; }
.domain-card .card-actions { flex-wrap: nowrap; gap: 6px; margin-top: 8px; }
.domain-card .card-actions .btn { padding: 0 12px; min-height: 40px; font-size: 14px; }
.domain-card .card-actions .btn-icon { flex: none; padding: 0; width: 40px; justify-content: center; }
.domain-card .card-actions .btn-primary { flex: 1 1 auto; }
.domain-card .card-actions .btn-outline:not(.btn-icon) { flex: 0 0 auto; }
.section-head > div > .eyebrow { display: flex; margin-bottom: 6px; }
@container (max-width: 470px) { .sk-price strong { font-size: clamp(24px, 9cqi, 34px); } .sk-bottom { flex-wrap: nowrap; } .sk-avatar { width: 64px; height: 64px; } .sk-hero { flex: none; } }

/* ---------- The Global Founder Story: a realistic Earth in the dark ---------- */
.mean-grid { display: grid; gap: 16px; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); margin: 14px 0; }
.mean-k { display: inline-block; justify-self: start; font: 700 12px/1 var(--display, inherit); letter-spacing: .1em; text-transform: uppercase; color: #fff; background: #7C3AED; padding: 6px 10px; border-radius: 999px; margin-bottom: 8px; }
.gs-live-h { margin: 0 24px 6px 0; font-size: 18px; color: #FFD27A; }
.gs-live-s + .gs-live-s { margin-top: 10px; padding-top: 10px; border-top: 1px solid rgba(255,255,255,.18); }
.gs-live-s p { margin: 3px 0; } .gs-live-hero { color: #E7EEFF; } .gs-live-lesson { color: #BFD3FF; font-size: 13px; }
.gs-x { position: absolute; top: 2px; right: 2px; width: 44px; height: 44px; border: 0; background: transparent; color: #fff; font-size: 24px; cursor: pointer; }
.gs-pills { list-style: none; margin: 16px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.gs-pills li { display: inline-flex; align-items: center; gap: 6px; padding: 7px 12px; border-radius: 999px; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.22); color: #E7EEFF; font-size: 13px; font-weight: 600; }
.gs-pills svg { color: #FFD27A; }
.gs-live-k { margin: 0 28px 2px 0; font: 700 11px/1 var(--display, inherit); letter-spacing: .08em; text-transform: uppercase; color: #9DF0C8; }
.gs-live-name { margin: 2px 0 6px; font: 800 22px/1.15 var(--display, inherit); color: #FFE08A; overflow-wrap: anywhere; }
.gs-live-tags { display: flex; flex-wrap: wrap; gap: 6px; margin: 4px 0 8px !important; }
.gs-chip { padding: 4px 9px; border-radius: 999px; background: rgba(255,255,255,.16); color: #fff; font: 700 11px/1 var(--sans); }
.gs-live-bf { color: #C9D6FF; font-size: 13px !important; }
.gs-live-price { margin: 8px 0 !important; font: 800 20px/1 var(--display, inherit); color: #fff; }
.gs-live-act { display: flex; flex-wrap: wrap; gap: 8px; }
.gs-live-act .btn-outline { color: #fff; border-color: rgba(255,255,255,.55); }
.gs-live-fine { margin-top: 8px !important; font-size: 11px !important; color: #AEB9E8; }
.gs-h3 { margin: 28px 0 10px; font-size: 22px; }
.gs-steps { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; counter-reset: gst; }
.gs-steps li { counter-increment: gst; position: relative; padding: 12px 14px 12px 56px; border: 1px solid var(--line); border-radius: 14px; background: #fff; display: grid; gap: 2px; }
.gs-steps li::before { content: counter(gst); position: absolute; left: 14px; top: 12px; width: 30px; height: 30px; border-radius: 50%; background: #7C3AED; color: #fff; display: grid; place-items: center; font: 800 14px/1 var(--display, inherit); }
.gs-steps span { color: var(--muted); font-size: 14px; }
.gs-lines { display: grid; gap: 14px; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); margin: 16px 0; }
.gs-lines .card { padding: 18px; } .gs-lines b { font: 800 17px/1.3 var(--display, inherit); display: block; margin-bottom: 6px; color: #3B1D8F; } .gs-lines p { margin: 0; font-size: 14px; }
.gs-trend-grid { display: grid; gap: 14px; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); margin: 16px 0; }
.gs-trend { padding: 18px; } .gs-trend p { margin: 6px 0; font-size: 14px; }
.gs-hot { font: 700 12px/1.3 var(--display, inherit); letter-spacing: .04em; text-transform: uppercase; color: #7C3AED; }
.gs-trend-n { color: var(--muted); } .gs-trend-n b { color: var(--ink); font-size: 18px; }
.gs-two { display: grid; gap: 16px; grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)); margin: 16px 0; }
.gs-two .card { padding: 20px; }
.gs-list { list-style: none; padding: 0; margin: 10px 0 0; display: grid; gap: 8px; }
.gs-list li { display: flex; gap: 8px; align-items: flex-start; font-size: 15px; } .gs-list li svg { flex: none; margin-top: 3px; color: #0E9F6E; }
.gs-links a { display: flex; align-items: center; gap: 8px; min-height: 44px; font-weight: 600; text-decoration: none; color: var(--ink); } .gs-links a svg { color: #7C3AED; } .gs-links a:hover { color: #7C3AED; }
.gs-share { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.gs-mission h2 { color: #fff; max-width: 30ch; }
.gs-mission-list { list-style: none; padding: 0; margin: 18px 0 0; display: grid; gap: 12px; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); }
.gs-mission-list li { padding: 14px 16px; border-radius: 14px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.2); color: #E7EEFF; font-size: 15px; } .gs-mission-list b { color: #FFE08A; }
.gs-live-act .btn-outline, .gs-act .btn-outline, .gs-act .btn-ghost { background: transparent; color: #fff; border-color: rgba(255,255,255,.6); }
.gs-live-act .btn-outline:hover, .gs-act .btn-outline:hover { background: rgba(255,255,255,.14); }
.gs-pills li { white-space: nowrap; }
.gs-live-more { min-height: 44px; display: inline-flex; align-items: center; }
.gs-hero { background: #000; color: #fff; padding: clamp(28px, 4.5vw, 52px) 0 clamp(20px, 3vw, 36px); }
.gs-head h1 { color: #fff; font-size: clamp(28px, 3.6vw, 46px); max-width: 24ch; margin: 6px 0 8px; }
.gs-head .lead-dark { max-width: 70ch; font-size: 16px; }
.gs-pills li { white-space: nowrap; }
.gs-stage { position: relative; margin: 20px 0 0; width: 100%; height: clamp(540px, calc(100vh - 120px), 880px); border-radius: 0; overflow: hidden; border: 0; background: #000; box-shadow: none; }
.gs-canvas { position: absolute; inset: 0; width: 100%; height: 100%; display: block; touch-action: pan-y; cursor: grab; outline-offset: -3px; }
.gs-canvas:active { cursor: grabbing; }
.gs-hud { position: absolute; z-index: 4; display: flex; align-items: center; gap: 8px; pointer-events: none; text-shadow: 0 1px 8px #000; }
.gs-hud-tl { top: 16px; left: 18px; }
.gs-logo { display: block; width: 112px; height: auto; opacity: .95; }
.gs-hud-bl { left: 18px; bottom: 22px; font: 500 12.5px/1.3 var(--display, inherit); letter-spacing: .02em; color: #C9CED8; max-width: max(140px, calc(50% - 170px)); }
.gs-pulse { flex: none; width: 8px; height: 8px; border-radius: 50%; background: #FFB020; box-shadow: 0 0 0 0 rgba(255,176,32,.7); animation: gsPulse 2.2s infinite; }
@keyframes gsPulse { 70% { box-shadow: 0 0 0 9px rgba(255,176,32,0); } 100% { box-shadow: 0 0 0 0 rgba(255,176,32,0); } }
.gs-tools { position: absolute; z-index: 5; top: 12px; right: 12px; display: flex; flex-direction: column; gap: 6px; }
.gs-tools[hidden], .gs-fly[hidden], .gs-card-live[hidden], .gs-filter[hidden], [data-gs-share][hidden], .gs-find[hidden] { display: none; }
.gs-tools button { width: 44px; height: 44px; border-radius: 12px; border: 1px solid rgba(255,255,255,.25); background: rgba(8,10,16,.8); color: #fff; font: 700 20px/1 var(--display, inherit); cursor: pointer; display: grid; place-items: center; }
.gs-tools button:hover, .gs-tools button[aria-pressed="true"] { border-color: #FFB020; color: #FFD27A; }
.gs-fly { position: absolute; left: 50%; transform: translateX(-50%); bottom: 16px; z-index: 5; white-space: nowrap; min-height: 52px; padding: 0 22px; border: 0; border-radius: 999px; background: #FFB020; color: #1A1200; font: 800 15px/1 var(--display, inherit); cursor: pointer; box-shadow: 0 10px 28px rgba(0,0,0,.6); display: inline-flex; align-items: center; gap: 8px; }
.gs-fly:hover { background: #FFC85A; }
.gs-card-live { position: absolute; z-index: 6; left: 14px; top: 62px; width: min(320px, calc(100% - 84px)); max-height: calc(100% - 150px); overflow: hidden; display: flex; flex-direction: column; padding: 16px 18px; border-radius: 16px; background: rgba(8,10,16,.94); border: 1px solid rgba(255,184,64,.55); color: #fff; font-size: 14px; animation: gsIn .3s ease-out; }
.gs-card-live.is-domain { border-color: #FFD27A; }
.gs-live-body { min-height: 0; overflow: auto; flex: 1; padding-right: 2px; }
.gs-live-name, .gs-live-h { margin-right: 48px; } .gs-live-k { margin-right: 48px; }
.gs-hud-bl { display: none; } .gs-stage.is-live .gs-hud-bl { display: flex; }
@media (scripting: none) { .gs-stage { height: auto; min-height: 0; padding: 64px 18px 18px; } .gs-stage noscript p { margin: 0; color: #E6E9F0; } .gs-stage noscript a { color: #FFD27A; } }
.gs-card-live p { margin: 3px 0; }
@keyframes gsIn { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.gs-live-h { margin: 0 28px 6px 0; font-size: 18px; color: #FFD27A; }
.gs-live-hero { color: #E6E9F0; }
.gs-live-links { display: flex; flex-wrap: wrap; gap: 4px 16px; }
.gs-live-more { color: #FFD27A; font-weight: 700; min-height: 44px; display: inline-flex; align-items: center; }
.gs-live-k { color: #FFB020; }
.gs-live-name { color: #fff; }
.gs-chip { background: rgba(255,255,255,.12); }
.gs-live-bf { color: #BFC6D6; }
.gs-live-fine { color: #98A0B2; }
.gs-card-live.is-domain .gs-live-hero { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; font-size: 13.5px; }
.gs-card-live.is-domain .gs-live-fine { display: none; }
.gs-live-act .btn-outline { background: transparent; color: #fff; border-color: rgba(255,255,255,.6); }
.gs-live-act .btn-outline:hover { background: rgba(255,255,255,.14); }
.gs-page section { margin-top: 44px; }
.gs-filter { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0; }
.gs-rows { list-style: none; margin: 8px 0 0; padding: 0; display: grid; gap: 0 28px; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--line); }
.gs-row { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 10px 2px; border-bottom: 1px solid var(--line); border-radius: 0; }
.gs-row[hidden] { display: none; }
.gs-row.is-flash { animation: gsFlash 1.6s ease-out; }
@keyframes gsFlash { 0%, 40% { background: #FFF1CC; } 100% { background: transparent; } }
.gs-row-main { min-width: 0; display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 10px; }
.gs-row-main p { flex: 1 0 100%; margin: 0; font-size: 13.5px; color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gs-co { font: 800 15px/1.2 var(--display, inherit); color: var(--ink); } .gs-yr { font: 700 12px/1 var(--display, inherit); color: #7C3AED; } .gs-where { font-size: 12.5px; color: var(--muted); }
.gs-row-act { flex: none; display: flex; align-items: center; gap: 6px; }
.gs-find, .gs-wiki { min-height: 44px; display: inline-flex; align-items: center; gap: 4px; padding: 0 12px; border-radius: 10px; font: 700 13px/1 var(--display, inherit); text-decoration: none; cursor: pointer; }
.gs-find { border: 1px solid var(--line-2); background: #fff; color: var(--ink); }
.gs-find:hover { background: #F3EEFF; border-color: #7C3AED; }
.gs-wiki { color: #5B21B6; border: 1px solid transparent; }
.gs-wiki:hover { background: #F3EEFF; }
.gs-mission { background: linear-gradient(180deg, #000, #1a1004); color: #fff; border-radius: 24px; padding: clamp(24px, 4vw, 44px); }
@media (max-width: 960px) { .gs-rows { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 640px) {
  .gs-stage { height: min(84vh, 700px); min-height: 500px; }
  .gs-logo { width: 92px; }
  .gs-fly { left: 12px; right: 12px; transform: none; justify-content: center; bottom: 14px; }
  .gs-hud-bl { bottom: 78px; left: 14px; right: 14px; max-width: none; font-size: 12px; }
  .gs-card-live { left: 10px; right: 10px; width: auto; top: auto; bottom: 108px; max-height: 44%; }
  .gs-card-live.is-domain .gs-live-hero, .gs-card-live.is-domain .gs-live-bf, .gs-card-live.is-domain .gs-live-tags { display: none; }
  .gs-row-act .gs-find { padding: 0 10px; } .gs-long, .gs-where { display: none; } .gs-row-main { flex: 1; } .gs-wiki { padding: 0 8px; }
}
@media (prefers-reduced-motion: reduce) { .gs-pulse, .gs-card-live, .gs-row.is-flash { animation: none; } }

/* Domain Assets: hold, build, sell */
.model { padding: 18px; display: grid; gap: 8px; align-content: start; } .model p { margin: 0; font-size: 14.5px; }
.pad-note { padding: 16px 18px; }

.featured-name { white-space: nowrap; overflow: hidden; overflow-wrap: normal; }
.featured-name wbr { display: none; }
.fit1 { white-space: nowrap; overflow: hidden; overflow-wrap: normal; min-width: 0; }
.fit1 wbr { display: none; }
.name-row .domain-name { flex: 1 1 auto; min-width: 0; }

/* Name cards: the name is the hero. A plate on top, then the use, the price and the actions, the same on every card. */
.domain-card { display: flex; flex-direction: column; gap: 10px; padding: 0 0 16px; overflow: visible; }
.domain-card > *:not(.dc-plate) { margin-left: 16px; margin-right: 16px; }
.dc-plate { padding: 14px 16px 12px; border-radius: 4px 4px 0 0; background: linear-gradient(180deg, #F4F7FF, #FFFFFF); border-bottom: 1px solid #E3E8F5; display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.domain-card[data-tier="elite"] .dc-plate { background: linear-gradient(180deg, #F2ECFF, #FFFFFF); border-bottom-color: #DDD2FA; }
.domain-card[data-tier="legend"] .dc-plate { background: linear-gradient(180deg, #FFF3CF, #FFFFFF); border-bottom-color: #F0D58A; }
.domain-card[data-tier="pick"] .dc-plate { background: linear-gradient(180deg, #E9F8F3, #FFFFFF); border-bottom-color: #CBEBDD; }
.domain-card .dc-plate .name-row { flex-wrap: nowrap; gap: 10px; }
.domain-card .dc-plate .name-plate { font-size: clamp(22px, 2.1vw, 28px); line-height: 1.1; letter-spacing: -0.02em; }
.domain-card .dc-plate .np-base { color: #0B1640; }
.dc-meta { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; }
.dc-meta span { padding: 2px 9px; border-radius: 999px; background: rgba(11,22,64,.07); color: #3B4663; font: 700 11.5px/1.5 var(--display, inherit); letter-spacing: .02em; }
.domain-card .best-for { min-height: 2.9em; align-content: flex-start; }
.domain-card .card-actions { margin-top: auto; }
.domain-card .card-verify { margin-top: 0; }
@media (max-width: 640px) { .domain-card .dc-plate .name-plate { font-size: clamp(20px, 6.2vw, 26px); } }

/* Names page: the same presentation for the card view */
.names-box:not(.is-cards) .dc-meta { display: none; }
.names-box.is-cards .names-table tr { padding: 14px 16px 16px; gap: 10px; background: linear-gradient(180deg, #F4F7FF 0, #fff 130px); overflow: visible; }
.names-box.is-cards .names-table tr[data-cat="Premium"] { background: linear-gradient(180deg, #F2ECFF 0, #fff 130px); }
.names-box.is-cards .names-table tr[data-cat="Super Premium"] { background: linear-gradient(180deg, #FFF3CF 0, #fff 130px); }
.names-box.is-cards .names-table tr[data-cat="General"] { background: linear-gradient(180deg, #E9F8F3 0, #fff 130px); }
.names-box.is-cards .names-table td:nth-child(1) { font-size: clamp(22px, 2vw, 27px); line-height: 1.1; letter-spacing: -0.02em; }
.names-box.is-cards .names-table .name-row { flex-wrap: nowrap; gap: 10px; }
.names-box.is-cards .names-table .np-base { color: #0B1640; }
.names-box.is-cards .names-table td:nth-child(1) .best-for { min-height: 2.9em; align-content: flex-start; }
.names-box.is-cards .names-table td:nth-child(3) .price-main { font-size: 22px; }

/* ===== Name cards v3: the name sits on a dark deed plate, the facts sit below it on paper ===== */
.dc-plate { position: relative; overflow: hidden; background: #0B1640; border: 0; color: #fff; }
.dc-plate::before { content: ""; position: absolute; inset: 0; background: repeating-linear-gradient(135deg, rgba(255,255,255,.035) 0 1px, transparent 1px 11px); pointer-events: none; }
.dc-plate::after { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 4px; background: #7C86A8; }
.domain-card[data-tier="elite"] .dc-plate, .names-table tr[data-cat="Premium"] .dc-plate { background: radial-gradient(120% 140% at 100% 0, #3A1E86 0, #0B1640 62%); }
.domain-card[data-tier="legend"] .dc-plate, .names-table tr[data-cat="Super Premium"] .dc-plate { background: radial-gradient(120% 140% at 100% 0, #7A5A10 0, #0B1640 64%); }
.domain-card[data-tier="pick"] .dc-plate, .names-table tr[data-cat="General"] .dc-plate { background: radial-gradient(120% 140% at 100% 0, #0F6B5C 0, #0B1640 64%); }
.domain-card[data-tier="elite"] .dc-plate::after, .names-table tr[data-cat="Premium"] .dc-plate::after { background: #A78BFA; }
.domain-card[data-tier="legend"] .dc-plate::after, .names-table tr[data-cat="Super Premium"] .dc-plate::after { background: #F5B935; }
.domain-card[data-tier="pick"] .dc-plate::after, .names-table tr[data-cat="General"] .dc-plate::after { background: #34D1B0; }
.dc-plate > * { position: relative; z-index: 1; }
.dc-plate .np-base, .domain-card .dc-plate .np-base, .names-box.is-cards .names-table .dc-plate .np-base { color: #fff; text-shadow: none; }
.dc-plate .np-ext { color: #FFD27A; }
.dc-plate .copy-name { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.35); color: #fff; }
.dc-plate .copy-name:hover { background: rgba(255,255,255,.2); }
.dc-plate .tier { box-shadow: 0 0 0 1px rgba(255,255,255,.55); }
.dc-plate .dc-meta span { background: rgba(255,255,255,.12); color: #D5DCF3; }
.dc-plate .dc-meta .dc-plan { background: #FFD27A; color: #2A1A00; }
.domain-card { padding: 0 0 16px; border-radius: 6px; background: #FFFDF8; }
.domain-card .dc-plate { padding: 18px 16px 14px; border-radius: 3px 3px 0 0; }
.domain-card .dc-plate .name-plate { font-size: clamp(23px, 2.2vw, 29px); }
.domain-card .price-main { font-size: 24px; color: #0B1640; }
/* Browse names, card view */
.names-box.is-cards .names-table tr, .names-box.is-cards .names-table tr[data-cat] { padding: 0 0 16px; gap: 10px; overflow: hidden; background: #FFFDF8; }
.names-box.is-cards .names-table td:nth-child(2) { display: none; }
.names-box.is-cards .names-table td:nth-child(1) { padding: 0; font-size: 16px; letter-spacing: 0; }
.names-box.is-cards .names-table td:nth-child(1) > :not(.dc-plate) { margin-left: 16px; margin-right: 16px; }
.names-box.is-cards .names-table td:nth-child(1) > .best-for { margin-top: 12px; }
.names-box.is-cards .names-table td:nth-child(1) .dc-plate { padding: 18px 16px 14px; margin-bottom: 0; }
.names-box.is-cards .names-table td:nth-child(1) .domain-name { font-size: clamp(23px, 2.2vw, 29px); line-height: 1.1; letter-spacing: -0.02em; }
.names-box.is-cards .names-table td:nth-child(n+3) { margin-left: 16px; margin-right: 16px; }
.names-box:not(.is-cards) .dc-tier { display: none; }
.names-box:not(.is-cards) .dc-plate { background: none; color: inherit; overflow: visible; }
.names-box:not(.is-cards) .dc-plate::before, .names-box:not(.is-cards) .dc-plate::after { display: none; }
.names-box:not(.is-cards) .dc-plate .np-base { color: var(--name-ink, #0B1640); }
.names-box:not(.is-cards) .dc-plate .np-ext { color: #B07A12; }
.names-box:not(.is-cards) .dc-plate .copy-name { background: transparent; color: inherit; border-color: var(--line-2, #c9ceda); }
.names-box:not(.is-cards) .dc-plate .dc-meta { display: none; }

/* Market board: live counts that open the market */
.mkt h2 { margin: 0 0 6px; } .mkt-lead { max-width: 64ch; color: var(--muted); margin: 0 0 18px; }
.mkt-sig { list-style: none; margin: 0 0 18px; padding: 0; display: grid; gap: 10px; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); }
.mkt-sig a { display: flex; flex-direction: column; gap: 4px; height: 100%; padding: 14px 16px; border-radius: 10px; background: #0B1640; color: #D5DCF3; text-decoration: none; border-left: 4px solid #F5B935; }
.mkt-sig b { font: 800 clamp(24px, 3vw, 32px)/1 var(--display, inherit); color: #fff; letter-spacing: -0.02em; }
.mkt-sig span { font-size: 13.5px; line-height: 1.35; }
.mkt-sig a:hover, .mkt-sig a:focus-visible { background: #14235F; outline: 2px solid #F5B935; outline-offset: 2px; }
.mkt-lanes { display: grid; gap: 12px; grid-template-columns: repeat(auto-fit, minmax(270px, 1fr)); }
.mkt-lane { display: flex; flex-direction: column; gap: 6px; padding: 16px 18px 16px; border: 1px solid var(--line, #dfe3ee); border-radius: 10px; background: #fff; }
.mkt-lane-top { display: flex; justify-content: space-between; align-items: flex-start; gap: 10px; } .mkt-lane h3 { margin: 0; font-size: 17px; line-height: 1.25; }
.mkt-n { flex: none; min-width: 34px; padding: 2px 9px; text-align: center; border-radius: 999px; background: #0B1640; color: #FFD27A; font: 800 14px/1.6 var(--display, inherit); }
.mkt-lane.is-empty .mkt-n { background: #E8EBF3; color: #5B6479; }
.mkt-hot { margin: 0; color: #5B21B6; font-weight: 700; font-size: 13px; } .mkt-note { margin: 0; font-size: 14px; color: #3B4663; }
.mkt-chips { display: flex; flex-wrap: wrap; gap: 6px; margin: 4px 0 0; }
.mkt-chips a { padding: 3px 10px; border-radius: 6px; background: #F3EEFF; color: #0B1640; font-weight: 700; font-size: 13px; text-decoration: none; }
.mkt-chips a:hover { background: #E4DAFF; }
.mkt-go { margin-top: auto; padding-top: 8px; min-height: 44px; display: inline-flex; align-items: center; font-weight: 800; color: #1747C9; }
.mkt-more { padding: 3px 4px; font-size: 13px; font-weight: 700; color: #5B6479; }

/* The private deal says plainly that it has no escrow protection. */
.pc2 .po-warn { display: inline-flex; align-items: center; gap: 6px; justify-self: start; font-size: 12.5px; font-weight: 700; color: #7A3E00; background: #FFF1D6; border: 1px solid #F0C36A; padding: 3px 9px; border-radius: 8px; }
.pc2 .po-warn .icon { flex: none; }
/* Escrow is the only recommended way to pay: its badge always shows, whichever card is highlighted. */
.pc2 .pay-opt.pay-escrow .rec, .pc2 .pay-opt.pay-escrow.is-pick .rec { display: inline-block; }

/* Why this price, and the per-name FAQ */
.why-price { margin: 28px 0; }
.wp-list { margin: 0; display: grid; gap: 0; border: 1px solid var(--line); border-radius: 12px; background: #fff; overflow: hidden; }
.wp-list > div { display: grid; grid-template-columns: 150px 1fr; gap: 6px 16px; padding: 14px 16px; border-top: 1px solid var(--line); }
.wp-list > div:first-child { border-top: 0; }
.wp-list dt { font-weight: 700; color: var(--ink); }
.wp-list dd { margin: 0; color: var(--ink-2); }
.wp-list dd p { margin: 0; }
.wp-comps { margin: 0 0 6px; padding-left: 18px; }
@media (max-width: 640px) { .wp-list > div { grid-template-columns: 1fr; } }
.name-faq { margin: 28px 0; }
.name-faq .faq-body { padding: 4px 16px 14px; }

/* ===== Premium presentation of names (cards, name page, price). Presentation only: no wording, prices or logic changed. ===== */
:root { --pm-gold: #C9A24B; --pm-gold-soft: #E8D4A2; --pm-navy: #0A1230; --pm-line: #E3E6EE; }
/* Cards: quiet border, soft depth, gold hairline, gentle lift */
.domain-card, .names-box.is-cards .names-table tr, .names-box.is-cards .names-table tr[data-cat] {
  border: 1px solid var(--pm-line); border-radius: 16px; background: #fff; box-shadow: 0 1px 2px rgba(10,18,48,.05), 0 10px 28px -12px rgba(10,18,48,.22);
  overflow: hidden; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.domain-card:hover, .names-box.is-cards .names-table tr:hover { transform: translateY(-3px); border-color: var(--pm-gold-soft); box-shadow: 0 2px 4px rgba(10,18,48,.06), 0 18px 36px -14px rgba(10,18,48,.3); }
@media (prefers-reduced-motion: reduce) { .domain-card, .names-box.is-cards .names-table tr { transition: none; } .domain-card:hover, .names-box.is-cards .names-table tr:hover { transform: none; } }
.dc-plate { background: linear-gradient(160deg, #101A45 0%, var(--pm-navy) 70%); border-radius: 0; }
.dc-plate::before { background: radial-gradient(90% 120% at 100% 0, rgba(201,162,75,.16), transparent 60%); }
.dc-plate::after, .domain-card[data-tier] .dc-plate::after, .names-table tr[data-cat] .dc-plate::after { height: 2px; background: linear-gradient(90deg, var(--pm-gold), rgba(201,162,75,0)); }
.domain-card[data-tier="elite"] .dc-plate, .names-table tr[data-cat="Premium"] .dc-plate { background: linear-gradient(160deg, #1B1450 0%, var(--pm-navy) 72%); }
.domain-card[data-tier="legend"] .dc-plate, .names-table tr[data-cat="Super Premium"] .dc-plate { background: linear-gradient(160deg, #3A2A08 0%, var(--pm-navy) 72%); }
.domain-card[data-tier="pick"] .dc-plate, .names-table tr[data-cat="General"] .dc-plate { background: linear-gradient(160deg, #0B3B3A 0%, var(--pm-navy) 72%); }
.dc-plate .np-base { font-weight: 700; letter-spacing: -0.025em; }
.dc-plate .np-ext { color: var(--pm-gold-soft); font-weight: 600; }
.dc-plate .tier { box-shadow: none; border: 1px solid rgba(232,212,162,.55); background: rgba(255,255,255,.06); color: #F6E9C6; letter-spacing: .08em; text-transform: uppercase; font-size: 11px; }
.dc-plate .dc-meta span { background: rgba(255,255,255,.08); color: #C9D1EA; border-radius: 6px; }
.dc-plate .dc-meta .dc-plan { background: rgba(232,212,162,.16); color: #F6E9C6; }
.domain-card .price-main, .names-box.is-cards .names-table td:nth-child(3) .price-main { color: var(--pm-navy); font-weight: 800; letter-spacing: -0.01em; }
.domain-card .btn-primary, .names-box.is-cards .btn-primary { background: var(--pm-navy); border-color: var(--pm-navy); box-shadow: none; }
.domain-card .btn-primary:hover, .names-box.is-cards .btn-primary:hover { background: #17265F; }
/* Name page: calm, confident hero */
.domain-hero { background: linear-gradient(155deg, #101A45 0%, var(--pm-navy) 65%); border: 1px solid rgba(232,212,162,.22); border-radius: 22px; box-shadow: 0 24px 60px -28px rgba(10,18,48,.6); position: relative; overflow: hidden; }
.domain-hero::before { content: ""; position: absolute; left: clamp(22px,4vw,40px); top: 0; width: 72px; height: 3px; background: var(--pm-gold); }
.domain-hero::after { content: ""; position: absolute; inset: 0; background: radial-gradient(70% 90% at 100% 0, rgba(201,162,75,.14), transparent 62%); pointer-events: none; }
.domain-hero > * { position: relative; z-index: 1; }
.domain-h1 { font-weight: 700; letter-spacing: -0.035em; font-size: clamp(40px, 7vw, 68px); line-height: 1.02; text-shadow: none; }
.domain-h1 .np-ext { color: var(--pm-gold-soft); }
.domain-hero .tier { border: 1px solid rgba(232,212,162,.55); background: rgba(255,255,255,.06); color: #F6E9C6; text-transform: uppercase; letter-spacing: .08em; font-size: 11.5px; }
.magic-line { border: 0; border-left: 3px solid var(--pm-gold); border-radius: 0 12px 12px 0; background: rgba(255,255,255,.05); box-shadow: none; }
.magic-line::before, .ml-kana { display: none; }
.magic-line .ml-head { font-family: inherit; font-weight: 700; color: #F6E9C6; text-shadow: none; letter-spacing: -0.01em; }
.tag-row span { background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.14); color: #D5DCF3; }
/* Buy box and price: a clean framed figure instead of the sticker */
.buybox { border: 1px solid var(--pm-line); border-radius: 20px; box-shadow: 0 24px 60px -30px rgba(10,18,48,.4); }
.price-xl .price-main, .price-lg .price-main { background: none; border: 0; box-shadow: none; text-shadow: none; transform: none; padding: 0; margin: 0; color: var(--pm-navy); font-weight: 800; letter-spacing: -0.03em; }
.buy-price { padding-bottom: 14px; border-bottom: 1px solid var(--pm-line); }
.buy-price > .muted { text-transform: uppercase; letter-spacing: .1em; font-size: 12px; font-weight: 700; color: #5B6479; }
.buybox .btn-primary { background: var(--pm-navy); border-color: var(--pm-navy); box-shadow: none; }
/* Readable gold on white */
.names-table .np-ext, .pick .np-ext, .domain-name .np-ext, .cc-name .np-ext, .crumb-name .np-ext, .names-box:not(.is-cards) .dc-plate .np-ext { color: #8A5D00; }
.dc-plate .np-ext { color: var(--pm-gold-soft); }
/* Accessibility polish: links readable on dark panels, bigger tap targets */
.domain-hero a:not(.btn), .dc-plate a:not(.btn) { color: #A9C8FF; }
.domain-hero a:not(.btn):hover { color: #fff; }
.cmp-pick input[type=checkbox], input[data-compare] { width: 24px; height: 24px; min-width: 24px; }
.small a, a.small, .muted.small a, .verify-link { display: inline-block; min-height: 24px; line-height: 24px; }
.table-box:focus-visible { outline: 2px solid #1747C9; outline-offset: 2px; }
.bf-v a, .crumbs a { display: inline-block; min-height: 24px; line-height: 24px; }
/* Tax estimate box */
.tax-est { margin: 14px 0; padding: 14px 16px; border: 1px solid var(--pm-line, #E3E6EE); border-radius: 12px; background: #F8F9FC; display: grid; gap: 8px; }
.tax-est label { font-weight: 700; font-size: 14px; }
.tax-est select { width: 100%; min-height: 44px; }
.tax-est-out { margin: 0; font-weight: 600; color: #0A1230; }
/* Fix: the "In your cart" badge sits half outside the card's top edge, so the card must not clip it */
.domain-card, .names-box.is-cards .names-table tr, .names-box.is-cards .names-table tr[data-cat] { overflow: visible; }
.dc-plate { border-radius: 15px 15px 0 0; }
.domain-card:has(.btn-cart[aria-pressed="true"])::after, .names-box.is-cards .names-table tr:has(.btn-cart[aria-pressed="true"])::after { z-index: 5; }
.domain-card .dc-plate, .names-box.is-cards .names-table td:nth-child(1) .dc-plate { border-radius: 15px 15px 0 0; }

/* LF Story: founder blueprint */
.lfs { margin: 56px 0; }
.lfs h2 { margin: 6px 0 10px; letter-spacing: -0.02em; }
.lfs .lead { max-width: 70ch; color: var(--muted, #4B5468); }
.lfs-stages { list-style: none; margin: 28px 0 0; padding: 0; display: grid; gap: 14px; counter-reset: none; }
.lfs-stage { position: relative; display: grid; grid-template-columns: 64px 1fr; gap: 18px; padding: 22px 22px 20px; background: #fff; border: 1px solid var(--pm-line, #E3E6EE); border-radius: 18px; box-shadow: 0 10px 28px -18px rgba(10,18,48,.35); }
.lfs-stage::before { content: ""; position: absolute; left: 53px; top: 100%; width: 2px; height: 14px; background: linear-gradient(var(--pm-gold, #C9A24B), transparent); }
.lfs-stage:last-child::before { display: none; }
.lfs-n { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 16px; background: linear-gradient(155deg, #101A45, #0A1230); color: #F6E9C6; font: 800 22px/1 var(--display, inherit); letter-spacing: -0.02em; box-shadow: inset 0 0 0 1px rgba(232,212,162,.35); }
.lfs-k { display: inline-block; font-size: 12px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: #8A5D00; }
.lfs-body h3 { margin: 4px 0 10px; font-size: clamp(18px, 2.2vw, 22px); line-height: 1.25; }
.lfs-body p { margin: 0 0 8px; color: #2A3550; }
.lfs-line { margin-top: 12px !important; padding-left: 12px; border-left: 3px solid var(--pm-gold, #C9A24B); font-weight: 700; color: #0A1230 !important; }
.lfs-qs { margin-top: 24px; display: grid; gap: 14px; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
.lfs-q { padding: 20px; border-radius: 16px; background: linear-gradient(160deg, #101A45 0%, #0A1230 75%); color: #D5DCF3; border: 1px solid rgba(232,212,162,.2); }
.lfs-q h3 { margin: 6px 0 8px; color: #fff; font-size: 18px; }
.lfs-q p { margin: 0; font-size: 15px; line-height: 1.55; }
.lfs-qk { font-size: 12px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: #E8D4A2; }
.lfs-stories { margin-top: 24px; display: grid; gap: 14px; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.lfs-story { display: flex; flex-direction: column; gap: 8px; padding: 22px; background: #fff; border: 1px solid var(--pm-line, #E3E6EE); border-radius: 16px; }
.lfs-story h3 { margin: 0; font-size: 22px; letter-spacing: -0.02em; }
.lfs-story p { margin: 0; color: #2A3550; }
.lfs-from { font-size: 13px; font-weight: 800; color: #8A5D00; letter-spacing: .02em; }
.lfs-lesson { padding: 10px 12px; border-radius: 10px; background: #F8F5EC; }
.lfs-src { margin-top: auto; display: inline-flex; align-items: center; gap: 6px; min-height: 24px; font-weight: 700; color: #1747C9; }
.lfs-flow { list-style: none; margin: 24px 0 8px; padding: 0; display: grid; gap: 12px; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); counter-reset: lfs; }
.lfs-flow li { counter-increment: lfs; display: flex; flex-direction: column; gap: 6px; padding: 18px; border-radius: 14px; background: #F8F9FC; border: 1px solid var(--pm-line, #E3E6EE); }
.lfs-flow li::before { content: counter(lfs, decimal-leading-zero); font: 800 13px/1 var(--display, inherit); color: #8A5D00; letter-spacing: .08em; }
.lfs-flow b { color: #0A1230; font-size: 17px; }
.lfs-flow span { color: #2A3550; font-size: 15px; }
.lfs-30 { margin: 12px 0 0; padding-left: 22px; display: grid; gap: 8px; color: #2A3550; max-width: 78ch; }
@media (max-width: 560px) { .lfs-stage { grid-template-columns: 1fr; gap: 10px; padding: 18px; } .lfs-n { width: 48px; height: 48px; font-size: 18px; border-radius: 12px; } .lfs-stage::before { left: 40px; } }

/* LF Story: the star sky. Every star is a listed name. */
.gs-stars { position: absolute; inset: 0; z-index: 3; pointer-events: none; }
.gs-star { position: absolute; width: 26px; height: 26px; margin: -13px 0 0 -13px; padding: 0; border: 0; border-radius: 50%; background: transparent; cursor: pointer; pointer-events: auto; }
.gs-star::before { content: ""; position: absolute; left: 50%; top: 50%; width: calc(5px * var(--sz, 1)); height: calc(5px * var(--sz, 1)); transform: translate(-50%, -50%); border-radius: 50%;
  background: #FFF6E0; box-shadow: 0 0 6px 1px rgba(255,236,190,.75), 0 0 14px 3px rgba(255,200,120,.25); animation: gsTwinkle 4.6s ease-in-out var(--tw, 0s) infinite; }
.gs-star.is-elite::before { background: #E9E0FF; box-shadow: 0 0 6px 1px rgba(200,180,255,.8), 0 0 16px 3px rgba(167,139,250,.3); }
.gs-star.is-legend::before { background: #FFE6A3; box-shadow: 0 0 7px 2px rgba(255,214,120,.9), 0 0 18px 4px rgba(245,185,53,.35); }
.gs-star::after { content: ""; position: absolute; inset: 3px; border-radius: 50%; border: 1px solid rgba(255,236,190,0); transition: border-color .2s; }
.gs-star:hover::after { border-color: rgba(255,236,190,.45); }
.gs-star:focus-visible { outline: 2px solid #FFD27A; outline-offset: 2px; }
.gs-star.is-on::before { animation: gsBlink .9s ease-out 3, gsTwinkle 4.6s ease-in-out 2.7s infinite; background: #fff; }
.gs-star.is-on::after { border-color: rgba(255,214,120,.9); box-shadow: 0 0 12px rgba(255,214,120,.55); }
@keyframes gsTwinkle { 0%, 100% { opacity: .55; } 50% { opacity: 1; } }
@keyframes gsBlink { 0% { transform: translate(-50%, -50%) scale(1); opacity: 1; } 35% { transform: translate(-50%, -50%) scale(2.6); opacity: 1; } 70% { transform: translate(-50%, -50%) scale(1); opacity: .35; } 100% { transform: translate(-50%, -50%) scale(1.4); opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .gs-star::before, .gs-star.is-on::before { animation: none; opacity: 1; } }
.gs-star-card { position: absolute; z-index: 4; width: min(280px, calc(100% - 16px)); padding: 16px 16px 14px; border-radius: 14px; background: rgba(10,18,48,.94); color: #D5DCF3;
  border: 1px solid rgba(232,212,162,.35); box-shadow: 0 18px 40px -12px rgba(0,0,0,.7); backdrop-filter: blur(6px); display: grid; gap: 6px; }
.gs-sc-x { position: absolute; top: 6px; right: 6px; width: 32px; height: 32px; border: 0; border-radius: 8px; background: transparent; color: #C9D1EA; font-size: 20px; cursor: pointer; }
.gs-sc-x:hover, .gs-sc-x:focus-visible { background: rgba(255,255,255,.1); color: #fff; }
.gs-sc-tier { font-size: 12.5px; font-weight: 700; color: #E8D4A2; }
.gs-sc-name { font-size: 22px; line-height: 1.15; color: #fff; letter-spacing: -0.02em; overflow-wrap: anywhere; padding-right: 26px; }
.gs-sc-price { font-weight: 800; color: #F6E9C6; font-size: 17px; }
.gs-sc-line { margin: 0; font-size: 14px; line-height: 1.45; }
.gs-sc-acts { display: flex; align-items: center; gap: 14px; margin-top: 4px; flex-wrap: wrap; }
.gs-sc-buy { color: #FFD27A; font-weight: 700; min-height: 24px; display: inline-flex; align-items: center; }

/* Smart Help */
.qa-row { display: grid; gap: 10px; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); }
.qa-tile { display: flex; gap: 12px; align-items: flex-start; padding: 14px 16px; min-height: 64px; border-radius: 14px; background: #fff; border: 1px solid var(--pm-line, #E3E6EE); color: #0A1230; text-decoration: none; }
.qa-tile:hover, .qa-tile:focus-visible { border-color: #C9A24B; box-shadow: 0 8px 22px -14px rgba(10,18,48,.4); }
.qa-tile .icon { flex: none; color: #1747C9; margin-top: 2px; }
.qa-tile strong { display: block; font-size: 15px; } .qa-tile em { display: block; font-style: normal; font-size: 13px; color: #5B6479; }
.assist-suggest { margin-top: 10px; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.as-k { font-size: 13px; font-weight: 700; color: #5B6479; margin-right: 2px; }
.as-chip { min-height: 36px; padding: 6px 12px; border-radius: 999px; border: 1px solid #C9CEDA; background: #F8F9FC; color: #0A1230; font-size: 14px; cursor: pointer; text-align: left; }
.as-chip:hover, .as-chip:focus-visible { border-color: #1747C9; background: #EEF3FF; }
.as-doc { background: #0A1230; color: #F6E9C6; border-color: #0A1230; }
.as-doc:hover, .as-doc:focus-visible { background: #17265F; color: #fff; }
.doctor { padding: clamp(18px, 3vw, 28px); border-radius: 20px; }
.doctor-head { display: flex; gap: 14px; align-items: flex-start; }
.doctor-head h2 { margin: 0 0 4px; } .doctor-head p { margin: 0; max-width: 68ch; }
.doctor-badge { flex: none; display: grid; place-items: center; width: 46px; height: 46px; border-radius: 12px; background: linear-gradient(155deg, #101A45, #0A1230); color: #E8D4A2; }
.doctor-form { display: flex; gap: 10px; margin: 18px 0 8px; flex-wrap: wrap; }
.doctor-form input { flex: 1 1 240px; min-height: 48px; font-size: 17px; }
.doctor-out { margin-top: 14px; padding: 16px; border-radius: 14px; background: #F8F9FC; border: 1px solid var(--pm-line, #E3E6EE); }
.doctor-out.is-err { background: #FFF4F2; border-color: #F3C2B8; color: #7A1F12; }
.doctor-out.is-busy { color: #3B4663; }
.dr-head { display: flex; flex-wrap: wrap; gap: 8px 14px; align-items: baseline; margin-bottom: 10px; }
.dr-name { font-size: 20px; color: #0A1230; overflow-wrap: anywhere; }
.dr-verdict { font-weight: 700; padding: 2px 10px; border-radius: 999px; background: #E7F6EE; color: #0B5D3B; }
.is-warn .dr-verdict { background: #FFF1D6; color: #7A3E00; } .is-bad .dr-verdict { background: #FDE2DE; color: #8A1C0C; }
.dr-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.dr-f { display: grid; grid-template-columns: 112px 1fr; gap: 12px; padding: 12px 14px; border-radius: 12px; background: #fff; border: 1px solid var(--pm-line, #E3E6EE); }
.dr-lvl { align-self: start; text-align: center; font-size: 13px; font-weight: 800; padding: 3px 8px; border-radius: 8px; background: #E7F6EE; color: #0B5D3B; }
.dr-f.is-warn .dr-lvl { background: #FFF1D6; color: #7A3E00; } .dr-f.is-bad .dr-lvl { background: #FDE2DE; color: #8A1C0C; } .dr-f.is-info .dr-lvl { background: #E8EEFF; color: #1B3A9E; }
.dr-b strong { color: #0A1230; } .dr-b p { margin: 4px 0 0; color: #2A3550; }
.dr-fix { margin: 8px 0 0; padding-left: 20px; color: #2A3550; }
.dr-guide { display: inline-flex; min-height: 24px; align-items: center; margin-top: 6px; font-weight: 700; color: #1747C9; }
@media (max-width: 560px) { .dr-f { grid-template-columns: 1fr; } .dr-lvl { justify-self: start; } }
.next-steps.is-checklist { list-style: none; padding-left: 0; }
.next-steps.is-checklist li { display: grid; grid-template-columns: 26px 1fr; gap: 8px; align-items: start; padding: 4px 0; }
.step-cb { width: 22px; height: 22px; margin: 2px 0 0; accent-color: #0B5D3B; }
.next-steps li.is-done .step-lab { color: #5B6479; text-decoration: line-through; text-decoration-color: rgba(91,100,121,.5); }
.step-prog { margin: 6px 0 0; color: #0B5D3B; font-weight: 600; }
.doctor-form input { padding: 10px 14px; border: 1.5px solid #C9CEDA; border-radius: 12px; background: #fff; color: #0A1230; font: inherit; font-size: 17px; }
.doctor-form input:focus-visible { outline: 2px solid #1747C9; outline-offset: 1px; border-color: #1747C9; }
.doctor-form .btn { min-height: 48px; }

/* Domain Life Clock */
.lc { padding: clamp(18px, 3vw, 30px); border-radius: 20px; margin: 40px 0; }
.lc-head h2 { margin: 0 0 6px; } .lc-head p { margin: 0; max-width: 70ch; }
.lc-form, .cth-form { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; margin: 18px 0 10px; }
.lc-field { display: grid; gap: 6px; flex: 1 1 200px; } .lc-field label { font-weight: 700; font-size: 14px; color: #0A1230; }
.lc-field input { min-height: 48px; padding: 10px 14px; border: 1.5px solid #C9CEDA; border-radius: 12px; background: #fff; color: #0A1230; font: inherit; font-size: 16px; }
.lc-field input:focus-visible { outline: 2px solid #1747C9; outline-offset: 1px; border-color: #1747C9; }
.lc-or { align-self: center; padding-top: 22px; color: #5B6479; font-weight: 700; }
.lc-form .btn { min-height: 48px; }
.lc-out { margin: 16px 0; padding: 18px; border-radius: 16px; background: #F8F9FC; border: 1px solid var(--pm-line, #E3E6EE); }
.lc-out.is-err { background: #FFF4F2; border-color: #F3C2B8; color: #7A1F12; }
.lc-now { display: flex; flex-wrap: wrap; gap: 6px 14px; align-items: baseline; }
.lc-name { font-size: 20px; color: #0A1230; overflow-wrap: anywhere; } .lc-state { font-weight: 700; color: #2A3550; }
.lc-out.is-s-grace .lc-state, .lc-out.is-s-redeem .lc-state, .lc-out.is-s-pending .lc-state { color: #8A1C0C; }
.lc-track { position: relative; display: flex; gap: 3px; height: 46px; margin: 34px 0 14px; }
.lc-seg { position: relative; min-width: 8px; border-radius: 6px; opacity: .55; }
.lc-seg em { position: absolute; left: 6px; bottom: calc(100% + 4px); font-style: normal; font-size: 12px; font-weight: 700; color: #2A3550; white-space: nowrap; }
.lc-seg.s-pending em { display: none; }
.lc-seg.is-now { opacity: 1; box-shadow: 0 0 0 2px #0A1230; }
.s-active, .lc-legend .s-active::before { background: #2E9E6B; } .s-grace, .lc-legend .s-grace::before { background: #E3A63B; }
.s-redeem, .lc-legend .s-redeem::before { background: #D9663A; } .s-pending, .lc-legend .s-pending::before { background: #B3261E; }
.s-free, .lc-legend .s-free::before { background: #7C86A8; }
.lc-mark { position: absolute; top: -6px; bottom: -6px; width: 3px; margin-left: -1.5px; background: #0A1230; border-radius: 2px; }
.lc-mark b { position: absolute; top: 100%; left: 50%; transform: translateX(-50%); margin-top: 4px; font-size: 12px; color: #0A1230; white-space: nowrap; }
.lc-facts { display: grid; gap: 8px 18px; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); margin: 26px 0 6px; }
.lc-facts dt { font-size: 13px; color: #5B6479; } .lc-facts dd { margin: 2px 0 0; font-weight: 700; color: #0A1230; }
.lc-legend { list-style: none; padding: 0; margin: 14px 0; display: grid; gap: 8px; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); }
.lc-legend li { display: grid; grid-template-columns: 14px 1fr; gap: 2px 10px; font-size: 14px; } .lc-legend li::before { content: ""; grid-row: 1 / span 2; width: 14px; height: 14px; margin-top: 3px; border-radius: 4px; }
.lc-legend .s-active, .lc-legend .s-grace, .lc-legend .s-redeem, .lc-legend .s-pending, .lc-legend .s-free { background: none; }
.lc-legend strong { color: #0A1230; } .lc-legend span { color: #3B4663; }
.cth { padding: clamp(18px, 3vw, 28px); border-radius: 20px; margin: 0 0 40px; }
.cth-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.cth-cell { padding: 14px; border-radius: 12px; background: #F8F9FC; border: 1px solid var(--pm-line, #E3E6EE); display: grid; gap: 4px; }
.cth-cell span { font-size: 13px; color: #5B6479; } .cth-cell strong { font-size: clamp(18px, 3vw, 24px); color: #0A1230; }
@media (max-width: 520px) { .cth-grid { grid-template-columns: 1fr; } .lc-or { padding-top: 0; } }
.lc-legend li { display: block; position: relative; padding-left: 24px; }
.lc-legend li::before { position: absolute; left: 0; top: 0; }
.lc-legend strong, .lc-legend span { display: block; }
@media (max-width: 640px) { .lc-seg em { display: none; } .lc-seg.is-now em { display: block; } .lc-or { display: none; } }

/* LF Story: name tags on stars, the launch pad and the rocket */
.gs-star-tag { position: absolute; left: 50%; bottom: calc(100% + 2px); transform: translate(-50%, 4px); padding: 3px 8px; border-radius: 999px; white-space: nowrap;
  background: rgba(10,18,48,.9); border: 1px solid rgba(232,212,162,.45); color: #F6E9C6; font-size: 12px; font-weight: 700; letter-spacing: .01em;
  opacity: 0; pointer-events: none; transition: opacity .25s, transform .25s; }
.gs-star:hover .gs-star-tag, .gs-star:focus-visible .gs-star-tag, .gs-star.is-told .gs-star-tag, .gs-star.is-on .gs-star-tag { opacity: 1; transform: translate(-50%, 0); }
.gs-star::before { animation-name: gsBlinkSoft; animation-duration: 3.2s; }
@keyframes gsBlinkSoft { 0%, 100% { opacity: .35; transform: translate(-50%, -50%) scale(.85); } 45% { opacity: 1; transform: translate(-50%, -50%) scale(1.15); } 55% { opacity: .9; } }
.gs-star.is-told::before { animation: gsBlink .9s ease-out 3; background: #fff; }
.gs-pad { position: absolute; left: 50%; bottom: 12px; z-index: 4; transform: translateX(-50%); display: grid; justify-items: center; gap: 6px; }
.gs-pad-rocket { display: block; filter: drop-shadow(0 0 10px rgba(255,190,90,.35)); transition: opacity .3s; }
.gs-pad-rocket .lfr-flame { opacity: .25; }
.gs-pad-base { display: block; width: 74px; height: 8px; margin-top: -6px; border-radius: 4px; background: linear-gradient(90deg, #3A4362, #C9A24B, #3A4362); box-shadow: 0 0 14px rgba(255,190,90,.35); }
.gs-pad-btn { min-height: 40px; padding: 8px 20px; border-radius: 999px; border: 1.5px solid #E8D4A2; background: linear-gradient(155deg, #FFB020, #F08A1C); color: #0A1230; font-weight: 800; letter-spacing: .02em; cursor: pointer; box-shadow: 0 6px 20px -6px rgba(255,160,40,.7); }
.gs-pad-btn:hover { filter: brightness(1.07); } .gs-pad-btn:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.gs-pad-btn:disabled { cursor: default; opacity: .8; }
.gs-pad.is-launching .gs-pad-rocket { opacity: 0; }
.gs-rocket { position: absolute; left: 0; top: 0; z-index: 5; width: 34px; height: 80px; pointer-events: none; transform-origin: 17px 40px; will-change: transform; filter: drop-shadow(0 0 12px rgba(255,190,90,.5)); }
.gs-rocket .lfr-flame { animation: lfrFlame .12s linear infinite alternate; transform-origin: 32px 112px; }
@keyframes lfrFlame { from { transform: scaleY(.85); } to { transform: scaleY(1.2); } }
.gs-puff { position: absolute; z-index: 4; width: 10px; height: 10px; margin: -5px 0 0 -5px; border-radius: 50%; pointer-events: none; background: radial-gradient(circle, rgba(255,230,190,.85), rgba(255,170,80,.25) 60%, transparent 70%); animation: gsPuff 1.1s ease-out forwards; }
@keyframes gsPuff { from { opacity: .9; transform: scale(.6); } to { opacity: 0; transform: scale(2.6); } }
.gs-hud-bl { max-width: calc(50% - 70px); }
@media (prefers-reduced-motion: reduce) { .gs-rocket .lfr-flame, .gs-puff { animation: none; } .gs-star.is-told::before { animation: none; } }
.gs-rocket { width: 44px; height: 104px; transform-origin: 22px 52px; }
.gs-star.tag-l .gs-star-tag { left: auto; right: 50%; transform: translate(12px, 4px); }
.gs-star.tag-r .gs-star-tag { left: 50%; transform: translate(-12px, 4px); }
.gs-star.tag-l:hover .gs-star-tag, .gs-star.tag-l:focus-visible .gs-star-tag, .gs-star.tag-l.is-told .gs-star-tag, .gs-star.tag-l.is-on .gs-star-tag { transform: translate(12px, 0); }
.gs-star.tag-r:hover .gs-star-tag, .gs-star.tag-r:focus-visible .gs-star-tag, .gs-star.tag-r.is-told .gs-star-tag, .gs-star.tag-r.is-on .gs-star-tag { transform: translate(-12px, 0); }
.gs-star.tag-b .gs-star-tag { bottom: auto; top: calc(100% + 2px); }
.gs-star-tag { z-index: 2; }
.gs-rocket { width: 50px; height: 106px; transform-origin: 25px 53px; filter: drop-shadow(0 0 14px rgba(255,190,90,.45)); }
.gs-rocket .lfr-flame { transform-origin: 40px 140px; }
.gs-rocket .lfr-core { animation-duration: .09s; }
.gs-pad-rocket svg { display: block; }
.gs-pad-rocket .lfr-flame { opacity: .15; }
.gs-pad-base { width: 96px; height: 10px; margin-top: -8px; }

/* Rocket tour: readable stops */
.gs-rocket { width: 64px; height: 136px; transform-origin: 32px 68px; filter: drop-shadow(0 0 16px rgba(255,190,90,.5)) drop-shadow(0 6px 10px rgba(0,0,0,.5)); }
.gs-rocket.is-hover .lfr-flame { opacity: .6; }
.gs-rocket.is-paused .lfr-flame { animation-play-state: paused; opacity: .35; }
.gs-pad { gap: 8px; }
.gs-pad-rocket { filter: drop-shadow(0 0 14px rgba(255,190,90,.4)); }
.gs-pad-base { width: 120px; height: 10px; margin-top: -10px; }
.gs-pad-ctl { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; justify-content: center; }
.gs-pad-btn { min-width: 150px; }
.gs-pad-stop { min-height: 40px; padding: 8px 16px; border-radius: 999px; border: 1.5px solid rgba(232,212,162,.6); background: rgba(10,18,48,.85); color: #F6E9C6; font-weight: 700; cursor: pointer; }
.gs-pad-stop:hover, .gs-pad-stop:focus-visible { background: #17265F; outline: 2px solid #fff; outline-offset: 2px; }
.gs-pad-speed select { min-height: 40px; padding: 6px 30px 6px 12px; border-radius: 999px; border: 1.5px solid rgba(232,212,162,.6); background: rgba(10,18,48,.85); color: #F6E9C6; font: inherit; font-weight: 700; cursor: pointer; }
.gs-pad-speed select:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.gs-now { position: absolute; z-index: 6; top: 14px; left: 50%; transform: translateX(-50%); width: min(380px, calc(100% - 180px)); padding: 14px 18px 12px;
  border-radius: 16px; background: rgba(10,18,48,.94); border: 1px solid rgba(232,212,162,.45); box-shadow: 0 18px 40px -14px rgba(0,0,0,.8); color: #D5DCF3; display: grid; gap: 4px; }
.gs-now-count { font-size: 13px; font-weight: 700; color: #E8D4A2; }
.gs-now-name { font-size: clamp(24px, 3.4vw, 32px); line-height: 1.1; color: #fff; letter-spacing: -0.02em; overflow-wrap: anywhere; }
.gs-now-meta { font-weight: 800; color: #F6E9C6; font-size: 16px; }
.gs-now-line { font-size: 14px; line-height: 1.4; }
.gs-now-link { justify-self: start; min-height: 24px; display: inline-flex; align-items: center; color: #FFD27A; font-weight: 700; margin-top: 2px; }
.gs-now-bar { display: block; height: 4px; margin-top: 6px; border-radius: 2px; background: rgba(255,255,255,.12); overflow: hidden; }
.gs-now-bar i { display: block; height: 100%; width: 0; background: linear-gradient(90deg, #C9A24B, #FFD27A); transition: width .4s; }
.gs-star.is-told .gs-star-tag { font-size: 15px; padding: 5px 12px; background: #0A1230; border-color: #FFD27A; color: #fff; box-shadow: 0 0 18px rgba(255,210,122,.45); }
@media (max-width: 640px) { .gs-now { top: 64px; left: 12px; right: 12px; width: auto; transform: none; } }
@media (max-width: 640px) {
  .gs-now { top: 60px; left: 12px; right: 76px; padding: 12px 14px 10px; }
  .gs-now-name { font-size: 22px; } .gs-now-meta { font-size: 15px; } .gs-now-line { font-size: 13px; }
  .gs-rocket { width: 46px; height: 98px; transform-origin: 23px 49px; }
  .gs-pad-ctl { flex-wrap: nowrap; gap: 6px; }
  .gs-pad-btn { min-width: 0; padding: 8px 14px; }
  .gs-pad-stop { padding: 8px 12px; }
  .gs-pad-speed select { padding: 6px 26px 6px 10px; }
  .gs-stage.is-touring .gs-hud-bl { visibility: hidden; }
}
.gs-pad-btn, .gs-pad-stop { white-space: nowrap; }

/* Rocket v3: small and sleek, with one capsule of controls */
.gs-rocket { width: 28px; height: 70px; transform-origin: 14px 35px; filter: drop-shadow(0 0 8px rgba(255,200,120,.55)); }
.gs-rocket .lfr-flame { transform-origin: 20px 78px; }
.gs-pad { gap: 10px; bottom: 14px; }
.gs-pad-rocket { filter: drop-shadow(0 0 8px rgba(255,200,120,.45)); }
.gs-pad-rocket .lfr-flame { opacity: .2; }
.gs-pad-base { width: 46px; height: 6px; margin-top: -9px; border-radius: 50%; background: radial-gradient(ellipse at center, rgba(255,210,122,.75), rgba(255,210,122,0) 70%); box-shadow: none; }
.gs-dock { display: inline-flex; align-items: center; gap: 4px; padding: 5px; border-radius: 999px;
  background: rgba(10,18,48,.72); border: 1px solid rgba(232,212,162,.35); box-shadow: 0 10px 30px -12px rgba(0,0,0,.8), inset 0 1px 0 rgba(255,255,255,.06); backdrop-filter: blur(8px); }
.gs-dock button { font: inherit; cursor: pointer; border: 0; }
.gs-dock button:focus-visible { outline: 2px solid #FFD27A; outline-offset: 2px; }
.gs-dock-main { display: inline-flex; align-items: center; gap: 8px; min-height: 36px; padding: 0 16px 0 14px; border-radius: 999px; white-space: nowrap;
  background: linear-gradient(180deg, #FFD27A, #E9A93A); color: #0A1230; font-weight: 800; font-size: 14px; letter-spacing: .01em; box-shadow: inset 0 1px 0 rgba(255,255,255,.5); }
.gs-dock-main:hover { filter: brightness(1.06); }
.gs-dock-stop { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: rgba(255,255,255,.08); color: #F6E9C6; }
.gs-dock-stop:hover { background: rgba(255,255,255,.16); }
.gs-dock-speed { display: inline-flex; padding: 3px; gap: 2px; margin-left: 2px; border-radius: 999px; background: rgba(255,255,255,.06); }
.gs-dock-speed button { min-height: 30px; padding: 0 10px; border-radius: 999px; background: transparent; color: #AEB7D3; font-size: 12.5px; font-weight: 700; }
.gs-dock-speed button:hover { color: #fff; }
.gs-dock-speed button[aria-pressed="true"] { background: rgba(232,212,162,.18); color: #FFE7A8; box-shadow: inset 0 0 0 1px rgba(232,212,162,.45); }
@media (max-width: 640px) {
  .gs-rocket { width: 24px; height: 60px; transform-origin: 12px 30px; }
  .gs-dock-main { padding: 0 12px 0 10px; font-size: 13px; }
  .gs-dock-speed button { padding: 0 8px; font-size: 12px; }
}
.gs-dock .gs-dock-main { font-weight: 800; font-size: 14px; }
.gs-dock .gs-dock-speed button { font-size: 12.5px; font-weight: 700; }
@media (max-width: 640px) {
  .gs-pad { bottom: 84px; }
  .gs-dock .gs-dock-main { font-size: 13px; }
  .gs-dock .gs-dock-speed button { font-size: 12px; }
}
@media (max-width: 640px) { .gs-hud-bl { display: none; } }

/* Rocket v4: medium size, towing an ad banner */
.gs-rocket { width: 52px; height: 130px; transform-origin: 26px 65px; filter: drop-shadow(0 0 12px rgba(111,216,255,.55)); }
.gs-rope { position: absolute; left: 0; top: 0; z-index: 4; height: 0; border-top: 1.5px dashed rgba(232,212,162,.75); transform-origin: 0 0; pointer-events: none; }
.gs-tow { position: absolute; left: 0; top: 0; z-index: 5; display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px 6px 6px; white-space: nowrap; pointer-events: none;
  border-radius: 10px; background: linear-gradient(180deg, #FFF8E6, #F3E2B6); color: #0A1230; border: 1.5px solid #C9A24B;
  box-shadow: 0 8px 22px -8px rgba(0,0,0,.7), 0 0 18px rgba(255,210,122,.35); will-change: transform; }
.gs-tow::after { content: ""; position: absolute; right: -9px; top: 50%; width: 0; height: 0; transform: translateY(-50%); border: 7px solid transparent; border-left: 9px solid #C9A24B; border-right: 0; }
.gs-tow-lf { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 7px; background: #0A1230; color: #FFD27A; font-size: 11px; font-weight: 800; }
.gs-tow-name { font-size: 15px; font-weight: 800; letter-spacing: -0.01em; }
.gs-tow-sub { font-size: 13px; font-weight: 700; color: #7A5A12; }
@media (max-width: 640px) {
  .gs-rocket { width: 40px; height: 100px; transform-origin: 20px 50px; }
  .gs-tow { padding: 4px 9px 4px 4px; gap: 6px; } .gs-tow-lf { width: 22px; height: 22px; font-size: 10px; }
  .gs-tow-name { font-size: 13px; } .gs-tow-sub { font-size: 12px; }
}
.gs-tow::after { display: none; }
.gs-stage.is-touring .gs-star.is-told .gs-star-tag { opacity: 0; }

/* Domain Anime avatars: always show the whole head, centred in its circle (the art already has room for the hair) */
.da-hero-art, .da-stage-art, .da-safety-art, .da-promo-art, .da-launch-art, .hd-anime-art, .cart-how-av { align-items: center; justify-content: center; }
.da-hero-art > svg.da-art, .da-stage-art > svg.da-art, .da-safety-art > svg.da-art, .da-promo-art > svg.da-art,
.da-launch-art > svg.da-art, .hd-anime-art > svg.da-art, .cart-how-av > svg.da-art {
  display: block; width: 100% !important; height: 100% !important; max-width: none; margin: 0 !important; position: static; transform: none; }

/* Built for buyers everywhere: live facts from the listings */
.global-band .wrap { padding-top: 20px; padding-bottom: 22px; }
.global-head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 14px; margin-bottom: 12px; }
.global-head .global-title { margin: 0; font-size: 16px; }
.global-live { font-size: 13px; color: #3B4663; display: inline-flex; align-items: center; gap: 6px; }
.global-live::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #2E9E6B; box-shadow: 0 0 0 3px rgba(46,158,107,.2); }
.global-facts { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
.global-facts li { display: grid; gap: 2px; align-content: start; padding: 12px 14px; border-radius: 12px; background: #fff; border: 1px solid #D3DEFA; }
.global-facts li.gf-wide { grid-column: span 2; }
.global-facts b { font-size: 20px; color: #0A1230; letter-spacing: -0.01em; }
.global-facts span { font-size: 14px; color: #3B4663; }
.gf-ends { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; }
.gf-ends a { display: inline-flex; align-items: center; gap: 6px; min-height: 30px; padding: 2px 10px; border-radius: 999px; background: #EEF3FF; color: #0A1230; font-weight: 700; text-decoration: none; }
.gf-ends a:hover, .gf-ends a:focus-visible { background: #DCE6FF; }
.gf-ends i { font-style: normal; font-size: 12px; color: #1747C9; }
@media (max-width: 560px) { .global-facts li.gf-wide { grid-column: auto; } }

/* One of one: the hero card on every name page */
.hero-id { position: relative; overflow: hidden; margin: 28px 0; padding: clamp(22px, 4vw, 36px); border-radius: 22px; color: #D5DCF3;
  background: radial-gradient(120% 90% at 100% 0, rgba(201,162,75,.22), transparent 55%), radial-gradient(90% 80% at 0 100%, rgba(23,71,201,.28), transparent 60%), linear-gradient(160deg, #0E1640, #070C24);
  border: 1px solid rgba(232,212,162,.35); box-shadow: 0 30px 70px -36px rgba(10,18,48,.9); isolation: isolate; }
.hero-id::before { content: ""; position: absolute; inset: 0; z-index: -1; opacity: .5;
  background-image: radial-gradient(1px 1px at 12% 22%, #fff, transparent), radial-gradient(1px 1px at 78% 18%, #fff, transparent), radial-gradient(1.5px 1.5px at 64% 70%, #FFE7A8, transparent),
    radial-gradient(1px 1px at 30% 82%, #fff, transparent), radial-gradient(1px 1px at 90% 60%, #fff, transparent), radial-gradient(1.5px 1.5px at 45% 40%, #fff, transparent); }
.hid-seal { position: absolute; top: 18px; right: 18px; color: #E8C066; opacity: .95; }
.hid-seal svg { display: block; animation: hidSpin 40s linear infinite; }
@keyframes hidSpin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .hid-seal svg { animation: none; } }
.hid-kicker { margin: 0 0 4px; font-size: 13px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: #E8C066; }
.hid-name { margin: 0; padding-right: 96px; font-size: clamp(34px, 6.5vw, 60px); line-height: 1.02; letter-spacing: -0.035em; overflow-wrap: anywhere;
  background: linear-gradient(180deg, #FFF6D8 0%, #F2CF7A 55%, #C9A24B 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.hid-role { margin: 10px 0 0; font-size: 17px; } .hid-role strong { color: #fff; margin-right: 6px; }
.hid-powers { list-style: none; margin: 20px 0 0; padding: 0; display: grid; gap: 10px; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); }
.hid-powers li { display: grid; gap: 2px; padding: 12px 14px; border-radius: 12px; background: rgba(255,255,255,.05); border: 1px solid rgba(232,212,162,.22); }
.hid-powers b { color: #FFE7A8; font-size: 15px; } .hid-powers span { font-size: 14px; line-height: 1.4; }
.hid-mission { margin: 16px 0 0; font-size: 15px; } .hid-mission span { display: inline-block; margin-right: 8px; padding: 2px 8px; border-radius: 6px; background: rgba(232,212,162,.16); color: #FFE7A8; font-size: 12px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.hid-rare { margin: 20px 0 0; padding: 14px 18px; border-left: 3px solid #E8C066; border-radius: 0 12px 12px 0; background: rgba(232,192,102,.08); color: #FFF3D1; font-size: clamp(16px, 2.2vw, 19px); line-height: 1.45; font-weight: 600; }
.hid-cta { margin: 20px 0 0; }
.btn-gold { background: linear-gradient(180deg, #FFD27A, #E3A63B); color: #0A1230; border: 0; font-weight: 800; }
.btn-gold:hover, .btn-gold:focus-visible { filter: brightness(1.06); }
@media (max-width: 560px) { .hid-seal { top: 12px; right: 12px; } .hid-seal svg { width: 62px; height: 62px; } .hid-name { padding-right: 70px; } }
/* the same idea, small, on every name card */
.dc-tier::after { content: "1 of 1" / ""; display: inline-flex; align-items: center; margin-left: 8px; padding: 2px 8px; border-radius: 999px; font-size: 11px; font-weight: 800; letter-spacing: .06em;
  color: #0A1230; background: linear-gradient(180deg, #FFE7A8, #E8C066); vertical-align: middle; }
.names-box:not(.is-cards) .dc-tier::after { display: none; }
.hero-id .hid-name { margin: 0; font-size: clamp(36px, 6.5vw, 62px); line-height: 1.02; letter-spacing: -0.035em; font-weight: 800; }
.hero-id .hid-kicker { text-transform: none; letter-spacing: .02em; font-size: 13.5px; }
.domain-card .card-top::after { content: "1 of 1" / ""; display: inline-flex; align-items: center; margin-left: 8px; padding: 2px 8px; border-radius: 999px; font-size: 11px; font-weight: 800; letter-spacing: .06em;
  color: #0A1230; background: linear-gradient(180deg, #FFE7A8, #E8C066); vertical-align: middle; }
.domain-card .card-top { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.domain-card .card-top::after { margin-left: 0; }
.hero-id .hid-kicker { padding-right: 100px; }
@media (max-width: 560px) { .hero-id .hid-kicker { padding-right: 72px; } }

/* ---------- Phone header: no empty band between the brand and the menu ----------
   The guide avatar used to wrap onto a row of its own (the brand + tagline fill the line), leaving a
   blank strip above the menu. It now sits beside the brand, top right, and the menu links are tighter. */
@media (max-width: 640px) {
  .header-row { position: relative; row-gap: 0; padding-top: 10px; padding-bottom: 8px; }
  .site-header .brand { padding-right: 58px; min-width: 0; }
  .site-header .brand-text { min-width: 0; }
  .site-header .brand-tag { line-height: 1.3; text-wrap: balance; }
  .site-header .hd-anime { position: absolute; top: 10px; right: 20px; margin: 0; }
  .site-header .main-nav { gap: 0 18px; }
  .site-header .main-nav a { padding: 8px 0; }
  .site-header .header-tools { padding-top: 2px; }
}

/* ---------- Buy buttons: one "go" colour, used for nothing else ----------
   Blue is the site colour and gold marks badges and the cart, so the action that spends money gets its own
   colour. Green reads as "go, safe to continue" and stands out against blue and gold. White on the darkest part (#0B7A35) is
   5.5 : 1 (WCAG AA). Every other button keeps its colour, so Buy is the one that pops. */
.btn-buy, .btn-primary.btn-buy { background: linear-gradient(180deg, #0F8337 0%, #0B7A35 100%); color: #fff; border: 1px solid #07602A; font-weight: 800; letter-spacing: .01em;
  box-shadow: 0 3px 0 #064E22, 0 8px 18px rgba(11,122,53,.28); transition: transform .12s ease, box-shadow .12s ease, filter .12s ease; }
.btn-buy:hover, .btn-primary.btn-buy:hover { background: linear-gradient(180deg, #0F8337 0%, #096F30 100%); color: #fff; transform: translateY(-1px); box-shadow: 0 4px 0 #064E22, 0 12px 22px rgba(11,122,53,.34); }
.btn-buy:active { transform: translateY(2px); box-shadow: 0 1px 0 #064E22; }
.btn-buy:focus-visible { outline: 3px solid #FFB020; outline-offset: 2px; }
.hero-id .btn-buy { border-color: #6FE0A0; }
@media (prefers-reduced-motion: reduce) { .btn-buy, .btn-buy:hover, .btn-buy:active { transition: none; transform: none; } }
/* Earlier rules for blue buttons inside the hero, cards and buy box are more specific; these keep Buy green everywhere. */
.hero .btn-primary.btn-buy, .domain-card .btn-primary.btn-buy, .names-box.is-cards .btn-primary.btn-buy, .buybox .btn-primary.btn-buy, .mobile-buy .btn-primary.btn-buy, .owned-actions .btn-primary.btn-buy {
  background: linear-gradient(180deg, #0F8337 0%, #0B7A35 100%); color: #fff; border: 1px solid #07602A; box-shadow: 0 3px 0 #064E22, 0 8px 18px rgba(11,122,53,.28); }
.hero .btn-primary.btn-buy:hover, .domain-card .btn-primary.btn-buy:hover, .names-box.is-cards .btn-primary.btn-buy:hover, .buybox .btn-primary.btn-buy:hover, .mobile-buy .btn-primary.btn-buy:hover, .owned-actions .btn-primary.btn-buy:hover {
  background: linear-gradient(180deg, #0F8337 0%, #096F30 100%); color: #fff; box-shadow: 0 4px 0 #064E22, 0 12px 22px rgba(11,122,53,.34); }

/* ---------- Colour roles, so no two actions look alike ----------
   Green  = Buy now (the one action that spends money).
   Blue   = Add to cart (hold it for later): blue outline while idle, solid navy with a gold tick once the name is in the cart.
   White/outline = Compare, View, Details (looking, not committing).
   The old teal "In cart" state was too close to the green Buy button, so it is gone. */
.btn-cart { background: #fff; color: #1236A8; border: 2px solid #1747C9; font-weight: 700; }
.btn-cart svg { stroke: #1236A8; }
.btn-cart:hover { background: #EEF2FF; color: #0B1640; border-color: #0B1640; }
.btn-cart[aria-pressed="true"], .btn-cart[aria-pressed="true"]:hover { background: #0B1640; border: 2px solid #0B1640; color: #FFC24D; box-shadow: 3px 3px 0 #FFB020; }
.btn-cart[aria-pressed="true"] svg { stroke: #FFC24D; }
.domain-card:has(.btn-cart[aria-pressed="true"]), .names-table tr:has(.btn-cart[aria-pressed="true"]) td { background: linear-gradient(180deg, #EEF2FF, #fff); }
.domain-card:has(.btn-cart[aria-pressed="true"]) { outline: 3px solid #1747C9; outline-offset: -3px; }
.domain-card:has(.btn-cart[aria-pressed="true"])::after { background: #0B1640; color: #FFC24D; }
.similar .sim-card:has(.btn-cart[aria-pressed="true"]) { border-color: #1747C9; background: #EEF2FF; }

/* ---------- Buy now: richer colour-way ----------
   Emerald body (white text stays at 4.7:1 or better), a gold underside that ties it to the site's gold, a bright top edge,
   and a soft light sweep on hover. Still the only green button, so it stays the one that stands out. */
.btn-buy, .btn-primary.btn-buy, .hero .btn-primary.btn-buy, .domain-card .btn-primary.btn-buy, .names-box.is-cards .btn-primary.btn-buy,
.buybox .btn-primary.btn-buy, .mobile-buy .btn-primary.btn-buy, .owned-actions .btn-primary.btn-buy {
  position: relative; overflow: hidden; isolation: isolate;
  background: linear-gradient(135deg, #0C8541 0%, #0A7A3A 55%, #0A6E3A 100%); border: 1px solid #FFC24D; color: #fff; text-shadow: 0 1px 0 rgba(0,0,0,.25);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.38), 0 3px 0 #D99A12, 0 10px 20px rgba(11,122,53,.32); }
.btn-buy:hover, .btn-primary.btn-buy:hover, .hero .btn-primary.btn-buy:hover, .domain-card .btn-primary.btn-buy:hover, .names-box.is-cards .btn-primary.btn-buy:hover,
.buybox .btn-primary.btn-buy:hover, .mobile-buy .btn-primary.btn-buy:hover, .owned-actions .btn-primary.btn-buy:hover {
  background: linear-gradient(135deg, #0C8541 0%, #0A7A3A 55%, #0A6E3A 100%); color: #fff; box-shadow: inset 0 1px 0 rgba(255,255,255,.45), 0 4px 0 #D99A12, 0 14px 24px rgba(11,122,53,.4); }
.btn-buy::after { content: ""; position: absolute; top: 0; bottom: 0; left: -60%; width: 40%; background: linear-gradient(100deg, transparent, rgba(255,255,255,.34), transparent); transform: skewX(-18deg); z-index: -1; pointer-events: none; transition: left .55s ease; }
.btn-buy:hover::after, .btn-buy:focus-visible::after { left: 130%; }
.btn-buy:active { transform: translateY(2px); box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 0 1px 0 #D99A12; }
@media (prefers-reduced-motion: reduce) { .btn-buy::after { display: none; } }

/* ---------- Cart colour = gold ----------
   The header cart turns gold when it has items, so "in the cart" is gold everywhere. Gold stands out against the dark navy
   of the name card header (the old navy "In cart" button blended into it), against the blue pop-up header (the old blue
   "View cart and continue" blended into it), and it cannot be confused with the green Buy now button.
   Idle "Add to cart" stays a blue outline; once added it fills gold with navy text. */
.btn-cart[aria-pressed="true"], .btn-cart[aria-pressed="true"]:hover { background: linear-gradient(180deg, #FFD27A 0%, #FFB020 100%); border: 2px solid #0B1640; color: #0B1640; box-shadow: 3px 3px 0 #0B1640; font-weight: 800; }
.btn-cart[aria-pressed="true"] svg { stroke: #0B1640; }
.btn-cart.btn-icon[aria-pressed="true"]::after { background: #0B1640; color: #FFC24D; border-color: #FFC24D; }
.domain-card:has(.btn-cart[aria-pressed="true"]), .names-table tr:has(.btn-cart[aria-pressed="true"]) td { background: linear-gradient(180deg, #FFF6DD, #fff); }
.domain-card:has(.btn-cart[aria-pressed="true"]) { outline: 3px solid #FFB020; }
.domain-card:has(.btn-cart[aria-pressed="true"])::after { background: #FFB020; color: #0B1640; border-color: #0B1640; }
.similar .sim-card:has(.btn-cart[aria-pressed="true"]) { border-color: #FFB020; background: #FFF6DD; }

/* Pop-up: the one thing to press next */
.cart-pop .cp-go, .cart-pop .btn-primary.cp-go { background: linear-gradient(180deg, #FFD27A 0%, #FFB020 100%); color: #0B1640; border: 2px solid #0B1640; font-weight: 800; box-shadow: 3px 3px 0 #0B1640; }
.cart-pop .cp-go:hover { background: linear-gradient(180deg, #FFDC93 0%, #FFBD3D 100%); color: #0B1640; }
.cart-pop .cp-go { text-align: center; line-height: 1.2; padding-top: 8px; padding-bottom: 8px; white-space: normal; }
.cart-pop .cp-go:focus-visible { outline: 3px solid #0B1640; outline-offset: 2px; }

/* One-line tagline on phones: the line is short enough to fit beside the guide avatar, and where the avatar is
   hidden (360px and narrower) the brand gets its space back. */
@media (max-width: 640px) { .site-header .brand-tag { white-space: nowrap; text-wrap: nowrap; } }
@media (max-width: 360px) { .site-header .brand { padding-right: 0; } }

/* LF Story: on phones the "Tap a star" hint sat under the rocket controls. The page text above the sky already
   says it, so the hint stays hidden on phones as intended (the "is-live" rule was overriding the phone rule). */
@media (max-width: 640px) { .gs-stage.is-live .gs-hud-bl { display: none; } }

/* Home: the outlined "名前探し" watermark sat on top of the small print at the bottom of the Name Studio card on phones.
   There is no free corner on a narrow card, so the watermark shows on wider screens only. */
@media (max-width: 640px) { .start-card::after { display: none; } }

/* Help page: blocks that are both .wrap and .section-tight lost the 20px side gutter (section-tight's padding
   shorthand reset it), so the quick-help tiles and the Domain Doctor card touched the screen edge on phones. */
.wrap.section-tight { padding-left: 20px; padding-right: 20px; }
.qa-tile > span { min-width: 0; } .qa-tile em { overflow-wrap: anywhere; }

/* ---------- Studio: "Find my matching names" ----------
   A violet "imagine" colour for Founder Intelligence, so it is never mistaken for Buy (green), cart (gold) or ordinary
   links and buttons (blue). Brand display font, gold spark, and a short checklist in place of the old grey paragraph.
   White on #5B21B6 is about 8:1 and on #7C3AED about 5.7:1, both WCAG AA. */
.go-bar { flex: 1 1 100%; display: grid; grid-template-columns: minmax(260px, 360px) 1fr; gap: 14px 22px; align-items: center;
  margin-top: 6px; padding: 16px; border-radius: 18px; background: linear-gradient(135deg, #F5F0FF 0%, #EEF2FF 100%); border: 1px solid #DDD3FB; }
.studio-go.go-match, .btn.studio-go.go-match { width: 100%; min-height: 60px; padding: 12px 20px; border: 0; border-radius: 14px; color: #fff;
  background: linear-gradient(135deg, #5B21B6 0%, #6D28D9 50%, #7C3AED 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 3px 0 #3B1584, 0 12px 24px -10px rgba(91,33,182,.6);
  font-family: var(--brandfont); font-weight: 800; font-size: 18px; letter-spacing: .005em; line-height: 1.2; white-space: normal; text-align: center;
  transition: transform .12s ease, box-shadow .12s ease, filter .12s ease; }
.studio-go.go-match svg { color: #FFD27A; stroke: #FFD27A; flex: none; }
.studio-go.go-match:hover { filter: brightness(1.08); transform: translateY(-1px); color: #fff; box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 0 4px 0 #3B1584, 0 16px 28px -10px rgba(91,33,182,.7); }
.studio-go.go-match:active { transform: translateY(2px); box-shadow: 0 1px 0 #3B1584; }
.studio-go.go-match:focus-visible { outline: 3px solid #FFB020; outline-offset: 3px; }
.go-trust { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.go-trust li { display: flex; gap: 8px; align-items: flex-start; font-size: 14.5px; font-weight: 600; color: #2A1A5E; line-height: 1.35; }
.go-trust svg { flex: none; margin-top: 2px; color: #6D28D9; stroke: #6D28D9; }
.go-fine { grid-column: 1 / -1; margin: 0; padding-top: 10px; border-top: 1px dashed #D6CBF5; font-size: 13px; color: #574A7A; }
@media (max-width: 640px) { .go-bar { grid-template-columns: 1fr; padding: 14px; } }
@media (prefers-reduced-motion: reduce) { .studio-go.go-match, .studio-go.go-match:hover, .studio-go.go-match:active { transition: none; transform: none; } }
.form-2 > .go-bar { grid-column: 1 / -1; }

/* ---------- Classic "How the Studio works" ----------
   Roman numerals in gold rings joined by a fine line, a bold navy lead-in on each step, and the small print set as a
   "Good to know" note with a gold rule, all in the site's own fonts. */
.ng-how .eyebrow { display: block; margin-bottom: 6px; }
.ng-how h2 { margin-bottom: 20px; }
.ng-how .ng-steps { counter-reset: ngs; list-style: none; margin: 0 0 22px; padding: 0; display: grid; gap: 0; max-width: 860px; }
.ng-how .ng-steps li { counter-increment: ngs; position: relative; padding: 0 0 22px 62px; min-height: 48px; line-height: 1.55; color: var(--ink-2, #2A3550); font-size: 16.5px; }
.ng-how .ng-steps li::before { content: counter(ngs, upper-roman); position: absolute; left: 0; top: -2px; width: 44px; height: 44px; display: grid; place-items: center; box-sizing: border-box;
  border-radius: 50%; border: 2px solid #C9A24B; background: linear-gradient(180deg, #FFFBEF, #FFF1CC); color: #5A3E00; font: 800 15px/1 var(--display); letter-spacing: .02em; }
.ng-how .ng-steps li:not(:last-child)::after { content: ""; position: absolute; left: 21px; top: 46px; bottom: 2px; width: 2px; background: linear-gradient(#C9A24B, rgba(201,162,75,.15)); }
.ng-how .ng-steps li strong { display: block; margin-bottom: 2px; font-family: var(--display); font-weight: 800; font-size: 18.5px; letter-spacing: -.005em; color: #0B1640; }
.ng-how .ng-steps li:last-child { padding-bottom: 4px; }
.ng-note { max-width: 860px; padding: 16px 20px 18px; border-radius: 4px 14px 14px 4px; border-left: 4px solid #C9A24B; background: #FBF8F0; }
.ng-note-k { display: block; margin-bottom: 4px; font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: #8A5F00; }
.ng-note .fine { margin: 0; font-size: 14px; line-height: 1.6; color: #4A5470; }
@media (max-width: 560px) { .ng-how .ng-steps li { padding-left: 54px; font-size: 16px; } .ng-how .ng-steps li::before { width: 38px; height: 38px; font-size: 13px; } .ng-how .ng-steps li:not(:last-child)::after { left: 18px; top: 40px; } }

/* ---------- Domain Life Clock: a clear path, then the five stages in order ---------- */
.lc .lc-head .eyebrow { display: inline-flex; align-items: center; gap: 6px; margin-bottom: 6px; }
.lc .lc-head h2 { font-size: clamp(24px, 3.2vw, 32px); }
.lc-how { list-style: none; margin: 20px 0 6px; padding: 12px 14px; display: flex; flex-wrap: wrap; gap: 10px 14px; align-items: center; border-radius: 14px; background: #F2F5FF; border: 1px solid #D5DEFA; }
.lc-how li { display: flex; gap: 10px; align-items: center; font-size: 14.5px; font-weight: 600; color: #1A2A5E; line-height: 1.3; }
.lc-how li b { flex: none; width: 28px; height: 28px; display: grid; place-items: center; border-radius: 50%; background: #1747C9; color: #fff; font-size: 14px; }
.lc-how .lc-how-or { color: #5B6479; font-weight: 800; text-transform: uppercase; font-size: 12px; letter-spacing: .1em; }
.lc-how .lc-how-go { color: #1747C9; }
.lc-form { padding: 16px; border-radius: 16px; background: #fff; border: 1px solid #E3E6EE; box-shadow: 0 10px 24px -18px rgba(10,18,48,.4); margin-top: 12px; }
.lc-go { background: linear-gradient(135deg, #1747C9, #3B6BFF); border: 0; font-weight: 800; padding: 0 22px; box-shadow: 0 3px 0 #0F2F8F; }
.lc-go:hover { filter: brightness(1.07); }
.lc-legend-h { display: flex; align-items: center; gap: 8px; margin: 26px 0 10px; font-size: 16px; font-weight: 800; letter-spacing: .01em; color: #0B1640; }
.lc-legend-h span { color: #8A5F00; display: inline-flex; }
.lc-legend { counter-reset: lcs; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0; margin: 0 0 18px; padding: 0; position: relative; }
.lc-legend li { counter-increment: lcs; padding: 18px 14px 14px; border: 1px solid #E3E6EE; border-left-width: 0; background: #fff; position: relative; display: block; font-size: 14px; }
.lc-legend li:first-child { border-left-width: 1px; border-radius: 14px 0 0 14px; } .lc-legend li:last-child { border-radius: 0 14px 14px 0; }
.lc-legend li::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 6px; width: auto; border-radius: 0; }
.lc-legend li:first-child::before { border-top-left-radius: 14px; } .lc-legend li:last-child::before { border-top-right-radius: 14px; }
.lc-legend li:not(:last-child)::after { content: "\203A"; position: absolute; right: -8px; top: 50%; width: 16px; height: 16px; margin-top: -8px; display: grid; place-items: center; border-radius: 50%; background: #fff; border: 1px solid #D5D9E6; color: #5B6479; font: 700 14px/1 var(--display); z-index: 2; }
.lc-legend .lc-when { display: inline-block; margin-bottom: 8px; padding: 3px 9px; border-radius: 999px; font-style: normal; font-size: 12px; font-weight: 800; background: #F2F4FA; color: #2A3550; }
.lc-legend strong { font-family: var(--display); font-size: 17px; margin-bottom: 4px; }
.lc-legend span { font-size: 13.5px; line-height: 1.45; color: #3B4663; }
.lc-note { margin-top: 4px; max-width: none; }
@media (max-width: 900px) {
  .lc-legend { grid-template-columns: 1fr; gap: 10px; }
  .lc-legend li, .lc-legend li:first-child, .lc-legend li:last-child { border: 1px solid #E3E6EE; border-radius: 14px; padding: 16px 16px 14px 20px; }
  .lc-legend li::before, .lc-legend li:first-child::before, .lc-legend li:last-child::before { right: auto; bottom: 0; top: 0; width: 6px; height: auto; border-radius: 14px 0 0 14px; }
  .lc-legend li:not(:last-child)::after { content: "\2193"; right: auto; left: 50%; top: auto; bottom: -17px; margin: 0 0 0 -8px; }
}
@media (max-width: 640px) { .lc-how .lc-how-go, .lc-how .lc-how-or { display: none; } .lc-how { flex-direction: column; align-items: stretch; } }

/* Rocket v5: futuristic look, bigger, with a cyan ion plume */
.gs-rocket .lfr-flame { transform-origin: 20px 82px; }
.gs-rocket .lfr-core { transform-origin: 20px 82px; animation: lfrFlame .09s linear infinite alternate; }
.gs-pad-rocket { filter: drop-shadow(0 0 10px rgba(111,216,255,.45)); }
.gs-pad-rocket .lfr-flame { opacity: .35; }
.gs-pad-rocket .lfr-core { opacity: .5; }
@media (prefers-reduced-motion: reduce) { .gs-rocket .lfr-core { animation: none; } }
.gs-rocket svg, .gs-pad-rocket svg { overflow: visible; }

/* Help page: a soft sakura-pink, retro Japanese-arcade look. Original pixel styling; no characters or logos from any game. */
body[data-page="assist"] { --pk: #E8478B; --pk-d: #B02563; --pk-l: #FFE3EF; --pk-xl: #FFF3F8; --pg: #E8478B; }
body[data-page="assist"] .assist-hero { position: relative; overflow: hidden; background: linear-gradient(180deg, #FFE9F2 0%, #FFD3E5 55%, #FFF3F8 100%); }
body[data-page="assist"] .assist-hero::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .5;
  background-image: linear-gradient(rgba(232,71,139,.10) 1px, transparent 1px), linear-gradient(90deg, rgba(232,71,139,.10) 1px, transparent 1px); background-size: 24px 24px; }
.ah-petals { position: absolute; inset: 0; pointer-events: none; opacity: .55; background-repeat: no-repeat;
  background-image: radial-gradient(ellipse 7px 10px at 99% 30%, #FF9CC4 98%, transparent),
   radial-gradient(ellipse 8px 11px at 97% 10%, #FF9CC4 98%, transparent), radial-gradient(ellipse 6px 9px at 95% 46%, #FFB8D6 98%, transparent), radial-gradient(ellipse 7px 10px at 97% 90%, #FF9CC4 98%, transparent); }
body[data-page="assist"] .assist-hero .idea-hero-row { position: relative; }
body[data-page="assist"] .assist-hero .ai-badge { background: #fff; color: var(--pk-d); border: 2px solid var(--pk-d); border-radius: 0; box-shadow: 3px 3px 0 var(--pk-d); }
.ah-press { margin: 0; font: 700 12px/1 var(--mono); letter-spacing: .14em; text-transform: uppercase; color: var(--pk-d); }
.ah-press::after { content: "_"; animation: ahBlink 1s steps(2) infinite; }
@keyframes ahBlink { 50% { opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .ah-press::after { animation: none; } }
body[data-page="assist"] .assist-hero h1 { color: #3A0F26; }
body[data-page="assist"] .assist-hero .trust-list svg { color: var(--pk-d); }
/* the dialogue-box question card */
body[data-page="assist"] .idea-form { background: #fff; border: 3px solid #3A0F26; border-radius: 6px; box-shadow: 6px 6px 0 var(--pk), 6px 6px 0 3px #3A0F26; }
body[data-page="assist"] .idea-form textarea { border: 2px solid #3A0F26; border-radius: 4px; background: var(--pk-xl); }
body[data-page="assist"] .idea-form textarea:focus { outline: 3px solid var(--pk); outline-offset: 1px; }
body[data-page="assist"] .idea-form .btn-primary { background: var(--pk); border: 2px solid #3A0F26; border-radius: 4px; color: #fff; box-shadow: 0 5px 0 var(--pk-d); text-shadow: 0 1px 0 rgba(0,0,0,.25); transition: transform .08s, box-shadow .08s; }
body[data-page="assist"] .idea-form .btn-primary:hover { background: #F05C9C; }
body[data-page="assist"] .idea-form .btn-primary:active { transform: translateY(4px); box-shadow: 0 1px 0 var(--pk-d); }
body[data-page="assist"] .example { border: 2px solid var(--pk); border-radius: 999px; background: var(--pk-xl); color: #3A0F26; }
body[data-page="assist"] .example:hover { background: var(--pk-l); border-color: var(--pk-d); }
/* quick-help tiles: like a game menu */
body[data-page="assist"] .qa-tile { border: 2px solid #3A0F26; border-radius: 6px; background: #fff; box-shadow: 3px 3px 0 var(--pk); transition: transform .1s, box-shadow .1s; }
body[data-page="assist"] .qa-tile:hover { transform: translate(-1px,-1px); box-shadow: 5px 5px 0 var(--pk); background: var(--pk-xl); }
body[data-page="assist"] .qa-tile svg { color: var(--pk-d); }
/* Domain Doctor: a health-bar status panel */
body[data-page="assist"] .doctor { border: 3px solid #3A0F26; border-radius: 6px; background: linear-gradient(180deg, #fff, var(--pk-xl)); box-shadow: 6px 6px 0 var(--pk-l), 6px 6px 0 3px #3A0F26; }
body[data-page="assist"] .doctor-badge { background: var(--pk); color: #fff; border: 2px solid #3A0F26; border-radius: 4px; }
body[data-page="assist"] .doctor-form input { border: 2px solid #3A0F26; border-radius: 4px; }
body[data-page="assist"] .doctor-form .btn-primary { background: var(--pk); border: 2px solid #3A0F26; border-radius: 4px; box-shadow: 0 4px 0 var(--pk-d); }
body[data-page="assist"] .doctor-form .btn-primary:active { transform: translateY(3px); box-shadow: 0 1px 0 var(--pk-d); }
/* Domain Anime promo */
body[data-page="assist"] .da-promo { background: var(--pk-l); border: 2px dashed var(--pk-d); border-radius: 6px; }
body[data-page="assist"] .da-promo .btn-outline { border: 2px solid #3A0F26; border-radius: 4px; background: #fff; box-shadow: 0 3px 0 var(--pk-d); }
/* guides: each group is a numbered level */
body[data-page="assist"] #guides-title { color: #3A0F26; }
body[data-page="assist"] .assist-jump a { border: 2px solid #3A0F26; border-radius: 4px; background: #fff; box-shadow: 2px 2px 0 var(--pk); }
body[data-page="assist"] .assist-jump a:hover { background: var(--pk-l); }
body[data-page="assist"] .assist-jump a span { background: var(--pk); color: #fff; border-radius: 3px; }
body[data-page="assist"] .assist-grid { counter-reset: lvl; }
body[data-page="assist"] .assist-block-title { border-bottom: 3px solid var(--pk); color: #3A0F26; display: flex; align-items: center; gap: 10px; }
body[data-page="assist"] .assist-block-title::before { content: "LV"; font: 800 12px/1 var(--mono); padding: 5px 7px; background: #3A0F26; color: #FFD3E5; border-radius: 3px; letter-spacing: .08em; }
body[data-page="assist"] .assist-topic { border: 2px solid #3A0F26; border-radius: 6px; background: #fff; box-shadow: 3px 3px 0 var(--pk-l); }
body[data-page="assist"] .assist-topic:hover { box-shadow: 3px 3px 0 var(--pk); }
body[data-page="assist"] .assist-topic[open] { border-color: var(--pk-d); box-shadow: 5px 5px 0 var(--pk); background: var(--pk-xl); }
body[data-page="assist"] .assist-group { color: var(--pk-d); }
body[data-page="assist"] .assist-topic summary:focus-visible { outline: 3px solid var(--pk); outline-offset: 2px; }
body[data-page="assist"] .assist-answer { border: 3px solid #3A0F26; border-radius: 6px; box-shadow: 6px 6px 0 var(--pk); }
body[data-page="assist"] .assist-quick { background: var(--pk-l); border: 2px solid var(--pk-d); border-radius: 6px; }
body[data-page="assist"] .assist-quick .ai-badge { background: #fff; color: var(--pk-d); border-radius: 0; border: 2px solid var(--pk-d); }
body[data-page="assist"] #ask-person.soft-bg { background: linear-gradient(180deg, var(--pk-xl), #FFE3EF); }
body[data-page="assist"] #ask-person .btn-dark { background: #3A0F26; border-radius: 4px; box-shadow: 0 4px 0 var(--pk); }
@media (max-width: 640px) { body[data-page="assist"] .idea-form { box-shadow: 4px 4px 0 var(--pk), 4px 4px 0 3px #3A0F26; } }
body[data-page="assist"] #guides-title { counter-reset: lvl; }
body[data-page="assist"] .assist-block { counter-increment: lvl; }
body[data-page="assist"] .assist-block-title::before { content: "LV " counter(lvl); }
body[data-page="assist"] .assist-answer .eyebrow { color: var(--pk-d); }
body[data-page="assist"] .assist-answer .eyebrow::before { background: var(--pk); }

/* Help hero: calm, professional typography */
body[data-page="assist"] .ah-press { display: inline-flex; align-items: center; gap: 10px; font: 700 13px/1 var(--sans); letter-spacing: .12em; text-transform: uppercase; color: var(--pk-d); }
body[data-page="assist"] .ah-press::before { content: ""; width: 28px; height: 3px; border-radius: 2px; background: var(--pk); }
body[data-page="assist"] .ah-press::after { content: none; animation: none; }
body[data-page="assist"] .assist-hero h1 { font-size: clamp(34px, 5vw, 54px); line-height: 1.08; letter-spacing: -.025em; font-weight: 800; color: #2B0A1C; text-wrap: balance; }
body[data-page="assist"] .assist-hero .lead { font-size: clamp(16px, 1.6vw, 18.5px); line-height: 1.6; color: #4A2236; max-width: 34em; }
body[data-page="assist"] .assist-hero .trust-list { gap: 10px; }
body[data-page="assist"] .assist-hero .trust-list li { font-size: 15.5px; font-weight: 600; color: #2B0A1C; }
body[data-page="assist"] .assist-hero .trust-list svg { color: var(--pk-d); }
body[data-page="assist"] .assist-hero .ai-badge { display: none; }
body[data-page="assist"] .assist-hero .only-here { font-size: 14.5px; line-height: 1.55; color: #2B0A1C; border: 1.5px solid var(--pk-d); border-radius: 8px; background: rgba(255,255,255,.85); box-shadow: none; }

/* Terms: the short version box */
.legal-short { margin: 8px 0 26px; padding: 18px 20px; border: 1px solid var(--line); border-left: 4px solid var(--blue); border-radius: 10px; background: var(--blue-soft); }
.legal-short h2 { margin: 0 0 8px; font-size: 20px; }
.legal-short ul { margin: 0; padding-left: 20px; display: grid; gap: 6px; }
/* Header tagline: quieter, more professional */
.site-header .brand-tag { font-weight: 500; letter-spacing: .06em; color: #AFC0F2; font-size: 11.5px; text-transform: none; }
.legal-short h2 { border: 0; padding: 0; margin-top: 0; }

.legal .ai-scams { margin: 22px 0; padding: 18px 20px; border: 1px solid #F1C9A5; border-left: 4px solid var(--orange); border-radius: 10px; background: var(--orange-soft); }
.legal .ai-scams h3 { margin-top: 0; }
.legal .ai-scams h4 { margin: 16px 0 6px; font-size: 16px; }
.legal .ai-scams ol, .legal .ai-scams ul { display: grid; gap: 6px; }
/* Tagline: a short, professional company line */
.site-header .brand-tag { font-family: var(--sans); font-weight: 600; font-size: 11.5px; letter-spacing: .16em; text-transform: uppercase; color: #C9D6FF; }
.footer-tag { letter-spacing: .14em; text-transform: uppercase; font-size: 13px; }
/* Help page: pink buttons dark enough for white text (WCAG AA) */
body[data-page="assist"] .idea-form .btn-primary, body[data-page="assist"] .doctor-form .btn-primary { background: #C2185B; box-shadow: 0 5px 0 #7E0F3B; }
body[data-page="assist"] .idea-form .btn-primary:hover, body[data-page="assist"] .doctor-form .btn-primary:hover { background: #AD1452; }
body[data-page="assist"] .idea-form .btn-primary:active, body[data-page="assist"] .doctor-form .btn-primary:active { box-shadow: 0 1px 0 #7E0F3B; }
body[data-page="assist"] .doctor-badge { background: #C2185B; }
body[data-page="assist"] .assist-jump a span { background: #C2185B; color: #fff; }

/* Unicorn: the top tier, above Legendary. An iridescent violet-pink-cyan finish, distinct from Legendary's gold. */
.tier-unicorn { color: #fff; background: linear-gradient(120deg, #3B1A78 0%, #7A2BB8 45%, #C2185B 100%); border-color: #E7B8FF; position: relative; overflow: hidden; text-shadow: 0 1px 0 rgba(0,0,0,.3); }
.tier-unicorn .tier-gem { background: conic-gradient(from 0deg, #7FE8FF, #E7B8FF, #FF9CC4, #FFE7A3, #7FE8FF); box-shadow: 0 0 7px rgba(231,184,255,.9); border-radius: 50%; }
.tier-unicorn::after { content: ""; position: absolute; top: 0; bottom: 0; width: 40%; left: -60%; background: linear-gradient(100deg, transparent, rgba(255,255,255,.4), transparent); animation: tier-shine 3.6s ease-in-out infinite; }
@media (prefers-reduced-motion: reduce) { .tier-unicorn::after { animation: none; display: none; } }
.domain-card[data-tier="unicorn"] .dc-plate, .names-table tr[data-cat="Unicorn"] .dc-plate { background: radial-gradient(120% 140% at 100% 0, #7A2BB8 0, #2A0F55 45%, #0B1640 80%); }
.domain-card[data-tier="unicorn"] .dc-plate::after, .names-table tr[data-cat="Unicorn"] .dc-plate::after { background: linear-gradient(90deg, #7FE8FF, #E7B8FF, #FF9CC4); }
.domain-card[data-tier="unicorn"] { box-shadow: 0 0 0 1.5px #C9A0FF, 0 14px 34px -16px rgba(122,43,184,.55); }
.names-box.is-cards .names-table tr[data-cat="Unicorn"] { background: linear-gradient(180deg, #F3E8FF 0, #fff 130px); }
.gs-star.is-unicorn::before { background: #F3E8FF; box-shadow: 0 0 8px 2px rgba(231,184,255,.95), 0 0 20px 5px rgba(194,24,91,.35); }
.dc-plate .tier-unicorn, .domain-hero .tier-unicorn { border-color: #E7B8FF; color: #FFF; background: linear-gradient(120deg, rgba(122,43,184,.7), rgba(194,24,91,.55)); box-shadow: 0 0 14px rgba(231,184,255,.35); }
