/* portal-ux-20261031-r01 — guest pages: trust points, footer links, password reveal, documents.
   Loaded after the existing auth styles; only adds new classes and a few safe overrides. */

/* Logo never wider than its card (phones). */
.auth-card .auth-logo { height: auto; }

/* Light theme: logos with white lettering get a thin dark outline instead of disappearing. */
body.light-mode .auth-card .auth-logo,
body.light-mode .auth-scene-brand img,
body.light-mode .ppux-doc-logo {
  filter: drop-shadow(0 0 .7px rgba(15, 23, 42, .95)) drop-shadow(0 0 .7px rgba(15, 23, 42, .95)) drop-shadow(0 6px 14px rgba(15, 23, 42, .12)) !important;
}

/* Trust points */
.ppux-trust { list-style: none; margin: 16px 0 0; padding: 0; display: grid; gap: 6px; }
.ppux-trust li { display: flex; align-items: center; gap: 8px; font-size: 13px; line-height: 1.35; color: rgba(248, 250, 252, .9); }
.ppux-trust li svg { flex: 0 0 auto; width: 15px; height: 15px; color: var(--primary, #3b82f6); filter: drop-shadow(0 0 6px rgba(59, 130, 246, .35)); }
.ppux-trust li.is-live svg { color: #22c55e; filter: drop-shadow(0 0 6px rgba(34, 197, 94, .45)); }
.ppux-trust li.is-accent { font-weight: 700; color: #fde68a; }
.ppux-trust li.is-accent svg { color: #f59e0b; }
.ppux-trust-scene { max-width: 440px; }
/* The scene copy styles every <span> as a kicker pill; trust texts must stay plain. */
.auth-scene-copy .ppux-trust li span { display: inline; padding: 0; border: 0; border-radius: 0; background: none; color: inherit; font-size: inherit; font-weight: 600; letter-spacing: normal; text-transform: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
.ppux-trust-scene li { background: rgba(9, 9, 11, .36); border: 1px solid rgba(255, 255, 255, .07); border-radius: 10px; padding: 6px 10px; backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
.ppux-trust-card { display: none; margin: 14px 0 2px; text-align: left; gap: 5px; }
.ppux-trust-card li { font-size: 12.5px; color: var(--text-muted, #94a3b8); }
@media (max-width: 860px) {
  .ppux-trust-card { display: grid; }
}
body.light-mode .ppux-trust li { color: #334155; }
body.light-mode .ppux-trust-scene li { background: rgba(255, 255, 255, .78); border-color: rgba(15, 23, 42, .08); }
body.light-mode .ppux-trust li.is-accent { color: #92400e; }

/* Footer links (terms, privacy, shop, contact) */
.ppux-links { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 6px 10px; margin: 16px 0 0; font-size: 13px; }
.ppux-links a { color: var(--text-muted, #94a3b8); text-decoration: none; border-bottom: 1px solid transparent; }
.ppux-links a:hover, .ppux-links a:focus-visible { color: var(--text-main, #f8fafc); border-bottom-color: currentColor; }
.ppux-links span { color: var(--text-muted, #94a3b8); opacity: .5; }
body.light-mode .ppux-links a { color: #475569; }
body.light-mode .ppux-links a:hover { color: #0f172a; }

/* Password reveal button */
.ppux-pass { position: relative; display: block; width: 100%; }
.ppux-pass > input { width: 100%; padding-right: 48px !important; }
.ppux-pass-btn { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); width: 38px; height: 38px; display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: 10px; background: transparent; color: var(--text-muted, #94a3b8); cursor: pointer; }
.ppux-pass-btn:hover, .ppux-pass-btn:focus-visible { color: var(--text-main, #f8fafc); background: rgba(255, 255, 255, .06); outline: none; }
.ppux-pass-btn.is-on { color: var(--primary, #3b82f6); }
body.light-mode .ppux-pass-btn:hover { color: #0f172a; background: rgba(15, 23, 42, .06); }

/* Strength row can carry the rule text */
.str-row span { white-space: normal; }

/* Keyboard focus that is visible on every theme */
.auth-card a:focus-visible, .auth-card button:focus-visible, .ctrl-btn:focus-visible { outline: 2px solid var(--primary, #3b82f6); outline-offset: 2px; }

/* Document pages: terms.php, privacy.php */
body.ppux-doc { margin: 0; min-height: 100vh; background: radial-gradient(1200px 600px at 20% -10%, rgba(59, 130, 246, .16), transparent 60%), #09090b; color: #e2e8f0; font: 16px/1.65 'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif; }
.ppux-doc-wrap { max-width: 860px; margin: 0 auto; padding: 28px 16px 60px; }
.ppux-doc-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-bottom: 18px; }
.ppux-doc-logo { max-height: 56px; max-width: min(60vw, 280px); width: auto; height: auto; object-fit: contain; }
.ppux-doc-back { color: #93c5fd; text-decoration: none; font-weight: 600; font-size: 14.5px; }
.ppux-doc-back:hover { text-decoration: underline; }
.ppux-doc-card { background: rgba(18, 18, 20, .82); border: 1px solid rgba(255, 255, 255, .08); border-radius: 18px; padding: 28px clamp(18px, 4vw, 40px); box-shadow: 0 30px 80px -30px rgba(0, 0, 0, .6); }
.ppux-doc-card h1 { margin: 0 0 6px; font-size: clamp(24px, 4vw, 32px); letter-spacing: -.02em; color: #f8fafc; }
.ppux-doc-card h2 { margin: 24px 0 6px; font-size: 17px; color: #f8fafc; }
.ppux-doc-card p { margin: 6px 0; color: #cbd5e1; }
.ppux-doc-lead { color: #94a3b8 !important; font-size: 14px; margin-bottom: 14px !important; }
.ppux-doc-text { color: #cbd5e1; white-space: normal; word-wrap: break-word; }
.ppux-doc-note { margin-top: 18px !important; font-size: 13.5px; color: #94a3b8 !important; }
.ppux-doc .ppux-links { margin-top: 22px; }
body.ppux-doc.light-mode { background: #f1f5f9; color: #0f172a; }
body.ppux-doc.light-mode .ppux-doc-card { background: #fff; border-color: rgba(15, 23, 42, .08); box-shadow: 0 20px 50px -30px rgba(15, 23, 42, .25); }
body.ppux-doc.light-mode .ppux-doc-card h1, body.ppux-doc.light-mode .ppux-doc-card h2 { color: #0f172a; }
body.ppux-doc.light-mode .ppux-doc-card p, body.ppux-doc.light-mode .ppux-doc-text { color: #334155; }
body.ppux-doc.light-mode .ppux-doc-back { color: #1d4ed8; }

/* Password reset page: background layer is wider than the viewport */
body.portal-auth-forgot { overflow-x: hidden; }
/* Password reset page footer links sit inside the card */
.portal-auth-forgot .ppux-links { margin-top: 18px; }
