/* POSA public website · PWA-matched theme.
 * Deliberately opt-in: client/PWA/Admin never load or match this stylesheet.
 * Palette follows the approved client terminal, not a second global theme. */
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url('../fonts/inter-latin.woff2') format('woff2')}
html[data-posa-public-theme="pwa"]{
 color-scheme:light;
 --posa-bg:#f5f7f9;--posa-surface:#fff;--posa-surface-2:#f1f6f4;--posa-surface-3:#e5eee9;
 --posa-border:#e2e7eb;--posa-border-2:#c7d8d0;
 --posa-text:#182c25;--posa-text-2:#465e55;--posa-text-3:#617381;--posa-text-4:#7b8c86;
 --posa-brand:#007f65;--posa-brand-2:#00876c;--posa-brand-3:#00644f;--posa-brand-soft:#e8f5ef;
 --posa-gain:#00794f;--posa-loss:#bc303f;--posa-rad:12px;--posa-rad-2:16px;--posa-rad-3:20px;
 --posa-font:Inter,system-ui,-apple-system,'Segoe UI',sans-serif;
 --posa-shadow:0 2px 8px #182c2504,0 12px 30px #182c2506;
 --pw-deep:#064d43;--pw-mint:#e8f5ef;--pw-blue:#245a94;--pw-violet:#684395;--pw-amber:#855713;
 --ink:var(--posa-text);--muted:var(--posa-text-3);--line:var(--posa-border);--soft:var(--posa-surface-2);
 --paper:var(--posa-bg);--card:var(--posa-surface);--brand:var(--posa-brand);--brand-2:var(--posa-brand-3);
 --brand-soft:var(--posa-brand-soft);--accent:var(--posa-brand);--primary:var(--posa-brand);
 --teal:var(--posa-brand);--teal-2:var(--posa-brand-3);--green:var(--posa-brand);--green-soft:var(--pw-mint);
 --pale:var(--posa-surface-2);--danger:var(--posa-loss);--black:var(--posa-text);
}
html[data-posa-public-theme="pwa"] body{
 --bg:var(--posa-bg);--surface:var(--posa-surface);--surface-2:var(--posa-surface-2);--surface-3:var(--posa-surface-3);
 --border:var(--posa-border);--border-2:var(--posa-border-2);--text:var(--posa-text);--text-2:var(--posa-text-2);
 --text-3:var(--posa-text-3);--text-4:var(--posa-text-4);--brand:var(--posa-brand);--brand-2:var(--posa-brand-3);
 --brand-soft:var(--posa-brand-soft);--primary:var(--posa-brand);--success:var(--posa-gain);
 background:var(--posa-bg)!important;color:var(--posa-text)!important;
 font-family:var(--posa-font)!important;-webkit-font-smoothing:antialiased;
}
html[data-posa-public-theme="pwa"] :is(button,input,select,textarea){font-family:var(--posa-font)!important;accent-color:var(--posa-brand)}
html[data-posa-public-theme="pwa"] :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--posa-brand)!important;outline-offset:3px}
html[data-posa-public-theme="pwa"] :is(h1,h2,h3,h4){color:var(--posa-text);text-wrap:balance}
html[data-posa-public-theme="pwa"] :is(.eyebrow,.h-tag,.card-tag,.reference a,.doc-body h3,.card>strong){color:var(--posa-brand)!important}
html[data-posa-public-theme="pwa"] :is(.hero h1 em,.h-hero h1 em){color:var(--posa-brand)!important}
html[data-posa-public-theme="pwa"] :is(.hero p,.section-head p,.h-section-head p,.h-hero-copy,.content p,.content li,.card p,.card li,.doc-body p,.doc-body li){color:var(--posa-text-2)}
html[data-posa-public-theme="pwa"] :is(.wrap,.doc,.doc-body,.card,.h-sc-card,.h-plan){min-width:0;overflow-wrap:anywhere}

