/* SkyRights v11 product-readiness polish: additive only, keeps existing layout intact. */
:root{
  --sr-ink:#0f172a;
  --sr-muted:#64748b;
  --sr-line:rgba(15,23,42,.10);
  --sr-glow:0 24px 80px rgba(15,23,42,.12);
  --sr-soft:linear-gradient(135deg,rgba(37,99,235,.10),rgba(14,165,233,.08));
}
.home-hero .hero-copy h1,.portal-hero h1{letter-spacing:-.045em;line-height:.98}.hero-copy p,.portal-muted{color:var(--sr-muted)}
.hero-trust span,.micro-row span,.portal-badge{box-shadow:0 8px 24px rgba(15,23,42,.06)}
.check-card,.portal-card,.portal-table,.generator-access-card{border-color:var(--sr-line);box-shadow:var(--sr-glow)}
.check-card,.portal-card.product-ready{position:relative;overflow:hidden}
.check-card:before,.portal-card.product-ready:before{content:none}
.check-card:after,.portal-card.product-ready:after{content:"";position:absolute;left:1.25rem;right:1.25rem;top:0;height:1px;background:linear-gradient(90deg,rgba(37,99,235,.10),rgba(37,99,235,.28),rgba(14,165,233,.10));opacity:.75}
.claim-card,.step-card,.faq-item{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.claim-card:hover,.step-card:hover,.faq-item:hover{transform:translateY(-2px);box-shadow:0 18px 48px rgba(15,23,42,.10);border-color:rgba(37,99,235,.18)}
.btn-primary{box-shadow:0 12px 30px rgba(37,99,235,.22)}.btn-primary:hover{transform:translateY(-1px)}.btn{transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.sr-product-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0}.sr-product-choice .choice{border:1px solid var(--sr-line);border-radius:22px;padding:1rem;background:#fff;box-shadow:0 12px 36px rgba(15,23,42,.06)}.sr-product-choice .choice strong{display:block;color:var(--sr-ink)}.sr-product-choice .choice small{color:var(--sr-muted)}
.sr-trust-strip{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.8rem}.sr-trust-strip span{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--sr-line);background:rgba(255,255,255,.72);border-radius:999px;padding:.35rem .7rem;font-weight:700;font-size:.82rem;color:#0b4a7a}
.generator-layout,.portal-shell{position:relative}.generator-layout:before{content:none}.letter-preview{box-shadow:0 24px 70px rgba(15,23,42,.10)}
.status-pill[data-status="paid"],.status-pill[data-status="active"],.status-pill[data-status="successful"]{background:#ecfdf5;color:#047857}.status-pill[data-status="documents_missing"],.status-pill[data-status="payment_pending"]{background:#fffbeb;color:#92400e}.status-pill[data-status="rejected"],.status-pill[data-status="failed"]{background:#fef2f2;color:#b91c1c}
@media (max-width: 767px){.sr-product-choice{grid-template-columns:1fr}.home-hero .hero-copy h1,.portal-hero h1{letter-spacing:-.03em}}
@media print{.sr-trust-strip,.sr-product-choice{display:none!important}.generator-layout:before{display:none}}


/* v14 refinement: generator protected preview */
[data-generator].sr-generator-locked .letter-card{position:relative;overflow:hidden}
[data-generator].sr-generator-locked [data-letter]{position:relative;user-select:none;-webkit-user-select:none}
[data-generator].sr-generator-locked [data-letter].is-locked{filter:blur(2.2px);opacity:.88;pointer-events:none;max-height:720px;overflow:hidden}
[data-generator].sr-generator-locked [data-letter].is-locked::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.14));pointer-events:none}
[data-generator].sr-generator-locked .sr-lock-badge{display:inline-flex;align-items:center;gap:.45rem;border:1px solid var(--sr-line);border-radius:999px;background:rgba(255,255,255,.92);padding:.45rem .8rem;font-size:.82rem;font-weight:800;color:#0f172a}
[data-generator] .sr-preview-note{border:1px solid var(--sr-line);border-radius:18px;background:linear-gradient(180deg,#ffffff,rgba(248,250,252,.96));padding:1rem 1.1rem;color:var(--sr-muted);box-shadow:0 12px 36px rgba(15,23,42,.05)}
[data-generator] .sr-preview-note .btn{white-space:nowrap}
[data-generator] .sr-preview-note.is-primary{border-color:rgba(37,99,235,.16);background:linear-gradient(180deg,#fff,rgba(248,251,255,.98))}
[data-generator] .sr-preview-note strong{display:block;color:var(--sr-ink);margin-bottom:.25rem}
[data-generator] .sr-preview-fade{position:absolute;left:0;right:0;bottom:0;height:120px;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.92) 48%,#fff 100%);pointer-events:none}
@media print{[data-generator].sr-generator-locked [data-letter].is-locked{filter:none}[data-generator] .sr-preview-note,[data-generator] .sr-preview-fade{display:none!important}}

[data-generator].sr-generator-locked .letter-card:after{content:"Freischaltung erforderlich";position:absolute;right:1.1rem;bottom:1.1rem;border:1px solid var(--sr-line);background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-radius:999px;padding:.45rem .75rem;font-size:.78rem;font-weight:850;color:#0f172a;box-shadow:0 10px 30px rgba(15,23,42,.08)}


/* v16 checkout funnel: account + payment as one premium flow */
.sr-checkout-page{min-height:100svh;background:radial-gradient(circle at 12% 8%,rgba(26,115,232,.10),transparent 34%),linear-gradient(180deg,#fbfcff,#f4f7fb)}
.sr-checkout-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}
.sr-checkout-steps>div{border:1px solid var(--sr-line);border-radius:18px;background:rgba(255,255,255,.78);padding:.8rem .9rem;color:var(--sr-ink);box-shadow:0 10px 28px rgba(15,23,42,.05)}
.sr-checkout-tabs{gap:.5rem;background:rgba(15,23,42,.055);border-radius:999px;padding:.35rem;display:inline-flex}
.sr-checkout-tabs .nav-link{border-radius:999px;color:var(--sr-muted);font-weight:850}
.sr-checkout-tabs .nav-link.active{background:#fff;color:var(--sr-ink);box-shadow:0 10px 26px rgba(15,23,42,.10)}
.sr-checkout-box{border:1px solid var(--sr-line);border-radius:24px;background:#fff;padding:1.25rem;box-shadow:0 14px 42px rgba(15,23,42,.07)}
.sr-order-card{background:linear-gradient(180deg,#fff,rgba(248,250,252,.94))}
@media(max-width:767px){.sr-checkout-steps{grid-template-columns:1fr}.sr-checkout-tabs{display:flex;border-radius:24px}.sr-checkout-tabs .nav-link{border-radius:18px}}


/* v30 generator document output fix */
@media print{
  body[data-lang] header,
  body[data-lang] footer,
  body[data-lang] .generator-hero > .container-wide > .row,
  body[data-lang] .generator-card,
  body[data-lang] .sr-preview-note,
  body[data-lang] .sr-preview-fade,
  body[data-lang] .no-print,
  body[data-lang] .cookie-panel{display:none!important}
  body[data-lang] .generator-hero{padding:0!important;background:#fff!important}
  body[data-lang] .generator-layout{display:block!important}
  body[data-lang] .letter-card{position:static!important;box-shadow:none!important;border:0!important;border-radius:0!important;background:#fff!important;padding:0!important;margin:0!important}
  body[data-lang] .letter-document{font-family:Georgia,"Times New Roman",serif!important;font-size:12pt!important;line-height:1.55!important;color:#111827!important;white-space:normal!important}
  body[data-lang] .site-header{display:none!important}
}


/* v32 login UX + SVG->WebP pass */
body[data-auth-page="login"]{
  background:
    radial-gradient(1200px 520px at 10% -10%, rgba(59,130,246,.10), transparent 60%),
    radial-gradient(900px 420px at 100% 0%, rgba(14,165,233,.12), transparent 55%),
    linear-gradient(180deg, #f8fbff 0%, #eef5ff 100%);
}
body[data-auth-page="login"] .auth-shell{
  max-width:1180px !important;
}
body[data-auth-page="login"] .btn-soft{
  backdrop-filter:saturate(140%) blur(8px);
}
body[data-auth-page="login"] .auth-info-panel,
body[data-auth-page="login"] .auth-form-panel{
  border:1px solid rgba(148,163,184,.22);
  box-shadow:0 24px 70px rgba(15,23,42,.10);
  border-radius:28px;
}
body[data-auth-page="login"] .auth-info-panel{
  background:
    radial-gradient(600px 320px at 100% 0%, rgba(255,255,255,.14), transparent 60%),
    linear-gradient(145deg, #0f2d4f 0%, #0b1f40 55%, #163b63 100%);
  color:#fff;
  position:sticky;
  top:24px;
}
body[data-auth-page="login"] .auth-info-panel .display-title,
body[data-auth-page="login"] .auth-info-panel h1,
body[data-auth-page="login"] .auth-info-panel h2,
body[data-auth-page="login"] .auth-info-panel p,
body[data-auth-page="login"] .auth-info-panel li{
  color:#fff !important;
}
body[data-auth-page="login"] .auth-info-panel .eyebrow{
  background:rgba(255,255,255,.12);
  color:#fff;
}
body[data-auth-page="login"] .auth-form-panel{
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(12px) saturate(130%);
}
body[data-auth-page="login"] .auth-switch{
  display:flex;
  gap:.6rem;
  background:#eff6ff;
  border:1px solid #dbeafe;
  border-radius:999px;
  padding:.35rem;
}
body[data-auth-page="login"] .auth-switch .nav-item{
  flex:1 1 0;
}
body[data-auth-page="login"] .auth-switch .nav-link{
  width:100%;
  border-radius:999px;
  color:#0f172a;
  font-weight:700;
}
body[data-auth-page="login"] .auth-switch .nav-link.active{
  background:linear-gradient(135deg,#0f2d4f 0%, #2563eb 100%);
  color:#fff;
  box-shadow:0 10px 24px rgba(37,99,235,.28);
}
body[data-auth-page="login"] .auth-form-panel .form-control{
  min-height:52px;
  border-radius:16px;
  border-color:#cbd5e1;
  box-shadow:none;
}
body[data-auth-page="login"] .auth-form-panel .form-control:focus{
  border-color:#60a5fa;
  box-shadow:0 0 0 .25rem rgba(96,165,250,.18);
}
body[data-auth-page="login"] .auth-form-panel .btn{
  min-height:50px;
  font-weight:700;
}
body[data-auth-page="login"] .auth-message{
  border-radius:18px;
  box-shadow:0 14px 28px rgba(15,23,42,.08);
}
@media (min-width: 1200px){
  body[data-auth-page="login"] .auth-shell{
    padding-top:2rem !important;
    padding-bottom:2.5rem !important;
  }
  body[data-auth-page="login"] .auth-info-panel{
    min-height:100%;
  }
  body[data-auth-page="login"] .auth-form-panel{
    min-height:100%;
  }
}
@media (max-width: 991.98px){
  body[data-auth-page="login"] .auth-info-panel{
    position:static;
  }
}

/* v42 mobile purchase UX: highlight without scroll-jump */
.sr-preview-note.sr-attention{
  outline:3px solid rgba(37,99,235,.18);
  box-shadow:0 22px 48px rgba(37,99,235,.18)!important;
}
@media (max-width: 767.98px){
  .sr-preview-note.is-primary{
    position:relative;
    scroll-margin-top:88px;
  }
  .generator-card[data-generator-start]{
    scroll-margin-top:86px;
  }
}
