/* Public help, decision and business pages. Scoped to .guide. */
.guide-shell {
    --guide-ink: #19263d;
    --guide-muted: #5c687b;
    --guide-paper: #fff;
    --guide-soft: #f3f6fc;
    --guide-line: #dce3ed;
    --guide-action: #4f46e5;
    color: var(--guide-ink);
    background: var(--guide-paper);
    font-size: 16px;
    line-height: 1.6;
}
[data-theme="dark"] .guide-shell {
    --guide-ink: #edf2fa;
    --guide-muted: #b1bdd0;
    --guide-paper: #101827;
    --guide-soft: #162136;
    --guide-line: #33425a;
    --guide-action: #a5b4fc;
}
.guide-shell::before { display: none; }
.guide-shell .main-content { padding: 0; }
.guide-shell .navbar { background: var(--guide-paper); border-bottom: 1px solid var(--guide-line); box-shadow: none; }
.guide-shell :is(.nav-link-cta, .mobile-publish-btn) { background: #4f46e5; box-shadow: none; }
.guide-shell .avatar-guest { background: var(--guide-soft); color: var(--guide-ink); border: 1px solid var(--guide-line); box-shadow: none; }
.guide { background: var(--guide-paper); padding-bottom: 48px; }
.guide *, .guide *::before, .guide *::after { box-sizing: border-box; }
.guide-container { max-width: 1168px; margin: auto; padding: 0 24px; }
.guide h1, .guide h2, .guide h3 { color: var(--guide-ink); line-height: 1.25; margin: 0 0 12px; font-weight: 700; }
.guide h1 { font-size: clamp(26px, 3.3vw, 38px); max-width: 850px; letter-spacing: -.025em; }
.guide h2 { font-size: 24px; }
.guide h3 { font-size: 18px; }
.guide p { margin: 0 0 12px; }
.guide a { color: var(--guide-action); text-underline-offset: 3px; }
.guide a:hover { text-decoration: underline; }
.guide a:focus-visible, .guide summary:focus-visible, .guide [tabindex]:focus-visible { outline: 2px solid var(--guide-action); outline-offset: 4px; border-radius: 3px; }
.guide :is(section, details, article, aside)[id] { scroll-margin-top: 104px; }
.guide-breadcrumb { display: flex; gap: 10px; align-items: center; font-size: 13px; color: var(--guide-muted); padding-top: 12px; }
.guide-breadcrumb a { display: inline-flex; align-items: center; min-height: 44px; }
.guide-breadcrumb span:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.guide-header { padding: 16px 0 24px; }
.guide-header p { max-width: 760px; color: var(--guide-muted); font-size: 18px; margin: 0; }
.guide-section { padding-top: 32px; }
.guide-section > p { max-width: 760px; }
.guide-muted, .guide .guide-note { color: var(--guide-muted); }
.guide .guide-note { font-size: 14px; }
.guide-jumps { display: flex; gap: 8px 20px; flex-wrap: wrap; padding: 12px 0; border-block: 1px solid var(--guide-line); }
.guide-jumps a { min-height: 44px; display: inline-flex; align-items: center; font-weight: 600; }
.guide-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.guide-grid--two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.guide-card { border: 1px solid var(--guide-line); border-radius: 8px; padding: 24px; min-width: 0; }
.guide-card > svg { color: var(--guide-action); margin-bottom: 12px; }
.guide-card p:last-child { margin-bottom: 0; }
.guide-task { display: flex; gap: 14px; align-items: center; border: 1px solid var(--guide-line); padding: 16px; border-radius: 8px; min-height: 76px; text-decoration: none; }
.guide-task svg { flex-shrink: 0; }
.guide-task strong { color: var(--guide-ink); display: block; }
.guide-task small { color: var(--guide-muted); display: block; font-size: 14px; }
.guide-task:hover { background: var(--guide-soft); }
.guide-content { max-width: 820px; }
.guide ul, .guide ol { margin: 12px 0; padding-left: 24px; }
.guide li + li { margin-top: 8px; }
.guide-faq { border-top: 1px solid var(--guide-line); }
.guide-faq details { border-bottom: 1px solid var(--guide-line); }
.guide-faq summary { display: flex; gap: 16px; align-items: center; justify-content: space-between; padding: 18px 4px; cursor: pointer; font-weight: 600; list-style: none; }
.guide-faq summary::-webkit-details-marker { display: none; }
.guide-faq summary svg { flex-shrink: 0; color: var(--guide-muted); }
.guide-faq details[open] summary svg { transform: rotate(180deg); }
.guide-faq details > div { padding: 0 4px 20px; max-width: 76ch; }
.guide-faq details > div p:last-child { margin-bottom: 0; }
.guide-callout { padding: 24px; background: var(--guide-soft); border: 1px solid var(--guide-line); border-radius: 8px; }
.guide-callout--urgent { border-inline-start: 4px solid #bd621b; }
.guide-callout--urgent h2 { font-size: 22px; }
.guide-finish { margin-top: 32px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.guide-finish p { margin: 0; }
.guide a.guide-button { display: inline-flex; justify-content: center; align-items: center; gap: 10px; min-height: 46px; padding: 10px 18px; border: 1px solid #4f46e5; border-radius: 6px; background: #4f46e5; color: #fff; font-weight: 600; text-align: center; text-decoration: none; }
.guide a.guide-button:hover { background: #4338ca; }
.guide a.guide-button--secondary { background: var(--guide-paper); color: var(--guide-action); border-color: var(--guide-line); }
.guide a.guide-button--secondary:hover { background: var(--guide-soft); }
.guide-sources { font-size: 14px; color: var(--guide-muted); }
.guide-sources a { overflow-wrap: anywhere; }
.guide-table-wrap { overflow: auto; border: 1px solid var(--guide-line); border-radius: 8px; }
.guide-table { width: 100%; min-width: 780px; border-collapse: collapse; margin: 0; text-align: left; font-size: 15px; }
.guide-table caption { text-align: left; padding: 16px; color: var(--guide-muted); }
.guide-table th, .guide-table td { padding: 16px; vertical-align: top; border-bottom: 1px solid var(--guide-line); line-height: 1.5; }
.guide-table thead th { background: var(--guide-soft); font-size: 14px; }
.guide-table tbody th { position: sticky; left: 0; background: var(--guide-paper); min-width: 120px; box-shadow: 1px 0 var(--guide-line); }
.guide-table tr:last-child > * { border-bottom: 0; }
.guide-offer-summary { display: none; }
.guide-offer { display: flex; flex-direction: column; }
.guide-offer .guide-price { font-size: 32px; font-weight: 700; letter-spacing: -.025em; margin-bottom: 0; }
.guide-offer .guide-price span { font-size: 16px; letter-spacing: 0; }
.guide-offer .guide-offer-kind { font-size: 13px; text-transform: uppercase; letter-spacing: .06em; color: var(--guide-muted); margin-bottom: 8px; }
.guide-offer ul { flex: 1; }
.guide-offer .guide-button { margin-top: 12px; }
.guide-offer .guide-note { margin-top: 12px; }
.guide-offer-summary a { display: flex; flex-direction: column; min-height: 64px; justify-content: center; padding: 8px; text-decoration: none; border: 1px solid var(--guide-line); border-radius: 6px; }
.guide-offer-summary strong { color: var(--guide-ink); }
@media (max-width: 760px) {
    .guide-container { padding-inline: 20px; }
    .guide-grid { grid-template-columns: 1fr; gap: 12px; }
    .guide-header { padding-top: 12px; }
    .guide-header p { font-size: 16px; }
    .guide h2 { font-size: 22px; }
    .guide-card, .guide-callout { padding: 20px; }
    .guide-section { padding-top: 28px; }
    .guide-finish { flex-direction: column; align-items: stretch; gap: 16px; }
    .guide-offer-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-bottom: 16px; text-align: center; font-size: 14px; }
    .guide-offer ul { flex: auto; }
    .guide-table th, .guide-table td { padding: 12px; }
}
@media (max-width: 360px) { .guide-container { padding-inline: 16px; } .guide-card, .guide-callout { padding: 16px; } }

/* Business pages: reuse the guide layout and native disclosures. */
.guide-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 24px; margin-bottom: 12px; }
.guide-actions > a { display: inline-flex; align-items: center; min-height: 44px; }
.guide-card > .guide-button + .guide-note { margin-top: 12px; }
.guide-technical code { white-space: normal; overflow-wrap: anywhere; color: var(--guide-ink); }
.guide-address { font-style: normal; margin: 0 0 12px; }
