/* Pixel-Finanz 2.5: welcome guide, device keyboard and compact row actions. */
#new-konto-name[hidden],#new-konto-provider[hidden] { display:none !important; }
#pf-lock {
  background:radial-gradient(ellipse at top,var(--gold-dim),transparent 65%),var(--bg) !important;
  overflow-y:auto; padding:2rem 1rem !important; gap:1rem !important;
}
#lock-locked,.lock-setup {
  width:min(100%,360px); max-width:360px; padding:1.6rem;
  border:1px solid var(--border2); border-radius:24px; background:var(--s1);
  box-shadow:var(--shadow); box-sizing:border-box;
}
#lock-setup { width:min(100%,360px); }
#pf-lock .lock-setup { width:100%; max-width:360px; }
#pf-lock .lock-error:empty { display:none; }
#pf-lock .lock-logo { border:1px solid var(--border); box-shadow:var(--shadow); object-fit:contain; background:transparent; }
#pf-lock .lock-title { font:750 1.35rem/1.3 var(--font); letter-spacing:-.03em; }
#pf-lock .pin-pad { width:100%; gap:.6rem; }
#pf-lock .pin-key { height:48px; border-radius:12px; border:1px solid var(--border2); box-shadow:none; }
#pf-lock .pin-key .pk-abc { display:none; }
#pf-lock .pin-key:hover { border-color:var(--gold); background:var(--gold-dim); }
#pf-lock .pin-dots { display:none; }
.native-pin-label { font-size:.8rem; color:var(--text2); }
.native-pin {
  width:100%; min-height:56px; padding:.6rem; box-sizing:border-box;
  text-align:center; font:600 1.5rem/1.2 var(--font); letter-spacing:.5em;
  color:var(--text); background:var(--s2); border:1px solid var(--border2); border-radius:12px;
}
.native-pin:focus { outline:3px solid var(--gold-dim); border-color:var(--gold); }
.guide-progress { color:var(--gold); font-size:.8rem; font-weight:650; margin-bottom:1rem; }
#guide-content { min-height:165px; }
#guide-content h3 { font-size:1.25rem; margin-bottom:.8rem; color:var(--text); }
#guide-content p { font-size:.95rem; line-height:1.7; color:var(--text2); }
.welcome-guide { max-width:600px; }
.welcome-guide h2 { font-size:1.15rem; }
.guide-actions { display:flex; flex-wrap:wrap; gap:.5rem; justify-content:flex-end; margin-top:1rem; }
.guide-actions > :first-child { margin-right:auto; }
@media(max-width:768px) {
  #pf-lock .pin-pad { display:none; }
  #pf-lock { justify-content:flex-start !important; padding-top:max(2rem,env(safe-area-inset-top)) !important; }
  #lock-locked,.lock-setup { padding:1.25rem; }
  .entry-actions .btn-sm,.entry-controls .btn-sm,.account-row-actions .btn,.li-right .btn-sm {
    width:33px; min-width:33px; height:33px; min-height:33px;
    padding:.2rem; font-size:.75rem; border-radius:8px;
  }
  .entry-controls .pf-icon,.li-right .btn-sm .pf-icon { width:17px; height:17px; }
  .category-actions { max-width:none; flex:none; align-items:center; }
  .category-actions .btn-sm { width:44px; min-width:44px; height:44px; min-height:44px; padding:.32rem; justify-content:center; }
  .guide-actions .btn { flex:1 1 auto; }
  .guide-actions > :first-child { flex-basis:100%; order:3; margin:0; }
}

