
/* UNiQUE ICS Booking – clean, rounded, modern (anlehnen an fds-unique.de) */
.uib-wrap{
  --uib-bg:#ffffff;
  --uib-card:#ffffff;
  --uib-text:#0f172a;
  --uib-muted:#64748b;
  --uib-border:rgba(15, 23, 42, .12);
  --uib-accent:#0ea5e9;
  --uib-accent2:#22c55e;
  --uib-shadow:0 10px 30px rgba(2, 6, 23, .10);
  font-family:system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, "Noto Sans", Arial, "Apple Color Emoji","Segoe UI Emoji";
  color:var(--uib-text);
}

.uib-header{margin:10px 0 18px}
.uib-title{margin:0 0 6px;font-size:26px;letter-spacing:-.02em}
.uib-sub{color:var(--uib-muted);font-size:15px}

.uib-empty{
  padding:16px 18px;border:1px solid var(--uib-border);border-radius:16px;background:var(--uib-card);
}

.uib-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.uib-item{
  display:flex;gap:14px;align-items:center;justify-content:space-between;
  padding:14px 14px;border:1px solid var(--uib-border);border-radius:18px;background:var(--uib-card);
  box-shadow:0 6px 18px rgba(2, 6, 23, .06);
}
.uib-item-title{font-weight:700;font-size:16px;line-height:1.2}
.uib-item-meta{margin-top:6px;display:flex;gap:8px;flex-wrap:wrap}
.uib-pill{
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 10px;border-radius:999px;
  background:rgba(14,165,233,.08);
  border:1px solid rgba(14,165,233,.18);
  color:#0369a1;
  font-size:13px;font-weight:600;
}

.uib-btn{
  appearance:none;border:0;cursor:pointer;
  padding:10px 14px;border-radius:14px;
  font-weight:700;font-size:14px;
  background:rgba(34,197,94,.12);
  color:#14532d;
  transition:transform .12s ease, box-shadow .12s ease, background .12s ease;
}
.uib-btn:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(2,6,23,.12)}
.uib-btn:active{transform:translateY(0)}
.uib-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}

.uib-btn-primary{background:linear-gradient(135deg, var(--uib-accent), var(--uib-accent2));color:#062c22}
.uib-btn-ghost{background:transparent;border:1px solid var(--uib-border);color:var(--uib-text)}
.uib-item-right{display:flex;align-items:center;gap:10px}

/* Modal */
.uib-modal-backdrop{
  position:fixed;inset:0;z-index:99999;
  background:rgba(2,6,23,.55);
  backdrop-filter:saturate(120%) blur(6px);
  display:flex;align-items:center;justify-content:center;
  padding:18px;
}
.uib-modal{
  width:min(620px, 100%);
  border-radius:22px;
  background:var(--uib-bg);
  box-shadow:var(--uib-shadow);
  border:1px solid rgba(255,255,255,.12);
  padding:18px 18px 16px;
  position:relative;
  animation:uibIn .18s ease-out;
}
@keyframes uibIn{from{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}
.uib-x{
  position:absolute;right:14px;top:12px;
  width:40px;height:40px;border-radius:14px;
  border:1px solid var(--uib-border);
  background:rgba(255,255,255,.8);
  font-size:22px;line-height:38px;
  cursor:pointer;
}
.uib-modal-title{margin:6px 0 12px;font-size:20px;letter-spacing:-.01em}
.uib-picked{
  border:1px solid var(--uib-border);
  border-radius:18px;
  padding:12px 12px;
  background:rgba(15,23,42,.02);
}
.uib-picked-title{font-weight:800;font-size:16px}
.uib-picked-meta{margin-top:8px;display:flex;gap:8px;flex-wrap:wrap}
.uib-confirm-text{
  margin:12px 0 10px;
  color:var(--uib-muted);
  font-size:14px;
  line-height:1.45;
}
.uib-form{display:grid;gap:10px}
.uib-label{display:grid;gap:6px;font-weight:700;font-size:13px;color:var(--uib-text)}
.uib-input{
  width:100%;
  padding:11px 12px;
  border-radius:14px;
  border:1px solid var(--uib-border);
  background:#fff;
  font-size:15px;
}
.uib-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:6px;flex-wrap:wrap}
.uib-msg{
  margin-top:6px;
  padding:10px 12px;border-radius:14px;
  border:1px solid rgba(14,165,233,.25);
  background:rgba(14,165,233,.08);
  color:#075985;
  font-weight:650;
}
@media (max-width:520px){
  .uib-item{flex-direction:column;align-items:flex-start}
  .uib-item-right{width:100%}
  .uib-item-right .uib-btn{width:100%}
  .uib-actions{justify-content:stretch}
  .uib-actions .uib-btn{flex:1}
}
