.isb-wrap { max-width: 1050px; }
.isb-card { border: 1px solid #e5e7eb; border-radius: 14px; padding: 14px; background: #fff; margin: 14px 0; }
.isb-card h3 { margin-top: 0; }
.isb-wrap label { display:block; margin: 10px 0 6px; font-weight: 600; }
.isb-wrap input[type="text"], .isb-wrap input[type="email"], .isb-wrap textarea {
    width: 70%;
    padding: 10px;
    margin-bottom: 10px;
    box-sizing: border-box;
}
.isb-wrap button { padding: 10px 14px; cursor: pointer; }
.isb-link { display:inline-block; margin-top: 8px; }
.isb-danger { background: #b91c1c; color: #fff; border: 0; border-radius: 10px; }
.isb-ghost { background: transparent; border: 1px solid #e5e7eb; border-radius: 10px; }

.isb-topbar { display:flex; justify-content: space-between; align-items:center; gap: 12px; padding: 10px 0; }

.isb-grid { display:grid; grid-template-columns: repeat(auto-fit,minmax(280px,1fr)); gap: 14px; margin-top: 12px; }
.isb-card-head h4 { margin: 0 0 6px; }
.isb-meta { font-size: 12px; opacity: .8; }
.isb-email-link { font-size: 16px; color: #fff; text-decoration: underline; }

.isb-card-actions { display:flex; gap: 10px; margin-top: 10px; align-items: center; }
.isb-inline { display:inline; }

.isb-images { display:flex; gap: 10px; flex-wrap: wrap; margin-top: 10px; }
.isb-img { display:flex; flex-direction:column; gap: 6px; }
.isb-img img { border-radius: 10px; max-width: 220px; height:auto; border: 1px solid #e5e7eb; }

.isb-msg { padding: 10px 12px; border-radius: 10px; margin: 10px 0; }
.isb-warn { background: #fee2e2; border: 1px solid #fecaca; color: #b91c1c; }
.isb-error { background: #fef2f2; border: 1px solid #fecaca; }

.isb-confirm-box { display:flex; gap: 14px; flex-wrap: wrap; align-items:center; border: 1px dashed #cbd5e1; border-radius: 14px; padding: 12px; }
.isb-qr-side { display:flex; flex-direction:column; gap: 6px; }
.isb-qrimg { width:220px; height:220px; border-radius: 10px; border: 1px solid #e5e7eb; background:#fff; }

.isb-check { display:flex; align-items:center; gap: 8px; margin-top: 8px; font-weight: 500; }
.isb-check-small { font-size: 12px; opacity: .85; }
.isb-small { font-size: 12px; opacity: .85; margin-top: 8px; }


/* User overrides */
.isb-card {
    background: #222;
}

.isb-wrap button {
    color: #fff;
}

.isb-wrap h1,
.isb-wrap h2,
.isb-wrap h3,
.isb-wrap h4,
.isb-wrap h5,
.isb-wrap h6 {
    color: #fff;
    font-weight: bold;
}

/* Button classes (leicht anpassbar) */
.isb-btn{
    padding: 10px 14px;
    cursor: pointer;
    border-radius: 10px;
    border: 1px solid #e5e7eb;
    background: transparent;
}

.isb-btn-primary{
    border-color: #e5e7eb;
}

.isb-btn-success{
    background: #16a34a; /* grün */
    border-color: #16a34a;
    color: #fff;
}

.isb-btn-danger{
    background: #b91c1c;
    border-color: #b91c1c;
    color: #fff;
}

.isb-btn-ghost{
    background: transparent;
}

.isb-wrap .isb-btn-success{ color:#fff; }

.isb-wrap .isb-btn-danger{ color:#fff; }


/* File input (Dateien auswählen) - Button-Optik */
.isb-file{
    width: 300px;
    padding: 6px 0;
}

.isb-file::file-selector-button{
    padding: 10px 14px;
    cursor: pointer;
    border-radius: 10px;
    border: 1px solid #e5e7eb;
    background: transparent;
    color: #fff;
    margin-right: 10px;
}

/* Safari/ältere Chromium */
.isb-file::-webkit-file-upload-button{
    padding: 10px 14px;
    cursor: pointer;
    border-radius: 10px;
    border: 1px solid #e5e7eb;
    background: transparent;
    color: #fff;
    margin-right: 10px;
}

input.text, input.title, input[type=email], input[type=password], input[type=tel], input[type=text], select, textarea {
    background-color: #fff;
    border: 1px solid #bbb;
    border-radius: 10px;
    padding: 2px;
    margin-right: 15px;
    color: #4e4e4e;
}
