/*
Theme Name: Prism
Description: Private front-end reporting application with light and dark modes. Requires Lead Reporting Hub plugin 0.6.3+.
Version: 0.6.6
Author: VirtualBlend
Requires at least: 6.4
Requires PHP: 8.0
License: GPL-2.0-or-later
Text Domain: lead-reporting-hub-theme
*/
:root{color-scheme:light;--lrh-bg:#f5f4f8;--lrh-panel:#fff;--lrh-text:#242134;--lrh-muted:#6b657d;--lrh-line:#e8e4ee;--lrh-purple:#6e1c97;--ch-soft:#f0e8f7;--ch-shadow:0 10px 32px #2c164107;--lrh-on-purple:#fff;--ch-on-purple:#fff;--ch-focus:#9a55cf}
:root[data-lrh-theme="dark"]{color-scheme:dark;--lrh-bg:#171717;--lrh-panel:#262626;--lrh-text:#f2eef8;--lrh-muted:#b2a8c3;--lrh-line:#342b43;--lrh-purple:#c644fc;--ch-soft:#30223e;--ch-shadow:0 10px 32px #00000014;--lrh-on-purple:#fff;--ch-on-purple:#fff;--ch-focus:#cca6ec}
*{box-sizing:border-box}html{min-height:100%;scroll-behavior:smooth}body{margin:0;min-height:100vh;background:var(--lrh-bg);color:var(--lrh-text);font-family:Manrope,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px;line-height:1.6}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}a{color:var(--lrh-purple)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--ch-focus)}.ch-skip{position:absolute;top:-80px;left:20px;z-index:100;background:var(--lrh-panel);padding:12px 20px;border-radius:8px}.ch-skip:focus{top:12px}.ch-header{min-height:94px;padding:20px clamp(20px,3vw,52px);display:flex;justify-content:space-between;align-items:center;gap:24px;background:var(--lrh-panel);border-bottom:1px solid var(--lrh-line)}.ch-brand{display:flex;gap:15px;align-items:center;text-decoration:none;color:var(--lrh-text)}.ch-monogram{width:48px;height:48px;display:grid;place-items:center;background:#6e1c97;color:#fff;font-weight:800;font-size:32px;letter-spacing:-4px;padding-right:4px;line-height:1;border-radius:14px 14px 14px 3px}.ch-brand strong{display:block;font-size:12px;letter-spacing:.15em;font-weight:800}.ch-brand small{display:block;color:var(--lrh-muted);font-size:9px;letter-spacing:.18em;margin-top:3px}.ch-header-actions{display:flex;gap:22px;align-items:center}.ch-theme-toggle{display:flex;align-items:center;gap:8px;color:var(--lrh-muted);background:var(--lrh-panel);border:1px solid var(--lrh-line);padding:9px 12px;border-radius:8px;cursor:pointer;font-size:12px}.ch-theme-toggle:hover{color:var(--lrh-purple);background:var(--ch-soft)}.ch-account{display:flex;align-items:center;gap:9px;font-size:12px}.ch-avatar{background:var(--ch-soft);color:var(--lrh-purple);display:grid;place-items:center;width:30px;height:30px;border-radius:50%;font-size:10px}.ch-sign-out{font-size:12px;text-decoration:none;color:var(--lrh-muted)}.ch-sign-out:hover{text-decoration:underline;color:var(--lrh-purple)}.ch-private{font-size:11px;letter-spacing:.04em;color:var(--lrh-muted)}.ch-main{max-width:1600px;margin:0 auto;padding:38px clamp(20px,3vw,52px) 30px;min-height:calc(100vh - 162px)}.ch-main:focus{outline:none}.ch-footer{display:flex;justify-content:space-between;gap:20px;max-width:1600px;margin:0 auto;padding:16px clamp(20px,3vw,52px) 24px;color:var(--lrh-muted);font-size:10px;letter-spacing:.015em}.ch-footer i{display:inline-block;width:6px;height:6px;background:#8e71aa;border-radius:50%;margin-right:7px}.ch-footer-dot{margin:0 10px;opacity:.4}.ch-empty{max-width:560px;margin:10vh auto;background:var(--lrh-panel);border:1px solid var(--lrh-line);border-radius:18px;padding:40px;box-shadow:var(--ch-shadow)}.ch-empty h1{font-size:30px;letter-spacing:-.04em;line-height:1.2}.ch-empty p{color:var(--lrh-muted)}.ch-eyebrow{font-size:10px;font-weight:750;letter-spacing:.16em;text-transform:uppercase;color:var(--lrh-purple)!important}
/* The plugin retains all report markup and functionality; these are application-shell refinements. */
.ch-main .lrh{max-width:none;margin:0;font-family:inherit;color:var(--lrh-text)}.ch-main .lrh-header{padding:0 0 25px;background:none;border:0;margin:0}.ch-main .lrh-header h1{font-size:clamp(27px,3vw,38px);letter-spacing:-.045em;line-height:1.15;margin:6px 0 8px}.ch-main .lrh-header p{color:var(--lrh-muted)}.ch-main .lrh-eyebrow{color:var(--lrh-purple);font-size:10px;font-weight:750;letter-spacing:.16em}.ch-main .lrh-panel{box-shadow:var(--ch-shadow);border-radius:13px}.ch-main .lrh button{cursor:pointer}.ch-main .lrh button:disabled{cursor:not-allowed;opacity:.5}.ch-main .lrh dialog{background:var(--lrh-panel);color:var(--lrh-text);border-color:var(--lrh-line)}.ch-main .lrh dialog::backdrop{background:#12091ab3;backdrop-filter:blur(4px)}.ch-main .lrh-table th{font-size:10px;letter-spacing:.06em;text-transform:uppercase}.ch-main .lrh-stats strong{letter-spacing:-.05em}.ch-main .lrh-stats{gap:16px}.ch-main .lrh-pagination button,.ch-main .lrh details summary{font-size:12px}.ch-main .lrh details summary{color:var(--lrh-purple);cursor:pointer}.ch-main .lrh-table td{font-size:12px}
/* Dedicated sign-in and account recovery surfaces rendered by the plugin. */
.ch-signed-out .ch-main{display:grid;align-items:center}.ch-main .lrh-login,.ch-main .lrh-auth{width:min(100%,480px);margin:45px auto 65px;padding:42px;background:var(--lrh-panel);border:1px solid var(--lrh-line);border-radius:18px;box-shadow:var(--ch-shadow)}.ch-main .lrh-login h1,.ch-main .lrh-auth h1{font-size:33px;line-height:1.14;letter-spacing:-.045em;margin:0 0 14px}.ch-main .lrh-login p,.ch-main .lrh-auth p{color:var(--lrh-muted)}.ch-main .lrh-login label,.ch-main .lrh-auth label{display:block;font-size:12px;font-weight:600;margin:18px 0 7px}.ch-main .lrh-login input:not([type=checkbox]):not([type=hidden]),.ch-main .lrh-auth input:not([type=checkbox]):not([type=hidden]){width:100%;border:1px solid var(--lrh-line);border-radius:8px;background:var(--lrh-bg);color:var(--lrh-text);padding:12px;min-height:46px}.ch-main .lrh-login button,.ch-main .lrh-auth button,.ch-main .lrh-login input[type=submit],.ch-main .lrh-auth input[type=submit]{display:block;width:100%;border:0;border-radius:8px;background:var(--lrh-purple);color:var(--ch-on-purple);padding:13px 16px;margin-top:24px;font-weight:700;cursor:pointer}.ch-main .lrh-login .login-remember label{font-weight:400}.ch-main .lrh-login input[type=checkbox],.ch-main .lrh-auth input[type=checkbox]{accent-color:var(--lrh-purple)}
@media(min-width:1600px){.ch-header{padding-left:max(52px,calc((100vw - 1496px)/2));padding-right:max(52px,calc((100vw - 1496px)/2))}}
@media(max-width:800px){.ch-header{min-height:80px;padding:16px 20px;gap:16px}.ch-brand{gap:10px}.ch-brand strong{font-size:10px;letter-spacing:.08em}.ch-brand small{font-size:8px;letter-spacing:.08em}.ch-monogram{width:40px;height:40px;font-size:28px;border-radius:11px 11px 11px 3px}.ch-header-actions{gap:12px}.ch-mode-label,.ch-account,.ch-private{display:none}.ch-theme-toggle{padding:9px}.ch-main{padding:26px 20px}.ch-footer{padding:12px 20px 24px;flex-direction:column;gap:5px}.ch-main .lrh-login,.ch-main .lrh-auth{padding:28px;margin:20px auto 35px}.ch-main .lrh-header h1{font-size:28px}.ch-main .lrh-stats{gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Split sign-in screen: brand introduction paired with the secure form. */
.ch-main .lrh.lrh-login{display:grid;grid-template-columns:1.15fr 1fr;width:min(100%,1080px);margin:40px auto 70px;padding:0;overflow:hidden;gap:0;background:var(--lrh-panel)}
.ch-main .lrh-login-story{padding:55px 48px;background:linear-gradient(140deg,#6e1c97,#42125e);color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:470px;position:relative}
.ch-main .lrh-login-story .lrh-eyebrow{color:#e5bcfa}.ch-main .lrh-login-story h1{font-size:clamp(32px,3.6vw,47px);line-height:1.07;max-width:380px;margin:15px 0 22px}.ch-main .lrh-login-story p{color:#e6d3ef;max-width:350px;font-size:14px}.ch-main .lrh-login-card{padding:48px 40px}.ch-main .lrh-login-card h2{font-size:25px;letter-spacing:-.035em;margin:12px 0 9px}.ch-main .lrh-login-card>p{font-size:12px}.ch-main .lrh-login-card .lrh-check{display:flex;gap:9px;align-items:center;font-weight:400}.ch-main .lrh-login-card .lrh-recovery{display:block;margin-top:18px;font-size:12px;text-align:center}.ch-main .lrh-login-card button{margin-top:22px}.ch-main .lrh-login-lines{display:flex;gap:8px;height:78px;align-items:flex-end;margin-top:26px;opacity:.65}.ch-main .lrh-login-lines span{display:block;width:28px;height:35%;border-radius:5px 5px 0 0;background:#fff2}.ch-main .lrh-login-lines span:nth-child(2){height:52%}.ch-main .lrh-login-lines span:nth-child(3){height:46%}.ch-main .lrh-login-lines span:nth-child(4){height:74%;background:#c644fc}.ch-main .lrh-login-lines span:nth-child(5){height:65%}.ch-main .lrh-login-lines span:nth-child(6){height:100%;background:#23b8de}
@media(max-width:800px){.ch-main .lrh.lrh-login{grid-template-columns:1fr;margin:12px auto 35px;max-width:480px}.ch-main .lrh-login-story{min-height:0;padding:30px}.ch-main .lrh-login-story h1{font-size:32px;margin:8px 0 12px}.ch-main .lrh-login-story p{margin-bottom:0}.ch-main .lrh-login-lines{display:none}.ch-main .lrh-login-card{padding:30px}}

.ch-main .lrh-login-story h1{color:#fff}.ch-main .lrh-login-card{border:0;border-radius:0}.ch-main .lrh{padding:0}.ch-main .lrh-error{color:#9b3422!important}

:root{--logo-color:#1f1f1f}:root[data-lrh-theme="dark"]{--logo-color:#ffffff}
.ch-logo{display:flex;align-items:center}.ch-logo svg,.ch-logo img{display:block;width:auto;height:45px;max-width:200px;object-fit:contain}.ch-logo-dark{display:none}:root[data-lrh-theme="dark"] .ch-logo-light{display:none}:root[data-lrh-theme="dark"] .ch-logo-dark{display:flex}
@media(max-width:1000px){.ch-brand-caption{display:none}}@media(max-width:480px){.ch-logo svg,.ch-logo img{height:auto;max-height:38px;max-width:140px}.ch-header-actions{gap:8px}}
/* Accent-only purple and neutral text throughout the application shell. */
:root{--ch-soft:#eff0f3}:root[data-lrh-theme="dark"]{--ch-soft:#353840}
a,.ch-theme-toggle:hover,.ch-sign-out:hover,.ch-avatar{color:var(--lrh-text)}.ch-eyebrow{color:var(--lrh-muted)!important}
.ch-main .lrh-login-story{background:#272a32;border-left:4px solid var(--lrh-purple)}.ch-main .lrh-login-story p,.ch-main .lrh-login-story .lrh-eyebrow{color:#e2e5ec}.ch-main .lrh-login-story h1{color:#fff}
.ch-main .lrh .lrh-eyebrow,.ch-main .lrh details summary,.ch-main .lrh .lrh-property-open{color:var(--lrh-text)}
.ch-main .lrh-login-story .lrh-eyebrow{color:#e2e5ec}
:root{--lrh-bg:#f5f5f7;--lrh-text:#242730;--lrh-muted:#5d626d;--lrh-line:#e3e5e9;--lrh-link:#292c34}
:root[data-lrh-theme="dark"]{--lrh-bg:#171717;--lrh-text:#f2f3f5;--lrh-muted:#c0c4ce;--lrh-line:#41444d;--lrh-link:#f0f2f6}
/* Keep shell and sign-in button hovers consistent with the dashboard. */
.ch-theme-toggle,.ch-main input[type=submit]{transition:background-color .5s ease,color .5s ease,border-color .5s ease,box-shadow .5s ease}
@media(prefers-reduced-motion:reduce){.ch-theme-toggle,.ch-main input[type=submit]{transition:none!important}}
/* Compact square cj mark; uploaded replacement logos retain their own proportions. */
.ch-logo .ch-default-logo{width:45px;height:45px;flex-shrink:0}@media(max-width:480px){.ch-logo .ch-default-logo{width:38px;height:38px}}
/* The inline cj logo follows the accent on hover and keyboard focus. */
.ch-brand:hover .ch-logo,.ch-brand:focus-visible .ch-logo{--logo-color:var(--lrh-purple)}
.ch-logo svg path{transition:fill .5s ease}
@media(prefers-reduced-motion:reduce){.ch-logo svg path{transition:none}}