/* Same white navigation, emerald actions and clear focus as the terminal. */
html[data-posa-public-theme="pwa"] header.h-header{background:#fffffff5!important;border-bottom:1px solid var(--posa-border)!important;box-shadow:0 1px 10px #182c2503}
html[data-posa-public-theme="pwa"] .h-logo-text{color:var(--posa-text-3);border-color:var(--posa-border)}
html[data-posa-public-theme="pwa"] .h-desktop-nav{gap:20px}
html[data-posa-public-theme="pwa"] .h-desktop-nav a{display:inline-flex;align-items:center;min-height:44px;color:var(--posa-text-2);font-size:13px;font-weight:550}
html[data-posa-public-theme="pwa"] .h-desktop-nav a:is(:hover,.on){color:var(--posa-brand);text-decoration:underline;text-underline-offset:9px;text-decoration-thickness:2px}
html[data-posa-public-theme="pwa"] .h-header-actions .h-login{min-height:44px!important;background:var(--posa-brand)!important;border-color:var(--posa-brand)!important;color:#fff!important;border-radius:10px!important;font-size:14px!important;padding-inline:19px!important}
html[data-posa-public-theme="pwa"] .h-header-actions .h-login:hover{background:var(--posa-brand-3)!important}
html[data-posa-public-theme="pwa"] .h-mobile-menu{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;border:1px solid #d5e8de!important;background:var(--pw-mint)!important;color:var(--posa-brand)!important}
html[data-posa-public-theme="pwa"] .h-mobile-drawer{background:#fff;border-color:var(--posa-border)}
html[data-posa-public-theme="pwa"] .h-mobile-drawer a{min-height:44px;color:var(--posa-text-2)}
html[data-posa-public-theme="pwa"] :is(.app-ui-dialog,.app-own-sheet,.h-modal,.pay-dialog){background:#fff!important;border-color:var(--posa-border)!important;border-radius:20px;color:var(--posa-text)}
html[data-posa-public-theme="pwa"] :is(.app-menu-link,.app-ui-btn){min-height:44px;border-color:var(--posa-border);color:var(--posa-text)}
html[data-posa-public-theme="pwa"] .app-menu-link:hover{background:var(--pw-mint);color:var(--posa-brand)}
html[data-posa-public-theme="pwa"] .app-menu-link svg{color:var(--posa-brand)}

/* Shared action language. Red/loss/validation states are intentionally separate. */
html[data-posa-public-theme="pwa"] :is(.h-btn,.btn){min-height:44px;border-radius:10px;border-color:#d5e2da;background:#fff;color:var(--posa-brand-3);font-weight:600}
html[data-posa-public-theme="pwa"] :is(.h-btn.primary,.btn.primary,.btn.dark,.app-ui-btn.primary){background:var(--posa-brand)!important;border-color:var(--posa-brand)!important;color:#fff!important;box-shadow:0 3px 8px #007f6510}
html[data-posa-public-theme="pwa"] :is(.h-btn.primary,.btn.primary,.btn.dark,.app-ui-btn.primary):hover{background:var(--posa-brand-3)!important;border-color:var(--posa-brand-3)!important}
html[data-posa-public-theme="pwa"] :is(.h-btn,.btn):disabled{opacity:.45;cursor:not-allowed}
html[data-posa-public-theme="pwa"] :is(.h-btn:not(.primary),.btn:not(.primary):not(.dark)):hover{background:var(--pw-mint);border-color:#b8daca}
html[data-posa-public-theme="pwa"] #posaFloatingInstall{background:var(--posa-brand)!important;color:#fff!important;border-color:var(--posa-brand)!important;border-radius:14px!important;min-height:44px}

/* Marketing surfaces use the same quiet canvas and crisp cards as the PWA. */
html[data-posa-public-theme="pwa"] :is(.h-hero,.hero){background:linear-gradient(120deg,#fff 30%,#f0f8f3)!important;border-bottom-color:var(--posa-border)}
html[data-posa-public-theme="pwa"] :is(.h-section,.section){background:transparent}
html[data-posa-public-theme="pwa"] :is(.h-section.alt,.h-broker-section,.alt){background:#edf4f0!important;border-color:#dfe9e3!important}
html[data-posa-public-theme="pwa"] :is(.h-lens,.h-sc-card,.h-plan,.h-broker-tile,.card,.panel,.doc,.aside,.signal,.content section,.contact-card){background:#fff!important;border-color:var(--posa-border)!important;border-radius:16px;box-shadow:var(--posa-shadow)}
html[data-posa-public-theme="pwa"] :is(.h-sc-card,.h-plan,.h-lens,.card.featured){transition:border-color .18s ease,box-shadow .18s ease}
html[data-posa-public-theme="pwa"] :is(.h-sc-card,.h-plan,.h-lens,.card.featured):hover{border-color:#b8d6c7!important;box-shadow:0 8px 24px #064d430b}
html[data-posa-public-theme="pwa"] .h-plan.featured{border-color:#8dc5ad!important;box-shadow:0 6px 24px #007f650b}
html[data-posa-public-theme="pwa"] :is(.h-featured-label,.h-step-number){background:var(--posa-brand)!important;color:#fff!important}
html[data-posa-public-theme="pwa"] :is(.h-sc-ico,.h-step-number,.step-number){background:var(--pw-mint);color:var(--posa-brand);border-color:#d1e6da}
html[data-posa-public-theme="pwa"] .h-sc-ico{border-radius:12px}
html[data-posa-public-theme="pwa"] :is(.h-sc-mgr,.h-sc-lock,.h-plan-reference,.reference,.fallback,.hero-note,.h-fineprint){color:var(--posa-text-3)!important}
html[data-posa-public-theme="pwa"] :is(.h-sc-lock a,.h-plan-price,.price,.pay-plan strong){color:var(--posa-brand-3)!important}
html[data-posa-public-theme="pwa"] .h-sc-perf{border-color:var(--posa-border);background:#f7faf8;border-radius:10px}
html[data-posa-public-theme="pwa"] .h-sc-perf span{color:var(--posa-text-3)}
html[data-posa-public-theme="pwa"] .h-sc-perf b{color:var(--posa-text)}
html[data-posa-public-theme="pwa"] :is(.h-sc-perf b.up,.pos){color:var(--posa-gain)!important}
html[data-posa-public-theme="pwa"] :is(.h-sc-perf b.down,.neg){color:var(--posa-loss)!important}
html[data-posa-public-theme="pwa"] :is(.h-floating-chip,.h-faq-list details){background:#fff;border-color:var(--posa-border);box-shadow:var(--posa-shadow)}
html[data-posa-public-theme="pwa"] :is(.h-floating-chip strong,.h-faq-list summary){color:var(--posa-text)}
html[data-posa-public-theme="pwa"] .h-floating-chip small{color:var(--posa-text-3)}
html[data-posa-public-theme="pwa"] .h-lens:nth-child(1) .h-icon{color:var(--posa-brand)}
html[data-posa-public-theme="pwa"] .h-lens:nth-child(2) .h-icon{color:var(--pw-blue)}
html[data-posa-public-theme="pwa"] .h-lens:nth-child(3) .h-icon{color:var(--pw-violet)}
html[data-posa-public-theme="pwa"] .h-lens:nth-child(4) .h-icon{color:var(--pw-amber)}
html[data-posa-public-theme="pwa"] :is(.h-zodiac-panel,.wide-card,.h-commodity){background:#edf7f1!important;border-color:#d4e7dc!important}
html[data-posa-public-theme="pwa"] :is(.h-zodiac-sign,.h-broker-tile:hover){background:#f5faf7;color:var(--posa-brand);border-color:#d6e8dd}
html[data-posa-public-theme="pwa"] :is(.h-spotlight,.h-app-banner,.h-final-cta,.app-panel){background:linear-gradient(120deg,#064d43,#006d58)!important;border-color:#00644f!important;color:#fff!important;box-shadow:0 12px 36px #064d4312}
html[data-posa-public-theme="pwa"] :is(.h-spotlight,.h-app-banner,.h-final-cta,.app-panel) :is(h2,h3,strong){color:#fff!important}
html[data-posa-public-theme="pwa"] :is(.h-spotlight,.h-app-banner,.h-final-cta,.app-panel) :is(p,small,.h-tag,.h-spotlight-header,.h-spotlight-row>span){color:#d4e9e0!important}
html[data-posa-public-theme="pwa"] .h-spotlight-row{border-color:#ffffff29!important}
html[data-posa-public-theme="pwa"] :is(.h-app-banner,.h-final-cta,.app-panel) :is(.h-btn,.btn){background:#e3f5ec!important;color:#064d43!important;border-color:#e3f5ec!important;box-shadow:none}

/* Documents stay unchanged; only their frame, typography and accents are themed. */
html[data-posa-public-theme="pwa"] :is(.doc-body,.content,.card) a:not(.btn){color:var(--posa-brand-3)}
html[data-posa-public-theme="pwa"] :is(.doc,.card,.aside){border-color:var(--posa-border)}
html[data-posa-public-theme="pwa"] .aside a{min-height:44px;display:flex;align-items:center;color:var(--posa-text-2);line-height:1.6;padding:7px 0}
html[data-posa-public-theme="pwa"] .aside a:is(:hover,.here){color:var(--posa-brand)}
html[data-posa-public-theme="pwa"] :is(.notice,.disclaimer,.note,.h-comp-note,.pay-terms){background:#edf7f1;border-color:#cde3d5;border-radius:12px;color:var(--posa-text-2)}
html[data-posa-public-theme="pwa"] :is(.doc-body,.card) table{display:block;max-width:100%;overflow-x:auto;border-color:var(--posa-border)}
html[data-posa-public-theme="pwa"] :is(.doc-body,.card) th{background:var(--posa-surface-2);color:var(--posa-text)}
html[data-posa-public-theme="pwa"] :is(.doc-body,.card) :is(td,th){border-color:var(--posa-border)}
html[data-posa-public-theme="pwa"] .contact .card{background:var(--posa-surface-2)!important;box-shadow:none}
html[data-posa-public-theme="pwa"] :is(.performance-grid .metric,.metric-mini span,.range){background:#f1f7f3;border-color:#dce9e0}
html[data-posa-public-theme="pwa"] :is(.portfolio[aria-pressed="true"],.range button[aria-pressed="true"]){background:var(--pw-mint);border-color:#b8d8c8;color:var(--posa-brand-3)}
html[data-posa-public-theme="pwa"] .chart-empty a{background:var(--posa-brand)!important;color:#fff!important}

/* Account access: same green, without changing validation or the OTP/PAN flow. */
html[data-posa-public-theme="pwa"] .gate{background:#fff;border-color:var(--posa-border);border-radius:20px;box-shadow:0 16px 48px #064d430a}
html[data-posa-public-theme="pwa"] .gate .progress span{background:linear-gradient(90deg,#064d43,#007f65)}
html[data-posa-public-theme="pwa"] .gate .tabs{background:var(--posa-surface-2)}
html[data-posa-public-theme="pwa"] .gate .tabs button[aria-selected="true"]{background:var(--posa-brand);color:#fff;box-shadow:0 2px 5px #007f6512}
html[data-posa-public-theme="pwa"] .gate .go{background:var(--posa-brand)!important;color:#fff!important;border-color:var(--posa-brand)!important}
html[data-posa-public-theme="pwa"] .gate .go:hover:not(:disabled){background:var(--posa-brand-3)!important}
html[data-posa-public-theme="pwa"] .gate :is(.link,.legal a,.google-note a){color:var(--posa-brand-3)}
html[data-posa-public-theme="pwa"] .gate .channels button[aria-pressed="true"]{background:var(--pw-mint);border-color:#9dceb8;color:var(--posa-brand-3)}
html[data-posa-public-theme="pwa"] .gate .field:not(.bad) .control:focus-within{border-color:var(--posa-brand);box-shadow:0 0 0 3px #007f6518}
html[data-posa-public-theme="pwa"] .gate .field.bad .control{border-color:var(--posa-loss)!important}
html[data-posa-public-theme="pwa"] .gate .field.ok .control{border-color:var(--posa-gain)!important}

/* Readable footer, rather than tiny low-contrast blue/teal links. */
html[data-posa-public-theme="pwa"] footer.h-footer{background:#fff!important;border-top:1px solid var(--posa-border)!important;color:var(--posa-text)!important}
html[data-posa-public-theme="pwa"] footer.h-footer .h-footer-brand p{font-size:12px!important;line-height:1.85;color:var(--posa-text-2)!important}
html[data-posa-public-theme="pwa"] footer.h-footer .h-footer-column strong{font-size:12px;color:var(--posa-text);letter-spacing:.025em}
html[data-posa-public-theme="pwa"] footer.h-footer a{color:var(--posa-text-2)!important}
html[data-posa-public-theme="pwa"] footer.h-footer .h-footer-column a{min-height:44px;margin:2px 0;display:flex;align-items:center;font-size:12px;line-height:1.6;color:var(--posa-text-2)!important}
html[data-posa-public-theme="pwa"] footer.h-footer a:hover{color:var(--posa-brand)!important}
html[data-posa-public-theme="pwa"] footer.h-footer .h-footer-bottom{border-color:var(--posa-border);color:var(--posa-text-3);font-size:11px}
html[data-posa-public-theme="pwa"] footer.h-footer .h-footer-bottom p{font-size:11px;line-height:1.85;color:var(--posa-text-3)!important}

@media(max-width:900px){
 html[data-posa-public-theme="pwa"] .h-header-actions .h-login{min-height:44px!important;min-width:64px!important;padding-inline:12px!important}
 html[data-posa-public-theme="pwa"] .h-logo-text{display:none}
 html[data-posa-public-theme="pwa"] :is(.h-app-banner,.h-final-cta,.app-panel){border-radius:16px}
 html[data-posa-public-theme="pwa"] .h-footer-top{gap:20px}
}
@media(max-width:760px){
 html[data-posa-public-theme="pwa"] .gate{border-radius:0;box-shadow:none}
 html[data-posa-public-theme="pwa"] .gate .inner{background:#fff}
}
@media(prefers-reduced-motion:reduce){html[data-posa-public-theme="pwa"] *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{
 html[data-posa-public-theme="pwa"] body{background:#fff!important;color:#111!important}
 html[data-posa-public-theme="pwa"] :is(.hero,.h-hero,.doc,.card){background:#fff!important;box-shadow:none!important}
 html[data-posa-public-theme="pwa"] .doc-body{color:#111}
}
/* Decorative rings must not widen narrow screens; never clip document content. */
@media(max-width:650px){
 html[data-posa-public-theme="pwa"] .h-visual-halo{inset:0!important}
 html[data-posa-public-theme="pwa"] .h-halo-ring{width:74%;height:74%;max-width:280px;max-height:280px}
}
html[data-posa-public-theme="pwa"] footer.h-footer .h-footer-column:last-child{display:block;grid-column:auto;min-width:0}
html[data-posa-public-theme="pwa"] footer.h-footer .h-footer-column a{overflow-wrap:anywhere}
@media(max-width:900px){
 html[data-posa-public-theme="pwa"] footer.h-footer .h-footer-top{grid-template-columns:repeat(2,minmax(0,1fr))}
 html[data-posa-public-theme="pwa"] footer.h-footer .h-footer-brand{grid-column:1/-1}
}
/* A single focus ring surrounds grouped fields; keep the input itself clear. */
html[data-posa-public-theme="pwa"] .gate .control input:focus-visible{outline:none!important}
html[data-posa-public-theme="pwa"] .toc{background:#fff;border:1px solid var(--posa-border)!important;border-radius:16px;box-shadow:var(--posa-shadow)}
html[data-posa-public-theme="pwa"] .toc a{display:flex;align-items:center;min-height:44px;color:var(--posa-text-2);font-size:12px;line-height:1.6}
html[data-posa-public-theme="pwa"] .toc a:hover{color:var(--posa-brand)}
html[data-posa-public-theme="pwa"] :is(.h-hero-meta,.h-preview-label,.h-proof-strip small,.h-fineprint,.h-sc-lock,.h-plan-reference){font-size:12px;color:var(--posa-text-3)!important;line-height:1.75}
html[data-posa-public-theme="pwa"] .h-proof-strip strong{font-size:13px;color:var(--posa-text-2)}
html[data-posa-public-theme="pwa"] .h-hero-visual-note{font-size:10px;color:var(--posa-text-3)}
