body {
      margin: 0;
      padding: 0;
      background: var(--klak-bg, #fefaf1);
      font-family: 'Barlow Condensed', Arial, sans-serif;
      font-size: 1.0rem;
      font-weight: 500;
      line-height: 1.2;
      color: #1a2233;
    }
    .kcard {
      background: #fff;
      border-radius: 0.3rem;
      box-shadow: 0 2px 8px rgba(0,0,0,0.07);
      padding: 1.1rem 1.2rem 1.2rem 1.2rem;
      margin-bottom: 2.2rem;
      width: 100%;
      margin: 0 auto;  /* DIESE ZEILE zentriert die Karten */
      font-size: 1.0rem;
      font-weight: 500;
      line-height: 1.2;
      transition: box-shadow 0.2s;
      display: flex;
      flex-direction: column;
      gap: 0.7rem;
    }
    .kcard-header {
      display: flex;
      align-items: flex-start;
      gap: 0.8rem;
      margin-bottom: 0.2rem;
    }
    .kcard-header-logo {
      width: 38px;
      height: 38px;
      object-fit: contain;
      border-radius: 0.2rem;
      background: #f5f5f5;
      box-shadow: 0 1px 3px rgba(0,0,0,0.07);
      display: block;
    }
    .kcard-header-text {
      flex: 1 1 auto;
      font-size: 1.2em;
      font-weight: 600;
      color: #1a2233;
      line-height: 1.2;
      margin-top: 2px;
    }
    .kcard-header-subtitle {
      font-size: 0.95em;
      font-weight: 400;
      color: #1a2233;
    }
    .kcard-body {
      font-size: 0.95em;
      color: #1a2233;
      margin-bottom: 0.5rem;
    }
    .kcard-hr {
      border: none;
      border-top: 1px solid #e0e0e0;
      margin: 0.5rem 0 0.2rem 0;
      opacity: 0.5;
    }
    .card-footer {
      display: flex;
      justify-content: flex-end;
      align-items: center;
      gap: 0.5rem;
      margin-top: 0.2rem;
    }
    .kcard-icon {
      width: 22px;
      height: 22px;
      object-fit: contain;
      display: inline-block;
    }
    /* Formular Card Styles */
    .kcard-form-fields {
      display: flex;
      flex-direction: column;
      gap: 0.7rem;
      margin-bottom: 0.7rem;
    }
    .kcard-form-label {
      font-size: 0.95em;
      color: #1a2233;
      margin-bottom: 0rem;
      text-align: left;
      font-family: 'Barlow Condensed', Arial, sans-serif;
    }
    .kcard-form-input {
      padding: 0.2em 0.2em;
      border: 1px solid #ccc;
      border-radius: 0.2rem;
      font-size: 0.95em;
      width: 100%;
      box-sizing: border-box;
      font-family: 'Barlow Condensed', Arial, sans-serif;
    }
    .kcard-form-input:focus {
      outline: none;
      border-color: #003893;
      box-shadow: 0 0 0 2px rgba(0,56,147,0.1);
    }
    .kcard-form-consent {
      display: flex;
      align-items: flex-start;
      gap: 0.5em;
      font-size: 0.95em;
      font-family: 'Barlow Condensed', Arial, sans-serif;
      color: #1a2233;
      margin-bottom: 0.7rem;
      text-align: left;
    }
    .kcard-form-consent input[type="checkbox"] {
      margin-top: 0.2em;
    }
    .kcard-form-consent label {
      font-family: 'Barlow Condensed', Arial, sans-serif;
    }
    .kcard-form-submit-row {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-top: 0.5rem;
    }
    .kcard-form-submit-btn {
      background: #003893;
      color: #fff;
      border: none;
      border-radius: 0.2rem;
      padding: 0.35em 1.3em;
      font-size: 0.95em;
      font-weight: 600;
      cursor: pointer;
      transition: background 0.2s;
      font-family: 'Barlow Condensed', Arial, sans-serif;
    }
    .kcard-form-submit-btn:hover {
      background: #1A2233;
    }
    .kcard-form-submit-btn:disabled {
      background: #ccc;
      cursor: not-allowed;
    }
    /* Progress Indicator Styles */
    .kcard-progress-indicator {
      display: flex;
      align-items: center;
      gap: 0.5rem;
    }
    .kcard-progress-step {
      width: 28px;
      height: 28px;
      border-radius: 0.2rem;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 0.8em;
      font-weight: 600;
      font-family: 'Barlow Condensed', Arial, sans-serif;
      border: none;
      transition: all 0.2s;
    }
    .kcard-progress-step.active {
      background: #003893;
      color: #fff;
    }
    .kcard-progress-step.inactive {
      background: #ccc;
      color: #666;
    }
    .kcard-progress-step.success {
      background: #28a745;
      color: #fff;
    }
    .kcard-progress-goal {
      width: 28px;
      height: 28px;
      object-fit: contain;
      filter: grayscale(100%) opacity(0.5);
      transition: all 0.2s;
    }
    .kcard-progress-goal.active {
      filter: none;
    }
    .kcard-progress-goal.active img {
      filter: none;
    }
    .kcard-progress-goal.active {
      color: #28a745;
    }
    /* Handle Check Styles */
    .kcard-handle-check-feedback {
      font-size: 0.95em;
      margin-top: 0.3rem;
      padding: 0.3rem 0.5rem;
      border-radius: 0.2rem;
      font-family: 'Barlow Condensed', Arial, sans-serif;
    }
    .kcard-handle-check-feedback.success {
      background: #e8f5e8;
      color: #2d5a2d;
      border: 1px solid #c3e6c3;
    }
    .kcard-handle-check-feedback.error {
      background: #ffe8e8;
      color: #5a2d2d;
      border: 1px solid #e6c3c3;
    }
    .kcard-handle-check-feedback.checking {
      background: #e8f0ff;
      color: #2d4a5a;
      border: 1px solid #c3d6e6;
    }
    /* Info Card Styles */
    .kcard-info {
      background: #ffcba6;
      border: 1px solid #ffb366;
      border-radius: 0.2rem;
      padding: 0.8rem;
      margin: 0.5rem 0;
      font-family: 'Barlow Condensed', Arial, sans-serif;
    }
    .kcard-info h3 {
      margin: 0 0 0.5rem 0;
      color: #8b4513;
      font-size: 1em;
      font-weight: 600;
      font-family: 'Barlow Condensed', Arial, sans-serif;
    }
    .kcard-info p {
      margin: 0.3rem 0;
      color: #8b4513;
      font-family: 'Barlow Condensed', Arial, sans-serif;
    }
    .kcard-info.green {
      background: #e8f5e8;
      border: 1px solid #c3e6c3;
    }
    .kcard-info.green p {
      color: #2d5a2d;
      font-family: 'Barlow Condensed', Arial, sans-serif;
    }
    .kcard-info code {
      background: #fff;
      padding: 0.2rem 0.4rem;
      border-radius: 0.2rem;
      font-family: monospace;
      font-size: 0.9em;
    }
    /* Error Card Styles */
    .kcard-error-card {
      background: #ffe8e8;
      border: 1px solid #e6c3c3;
      border-radius: 0.2rem;
      padding: 0.8rem;
      margin: 0.5rem 0;
      color: #5a2d2d;
      font-family: 'Barlow Condensed', Arial, sans-serif;
    }
    /* Screen Separator */
    .kcard-screen-separator {
      text-align: center;
      margin: 3rem 0 1rem 0;
      padding: 1rem;
      background: #f0f0f0;
      border-radius: 0.3rem;
      font-weight: 600;
      font-family: 'Barlow Condensed', Arial, sans-serif;
      color: #1a2233;
    }