/* Line 16152 (google-path-public-16152-r1, 2026-09-29): the public agent page, the ACT embed chat, the paused-schedule
   form pages and the legacy agent threads page on the Google path. Linked only while ai.features.google_path_public_16152
   is on (App\Support\Marketing\GooglePathPublic16152), after public/css/ns-tokens.css, whose .ns-gp scope (system light
   and dark) and .ns-gp-ag scope (the app's theme switch) carry every value. This sheet holds no colour of its own: every
   value is a --ns-* token, and every rule is scoped under .ns-gp-16152, so an unmarked page keeps main's look. */

/* ── The public agent page (/agent/{slug}, layouts.landing: <body class="ns-gp ns-gp-16152 …">) ── */
body.ns-gp-16152 {
    background: var(--ns-bg);
    color: var(--ns-text);
    font-family: var(--ns-font);
}
.ns-gp-16152 :is(.landing-bg, .landing-main) { background: var(--ns-bg) !important; color: var(--ns-text); }
.ns-gp-16152 :is(.landing-header, .landing-footer) { background: var(--ns-bg-deep) !important; color: var(--ns-text); border-color: var(--ns-border) !important; box-shadow: none; }
.ns-gp-16152 :is(.landing-brand, .landing-link-btn) { color: var(--ns-text) !important; }
.ns-gp-16152 .landing-link-btn { min-height: 44px; display: inline-flex; align-items: center; }
.ns-gp-16152 .landing-footer :is(a, p, div, span) { color: var(--ns-text-2) !important; }

/* The page's own dialect (agent-profile-light.css) points at the tokens, so every rule that reads it follows. */
.ns-gp-16152 .agent-profile {
    --ns-bg-primary: var(--ns-bg);
    --ns-bg-secondary: var(--ns-bg-deep);
    --ns-bg-tertiary: var(--ns-surface);
    --ns-bg-elevated: var(--ns-card);
    --ns-bg-surface: var(--ns-card);
    --ns-text-primary: var(--ns-text);
    --ns-text-secondary: var(--ns-text-2);
    --ns-text-muted: var(--ns-text-2);
    --ns-border-subtle: var(--ns-border);
    background: var(--ns-bg);
    color: var(--ns-text);
    font-family: var(--ns-font);
}

/* One ground: every band of the page sits on the page colour (no dark strips in light, no cream band in dark). */
.ns-gp-16152 :is(.agent-hero, .agent-more-ways, .agent-try-chat, .agent-section, .agent-section--dark, .agent-final-cta, .agent-footer) {
    background: var(--ns-bg) !important;
    color: var(--ns-text);
    border-color: var(--ns-border) !important;
}
.ns-gp-16152 .agent-hero::before,
.ns-gp-16152 .agent-hero::after,
.ns-gp-16152 .agent-final-cta::before,
.ns-gp-16152 .agent-final-cta::after { display: none; }

/* Cards: one surface, one hairline, one radius, no glow. */
.ns-gp-16152 :is(.agent-hero__container, .agent-try-chat__panel, .interaction-card, .agent-channel-card, .agent-capability,
    .agent-expertise-card, .agent-trust-item, .act-preview-frame, .act-preview-skeleton, .agent-final-cta .agent-section__container) {
    background: var(--ns-card) !important;
    color: var(--ns-text) !important;
    border: 1px solid var(--ns-border) !important;
    border-radius: var(--ns-radius) !important;
    box-shadow: none !important;
}
.ns-gp-16152 .agent-final-cta .agent-section__container { padding: 32px 24px; }
.ns-gp-16152 .interaction-card--disabled { opacity: .72; }

/* Chips and the status pill sit on the surface in both schemes (main's white chips glared in dark). */
.ns-gp-16152 :is(.agent-badge--capability, .agent-hero__status, .agent-trait) {
    background: var(--ns-surface) !important;
    border-color: var(--ns-border) !important;
    color: var(--ns-text) !important;
}

