/* Line 15801 (upskill-doors-2-r1; r2 moved it here from content-google-path.css, which line 15812 owns): the Google path for the content doors (every layouts.content page: /completion,
   /features, /faq, /blog, /for/*) and for /register and /login, behind ai.features.upskill_doors_2
   (App\Support\DoorsUpskill2). The page's <body> takes .ns-gp, the token scope in public/css/ns-tokens.css (Google's
   surface greys, #202124 ink, #5f6368 secondary, NetShow gold as the accent; light by default, dark under
   prefers-color-scheme: dark), and this sheet re-points each family's own palette at those tokens: the landing
   layout's design-system names (--ns-bg-primary, --ns-text-*, --ns-accent*), the sign-in cards' --auth-* names, the
   split-shell top menu's names, and the colours the content views write inline. No colour of its own lives here
   except the chrome. On the content pages it extends line 15816's css/pages/doors-17.css (doors_17_modern, the same
   tokens): with both keys on, doors-17 draws the cards and headings and this sheet adds what it leaves (the completion
   form, alerts and cards, inline colours, the header button, the footer rows); /register and /login are this sheet's
   alone. 375 px first; tap targets stay 44 px. */

body.ns-gp {
    --ns-bg-primary: var(--ns-bg);
    --ns-bg-secondary: var(--ns-surface);
    --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);
    --ns-accent-hover: var(--ns-gold-deep);
    --ns-border-subtle: var(--ns-border);
    --ns-ink-accent: var(--ns-gold-light);
    --ns-chrome: rgba(255, 255, 255, .96);
    --ns-chrome-soft: rgba(255, 255, 255, .88);
    --landing-glow: none;
    background: var(--ns-bg) !important;
    color: var(--ns-text);
    font-family: var(--ns-font);
}

@media (prefers-color-scheme: dark) {
    body.ns-gp {
        --ns-chrome: rgba(32, 33, 36, .96);
        --ns-chrome-soft: rgba(32, 33, 36, .88);
    }
}

body.ns-gp .landing-bg { display: none; }

/* Header: the landing header and, where it is on, the split shell's one top menu. */
body.ns-gp .landing-header {
    background: var(--ns-chrome);
    border-bottom: 1px solid var(--ns-border);
    box-shadow: none;
}
body.ns-gp .landing-brand,
body.ns-gp .landing-link-btn { color: var(--ns-text-2); }
body.ns-gp .landing-link-btn:hover,
body.ns-gp .landing-link-btn.is-active { color: var(--ns-text); background: var(--ns-surface); }
body.ns-gp .landing-btn-primary,
body.ns-gp .landing-header .landing-btn-primary {
    background: var(--ns-gold);
    border-color: var(--ns-gold);
    color: var(--ns-on-accent);
}
body.ns-gp .landing-header .landing-btn-primary {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 0 18px;
    border-radius: 999px;
    box-shadow: none;
}
body.ns-gp .landing-btn-primary:hover,
body.ns-gp .landing-header .landing-btn-primary:hover { background: var(--ns-gold-deep); border-color: var(--ns-gold-deep); color: var(--ns-on-accent); }
body.ns-gp .landing-header .landing-btn-secondary,
body.ns-gp .landing-btn-secondary {
    background: transparent;
    border: 1px solid var(--ns-border-strong);
    color: var(--ns-text);
}
body.ns-gp :is(.ns-tm, .ns-foot) {
    --ns-bg: inherit;
    --ns-bg-deep: inherit;
    --ns-surface: inherit;
    --ns-elevated: inherit;
    --ns-card: inherit;
    --ns-text: inherit;
    --ns-text-2: inherit;
    --ns-gold: inherit;
    --ns-gold-light: inherit;
    --ns-gold-deep: inherit;
    --ns-border: inherit;
    --ns-border-strong: inherit;
    --ns-on-accent: inherit;
    --ns-chrome: inherit;
    --ns-chrome-soft: inherit;
}

/* ---------- The content family (layouts.content) ---------- */

body.ns-gp.ns-content-page { background: var(--ns-bg) !important; color: var(--ns-text); }
body.ns-gp .ns-content-hero::before { background: none; }
body.ns-gp .ns-content-hero h1,
body.ns-gp .ns-content-section h2,
body.ns-gp .ns-prose :is(h2, h3, strong),
body.ns-gp .ns-content-page :is(h1, h2, h3, h4) { color: var(--ns-text); letter-spacing: -0.01em; }
body.ns-gp .ns-content-hero h1 { font-weight: 700; }
body.ns-gp .ns-content-section h2 { font-weight: 700; }
body.ns-gp .ns-content-hero p,
body.ns-gp .ns-content-section p,
body.ns-gp .ns-prose :is(p, ul, ol, td),
body.ns-gp .nsc-faq-a { color: var(--ns-text-2); }
body.ns-gp .ns-prose a { color: var(--ns-gold-light); }
body.ns-gp .ns-prose blockquote { background: var(--ns-surface); border-left-color: var(--ns-gold); color: var(--ns-text); }
body.ns-gp .ns-prose th { background: var(--ns-surface); border-bottom-color: var(--ns-border); color: var(--ns-text); }
body.ns-gp .ns-prose td { border-bottom-color: var(--ns-border); }
body.ns-gp .ns-prose hr { border-top-color: var(--ns-border); }

