
:root{ --bg:#FAFAFB; --text:#334155; --muted:#64748B; --card:#FFFFFF; --border:#E5E7EB; --brand:#A5D8FF; --brand-dark:#7AA2C9; --accent:#F6AEB6; --accent-2:#9AD5CA; --accent-3:#FAD6A5; --primary:#8EC5E7; --primary-dark:#5EA9D1; }
body.theme-pastel{ background: var(--bg); color: var(--text); }
.navbar{ background: #ffffffcc; backdrop-filter: blur(8px); border-bottom: 1px solid var(--border); }
.brand-logo{ width:28px; height:28px; border-radius:8px; box-shadow:0 0 0 4px #dff1ff; }
.brand-text{ font-weight:600; color: var(--brand-dark); }
.card-soft{ background: var(--card); border:1px solid var(--border); border-radius:14px; box-shadow:0 4px 14px rgba(0,0,0,0.06); }
.card-title{ color: var(--text); }
.badge-soft{ background: var(--accent-2); color:#0b3b3b; border-radius:999px; padding:4px 10px; font-weight:600; }
.map{ height: 60vh; border-radius:12px; border:1px solid var(--border); }
.form-label{ color: var(--muted); }
.form-control-soft{ background:#FBFCFE; border:1px solid var(--border); color:var(--text); border-radius:10px; padding:10px 12px; }
.form-control-soft:focus{ outline:none; border-color:var(--primary); box-shadow:0 0 0 3px rgba(142,197,231,0.35); }
.btn{ border-radius:10px; font-weight:600; }
.btn-outline{ border-color: var(--brand-dark); color: var(--brand-dark); }
.btn-outline:hover{ background: var(--brand); border-color: var(--brand-dark); color:#0a2a44; }
.btn-primary-soft{ background: var(--primary); color:#0a2a44; border:none; }
.btn-primary-soft:hover{ background: var(--primary-dark); color:#072337; }
.btn-secondary-soft{ background:#f3f4f6; color:var(--text); border:1px solid var(--border); }
.btn-secondary-soft:hover{ background:#e6edf5; }
.table-soft{ width:100%; border-collapse:collapse; }
.table-soft thead th{ text-align:left; padding:10px; font-size:.9rem; color:var(--muted); border-bottom:2px solid var(--border); }
.table-soft tbody td{ padding:10px; border-bottom:1px solid var(--border); }
.thumb{ width:80px; height:60px; object-fit:cover; border-radius:8px; border:1px solid var(--border); }
.modal-soft{ border:1px solid var(--border); border-radius:14px; }
.badge-role{ background:#fde68a; color:#7c2d12; border-radius:999px; padding:4px 10px; font-weight:700; }