/* One type scale: 28 / 20 / 16 px, and 24 / 18 at 375 px. */
.ns-gp-16152 .agent-hero__name { font-size: 28px !important; line-height: 1.25; font-weight: 500 !important; color: var(--ns-text) !important; letter-spacing: 0; }
.ns-gp-16152 :is(.agent-section__title, .agent-final-cta h2, .agent-try-chat__header h2) { font-size: 20px !important; line-height: 1.3; font-weight: 500 !important; color: var(--ns-text) !important; }
.ns-gp-16152 :is(.interaction-card__title, .agent-trust-item h3, .agent-capability__label, .agent-channel-card h3) { font-size: 16px !important; font-weight: 500 !important; color: var(--ns-text) !important; }
.ns-gp-16152 :is(.agent-hero__description, .agent-hero__tagline, .agent-section__subtitle, .agent-try-chat__header p, .agent-final-cta p,
    .interaction-card__desc, .agent-trust-item p, .agent-capability__desc, .agent-expertise-card__text, .agent-chat-meta, .agent-hero__cta-note,
    .act-preview-skeleton p) {
    font-size: 16px;
    color: var(--ns-text-2) !important;
}
.ns-gp-16152 :is(.agent-more-ways__title, .agent-hero__cta-note) { color: var(--ns-text-2) !important; }
.ns-gp-16152 .act-preview-skeleton :is(h2, h3, h4) { color: var(--ns-text) !important; }

/* One filled next step: the hero's Try a Conversation. Every other button is tonal. */
.ns-gp-16152 .agent-cta,
.ns-gp-16152 .agent-more-ways__link,
.ns-gp-16152 .act-preview-skeleton :is(a, button) {
    min-height: 44px;
    border-radius: 999px !important;
    box-shadow: none !important;
    font-family: var(--ns-font);
    font-weight: 500 !important;
}
.ns-gp-16152 :is(.agent-cta--primary, .agent-cta--secondary, .agent-more-ways__link, .act-preview-skeleton a, .act-preview-skeleton button) {
    background: var(--ns-surface) !important;
    color: var(--ns-text) !important;
    border: 1px solid var(--ns-border-strong) !important;
}
.ns-gp-16152 .agent-hero .agent-cta--primary {
    background: var(--ns-gold) !important;
    color: var(--ns-on-accent) !important;
    border-color: var(--ns-gold) !important;
}
.ns-gp-16152 :is(.agent-cta, .agent-more-ways__link, .act-preview-skeleton a, .act-preview-skeleton button):hover { background: var(--ns-elevated) !important; }
.ns-gp-16152 .agent-hero .agent-cta--primary:hover { background: var(--ns-gold-deep) !important; }
.ns-gp-16152 :is(.agent-more-ways__icon, .agent-cta__icon, .agent-chat-meta__link) { color: var(--ns-gold-light) !important; }
.ns-gp-16152 .agent-hero .agent-cta--primary .agent-cta__icon { color: inherit !important; }
.ns-gp-16152 :is(.agent-expertise-card__number, .agent-trust-item__icon, .agent-capability__icon, .interaction-card__icon) { color: var(--ns-gold-light) !important; }
.ns-gp-16152 :is(a, button, summary, input, select, textarea):focus-visible { outline: 2px solid var(--ns-gold-light); outline-offset: 2px; }

@media (max-width: 480px) {
    .ns-gp-16152 .agent-hero__name { font-size: 24px !important; }
    .ns-gp-16152 :is(.agent-section__title, .agent-final-cta h2, .agent-try-chat__header h2) { font-size: 18px !important; }
}

/* ── The paused-schedule form pages (standalone: <body class="form-…-body ns-gp ns-gp-16152">) ── */
.ns-gp-16152:is(.form-action-body, .form-confirm-body) {
    --nsk-bg: var(--ns-bg);
    --nsk-surface: var(--ns-card);
    --nsk-surface-2: var(--ns-surface);
    --nsk-text: var(--ns-text);
    --nsk-ink: var(--ns-text);
    --nsk-sub: var(--ns-text-2);
    --nsk-faint: var(--ns-text-2);
    --nsk-accent: var(--ns-gold);
    --nsk-accent-hover: var(--ns-gold-deep);
    --nsk-on-accent: var(--ns-on-accent);
    --nsk-bd: var(--ns-border-strong);
    --nsk-bd-soft: var(--ns-border);
    --nsk-bd-strong: var(--ns-border-strong);
    --nsk-inset: var(--ns-surface);
    --nsk-font-body: var(--ns-font);
    --nsk-font-display: var(--ns-font);
}
.ns-gp-16152 :is(.form-action-page, .form-confirm-page) h1 { font-size: 28px; font-weight: 500; line-height: 1.25; }
.ns-gp-16152 :is(.form-action-page, .form-confirm-page) h2 { font-size: 20px; font-weight: 500; }
.ns-gp-16152 :is(.form-action-page, .form-confirm-page) a { color: var(--ns-gold-light); }
.ns-gp-16152 :is(.form-action-page, .form-confirm-page) .nsk-card { box-shadow: none; border-color: var(--ns-border); border-radius: var(--ns-radius); }
.ns-gp-16152 :is(.form-action-page, .form-confirm-page) .nsk-input { background: var(--ns-bg); color: var(--ns-text); border-color: var(--ns-border-strong); min-height: 44px; }
.ns-gp-16152 :is(.form-action-page, .form-confirm-page) .nsk-cta { border-radius: 999px; font-weight: 500; }
/* One filled next step: Choose type and, once a preview is ready, Preview schedule step back to tonal. */
.ns-gp-16152 .form-action-page :is(form[method="get"], form:has(~ section[role="status"])) .nsk-cta-primary {
    background: var(--ns-surface);
    border-color: var(--ns-border-strong);
    color: var(--ns-text);
}
.ns-gp-16152 :is(.form-action-page, .form-confirm-page) :is(a, button, input, select, textarea):focus-visible { outline: 2px solid var(--ns-gold-light); outline-offset: 2px; }
@media (max-width: 480px) {
    .ns-gp-16152 :is(.form-action-page, .form-confirm-page) h1 { font-size: 24px; }
    .ns-gp-16152 :is(.form-action-page, .form-confirm-page) .nsk-cta { width: 100%; }
}

