/* Bring the original topic components (Business guide, Trademark handbook) onto the site's
   light/dark tokens. Loaded inside each topic's shadow root after the original styles.
   Site tokens inherit through the shadow host; aliases avoid self-referencing variables. */

:host {
  --sr-ink: var(--ink); --sr-ink-2: var(--ink-2); --sr-muted: var(--muted); --sr-faint: var(--faint);
  --sr-paper: var(--paper); --sr-sheet: var(--sheet); --sr-well: var(--well); --sr-rule: var(--rule);
  --sr-rule-2: var(--rule-2); --sr-accent: var(--accent); --sr-primary: var(--primary);
  --sr-primary-hover: var(--primary-hover); --sr-on-primary: var(--on-primary); --sr-tint: var(--tint);
  --sr-shadow: var(--shadow); --sr-rail: var(--rail-bg); --sr-serif: var(--serif); --sr-bad: var(--bad);
  --sr-scrim: var(--scrim); --sr-hover: var(--hover);
  color: var(--ink) !important;
}

/* ================= shared topic root ================= */
.topic-original { --accent: var(--sr-accent); --ink: var(--sr-ink); --muted: var(--sr-muted); }
.topic-original :is(.primary, .dialog-primary, .search-button) { background: var(--sr-primary) !important; color: var(--sr-on-primary) !important; border-color: var(--sr-primary) !important; border-radius: 4px !important; }
.topic-original :is(.primary, .dialog-primary, .search-button):hover { background: var(--sr-primary-hover) !important; }
.topic-original .pdf-export-button { border-color: var(--sr-rule-2); background: var(--sr-sheet); color: var(--sr-ink); border-radius: 4px; }