body.ns-gp .ns-content-btn-primary {
    min-height: 44px;
    background: var(--ns-gold);
    color: var(--ns-on-accent);
    font-weight: 600;
    box-shadow: none;
}
body.ns-gp .ns-content-btn-primary:hover { transform: none; background: var(--ns-gold-deep); box-shadow: var(--ns-shadow, 0 1px 3px rgba(60, 64, 67, .3)); }
body.ns-gp .ns-content-btn-ghost {
    min-height: 44px;
    border-color: var(--ns-border-strong);
    color: var(--ns-text);
    font-weight: 600;
}
body.ns-gp .ns-content-btn-ghost:hover { background: var(--ns-surface); border-color: var(--ns-border-strong); color: var(--ns-text); }

body.ns-gp .ns-content-card {
    background: var(--ns-card);
    border: 1px solid var(--ns-border);
    border-radius: var(--ns-radius);
    box-shadow: none;
}
body.ns-gp .ns-content-card:hover { transform: none; border-color: var(--ns-border-strong); box-shadow: 0 1px 3px rgba(60, 64, 67, .18); }
body.ns-gp .ns-content-cta { background: var(--ns-bg-deep); border-top: 1px solid var(--ns-border); }
body.ns-gp .nsc-faq-q { color: var(--ns-text); }
body.ns-gp .nsc-faq-chev { color: var(--ns-text-2); }

/* The colours the content views write inline: ink, secondary, gold words and the dark card fills. */
body.ns-gp.ns-content-page :is([style*="color:#f0f0f5"], [style*="color:#e2e8f0"], [style*="color:#fff;"], [style*="color:#fff\""], [style*="color: #f0f0f5"]) { color: var(--ns-text) !important; }
body.ns-gp.ns-content-page :is([style*="color:#94a3b8"], [style*="color:#cbd5e1"], [style*="color:#64748b"], [style*="color:#475569"], [style*="color: #94a3b8"]) { color: var(--ns-text-2) !important; }
body.ns-gp.ns-content-page :is([style*="color:#f59e0b"], [style*="color:#fbbf24"], [style*="color:#f2b544"], [style*="color: #f59e0b"]) { color: var(--ns-gold-light) !important; }
body.ns-gp.ns-content-page :is([style*="background:rgba(22,33,62"], [style*="background:rgba(255,255,255,.02)"], [style*="background:rgba(255,255,255,.04)"], [style*="background:#0a0a14"]) { background: var(--ns-card) !important; }
body.ns-gp.ns-content-page :is([style*="background:rgba(245,166,35"], [style*="background:rgba(245,158,11"]) { background: var(--ns-surface) !important; }
body.ns-gp.ns-content-page [style*="border:1px solid rgba(255,255,255"] { border-color: var(--ns-border) !important; }

