/* Perfect Pitch 2026 theme (dark). Loaded after the original stylesheets:
   changes colours and type only, never layout or behaviour. Delete this file to restore the old look. */
@font-face{font-family:"BSD Fallback";src:local("Arial Narrow Bold"),local("ArialNarrow-Bold"),local("Helvetica Neue Condensed Bold"),local("HelveticaNeue-CondensedBold"),local("Arial Bold"),local("Arial");size-adjust:74%;ascent-override:108%;descent-override:26%}
:root{
  color-scheme:dark;
  --pp-ground:#1B1E24; --pp-ground-2:#23272F; --pp-paper:#262A32; --pp-deep:#16181D; --pp-ink:#EEF0F3; --pp-ink-soft:#A7AEBB; --pp-ink-mute:#8A909B; --pp-line:#3A404B;
  --pp-yellow:#FFE800; --pp-pink:#FF48B0; --pp-blue:#4DA3DB; --pp-green:#2BC27A; --pp-orange:#FF6C2F;
  --pp-display:"Big Shoulders Display","BSD Fallback","Arial Narrow",sans-serif; --pp-serif:"Source Serif 4",Georgia,serif; --pp-mono:"IBM Plex Mono",ui-monospace,monospace;
  /* original design tokens, remapped for dark: surfaces dark, text light */
  --clr-porcelain:#262A32; --clr-moonstone:#23272F; --clr-hematite:#3A404B; --clr-labradorite:#A7AEBB;
  --clr-magnetite:#EEF0F3; --clr-obsidian:#0B0A09; --clr-deep-clay:#FFE800; --clr-old-gold:#FFE800; --clr-cobalt-dawn:#4DA3DB;
  --bg-primary:#1B1E24; --bg-secondary:#16181D; --bg-tertiary:#262A32;
  --border-default:#3A404B; --border-subtle:#2C313A;
  --text-primary:#EEF0F3; --text-secondary:#A7AEBB; --text-tertiary:#8A909B;
}
html,body{background:var(--pp-ground)!important;color:var(--pp-ink)}
body, body :where(p,span,div,a,li,button,input,textarea,select,label,td,th,small,strong,em){font-family:var(--pp-serif)!important}
body :where(h1,h2,h3,.section-title,.card-title,.welcome-title,.metric-value,.option-price,.option-name,.page-title,.alert-title){font-family:var(--pp-display)!important;font-weight:800;letter-spacing:.01em;line-height:1.02}
body :where(h1,.welcome-title,.section-title,.page-title,.alert-title){font-weight:900}
body :where(code,pre,.section-count,.update-date,.system-status-label,.system-status-value,.report-id){font-family:var(--pp-mono)!important}
body :where(.purchase-btn,.support-submit-btn,.action-btn,.mobile-magic-link-btn,.alert-btn){border-radius:999px!important}
body :where(input,textarea,select){background:var(--pp-ground)!important;color:var(--pp-ink)!important;border-color:var(--pp-line)!important}
body :where(input,textarea,select):focus{border-color:var(--pp-yellow)!important;outline:none}
::placeholder{color:var(--pp-ink-mute)!important}
a{text-underline-offset:3px}

/* header */
.header-bar{background:var(--pp-ground)!important;border-bottom:1.5px solid var(--pp-line)!important;position:relative!important}
.header-login-link,.header-user-email,.header-center,.header-tagline{color:var(--pp-ink)!important}
.header-logout-btn{color:var(--pp-ink)!important;background:transparent!important;border:1.5px solid var(--pp-line)!important;border-radius:999px!important}
.logo{filter:none}