/* ── The legacy agent threads page (layouts.app: its container takes .ns-gp-ag .ns-gp-16152) ── */
.ns-gp-16152 .card.ns-card { background: var(--ns-card) !important; color: var(--ns-text); border: 1px solid var(--ns-border) !important; border-radius: var(--ns-radius); box-shadow: none; font-family: var(--ns-font); }
.ns-gp-16152 .agent-threads-header { background: var(--ns-card) !important; border-bottom: 1px solid var(--ns-border) !important; text-align: left !important; padding: 20px 24px !important; }
.ns-gp-16152 .agent-threads-header h1 { margin: 0; font-size: 28px; font-weight: 500; line-height: 1.25; color: var(--ns-text); }
.ns-gp-16152 #threads-container { padding: 24px; }
.ns-gp-16152 .ns-gp16152-empty p { margin: 0 0 16px; font-size: 16px; color: var(--ns-text-2); }
.ns-gp-16152 .ns-gp16152-next {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 0 24px;
    border-radius: 999px;
    background: var(--ns-gold);
    color: var(--ns-on-accent);
    font-weight: 500;
    text-decoration: none;
}
.ns-gp-16152 .ns-gp16152-next:hover { background: var(--ns-gold-deep); color: var(--ns-on-accent); }
.ns-gp-16152 #threads-container :is(summary, a.thread-link) { color: var(--ns-text); }
.ns-gp-16152 #threads-container .go-to-chat { background: var(--ns-surface); color: var(--ns-text); border: 1px solid var(--ns-border-strong); min-height: 36px; }
.ns-gp-16152 :is(a, button, summary):focus-visible { outline: 2px solid var(--ns-gold-light); outline-offset: 2px; }
@media (max-width: 480px) {
    .ns-gp-16152 .agent-threads-header h1 { font-size: 24px; }
}

/* ── The ACT embed chat (layouts.app: .desktop-container takes .ns-gp-ag .ns-gp-16152). The ACT dialect points at the
   tokens; the terminal stage itself keeps its dark theatre, as act-google-path.css does for the owner's ACT. ── */
.desktop-container.ns-gp-16152 {
    --ns-bg-primary: var(--ns-bg);
    --ns-bg-secondary: var(--ns-surface);
    --ns-bg-tertiary: var(--ns-elevated);
    --ns-bg-surface: var(--ns-card);
    --ns-bg-elevated: var(--ns-card);
    --ns-text-primary: var(--ns-text);
    --ns-text-secondary: var(--ns-text-2);
    --ns-text-muted: var(--ns-text-2);
    --ns-accent: var(--ns-gold);
    font-family: var(--ns-font);
    color: var(--ns-text);
}

/* H-0073: status labels are text, including on unavailable cards; do not fade the whole card. */
.ns-gp-16152 .agent-profile :is(.interaction-card--disabled, .interaction-card--coming) { opacity: 1 !important; filter: none; }
.ns-gp-16152 .agent-profile .interaction-card__badge {
    background: var(--ns-surface) !important; color: var(--ns-text) !important; border-color: var(--ns-border-strong);
}
/* Keep exploration as the one primary step; the existing prices and sign-up destinations stay available. */
.ns-gp-16152 netshow-stage > [data-stage-next-steps] .ns-stage-step {
    background: var(--ns-bg); color: var(--ns-text); border-color: var(--ns-border-strong); box-shadow: none;
}
.ns-gp-16152 netshow-stage > [data-stage-next-steps] .ns-stage-step[data-stage-step-cue="show:about"] {
    background: var(--ns-gold); color: var(--ns-on-accent); border-color: var(--ns-gold);
}
