/* Midnight storefront. Presentation only: the PHP/Alpine purchase and account
   flows remain authoritative. Product artwork is never filtered or replaced. */
body.midnight-theme {
  color-scheme: dark;
  --rgb-primary: 96 215 235; --rgb-primary-light: 141 231 245; --rgb-primary-dark: 55 186 208;
  --rgb-accent: 96 215 235; --rgb-accent-light: 141 231 245; --rgb-accent-dark: 55 186 208;
  --rgb-ink: 237 243 248; --rgb-muted: 165 184 201; --rgb-bg: 8 15 22;
  --rgb-surface: 16 29 40; --rgb-border: 41 61 76; --rgb-hero: 8 15 22;
  --rgb-aurora-a: 18 58 73; --rgb-aurora-b: 12 33 47;
  --color-primary: #60d7eb; --color-primary-light: #8de7f5; --color-primary-dark: #37bad0;
  --color-accent: #60d7eb; --color-ink: #edf3f8; --color-muted: #a5b8c9;
  --color-bg: #080f16; --color-surface: #101d28; --color-border: #293d4c; --color-hero: #080f16;
  --gradient-primary: linear-gradient(120deg,#60d7eb,#60d7eb);
  --gradient-hero: linear-gradient(120deg,#080f16,#122735);
  --shadow-card: 0 8px 25px #0002; --shadow-card-hover: 0 18px 40px #0005;
  --shadow-btn: none; --radius-card: 10px; --radius-btn: 6px;
  background: var(--color-bg)!important; color: var(--color-ink)!important;
  font-family: 'Inter','Segoe UI',sans-serif; line-height: 1.65;
}
.midnight-theme :is(h1,h2,h3,h4,h5,h6,.font-headings,.fh) {font-family:'Inter','Segoe UI',sans-serif;letter-spacing:-.035em}
.midnight-theme h1 {line-height:1.13}
.midnight-theme :is(a,button,input,select,textarea):focus-visible {outline:2px solid #8de7f5;outline-offset:4px}
.midnight-theme ::selection {background:#24586a;color:white}
.midnight-theme :is(section[id],h2[id],div[id]) {scroll-margin-top:100px}
.midnight-theme .container {max-width:1280px}
.midnight-theme :is(.bg-white,.bg-gray-50,.bg-slate-50,.bg-gray-100,.bg-slate-100,.bg-gray-50\/50,.bg-gray-50\/80,.bg-white\/90,.bg-white\/95) {background-color:var(--color-surface)!important}
.midnight-theme :is(.text-gray-900,.text-gray-800,.text-slate-900,.text-slate-800,.text-gray-700,.text-slate-700) {color:#edf3f8!important}
.midnight-theme :is(.text-gray-600,.text-gray-500,.text-slate-600,.text-slate-500,.text-gray-400,.text-slate-400) {color:#a5b8c9!important}
.midnight-theme :is(.border-gray-100,.border-gray-200,.border-gray-300,.border-slate-100,.border-slate-200,.border-slate-300,.border-gray-100\/80,.divide-gray-200>*) {border-color:var(--color-border)!important}
.midnight-theme :is(.bg-blue-50,.bg-indigo-50,.bg-purple-50,.bg-cyan-50,.bg-blue-100,.bg-indigo-100,.bg-purple-100) {background-color:#15313f!important}
.midnight-theme :is(.text-blue-500,.text-blue-600,.text-blue-700,.text-blue-800,.text-blue-900,.text-indigo-500,.text-indigo-600,.text-indigo-700,.text-indigo-800,.text-indigo-900,.text-purple-600,.text-purple-700,.text-purple-800,.text-purple-900) {color:#82deef!important}
.midnight-theme :is(.border-blue-100,.border-blue-200,.border-indigo-100,.border-indigo-200,.border-purple-200) {border-color:#315867!important}
.midnight-theme :is(.bg-amber-50,.bg-yellow-50,.bg-amber-100,.bg-yellow-100,.bg-orange-50) {background-color:#332c1d!important}
.midnight-theme :is(.text-amber-600,.text-amber-700,.text-amber-800,.text-amber-900,.text-yellow-700,.text-yellow-800,.text-orange-700) {color:#f4d18c!important}
.midnight-theme :is(.bg-green-50,.bg-emerald-50,.bg-green-100,.bg-emerald-100) {background-color:#14392f!important}
.midnight-theme :is(.text-green-600,.text-green-700,.text-green-800,.text-green-900,.text-emerald-600,.text-emerald-700,.text-emerald-800) {color:#84e0ba!important}
.midnight-theme :is(.bg-red-50,.bg-red-100,.bg-rose-50) {background-color:#3b2027!important}
.midnight-theme :is(.text-red-600,.text-red-700,.text-red-800,.text-red-900,.text-rose-600) {color:#ffa4b3!important}
.midnight-theme :is(.hover\:bg-gray-50,.hover\:bg-gray-100,.hover\:bg-slate-50):hover {background-color:#1c3342!important}
.midnight-theme :is(.rounded-3xl,.rounded-2xl) {border-radius:12px}
.midnight-theme :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),select,textarea) {background:#0a151e!important;color:#edf3f8!important;border-color:#354e60!important;border-radius:6px;accent-color:#60d7eb}
.midnight-theme :is(input,textarea)::placeholder {color:#8196a8;opacity:1}
.midnight-theme :is(input,select,textarea) {min-width:0;max-width:100%}
.midnight-theme :is(input[type=checkbox],input[type=radio]) {accent-color:#60d7eb}
.midnight-theme :is(a,button)[class*='bg-gradient-to-'],.midnight-theme :is(a,button).bg-primary,.midnight-theme :is(a,button).bg-indigo-600,.midnight-theme :is(a,button).bg-blue-600 {background:#60d7eb!important;background-image:none!important;color:#06232d!important;box-shadow:none;border-radius:6px}
.midnight-theme :is(a,button)[class*='bg-gradient-to-']:hover,.midnight-theme :is(a,button).bg-primary:hover {background:#8de7f5!important}
.midnight-theme :is(a,button)[class*='bg-gradient-to-'] :is(span,svg) {color:inherit!important}
.midnight-theme a[class*='bg-gradient-to-'] :is(p,h3) {color:inherit!important}
.midnight-theme .divide-gray-100>:not([hidden])~:not([hidden]) {border-color:#293d4c!important}
.midnight-theme [class*='from-gray-50'],.midnight-theme [class*='from-indigo-50'],.midnight-theme [class*='from-blue-50'],.midnight-theme [class*='from-purple-50'] {background-image:linear-gradient(130deg,#10232e,#101b25)!important}
.midnight-theme .midnight-nav {background:#0a131deF!important;border-color:#263b49!important;box-shadow:none}
.midnight-theme .midnight-nav>div:first-child {max-width:1300px;height:84px;padding-inline:28px}
.midnight-wordmark {font:600 30px/1.1 'Inter','Segoe UI',sans-serif;letter-spacing:-1.7px;color:#f0f5f9!important;white-space:nowrap}
.midnight-wordmark span {color:#60d7eb}
.midnight-theme .midnight-footer {background:#080f16!important;border-top:1px solid #293d4c}
.midnight-theme .midnight-footer>div:first-child {max-width:1300px}
.midnight-theme .midnight-footer h4 {font-size:11px;letter-spacing:.16em}
.midnight-theme .midnight-footer a {font-size:13px}
.midnight-theme .midnight-footer .midnight-wordmark {font-size:27px}
.midnight-theme .midnight-footer a:hover {color:#8de7f5!important;transform:none}
.midnight-theme .midnight-footer .border-gray-800 {border-color:#293d4c}
/* Approved cinematic homepage. All calls to action use the real site routes. */
.midnight-home-hero {position:relative;isolation:isolate;min-height:610px;display:flex;align-items:center;background:#080f16 url('/images/midnight-hero.jpg') center center/cover no-repeat;border-bottom:1px solid #263b49}
.midnight-home-hero:before {content:'';position:absolute;inset:0;background:linear-gradient(90deg,#080f1666,transparent 65%);z-index:-1}
.midnight-hero-inner {width:min(1180px,90%);margin:auto;padding:64px 0}
.midnight-eyebrow {display:flex;align-items:center;gap:16px;font-size:10px;letter-spacing:.23em;text-transform:uppercase;color:#a5b8c9;margin-bottom:28px}
.midnight-eyebrow:before {content:'';width:34px;height:1px;background:#60d7eb}
.midnight-home-hero h1 {font-size:clamp(44px,5vw,72px);font-weight:750;letter-spacing:-.055em;max-width:670px;margin:0 0 24px;line-height:1.06;color:#edf3f8}
.midnight-home-hero .midnight-lead {font-size:20px;color:#b3c3d2;max-width:540px}
.midnight-actions {display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.midnight-button {display:inline-flex;align-items:center;justify-content:center;gap:28px;background:#60d7eb;color:#06232d!important;padding:14px 23px;border:1px solid #60d7eb;border-radius:6px;font-size:14px;font-weight:650;transition:background .2s,transform .2s}
.midnight-button:hover {background:#8de7f5;transform:translateY(-1px)}
.midnight-button.secondary {background:#09141ea6;border-color:#647e90;color:#e2ecf4!important}
.midnight-hero-caption {display:flex;gap:25px;border-top:1px solid #3c5463;width:fit-content;margin-top:47px;padding-top:20px;font-size:9px;letter-spacing:.17em;text-transform:uppercase;color:#93a9bd}
.midnight-theme #software {background:#080f16!important;padding-block:65px}
.midnight-theme #software>.container>div:first-child {text-align:left;max-width:1152px;margin:0 auto 38px}
.midnight-theme #software>.container>div:first-child>p {margin-left:0;font-size:15px;max-width:650px}
.midnight-theme #software h2 {font-size:clamp(30px,3.4vw,46px)}
.midnight-theme .sw-shimmer-text {animation:none!important;background:none!important;-webkit-text-fill-color:#edf3f8!important;color:#edf3f8!important}
.midnight-theme #software .grid>div {box-shadow:none;border-color:#263b49;border-radius:10px}
.midnight-theme #software .grid>div:hover {border-color:#486f82;transform:none}
.midnight-theme #software .grid>div:after {display:none}
.midnight-theme #software img {filter:none;transform:none!important}
.midnight-theme #software .grid>div>.p-7 {padding:24px}
.midnight-theme #software .grid>div .h-56 {background:#0d1924!important}
.midnight-theme #services,.midnight-theme #contact {background:#0c1822!important;border-top:1px solid #263b49}
.midnight-theme .reveal,.midnight-theme .anim-reveal {opacity:1!important;transform:none!important}
/* Existing guide components share this palette, retaining their own content. */
.midnight-theme .hero-section {background:linear-gradient(120deg,#080f16,#112736)!important;border-bottom:1px solid #293d4c}
.midnight-theme .hero-section:before,.midnight-theme .hero-section:after {display:none!important}
.midnight-theme .hero-section>.container {padding-block:64px}
.midnight-theme .hero-badge {background:transparent;border:0;border-radius:0;padding:0;color:#8bc5d5;font-size:11px;letter-spacing:.08em}
.midnight-theme .hero-title {font-size:clamp(38px,4.4vw,62px);letter-spacing:-.045em;font-weight:700}
.midnight-theme .hero-description {font-size:16px;color:#afc3d3;line-height:1.8}
.midnight-theme .hero-price-box {background:#132733;border:1px solid #355568;border-radius:8px}
.midnight-theme .hero-price-box:after {display:none}
.midnight-theme :is(.hero-cta,.cta-button) {background:#60d7eb!important;color:#06232d!important;border-radius:6px;box-shadow:none}
.midnight-theme .hero-cta[style*='transparent'] {background:transparent!important;color:#dceef5!important;border-color:#57788b!important}
.midnight-theme :is(.feature-card,.testimonial-card,.faq-item) {background:#101d28;border:1px solid #293d4c;border-radius:10px;box-shadow:none}
.midnight-theme :is(.feature-card,.testimonial-card):hover {transform:translateY(-3px);box-shadow:none}
.midnight-theme :is(.features-section,.showcase-section,.screenshots-section,.social-proof-section,.faq-section) {background:#080f16!important}
.midnight-theme :is(.feature-description,.testimonial-text,.showcase-list li) {color:#a5b8c9!important}
.midnight-theme .feature-card .feature-icon {background:#153342!important;box-shadow:none;border:1px solid #315b6c;border-radius:10px!important}
.midnight-theme .feature-card .feature-icon svg {color:#60d7eb!important;stroke:#60d7eb!important}
.midnight-theme .awards-strip {background:#101d28;border-block:1px solid #293d4c}
.midnight-theme .cta-section {background:linear-gradient(110deg,#132d3c,#0b151f)!important;border-block:1px solid #293d4c}
/* Forms keep all existing names, actions, CSRF fields and Alpine bindings. */
.midnight-auth {width:min(1180px,94%);margin:auto;gap:90px;min-height:710px}
.midnight-auth-story {flex:1;max-width:560px}
.midnight-auth-story h2 {font-size:clamp(32px,3.7vw,50px);line-height:1.12;margin-bottom:24px;font-weight:650}
.midnight-auth-story p:not(.midnight-eyebrow) {color:#a5b8c9;max-width:460px;font-size:16px}
.midnight-auth-story img {width:100%;height:240px;object-fit:cover;object-position:78% center;margin-top:32px;border-radius:10px}
.midnight-auth>.max-w-md {max-width:440px;flex:1}
.midnight-theme [x-data='cartPage()'],.midnight-theme [x-data='checkoutPage()'] {background:#080f16!important;padding-block:50px}
.midnight-theme [x-data='cartPage()']>div,.midnight-theme [x-data='checkoutPage()']>div {max-width:1240px}
.midnight-theme :is([x-data='cartPage()'],[x-data='checkoutPage()']) h1 {font-size:clamp(32px,4vw,46px);letter-spacing:-.045em}
.midnight-theme :is([x-data='cartPage()'],[x-data='checkoutPage()']) .shadow-sm {box-shadow:none;border:1px solid #293d4c}
.midnight-theme :is(.legal-hero,.rt-hero,.rp-hero) {background:linear-gradient(120deg,#080f16,#122735)!important;border-bottom:1px solid #293d4c}
.midnight-theme :is(.legal-doc,.rt-wrap,.rp-doc) {background:#080f16!important}
.midnight-theme :is(.legal-paper,.legal-doc .border.rounded-lg,.rt-intro,.rt-sec,.rp-card,.rp-modal) {background:#101d28!important;border:1px solid #293d4c!important;box-shadow:none!important;border-radius:10px!important}
.midnight-theme :is(.legal-doc,.rt-sec,.rt-intro,.rp-card,.rp-modal) :is(p,li,address,label) {color:#afc0cf!important;line-height:1.85}
.midnight-theme :is(.legal-doc,.rt-sec,.rt-intro,.rp-card,.rp-modal) :is(h2,h3,strong) {color:#edf3f8!important;border-color:#293d4c!important}
.midnight-theme :is(.legal-doc,.rt-sec,.rt-intro,.rp-card,.rp-modal) a {color:#60d7eb!important}
.midnight-theme :is(.rt-callout,.rp-note) {background:#14303d!important;border-color:#315465!important}
.midnight-theme :is(.rt-callout,.rp-note) p {color:#c4e2ed!important}
.midnight-theme :is(.rt-cta,.rp-cta) {background:#60d7eb!important;color:#06232d!important;border-radius:6px;box-shadow:none}
.midnight-theme :is(.rt-num,.rp-num) {background:#1e485b;color:#8de7f5}
.midnight-theme .rt-toc a {color:#a5b8c9;border-color:#293d4c}
.midnight-theme :is(.legal-doc td,.legal-doc th) {border-color:#293d4c!important;color:#bfcedb!important;background:#101d28!important}
body.midnight-theme .legal-doc .lw>p {color:#afc0cf!important}
.midnight-theme svg[viewBox='0 0 1440 100'] path {fill:#080f16}
.midnight-theme :is(.rp-tcard,.rp-step) {background:#10232e;border-color:#293d4c}
.midnight-theme .rp-doc> .lw>p {color:#a5b8c9!important}
.midnight-theme .rp-quote {color:#9cd7e8!important}
.midnight-theme .rp-code {background:#204152;color:#a2e8f5}
.midnight-theme .rp-dot {background:#225267;border-color:#10232e}
.midnight-theme .rp-ghost {border-color:#507f90;color:#8de7f5!important;border-radius:6px}
.midnight-theme .rp-earn {background:linear-gradient(130deg,#123143,#111d28)}
.midnight-theme :is(.features-grid,.screenshots-grid) {grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.midnight-theme>main.max-w-4xl {width:min(100%,56rem);min-width:0;overflow-wrap:anywhere}
/* Existing contact, subscription and partner overlays. */
.midnight-theme :is(.promo-modal,.rn-card) {background:#101d28;border:1px solid #355363}
.midnight-theme :is(.promo-body,.promo-success,.rn-body) :is(h3,p,label) {color:#c3d4e1!important}
.midnight-theme .promo-submit {background:#60d7eb;color:#06232d;box-shadow:none}
.midnight-theme #cart-toast {background:#142936!important;border:1px solid #35596b}
.midnight-theme #cart-toast div {color:#e3eff7!important}
.midnight-theme #cart-toast a {color:#60d7eb!important}
@media(max-width:900px){.midnight-auth{gap:35px}.midnight-home-hero{min-height:570px}.midnight-home-hero h1{max-width:540px}.midnight-home-hero .midnight-lead{max-width:400px;font-size:18px}}
@media(max-width:767px){.midnight-theme .midnight-nav>div:first-child{height:72px;padding-inline:22px}.midnight-home-hero{min-height:690px;align-items:flex-start;background-size:auto 490px;background-position:73% bottom;background-repeat:no-repeat}.midnight-home-hero:before{background:linear-gradient(#080f16 0%,#080f16e6 32%,#080f1600 70%)}.midnight-hero-inner{padding-top:42px}.midnight-home-hero h1{font-size:clamp(42px,8.5vw,60px);max-width:570px}.midnight-home-hero .midnight-lead{font-size:16px}.midnight-eyebrow{font-size:9px;letter-spacing:.16em;gap:12px;margin-bottom:22px}.midnight-hero-caption{display:none}.midnight-auth{flex-direction:column;align-items:stretch!important;gap:25px;padding-block:38px}.midnight-auth-story{max-width:440px;margin:auto}.midnight-auth-story img{display:none}.midnight-auth>.max-w-md{margin:auto}.midnight-auth-story h2{font-size:32px}.midnight-theme .hero-section>.container{padding-block:42px}.midnight-theme .hero-screenshot img{transform:none!important}.midnight-theme :is(.legal-paper,.rt-sec,.rp-card){padding:24px!important}.midnight-theme :is(.hero-cta,.cta-button){padding:13px 19px;font-size:14px}}
@media(max-width:420px){.midnight-home-hero{min-height:650px;background-size:auto 410px}.midnight-home-hero h1{font-size:43px}.midnight-button{font-size:12px;padding:12px 17px;gap:16px}.midnight-actions{gap:10px;margin-top:25px}.midnight-theme :is(.hero-title){overflow-wrap:anywhere}.midnight-theme .midnight-footer .grid{gap:30px}}
@media(max-width:767px){.midnight-hero-inner{margin:0 auto}}
@media(prefers-reduced-motion:reduce){.midnight-theme *,.midnight-theme *:before,.midnight-theme *:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media print{body.midnight-theme{color-scheme:light;background:white!important;color:black!important}.midnight-theme :is(main,section,article,.bg-white,.legal-paper){background:white!important;color:black!important}.midnight-theme :is(p,h1,h2,h3,h4,td,th,span,li){color:black!important}.midnight-theme .midnight-nav,.midnight-theme .midnight-footer{display:none}}

/* The homepage still draws its old light backdrop (.spq-bg in index.php)
   behind a transparent body, so it showed through sections with no
   background of their own, e.g. around the CTA banner. */
.midnight-theme .spq-bg {background:#080f16!important}
