/* No redesign. Only functional hiding of unauthorized AI UI. */
.celveno-ai-hidden,
[data-celveno-ai-feature][hidden] {
  display: none !important;
}

/* Abo-/Tarifbereich only. Uses existing CELVENO variables where available. */
.celveno-plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.celveno-plan-card{border:1px solid var(--border,#e5e7eb);border-radius:12px;padding:16px;background:var(--surface,#fff)}
.celveno-plan-card.is-current{border-width:2px}
.celveno-plan-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.celveno-plan-price{white-space:nowrap;font-weight:700}.celveno-plan-price small{display:block;font-size:.72em;font-weight:400;text-align:right}
.celveno-plan-ai-label,.celveno-plan-current,.celveno-plan-pending{display:inline-block;margin-top:5px;font-size:.78em;font-weight:600}
.celveno-plan-features{margin:12px 0 16px;padding-left:18px}.celveno-plan-features li{margin:5px 0}
.celveno-plan-action{margin-top:auto}.celveno-plan-request-state{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px;padding:12px;border:1px solid var(--border,#e5e7eb);border-radius:10px}

/* v0.9.2 login preference — no password storage. */
.celveno-remember-login{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px;margin-bottom:8px;font-size:.9em;padding:10px 12px;border-radius:12px;border:1px solid rgba(99,91,255,.18);background:rgba(99,91,255,.04)}
.celveno-remember-login small{width:100%;padding-left:24px;opacity:.72}

/* Import review uses existing CELVENO surfaces and spacing. */
.celveno-import-review-panel{border:1px solid var(--border,#e5e7eb);border-radius:12px;background:var(--surface,#fff);padding:14px}
.celveno-import-review-head,.celveno-import-tools,.celveno-import-category-create,.celveno-import-review-actions{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.celveno-import-review-head small{display:block;margin-top:3px;opacity:.7}
.celveno-import-tools{margin:12px 0}.celveno-import-tools input[type="search"]{flex:1;min-width:220px}
.celveno-import-category-create{justify-content:flex-start;margin-bottom:12px}
.celveno-import-rows{display:grid;gap:8px}.celveno-import-row{display:grid;grid-template-columns:42px minmax(180px,1fr) minmax(150px,220px);gap:10px;align-items:center;padding:9px;border:1px solid var(--border,#e5e7eb);border-radius:10px}
.celveno-import-image{width:42px;height:42px;border-radius:8px;overflow:hidden;background:var(--muted,#f3f4f6)}.celveno-import-image img{width:100%;height:100%;object-fit:cover}
.celveno-import-main input{width:100%;box-sizing:border-box}.celveno-import-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px;font-size:.78em;opacity:.7}
.celveno-import-empty{padding:18px;text-align:center;opacity:.7}.celveno-import-review-actions{justify-content:flex-end;margin-top:12px}
@media(max-width:720px){.celveno-import-row{grid-template-columns:42px 1fr}.celveno-import-row>select{grid-column:2}}

/* v0.9.3 IBAN validation — valid international IBANs are not warned. */
.celveno-iban-invalid{outline:1px solid var(--danger,#dc2626)!important;outline-offset:1px}
.celveno-iban-valid{outline:none!important}
[data-celveno-swiss-qr-status][data-state="unavailable"]{cursor:pointer}

/* v0.9.6: visible directly on the login screen below the password field. */
.celveno-remember-login[data-celveno-login-option="remember-30-days"]{
  align-items:flex-start;
  cursor:pointer;
}
.celveno-remember-login[data-celveno-login-option="remember-30-days"] input{
  margin-top:2px;
}
.celveno-remember-login[data-celveno-login-option="remember-30-days"] span{
  font-weight:500;
}

/* v0.9.8 – real CELVENO symbol replaces the old "CE" placeholder. */
.celveno-visible-brand-symbol{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  color:transparent !important;
  box-shadow:none !important;
  border:none !important;
  overflow:visible !important;
}
.celveno-visible-brand-symbol-image{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:72px !important;
  max-height:72px !important;
  object-fit:contain !important;
}
