/* Almer Putra Angkasa 5.0.20 · a local, CSP-friendly visual layer.
   Only tokens + optional surfaces. No remote fonts, no network requests. */
:root{--apa-radius:18px;--apa-focus:#8454f5;--apa-ease:cubic-bezier(.2,.7,.2,1)}
html[data-theme="violetglass"]{color-scheme:light;--bg:#f5f0fc;--surface:#ffffffed;--border:#e2d9f1;--text:#27203e;--muted:#605a79;--primary:#6d3ec8;--on-primary:#fff;--success:#15755c;--danger:#a52f50;--warning:#835b18;--accent:#ba9dea;--accent-two:#f0c8ea;--soft:#f0e8fb;--side:#faf6ff;--shadow:0 14px 34px #41316a13;--radius:18px}
html[data-theme="executive"]{color-scheme:dark;--bg:#0e1525;--surface:#192238;--border:#34405c;--text:#f5f2ff;--muted:#bec6d9;--primary:#b8a0ff;--on-primary:#21173b;--success:#80dfbf;--danger:#ff96ad;--warning:#f2d48e;--accent:#a18bff;--accent-two:#5e7cc9;--soft:#25314b;--side:#101a2e;--shadow:0 18px 40px #0004;--radius:16px}
html[data-theme="pearl"]{color-scheme:light;--bg:#f8f7f5;--surface:#fff;--border:#e6e2e9;--text:#292634;--muted:#655e70;--primary:#6341ae;--on-primary:#fff;--success:#176950;--danger:#b33759;--warning:#866015;--accent:#ddd1f2;--accent-two:#f3e9ff;--soft:#f5f1fa;--side:#fefefd;--shadow:0 7px 24px #2520310a;--radius:14px}
html:is([data-theme="violetglass"],[data-theme="executive"],[data-theme="pearl"]) body::before{pointer-events:none;background:radial-gradient(circle at 95% 5%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 38%)}
html:is([data-theme="violetglass"],[data-theme="executive"],[data-theme="pearl"]) .card,
html:is([data-theme="violetglass"],[data-theme="executive"],[data-theme="pearl"]) .page-intro{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow)}
html:is([data-theme="violetglass"],[data-theme="executive"],[data-theme="pearl"]) .sidebar{background:var(--side);border-color:var(--border)}
html:is([data-theme="violetglass"],[data-theme="executive"],[data-theme="pearl"]) :is(.btn,button:not(.app-close),input,select,textarea){transition:background-color .18s var(--apa-ease),border-color .18s var(--apa-ease),box-shadow .18s var(--apa-ease)}
html:is([data-theme="violetglass"],[data-theme="executive"],[data-theme="pearl"]) :is(a,button,input,select,textarea):focus-visible{outline:3px solid var(--apa-focus);outline-offset:3px}
/* Theme gallery: previews inherit the correct palette instead of showing the old customer example. */
.theme-preview:is([data-theme="violetglass"],[data-theme="executive"],[data-theme="pearl"]){background:var(--bg);color:var(--text);border-color:var(--border)}
.theme-preview:is([data-theme="violetglass"],[data-theme="executive"],[data-theme="pearl"]) .theme-preview-side{background:var(--side)}
.theme-preview:is([data-theme="violetglass"],[data-theme="executive"],[data-theme="pearl"]) .theme-preview-panel{background:var(--surface);color:var(--text);border:1px solid var(--border)}
.theme-preview:is([data-theme="violetglass"],[data-theme="executive"],[data-theme="pearl"]) .theme-preview-button{background:var(--primary);color:var(--on-primary)}
.theme-preview[data-theme="violetglass"]{--bg:#f5f0fc;--surface:#fff;--border:#e2d9f1;--side:#faf6ff;--text:#27203e;--primary:#6d3ec8;--on-primary:#fff}
.theme-preview[data-theme="executive"]{--bg:#0e1525;--surface:#192238;--border:#34405c;--side:#101a2e;--text:#f5f2ff;--primary:#b8a0ff;--on-primary:#21173b}
.theme-preview[data-theme="pearl"]{--bg:#f8f7f5;--surface:#fff;--border:#e6e2e9;--side:#fff;--text:#292634;--primary:#6341ae;--on-primary:#fff}
/* Role-specific navigation: no invented dashboard metrics. */
.premium-hub-links{display:flex;gap:10px;align-items:center}.premium-hub-links>.btn{min-height:44px;border-radius:12px}
.premium-role-note{background:color-mix(in srgb,var(--app-primary,#7540cf) 7%,var(--app-surface,#fff));border:1px solid var(--app-border,#e6dcf5);color:var(--app-muted,#605a79);padding:12px 16px;border-radius:15px;margin:0 0 16px;font-size:13px}
.premium-wallet-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.premium-wallet-actions>.btn{min-height:44px;border-radius:14px}
/* Shared portal palette tokens; old Violet Glow stays unchanged. */
html[data-app-theme="violetglass"]{color-scheme:light;--app-bg:#f5f0fc;--app-surface:#fff;--app-text:#29213b;--app-muted:#625a79;--app-primary:#6936be;--app-tint:#efe7fa;--app-border:#e1d5f0;--app-hero:#57309b;--app-hero-end:#9462d7;--app-shadow:0 12px 32px #52377e19;--app-good:#147959}
html[data-app-theme="executive"]{color-scheme:dark;--app-bg:#0e1525;--app-surface:#192238;--app-text:#f5f2ff;--app-muted:#bdc6d9;--app-primary:#bea5ff;--app-tint:#30294b;--app-border:#34405c;--app-hero:#251e4c;--app-hero-end:#4c3d81;--app-shadow:0 12px 34px #0006;--app-good:#8ce6c0}
html[data-app-theme="pearl"]{color-scheme:light;--app-bg:#f8f7f6;--app-surface:#fff;--app-text:#292635;--app-muted:#655f72;--app-primary:#6341ae;--app-tint:#f3effb;--app-border:#e6e2eb;--app-hero:#58358f;--app-hero-end:#8765bb;--app-shadow:0 8px 26px #3a2f5510;--app-good:#176b54}
html[data-app-theme="violetglass"] .mobile-app :is(.card,.app-hero,.app-sheet),
html[data-app-theme="executive"] .mobile-app :is(.card,.app-hero,.app-sheet),
html[data-app-theme="pearl"] .mobile-app :is(.card,.app-hero,.app-sheet){border-radius:20px;box-shadow:var(--app-shadow)}
html[data-app-theme="executive"] .mobile-app :is(input,select,textarea){background:#1e2a44;color:#f5f2ff;border-color:#465477}
html[data-app-theme="executive"] .mobile-app :is(a,button,input,select,textarea):focus-visible{outline:3px solid #e2ccff;outline-offset:3px}
html[data-app-theme="violetglass"] .mobile-app :is(a,button,input,select,textarea):focus-visible,
html[data-app-theme="pearl"] .mobile-app :is(a,button,input,select,textarea):focus-visible{outline:3px solid #7746be;outline-offset:3px}
/* Swatches are visual samples only, never remote images. */
.app-theme-swatch[data-swatch="violetglass"]{background:linear-gradient(145deg,#e3d3fa 0 35%,#8459c7 36% 72%,#f8f2ff 73%)}
.app-theme-swatch[data-swatch="executive"]{background:linear-gradient(145deg,#0e1525 0 36%,#493c80 37% 73%,#b8a0ff 74%)}
.app-theme-swatch[data-swatch="pearl"]{background:linear-gradient(145deg,#faf9f7 0 35%,#ded4ec 36% 72%,#6341ae 73%)}
.app-theme-form [data-personal-theme-restore]{margin-top:6px;min-height:44px;width:auto}
@media(max-width:700px){.premium-hub-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.premium-hub-links>.btn{text-align:center;white-space:normal}.premium-wallet-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.premium-wallet-actions>.btn{justify-content:center}.premium-wallet-actions>.btn:last-child{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){html .premium-hub-links *,html .premium-wallet-actions *,html[data-app-theme] .mobile-app .card{animation:none!important;transition:none!important}}
