/* Tajweedah Library — styles for shortcodes so the map/search work in any theme */
.tj-map{position:relative;width:100%;min-height:280px}
.tj-map svg{display:block;cursor:grab}
.tj-map-tip{position:absolute;pointer-events:none;opacity:0;transition:opacity .12s;background:#16204a;color:#fff;padding:8px 11px;border-radius:8px;font-size:13px;line-height:1.35;box-shadow:0 8px 24px rgba(22,32,74,.28);z-index:5;white-space:nowrap}
.tj-map-fail{padding:40px;text-align:center;color:#8a8577;font-family:ui-monospace,monospace;font-size:12px}
.tj-grid-4{display:grid;grid-template-columns:repeat(auto-fill,minmax(clamp(150px,22vw,300px),1fr));gap:14px}
.tj-lang-card{display:flex;flex-direction:column;gap:5px;background:#fffdf9;border:1px solid #e7e2d6;border-radius:13px;padding:18px;text-decoration:none;transition:transform .14s,box-shadow .14s}
.tj-lang-card:hover{transform:translateY(-2px);box-shadow:0 12px 26px -18px rgba(22,32,74,.5);border-color:#cfc7b4}
.tj-lang-card .tj-native{font-family:Newsreader,Georgia,serif;font-size:25px;color:#16204a;line-height:1.15}
.tj-lang-card .tj-name{font-size:14.5px;color:#1e2a63;font-weight:500}
.tj-meta{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#8a8577}
.tj-ad{margin:28px 0;text-align:center}
.tj-ad--empty{border:1px dashed #ded8ca;border-radius:12px;background:repeating-linear-gradient(135deg,#f6f3ea 0 8px,#faf8f4 8px 16px);padding:38px 16px;font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:#a39c8b}
.tj-empty{padding:40px 0;color:#6b675c}

.tj-badge{position:absolute;top:12px;inset-inline-end:12px;max-width:calc(100% - 24px);background:#16204a;color:#fff;font-size:9px;line-height:1.35;letter-spacing:.1em;text-transform:uppercase;padding:5px 8px;border-radius:5px;text-align:end}
.tj-badge--low{background:#6f6a5c}