/* dashboard */
.sidebar:has(.nav-item),.app-sidebar,.metrics-bar{background:var(--pp-deep)!important}
.sidebar:not(:has(.nav-item)){background:transparent!important}
.nav-item.active,.nav-item[aria-current]{background:var(--pp-yellow)!important;color:#16181D!important}
.nav-item.active *{color:#16181D!important}
.metric-value{color:var(--pp-ink)!important;font-size:30px!important;line-height:1!important}
.metric-label{color:var(--pp-ink-soft)!important}
.quote-text,.processing-message,.metric-change{color:var(--pp-ink-soft)!important}
.content-secondary{background-color:var(--pp-paper)!important;color:var(--pp-ink)!important;border:1.5px solid var(--pp-line)}
.content-secondary *{color:inherit}
.content-secondary a{color:var(--pp-ink)!important;text-decoration:underline;text-decoration-color:var(--pp-yellow);text-decoration-thickness:2px}
.content-secondary .update-date{color:var(--pp-ink-soft)!important}
.update-dot{background:var(--pp-pink)!important}
.report-id{background:var(--pp-ground)!important;color:var(--pp-ink)!important;border:1.5px solid var(--pp-line);border-radius:4px}
.section-count{background:var(--pp-paper)!important;color:var(--pp-ink)!important;border:1.5px solid var(--pp-line);border-radius:999px;padding:1px 10px}
.option-price{color:var(--pp-ink)!important}
.action-btn.primary,.purchase-btn,.support-submit-btn{background:var(--pp-yellow)!important;color:#16181D!important;border-color:var(--pp-yellow)!important}
.action-btn.primary:hover,.purchase-btn:hover,.support-submit-btn:hover{background:#FFF273!important;color:#16181D!important}

/* system pages (login success, errors, 404) */
.alert-page{background:var(--pp-ground)!important}
.alert-card{background:var(--pp-paper)!important;border:1.5px solid var(--pp-line)!important;border-radius:8px;box-shadow:0 30px 60px -34px rgba(0,0,0,.7)}
.alert-title{font-size:clamp(40px,5vw,60px)!important;line-height:.98!important;color:var(--pp-ink)!important}
.alert-message,.loading-text{color:var(--pp-ink-soft)!important}
.suggested-links,.features-box,.security-note{background:var(--pp-ground)!important;border-radius:6px;border:1.5px solid var(--pp-line)}
.suggested-links *,.features-box *,.security-note *{color:var(--pp-ink)!important}
.alert-btn{display:inline-flex!important;align-items:center;justify-content:center;background:var(--pp-yellow)!important;color:#16181D!important;padding:12px 26px!important;text-decoration:none!important;font-weight:600;border:0!important}
.alert-btn:hover{background:#FFF273!important}
.alert-btn-secondary{background:transparent!important;color:var(--pp-ink)!important;border:1.5px solid var(--pp-line)!important}
.page-title{font-size:clamp(48px,5vw,72px)!important;line-height:.98!important}
/* dialogs: sign-in box and contact form, dark */
.email-capture-modal{background:rgba(10,11,14,.72)!important}
.email-capture-content{max-width:520px!important;width:calc(100% - 32px)!important;margin:auto!important;background:#262A32!important;color:#EEF0F3!important;border:1.5px solid #3A404B!important;border-radius:8px!important;box-shadow:0 30px 80px -20px rgba(0,0,0,.7)!important}
.email-capture-header,.email-capture-body,.email-capture-footer{background:transparent!important;color:#EEF0F3!important;border-color:#3A404B!important}
.email-capture-title,.check-email-title,.error-title{font-family:"Big Shoulders Display","BSD Fallback","Arial Narrow",sans-serif!important;font-weight:900!important;color:#EEF0F3!important;letter-spacing:.01em}
.email-capture-description,.email-capture-label,.check-email-message,.check-email-instructions,.error-message,.capture-footer-text{color:#A7AEBB!important}
.email-capture-input{background:#1B1E24!important;color:#EEF0F3!important;border:1.5px solid #3A404B!important;border-radius:6px!important}
.email-capture-input:focus{border-color:#FFE800!important;outline:none}
.email-capture-submit,.try-again-btn{background:#FFE800!important;color:#16181D!important;border-radius:999px!important;border:0!important}
.email-capture-submit:hover:not(:disabled),.try-again-btn:hover{background:#FFF273!important;color:#16181D!important}
.resend-email-btn{background:transparent!important;color:#FFE800!important;border:1.5px solid #FFE800!important;border-radius:999px!important}
.email-capture-close{color:#EEF0F3!important;background:transparent!important}
.pp-contact-overlay{background:rgba(10,11,14,.72)!important}
.pp-contact-modal{background:#262A32!important;color:#EEF0F3!important;border:1.5px solid #3A404B!important;border-radius:8px!important}
.pp-contact-modal h2,.pp-contact-modal h3{font-family:"Big Shoulders Display","BSD Fallback","Arial Narrow",sans-serif!important;font-weight:900!important;color:#EEF0F3!important}
.pp-contact-modal .pp-sub,.pp-contact-status{color:#A7AEBB!important}
.pp-contact-modal input,.pp-contact-modal textarea,.pp-contact-modal select{background:#1B1E24!important;color:#EEF0F3!important;border:1.5px solid #3A404B!important;border-radius:6px!important}
.pp-contact-send{background:#FFE800!important;color:#16181D!important;border-radius:999px!important;border:0!important}
.pp-contact-cancel{color:#EEF0F3!important;border:1.5px solid #3A404B!important;border-radius:999px!important;background:transparent!important}
.pp-contact-close{color:#EEF0F3!important}
/* layout polish */
.sidebar:has(.nav-item){min-height:calc(100vh - 100px)}
.sidebar-card{background:var(--pp-paper)!important;border:1.5px solid var(--pp-line)!important;border-radius:6px}
.mobile-report-name{font-family:var(--pp-display)!important;font-weight:800!important;font-size:22px!important;line-height:1.05!important}
.mobile-report-subtitle,.mobile-report-time,.mobile-handoff-text{color:var(--pp-ink-soft)!important}
.mobile-download-button,.mobile-handoff-button{background:var(--pp-yellow)!important;color:#16181D!important;border:0!important;border-radius:999px!important;padding:9px 18px!important;font-weight:600!important;font-size:15px!important;margin-top:8px}
.mobile-handoff-button{background:transparent!important;color:var(--pp-ink)!important;border:1.5px solid var(--pp-line)!important}
.logo{opacity:1!important}
/* size fixes */
.alert-icon{font-size:0!important;line-height:0!important;width:64px;height:64px;margin:0 auto 18px!important;border-radius:50%;background:var(--pp-yellow);display:flex!important;align-items:center;justify-content:center}
.alert-icon::before{content:"\2713";font:700 34px/1 Georgia,serif;color:#16181D}
.page-title{font-size:clamp(36px,3.6vw,52px)!important}
.page-subtitle{font-size:18px!important}