/* Logo studies 12/13: Hell (Pixel Prisma) and Dunkel (Pixel Aurora). */
[data-theme="prisma"] {
  --bg:#f6f5fa; --s1:#fff; --s2:#f0ebfc; --s3:#e6dff6;
  --text:#25223b; --text2:#57536b; --muted:#625e75;
  --gold:#6543cc; --gold-dim:#f0ebfc; --gold-border:#d5c9f2; --on-accent:#fff;
  --cyan:#08758b; --cyan-dim:#e4f5f8; --green:#147558; --red:#b23655;
  --orange:#935411; --violet:#6543cc; --border:#e6e2ef; --border2:#bcb1d4;
  --r:18px; --rs:11px; --shadow:0 8px 30px #25223b08;
  --grad-title:none; --page-border:#e6e2ef;
  --brand-start:#25223b; --brand-mid:#6543cc; --brand-end:#08758b; --brand-shadow:#6543cc12;
  --logo-hero:linear-gradient(110deg,#fff,#f4efff);
  --tag-blue:#214c9d; --tag-blue-bg:#e7effd; --tag-green:#1a6244; --tag-green-bg:#e1f3e9;
  --tag-violet:#63349b; --tag-violet-bg:#f0e8fb; --tag-amber:#77500c; --tag-amber-bg:#fbf0d4;
  --tag-cyan:#155d6a; --tag-cyan-bg:#dff2f5; --tag-rose:#98304a; --tag-rose-bg:#fbe7ed;
}
[data-theme="aurora"] {
  --bg:#101322; --s1:#191e32; --s2:#203444; --s3:#2b4053;
  --text:#f0f2ff; --text2:#c0c7dd; --muted:#a0a9c3;
  --gold:#53d8da; --gold-dim:#203444; --gold-border:#397479; --on-accent:#10252a;
  --cyan:#53d8da; --cyan-dim:#203444; --green:#73dfb0; --red:#ff9aaa;
  --orange:#f3be79; --violet:#b4a4ff; --border:#2b334c; --border2:#596580;
  --r:18px; --rs:11px; --shadow:0 8px 30px #00000018;
  --grad-title:none; --page-border:#2b334c;
  --brand-start:#f0f2ff; --brand-mid:#53d8da; --brand-end:#b4a4ff; --brand-shadow:#53d8da12;
  --logo-hero:linear-gradient(110deg,#1c243b,#24203c);
  --tag-blue:#99c7ff; --tag-blue-bg:#172b45; --tag-green:#87d6af; --tag-green-bg:#15372c;
  --tag-violet:#d0b9ff; --tag-violet-bg:#2c2145; --tag-amber:#edd18c; --tag-amber-bg:#3a3019;
  --tag-cyan:#8cdae5; --tag-cyan-bg:#14343c; --tag-rose:#f5b1bc; --tag-rose-bg:#40232d;
}
:is([data-theme="prisma"],[data-theme="aurora"]) #pf-emoji-bg { display:none; }
:is([data-theme="prisma"],[data-theme="aurora"]) .hero-balance {
  position:relative; overflow:hidden; background:var(--logo-hero); border:1px solid var(--border); border-radius:23px;
}
:is([data-theme="prisma"],[data-theme="aurora"]) .hero-balance::before {
  content:''; position:absolute; inset:0 0 auto; height:4px;
  background:linear-gradient(90deg,#f57527,#e62ba6,#7249ee,#05afc8);
}
:is([data-theme="prisma"],[data-theme="aurora"]) .nav-item.active { color:var(--gold); background:var(--gold-dim); }
:is([data-theme="prisma"],[data-theme="aurora"]) .btn-primary,
:is([data-theme="prisma"],[data-theme="aurora"]) .btn-cta { box-shadow:0 6px 18px color-mix(in srgb,var(--gold) 13%,transparent); }
:is([data-theme="prisma"],[data-theme="aurora"]) .auth-card { border-color:var(--border2); }
:is([data-theme="prisma"],[data-theme="aurora"]) .auth-card .fi { border-color:var(--border2) !important; }
:is([data-theme="prisma"],[data-theme="aurora"]) .auth-card .fi:focus { border-color:var(--gold) !important; box-shadow:0 0 0 3px var(--gold-dim) !important; }
:is([data-theme="prisma"],[data-theme="aurora"]) .auth-logo img { border-radius:16px; filter:none !important; }
:is([data-theme="prisma"],[data-theme="aurora"]) .auth-toggle-btn.active { color:var(--on-accent); box-shadow:none; }
:is([data-theme="prisma"],[data-theme="aurora"]) .feature-item { background:var(--s2); border-color:var(--border); }
:is([data-theme="prisma"],[data-theme="aurora"]) .feature-title { text-shadow:none; }

:is([data-theme="prisma"],[data-theme="aurora"]) :is(.b-Buchung,.b-turnus-E,.b-konto) { color:var(--cyan); }
:is([data-theme="prisma"],[data-theme="aurora"]) :is(.b-Abo,.b-turnus-Q) { color:var(--orange); }
:is([data-theme="prisma"],[data-theme="aurora"]) :is(.b-Finanzierung,.b-turnus-J) { color:var(--violet); }
:is([data-theme="prisma"],[data-theme="aurora"]) .b-Vertrag { color:var(--green); }
:is([data-theme="prisma"],[data-theme="aurora"]) .vw-tab-btn.active { color:var(--on-accent); }

/* The logo is a transparent cutout on every app surface. */
#pf-lock .lock-logo { border:0; box-shadow:none; }
.auth-logo img, .sb-header img { filter:none !important; }
