* { box-sizing: border-box; }
body { font-family: "DM Sans", sans-serif; }
.quran-arabic { font-family: "Amiri", "Noto Naskh Arabic", serif; line-height: 2.15; }
form p { margin-bottom: 1rem; }
form p label { display:block; margin-bottom:.4rem; font-size:.85rem; font-weight:600; color:#475569; }
form p input { width:100%; border:1px solid #d6d3d1; border-radius:.75rem; padding:.75rem .9rem; outline:none; }
form p input:focus { border-color:#047857; box-shadow:0 0 0 3px rgba(4,120,87,.1); }
form ul.errorlist { color:#be123c; font-size:.8rem; margin:.25rem 0; }
.player-control { display:grid; height:36px; width:36px; place-items:center; border-radius:999px; background:#f5f5f4; color:#064e3b; font-size:14px; }
.player-control:hover { background:#d1fae5; }
.player-play { background:#064e3b; color:white; }
.player-play:hover { background:#065f46; }
.quran-player { padding-bottom: env(safe-area-inset-bottom); }
@media (prefers-reduced-motion: reduce) { *,*::before,*::after { scroll-behavior:auto !important; transition:none !important; } }

.player-control { display:inline-grid !important; flex:0 0 40px; width:40px; height:40px; min-width:40px; min-height:40px; padding:0; border:0; cursor:pointer; place-items:center; color:#064e3b; background:#f5f5f4; visibility:visible; opacity:1; }
.player-control svg { display:block; width:21px; height:21px; }
.player-play { color:#fff; background:#064e3b; }
.local-bookmark { display:inline-flex; align-items:center; gap:5px; }
.local-bookmark svg { display:inline-block; width:18px; height:18px; }