/* ================= Business guide ================= */
.topic-original.business-page { background: var(--sr-paper) !important; }
.topic-original .business-ui {
  --page: var(--sr-paper); --page-footer: var(--sr-paper);
  --on-fg: var(--sr-ink); --on-fg2: var(--sr-muted); --on-act: var(--sr-ink);
  --line-dark: var(--sr-rule); --line-dark-2: var(--sr-rule-2);
  --surface: var(--sr-sheet); --fg: var(--sr-ink); --fg2: var(--sr-muted);
  --line-light: var(--sr-rule); --field: var(--sr-well); --field-hover-border: var(--sr-rule-2);
  --track: var(--sr-rule); --act: var(--sr-primary); --err: var(--sr-bad); --chip-quiet: var(--sr-tint);
  --r-card: 6px; --r-ctl: 4px; --r-field: 4px; --r-item: 4px; --r-chip: 2px;
  --shadow-card: none; --shadow-cta: none; --shadow-pop: 0 12px 32px var(--sr-shadow);
  --ring: 0 0 0 2px var(--sr-ink); --ring-light: 0 0 0 2px var(--sr-ink);
  color: var(--sr-ink);
}
.topic-original.business-page,
.topic-original .business-ui { font-family: Inter, "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif; }
.topic-original.business-page:lang(en),
.topic-original:lang(en) .business-ui { font-family: Inter, Arial, sans-serif; }
.topic-original .business-ui :is(h1, h2) { font-family: inherit; font-weight: 600; letter-spacing: 0; }
.topic-original .business-ui .primary,
.topic-original .business-ui .modal .primary,
.topic-original .business-ui .business-gate .primary { color: var(--sr-on-primary); background: var(--sr-primary); border-color: var(--sr-primary); box-shadow: none; }
.topic-original .business-ui .primary:hover { background: var(--sr-primary-hover); }
.topic-original .business-ui .outline-button { background: transparent; border-color: var(--sr-rule-2); color: var(--sr-ink); }
.topic-original .business-ui .outline-button:hover { background: var(--sr-tint); border-color: var(--sr-ink); }
.topic-original .business-ui .outline-button b { background: var(--sr-tint); }
.topic-original .business-ui .folio:before { display: none; }
.topic-original .business-ui :is(.directory-panel, .overview-data, .reading-chapter, .modal, .toast) { background: var(--sr-sheet); border: 1px solid var(--sr-rule); box-shadow: none; }
.topic-original .business-ui .intent-picker:focus-within,
.topic-original .business-ui .region-tabs button[aria-pressed="true"] { background: var(--sr-sheet); box-shadow: none; }
.topic-original .business-ui .reader-caution { border: 1px solid var(--sr-rule); border-left: 2px solid var(--sr-accent); background: var(--sr-well); }
.topic-original .business-ui .reader-caution p { color: var(--sr-ink-2); }
.topic-original .business-ui .reader-caution .fee-scope { border-top-color: var(--sr-rule); }
.topic-original .business-ui .compare-picker label:has(:checked) { background: var(--sr-well); }
.topic-original .business-ui :is(.dlg-head, .cov-search, .dlg-foot) { background: var(--sr-well); border-color: var(--sr-rule); }
.topic-original .business-ui :is(.coverage-modal .close, .dlg-icon) { border-color: var(--sr-rule); }
.topic-original .business-ui .cov-search:hover { border-color: var(--sr-rule-2); }
.topic-original .business-ui .cov-list li:hover { background: var(--sr-hover); }
.topic-original .business-ui .modal::backdrop { background: var(--sr-scrim); }
.topic-original .business-ui .cover-topics { color: var(--sr-ink-2); }
.topic-original .business-ui .cover-atlas:before { background: none; }
.topic-original .business-ui .cover-atlas img { filter: none; }
.topic-original .business-ui .compare-tray { box-shadow: 0 12px 32px var(--sr-shadow); background: var(--sr-sheet); }
.topic-original .business-ui .header:after { background: var(--sr-rule); }
.topic-original .business-ui .business-company-form label { color: var(--sr-ink-2); }
.topic-original .business-ui .business-company-form :is(select, input) { border: 1px solid var(--sr-rule-2); background: var(--sr-sheet); color: var(--sr-ink); }
.topic-original .business-ui .business-gate { background: var(--sr-well); border: 1px solid var(--sr-rule); border-top: 2px solid var(--sr-accent); color: var(--sr-ink); }
.topic-original .business-ui .business-protected[data-locked="true"] h3 { color: var(--sr-muted); }
.topic-original .business-ui .fee-scope { color: var(--sr-muted); }
/* the state silhouette in the guide's opening reads as a quiet watermark on paper */
.topic-original .business-ui .state-backdrop { filter: grayscale(1) brightness(.6); opacity: .14; }
.topic-original .business-ui .processing-inner { border-radius: 6px; border-color: var(--sr-rule); background: var(--sr-sheet); }
.topic-original .business-ui input { border-radius: 4px; }

/* ================= Trademark handbook ================= */
.topic-original .trademark-guide {
  --navy: var(--sr-rail); --paper: var(--sr-paper); --ink: var(--sr-ink); --muted: var(--sr-muted);
  --line: var(--sr-rule); --red: var(--sr-accent);
  --sans: Inter, "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  --serif: var(--sans);
}
.topic-original .trademark-guide .contents-grid a:hover { background: var(--sr-hover); }
.topic-original .trademark-guide .note { background: var(--sr-well); }
.topic-original .trademark-guide .chapter-body p { color: var(--sr-ink-2); }
.topic-original .trademark-guide .reading-tools button { border-color: var(--sr-rule-2); }
.topic-original .trademark-guide .reading-tools button[aria-pressed="true"],
.topic-original .trademark-guide .scenario-nav button[aria-pressed="true"] { background: var(--sr-primary); border-color: var(--sr-primary); color: var(--sr-on-primary); }
.topic-original .trademark-guide .chapter-pagination { border-top-color: var(--sr-rule); }
.topic-original .trademark-guide th { background: var(--sr-well); }
.topic-original .trademark-guide tbody tr { background: transparent; border-color: var(--sr-rule); }
.topic-original .trademark-guide :is(.tiles article, .text-link) { border-color: var(--sr-rule-2); }

/* dark theme: the handbook's printed plates become dark plates */
:host([data-theme="dark"]) .topic-original .trademark-guide :is(.strength-scale, .strength-scale article, .name-print, .search-art, .search-art .orbit, .search-art .orbit span, .class-poster, .basis-fork article, .evidence-gallery, .tag-hole, .receipt-model, .process-ribbon span, .calculator, .maintenance-line, .ownership-art, .document-pair article, .scenario-content, .fraud-panel, .source-list li:target) { background: var(--sr-well) !important; box-shadow: none; }
:host([data-theme="dark"]) .topic-original .trademark-guide :is(.name-print, .class-poster strong, .receipt-model small, .ownership-art i, .art-note, .calc-total output) { color: var(--sr-ink-2); }
:host([data-theme="dark"]) .topic-original .trademark-guide :is(.strength-scale b, .refs a, .maintenance-line strong, .document-pair small, .dispute-grid b, .fraud-panel > span) { color: #d7b47a; }
:host([data-theme="dark"]) .topic-original .trademark-guide .calculator select { background: var(--sr-sheet); border-color: var(--sr-rule-2); }
:host([data-theme="dark"]) .topic-original .trademark-guide :is(.process-ribbon, .process-ribbon span, .calc-total, .maintenance-line > div, .search-art:after, .ownership-art span) { border-color: var(--sr-rule-2); }
:host([data-theme="dark"]) .topic-original .trademark-guide .source-list li:target { box-shadow: 0 0 0 8px var(--sr-well); }

/* shared topic rule paints every .primary in #315f98 with !important; take it back */
.topic-original .business-ui .primary,
.topic-original .business-ui .search-button,
.topic-original .business-ui .dialog-primary { background: var(--sr-primary) !important; color: var(--sr-on-primary) !important; border-radius: 4px !important; }
.topic-original .business-ui .primary:hover { background: var(--sr-primary-hover) !important; }
.topic-original .trademark-guide .cover .primary { background: #fff !important; color: #17263c !important; border-radius: 4px !important; }
.topic-original .trademark-guide .primary { background: var(--sr-primary) !important; color: var(--sr-on-primary) !important; border-radius: 4px !important; }
.topic-original .pdf-export-button { border-color: var(--sr-rule-2); color: var(--sr-ink); background: var(--sr-sheet); border-radius: 4px; }
.topic-original .header .language-switch a[aria-current=page] { background: var(--sr-primary) !important; }

/* ---------- handbook home (rebuilt in the site's own style) ---------- */
.topic-original .trademark-guide .tm-home-cover { background: var(--sr-paper) !important; color: var(--sr-ink); padding: 0; min-height: 0; border: 0; }
.topic-original .trademark-guide .tm-home-cover::before, .topic-original .trademark-guide .tm-home-cover::after { display: none; }
.topic-original .trademark-guide .tm-home-contents { background: var(--sr-paper); padding: 0 40px 72px; }
.topic-original .trademark-guide .tm-hero { max-width: 1160px; margin: 0 auto; padding: 72px 40px 64px; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 72px; align-items: center; }
.topic-original .trademark-guide .tm-hero h1 { margin: 0 0 18px; font-family: var(--sans) !important; font-weight: 500; font-size: clamp(36px, 4.4vw, 56px); line-height: 1.25; color: var(--sr-ink); letter-spacing: .01em; }
.topic-original .trademark-guide .tm-hero h1 span { color: inherit; }
.topic-original .trademark-guide .tm-deck { margin: 0 0 14px; font-family: var(--sans) !important; font-size: 21px; line-height: 1.7; color: var(--sr-ink); }
.topic-original .trademark-guide .tm-desc { margin: 0 0 30px; font-size: 15px; line-height: 1.9; color: var(--sr-muted); }
.topic-original .trademark-guide .tm-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.topic-original .trademark-guide .tm-btn { display: inline-flex; align-items: center; min-height: 44px; padding: 10px 20px; font-size: 15px; font-weight: 500; border-radius: 4px; border: 1px solid var(--sr-rule-2); color: var(--sr-ink); background: var(--sr-sheet); text-decoration: none; }
.topic-original .trademark-guide .tm-btn:hover { border-color: var(--sr-ink); color: var(--sr-ink); }
.topic-original .trademark-guide .tm-btn-primary { font-weight: 600; background: var(--sr-primary); border-color: var(--sr-primary); color: var(--sr-on-primary); }
.topic-original .trademark-guide .tm-btn-primary:hover { background: var(--sr-primary-hover); border-color: var(--sr-primary-hover); color: var(--sr-on-primary); }
.topic-original .trademark-guide .tm-index-head { max-width: 1080px; margin: 0 auto; padding: 48px 0 8px; display: flex; justify-content: space-between; align-items: baseline; gap: 24px; }
.topic-original .trademark-guide .tm-index-head h2 { margin: 0; font-family: var(--sans) !important; font-weight: 500; font-size: 26px; color: var(--sr-ink); }
.topic-original .trademark-guide .tm-index-head p { margin: 0; font-size: 14px; color: var(--sr-muted); }
.topic-original .trademark-guide .tm-group { max-width: 1080px; margin: 0 auto; display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 40px; padding: 26px 0; border-top: 1px solid var(--sr-rule); }
.topic-original .trademark-guide .tm-group:first-of-type { border-top: 1px solid var(--sr-ink); margin-top: 16px; }
.topic-original .trademark-guide .tm-group h3 { margin: 4px 0 0; font-family: var(--sans) !important; font-size: 19px; font-weight: 600; color: var(--sr-ink); }
.topic-original .trademark-guide .tm-group h3 small { display: block; margin-top: 6px; font-family: inherit !important; font-weight: 400; font-size: 13px; color: var(--sr-muted); }
.topic-original .trademark-guide .tm-group ol { margin: 0; padding: 0; list-style: none; }
.topic-original .trademark-guide .tm-group li + li { border-top: 1px solid var(--sr-rule); }
.topic-original .trademark-guide .tm-group a { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 12px; padding: 14px 0; color: var(--sr-ink); text-decoration: none; }
.topic-original .trademark-guide .tm-no { font-family: var(--sans) !important; font-size: 18px; line-height: 1.5; color: var(--sr-faint); font-variant-numeric: tabular-nums; }
.topic-original .trademark-guide .tm-t b { display: block; font-size: 16px; font-weight: 600; line-height: 1.6; }
.topic-original .trademark-guide .tm-t small { display: block; margin-top: 3px; font-size: 14px; line-height: 1.75; color: var(--sr-muted); }
.topic-original .trademark-guide .tm-group a:hover .tm-t b { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.topic-original .trademark-guide .tm-group a:hover .tm-no { color: var(--sr-accent); }
.topic-original .trademark-guide .tm-group a:focus-visible { outline: 2px solid var(--sr-ink); outline-offset: 4px; }
@media (max-width: 900px) {
.topic-original .trademark-guide .tm-hero { grid-template-columns: 1fr; gap: 32px; padding: 40px 20px 36px; }
.topic-original .trademark-guide .tm-home-contents { padding: 0 20px 56px; }
.topic-original .trademark-guide .tm-index-head { flex-direction: column; gap: 6px; }
.topic-original .trademark-guide .tm-group { grid-template-columns: 1fr; gap: 10px; }
}
.topic-original.trademark-handbook { background: var(--sr-paper) !important; }
.topic-original .trademark-guide { background: var(--sr-paper); }

.topic-original .trademark-guide .tm-hero-copy { max-width: 560px; }
.topic-original .trademark-guide .tm-symbols { border-top: 1px solid var(--sr-ink); border-bottom: 1px solid var(--sr-ink); }
.topic-original .trademark-guide .tm-symbol { display: grid; grid-template-columns: 96px minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 20px; align-items: center; padding: 24px 0; }
.topic-original .trademark-guide .tm-symbol + .tm-symbol { border-top: 1px solid var(--sr-rule); }
.topic-original .trademark-guide .tm-symbol .tm-glyph { grid-row: 1 / 3; margin: 0; justify-self: start; }
.topic-original .trademark-guide .tm-glyph { display: inline-grid; place-items: center; height: 56px; margin-bottom: 18px; font-family: var(--sans) !important; font-size: 40px; font-weight: 400; line-height: 1; letter-spacing: .06em; color: var(--sr-ink); }
.topic-original .trademark-guide .tm-glyph.r { width: 56px; border: 2px solid var(--sr-ink); border-radius: 50%; font-size: 30px; letter-spacing: 0; }
.topic-original .trademark-guide .tm-symbol h3 { margin: 0 0 6px; font-family: var(--sans) !important; font-size: 19px; font-weight: 700; color: var(--sr-ink); }
.topic-original .trademark-guide .tm-symbol p { margin: 0; font-size: 14px; line-height: 1.8; color: var(--sr-muted); max-width: 30em; }
.topic-original .trademark-guide .tm-hero h1 { letter-spacing: 0 !important; line-height: 1.2 !important; font-size: clamp(36px, 4vw, 54px) !important; }
.topic-original .trademark-guide .tm-deck { margin-top: 6px; }
.topic-original .business-ui h1 { line-height: 1.15; letter-spacing: 0 !important; font-size: clamp(40px, 4.2vw, 64px) !important; }

/* Preserve the original diagrams and their copy; correct light/dark plate contrast. */
:host([data-theme="light"]) .topic-original .trademark-guide .symbol-stage { background:#e9ece9; color:var(--sr-ink); border:1px solid var(--sr-rule-2); }
:host([data-theme="light"]) .topic-original .trademark-guide .symbol-stage>div { border-color:var(--sr-rule-2); }
:host([data-theme="light"]) .topic-original .trademark-guide .symbol-stage :is(span,h3) { color:var(--sr-ink); }
.topic-original .trademark-guide .symbol-stage p { color:var(--sr-ink-2); }
:host([data-theme="dark"]) .topic-original .trademark-guide .symbol-stage { background:var(--sr-well); }
:host([data-theme="light"]) .topic-original .trademark-guide :is(.deadline-panel,.world-poster) { background:var(--sr-well); color:var(--sr-ink); border:1px solid var(--sr-rule); }
:host([data-theme="light"]) .topic-original .trademark-guide :is(.deadline-panel,.world-poster) :is(h3,p,strong,small,b) { color:var(--sr-ink-2); }
:host([data-theme="dark"]) .topic-original .trademark-guide :is(.deadline-panel,.world-poster) p { color:var(--sr-ink-2); }
/* Composite searches in the independent Business reader use the same one-border rule. */
.topic-original .business-ui .cov-search:focus-within { outline:none; box-shadow:none; border-color:var(--sr-primary); }
.topic-original .business-ui .cov-search input:focus { outline:none; box-shadow:none; }
