@font-face{font-family:Amiri;src:url('/assets/fonts/amiri/Amiri-Regular.woff2') format('woff2');font-display:swap}
.dh-salawat{font-family:Amiri,serif;font-size:1em;line-height:1;display:inline-block;unicode-bidi:isolate;padding-inline:.12em;white-space:nowrap;vertical-align:middle}
.dh-arabic .dh-salawat{font-size:.72em}
.dh-quran-reference{display:inline-block;font:700 14px var(--ds-font,system-ui);direction:ltr;unicode-bidi:isolate;border:1px solid var(--ds-border);background:var(--ds-bg);border-radius:10px;padding:7px 12px;margin:6px;vertical-align:middle}
.dh-reader{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:40px 0 60px;color:var(--ds-text);font-family:var(--ds-font,system-ui)}
.dh-reader *,.dh-maker *{box-sizing:border-box}
.dh-hero{padding:24px 0 32px}
.dh-eyebrow{color:var(--ds-accent);font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.dh-eyebrow:before{content:'';display:inline-block;width:9px;height:9px;margin-right:9px;background:var(--ds-accent);border-radius:50%}
.dh-hero h1{font-size:clamp(32px,5vw,56px);margin:12px 0}
.dh-hero p{line-height:1.7}
.dh-search{display:grid;grid-template-columns:1.2fr 1fr 2fr .6fr auto;gap:14px;align-items:end;padding:22px;border:1px solid var(--ds-border);border-radius:24px;background:var(--ds-card);backdrop-filter:blur(16px)}
.dh-search label,.dh-maker label{display:grid;gap:7px;min-width:0;font-size:13px;font-weight:700}
.dh-search input,.dh-search select,.dh-maker select,.dh-maker input{width:100%;min-width:0;min-height:46px;padding:10px 12px;background:var(--ds-bg);color:var(--ds-text);border:1px solid var(--ds-border);border-radius:12px;font:inherit}
.dh-reader button,.dh-maker button,.dh-pagination a{min-height:44px;border:1px solid var(--ds-border);border-radius:12px;padding:10px 16px;background:var(--ds-card);color:var(--ds-text);cursor:pointer;font:700 14px var(--ds-font,system-ui)}
.dh-search>button{background:var(--ds-accent);color:var(--ds-on-accent,#07111f)}
.dh-reader a{color:var(--ds-accent);text-decoration:none}
.dh-note{font-size:13px;line-height:1.8;color:var(--ds-muted);padding:12px 0}
.dh-progress{margin:18px 0 26px}
.dh-progress summary{cursor:pointer;font-weight:700}
.dh-collections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}
.dh-collections a{display:grid;gap:8px;border:1px solid var(--ds-border);border-radius:16px;padding:18px;background:var(--ds-card)}
.dh-collections span,.dh-collections small{color:var(--ds-muted)}
.dh-results{display:grid;gap:24px}
.dh-card{padding:clamp(18px,3vw,36px);border:1px solid var(--ds-border);border-radius:24px;background:var(--ds-card);backdrop-filter:blur(14px);min-width:0;overflow-wrap:anywhere}
.dh-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.dh-actions{display:flex;gap:7px;flex-shrink:0}
.dh-actions button{padding:10px;width:44px;height:44px}
.dh-actions svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.dh-chapter{color:var(--ds-muted);font-size:13px;line-height:1.8}
.dh-chapter [lang=ar]{display:block}
.dh-arabic{font-family:Amiri,serif;font-size:calc(clamp(25px,3vw,35px) * var(--dh-text-scale,1));line-height:2.1;margin:22px 0;white-space:normal}
.dh-translation{line-height:1.9;font-size:calc(16px * var(--dh-text-scale,1));white-space:normal}
.dh-source{display:flex;flex-wrap:wrap;gap:8px;color:var(--ds-muted);font-size:12px;margin-top:24px;padding-top:16px;border-top:1px solid var(--ds-border)}
.dh-grade{font-size:13px;color:var(--ds-muted)}
.dh-empty{padding:30px;background:var(--ds-card);border-radius:20px}
.dh-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:16px;margin:30px 0}
.dh-pagination span{color:var(--ds-muted);font-size:13px}
.dh-maker{box-sizing:border-box;width:min(1060px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:24px;border:1px solid var(--ds-border);border-radius:24px;background:var(--ds-bg);color:var(--ds-text);overflow:auto;font-family:var(--ds-font,Poppins,sans-serif)}
.dh-maker::backdrop{background:rgba(0,0,0,.75);backdrop-filter:blur(8px)}
.dh-maker header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}
.dh-maker>*,.dh-maker-controls>*{min-width:0}
.dh-maker-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0}
.dh-maker img{display:block;max-width:100%;max-height:52vh;margin:18px auto;border-radius:14px}
.dh-maker-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.dh-maker h2{font-size:clamp(22px,3vw,28px);margin:0;letter-spacing:-.025em}
.dh-maker [data-close]{width:44px;height:44px;flex:0 0 44px;padding:0;display:grid;place-items:center}
.dh-maker [data-close] svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.dh-maker [data-status]{font-size:13px;color:var(--ds-muted);line-height:1.7}
.dh-maker [data-download],.dh-maker [data-zip]{background:var(--ds-accent);color:var(--ds-on-accent,#07111f);border-color:transparent}
.dh-maker input[type=file]{padding:6px;border-style:dashed;font-size:12px}
.dh-maker input[type=file]::file-selector-button{min-height:34px;padding:6px 12px;margin-right:10px;border:0;border-radius:8px;background:var(--ds-accent);color:var(--ds-on-accent,#07111f);font:600 12px var(--ds-font,Poppins,sans-serif);cursor:pointer}
.dh-maker input[type=range]{appearance:none;-webkit-appearance:none;height:7px;min-height:0;padding:0;border:0;border-radius:999px;background:color-mix(in srgb,var(--ds-accent) 30%,var(--ds-card2));accent-color:var(--ds-accent)}
.dh-maker input[type=range]::-webkit-slider-thumb{appearance:none;width:20px;height:20px;border:3px solid var(--ds-bg);border-radius:50%;background:var(--ds-accent)}
.dh-maker input[type=range]::-moz-range-thumb{width:14px;height:14px;border:3px solid var(--ds-bg);border-radius:50%;background:var(--ds-accent)}
@media(min-width:800px){.dh-maker[open]{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,330px);gap:20px}.dh-maker>header{grid-column:1/-1}.dh-maker-controls{grid-column:2;grid-row:2;margin:0;grid-template-columns:1fr}.dh-maker>img{grid-column:1;grid-row:2/5;width:100%;height:auto;object-fit:contain;max-height:65dvh;margin:0 auto;align-self:start}.dh-maker>[data-status]{grid-column:2;grid-row:3;margin:0}.dh-maker-actions{grid-column:2;grid-row:4;align-self:start}.dh-maker-actions [data-download],.dh-maker-actions [data-share],.dh-maker-actions [data-zip]{width:100%}}
.dh-maker:focus-visible,.dh-reader :focus-visible{outline:3px solid var(--ds-accent);outline-offset:3px}
@media(max-width:900px){.dh-search{grid-template-columns:1fr 1fr}
.dh-query{grid-column:1/-1}
.dh-collections{grid-template-columns:1fr 1fr}
}
@media(max-width:540px){.dh-reader{width:calc(100% - 28px);padding-top:24px}
.dh-search{padding:16px;gap:12px}
.dh-search>button{grid-column:1/-1}
.dh-card-head{align-items:flex-start;flex-wrap:wrap}
.dh-collections{grid-template-columns:1fr}
.dh-maker{padding:16px}
.dh-maker-controls{grid-template-columns:1fr 1fr}
.dh-maker-controls label:last-child{grid-column:1/-1}
}
.dh-reading-tools{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 22px}
.dh-reading-tools p{flex:1 1 260px;color:var(--ds-muted);font-size:13px;line-height:1.7;margin:0}
.dh-reading-tools [data-hadith-list-count]{display:inline-block;min-width:22px;padding:3px 6px;margin-inline-start:8px;border-radius:8px;background:var(--ds-bg);color:var(--ds-accent)}
.dh-actions button[aria-pressed=true]{background:var(--ds-accent);color:var(--ds-on-accent,#07111f)}
.dh-pending{border-inline-start:3px solid var(--ds-accent);padding:10px 14px;color:var(--ds-muted);font-size:13px;background:var(--ds-bg);border-radius:0 10px 10px 0}
.dh-reading-list{box-sizing:border-box;width:min(640px,calc(100vw - 28px));max-height:calc(100dvh - 40px);padding:clamp(18px,4vw,28px);border:1px solid var(--ds-border);border-radius:24px;background:var(--ds-bg);color:var(--ds-text);overflow:auto;overflow-wrap:anywhere;font-family:var(--ds-font,system-ui)}
.dh-reading-list *{box-sizing:border-box}
.dh-reading-list::backdrop{background:rgba(0,0,0,.75)}
.dh-reading-list header{display:flex;align-items:center;justify-content:space-between;gap:14px}
.dh-reading-list h2{font-size:clamp(21px,4vw,28px);margin:0}
.dh-reading-list p{font-size:13px;line-height:1.8;color:var(--ds-muted)}
.dh-reading-list button,.dh-reading-list input{min-height:44px;max-width:100%;padding:10px 12px;border:1px solid var(--ds-border);border-radius:12px;background:var(--ds-card);color:var(--ds-text);font:inherit}
.dh-reading-list button{cursor:pointer}
.dh-reading-list a{color:var(--ds-accent);line-height:1.6;text-decoration:none}
.dh-reading-list :focus-visible{outline:3px solid var(--ds-accent);outline-offset:3px}
.dh-saved-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 0;border-bottom:1px solid var(--ds-border)}
.dh-saved-row a{min-width:0}
.dh-saved-row button{flex-shrink:0}
.dh-list-tools{display:flex;flex-wrap:wrap;gap:14px;margin-top:22px}
.dh-list-tools label{display:grid;gap:8px;min-width:0;flex-basis:100%;font-size:13px}
.dh-reader button:disabled,.dh-maker button:disabled,.dh-reading-list button:disabled{opacity:.5;cursor:not-allowed}
.dh-collection-nav{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px}
.dh-collection-nav a{display:flex;align-items:center;min-height:44px;padding:10px 14px;border:1px solid var(--ds-border);border-radius:14px;background:var(--ds-card);font-size:13px}
.dh-collection-nav a[aria-current],.dh-book-grid a[aria-current]{border-color:var(--ds-accent);box-shadow:inset 0 0 0 1px var(--ds-accent)}
.dh-filter-tools{grid-column:1/-2;display:flex;align-items:center;gap:12px;min-width:0}
.dh-search .dh-filter-check{display:flex;align-items:center;gap:10px;line-height:1.6;min-height:44px;color:var(--ds-muted)}
.dh-search .dh-filter-check input{width:20px;min-height:20px;height:20px;flex-shrink:0;padding:0;accent-color:var(--ds-accent)}
.dh-reader .dh-settings-button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0}
.dh-settings-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.dh-clear-filters{min-height:44px;display:flex;align-items:center;justify-content:center;font-size:13px}
.dh-books{padding:18px 22px;border:1px solid var(--ds-border);border-radius:20px;background:var(--ds-card);margin:0 0 22px;min-width:0;overflow-wrap:anywhere}
.dh-books summary{cursor:pointer;min-height:28px;font-weight:700;line-height:1.7}
.dh-comfort{width:min(600px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:24px;border:1px solid var(--ds-border);border-radius:24px;background:var(--ds-bg);color:var(--ds-text);overflow:auto;font-family:var(--ds-font,system-ui)}
.dh-comfort::backdrop{background:rgba(0,0,0,.68);backdrop-filter:blur(8px)}
.dh-comfort header{display:flex;align-items:center;justify-content:space-between;gap:16px}
.dh-comfort h2{margin:0;font-size:24px}
.dh-comfort [data-reader-close]{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0}
.dh-comfort svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;margin-inline:6px}
.dh-comfort p,.dh-books p{font-size:13px;color:var(--ds-muted);line-height:1.8;margin-bottom:0}
.dh-comfort-controls{display:grid;grid-template-columns:1fr 1.4fr;gap:14px;align-items:end;margin-top:20px}
.dh-comfort-controls label{display:grid;gap:8px;min-width:0;font-size:13px;font-weight:700}
.dh-comfort-controls select{width:100%;min-width:0;min-height:46px;background:var(--ds-bg);color:var(--ds-text);border:1px solid var(--ds-border);border-radius:12px;padding:10px 12px;font:inherit}
.dh-comfort-controls button{line-height:1.6}
.dh-comfort-controls button[aria-pressed=true]{border-color:var(--ds-accent);color:var(--ds-accent)}
.dh-translation-estimate{padding:18px 22px;margin:18px 0;border:1px solid var(--ds-border);border-radius:18px;background:var(--ds-card);min-width:0;overflow-wrap:anywhere}
.dh-translation-estimate strong{font-size:14px;color:var(--ds-accent)}
.dh-translation-estimate p{font-size:14px;line-height:1.7;margin:8px 0}
.dh-translation-estimate small{display:block;color:var(--ds-muted);font-size:12px;line-height:1.8}
.dh-reading-tools [hidden]{display:none}
.dh-books{margin-top:22px}
.dh-books summary>span{font-size:13px;color:var(--ds-accent);margin-inline-start:8px}
.dh-book-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}
.dh-book-grid a{display:flex;flex-direction:column;gap:10px;padding:18px;border:1px solid var(--ds-border);border-radius:16px;background:var(--ds-bg);min-width:0;color:var(--ds-text)}
.dh-book-grid strong{font-size:14px;line-height:1.6}
.dh-book-number{font-size:12px;font-weight:800;color:var(--ds-accent)}
.dh-book-grid [lang=ar]{font-family:Amiri,serif;font-size:20px;line-height:1.7;color:var(--ds-muted)}
.dh-book-grid small{font-size:12px;line-height:1.7;color:var(--ds-muted);margin-top:auto}
.dh-reader[data-dh-mode=arabic] .dh-card .dh-translation,.dh-reader[data-dh-mode=translation] .dh-card .dh-arabic{display:none!important}
.dh-reader[data-dh-focus=true]>.dh-hero,.dh-reader[data-dh-focus=true]>.dh-search,.dh-reader[data-dh-focus=true]>.dh-note,.dh-reader[data-dh-focus=true]>.dh-progress,.dh-reader[data-dh-focus=true]>.dh-books,.dh-reader[data-dh-focus=true]>.dh-collection-nav,.dh-reader[data-dh-focus=true]>.dh-translation-estimate{display:none}
@media(max-width:900px){.dh-book-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.dh-comfort,.dh-books,.dh-translation-estimate{padding:16px}.dh-comfort-controls,.dh-book-grid{grid-template-columns:1fr}.dh-filter-tools,.dh-clear-filters{grid-column:1/-1}.dh-collection-nav a{flex:1 1 130px}}

/* Hadith des Tages in der Bibliothek */
.dh-daily{margin:0 0 22px}
.dh-daily .dh-note{margin-top:10px}
.dh-card-daily{border-color:color-mix(in srgb,var(--ds-accent) 45%,var(--ds-border,transparent))!important}
.dh-daily-label{display:flex;align-items:center;gap:10px;margin:0 0 12px;color:var(--ds-accent);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.dh-daily-label>span:last-child{padding:3px 9px;border-radius:999px;background:color-mix(in srgb,var(--ds-accent) 14%,transparent);font-size:11px;letter-spacing:.08em}

/* Größere Tippflächen für Referenz- und Quellenlinks am Handy */
@media (hover:none){.dh-card-head>a,.dh-source a,.dh-source summary{display:inline-flex;align-items:center;min-height:40px}}