/* The Completion Utility's own cards, form and notes (resources/views/completion/*). */
body.ns-gp :is(.ns-cu-loop-step, .ns-cu-form, .ns-cu-learn-card, .ns-cu-live-inner, .ns-cu-after, .ns-cu-door, .ns-cu-amp-card, .ns-cu-learn-honest) {
    background: var(--ns-card);
    border: 1px solid var(--ns-border);
    box-shadow: none;
}
body.ns-gp .ns-cu-door--flagship { border-color: var(--ns-gold); }
body.ns-gp .ns-cu-learn { background: none; }
body.ns-gp :is(.ns-cu-loop-step, .ns-cu-learn-card, .ns-cu-after, .ns-cu-door, .ns-cu-amp-card) h3 { color: var(--ns-text); }
body.ns-gp :is(.ns-cu-loop-step p, .ns-cu-learn-card p, .ns-cu-after p, .ns-cu-door p, .ns-cu-amp-card p, .ns-cu-live-inner p, .ns-cu-learn-lead, .ns-cu-learn-honest, .ns-cu-talk, .ns-cu-hint, .ns-cu-opt, .ns-cu-submit-note, .ns-cu-door-tag) { color: var(--ns-text-2); }
body.ns-gp :is(.ns-cu-after strong, .ns-cu-learn-honest strong, .ns-cu-field label, .ns-cu-questions .ns-cu-q label, .ns-cu-submit-note a) { color: var(--ns-text); }
body.ns-gp :is(.ns-cu-eyebrow, .ns-cu-amp-label, .ns-cu-amp-more, .ns-cu-talk a, .ns-cu-req, .ns-cu-reflection .ns-cu-reflection-label) { color: var(--ns-gold-light); }
body.ns-gp :is(.ns-cu-loop-icon, .ns-cu-eq-icon, .ns-cu-learn-icon, .ns-cu-after-icon) { background: var(--ns-surface); color: var(--ns-gold-light); }
body.ns-gp .ns-cu-loop-num { color: var(--ns-border-strong); }
body.ns-gp .ns-cu-door-tag { border-color: var(--ns-border-strong); }
body.ns-gp .ns-cu-door-tag--amber { background: var(--ns-gold); color: var(--ns-on-accent); }
body.ns-gp .ns-cu-reflection { background: var(--ns-surface); border-color: var(--ns-border); color: var(--ns-text); }
body.ns-gp .ns-cu-form :is(textarea, input, select) { background: var(--ns-bg); border: 1px solid var(--ns-border-strong); color: var(--ns-text); }
body.ns-gp .ns-cu-form textarea::placeholder { color: var(--ns-text-2); }
body.ns-gp .ns-cu-form textarea:focus { border-color: #1a73e8; box-shadow: 0 0 0 3px rgba(26, 115, 232, .28); }
body.ns-gp .ns-cu-alert--success { background: var(--ns-surface); border-color: var(--ns-border); color: var(--ns-text); }
body.ns-gp .ns-cu-alert--warning { background: var(--ns-surface); border-color: var(--ns-gold); color: var(--ns-text); }
body.ns-gp .ns-code-frame { background: var(--ns-surface); border-color: var(--ns-border); }

/* The content footer. */
body.ns-gp .landing-footer { background: var(--ns-bg-deep); border-top: 1px solid var(--ns-border); color: var(--ns-text-2); }
body.ns-gp .landing-footer [style*="border-top:1px solid rgba(255,255,255"] { border-top-color: var(--ns-border) !important; }
body.ns-gp.ns-content-page.nsc-js .landing-footer .nsc-facc > summary.nsc-facc-sum { border-bottom-color: var(--ns-border); }

/* ---------- Sign-up and sign-in (the --auth-* cards) ---------- */

body.ns-gp .auth-page {
    --auth-bg-primary: var(--ns-bg);
    --auth-bg-secondary: var(--ns-surface);
    --auth-bg-tertiary: var(--ns-border);
    --auth-accent: var(--ns-gold-light);
    --auth-accent-hover: var(--ns-gold-deep);
    --auth-text-primary: var(--ns-text);
    --auth-text-secondary: var(--ns-text-2);
    --auth-text-muted: var(--ns-text-2);
    --auth-border: var(--ns-border-strong);
    --auth-focus-ring: 0 0 0 3px rgba(26, 115, 232, .28);
    color: var(--ns-text);
    font-family: var(--ns-font);
}
body.ns-gp .auth-card,
body.ns-gp .auth-plan-card {
    background: var(--ns-card);
    border: 1px solid var(--ns-border);
    border-radius: var(--ns-radius);
    box-shadow: 0 1px 2px rgba(60, 64, 67, .2), 0 2px 6px 2px rgba(60, 64, 67, .1);
}
body.ns-gp .auth-card-glow { box-shadow: 0 1px 2px rgba(60, 64, 67, .2), 0 2px 6px 2px rgba(60, 64, 67, .1); }
body.ns-gp .auth-title { color: var(--ns-text); font-weight: 600; letter-spacing: 0; }
body.ns-gp :is(.auth-subtitle, .auth-label, .auth-field-hint, .auth-legal-note, .register-note, .auth-onboarding-note, .auth-plan-ladder-note) { color: var(--ns-text-2); }
body.ns-gp .auth-onboarding-note strong { color: var(--ns-text); }
body.ns-gp .auth-page :is(.form-control, .form-select, .auth-input) {
    min-height: 44px;
    background: var(--ns-bg);
    border: 1px solid var(--ns-border-strong);
    border-radius: 8px;
    color: var(--ns-text);
}
body.ns-gp .auth-page :is(.form-control, .form-select, .auth-input)::placeholder { color: var(--ns-text-2); opacity: .8; }
body.ns-gp .auth-page :is(.form-control, .form-select, .auth-input):focus { border-color: #1a73e8; box-shadow: var(--auth-focus-ring); }
body.ns-gp .auth-page :is(.btn-primary, button[type="submit"], .auth-submit) {
    min-height: 44px;
    background: var(--ns-gold);
    border-color: var(--ns-gold);
    color: var(--ns-on-accent);
    font-weight: 600;
    box-shadow: none;
}
body.ns-gp .auth-page :is(.btn-primary, button[type="submit"], .auth-submit):hover { background: var(--ns-gold-deep); border-color: var(--ns-gold-deep); }
body.ns-gp .auth-page .auth-password-toggle { color: var(--ns-text-2); }
body.ns-gp .auth-divider-line { border-color: var(--ns-border); opacity: 1; }
body.ns-gp .auth-plan-row { background: var(--ns-surface); border: 1px solid var(--ns-border); }
body.ns-gp .auth-plan-row-name { color: var(--ns-text); }
body.ns-gp .auth-plan-row-price { color: var(--ns-gold-light); }
body.ns-gp .auth-plan-row :is(small, p, span:not(.auth-plan-row-name):not(.auth-plan-row-price)) { color: var(--ns-text-2); }
body.ns-gp .auth-page .plan :is(.plan-title, .plan-cost) { color: var(--ns-text); }
body.ns-gp .auth-page .plan :is(.plan-type, .plan-features) { color: var(--ns-text-2); }
